Eigenes apt-Repository
Aus Fedorawiki.de
Inhaltsverzeichnis |
Vorwort
Dies soll nur einen kleinen Crashkurs dastellen, wie ein eigenes apt-Repository angelegt wird. Leider sind die entsprechenden Funktionen schlecht dokumentiert.
Ordnerstruktur
- Erstellt einen leeren Ordner (Bsp: RPMS).
- Innerhalb dieses Ordners erstellt einen Ordner mit dem Namen RPMS.all (wenn Ihr alle RPMs in einem Ordner haben wollt) oder mehrere Ordner, die alle mit RPMS.* anfangen.
- Kopiert Eure RPMs in den/die entsprechende(n) Ordner.
- Generiert die Paketlisten:
genbasedir --bloat --bz2only /Pfad/zu/RPMS/
Dadurch wird ein neuer Ordner base angelegt, aus dem apt nachher die Paketlisten lädt. Die Option --bloat ist nötig für Nicht-Connectiva-Distributionen (wie Fedora), die Option --bz2only generiert nur gepackte Paketlisten (reicht völig aus).
Eintrag in die sources.list
Tragt in Eure /etc/apt/sources.list ein:
rpm file:/Pfad/zu/ RPMS all
Wichtig ist dabei, dass der Eintrag aus vier Spalten besteht:
- Zuerst das Wort rpm, da es sich bei Fedora um RPMs handelt. Abschließend muß ein "/" stehen.
- Als nächstes ein Teil des Pfades zu dem Ordner überhalb (!) vom Ordner RPMS.
- Danach den Ordnernamen (ohne direkte Pfadangabe)
- Als letztes Eure erstellten Verzeichnisse (ohne den Teil mit RPMS.)
Evtl. müsst Ihr ein wenig rumprobieren, bis alles richtig erkannt wird.
Nach einem apt-get update könnt Ihr auf die RPMs mit apt zugreifen.
Beispiel
Bei mir sieht das ganze z.B. so aus:
Ordnerstruktur:
# find /daten/RPMS/ /daten/RPMS/ /daten/RPMS/RPMS.icons /daten/RPMS/RPMS.icons/Pastels-Nuvola-1-1.0-0.db.fc3.noarch.rpm /daten/RPMS/RPMS.kwin /daten/RPMS/RPMS.kwin/knifty-0.4.2-1.db.fc3.i386.rpm /daten/RPMS/RPMS.kstyle /daten/RPMS/RPMS.kstyle/lipstik-0.90-0.db.fc3.i386.rpm /daten/RPMS/base /daten/RPMS/base/pkglist.icons.bz2 /daten/RPMS/base/pkglist.kstyle.bz2 /daten/RPMS/base/pkglist.kwin.bz2 /daten/RPMS/base/release.icons /daten/RPMS/base/release.kstyle /daten/RPMS/base/release.kwin /daten/RPMS/base/release
sources.list
rpm file:/daten/ RPMS kwin kstyle icons
Das Release-File
Habt Ihr vor, das Repository öffentlich zu machen, solltet Ihr es noch eindeutiger benennen. Editiert dazu die release-Files im base-Ordner. Das Hauptfile release ist dabei unwichtig, die release.* sind von Bedeutung.
Archive: unknown Component: all Version: Unknown Origin: Unknown Label: Unknown Architecture: unknown NotAutomatic: false
- Archive: Möglichst ein kleingeschriebenes eindeutiges Wort, damit wird das Apt-pinning erleichtert.
- Component: Nicht ändern, dies ist der Name des Verzeichnisses (hier RPMS.all)
- Version: z.B. "3" für Fedora Core 3
- Origin: Eurer Domainname
- Label: Der Name Eures Repositories
- Architecture: z.B. i386
- NotAutomatic: nicht ändern, da Funktion unbekannt