Re: Port mit allen Abhängigkeiten löschen?

From: Oliver Fromme <olli(at)lurza.secnetix.de>
Date: Sat, 11 Jan 2014 16:08:06 +0100 (CET)

Lars Engels wrote:
> On Fri, Jan 10, 2014 at 09:44:17PM +0100, Oliver Fromme wrote:
> > Wie man es mit dem "neuen" pkg macht, weiß ich nicht, da
> > ich den Fall dort noch nicht hatte.
>
> Da reicht ein einfaches "pkg autoremove".
>
> Das deinstalliert alle Pakete, die das "auto" flag gesetzt haben und die
> nicht in der Abhängigkeitsliste eines anderen Pakets stehen.

Da ich mich früher oder später leider mit dem neuen pkg
auseinandersetzen muss, hätte ich da mal zwei Fragen ...

Kann man das "auto"-Flag nachträglich manuell bei einem
installierten Port setzen oder löschen?

Und kann man beim "autoremove" ein Datum bzw. ein Range
(von-bis) angeben, so dass nur Packages entfernt werden,
die in diesem Zeitraum installiert wurden? Und kann
man sich die Liste der zu entfernenden Dateien ansehen
und prüfen, bevor sie tatsächlich entfernt werden?

Und kann man die Version eines installierten Packages
"faken", d.h. manuell ändern? (Bisher ging das einfach
durch Umbenennen des Verzeichnisses /var/db/pkg/foo-a.b.c
und Anpassen der entsprechenden Zeilen in +CONTENTS und
in den +REQUIRED_BY der Dependencies.)

Ok, das waren jetzt drei bis vier Fragen. :-)

Dummerweise habe ich online keine Manpage zu pkg gefunden,
so dass ich selbst nachschlagen könnte. Und ich will es
nicht installieren, bevor ich nicht tatsächlich bereit zum
Umstellen bin, um mir nichts zu "zerschießen". Ich habe
leider einiges an Skripten, was auf die alte Infrastruktur
(/var/db/pkg) angewiesen ist und sich nicht trivial
anpassen lässt.

> Sehr praktisch ist das auch im folgenden Fall:
>
> Port_X ist nur mit den Default-Optionen im Repository vorhanden, man
> benötigt aber eine spezielle Option, also ist Selbstbauen angesagt.
> Ein "make missing" im Verzeichnis des Ports zeigt an, welche Ports als
> BUILD_, RUN_ und LIB_DEPENDS mitgebaut werden, was u.U. sehr lange
> dauern kann.

Das kommt bei mir eher nicht vor. Ich habe dagegen öfters
den Fall, dass ich eine Software installieren muss, die
es in der Ports-Collection gar nicht gibt (und bei der es
sich nicht rentiert, einen richtigen Port zu erstellen).
Da "fake" ich dann ein Package, indem ich manuell eine Datei
/var/db/pkg/foo-a.b.c/+CONTENTS anlege und die entsprechenden
+REQUIRED_BY, damit Dependencies nicht versehentlich einmal
deinstalliert werden (genauer gesagt habe ich ein Skript, das
das für mich tut). Das wird dann zukünftig mit pkgNG wohl
auch deutlich schwieriger, fürchte ich.

Gruß
   Olli

-- 
Oliver Fromme,  secnetix GmbH & Co. KG,  Marktplatz 29, 85567 Grafing
Handelsregister:  Amtsgericht Muenchen, HRA 74606, Geschäftsfuehrung:
secnetix Verwaltungsgesellsch. mbH, Handelsreg.: Amtsgericht München,
HRB 125758, Geschäftsführer:  Maik Bachmann,  Olaf Erb,  Ralf Gebhart
FreeBSD-Dienstleistungen/-Produkte + mehr: http://www.secnetix.de/bsd
(On the statement print "42 monkeys" + "1 snake":)  By the way,
both perl and Python get this wrong.  Perl gives 43 and Python
gives "42 monkeys1 snake", when the answer is clearly "41 monkeys
and 1 fat snake".        -- Jim Fulton
To Unsubscribe: send mail to majordomo(at)de.FreeBSD.org
with "unsubscribe de-bsd-questions" in the body of the message
Received on Sat 11 Jan 2014 - 16:08:18 CET

search this site