How can I run LyX 2.4.0 on Ubuntu 30.04 ?

Enrico Forestieri forenr at lyx.org
Sat Jun 1 22:50:48 UTC 2024


On Fri, May 31, 2024 at 12:05:01PM -0400, Scott Kostyshak wrote:
> 
>Occassionally I see someone (maybe Enrico or JMarc?) mention they 
>checked something on a very old version of LyX to see if some behavior 
>is how it's always been. How do you do that? Does that version fun on 
>your current operating system? Do you have a virtual machine with an 
>old version of your operating system installed?

Yes, I can run all versions of lyx from 1.3 on both current cygwin and 
debian (I can even run lyx 1.1.6fix4 but only on Solaris).

In order to be able to do this I save all relevant Qt and Python 
packages (as .deb files on debian) and install/reinstall them whenever 
needed. Sometimes I have to tweak a .deb package in order to convince 
the system that all prerequisites are actually satisfied (see, for 
axample, https://www.baeldung.com/linux/package-deb-change-repack)

I have also to patch the lyx sources due to compiler changes but until 
now I was able to recompile and run everything on the current operating 
system.

As an example, I add here a script and a tar archive with a debian 
directory for building lyx 1.3.7. All you would need to do is renaming 
the original sources as lyx13_1.3.7.orig.tar.gz, put the script and the 
tar archive in the same directory and launch the script to obtain a .deb 
file ready for installation.

Of course, you also need Qt3 and corresponding development files. 
However, if you are interested, I can provide everything is necessary:
$ ls -l /usr/local/src/pkgs/qt3/
totale 9344
-rw-r--r-- 1 ef  137708  6 ago  2015 libjpeg8_8d-1+deb7u1_amd64.deb
-rw-r--r-- 1 ef  115480  5 ago  2015 libjpeg8_8d-1+deb7u1_i386.deb
-rw-r--r-- 1 ef  172672 25 lug  2023 libpng12-0_1.2.50-2+deb8u3_amd64.deb
-rw-r--r-- 1 ef  178756 25 lug  2023 libpng12-0_1.2.50-2+deb8u3_i386.deb
-rw-r--r-- 1 ef  248140 25 lug  2023 libpng12b-dev_1.2.50-2+deb8u3_amd64.deb
-rw-r--r-- 1 ef  247966 23 giu  2017 libpng12-dev_1.2.50-2+deb8u3_amd64.deb.orig
-rw-r--r-- 1 ef   79308  5 ago  2015 libqt3-compat-headers_3.3.8b-11+b1_all.deb
-rw-r--r-- 1 ef   80624  5 set  2010 libqt3-compat-headers_3.3.8b-7+b1_amd64.deb
-rw-r--r-- 1 ef  277452  5 ago  2015 libqt3-headers_3.3.8b-11+b1_all.deb
-rw-r--r-- 1 ef  357446  5 set  2010 libqt3-headers_3.3.8b-7+b1_amd64.deb
-rw-r--r-- 1 ef 2587542  5 ago  2015 libqt3-mt_3.3.8b-11+b1_i386.deb
-rw-r--r-- 1 ef 2656476  5 ago  2015 libqt3-mt_3.3.8b-7+b1_amd64.deb
-rw-r--r-- 1 ef   46554  5 ago  2015 libqt3-mt-dev_3.3.8b-11+b1_i386.deb
-rw-r--r-- 1 ef   46442 23 giu  2017 libqt3-mt-dev_3.3.8b-7+b1_amd64.deb
-rw-r--r-- 1 ef   49074  5 set  2010 libqt3-mt-dev_3.3.8b-7+b1_amd64.deb.orig
-rw-r--r-- 1 ef  215152 11 dic 01.38 multiarch-support_2.28-10_amd64.deb
drwxr-xr-x 2 ef       0 25 lug  2023 pre-bookworm/
-rw-r--r-- 1 ef  977050  5 ago  2015 qt3-dev-tools_3.3.8b-11+b1_i386.deb
-rw-r--r-- 1 ef 1060254  5 ago  2015 qt3-dev-tools_3.3.8b-7+b1_amd64.deb

I can also simply provide the .deb archives for lyx ready for 
installation (they can be installed together because the binaries are 
versioned):

$ ls -l lyx*/*_amd64.deb | grep -v dbgsym
-rw-r--r-- 1 ef  4022796 23 giu  2017 lyx13/lyx13_1.3.7-1.1_amd64.deb
-rw-r--r-- 1 ef  5155392 24 giu  2017 lyx14/lyx14_1.4.5.1-1.1_amd64.deb
-rw-r--r-- 1 ef 10203976 16 nov  2021 lyx15/lyx15_1.5.7-1.1_amd64.deb
-rw-r--r-- 1 ef 11861228 16 nov  2021 lyx16/lyx16_1.6.10-1.1_amd64.deb
-rw-r--r-- 1 ef 13532172 17 nov  2021 lyx20/lyx20_2.0.8.1-1.1_amd64.deb
-rw-r--r-- 1 ef 14403048 17 nov  2021 lyx21/lyx21_2.1.5-1.1_amd64.deb
-rw-r--r-- 1 ef 22823668 17 nov  2021 lyx22/lyx22_2.2.4-1.0_amd64.deb

Every time the system is upgraded and the .deb archive does not install 
anymore, I update the patches if the problem is due to the new compiler 
or simply tweak the archive such that it installs cleanly. It seems 
complicated but actually turns out to be quite straightforward.

I do this to make sure I reproduce a document by editing it with the 
same version of lyx that generated it. Although this is not always 
necessary (as we strive for backward compatibility) I have been bitten 
by it in a few occasions.

-- 
Enrico
-------------- next part --------------
#!/bin/bash
tar xvf lyx13_1.3.7.orig.tar.gz
cd lyx-1.3.7/
tar xvf ../lyxdebian.tar.gz
#dch -v 1.3.7-1.1 'NMU.'
#dch -a 'LyX version 1.3.7.'
#sed -i -e 's/UNRELEASED/unstable/' debian/changelog
debuild -us -uc
-------------- next part --------------
A non-text attachment was scrubbed...
Name: lyxdebian.tar.gz
Type: application/x-tar-gz
Size: 10769 bytes
Desc: not available
URL: <http://lists.lyx.org/pipermail/lyx-devel/attachments/20240602/e8c3114b/attachment-0001.bin>


More information about the lyx-devel mailing list