Wer oft eigene Pakete compiliert und diese mit checkinstall oder krpmbuilder in RPMs umwandelt, kann diese Pakete ebenfalls mit apt installieren und deinstallieren.
Dazu braucht man zunächst eine funktionierende apt-Installation (siehe Forum)
Dann installiert man sich das Paket apt4rpm
Falls beim Starten von aptate perl-Module fehlen sollten, können diese aus dem Repository funktronics (sources.list erweitern) mit apt geladen werden.
Die Konfiguration von apt4rpm erfolgt in der Datei /etc/apt/aptate.conf
Hier ein Beispiel:
In der Sektion <component> gibt man seinem eigenen Repository einen Namen, hier EigenePakete-9.1
Damit apt mit diesem Repoitory arbeiten kann, wird die /etc/apt/sources.list um den folgenden Eintrag erweitert:
In /local wird dann ein Verzeichnis EigenePakete-9.1 angelegt
Alle eigenen RPM-Pakete werden dann nach /local/EigenePakete-9.1 kopiert.
dann wird das apt-Repository erzeugt mit dem Befehl
Das Ergebnis von aptate sieht dann ungefähr so aus:
Nun startet man (nach der Änderung an der /etc/apt/sources.list)
Wichtig: wenn neue Pakete nach EigenePakete-9.1 kopiert werden, immer zuerst aptate aufrufen, dann apt-get update. Damit wird die apt interne Verwaltungs-Struktur aktualisiert.
Ein Tip am Rande:
Ich erstelle eigene Pakete mit der Releasenummer 0.oc2pus.x. z.Bsp:
xchat-1.8-0.oc2pus.1, damit wird das Paket durch die SuSE-Version ersetzt, wenn sie verfügnar ist. Da SuSE NIE Releasenummern mit 0-beginnend verwendet. (xchat-1.8-23 ist aktueller als x-chat-1.8-0.oc2pus.1 jedenfalls für rpm).
Wenn ich einen neuen eigenen compile von x-chat erstelle setze ich dann die Releasenummer hoch auf 0.oc2pus.2 und kopiere dieses Paket dann nach EigenePakete-9.1, lasse aptate laufen, apt-get update, apt-get upgrade und siehe da es wird jetzt x-chat-1.8-0.oc2pus.2 installiert.
Nach dem gleichen Schema arbeitet übrigends auch Packmann (0.pm.x)
Dazu braucht man zunächst eine funktionierende apt-Installation (siehe Forum)
Dann installiert man sich das Paket apt4rpm
apt-get install apt4rpm
Falls beim Starten von aptate perl-Module fehlen sollten, können diese aus dem Repository funktronics (sources.list erweitern) mit apt geladen werden.
apt install perl-XML-Writer perl-XML-Parser perl-XML-LibXML perl-XML-LibXML-Common perl-XML-GDOME perl-XML-NamespaceSupport perl-XML-SAX
Die Konfiguration von apt4rpm erfolgt in der Datei /etc/apt/aptate.conf
Hier ein Beispiel:
Code:
<?xml version='1.0' encoding="iso-8859-1"?>
<!DOCTYPE opt SYSTEM "/usr/share/apt4rpm/aptate.dtd">
<opt signed-pkgs-only="no">
<topdir>/local</topdir>
<sources-list-file>file:/local//ftp/pub/linux/suse/apt</sources-list-file>
<sources-list-ftp>ftp://ftp.gwdg.de/pub/linux/suse/apt</sources-list-ftp>
<sources-list-http>http://ftp.gwdg.de/pub/linux/suse/apt</sources-list-http>
<distribution id="suse91">
<name>SuSE</name>
<version>9.1</version>
<architecture>i386</architecture>
<component>
<name>EigenePakete-9.1</name>
<url>EigenePakete-9.1</url>
</component>
</distribution>
</opt>
Damit apt mit diesem Repoitory arbeiten kann, wird die /etc/apt/sources.list um den folgenden Eintrag erweitert:
rpm file:/local/apt SuSE/9.1-i386 EigenePakete-9.1
In /local wird dann ein Verzeichnis EigenePakete-9.1 angelegt
mkdir /local/EigenePakete-9.1
Alle eigenen RPM-Pakete werden dann nach /local/EigenePakete-9.1 kopiert.
dann wird das apt-Repository erzeugt mit dem Befehl
aptate
Das Ergebnis von aptate sieht dann ungefähr so aus:
Code:
Distribution(s) to be processed: suse91
Processing: suse91
Archive structure: 1 => SuSE/9.1-i386
Entering cache build stage
EigenePakete-9.1 -> Check: 1/4, warning: EigenePakete-9.1/xchat-2.0.7-92.i586.rpm: V3 DSA signature: NOKEY, key ID 9c800aca
RPMs added: 1
-> RPMs removed: 3
Entering apt repository creation stage
EigenePakete-9.1 -> Bin: MD5/GPG: 23/1
-> Src: MD5/GPG: 2/0
Entering apt database building stage
EigenePakete-9.1 -> Bin: 0023/0023
EigenePakete-9.1 -> Src: 0002/0002
Creating global release file: done
Installing apt repository at: /local/apt/SuSE/9.1-i386
aptate finished successfully
Nun startet man (nach der Änderung an der /etc/apt/sources.list)
Damit werden die Pakete in EigenePakete-9.1 in das apt-Verzeichnis mit aufgenommen. Danch kann man seine eigenen Pakete ganz normal mit apt-get install <paket1> installieren. Wenn das Paket ordentlich gebaut wurde und alle Abhängigkeiten korrekt gesetzt wurden beim Paketbau, wird apt es installieren und die benötigten Abhängigkeiten auflösen.apt-get update
Wichtig: wenn neue Pakete nach EigenePakete-9.1 kopiert werden, immer zuerst aptate aufrufen, dann apt-get update. Damit wird die apt interne Verwaltungs-Struktur aktualisiert.
Ein Tip am Rande:
Ich erstelle eigene Pakete mit der Releasenummer 0.oc2pus.x. z.Bsp:
xchat-1.8-0.oc2pus.1, damit wird das Paket durch die SuSE-Version ersetzt, wenn sie verfügnar ist. Da SuSE NIE Releasenummern mit 0-beginnend verwendet. (xchat-1.8-23 ist aktueller als x-chat-1.8-0.oc2pus.1 jedenfalls für rpm).
Wenn ich einen neuen eigenen compile von x-chat erstelle setze ich dann die Releasenummer hoch auf 0.oc2pus.2 und kopiere dieses Paket dann nach EigenePakete-9.1, lasse aptate laufen, apt-get update, apt-get upgrade und siehe da es wird jetzt x-chat-1.8-0.oc2pus.2 installiert.
Nach dem gleichen Schema arbeitet übrigends auch Packmann (0.pm.x)