Guida verificata con Ubuntu: 20.04
Problemi in questa pagina? Segnalali in questa discussione
Introduzione
In Kubuntu 20.04 e Lubuntu 20.04, a causa di dipendenze non presenti nei repository ufficiali, non può essere compilato il pacchetto Bup necessario a creare un backup incrementale con l'applicazione KupBackup.
Nel seguito viene mostrato come creare le dipendenze assenti, ricompilando i sorgenti presenti nel repository ufficiali, e tramite esse il pacchetto Bup medesimo.
Preliminari
Occorre installare molti pacchetti per svolgere le compilazioni e pacchettizzazioni, ma una volta completate tutte le operazioni molte sarà possibile rimuoverle.
Installare i pacchetti build-essential, dpkg-dev, checkinstall, python3.7-dev, python3-fuse, libpython2-dev, python3-pytest, python3-distutils, pkg-config, linux-libc-dev, libacl1-dev, gcc, make, acl, attr, rsync, python3-pytest-xdist, par2, libreadline-dev, python3-tornado, python3-all, python3-all-dev, python3-all-dbg, python3-setuptools, python3-sphinx, python-all, python-all-dev, debhelper-compat, python-all-dbg, python-setuptools.
Ricompilare pacchetti dipendenze
Creare la cartella ~/Python in cui eseguire la compilazione dei pacchetti richiesti.
Pacchetto python-pylibacl
Scaricare il sorgente python-pylibacl_0.5.4.orig.tar.gz e la patch python-pylibacl_0.5.4-2.debian.tar.xz. nella cartella ~/Python.
Estrarre il sorgente .tar.gz nella cartella ~/Python.
Estrarre la patch .debian.tar.xz nella cartella ~/Python/pylibacl_0.5.4.
Aprire con un editor di testo il file ~/Python/pylibacl_0.5.4/control.
Copiare tra il primo e il secondo blocco d'istruzioni il seguente testo:
Package: python-pylibacl Architecture: any Depends: ${python:Depends}, ${shlibs:Depends}, ${misc:Depends} Provides: ${python:Provides} Suggests: python-pylibacl-dbg, python-pylibacl-doc Description: module for manipulating POSIX.1e ACLs pylibacl is a Python interface to the libacl library. It allows manipulation of the POSIX.1e-compliant filesystem ACLs present in some operating systems (GNU/Linux included). . This package contains the library for Python 2.
- Salvare e chiudere l'editor.
Aprire con un editor di testo il file ~/Python/pylibacl_0.5.4/changelog.
Copiare in cima il seguente testo:
python-pylibacl (0.5.4-3) stable; urgency=low * Added python2 support -- Ciuf-Ciuf <ciufciuf@tuuutuu.dindon> Fri, 29 Apr 2022 23:25:10 -0200
Il nome ed email «Ciuf-Ciuf <ciufciuf@tuuutuu.dindon>» è solo un esempio, possono essere sostituiti con altri a piacere, purché venga rispettata la sinossi.
- Salvare e chiudere l'editor.
Spostarsi nella cartella ~/Python/pylibacl_0.5.4.
Compilare e creare il pacchetto col comando:
sudo dpkg-buildpackage -uc -us
Pacchetto python-pyxattr
Scaricare il sorgente python-pyxattr_0.6.1.orig.tar.gz e la patch python-pyxattr_0.6.1-2.debian.tar.xz. nella cartella ~/Python.
Estrarre il sorgente .tar.gz nella cartella ~/Python.
Estrarre la patch .debian.tar.xz nella cartella ~/Python/pyaxattr_0.6.1-2.
Aprire con un editor di testo il file ~/Python/pyaxattr_0.6.1-2/control.
Copiare tra il primo e il secondo blocco il seguente testo:
Package: python-pyxattr Architecture: any Depends: ${python:Depends}, ${shlibs:Depends}, ${misc:Depends} Provides: ${python:Provides} Suggests: python-pyxattr-dbg, python-pyxattr-doc Description: module for manipulating filesystem extended attributes pyxattr is a Python interface to the libattr library. It allows manipulation of the filesystem extended attributes present in some operating systems (GNU/Linux included). . This package contains the library for Python 2.
- Salvare e chiudere l'editor.
Aprire con un editor di testo il file ~/Python/pyaxattr_0.6.1-2/changelog.
Copiare in cima il seguente testo:
python-pyxattr (0.6.1-3) stable; urgency=low * Added python2 support -- Ciuf-Ciuf <ciufciuf@tuuutuu.dindon> Fri, 29 Apr 2022 23:33:41 -0200
Il nome ed email «Ciuf-Ciuf <ciufciuf@tuuutuu.dindon>» è solo un esempio, possono essere sostituiti con altri a piacere, purché venga rispettata la sinossi.
- Salvare e chiudere l'editor.
Spostarsi nella cartella ~/Python/pyaxattr_0.6.1-2.
Compilare e creare il pacchetto col comando:
sudo dpkg-buildpackage -uc -us
Installazione pacchetti compilati
Spostarsi nella cartella ~/Python/
Installare i seguenti pacchetti creati col comando:
sudo dpkg -i python-pylibacl_0.5.4-3_amd64.deb python3-pylibacl_0.5.4-3_amd64.deb python-pyxattr_0.6.1-3_amd64.deb python3-pyxattr_0.6.1-3_amd64.deb
Gli altri pacchetti creati non serve installarli.
Pacchettizzare pacchetto Bup
Scaricare il file sorgente in formato tar.gz da qui.
Creare la cartella ~/Bup.
Estrarre il contenuto dell'archivio .tar.gz nella cartella ~/Bup.
Spostarsi nella cartella ~/Bup.
Configurare e compilare il codice sorgente senza installarlo.
Pacchettizzare il compilato con Checkinstall.
Alla richiesta della descrizione si può inserire questo testo:
highly efficient file backup system based on git. bup is a backup tool which stores the backups in a system based around the packfile format from git.
Terminata la pacchettizzazione, installare il pacchetto Bup creato col comando suggerito a schermo.
Rimozione dipendenze compilazione
Rimuovere i pacchetti per il debug col comando:
sudo apt purge *-dbg
Rimuovere i pacchetti pyython per compilare col comando:
sudo apt purge *python*-dev