Kile and TeX Live 2008 on Ubuntu Linux
15 May 2009 by Stefan Kottwitz
Though the installation of TeX Live 2008 could be done easily also on Ubuntu Linux the installation of the very recommendable LaTeX editor Kile could raise a problem because Kile depends on the package texlive-latex-base of Ubuntu/ Debian Linux. There’s a tool called equivs helping to circumvent such dependencies by creating dummy packages, see APT HOWTO, Very useful helpers.
equivs can be installed by Synaptic or by aptitude or apt-get from the repositories:
sudo apt-get install equivs
equivs is able to create Debian packages providing information to the local package management. I’ve created a control file (calles texlive.ctl) for equivs simulating just texlive-latex-base:
Section: tex Package: texlive-dummy Provides: texlive-latex-base Description: texlive dummy package This package provides dpkg with the information that there is the package texlive-latex-base installed.
I’ve processed it with equivs-build:
equivs-build texlive.ctl
The program created a file texlive-dummy_1.0_all.deb. This could be installed by
sudo dpkg -i texlive-dummy_1.0_all.deb
Afterwards Kile could be installed without to request any texlive package from the repositories and Kile worked fine with TeX Live 2008. (Update: see comment #4 for a complete control file for Kile on Jaunty.) You could lock the package to prevent it from being installed later.
The control file may refer to a different section (like misc) or could contain additional information (Provides: texlive-base, texlive-base-bin, …)
TeX Live 2008 is not planned any more to be released for Debian and therefore not for Ubuntu Linux. That version will be skipped, as announced by a Debian TeX maintainer, and TeX Live 2009, meant to be the next release for Debian/Ubuntu, is still under construction, that’s why I’m taking this as a temporary solution. After all the 2008 version is working fine thanks to the great work of the TeX Live team.
This entry was posted on 15 May 2009 at 2:34 AM and is filed under TeX Live, Tools for LaTeX, IDEs and Editors, Linux/ Ubuntu Linux. You can follow any responses to this entry through the RSS 2.0 feed. You can leave a response, or trackback from your own site.




1 July 2009 at 1:32 PM
Hi!
I tried your method on Kubuntu Jaunty, but it does not work for me. I added some more files to the control file just to be sure, and checked out if they are provided. Alas, apt insist in installing the texlive metapackage together with a bunch of other texlive files.
Panos
1 July 2009 at 3:22 PM
update:
after inserting ALL tex related dependencies to the control file, I was able to install kile alone (only imagemagick was added).
4 July 2009 at 4:32 PM
My texlive.ctl looks like this:
Section: tex
Package: texlive-dummy
Provides: texlive-base-bin, texlive-latex-base, asymptote, context, dblatex, dvipdfmx, dvipng, ghostscript, jabref, latex2html, lilypond, tex4ht, texlive-metapost, texlive-xetex, ktexmaker2
Description: texlive dummy package
This package provides dpkg with the information that
there is the package texlive-latex-base installed.
4 July 2009 at 6:07 PM
Hi Panos,
on Jaunty there are indeed more dependencies for Kile. I’ve made a new Jaunty installation today and checked it. Kile depends on texlive-base-bin, texlive-latex-base and recommends texlive-metapost, texlive-xetex and more. They are depending on even more packages. Your solution is complete, but less packages would be sufficient.
For instance you could install Kile without recommended packages and select really needed dependencies.
I’ve tested this control file for equivs:
Section: tex
Package: texlive-dummy
Provides: tex-common, texlive-common, texlive-latex-base, texlive-metapost, texlive-xetex, texlive-base-bin, texlive-base-bin-doc
Description: texlive dummy package
This package provides dpkg with the
information that there are certain tex
packages installed.
After processing with equivs and dpkg I’ve called apt-get this way:
The end of the output was:
The following NEW packages will be installed:
kde-icons-oxygen kdebase-runtime kdebase-runtime-bin-kde4
kdebase-runtime-data kdebase-runtime-data-common kdelibs-bin kdelibs5
kdelibs5-data kile konsole libaudio2 libclucene0ldbl libexiv2-5
libmodplug0c2 libmpcdec3 libphonon4 libqt4-dbus libqt4-designer
libqt4-network libqt4-qt3support libqt4-script libqt4-sql libqt4-svg
libqt4-xml libqtcore4 libqtgui4 libraptor1 librasqal1 librdf0 libsoprano4
libstreamanalyzer0 libstreams0 libxcb-shape0 libxcb-shm0 libxcb-xv0 libxine1
libxine1-bin libxine1-console libxine1-misc-plugins libxine1-x
phonon-backend-xine soprano-daemon
0 upgraded, 42 newly installed, 0 to remove and 151 not upgraded.
Need to get 47.1MB of archives.
After this operation, 154MB of additional disk space will be used.
Do you want to continue [Y/n]?
As you can see texlive packages would not be installed. Also imagemagick is not needed.
Stefan
4 July 2009 at 6:17 PM
Hi Phil,
thank you for your contribution! I’ve just read your comment after that test and submission of my ctl file and the output.
It seems your way doesn’t require the apt-get option –no-install-recommends.
Stefan
14 October 2009 at 1:32 PM
Hi,
thanks for this posting - exactly what I was looking for.
Here my extended config file:
Section: tex
Package: texlive-dummy
Provides: texlive-latex-base, asymptote,
asymptote-doc, context, dblatex, dvipdfmx, dvipng, feynmf, guile-1.8, lacheck,
latex-beamer, latex-xcolor, latex2html, libsigsegv0, lilypond, lilypond-data,
lilypond-doc, lmodern, luatex, pgf, preview-latex-style, prosper, ps2eps,
tex4ht, tex4ht-common, texlive, texlive-base, texlive-base-bin,
texlive-base-bin-doc, texlive-common, texlive-doc-base, texlive-extra-utils,
texlive-font-utils, texlive-fonts-recommended, texlive-fonts-recommended-doc,
texlive-generic-extra, texlive-generic-recommended, texlive-humanities,
texlive-humanities-doc, texlive-lang-cyrillic, texlive-latex-base,
texlive-latex-base-doc, texlive-latex-extra, texlive-latex-extra-doc,
texlive-latex-recommended, texlive-latex-recommended-doc, texlive-math-extra,
texlive-metapost, texlive-metapost-doc, texlive-pictures,
texlive-pictures-doc, texlive-pstricks, texlive-pstricks-doc, texlive-xetex,
tipa
Description: texlive dummy package
This package provides dpkg with the information that
there is the package texlive-latex-base installed.
6 December 2009 at 6:43 PM
Why in 2009 we are still stuck with texlive2007 is a mystery. Why is all this stuff needed, instead of uploading the texlive 2009 packaes to the repositories?
6 December 2009 at 9:41 PM
There are just too few people working on porting TeX Live 2009 to Debian and Ubuntu. If more programmer and tester would contribute the situation could be different. The simple explanation is that this work lasts on very few shoulders.
14 February 2010 at 6:08 PM
Has anybody succeeded in getting rid of tex-common? I tried to build a texlive-dummy in order to install LyX with the following packages in texlive.ctl (on Karmic):
dvipdfmx, dvipng, lacheck, latex-beamer, latex-xcolor, pgf, preview-latex-style, psutils, tex-common, texlive-base, texlive-base-bin, texlive-base-bin-doc, texlive-common, texlive-doc-base, texlive-extra-utils, texlive-fonts-recommended, texlive-fonts-recommended-doc, texlive-generic-extra, texlive-generic-recommended, texlive-humanities, texlive-humanities-doc, texlive-latex-base, texlive-latex-base-doc, texlive-latex-extra, texlive-latex-extra-doc, texlive-latex-recommended, texlive-latex-recommended-doc, texlive-pictures, texlive-pictures-doc, texlive-pstricks, texlive-pstricks-doc, tipa
But if I want to install LyX APT still wants to install tex-common.
Best
Christoph
15 February 2010 at 12:31 AM
I got an answer on the Ubuntu mailing list by sktsee:
\begin{quote}
Not real familiar with equivs, but it looks to me as if you are running into this bit from the Debian Policy Manual http://www.debian.org/doc/debian-policy/ch-relationships.html
From Section 7.5 Virtual packages - Provides
…
“If a relationship field has a version number attached then only real packages will be considered to see whether the relationship is satisfied (or the prohibition violated, for a conflict or breakage) - it is assumed that a real package which provides the virtual package is not of the “right” version. So, a Provides field may not contain version numbers, and the version number of the concrete package which provides a particular virtual package will not be looked at when considering a dependency on or conflict with the virtual package name. ”
One Lyx’s dependencies is lyx-common, which has this dependeny:
$ apt-cache show lyx-common |grep Depend
Depends: dpkg (>= 1.14.18), tex-common (>= 1.18), python, python-support
(>= 0.90.0)
lyx-common specifically depends on a version of tex-common >=1.18. According to the policy stated above, when dpkg sorts out the dependencies, it’s going to prefer a “real” package over a virtual one if a dependency lists a specific version number.
I guess one way to solve this problem would be to create and install a dummy tex-common package. I assume that’s possible to do with the equivs program, though I’m unsure on the specific steps to accomplish it.
\end{quote}
sktsee is right. Building a tex-common dummy with the following control file solved the problem:
Section: tex
Package: tex-common
Version: 1.18
Provides: tex-common
Description: tex-common dummy package
This package provides dpkg with the information that tex-common >= 1.18 is installed.
15 February 2010 at 9:24 PM
Hi Christoph,
thank you for sharing this information!
Stefan
18 February 2010 at 3:56 PM
Hi Stefan,
unfortunately further problems occured. I filed a bug report: https://bugs.launchpad.net/ubuntu/+source/lyx/+bug/521932
Christoph