Paketliste erstellen

H

holgerw

Guest
Hallo,

sucht man zu FreeBSD + Paketliste, dann bekommt man fast alle Treffer zu einem Kapitel des Porter-Handbuches:
https://www.freebsd.org/doc/de/books/porters-handbook/plist-autoplist.html

So was kompliziertes möchte ich aber nicht, sondern ich möchte lediglich folgendes, wie hier am Beispiel von Debian:
Liste erstellen:
Code:
# dpkg --get-selections | grep '\Winstall' | cut -f1 > installiertepakete.txt

Liste der Pakete wieder installieren:
Code:
# apt-get install $(cat installiertepakete.txt)

Geht so was auch unter FreeBSD? Ich möchte solche Sachen in meine Dokumentation einfließen lassen.

Viele Grüße,
Holger
 
Hello,

also wenn ich das richtig verstanden habe, dann könnte man das wie folgt lösen:
Code:
# pkg version --origin | awk '/Winstall/ { print $1 }' | sort > installiertepakete.txt
Danach kann man die Pakete der erstellten Liste beispielsweise von portmaster installieren lassen.
Code:
# portmaster `cat installiertepakete.txt`

Hoffe das ist so in etwa das, wonach du gesucht hast...

Beste Grüße,
laenger

P.S. Für weitere Funktionen sind dir vielleicht die folgenden Manpages zu den einzelnen Programmen eine Hilfe:
Code:
# man pkg
# man portmaster
# pkg help version
# man awk
# man sort
 
Wohl eher:
Code:
pkg info -qo > installiertepakete.txt

Zum installieren:
Code:
xargs -o pkg add < installiertepakete.txt
 
Das ist natürlich die etwas schönere Lösung.
Auch für mich gibt es noch eine Menge zu lernen... :rolleyes:

Beste Grüße
 
Hallo,

danke Euch beiden. Werde ich in meine Doku aufnehmen.

Viele Grüße,
Holger
 
Code:
xargs -o pkg add < installiertepakete.txt

"pkg add" geht natürlich nur mit lokal gespeicherten Paketen (also *.txz). Ansonsten lieber "pkg install" und vielleicht noch ein "-Uy" hinzu, damit es ohne weitere Rückfragen schnell durchläuft (wenn man sich sicher ist, dass nichts gewünschtes dadurch deinstalliert wird!).
 
Wenn du die ganze Liste einfach wieder installierst, dann sieht pkg jedes einzelne aber als explizit installiert an. Das kann später Probleme beim "pkg autoremove" geben.

Besser ist es, die "leaf" Pakete zu suchen und später neu zu installieren:
Code:
pkg leaf > installiertepakete.txt
"leaf" ist ein Alias, der in der /usr/local/etc/pkg.conf gesetzt wird. Falls der nicht vorhanden sein sollte, kannst es auch mit
Code:
pkg query -e "%a == 0" "%n-%v" > installiertepakete.txt
machen.
 
Zurück
Oben