Paludis
From Q
Paludis on Exherbo
# cave resolve repository/x11 -x
Paludis on Exherbo (Developer configuration)
Paludis on Gentoo
Installation
File: /etc/portage/package.use
sys-apps/paludis visibility xmlConfiguration (Portage compatible - Gentoo offical tree)
With this configuration you are able to still use portage, although paludis will be sloooow.
# mkdir -p /etc/paludis/repositories
File: /etc/paludis/keywords.conf
*/* amd64 ~amd64
File: /etc/paludis/licenses.conf
*/* *
File: /etc/paludis/use.conf
*/* BUILD_OPTIONS: -recomended_tests -optional_tests -split strip */* -gtk -arts -gnome -ldap -kerberos -acl -esd kde alsa xcb */* LINGUAS: de */* INPUT_DEVICES: -* evdev */* VIDEO_CARDS: -* nvidia sys-apps/paludis visibility xml dev-util/git -perl
File: /etc/paludis/bashrc
CFLAGS="-O2 -march=native -pipe -fomit-frame-pointer"
CXXFLAGS="${CFLAGS}"
CHOST="x86_64-pc-linux-gnu"
MAKEOPTS="-j5"
File: /etc/paludis/general.conf
world = /var/lib/portage/world
File: /etc/paludis/repositories/installed.conf
location = /var/db/pkg/ format = vdb names_cache = /var/empty provides_cache = /var/empty
File: /etc/paludis/repositories/gentoo.conf
location = /usr/portage
sync = rsync://rsync.europe.gentoo.org/gentoo-portage/
profiles = ${location}/profiles/default/linux/amd64/10.0/desktop
format = e
names_cache = /var/empty
distdir = /usr/portage/distfiles
# cat /etc/portage/package.use >> /etc/paludis/use.conf
# cp /etc/portage/package.unmask /etc/paludis/package_unmask.conf
# cp /etc/portage/package.mask /etc/paludis/package_mask.conf
# cave sync
# cave resolve --continue-on-failure if-satisfied installed-packages --execute
Configuration (Portage incompatible - Gentoo offical tree)
Now that we have played around a little with Paludis we really don't need Portage compatibility anymore, so lets adjust our configuration to speed up Paludis.
# mkdir -p /var/cache/paludis/distfiles
# mkdir -p /var/cache/paludis/metadata
# mkdir -p /var/cache/paludis/names
# mkdir -p /var/cache/paludis/provides
# chown -R paludisbuild:paludisbuild /var/cache/paludis
# chown -R paludisbuild:paludisbuild /var/tmp/paludis
# chmod g+w /var/cache/paludis/distfiles
# chmod g+w /var/tmp/paludis
File: //etc/paludis/repository_defaults.conf
provides_cache = ${root}/var/cache/paludis/provides
names_cache = ${root}/var/cache/paludis/names
write_cache = ${root}/var/cache/paludis/metadata
distdir = ${root}/var/cache/paludis/distfiles
File: /etc/paludis/repositories/gentoo.conf
location = /usr/portage
sync = rsync://rsync.europe.gentoo.org/gentoo-portage/
profiles = ${location}/profiles/default/linux/amd64/10.0/desktop
format = e
# cave sync
# cave resolve --continue-on-failure if-satisfied installed-packages --execute
Configuration (Portage incompatible - Automatic repository/overlay configuration)
File: /etc/paludis/repositories/layman.conf
format = unavailable name = layman location = /var/db/paludis/repositories/layman sync = tar+http://git.exherbo.org/layman_repositories.tar.bz2 importance = -100
File: /etc/paludis/repositories/repository.conf
format = repository
config_filename = /etc/paludis/repositories/%{repository_template_name}.conf
config_template = /etc/paludis/repository.template
File: /etc/paludis/repository.template
format = %{repository_template_format}
location = /var/db/paludis/repositories/%{repository_template_name}
sync = %{repository_template_sync}
master_repository = gentoo
# cave sync
# cave show -t package repository/*
# cave resolve repository/<repository_name> -x
Portage vs. Paludis cave commands
Note: As of Paludis 0.58.0: The ‘paludis’ client is now deprecated in favour of ‘cave’.
Sync all repositories
Portage short:# -
Portage long: # emerge --sync
Paludis cave short: # -
Paludis cave long: # cave sync
Sync specific repository/overlay
Portage short:# -
Portage long: # -
Paludis cave short: # -
Paludis cave long: # cave sync <repository>
World update
Portage short:# emerge -uDN --with-bdeps=y @world
Portage long: # emerge --update --deep --newuse --with-bdeps=y @world
Paludis cave short: # cave resolve -x installed-packages -c
Paludis cave long: # cave resolve --execute installed-packages --complete
World update (unsafe) (continue on failure, allow package downgrades and removals)
Warning: Be sure to run ‘cave fix-linkage‘ afterwards.
Portage short: # emerge -uDN --with-bdeps=y --keep-going=y @world
Portage long: # emerge --update --deep --newuse --with-bdeps=y --keep-going=y @world
Paludis cave short: # cave resolve -x -U '*/*' -d '*/*' -P '*/*' -Cs installed-packages
Paludis cave long: # cave resolve --execute --permit-uninstall '*/*' --permit-downgrade '*/*' --purge '*/*' --continue-on-failure if-satisfied installed-packages
Install package
Portage short:# emerge <package>
Portage long: # -
Paludis cave short: # cave resolve -x <package>
Paludis cave long: # cave resolve --execute <package>
Install package without adding it to the world file
Portage short:# emerge -1 <package>
Portage long: # emerge --oneshot <package>
Paludis cave short: # cave resolve -x1 <package>
Paludis cave long: # cave resolve --execute --preserve-world <package>
Update scm packages (daily)
Portage short:# -
Portage long: # -
Paludis cave short: # cave resolve -x1 -Rd -Cs installed-packages
Paludis cave long: # cave resolve --execute --preserve-world --reinstall-scm daily --continue-on-failure if-satisfied installed-packages
Which package ownes <file>
Portage short:# -
Portage long: # equery belongs <file>
Paludis cave short: # -
Paludis cave long: # cave print-owners <file>
Search for broken packages and rebuild them
Portage short:# revdep-rebuild
Portage long: # -
Paludis cave short: # cave fix-linkage -x
Paludis cave long: # cave fix-linkage --execute
Remove unnecessary/leftover packages
Portage short:# emerge -c
Portage long: # emerge --depclean
Paludis cave short: # cave purge -x
Paludis cave long: # cave purge --execute