Abych mohl používat scanner Epson Perfection V19, musím mít nainstalovanej program Image Scan od Epsonu, kterej mi ovšem nevyhovuje, ale bez něj (nebo některýho z dalších dvou balíků) nefunguje v XSane. Protože na něj Epson 2 roky nesáhnul, vyžaduje starší knihovny libboost-filesystem1.67.0, libboost-program-options1.67.0 a libboost-system1.67.0. Potíž je v tom, že v repozitáři je už nemám (mám verze 71 a 74), a tak jsem je musel ručně postahovat. Tomu je ale konec.
Balík jsem rozkuchal a upravil mu řídicí soubory control, postinst a postrm tak, aby v závislostech byly novější knihovny verze 74 a aby program, co vyžaduje knihovny verze 67, dostal tyhle knihovny přes symlinky (po odinstalaci dojde k jejich odstranění), protože i s nima funguje bezvadně. Do binárek zasahováno nebylo.
Takže DEBIAN/control (závislosti):
Depends: libatk1.0-0 (>= 1.12.4), libatkmm-1.6-1v5 (>= 2.24.0), libboost-filesystem1.74.0, libboost-program-options1.74.0, libboost-system1.74.0, libc6 (>= 2.15), libcairo2 (>= 1.2.4), libcairomm-1.0-1v5 (>= 1.12.0), libfontconfig1 (>= 2.12.6), libfreetype6 (>= 2.2.1), libgcc1 (>= 1:3.0), libgdk-pixbuf2.0-0 (>= 2.22.0), libglib2.0-0 (>= 2.16.0), libglibmm-2.4-1v5 (>= 2.54.0), libgraphicsmagick++-q16-12 (>= 1.3.26-5~), libgraphicsmagick-q16-3 (>= 1.3.11), libgtk2.0-0 (>= 2.8.0), libgtkmm-2.4-1v5 (>= 1:2.24.0), libjpeg62-turbo (>= 1.3.1), libltdl7 (>= 2.4.6), libpango-1.0-0 (>= 1.14.0), libpangocairo-1.0-0 (>= 1.14.0), libpangoft2-1.0-0 (>= 1.14.0), libpangomm-1.4-1v5 (>= 2.42.0), libsigc++-2.0-0v5 (>= 2.8.0), libstdc++6 (>= 6), libtiff5 (>= 4.0.3), libudev1 (>= 183), libusb-1.0-0 (>= 2:1.0.22), graphicsmagick
DEBIAN/postinst:
#!/bin/sh
set -e
# Automatically added by dh_installmenu/12.1.1
if [ "$1" = "configure" ] && [ -x "`which update-menus 2>/dev/null`" ]; then
update-menus
fi
# End automatically added section
LIBBOOST="/usr/lib/x86_64-linux-gnu/libboost"
if [ ! -L "${LIBBOOST}_program_options.so.1.67.0" ]; then
ln -s ${LIBBOOST}_program_options.so.1.74.0 ${LIBBOOST}_program_options.so.1.67.0
ln -s ${LIBBOOST}_system.so.1.74.0 ${LIBBOOST}_system.so.1.67.0
ln -s ${LIBBOOST}_filesystem.so.1.74.0 ${LIBBOOST}_filesystem.so.1.67.0
fi
(česky: jestli neexistuje symlink /usr/lib/x86_64-linux-gnu/libboost_program_options.so.1.67.0, tzn. jeden z nich, tak je vytvoř)
DEBIAN/postrm:
#!/bin/sh
set -e
# Automatically added by dh_installmenu/12.1.1
if [ -x "`which update-menus 2>/dev/null`" ]; then update-menus ; fi
# End automatically added section
LIBBOOST="/usr/lib/x86_64-linux-gnu/libboost"
if [ -L "${LIBBOOST}_program_options.so.1.67.0" ]
then rm ${LIBBOOST}_program_options.so.1.67.0 ${LIBBOOST}_system.so.1.67.0 ${LIBBOOST}_filesystem.so.1.67.0
fi
(česky: jestli existuje symlink /usr/lib/x86_64-linux-gnu/libboost_program_options.so.1.67.0, tedy logicky i ostatní, tak ho i zbejvající smaž)
Měl bych správně hlídat všechny knihovny, ale normálně se nemůže stát, že by se měla narušit jejich koexistence/koneexistence.
No a TADY je ke stažení. Stačí rozbalit a v terminálu spustit příkaz install.sh uvnitř archívu, nebo ručně nainstalovat balíky v podsložkách.
Balík jsem rozkuchal a upravil mu řídicí soubory control, postinst a postrm tak, aby v závislostech byly novější knihovny verze 74 a aby program, co vyžaduje knihovny verze 67, dostal tyhle knihovny přes symlinky (po odinstalaci dojde k jejich odstranění), protože i s nima funguje bezvadně. Do binárek zasahováno nebylo.
Takže DEBIAN/control (závislosti):
Depends: libatk1.0-0 (>= 1.12.4), libatkmm-1.6-1v5 (>= 2.24.0), libboost-filesystem1.74.0, libboost-program-options1.74.0, libboost-system1.74.0, libc6 (>= 2.15), libcairo2 (>= 1.2.4), libcairomm-1.0-1v5 (>= 1.12.0), libfontconfig1 (>= 2.12.6), libfreetype6 (>= 2.2.1), libgcc1 (>= 1:3.0), libgdk-pixbuf2.0-0 (>= 2.22.0), libglib2.0-0 (>= 2.16.0), libglibmm-2.4-1v5 (>= 2.54.0), libgraphicsmagick++-q16-12 (>= 1.3.26-5~), libgraphicsmagick-q16-3 (>= 1.3.11), libgtk2.0-0 (>= 2.8.0), libgtkmm-2.4-1v5 (>= 1:2.24.0), libjpeg62-turbo (>= 1.3.1), libltdl7 (>= 2.4.6), libpango-1.0-0 (>= 1.14.0), libpangocairo-1.0-0 (>= 1.14.0), libpangoft2-1.0-0 (>= 1.14.0), libpangomm-1.4-1v5 (>= 2.42.0), libsigc++-2.0-0v5 (>= 2.8.0), libstdc++6 (>= 6), libtiff5 (>= 4.0.3), libudev1 (>= 183), libusb-1.0-0 (>= 2:1.0.22), graphicsmagick
DEBIAN/postinst:
#!/bin/sh
set -e
# Automatically added by dh_installmenu/12.1.1
if [ "$1" = "configure" ] && [ -x "`which update-menus 2>/dev/null`" ]; then
update-menus
fi
# End automatically added section
LIBBOOST="/usr/lib/x86_64-linux-gnu/libboost"
if [ ! -L "${LIBBOOST}_program_options.so.1.67.0" ]; then
ln -s ${LIBBOOST}_program_options.so.1.74.0 ${LIBBOOST}_program_options.so.1.67.0
ln -s ${LIBBOOST}_system.so.1.74.0 ${LIBBOOST}_system.so.1.67.0
ln -s ${LIBBOOST}_filesystem.so.1.74.0 ${LIBBOOST}_filesystem.so.1.67.0
fi
(česky: jestli neexistuje symlink /usr/lib/x86_64-linux-gnu/libboost_program_options.so.1.67.0, tzn. jeden z nich, tak je vytvoř)
DEBIAN/postrm:
#!/bin/sh
set -e
# Automatically added by dh_installmenu/12.1.1
if [ -x "`which update-menus 2>/dev/null`" ]; then update-menus ; fi
# End automatically added section
LIBBOOST="/usr/lib/x86_64-linux-gnu/libboost"
if [ -L "${LIBBOOST}_program_options.so.1.67.0" ]
then rm ${LIBBOOST}_program_options.so.1.67.0 ${LIBBOOST}_system.so.1.67.0 ${LIBBOOST}_filesystem.so.1.67.0
fi
(česky: jestli existuje symlink /usr/lib/x86_64-linux-gnu/libboost_program_options.so.1.67.0, tedy logicky i ostatní, tak ho i zbejvající smaž)
Měl bych správně hlídat všechny knihovny, ale normálně se nemůže stát, že by se měla narušit jejich koexistence/koneexistence.
No a TADY je ke stažení. Stačí rozbalit a v terminálu spustit příkaz install.sh uvnitř archívu, nebo ručně nainstalovat balíky v podsložkách.