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.debI 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.debEvery 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
#!/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
lyxdebian.tar.gz
Description: application/tar-gz
-- lyx-devel mailing list lyx-devel@lists.lyx.org http://lists.lyx.org/mailman/listinfo/lyx-devel