Skip to Content

Arch Linux - Eigenes Repository einrichten

Posted on 2 mins read

Nachdem zunächst geklärt wurde, wie man sich seine eigenen Pakete erstellt, folgt nun die Beschreibung wie man ein eigenes Repository einrichtet. Im Prinzip das Vorgehen unter Arch Linux recht einfach gehalten, daher möchte ich das Ganze nicht wirklich als Tutorial/Anleitung bezeichnen.

Logo of Arch Linux

Was braucht man?

  • einen Webserver (bzw. wenn das Repository lokal ist nicht einmal den) + Zugriff auf das Dateisystem Dabei ist es von Vorteil, wenn man (zu mindestens für das Repository) das Indexing erlaubt (bspw. für nginx).
  • seine Pakete

Anlegen und Füllen des Repository (unter Arch Linux)

Ich bin mir nicht ganz sicher ob die Skripte zur Erzeugung der Datenbank nicht auch auf anderen Distributionen laufen würden, daher die Einschränkung. Die Auslieferung funktioniert unabhängig von der Distribution, da nur ein Webserver benötigt wird.

  1. Zu allererst verschafft man sich Zugang zu seinem Webserver. Dabei bietet es sich an, den Ort wo die Pakete liegen sollen in das lokale Dateisystem zu mounten. Wie man es macht ist eigentlich egal, ich benutzte zur Zeit sshfs jedoch würde es sicherlich auch mit einer nfs-Freigabe funktionieren.
  2. Kopieren der fertigen Pakete in das Verzeichnis
  3. Erzeugen der Paketdatenbank (im Verzeichnis)

    ## hinzufügen aller Pakete
    repo-add mypkgs.db.tar.gz *.pkg.tar.xz 
    ## hinzufügen eines Pakets
    repo-add {reponame}.db.tar.gz {paketname}.pkg.tar.xz
  4. Repository in die Paketverwaltung eintragen

    [{reponame}]
    SigLevel = Optional TrustAll
    Server = http://host/pfad/zur/datenbank

    Dabei sollten die Werte für {reponame} in Schritt 3 und 4 übereinstimmen. Wichtig ist dabei, dass man das Siglevel entsprechend anpasst. Optional TrustAll setzt keine Signierung der Pakete durch den Ersteller voraus und bietet sich daher zum Testen an.

  5. Aktualisieren der Paketlisten (auf jedem Rechner)

    pacman -Syuu

    Fertig ist das eigene Arch Linux Repository. So muss ich nicht alle Pakete auf jedem Rechner mit Arch Linux bauen, sondern kann sie via vServer allen Rechnern an denen ich arbeite bequem aktuell halten. Der nächste Schritt wäre die Signierung und ein bis zwei Spiegelserver. Wobei diese dann auch im LAN stehen könnten.