KF6 can be installed in /usr
or
/opt/kf6
. The BLFS editors recommend
the latter in the BLFS environment.
One option is to install KDE
Frameworks into the /usr
hierarchy. This creates a simpler setup but makes it more difficult
to try multiple versions of KDE
Frameworks.
export KF6_PREFIX=/usr
It is a good idea to add the following variables to your system or personal profiles:
cat >> /etc/profile.d/qt6.sh << "EOF"# Begin kf6 extension for /etc/profile.d/qt6.sh pathappend /usr/lib/plugins QT_PLUGIN_PATH pathappend $QT6DIR/lib/plugins QT_PLUGIN_PATH pathappend /usr/lib/qt6/qml QML2_IMPORT_PATH pathappend $QT6DIR/lib/qml QML2_IMPORT_PATH # End extension for /etc/profile.d/qt6.sh
EOF cat > /etc/profile.d/kf6.sh << "EOF"# Begin /etc/profile.d/kf6.sh export KF6_PREFIX=/usr # End /etc/profile.d/kf6.sh
EOF
If qt6 was installed in
/usr
, the $QT6DIR/lib/
portions of the above paths may
need to be changed to $QT6DIR/lib/qt6/
.
Additionally, if Sudo-1.9.15p5 is installed, these variables
should be available to the super user. Execute the following
commands as the root
user:
cat >> /etc/sudoers.d/qt << "EOF"Defaults env_keep += QT_PLUGIN_PATH Defaults env_keep += QML2_IMPORT_PATH
EOF cat >> /etc/sudoers.d/kde << "EOF"Defaults env_keep += KF6_PREFIX
EOF
A method of building multiple versions installs KDE Frameworks in the /opt
hierarchy:
export KF6_PREFIX=/opt/kf6
If you are not installing KDE
Frameworks in /usr
, you will
need to make some additional configuration changes. Best practice
is to add those to your system or personal profile:
cat > /etc/profile.d/kf6.sh << "EOF"# Begin /etc/profile.d/kf6.sh export KF6_PREFIX=/opt/kf6 pathappend $KF6_PREFIX/bin PATH pathappend $KF6_PREFIX/lib/pkgconfig PKG_CONFIG_PATH pathappend $KF6_PREFIX/etc/xdg XDG_CONFIG_DIRS pathappend $KF6_PREFIX/share XDG_DATA_DIRS pathappend $KF6_PREFIX/lib/plugins QT_PLUGIN_PATH pathappend $KF6_PREFIX/lib/plugins/kcms QT_PLUGIN_PATH pathappend $KF6_PREFIX/lib/qml QML2_IMPORT_PATH pathappend $KF6_PREFIX/lib/python3.12/site-packages PYTHONPATH pathappend $KF6_PREFIX/share/man MANPATH pathappend $KF6_PREFIX/include CPLUS_INCLUDE_PATH # End /etc/profile.d/kf6.sh
EOF cat >> /etc/profile.d/qt6.sh << "EOF"# Begin Qt6 changes for KF6 pathappend /usr/lib/plugins QT_PLUGIN_PATH pathappend $QT6DIR/plugins QT_PLUGIN_PATH pathappend $QT6DIR/qml QML2_IMPORT_PATH # End Qt6 changes for KF6
EOF
Expand your /etc/ld.so.conf
file:
cat >> /etc/ld.so.conf << "EOF"
# Begin KF6 addition
/opt/kf6/lib
# End KF6 addition
EOF
Several KDE Frameworks and
Plasma packages install files into
D-Bus and Polkit directories. When installing
KDE Frameworks in a location other
than /usr
, D-Bus and Polkit need to be able to find these files.
The easiest way to achieve this is to create the following symlinks
(as the root
user):
install -v -dm755 $KF6_PREFIX/{etc,share} && ln -sfv /etc/dbus-1 $KF6_PREFIX/etc && ln -sfv /usr/share/dbus-1 $KF6_PREFIX/share && ln -sfv /usr/share/polkit-1 $KF6_PREFIX/share
Some packages may also install icons from the "hicolor" icon set.
Since that icon set is used by many packages, it is a good idea to
create a symlink to the one in /usr/share
to avoid having multiple installations
of hicolor-icon-theme-0.18. Run the
following commands as the root
user:
install -v -dm755 $KF6_PREFIX/share/icons && ln -sfv /usr/share/icons/hicolor $KF6_PREFIX/share/icons
Sometimes, the installation paths are hardcoded into installed
files. This is the reason why /opt/kf6
is used as installation prefix instead
of /opt/kf6-6.5.0
. After installing
KDE Frameworks, you may rename
the directory and create a symlink:
mv /opt/kf6{,-6.5.0} ln -sfv kf6-6.5.0 /opt/kf6
Later on, you may want to install other versions of KDE Frameworks. To do that, just remove the
symlink and use /opt/kf6
as the
prefix again. Which version of KDE
Frameworks you use depends only on where the symlink
points. No other reconfiguration will be needed.