Prebalenie DEB balíka pre Podpisuj

14.02.2023 | 10:27 | Richard | Richard

"Podpisuj" je šikovný program na vloženie zaručeného elektronického podpisu do dokumentu. Inštalácia pod Debian(-like) distribúciami končí neúspešne, pretože…

Nie je deb ako deb

Debian-í balíčkovaní systém je rokmi preverená klasika, ktorá proste funguje. Preto ma prekvapilo (ale zase zo stoličky som nespadol), že inštalácia .deb balíčku skončila s chybovou hláškou. Prečo a ako?

Ešte k Podpisuj

Ako sa píše na webe https://www.podpisuj.sk/home: "Služba Podpisuj patrí medzi tzv. dôveryhodné služby a skladá sa z lokálnej multiplatformovej aplikácie a evidenčného servera. Aplikácia obsahuje funkcionalitu pre elektronické podpisovanie (aj hromadné), overovanie podpisov (aj kvalifikované), zaručenú konverziu, generovanie autorizačných doložiek listinných rovnopisov a je určená všetkým, ktorí prichádzajú do styku s elektronicky podpísanými dokumentami."

Ja osobne ju používam, aj to len občasne, na podpísanie pdf dokumentov, ako napr. faktúry. Je to šikovnejšie riešenie ako online služba https://qesportal.sk/Portal/sk. A spolupracuje s čipovou kartou Gemalto, ktorú som dostal na polícii (lepšie, ako pelendrekom po chrbte - ak ste teda chodili na punkové koncerty, viete…).

K stiahnutiu majú (o.i.) i .deb balíček, ktorý by sa mal dať ľahko nainštalovať, ale…

 

Bežná inštalácia s chybou a jej oprava

$ sudo dpkg -i podpisuj-5.7.4.deb

dpkg-deb: chyba: archive 'podpisuj-5.7.4.deb' uses unknown compression for member 'control.tar.zst', giving up
dpkg: error processing archive podpisuj-5.7.4.deb (--install):
 dpkg-deb --control subprocess returned error exit status 2
Vyskytli sa chyby počas spracovania:
 podpisuj-5.7.4.deb

Ehm, takže dpkg alebo hoci gdebi proste nepoznajú zst kompresnú metódu.
Možno ich alternatíva v ubuntu áno, ale v debiane nepomôže ani inštalácia zstd, hoci ju budeme potrebovať.

 

Prebalenie

Trik v pár krokoch spočíva v prebalení balíčka, ktorý namiest zst použije starú dobrú xz kompresnú metódu.

(0)
Naištalujeme si zst a zstd:
sudo apt install zstd*

(1)
Použijeme program GNU ar z balíku binutils, ktorý má každý nainštalovaný.
Tento vytvára, upravuje a extrahuje archívy.Takže:
ar x podpisuj-5.7.4.deb

Vyextrahuje tieto súbory:

-rw-r--r--   1 richard        richard  1.7k 2023-02-14 10:02 control.tar.zst
-rw-r--r--   1 richard        richard  122M 2023-02-14 10:02 data.tar.zst
-rw-r--r--   1 richard        richard     4 2023-02-14 10:02 debian-binary


(2)
Prekonvertujeme zst formát do xz:
zstd -d < control.tar.zst | xz > control.tar.xz
zstd -d < data.tar.zst | xz > data.tar.xz

(3)
A nakoniec pomocou GNU ar vytvoríme nový deb balíček:
ar -m -c -a sdsd podpisuj-5.7.4_prebaleny.deb debian-binary control.tar.xz data.tar.xz

(4)
No a koniec. Následne tento balíček nainštalujeme klasicky pomocou dpkg alebo gdebi.

$ sudo gdebi podpisuj-5.7.4_prebaleny.deb 
[sudo] heslo pre používateľa richard: 
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Reading state information... Done

Podpisuj - super podpisovatko zo Slovenska
Chcete nainštalovať softvérový balík? [a/N]:

 

Chybičkou krásy Podpisuj je chýbajúca informácia o licencii programu, v "O programe" sa dozvieme len:

Application
Signer v5.7.4
https://www.podpisuj.sk

Operating system
Linux (5.10.0-19-amd64)
64-bit

Java
Oracle Corporation 17.0.2
64-bit

Used open source & 3rd-party components:
- DSS, Digital Signature Service (GNU Lesser General Public License v2.1),
- SLF4J, Simple Logging Facade for Java (MIT License),
- Apache Tika, a content analysis toolkit (Apache License v2.0),
- Apache FOP (Apache License v2.0),
- Apache Commons (Apache License v2.0),
- Java ImageIO plugin for JBIG2 (Apache License v2.0),
- LibreOffice (Mozilla Public License v2.0),
- veraPDF parser and validator (GPL-3.0 License).

 

 

    • RE: Prebalenie DEB balíka pre Podpisuj 14.02.2023 | 12:36
      Avatar Livan Manjaro s XFCE  Používateľ

      Je zarážajúce, že debian nepodporuje kompresiu použitú v deb balíčku. Navyše som si všimol, že ten program Podpisuj je šírený iba v deb a rpm, ako keby neexistovali distribúcie na báze arch linuxu.

      • RE: Prebalenie DEB balíka pre Podpisuj 14.02.2023 | 12:42
        Avatar Pavel Q4OS, KDE neon  Administrátor

        Tuším že aj pri inštalácii softu z AUR som postrehol, že sa niekedy rozbaľujú práve deb balíky.

        • RE: Prebalenie DEB balíka pre Podpisuj 14.02.2023 | 12:53
          Avatar Livan Manjaro s XFCE  Používateľ

          Tak ono to nejakou okľukou ide nainštalovať aj z deb balíčkov pomocou debtap.

    • RE: Prebalenie DEB balíka pre Podpisuj 02.03.2023 | 05:41
      Avatar kamowski Linux Mint  Používateľ
      Inštalácia pod Debian(-like) distribúciami končí neúspešne

      tak som si, pri prvej káve, stiahol .deb balíček v.5.7.4, a cez gdebi bol za pár sekúnd nainštalovaný, bez chybových hlášok

      áno, .deb obsahuje tar.zst, ale chyba bude/bola niekde inde

      pri inštalácii som si neurobil snímku, tak aspoň tú pri odinštalovaní :)

      • RE: Prebalenie DEB balíka pre Podpisuj 02.03.2023 | 06:30
        Avatar Richard Antix  Používateľ

        Ehm, a bola to debian-like alebo ubuntu-like distribúcia?

        A aká je verzia apt?

        • RE: Prebalenie DEB balíka pre Podpisuj 02.03.2023 | 08:40
          Avatar kamowski Linux Mint  Používateľ

          áááha, tak tu je zrejme pes zakopaný, tu je/bola tá chybička - u mňa :)
          linuxmint 20.3
          apt 2.0.9