List of useful sets for installing/upgrading.
qt6
kf6
plasma6
kde-applications
# Qt5/Plasma5
qt5
plasma
kde-frameworks
nano /etc/paludis/options.conf
# i686-pc-linux-gnu cross
dev-util/pkgconf targets: i686-pc-linux-gnu
sys-devel/binutils targets: i686-pc-linux-gnu
sys-devel/gcc targets: i686-pc-linux-gnu
app-admin/eclectic-gcc targets: i686-pc-linux-gnu
# additionally for mesa
app-admin/eclectic-llvm targets: i686-pc-linux-gnu
This is required temporarily to get you started and will be reverted later on.
nano /etc/paludis/options.conf
sys-devel/gcc -threads
# cave resolve pkgconf binutils gcc eclectic-gcc -x1
(additional for mesa)
# cave resolve eclectic-llvm -x1
Create a copy of your paludis environment.
# cp -a /etc/paludis /etc/paludis-cross
In the cross environment you can remove any repository .conf not needed, required are ::arbor, ::desktop, ::gnome, ::media and ::x11 (::hardware for nvidia-drivers).
/etc/paludis-cross/repositories/i686-pc-linux-gnu.conf
format = exndbam
location = ${root}/var/db/paludis/repositories/cross-installed/i686-pc-linux-gnu
name = i686-pc-linux-gnu
split_debug_location = /usr/i686-pc-linux-gnu/lib/debug
tool_prefix = i686-pc-linux-gnu-
cross_compile_host = i686-pc-linux-gnu
mkdir -p /var/db/paludis/repositories/cross-installed/i686-pc-linux-gnu
/etc/paludis-cross/bashrc
CHOST="x86_64-pc-linux-gnu"
x86_64_pc_linux_gnu_CFLAGS="-pipe -O2 -march=native"
i686_pc_linux_gnu_CFLAGS="-pipe -O2 -march=native"
/etc/paludis-cross/platforms.conf
*/* x86 ~x86
/etc/paludis-cross/options.conf
*/* targets: i686-pc-linux-gnu
*/* build_options: jobs=13 -recommended_tests -expensive_tests symbols=strip
*/* LINGUAS: -* de
*/* VIDEO_DRIVERS: -*
*/* INPUT_DRIVERS: -*
*/* X86_CPU_FEATURES: -* avx mmx sse sse2 sse3 ssse3 sse4.1 sse4.2
# Steam minimal dependencies setup
*/* -bash-completion
*/* parts: -configuration -documentation
dev-libs/libglvnd X
/etc/paludis-cross/suggestions.conf
*/* -*/*
# cave -E paludis:cross resolve --make cross-compile sys-kernel/linux-headers -x1
# cave -E paludis:cross resolve --make cross-compile --no-dependencies-from sys-libs/glibc sys-libs/glibc -x1
# /usr/i686-pc-linux-gnu/bin/localedef --prefix=/ -i de_DE -f UTF-8 de_DE.UTF-8
# cave -E paludis:cross resolve --make cross-compile libatomic libgcc libstdc++ -x1
Remove the previously set sys-devel/gcc -threads from /etc/paludis/options.conf and rebuild gcc:
# cave resolve gcc --no-follow-installed-dependencies -x1
# cave -E paludis:cross resolve --make cross-compile libatomic libgcc libstdc++ -x1
Prevent installing unneeded Python cross dependencies:
# cave -E paludis:cross resolve --make cross-compile xcb-proto -x1 -0 '*/*'
Install the 32bit libraries of nvidia-drivers.
/etc/paludis-cross/options.conf
x11-drivers/nvidia-drivers -tools
# cave -E paludis:cross resolve --make cross-compile nvidia-drivers -x1
/etc/paludis-cross/options.conf
x11-dri/libdrm VIDEO_DRIVERS: radeon
x11-dri/mesa va vdpau VIDEO_DRIVERS: gallium-swrast radeon PROVIDERS: systemd
x11-libs/libva wayland
x11-apps/libva-utils X wayland
(mesa prequisites)
# cave -E paludis:cross resolve --make cross-compile llvm -0 '*/*' -x1
# cave -E paludis:cross resolve --make cross-compile zlib -x1
# cave -E paludis:cross resolve --make cross-compile expat -x1
# cave -E paludis:cross resolve --make cross-compile libdrm -x1
# cave -E paludis:cross resolve --make cross-compile libffi -0 '*/*' -x1
# cave -E paludis:cross resolve --make cross-compile icu -0 '*/*' -x1
# cave -E paludis:cross resolve --make cross-compile dev-libs/libxml2 -0 '*/*' -x1
# cave -E paludis:cross resolve --make cross-compile wayland -0 '*/*' -x1
# cave -E paludis:cross resolve --make cross-compile libXfixes -x1
# cave -E paludis:cross resolve --make cross-compile libxshmfence -x1
# cave -E paludis:cross resolve --make cross-compile libXxf86vm -x1
(libXrandr pulls in libXrender)
# cave -E paludis:cross resolve --make cross-compile libXrandr -x1
# cave -E paludis:cross resolve --make cross-compile libvdpau -x1
# cave -E paludis:cross resolve --make cross-compile libva -0 '*/*' -x1
# cave -E paludis:cross resolve --make cross-compile libxcrypt -x1 -0 '*/*'
(mesa fails to build without elfutils - pulls in bzip and xz)
# cave -E paludis:cross resolve --make cross-compile elfutils -x1
(mesa)
# cave -E paludis:cross resolve --make cross-compile mesa -0 '*/*' -x1
dev-libs/libglvnd
dev-libs/libpthread-stubs
dev-libs/libxcrypt
sys-kernel/linux-headers
sys-libs/glibc
sys-libs/libatomic
sys-libs/libgcc
sys-libs/libstdc++
x11-dri/libdrm
x11-libs/libvdpau
x11-libs/libX11
x11-libs/libXau
x11-libs/libXdmcp
x11-libs/libXext
x11-libs/libxcb
x11-libs/xtrans
x11-proto/xcb-proto
x11-proto/xorgproto
x11-drivers/nvidia-drivers
app-arch/bzip2
app-arch/xz
dev-lang/llvm
dev-libs/expat
dev-libs/icu
dev-libs/libffi
dev-libs/libxml2
dev-util/elfutils
sys-libs/wayland
sys-libs/zlib
x11-dri/mesa
x11-libs/libXfixes
x11-libs/libXrandr
x11-libs/libXrender
x11-libs/libXxf86vm
x11-libs/libva
x11-libs/libxshmfence
In case you e.g. upgraded GCC and need to uninstall the old version you can do this by:
# cave -E paludis:cross uninstall -4 i686-pc-linux-gnu libgcc:12 libatomic:12 libstdc++:12 --uninstalls-may-break system -x