Abbiamo già imparato a creare pacchetti per più piattaforme e come creare pacchetti dal sorgente . Oggi impareremo come convertire i pacchetti DEB in pacchetti Arch Linux.
Potresti chiederti perché dovrei convertire un pacchetto DEB in un pacchetto Arch Linux mentre AUR , il più grande repository di software non ufficiale, contiene quasi tutto il software?
Vero! Tuttavia, alcuni pacchetti non possono essere compilati (ad esempio, pacchetti closed source) o non possono essere compilati da AUR per vari motivi, ad esempio errori durante la compilazione o file di dipendenze non disponibili.
Oppure lo sviluppatore lo sviluppatore non ha tempo per creare un pacchetto in AUR o non gli piace creare un pacchetto AUR. I motivi potrebbero essere tanti.
In questi casi, puoi utilizzare uno script di shell chiamato Debtap per convertire i pacchetti DEB in pacchetti Arch Linux. Per coloro che si chiedono, Debtap sta per DEB T o A rch (Linux) P pacco.
Installa Debtap in Arch Linux
Debtap è disponibile in AUR , quindi puoi installarlo utilizzando gli strumenti di supporto di AUR come Paru o Sì .
Per installare debtap utilizzando Paru, esegui:
$ paru -S debtap
Usando Yay:
$ yay -S debtap
E assicurati che il tuo sistema Arch dovrebbe avere bash, utility bin , pkgfile e root falso pacchetti installati.
Dopo aver installato Debtap e tutte le dipendenze sopra menzionate, esegui il comando seguente per creare/aggiornare pkgfile e il database di debtap.
$ sudo debtap -u
Risultato di esempio:
==> Synchronizing pkgfile database... :: Updating 6 repos... download complete: archlinuxfr [ 151.7 KiB 67.5K/s 5 remaining] download complete: multilib [ 319.5 KiB 36.2K/s 4 remaining] download complete: core [ 707.7 KiB 49.5K/s 3 remaining] download complete: testing [ 1716.3 KiB 58.2K/s 2 remaining] download complete: extra [ 7.4 MiB 109K/s 1 remaining] download complete: community [ 16.9 MiB 131K/s 0 remaining] :: download complete in 131.47s < 27.1 MiB 211K/s 6 files > :: waiting for 1 process to finish repacking repos... ==> Synchronizing debtap database... % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 34.1M 100 34.1M 0 0 206k 0 0:02:49 0:02:49 --:--:-- 180k % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 814k 100 814k 0 0 101k 0 0:00:08 0:00:08 --:--:-- 113k % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 120k 100 120k 0 0 61575 0 0:00:02 0:00:02 --:--:-- 52381 % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 35.4M 100 35.4M 0 0 175k 0 0:03:27 0:03:27 --:--:-- 257k ==> Downloading latest virtual packages list... % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 149 0 149 0 0 49 0 --:--:-- 0:00:03 --:--:-- 44 100 11890 0 11890 0 0 2378 0 --:--:-- 0:00:05 --:--:-- 8456 ==> Downloading latest AUR packages list... % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 264k 0 264k 0 0 30128 0 --:--:-- 0:00:09 --:--:-- 74410 ==> Generating base group packages list... ==> All steps successfully completed!
Devi eseguire il comando precedente almeno una volta.
Ora è il momento della conversione del pacchetto.
Convertire i pacchetti DEB in pacchetti Arch linux usando Debtap
Per convertire qualsiasi pacchetto DEB, pronuncia Quadrapassel , per il pacchetto Arch Linux usando debtap, fai:
$ debtap quadrapassel_3.22.0-1.1_arm64.deb
Il comando precedente converte il file .deb fornito in un pacchetto Arch Linux. Ti verrà chiesto di inserire il nome del manutentore del pacchetto e della licenza. Basta inserirli e premere il tasto INVIO per avviare il processo di conversione.
La conversione del pacchetto richiederà da pochi secondi a diversi minuti a seconda della velocità della CPU. Prendi una tazza di caffè.
Risultato di esempio:
==> Extracting package data... ==> Fixing possible directories structure differencies... ==> Generating .PKGINFO file... :: Enter Packager name: quadrapassel :: Enter package license (you can enter multiple licenses comma separated): GPL *** Creation of .PKGINFO file in progress. It may take a few minutes, please wait... Warning: These dependencies (depend = fields) could not be translated into Arch Linux packages names: gsettings-backend ==> Checking and generating .INSTALL file (if necessary)... :: If you want to edit .PKGINFO and .INSTALL files (in this order), press (1) For vi (2) For nano (3) For default editor (4) For a custom editor or any other key to continue: ==> Generating .MTREE file... ==> Creating final package... ==> Package successfully created! ==> Removing leftover files...
Nota: Il pacchetto Quadrapassel è già disponibile nei repository ufficiali di Arch Linux. L'ho usato solo a scopo dimostrativo.
Se non vuoi rispondere a nessuna domanda durante la conversione del pacchetto, usa -q
flag per ignorare tutte le domande, ad eccezione della modifica dei file di metadati.
$ debtap -q quadrapassel_3.22.0-1.1_arm64.deb
Per ignorare tutte le domande (non consigliato però), usa -Q
bandiera.
$ debtap -Q quadrapassel_3.22.0-1.1_arm64.deb
Una volta completata la conversione, puoi installare il pacchetto appena convertito utilizzando "pacman" nel tuo sistema Arch come mostrato di seguito.
$ sudo pacman -U <package-name>
Ricevere aiuto
Per visualizzare la sezione della guida, usa -h
bandiera:
$ debtap -h Syntax: debtap [options] package_filename Options: -h --h -help --help Prints this help message -u --u -update --update Update debtap database -q --q -quiet --quiet Bypass all questions, except for editing metadata file(s) -Q --Q -Quiet --Quiet Bypass all questions (not recommended) -s --s -pseudo --pseudo Create a pseudo-64-bit package from a 32-bit .deb package -w --w -wipeout --wipeout Wipeout versions from all dependencies, conflicts etc. -p --p -pkgbuild --pkgbuild Additionally generate a PKGBUILD file -P --P -Pkgbuild --Pkgbuild Generate a PKGBUILD file only
Lettura correlata:
- Come creare pacchetti Debian dal sorgente
- Come convertire i pacchetti Linux con Alien