Eigene Repositorys erstellen: Unterschied zwischen den Versionen

Aus wiki.archlinux.de
Freaknils (Diskussion | Beiträge)
K Dateiname bei repo-add an tar.xz format angepasst
Joel-schoene (Diskussion | Beiträge)
rc.d auf systemctl
Zeile 9: Zeile 9:


3. httpd starten
3. httpd starten
  # /etc/rc.d/httpd start
  # systemctl start httpd.service


Wenn alles gut läuft sollte man nun unter <tt>http://eigeneIP</tt> die Apache Testseite vorfinden.
Wenn alles gut läuft sollte man nun unter <tt>http://eigeneIP</tt> die Apache Testseite vorfinden.
Man kann <tt>httpd</tt> auch als daemon in /etc/rc.conf eintragen, so das er bei jedem Systemstart gestartet wird.
Man kann <tt>httpd</tt> auch bei jedem Systemstart starten lassen. Das geht mit
# systemctl enable httpd.service


4. Erstellen eines neues Unterordners im Apache Dokumenten Root. In diesem Beispiel soll unser neues Repository '''mypkgs''' heissen.
4. Erstellen eines neues Unterordners im Apache Dokumenten Root. In diesem Beispiel soll unser neues Repository '''mypkgs''' heissen.

Version vom 1. Dezember 2016, 12:53 Uhr

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

# systemctl start httpd.service

Wenn alles gut läuft sollte man nun unter http://eigeneIP die Apache Testseite vorfinden. Man kann httpd auch bei jedem Systemstart starten lassen. Das geht mit

# systemctl enable httpd.service

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.xz

Beispiel Ausgabe

# repo-add mypkgs.db.tar.gz *.pkg.tar.xz
:: 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

Siehe auch