# [HOWTO] Paludis

## nikaya

__________PALUDIS HOWTO__________

Dieses HOWTO versucht den Umgang mit dem Paketmanager Paludis zu erläutern.Korrekturen und Berichtigungen sind ausdrücklich erwünscht.

Alle Ausführungen beziehen sich auf die im Moment aktuelle Version sys-apps/paludis-0.24.6.

Für eine ausfühlichere Referenz ist http://paludis.pioto.org/ zu konsultieren,insbesondere die FAQ.

########################################################################################

1. Was ist Paludis?

Paludis ist ein alternativer Paketmanager für Gentoo der Portage ganz ersetzen kann.Eine Deinstallation von Portage ist trotzdem nicht empfehlenswert und auch nicht möglich,da Paludis einige Infos (noch) benötigt welche von Portage erzeugt werden.Der Hauptmaintainer von Paludis ist Ciaran McCreesh aka ciaranm,ein ehemaliger Gentoo-Developer und Ausnahmeprogrammierer.

Wegen permanentem trollen und Attacken auf andere Devs und User wurde ihm der Dev-Status wieder entzogen.Trotzdem ist er aktiv wie eh' und je.Er besitzt profunde Kenntnisse über Gentoo,Portage und Ebuilds (Mitinitiator von http://devmanual.gentoo.org) und ist der Überzeugung das der Portage-Code immer wirrer und unbrauchbarer wird:

 *http://paludis.pioto.org/faq.html#why wrote:*   

> The Portage codebase is too broken to be fixed. It is a huge mess of spaghetti procedural code with no underlying design.

 

Darum wurde Paludis komplett neu entwickelt und in C++ geschrieben,ergänzt um Ruby-bindings und sogenannte Hooks.Das sind Bash-Skripte mit welchen zusätzliche Funktionalitäten ermöglicht werden.Wer sich ein wenig mit Shellprogrammierung auskennt kann somit leicht eigene User-Hooks schreiben.

Nähere Infos gibt es hier:http://paludis.pioto.org/hooks.html

##########################################################################################

2. Installation von Paludis

Da sich momentan Paludis noch im Testing-Tree befindet müssen Benutzer die ein Gentoo-stable verwenden Paludis und einige Abhängigkeiten per package.keywords "freischalten":

```
echo -e "sys-apps/paludis\nvirtual/c++-tr1-functional\nvirtual/c++-tr1-memory\nvirtual/c++-tr1-type-traits" >> /etc/portage/package.keywords
```

Wer ein ~arch System hat braucht das natürlich nicht.

Danach ein 

```
emerge paludis
```

Nun muß noch der Schritt von Portage zu Paludis gemacht werden damit Paludis auch arbeiten kann.Beschrieben ist es auf der Projektseite http://paludis.pioto.org/migration.html

Am einfachsten (und auch von mir nur getestete Methode) ist das Script portage2paludis.bash (Download=http://paludis.pioto.org/trac/browser/scratch/scripts/portage2paludis.bash?format=raw).

Es stellt einfache Fragen welche in der Regel einfach mit <Enter> bestätigt werden können.Das Skript importiert Portage Variablen in die Paludis Konfigurationsdateien in /etc/paludis.

###############################################################################################

3. Konfiguration

Für nähere Infos siehe http://paludis.pioto.org/configuration.html

Das portage2paludis.bash Skript erstellt die Konfigurationsdateien in der Regel korrekt.Ich möchte dennoch mal meine Konfigurationsdateien in /etc/paludis hier reinstellen,da sie imho aussagekräftiger sind als ellenlange Erklärungen.Diese sind selbstverständlich nur beispielhaft und müssen auf die eigenen Bedürfnisse angepasst werden.

Wichtig:Wenn ihr copy&paste macht vergewissert euch dass am Ende jeder Zeile KEIN Leerzeichen steht.Paludis mag das nicht und meckert dann rum.

3.1 /etc/paludis/bashrc

Fangen wir an mit der /etc/paludis/bashrc.Dort werden CHOST,CFLAGs,CCACHE sowie die Pakete eingetragen welche den src_test nicht bestehen:

```

# bashrc

# This file created by portage2paludis.bash

export CHOST="i686-pc-linux-gnu"

export CFLAGS="-O2 -march=athlon-xp -pipe -fomit-frame-pointer"

export CXXFLAGS="${CFLAGS}"

export MAKEOPTS="-j2"

export PATH="/usr/lib/ccache/bin/:${PATH}"

export CCACHE_DIR="/var/tmp/ccache"

case "${PN}" in

    # These packages often fail src_test (not a complete list)

    automake|glibc|e2fsprogs|neon|gettext|tar|python|libpcre|ruby|koffice-libs|krita|libtool|linux-headers|orbit|glib|prelink|beryl-core|\

    beryl-plugins|beryl-manager|emerald|openldap|ccache|coreutils|hal|k3d)

        export SKIP_FUNCTIONS=test

        ;;

esac

```

Kommentar:

Der erste und zweite Block ist eigentlich selbsterklärend.Die "export" Option braucht nicht mehr drin stehen,kann aber.Ich vermute aktuelle Versionen von portage2paludis.bash schreiben export nicht mehr hinein.

Im dritten Block werden Pakete eingetragen welche den src_test nicht bestehen.Dieser ist bei Paludis,im Gegensatz zu Portage,immer an.Wenn der src_rest nicht bestanden wird bricht der Kompiliervorgang mit einem Fehler ab.Ärgerlich bei großen Paketen da er erst am Ende durchgeführt wird und nochmal begonnen werden muß.Oben angeführte Pakete sind für mein System.

Eine ausführlichere (nicht vollständige) Liste ist im Wiki:http://gentoo-wiki.com/HOWTO_Use_Portage_alternative_-_Paludis#Test_Fails .Wer Pakete findet die dort noch nicht gelistet sind möge diese bitte dort eintragen.

Die Tests können bei einigen wenigen Paketen sehr lange dauern.(Tipp:Mal den src_test von vim anschauen.)

http://paludis.pioto.org/faq.html#testfailures Link

FiXme:Es gibt in der bashrc sicher noch viele weitere Möglichkeiten.Kennt jemand Beispiele?

3.2 /etc/paludis/keywords.conf

Weiter geht es mit der /etc/paludis/keywords.conf.Diese ist das Äquivalent zu Portage' /etc/portage/package.keywords.Dort werden also Pakete eingetragen welche auf einem Stable-System 

aus Testing "scharfgeschaltet" werden sollen.Zudem wird dort festgelegt welchen Gentoo-Software-Zweig man haben möchte.

```

# keywords.conf

# This file created by portage2paludis.bash

*/* x86

app-admin/eselect-news ~x86

app-paludis/paludis-hooks ~x86

app-paludis/paludis-hooks-collision-protect ~x86

app-admin/eselect-paludis-hooks ~x86

app-paludis/paludis-hooks-undo-prelink ~x86

app-paludis/paludis-hooks-update-eix ~x86

app-paludis/etc-paludis ~x86

app-portage/portage-utils ~x86

media-gfx/k3d ~x86

```

Wichtig:Das "~arch" am Ende jeder Zeile ist bei Paludis zwingend erforderlich,im Gegensatz zu Portage wo es seit 2.1 nicht mehr nötig ist.

Bei mir hat das Skript beim erstellen der keywords.conf Kommentare erzeugt und den Zeilenumbruch nicht korrekt formatiert.Der Grund war dass ich die Einträge in package.keywords in Verzeichnisse aufgeteilt hatte.

Das sah dann so aus:

```

###/etc/portage/package.keywords/media-video begin media-video/tovid ~x86

media-video/lxdvdrip ~x86

media-video/streamdvd ~x86 ###/etc/portage/package.keywords/media-video end

```

Paludis meckert dann natürlich dass Ebuild "###/etc/portage/package.keywords/media-video begin media-video/tovid ~x86" nicht existiert.

Ich hatte das Problem auf der Paludis-Mailing-List erwähnt,aber keine Rückmeldung bekommen.Kann sein dass es gefixt wurde,oder auch nicht.Da ist dann ein nachträgliches editieren nötig.

Wer ein Testing haben möchte trägt nur folgendes ein:

```

*/* x86 ~x86

```

Wer von einem bestehenden Testing zu Paludis migriert bekommt vom Skript den richtigen Eintrag.

Möchte jemand auf einem Testingsystem einige Pakete nur aus Stable trage er folgendes ein:

```
*/* x86 ~x86 

foo-bar/foobar -* x86
```

3.3 /etc/paludis/licenses.conf

```

# licenses.conf

# This is a stub, it accepts all licenses.

# This file created by portage2paludis.bash

*/* *

```

Dies akzeptiert alle Lizenzen und wird per default so erstellt.Wer die Lizenzen filtern möchte siehe bitte http://paludis.pioto.org/configuration.html

3.4 /etc/paludis/mirrors.conf

```

# mirrors.conf

# This file created by portage2paludis.bash

*  ftp://pandemonium.tiscali.de/pub/gentoo//distfiles http://mirrors.sec.informatik.tu-darmstadt.de/gentoo//distfiles ftp://ftp.uni-erlangen.de/pub/mirrors/gentoo/distfiles \

ftp://sunsite.informatik.rwth-aachen.de/pub/Linux/gentoo/distfiles

```

Die Einträge werden in der Regel korrekt importiert und bedürfen keiner näheren Erklärung.

3.4 /etc/paludis/package_mask.conf

Das Äquivalent zu /etc/portage/package.mask

```

# package_mask.conf

# This file created by portage2paludis.bash

>=sys-devel/binutils-config-1.9-r3::gentoo

>=sys-kernel/module-rebuild-0.5::gentoo

=media-video/ffmpeg-0.4.9_p20070330::gentoo

=app-editors/vim-7.1_beta001::gentoo

```

Die Einträge "::gentoo" hinter den Paketen kennzeichnen die Repositories wo die Ebuilds sich befinden."::gentoo" ist der offizielle Portage-Tree.

Es können auch Overlays eingetragen werden (z.B. "::sunrise")

FiXme:Sind die Repository Einträge wirklich nötig?Ich hatte auch einige ohne diese darin stehen.

3.5 /etc/paludis/package_unmask.conf

Das Äquivalent zu /etc/portage/package.unmask

```

# package_unmask.conf

# This file created by portage2paludis.bash

=x11-drivers/nvidia-drivers-1.0.9629

=media-video/nvidia-settings-1.0.20060919

```

FiXme:Das gleiche wie bei package_mask.conf.Es scheint auch ohne ::repository Eintrag zu funktionieren.Scheint optional zu sein.

3.6 /etc/paludis/use.conf

Das Äquivalent zu /etc/portage/package.use.

```

# use.conf

# This file created by portage2paludis.bash

*/* aac nls win32codecs real kdexdeltas kdeenablefinal kdehiddenvisibility hal java nptl nptlonly pdf samba slang nvidia bash-completion -gnome branding paludis

*/* INPUT_DEVICES: -* keyboard mouse

*/* LINGUAS: -* de

*/* VIDEO_CARDS: -* nv nvidia

*/* PALUDIS_HOOKS: -* eselect undo-prelink update-eix collision-protect

app-cdr/cdrdao -gnome

x11-misc/kcometen3 -kdeenablefinal

media-video/mplayer theora

sys-apps/pciutils -zlib

sys-apps/paludis bash-completion contraruis inquisitio pink ruby doc

x11-wm/fluxbox -gnome

x11-wm/beryl emerald

x11-libs/cairo glitz

media-video/transcode dvdread

sys-kernel/module-rebuild paludis

```

Wie zu sehen ist stehen dort einige Variablen die aus der /etc/make.conf importiert wurden (die ersten vier Zeilen).Der Maintainer meint sie wären in der use.conf besser aufgehoben,zumal es in Paludis keine make.conf gibt.

Zu beachten ist bei diesen Variablen die Syntax:Erst wird mit -* alle Variablen negiert um danach die gewünschten zu setzen.

3.7 /etc/paludis/repository_defaults.conf

Diese Datei erstellt für die Repositories (siehe unten) defaults,so dass diese dort nicht extra eingetragen werden müssen.Steht in den $repository.conf ein anderer Wert so wird dieser bevorzugt.Die repository_defaults.conf wird also als letztes von Paludis befragt.Sie befindet sich NICHT im Unterverzeichniss /etc/paludis/repositories sondern in /etc/paludis.

Diese Datei ist optional.Einträge in den $repository.conf reichen auch.

```

write_cache = /var/cache/paludis/metadata

names_cache = /var/cache/paludis/names

provides_cache = /var/cache/paludis/provides

```

3.8 /etc/paludis/repositories (Verzeichnis)

Paludis kann mit allen möglichen Arten von Repositorien umgehen.Hier ist der Ort für ihre Konfiguration.Es sollten mindestens zwei Dateien drin stehen:"gentoo.conf" und "installed.conf".

Sie werden natürlich vom portage2paludis.bash Skript erstellt.

3.8.1 /etc/paludis/repositories/gentoo.conf

```

location = ${ROOT}/usr/portage

sync = rsync://rsync.europe.gentoo.org/gentoo-portage

profiles = ${ROOT}/usr/portage/profiles/default-linux/x86/2007.0/desktop

distdir = /usr/portage/distfiles

format = ebuild

#names_cache = ${location}/.cache/names  #disabled because of repository_defaults.conf

write_cache = /var/empty

```

gentoo.conf ist,wie gesagt,der offizielle Portage-Tree wie ihr ihn kennt.Der Ort ist per default natürlich /usr/portage kann aber hier auch für Paludis auf irgendwas geändert werden z.B. /var/paludis/repositories/gentoo.Paludis wird dann beim syncen die Ebuilds dort ablegen.Auch die Distfiles kann man dort ablegen.Dann muß "distdir = " eben auf dieses Verzeichnis weisen.

FiXme:Ich bin mir nicht sicher ob Paludis diese Verzeichnisse erstellt wenn sie nicht vorhanden sind.Zur Sicherheit kann ein "mkdir -p /var/paludis/repositories/gentoo" nicht schaden.

Hier wird Paludis auch mitgeteilt welches Profil zu verwenden ist.Der make.profile Symlink von Portage wird nicht beachtet.Danach sollte man 

```
paludis -i --dl-reinstall if-use-changed world
```

durchführen.Die Option "--dl-reinstall if-use-changed" ist immer nötig wenn die globalen USE-Flags sich ändern,was bei einem Profilwechsel wohl immer der Fall sein wird.

Wie man sieht habe ich die names_cache Variable deaktiviert da ein Eintrag in /etc/paludis/repository_defaults.conf existiert.Die write_cache Variable sollte hingegen immer auf "/var/empty" stehen.

Achtung auch hier wieder bei der Syntax:Leerzeichen am Ende der Zeilen sind zu vermeiden.Bei der Variablenzuweisung hat vor und hinter dem Operator ( = ) hingegen ein Leerzeichen zu stehen.

3.8.2 /etc/paludis/repositories/installed.conf

```

location = ${ROOT}/var/db/pkg/

format = vdb

#names_cache = ${location}/.cache/names       #disabled because of repository_defaults.conf

#provides_cache = ${location}/.cache/provides #disabled because of repository_defaults.conf

```

Hier wird Paludis mitgeteilt wo die Infos über installierte Pakete sind.

Die "location" und "format" Variablen dürfen aus Kompatibilitätsgründen nicht geändert werden.Auch hier habe ich names_cache und provides_cache wegen der repository_defaults.conf deaktiviert.

FiXme:Mit den Paludis cachefiles kenne ich mich nicht wirklich gut aus.Hatte da selber Schwierigkeiten und habe dann einfach die Tipps von anderen Forenteilnehmern übernommen.Kann da jemand mehr zu sagen?Ansonsten:http://paludis.pioto.org/cachefiles.html nachlesen.

3.8.3 /etc/paludis/repositories/$overlay.conf

Es können beliebig viele eigene Repositorien/Overlays definiert werden.Exemplarisch sei hier mal das Sunrise-Overlay beschrieben.

```

location = ${ROOT}/usr/local/overlays/sunrise

master_repository = gentoo

sync = svn+http://overlays.gentoo.org/svn/proj/sunrise/reviewed/

cache = /var/empty

format = ebuild

importance = 10

#names_cache = ${location}/.cache/names    #disabled because of repository_defaults.conf

#write_cache = /var/cache/paludis/metadata #disabled because of repository_defaults.conf

```

Erläutern möchte ich hier zwei Variablen:

1. master_repository = gentoo

Dadurch werden einige Variablen vom master_repository (hier gentoo) übernommen und brauchen nicht extra aufgeführt werden.Diese Variablen sind PORTDIR,distdir und profiles.

2. importance = 10

Diese Variable wird benutzt wenn zwei Repositories identische Pakete enthalten (Name und Version).Das Repository mit der höheren importance wird dann bevorzugt.

Wenn nicht angegeben ist der default = 0.Der höchste Wert ist imho 10.

Um ein Overlay nutzen zu können muß man also eine $overlay.conf erstellen.Für den initialen Sync gibt man folgenden Befehl ein (hier am Beispiel vom Sunrise-Overlay wenn die Datei "sunrise.conf" heißt):

```
paludis -s x-sunrise
```

Danach wird dieses Overlay jedesmal beim syncen automatisch mitaktualisiert.

#############################################################################################

4. Arbeiten mit Paludis

Dann kann das erste Mal mit Paludis gesynct werden:

```
paludis --sync  # alternativ paludis -s
```

Das Verzeichnis wo Paludis kompiliert ist per default /var/tmp/paludis.Wenn es nicht existiert sollte es vorher erstellt werden.Der Ort kann durch die Variable "buildroot" in den $repository.conf Dateien auf ein anderes Verzeichnis geändert werden.

Ich habe dann Paludis das erste Mal nochmal mit sich selber installieren lassen.

```
paludis -i paludis
```

Vorher sollte man noch schauen ob man Paludis mit irgendwelchen USE-Flags kompiliert.Dieses kann man natürlich auch schon bei der initialen Installation mit Emerge machen.

Momentan gibt es:

```
Use flags:         (bash-completion) (-contrarius) (-cran) (doc) (-glsa) (inquisitio) (pink) (-portage) (-qa) (ruby) (-vim-syntax) (-zsh-completion)
```

FiXme:Wer hat Erfahrungen mit dem USE-Flag portage?

--show-use-descriptions sagt:

```
portage:         Enable experimental support for Portage configuration formats
```

bash-completion,pink und ruby kann ich nur empfehlen.

Wie man bash-completion nutzt siehe hier:http://gentoo-wiki.com/TIP_Use_TAB-completion_when_emerging_packages

"pink" bringt etwas Farbe in die Ausgabe,Paludis ist sonst nur schwarz-weiß.

Mit "ruby" bekommt man die Ruby-bindings,es gibt da einige Scripts in Ruby welche das Paludisleben erleichtern.Diese befinden sich in /usr/share/paludis/ruby/demos.

Beispielsweise gibt es das Skript check_linkage.rb welches das gleiche macht wie revdep-rebuild.Unglücklicherweise installiert es alle Pakete welche als -bin verfügbar sind,wie openoffice-bin oder mozilla-thunderbird-bin,neu.

Dieses Verhalten hatte revdep-rebuild früher auch mal,wurde aber gefixt.Es gibt aber auch ein revdep-rebuild bzw. gentoolkit für Paludis (im paludis-extras Overlay).

4.1 Grundlegende Kommandos in Paludis

Hier werden die wichtigsten Kommandos für Paludis beschreiben.

Für eine komplette Referenz siehe man paludis oder http://paludis.pioto.org/man-paludis.html

Als Paketname verwende ich mal "vim".

Informationen:

```
paludis -q vim
```

-q , --query | Infos über ein Paket (Name,Kategorie,Repository,verfügbare Versionen,ob installiert,Homepage,Beschreibung,USE-Flags)

```
paludis -qD vim
```

-D , --show-deps | Abhängigkeiten anzeigen

```
paludis -qM vim
```

-M , --show-metadata  | Metadaten anzeigen.

```
paludis --info
```

Zeigt Informationen über das System an.Zeigt leider nicht alle Infos an die ein "emerge --info" listet,z.B. keine USE-Flags.

FiXmeIm IRC auf #paludis wurde das Problem mal angesprochen.ciaranm sagte dass Paludis diese Infos nicht auslesen kann da sie von portageq erzeugt werden.Hat jemand nähere Infos darüber?Ich verstehe da nur böhmische Dörfer.

Installieren,deinstallieren,syncen:

```
paludis -s
```

-s , --sync | Repositories syncen.Wenn hinter dem Befehl ein valides Repository angegeben ist so wird nur dieses gesynct.

```
paludis -i vim
```

-i , --install | Paket(e) installieren.Mit der Option -p wird nur gezeigt was getan werden würde.Mit -1 (oder "--preserve-world") wird das Paket nicht ins world-file geschrieben.

```
paludis -i world 
```

World updaten,am besten vorher mit -p schauen was Paludis gedenkt zu tun.

Änderungen an paketbezogenen USE-Flags in use.conf werden sofort übernommen,globale Änderungen dagegen erst mit

```
paludis -i --dl-reinstall if-use-changed world
```

Auch bei einem Profilwechsel (in /etc/paludis/repositories/gentoo.conf) ist dieser Befehl das Mittel der Wahl.

```
paludis -i --show-reasons summary world -p  ## oder Paketname
```

Zeigt an warum Pakete (de)installiert werden.

```
Paludis -u vim
```

-u , --uninstall | Deinstalliert ein Paket(e).

```
paludis --uninstall-unused
```

Nicht mehr benutzte Pakete deinstallieren.Wohl das Feature auf das viele gewartet haben.Soll lt. Maintainer wesentlich gründlicher und sorgfältiger arbeiten als "emerge --depclean".Trotzdem sollte man vorher mit -p schauen was Paludis löschen will.Man kann Abhängigkeiten auch bei jedem --uninstall entfernen:

```
paludis --uninstall --with-unused-dependencies vim
```

Paket(e) mit seinen nicht mehr benötigten Abhängigkeiten löschen.

```
paludis --uninstall --with-dependencies vim
```

Auch die Pakete deinstallieren welche von vim abhängen.

```
paludis --uninstall --all-versions vim
```

Alle Versionen von vim deinstallieren.Auch hier gilt immer:Lieber vorher mit -p schauen was passieren würde.

http://paludis.pioto.org/faq.html#removeunneeded Link

```
paludis -i --dl-reinstall always world
```

Äquivalent zu "emerge -e world".Es werden also ALLE Pakete neu kompiliert.Kann natürlich auch auf "system" beschränkt werden.

Die Liste könnte noch ellenlang weitergeführt werden.Ich lasse es lieber und verweise nochmal auf die Manpage.Wenn jemand noch eine Option findet die hier gelistet werden sollte,lasse er es mich wissen.

4.2 Probleme

Wer das erste mal ein world-update mit Paludis macht wird möglicherweise enttäuscht sein.Wahrscheinlich wird es einige Warnungen und/oder Fehlermeldungen geben.Dieses ist aber nicht auf Paludis zurückzuführen sondern auf Portage.Portage ist fehlertoleranter und hat so im  Laufe der Zeit viele Leichen zurückgelassen.Auch Fehler in Ebuilds wurden toleriert und haben so einen unsauberen Programmierstil gefördert.

Paludis ist da wesentlich strikter und bemängelt schon mal einen "missing whitespace" in einem Ebuild.

Bei mir waren es viele KDE -und QT-Pakete die u.a. wechselhaft immer einen Down -und Upgrade anforderten.Einige konnten deinstalliert werden,bei einigen war ein neukompilieren erforderlich.Mehr dazu siehe hier:http://paludis.pioto.org/faq.html#downgrades

Eine generelle Vorgehensweise kann da nicht gegeben werden.Ich kann aber versichern dass die Probleme verschwinden je länger NUR Paludis benutzt wird.Ein wechselseitiges Benutzen von Portage UND Paludis ist generell nicht empfehlenswert.Ein "emerge" ist bei mir auch schlecht möglich da die ganze Datenbank natürlich nicht mehr passt und er ewig braucht für "calculating dependencies".Wer irgendwann wieder zurück zu Portage möchte lese bitte hier:

http://paludis.pioto.org/migration.html#coward

-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Paludis kann im Moment (noch) keine Binärpakete händeln,wie "emerge --buildpkg/--usepkg.Dieses wird sich in naher Zukunft ändern.

 *http://ciaranm.org/show_post/95 wrote:*   

> 
> 
> Binaries. Specifically, a decent binary package format and proper binary package handling. This is nearly done, and will be in before 1.0. (I keep saying "next major release", but then end up doing a release for a different new feature instead -- releasing often is helpful for everyone.)

 

-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Ich hatte des öfteren das Problem dass ich nach einem Sync nur ein einzelnes Paket installieren wollte (z.B. mozilla-thunderbird-bin),in der Liste der zu aktualisierenden Pakete aber z.B. auch gcc drinstand,welchen ich aber später installieren wollte.

Ein "paludis -i mozilla-thunderbird-bin" wollte dann gcc immer mitinstallieren.Abhilfe schafft die zusätzliche Option "--dl-upgrade as-needed".Im englischen Paludis-Thread wurde mir damit geholfen und gleichzeitig gesagt dass dies "deplist"-Verhalten von Paludis von den Entwicklern so erwünscht ist.

Link zum Thread:https://forums.gentoo.org/viewtopic-p-4079535.html#4079535

FixMe Schön und gut,aber warum mozilla-thunderbird-bin unbedingt gcc mitinstallieren will leuchtet mir einfach nicht ein.Zumal dieses Verhalten nach erfolgtem Update verschwunden ist.Vielleicht kann mich mal jemand erleuchten.  :Wink: 

5. Tipps

Default Optionen

Viele Optionen von Paludis kennen keine Kurzform und sind ziemlich lang.Außerdem ist es sinnvoll einige immer anzuwenden.Auch die Ruby-Skripte können mit einer Kurzform versehen werden da sonst der ganze Pfad angegeben werden muß. 

Dafür kann man einen alias setzen oder export PALUDIS_OPTIONS="--options" benutzen.

All das kann man in der environment_bashrc setzen,NICHT in der paludis_bashrc.

Ich habe die Einträge in der /etc/profile und /etc/bash/bashrc vorgenommen und folgendes unten angefügt:

```

# Enable bash_completion

[[ -f /etc/profile.d/bash-completion ]] && source /etc/profile.d/bash-completion

# Paludis_options

#alias paludis="bash /usr/bin/_paludis_wrapper.bash"

export PALUDIS_OPTIONS="--show-reasons summary --dl-downgrade warning --dl-installed-deps-pre pre-or-post --dl-reinstall if-use-changed"

alias paludis--upgrade="paludis --dl-reinstall if-use-changed --dl-upgrade always --dl-installed-deps-pre pre-or-post --show-reasons summary -i"

alias check_linkage="ruby /usr/share/paludis/ruby/demos/check_linkage.rb"

alias clean_dist="ruby /usr/share/paludis/ruby/demos/find_unused_distfiles.rb"

```

http://paludis.pioto.org/faq.html#defaultoptions

Inquisitio

Wer Paludis mit dem USE-Flag "inquisitio" kompiliert bekommt den Suchclient inquisitio.Ich habe ihn nicht großartig getestet,da eix schneller arbeitet und die Paketsuche auf das gleiche damit heraus kommt.Hat aber einige Optionen wie Repository-Suche usw. aber meistens werden wohl Pakete gesucht.

Ranged Dependencies

Seit paludis-0.24.0 ist es möglich für Pakete bestimmte Versionsbereiche anzugeben.Die Syntax ist:

```
foo/bar[>=1&<2] or foo/bar[=1|=2]
```

Das ist z.B. nützlich für die vielen brachliegenden Kernelversionen:

```

paludis -u --all-versions 'sys-kernel/gentoo-sources[>=2.6.17-r4&<2.6.19-r1]' -p

Building unmerge list... done

These packages will be uninstalled:

* sys-kernel/gentoo-sources-2.6.17-r4::installed

* sys-kernel/gentoo-sources-2.6.17-r5::installed

* sys-kernel/gentoo-sources-2.6.17-r7::installed

* sys-kernel/gentoo-sources-2.6.17-r8::installed

* sys-kernel/gentoo-sources-2.6.18::installed

* sys-kernel/gentoo-sources-2.6.18-r1::installed

* sys-kernel/gentoo-sources-2.6.18-r2::installed

* sys-kernel/gentoo-sources-2.6.18-r3::installed

```

oder auch nur für bestimmte Pakete:

```

# paludis -u --all-versions 'sys-kernel/gentoo-sources[=2.6.17-r4|=2.6.18-r3]' -p

Building unmerge list... done

These packages will be uninstalled:

* sys-kernel/gentoo-sources-2.6.17-r4::installed

* sys-kernel/gentoo-sources-2.6.18-r3::installed

```

Zwei Sachen sind hierbei zu beachten.

1. Der --uninstall Option muß auch noch --all-versions mitgegeben werden,sonst meckert Paludis und empfiehlt diese.

2. Der Paketname muß gequotet werden (mit ' '),da die Shell es sonst falsch interpretiert:

```
 # paludis -u --all-versions sys-kernel/gentoo-sources[=2.6.17-r4|=2.6.18-r3] -p  ## Achtung:FALSCH,so nicht.

bash: =2.6.18-r3]: command not found

```

Paludis-extras

Paludis-extras ist ein Third-Party-Overlay und gehört NICHT zum offiziellen Paketmanager.

Dort sind Tools enthalten wie

-- gentoolkit (für Paludis)

-- etc-paludis (Ersatz für etc-update)

-- portage-utils

-- module-rebuild (für Paludis)

-- binutils-config (für Paludis)

-- eselect-news (um die Paludis-news zu lesen)

Liste ist nicht vollständig.Für nähere Informationen siehe die Projektseite:http://drzile.dyndns.org/index.php?page=paludis_scripts

Wer sich von Portage emanzipieren möchte kann/sollte sich das Overlay mal anschauen.

Eine ausführlichere Anleitung der Paludis-extras würde den Rahmen dieses ohnehin ziemlich lang geratenen HOWTOs sprengen.Zudem ist zu erwarten dass einige Funktionen zukünftig von Paludis nativ unterstützt werden.Es wäre daher sinnvoll wenn jemand dazu ein separates HOWTO schreiben würde.

6. Links

Zum Abschluß noch ein paar wichtige Links um das Thema zu vertiefen,einige wurden oben teilweise schon erwähnt.

http://paludis.pioto.org/ Die Projektseite und erste Anlaufstelle bei Fragen

http://gentoo-wiki.com/HOWTO_Use_Portage_alternative_-_Paludis Der Wiki-Artikel

http://drzile.dyndns.org/index.php?page=paludis_scripts Paludis-extras/Skripte

https://lists.berlios.de/pipermail/paludis-user/ Paludis-user mailing-list Archive

Paludis support thread - part 1

Paludis support thread - part 2

Paludis support thread - part 3 Läuft gerade aktuell.

http://wiki.linuxquestions.org/wiki/Paludis

irc.freenote.net #paludis  | IRC Channel für Paludis.Hat aber mehr Developerniveau.

irc.freenote.net #paludis-extras | IRC Channel für Paludis-extras Overlay

----------

## kernelOfTruth

"suscribes"   :Wink: 

Danke für dieses Howto, werd ich mir mal in Ruhe durchlesen, wenn ich etwas mehr Zeit hab   :Smile: 

----------

## nikaya

 *kernelOfTruth wrote:*   

> "suscribes"  
> 
> Danke für dieses Howto, werd ich mir mal in Ruhe durchlesen, wenn ich etwas mehr Zeit hab  

 

Aber schön auf Fehler achten.  :Wink: 

Im englischen Thread war gerade ein Post der mich auf einen Fehler in der bashrc aufmerksam machte.Hab's schon korrigiert.

----------

## jkoerner

Geiles Howto!

So was hätte ich gleich zu Beginn brauchen können: Das Ergebnis übertrifft meine Erwartungen bei Weitem!

Danke

----------

## Sourcecode

Ich hab Paludis schon länger im Auge und hab mir auch die HP durchgelesen.

Mir ist aber immernochnicht ganz klar wo wirklich Effektive Gute Vorteile für den Benutzer entstehen.

Ausser "etwas Performance", zumindest mich interessiert es auf meinem Privatsystem nicht ob der Code von Portage schlechter gemacht ist als der von Paludis oder ne ältere Sprache hat oder sonstwas.

Das Ding soll einfach schön Stabil und vernünftig laufen, da nehm ich auch dann gern Performanceeinbussung in kauf.

Kann mir also mal einer von euch "auf Paludis Schwörer" mal Effektiv auflisten wo die wirklichen Vorteile für den Endnutzer liegen der Portage einfach nur normal benutzt ohne da rumzucoden oder sonstwas? (ja ich weiss dazu steht auf der HP etwas, aber das ist mir zu allgemein und das behauptet jeder Coder von seinem Programm, mich interessieren Meinungen "vom Feld in der Praxis").

Mal abgesehen von etwas besserer Performance fällt mir da spontan nur ausführlichere Config Files auf (ist schonmal n gutes Argument, sind mir aber noch zu buggy).

Bitte einfach mal nüchterne Fakten und Erlebnissberichte dazu und kein "also meiner Meinung nach" also nich wieder so ein scheiss Glaubenskrieg wie z.b KDE vs. Gnome. (ich denk es is klar was ich will  :Wink:  hoffe ich zumindest, bin schon über nen Tag wach kann mich net mehr gut ausdrücken ^^)

----------

## jkoerner

Moin,

das ist hier die Dokumentation und ein denkbar schlechter Ort für derlei Fragen.

 Hier  wäre der Platz dafür.

[offtopic]Im übrigen erinnert mich das an den Glaubenskrieg in Debian ob jetzt apt-get, aptitude oder synaptic das bessere System baut...

Weil ich selbst ein wenig C++ beherrsche ist paludis meine Wahl, Performance ist mir recht Wurscht. Außerdem kenne ich

zusammengefrickelte Anwendungen aus Skriptsprachen(in portage hab' ich lieber nicht geguckt) und bin diverse male beim Debuggen ausgeflippt.

 *Quote:*   

> Das Ding soll einfach schön stabil und vernünftig laufen

 

und genau das ist der Punkt der mir die Wahl erleichtert hat.[/offtopic]

Falls das hier einer der Admins liest bitte ich um Verschiebung nach s.o.

----------

## think4urs11

Ich muß jkoerner beipflichten, dieser Thread hier sollte ausschließlich für direkte Bezüge zu Paludis genutzt werden.

Also Dinge wie

- wie konfiguriere ich das

- wie mache ich 'X'

- zu beachtende Unterschiede zwischen paludis und emerge

- welche Tools laufen ggf. nicht mehr (equery, genlop, was weiß ich) und/oder wie behebe ich das

- Beschreibung von Killerfeatures, etc.

Für die generellen 'Glaubenskriege' bitte das Diskussionsforum nutzen.

----------

## sirro

Erstmal danke für das Howto, habe es zum Anlass genommen nochmal einen Versuch zu starten.  :Smile: 

Meine Frage ist: kann ich das build-dir auch von /var/tmp/paludis woanders hin verlegen? Mein /var/tmp ist traditionell eine Ramdisk und damit zu klein für größere Pakete.

mount -o bind ist natuerlich eine Loesung, aber keine schoene.

Mein Killerfeature gegenüber Portage: Besseres Handling von Overlays, z.B. mit Prioritäten oder der möglichkeit ~x86 nur für ein paket aus einem Overlay zu definieren. Wenn ich z.B. foo ~x86 nutze, und ein bar-experimental-overlay drin habe, dann kann ich einfach sagen, dass ich foo nur aus ::gentoo will und nicht aus bar-experimental. Mit portage hab ich sowas nicht hinbekommen.

Verständlich?  :Smile: 

----------

## nikaya

 *sirro wrote:*   

> 
> 
> Meine Frage ist: kann ich das build-dir auch von /var/tmp/paludis woanders hin verlegen? Mein /var/tmp ist traditionell eine Ramdisk und damit zu klein für größere Pakete.
> 
> mount -o bind ist natuerlich eine Loesung, aber keine schoene.
> ...

 

Ja,ist möglich lt. Projektseite:

http://paludis.pioto.org/configuration.html Abschnitt:The repositories/ Files

 *http://paludis.pioto.org/configuration.html wrote:*   

> 
> 
> The following keys are available for format = ebuild:
> 
> [...]
> ...

 

Ich werde es gleich mal ins HOWTO aufnehmen.

----------

## sirro

Falls sich noch jemand fragt wie man wget Optionen geben kann, hier die Lösung. Ich hab da einige Minuten suchen muessen, darum poste ich das einfach mal (was man bei portage in FETCHCOMMAND machte)

```
EXTRA_WGET='--limit-rate=70k'
```

Wer generell wissen will wie die fetcher funktionieren kann sie sich in /usr/libexec/paludis/fetchers/ angucken.

----------

## Phlogiston

Und warum finde ich diesen super Guide erst jetzt? (nachdem ich mich Tage mühsam durch die FAQ's geschlagen habe)   :Cool: 

----------

## nikaya

Kleines Update.Folgende Ergänzungen hinzugefügt da die meisten,die es schon gelesen haben,sowas wohl nicht mitbekommen:  :Wink: 

Sektion Probleme:

 *Quote:*   

> Ich hatte des öfteren das Problem dass ich nach einem Sync nur ein einzelnes Paket installieren wollte (z.B. mozilla-thunderbird-bin),in der Liste der zu aktualisierenden Pakete aber z.B. auch gcc drinstand,welchen ich aber später installieren wollte.
> 
> Ein "paludis -i mozilla-thunderbird-bin" wollte dann gcc immer mitinstallieren.Abhilfe schafft die zusätzliche Option "--dl-upgrade as-needed".Im englischen Paludis-Thread wurde mir damit geholfen und gleichzeitig gesagt dass dies "deplist"-Verhalten von Paludis von den Entwicklern so erwünscht ist.
> 
> Link zum Thread:https://forums.gentoo.org/viewtopic-p-4079535.html#4079535
> ...

 

Sektion Tipps:

 *Quote:*   

> Ranged Dependencies
> 
> Seit paludis-0.24.0 ist es möglich für Pakete bestimmte Versionsbereiche anzugeben.Die Syntax ist:
> 
> ```
> ...

 

----------

## sirro

Apropos --dl-upgrade as-needed

Ich finde diese Option ja praktisch um bei vielen Paketen erneutes kompilieren zu sparen. Allerdings gibt es auch Pakete, bei denen ich auf dem neusten Stand sein will (einfache Regel: world-file), gibt es eine Möglichkeit so ein Verhalten zu erzeugen?

----------

## nikaya

 *sirro wrote:*   

>  Allerdings gibt es auch Pakete, bei denen ich auf dem neusten Stand sein will (einfache Regel: world-file), gibt es eine Möglichkeit so ein Verhalten zu erzeugen?

 

Konkreter?

Ich verstehe die Frage nicht so richtig.Ist doch eigentlich das Standardverhalten dass Pakete in der neuesten Version installiert werden.

----------

## sirro

Ne, das will ich ja gerade nicht.

Beispiel: Bei libfoo ist es mir egal ob es die allerneuste Version ist, ich will nur updaten wenn es wirklich nicht anders geht (sprich ein installiertes paket hat eine Dep auf eine Version > meine installierte).

Bei Paketen wie z.B. mplayer will ich dagegen immer die neuste Version egal ob es ein anderes Paket braucht oder nicht.

Bei "as-needed" werden beide Pakete nicht aktualisiert, bei "always" werden beide aktualisiert. Ich will quasi ein "as-needed-or-world"  :Smile: 

----------

## nikaya

Aja,jetzt habe ich verstanden.

Wüßte aber so spontan auch nicht ob es möglich ist.Geht denn sowas mit Portage?

----------

## sirro

 *john.doe wrote:*   

> Geht denn sowas mit Portage?

 

AFAIK nicht. Ist also kein Nachteil, wäre aber IMHO ein schönes Feature.

----------

## nikaya

 *sirro wrote:*   

>  wäre aber IMHO ein schönes Feature.

 

Kannst ja mal im IRC auf #paludis nachfragen (und hier berichten).

Meistens bekommt man da aber ein "RTFM","then send a patch" oder "you don't know what you're talking about".  :Wink: 

----------

## legine

 *Quote:*   

> Meistens bekommt man da aber ein "RTFM","then send a patch" oder "you don't know what you're talking about". 

 

Hab auch keine Ahnung wovon ich rede.   :Rolling Eyes: 

Also ich hätte ne idee wie man das gewünschte machen kann:

 *Quote:*   

> Beispiel: Bei libfoo ist es mir egal ob es die allerneuste Version ist, ich will nur updaten wenn es wirklich nicht anders geht (sprich ein installiertes paket hat eine Dep auf eine Version > meine installierte).
> 
> Bei Paketen wie z.B. mplayer will ich dagegen immer die neuste Version egal ob es ein anderes Paket braucht oder nicht. 

 

Definiere ein SET mit allen dependencies die auf den neusten stand sein sollen (z.B.: aktueller)

Dann schreibt man sich ein skript welches paludis 2 mal ausführt. z.B.:

```

paludis -ip everything --dl-upgrade as-needed

paludis -ip aktueller

```

Naja klar das das skript hier leicht sinnlos ist aber ich hoffe die Idee ist klar...  :Razz: 

Pflegen möchte ich sowas aber nicht  :Wink: 

----------

## sirro

Danke für den Tipp. Aber das läuft ja bei mir auf ein Set raus, dass komplett == world ist.

Bei einem kleinem Test hat er z.B. auch sci-libs/fftw updaten wollen obwohl es nicht im Set war und obwohl octave keine Abhängigkeit auf die spezielle Version hat. (mit as-needed kommt nichts)

--deep ist ja Standard bei Paludis.

 *legine wrote:*   

> Pflegen möchte ich sowas aber nicht 

 

Kann man ja auch automatisch erstellen, .bash in den sets geht ja.

So wichtig ist es allerdings auch nicht. Abgesehen von ein paar sci-libs sind Abhängigkeiten ja meistens deutlich kleiner als die Pakete, die man eh updaten will  :Smile: 

----------

## legine

Das liegt wohl daran das sich die sets immer auf Abhängigkeiten beziehen und nicht auf Pakete!

Du musst dann wohl oder übel Deep Ausschalten oder so. Keine Ahnung.

Die bash kann ja nicht wissen welche Pakete du auf den Stand halten willst und welche nicht. Dazu kommt das eventuell das eine das andere gerne auch upgedatet haben möchte. Da wir trotz allen bonuz von paludis immer noch die eine oder andere schwäche von Portage mitnutzen ist so eine Mathematik unglaublich schwer zu implementieren. Zumindest soweit ich dies sehe. Was ich sagen will ist trotz aller helferli die man sich schreiben kann, bleibt die Kooridination dir selbst überlassen, und das wird kein Spaß.

----------

## sirro

 *legine wrote:*   

> Du musst dann wohl oder übel Deep Ausschalten oder so.

 

Gibt es die Möglichkeit? Ich hab nichts gefunden.

 *Quote:*   

> Die bash kann ja nicht wissen welche Pakete du auf den Stand halten willst und welche nicht..

 

Ich wollte ja "world" übernehmen. Das kann man einfach mit einem bash-skript loesen.

Aber wie gesagt: dann ist das set auch identisch mit "world", also keine Hilfe  :Smile: 

----------

## super-lupo

Also erstmal großen Dank für dieses wirklich excellente HowTo!

Nach nunmehr erfolgreicher Migration frage ich mich ob es auch eine Möglichkeit gibt den "Fetchcommand" für 

Paludis zu definieren.

Für Portage habe ich in der make.conf folgendes eingetragen:

```
# Default fetch command (5 tries, passive ftp for firewall compatibility)

FETCHCOMMAND="/usr/bin/axel -a -o /\${DISTDIR}/\${FILE} \${URI}"

RESUMECOMMAND="/usr/bin/axel -a -o /\${DISTDIR}/\${FILE} \${URI}"
```

Funktioniert das auch mit Paludis und wenn ja, wie?

Gruß,

Lupo

----------

## nikaya

 *super-lupo wrote:*   

> 
> 
> Nach nunmehr erfolgreicher Migration frage ich mich ob es auch eine Möglichkeit gibt den "Fetchcommand" für 
> 
> Paludis zu definieren.
> ...

 

https://forums.gentoo.org/viewtopic-t-557649-start-75.html

 *Quote:*   

> Try setting EXTRA_WGET in /etc/paludis/bashrc.

 

Kannst ja mal versuchen ob es geht und das Ergebnis posten.Ich könnte es dann bei Erfolg ins HOWTO aufnehmen.

----------

## super-lupo

Nee, 

das funktioniert nicht. Was aber auch nicht verwunderlich ist. Mit "EXTRA_WGET" gebe ich ja auch nur weitere Parameter an wget weiter. 

Ersetze damit aber nicht wget als fetchcommand. Schade eigentlich.

Habe aber diese Frage auch mal im englischen Support Thread gestellt. Mal schauen was dabei rauskommt.

Gruß,

Lupo

----------

## sirro

Weiss nicht ob du das gelesen hast:

 *sirro wrote:*   

> Wer generell wissen will wie die fetcher funktionieren kann sie sich in /usr/libexec/paludis/fetchers/ angucken.

 

Da siehst du wie ein fetcher geschrieben wird und kannst dir evtl. selber einen schreiben. Da im fetcher einige Optionen von wget hart kodiert sind ist es sicher nicht möglich nur die Variable WGET_WRAPPER umzubiegen.

----------

## monade

Ein kleiner Tip noch (auch wenn implizit schon im HOW TO enthalten): installiert man portage-utils aus dem paludis-extra-Overlay, dann bekommt man u.a. ein modifiziertes qlop, welches /var/log/paludis.log statt /var/log/emerge.log lesen kann. Hilfreich für Leute wie mich, die die unter Portage liebgewonnene Funktion von genlop bzw. qlop nicht missen wollen  :Smile: .

----------

## tekknokrat

Fügst du vielleicht mal bitte bei Gelegenheit mit ein wie man die profiles also hardened,desktop verwaltet. 

Ich hab mir im forum einen Wolf gesucht und erst durch Zufall gesehen dass es in den repositories versteckt ist. 

Durch das migrations script wird ja der alte Pfad migriert aber bei einem profile change steht man dumm da.

Also im master repository /etc/paludis/repositories/gentoo.conf den profile pfad

editieren:

...

profiles = ${ROOT}/usr/portage/profiles/hardened/x86/2.6/

...

dies darf wohl auch per repo seperat gesetzt sein   :Question: 

----------

## nikaya

 *tekknokrat wrote:*   

> Fügst du vielleicht mal bitte bei Gelegenheit mit ein wie man die profiles also hardened,desktop verwaltet. 

 

Steht doch drin,nebst Beispielkonfiguration.  :Wink: 

 *Paludis_HOWTO wrote:*   

> 
> 
> 3.8.1 /etc/paludis/repositories/gentoo.conf
> 
> ```
> ...

 

----------

## tekknokrat

 *nikaya wrote:*   

>  *tekknokrat wrote:*   Fügst du vielleicht mal bitte bei Gelegenheit mit ein wie man die profiles also hardened,desktop verwaltet.  
> 
> Steht doch drin,nebst Beispielkonfiguration. 
> 
>  *Paludis_HOWTO wrote:*   
> ...

 

Recht hast   :Very Happy: 

Aber vielleicht gings nur mir so, doch ich habe bis dato nie den Zusammenhang zwischen einem repo und dem system profile gesehen   :Rolling Eyes: 

Deswegen bin ich auch erst sehr spät auf diese Datei gestoßen.

----------

## nikaya

Falls es mit dem Wiki vom Gentoo e.V. klappt werde ich (oder ein anderer   :Wink: ) es dort mal irgendwann veröffentlichen.Dann kann jeder daran rummachen.  :Wink: 

----------

## schachti

 *nikaya wrote:*   

> 
> 
> 3.3 /etc/paludis/licences.conf
> 
> 

 

Hier muss es heißen /etc/paludis/licenses.conf.

----------

## nikaya

 *schachti wrote:*   

>  *nikaya wrote:*   
> 
> 3.3 /etc/paludis/licences.conf
> 
>  
> ...

 

Danke,gefixt.

----------

## sirro

Und beim ccache nicht vergessen, dass "paludisbuild" auch Schreibrechte in dem Verzeichnis braucht. Das erspart einem einige (Fl|S)ucherei  :Embarassed: 

----------

## nikaya

Alle Links auf http://ciaranm.org/ entfernt,da die Seite seit längerem nicht mehr erreichbar ist.

----------

## andi456

Tach zusammen,

kurze Anmerkung. Das Set "world" ist jetzt eher identisch mit portages "system", stattdessen gibt es das Set "everything". M. a. W. das Pendant zu emerge -pvuD world heißt jetzt paludis -pi everything! 

Aufgefallen ist mir dies ab Version 0.26.0_alpha9.

Gruß AndreasLast edited by andi456 on Mon Feb 25, 2008 5:42 pm; edited 1 time in total

----------

## sirro

Sicher?

Everything gibt es schon lange und bisher war es so:

system: wie portage

world: alles im world-file

everything: wirklich alles installierte

Nicht alles was installiert ist, ist auch in world. Wäre also blöd wenn das geändert wäre, bei mir (aktuelle alpha) ist es immer noch das alte verhalten.

Portage hat doch das gleiche Verhalten nur ohne everything oder habe ich das falsch im Kopf?

----------

## andi456

Ok, mag sein, aber dann müssen bei mir 'ne Menge Sachen aus dem worldfile 'rausgefallen sein, die vorher drin waren wie z. B. alle kde Pakete.

----------

## sirro

Guck doch mal nach: /var/lib/portage/world

Alles was da drin ist sollte eigentlich mit "world" behandelt werden.

----------

## andi456

Hmm, komisch world hat sich offenbar nach dem letzten update von paludis verkleinert. Daraufhin hab' ich regenworld ausgeführt und siehe die Datei hatte plötzlich doppelt soviele Zeilen. 

Demnach ist world für paludis also tatsächlich gleich world für portage, muss also das Gegenteil behaupten!

----------

## Louisdor

Hi @ all, die Paludis nutzen, mal was anderes ...

neuerdings bekomme ich manchmal sowas hier, wenn ich ein Paket installieren (aktuell z.B. paludis ip dev-utils/git) will:

```
  ... When generating metadata for ID 'sys-kernel/gentoo-sources-2.6.16-r13::gentoo':

  ... When running ebuild command to generate metadata for 'sys-kernel/gentoo-sources-[b]2.6.16-r13[/b]::gentoo':

  ... When running command 'sandbox /usr/libexec/paludis/ebuild.bash '/var/paludis/repositories/gentoo/sys-kernel/gentoo-sources/gentoo-sources-[b]2.6.16-r13[/b].ebuild' metadata':
```

Das geht paludis für jeden Kernel durch, den ich mal installiert hatte, auch wenn die schon lange wieder deinstalliert sind.

```
amd64x2 ~ # eselect kernel list

Available kernel symlink targets:

  [1]   linux-2.6.23-gentoo-r5

  [2]   linux-2.6.24

  [3]   linux-2.6.24-gentoo

  [4]   linux-2.6.24-gentoo-r2 *

  [5]   linux-2.6.25-rc1

  [6]   linux-2.6.25-rc2

  [7]   linux-2.6.25-rc3

amd64x2 ~ #
```

Aktionen wie:

```
amd64x2 ~ # paludis --regenerate-installed-cache

Regenerating cache for installed-virtuals...

Regenerating cache for installed...

amd64x2 ~ #
```

und

```
amd64x2 ~ # paludis --regenerate-installable-cache

Regenerating cache for virtuals...

Regenerating cache for gentoo...

Regenerating cache for gentoo-de...

Regenerating cache for paludis-extras...

Regenerating cache for pioto-overlay...

Regenerating cache for sabayon...

Regenerating cache for sunrise...

Regenerating cache for toolchain...

Regenerating cache for vmware...

amd64x2 ~ #

```

haben leider auch nicht geholfen. Muss ich da bei Paludis noch irgendwo was "einstellen"? Vielleicht in einem von den Hooks, die ich installiert habe?

Merci & Ciao,

aleX!

----------

## jkoerner

Moin,

```
ls -a /usr/src/
```

alles dort enthaltenen ist potenzieller Kandidat. Mehr will dir der paludis-Hinweis nicht sagen. Wenn dort allerdings nur dein verwendeter Kernel liegt weiß ich auch nicht woher die Liste stammen sollte.

Eine weitere Möglichkeit besteht mit

```
paludis -q linux-<Version wie in der Liste aufgeführt>
```

 Das funktioniert auch mit inquisitio, aber ich benutze den Befehl um mir installierte Versionen anzeigen zu lassen.

----------

## Louisdor

 *jkoerner wrote:*   

> Moin,
> 
> ```
> ls -a /usr/src/
> ```
> ...

 

```
alex@amd64x2 ~ $ ls -al /usr/src/

insgesamt 44

drwxr-xr-x 12 root root 4096  1. Mär 07:07 .

drwxr-xr-x 21 root root 4096 28. Feb 17:57 ..

-rw-r--r--  1 root root    0  9. Feb 2006  .keep

lrwxrwxrwx  1 root root   22 27. Feb 19:48 linux -> linux-2.6.24-gentoo-r3

drwxr-xr-x 20 root root 4096 31. Dez 12:04 linux-2.6.23-gentoo-r5

drwxr-xr-x 20 root root 4096 30. Jan 13:13 linux-2.6.24

drwxr-xr-x 21 root root 4096 13. Feb 16:17 linux-2.6.24-gentoo

drwxr-xr-x 21 root root 4096 25. Feb 00:21 linux-2.6.24-gentoo-r2

drwxr-xr-x 21 root root 4096  1. Mär 16:51 linux-2.6.24-gentoo-r3

drwxr-xr-x 21 root root 4096 13. Feb 13:09 linux-2.6.25-rc1

drwxr-xr-x 21 root root 4096 21. Feb 11:57 linux-2.6.25-rc2

drwxr-xr-x 21 root root 4096 26. Feb 21:04 linux-2.6.25-rc3

drwxr-xr-x  2 root root 4096 17. Apr 2007  patches

alex@amd64x2 ~ $
```

Da ist kein Kernel mit Version 2.6.16-r13, wie man sieht. Ich habe auch alle alten, die ich weg haben wollte per --uninstall deinstalliert, nicht einfach nur gelöscht.

Merci & Ciao,

aleX!

----------

## SinoTech

 *koerner wrote:*   

> 
> 
> Moin,
> 
> ```
> ...

 

Ich glaube nicht das paludis in dem Verzeichniss nachschaut welche Kernel-versionen installiert sind. Der Inhalt sollte also eigentlich egal sein.

 *Louisdor wrote:*   

> 
> 
> Hi @ all, die Paludis nutzen, mal was anderes ...
> 
> neuerdings bekomme ich manchmal sowas hier, wenn ich ein Paket installieren (aktuell z.B. paludis ip dev-utils/git) will:
> ...

 

Das hatte ich auch gerade. Ein "paludis --regenerate-installable-cache && paludis --regenerate-installed-cache" hat geholfen  :Smile: .

Cheers,

Sino

----------

