I am by no means an KNOPPIX/Linux guru and just would like to share my notes about installing the missing gvim in KNOPPIX 7.4.2.

At the time of writing, neither of vim-gnome/vim-gtk for wheezy or that of jessie can be installed straightaway due to the nature of KNOPPIX. A quick solution to the tricky situation is to retrieve and install all the matching build-depends packages from the snapshot and normal servers and then compile vim-gnome/vim-gtk from source.

Part 1 of 3: retrieve and install the build-depends packages
  • Boot KNOPPIX without persistent image.
  • With root privilege, append the following to /etc/atp/sources.list .

deb http://snapshot.debian.org/archive/debian/20140822T041524Z/ testing main
deb http://snapshot.debian.org/archive/debian/20140827T042507Z/ testing main
deb http://snapshot.debian.org/archive/debian/20140930T043556Z/ testing main
  • With root privilege, update the package list.

apt-get -o Acquire::Check-Valid-Until=false update
  • Download the build-depends packages with specific version.

# --start-- build-depends
## libsepol1 needs to be upgraded from 2.1.4-3 (wheezy) to 2.3-2 (jessie)
apt-get download \
libattr1-dev=1:2.4.46-8 libacl1-dev=2.2.51-8 \
libgpm-dev=1.20.4-6 \
libxpm-dev=1:3.5.10-1 \
libxmu-headers=2:1.1.1-1 libxmu-dev=2:1.1.1-1 libxaw7-dev=2:1.0.10-2 \
tcl8.5-dev=8.5.11-2 tcl-dev=8.5.0-2.1 \
ruby1.9.1-dev= ruby-dev=1:1.9.3 \
lua5.2=5.2.1-3+deb7u1 \
liblua5.2-0=5.2.1-3+deb7u1 liblua5.2-dev=5.2.1-3+deb7u1 \
libsepol1=2.3-2 libsepol1-dev=2.3-2 libselinux1-dev=2.3-2 \
libperl-dev=5.20.0-4 \
libpython2.7-dev=2.7.8-4 python2.7-dev=2.7.8-4 libpython-dev=2.7.8-1\

## --start-- libgnomeui-dev=2.24.5-3 section
apt-get download \
gir1.2-gconf-2.0=3.2.5-1+build1 libgconf2-dev=3.2.5-1+build1 \
libglib2.0-dev=2.42.0-1 \
libgnome-keyring-dev=3.4.1-1 \
gir1.2-gtk-2.0=2.24.24-1 libgtk2.0-dev=2.24.24-1 \
libart-2.0-dev=2.3.21-2 libgail-dev=2.24.24-1 libgnomecanvas2-dev=2.30.3-2

### --start-- libgnomevfs2-dev=2.24.4-6 section
apt-get download libavahi-common-dev=0.6.31-2 libavahi-client-dev=0.6.31-2 \
libavahi-glib-dev=0.6.31-2 \
libxml2-dev=2.9.1+dfsg1-4 \
libgnutlsxx28=3.3.8-2 libgmpxx4ldbl=2:6.0.0+dfsg-4 libgmp-dev=2:6.0.0+dfsg-4 nettle-dev=2.7.1-3\
apt-get download libgnomevfs2-dev=1:2.24.4-6
### -- end -- libgnomevfs2-dev=2.24.4-6 section

apt-get download \
libidl-dev=0.8.14-0.2 orbit2=1:2.14.19-0.3 liborbit2-dev=1:2.14.19-0.3\
 libpopt-dev=1.16-7 libbonobo2-dev=2.32.1-3 libcanberra-dev=0.28-6\
 libgnome2-dev=2.32.1-5 libbonoboui2-dev=2.24.3-1
apt-get download libgnomeui-dev=2.24.5-3
## -- end -- libgnomeui-dev=2.24.5-3 section
# -- end -- build-depends

# --start-- build-depends-indep (docbook-utils=0.6.14-3)
apt-get download \
openjade1.3=1.3.2-11.1+b1 docbook-dsssl=1.79-7 \
jadetex=3.13-14 \
libsp1c2=1.3.4-1.2.1-47.1+b1 sp=1.3.4-1.2.1-47.1+b1 libsgmls-perl=1.03ii-32\
apt-get download docbook-utils=0.6.14-3
# -- end -- build-depends-indep (docbook-utils=0.6.14-3)
  • With root privilege, purge libgnutls-dev and then install the downloaded packages with gdebi in the same order as above.

apt-get purge libgnutls-dev
gdebi -n {deb packages}
Part 2 of 3: build the vim related packages

  • Download the source files of vim (2:7.4.488-3~bpo70+1; wheezy backport)

# Save the files on a native Linux filesystem for a smoother build.
wget \
http://ftp.de.debian.org/debian/pool/main/v/vim/vim_7.4.488.orig.tar.gz \
  • Extract the tarballs and move the debian folder to the folder of source code.
  • With root privilege, purge ruby1.8 as it's listed as a build-conflict in the control file.

apt-get purge ruby1.8
  • Check if the size of terminal is at least 80x24, otherwise the "tests" will fail during compilation.
  • Build the vim*.deb packages with dpkg-buildpackages or debuild.
  • Save the vim related packages and liblua5.2-0=5.2.1-3+deb7u1 package on a hard drive.

Part 3 of 3: install vim related packages

  • Reboot KNOPPIX with persistent image enabled.
  • With root privilege, purge vim (2:7.4.335-1) and its related packages

apt-get purge vim vim-runtime vim-common vim-gui-common
  • With root privilege, install the liblua5.2-0 package and the newly built vim packages with gdebi in the order of liblua5.2-0, vim-runtime, vim-common, vim-gui-common and vim-gnome.

Final thoughts

Since the vim packages are built against a newer version of libsepol1 than that of the stock KNOPPIX 7.4.2, should it also be included in the overlay image? Any suggestions will be appreciated.