Eigene Repositorys erstellen
Eigene Repositories erstellen und im Netz mittels http verteilen.
Apache installieren und einrichten
1. Apache installieren
# pacman -S apache
2. Die Datei /etc/httpd/conf/httpd.conf mit einem Editor für seine Bedürfnisse anpassen
# vi /etc/httpd/conf/httpd.conf
3. httpd starten
# /etc/rc.d/httpd start
Wenn alles gut läuft sollte man nun unter http://eigeneIP die Apache Testseite vorfinden. Man kann httpd auch als daemon in /etc/rc.conf eintragen, so das er bei jedem Systemstart gestartet wird.
4. Erstellen eines neues Unterordners im Apache Dokumenten Root. In diesem Beispiel soll unser neues Repository mypkgs heissen.
# mkdir /home/httpd/html/mypkgs
5. Da alle Pakete in einem extra Verzeichnis erstellt werden (/var/abs/local), erstellen wir hier einen symbolischen Link in das neue Verzeichnis.
# ln -s /home/httpd/html/mypkgs /var/abs/local/mypkgs
Eigenes Repository erstellen
Nachdem nun Apache läuft können wir nun unser Repository erstellen.
1. Wechseln in das Abs Verzeichnis (/var/abs/local)
cd /var/abs/local
Mein Verzeichnis sieht zur Zeit so aus:
# ls armagetronad jumpnbump knights mypkgs
Hier befinden sich Verzeichnisse für die Programme armagetronad, jumpnbump und knights. mypkgs ist der symbolische Link auf /home/httpd/html/mypkgs
In jedem dieser Verzeichnisse gibt es das fertige Paket. Für armagetronad wäre dies armagetronad-0.2.8.2.1-1-i686.pkg.tar.gz
2. Nun kopiert(cp) oder verschiebt(mv) man alle pkgs in das mypkgs Verzeichnis.
# cp ./*/*.pkg.tar.gz ./mypkgs
3. Wechsel in das mypkgs Verzeichnis
# cd mypkgs
4. Erstellen der Datenbank
# repo-add mypkgs.db.tar.gz *.pkg.tar.gz
Beispiel Ausgabe
# repo-add mypkgs.db.tar.gz *.pkg.tar.gz :: adding package 'armagetronad-0.2.8.2.1-1-i686.pkg.tar.gz' :: creating 'desc' db entry :: computing MD5SUM checksums :: creating 'depends' db entry :: adding package 'jumpnbump-1.55-1-i686.pkg.tar.gz' :: creating 'desc' db entry :: computing MD5SUM checksums :: creating 'depends' db entry :: adding package 'knights-0.6.4beta-1-i686.pkg.tar.gz' :: creating 'desc' db entry :: computing MD5SUM checksums :: creating 'depends' db entry :: creating updated database file /home/httpd/html/mypkgs/mypkgs.db.tar.gz
/etc/pacman.conf für den aktuellen PC anpassen
... # eigenes Paket repository [mypkgs] Server = file:///var/abs/local/mypkgs
Dies hat den Vorteil das Apache nicht laufen muss, wenn man seine Pakete installieren will.
/etc/pacman.conf für alle PCs im Netz anpassen
# eigenes Paket repository [mypkgs] Server = http://eigeneIP/mypkgs