[ab4fdfc] | 1 | <?xml version="1.0" encoding="UTF-8"?>
|
---|
[f175d6f6] | 2 | <!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
|
---|
| 3 | "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
|
---|
| 4 | <!ENTITY % general-entities SYSTEM "../../general.ent">
|
---|
| 5 | %general-entities;
|
---|
| 6 |
|
---|
[5bfcd23e] | 7 | <!ENTITY kf6-download-http "&kf6-download-http;">
|
---|
| 8 | <!ENTITY kf6-download-ftp " ">
|
---|
| 9 | <!ENTITY kf6-md5sum "See Below">
|
---|
| 10 | <!ENTITY kf6-size "30 MB">
|
---|
| 11 | <!ENTITY kf6-buildsize "11.7 MB">
|
---|
| 12 | <!ENTITY kf6-time "0.4 SBU">
|
---|
[f175d6f6] | 13 | ]>
|
---|
| 14 |
|
---|
[5bfcd23e] | 15 | <sect1 id="kf6-intro" xreflabel="Introduction to KF6">
|
---|
[b60f1ce] | 16 | <?dbhtml filename="kf6-intro.html"?>
|
---|
[f175d6f6] | 17 |
|
---|
| 18 |
|
---|
[b60f1ce] | 19 | <title>KDE Frameworks 6 Pre-installation Configuration</title>
|
---|
[f175d6f6] | 20 |
|
---|
[5bfcd23e] | 21 | <indexterm zone="kf6-intro">
|
---|
[b60f1ce] | 22 | <primary sortas="g-kf6">KDE Frameworks Introduction</primary>
|
---|
[f175d6f6] | 23 | </indexterm>
|
---|
| 24 |
|
---|
[1c8c15c] | 25 | <para>
|
---|
[b60f1ce] | 26 | KF6 can be installed in <filename class="directory">/usr</filename> or
|
---|
| 27 | <filename class="directory">/opt/kf6</filename>. The BLFS editors
|
---|
[1c8c15c] | 28 | recommend the latter in the BLFS environment.
|
---|
[f175d6f6] | 29 | </para>
|
---|
| 30 |
|
---|
| 31 | <sect2>
|
---|
| 32 | <title>Installing in /usr</title>
|
---|
| 33 |
|
---|
| 34 | <para>
|
---|
[b60f1ce] | 35 | One option is to install <application>KDE Frameworks</application>
|
---|
[f175d6f6] | 36 | into the <filename class="directory">/usr</filename> hierarchy.
|
---|
| 37 | This creates a simpler setup but makes it more difficult to try
|
---|
| 38 | multiple versions of <application>KDE Frameworks</application>.
|
---|
| 39 | </para>
|
---|
| 40 |
|
---|
[b60f1ce] | 41 | <screen><userinput>export KF6_PREFIX=/usr</userinput></screen>
|
---|
[f175d6f6] | 42 |
|
---|
| 43 | <para>
|
---|
| 44 | It is a good idea to add the following variables to your
|
---|
[5652a81] | 45 | system or personal profiles:
|
---|
[f175d6f6] | 46 | </para>
|
---|
| 47 |
|
---|
[b60f1ce] | 48 | <screen role="root"><userinput>cat >> /etc/profile.d/qt6.sh << "EOF"
|
---|
| 49 | <literal># Begin kf6 extension for /etc/profile.d/qt6.sh
|
---|
[f175d6f6] | 50 |
|
---|
[c50cdeea] | 51 | pathappend /usr/lib/plugins QT_PLUGIN_PATH
|
---|
[b60f1ce] | 52 | pathappend $QT6DIR/lib/plugins QT_PLUGIN_PATH
|
---|
[f175d6f6] | 53 |
|
---|
[b60f1ce] | 54 | pathappend /usr/lib/qt6/qml QML2_IMPORT_PATH
|
---|
| 55 | pathappend $QT6DIR/lib/qml QML2_IMPORT_PATH
|
---|
[5652a81] | 56 |
|
---|
[b60f1ce] | 57 | # End extension for /etc/profile.d/qt6.sh</literal>
|
---|
[5652a81] | 58 | EOF
|
---|
| 59 |
|
---|
[b60f1ce] | 60 | cat > /etc/profile.d/kf6.sh << "EOF"
|
---|
| 61 | <literal># Begin /etc/profile.d/kf6.sh
|
---|
[5652a81] | 62 |
|
---|
[b60f1ce] | 63 | export KF6_PREFIX=/usr
|
---|
[f175d6f6] | 64 |
|
---|
[b60f1ce] | 65 | # End /etc/profile.d/kf6.sh</literal>
|
---|
[f175d6f6] | 66 | EOF</userinput></screen>
|
---|
[5652a81] | 67 |
|
---|
[1c8c15c] | 68 | <note>
|
---|
| 69 | <para>
|
---|
[b60f1ce] | 70 | If <application>qt6</application> was installed in <filename
|
---|
[1c8c15c] | 71 | class="directory">/usr</filename>, the <filename
|
---|
[b60f1ce] | 72 | class="directory">$QT6DIR/lib/</filename> portions of the above paths
|
---|
[1c8c15c] | 73 | may need to be changed to <filename
|
---|
[b60f1ce] | 74 | class="directory">$QT6DIR/lib/qt6/</filename>.
|
---|
[1c8c15c] | 75 | </para>
|
---|
| 76 | </note>
|
---|
[5652a81] | 77 |
|
---|
[1c8c15c] | 78 | <para>
|
---|
| 79 | Additionally, if <xref linkend="sudo"/> is installed, these variables
|
---|
| 80 | should be available to the super user. Execute the following commands as
|
---|
| 81 | the <systemitem class="username">root</systemitem> user:
|
---|
| 82 | </para>
|
---|
[77b64bd] | 83 |
|
---|
[b32a1dc] | 84 | <screen role="root"><userinput>cat >> /etc/sudoers.d/qt << "EOF"
|
---|
[77b64bd] | 85 | <literal>Defaults env_keep += QT_PLUGIN_PATH
|
---|
| 86 | Defaults env_keep += QML2_IMPORT_PATH</literal>
|
---|
| 87 | EOF
|
---|
| 88 |
|
---|
[b32a1dc] | 89 | cat >> /etc/sudoers.d/kde << "EOF"
|
---|
[b60f1ce] | 90 | <literal>Defaults env_keep += KF6_PREFIX</literal>
|
---|
[77b64bd] | 91 | EOF</userinput></screen>
|
---|
| 92 |
|
---|
[f175d6f6] | 93 | </sect2>
|
---|
| 94 |
|
---|
| 95 | <sect2>
|
---|
| 96 | <title>Installing in /opt</title>
|
---|
| 97 |
|
---|
| 98 | <para>
|
---|
| 99 | A method of building multiple versions installs
|
---|
[b60f1ce] | 100 | <application>KDE Frameworks</application> in the
|
---|
[f175d6f6] | 101 | <filename class="directory">/opt</filename> hierarchy:
|
---|
| 102 | </para>
|
---|
| 103 |
|
---|
[b60f1ce] | 104 | <screen><userinput>export KF6_PREFIX=/opt/kf6</userinput></screen>
|
---|
[f175d6f6] | 105 |
|
---|
| 106 | <para>
|
---|
[b60f1ce] | 107 | If you are not installing <application>KDE Frameworks</application>
|
---|
[f175d6f6] | 108 | in <filename class="directory">/usr</filename>, you will need to
|
---|
| 109 | make some additional configuration changes. Best practice is to add
|
---|
| 110 | those to your system or personal profile:
|
---|
| 111 | </para>
|
---|
| 112 |
|
---|
[b60f1ce] | 113 | <screen role="root"><userinput>cat > /etc/profile.d/kf6.sh << "EOF"
|
---|
| 114 | <literal># Begin /etc/profile.d/kf6.sh
|
---|
[f175d6f6] | 115 |
|
---|
[b60f1ce] | 116 | export KF6_PREFIX=/opt/kf6
|
---|
[f175d6f6] | 117 |
|
---|
[b60f1ce] | 118 | pathappend $KF6_PREFIX/bin PATH
|
---|
| 119 | pathappend $KF6_PREFIX/lib/pkgconfig PKG_CONFIG_PATH
|
---|
[f175d6f6] | 120 |
|
---|
[b60f1ce] | 121 | pathappend $KF6_PREFIX/etc/xdg XDG_CONFIG_DIRS
|
---|
| 122 | pathappend $KF6_PREFIX/share XDG_DATA_DIRS
|
---|
[f175d6f6] | 123 |
|
---|
[b60f1ce] | 124 | pathappend $KF6_PREFIX/lib/plugins QT_PLUGIN_PATH
|
---|
| 125 | pathappend $KF6_PREFIX/lib/plugins/kcms QT_PLUGIN_PATH
|
---|
[f175d6f6] | 126 |
|
---|
[b60f1ce] | 127 | pathappend $KF6_PREFIX/lib/qml QML2_IMPORT_PATH
|
---|
[f175d6f6] | 128 |
|
---|
[b60f1ce] | 129 | pathappend $KF6_PREFIX/lib/python&python3-majorver;/site-packages PYTHONPATH
|
---|
[2ead8c6f] | 130 |
|
---|
[bbedebd] | 131 | pathappend $KF6_PREFIX/share/man MANPATH
|
---|
| 132 |
|
---|
[b60f1ce] | 133 | pathappend $KF6_PREFIX/include CPLUS_INCLUDE_PATH
|
---|
| 134 | # End /etc/profile.d/kf6.sh</literal>
|
---|
[f175d6f6] | 135 | EOF
|
---|
| 136 |
|
---|
[b60f1ce] | 137 | cat >> /etc/profile.d/qt6.sh << "EOF"
|
---|
| 138 | <literal># Begin Qt6 changes for KF6
|
---|
[f175d6f6] | 139 |
|
---|
[c50cdeea] | 140 | pathappend /usr/lib/plugins QT_PLUGIN_PATH
|
---|
[b60f1ce] | 141 | pathappend $QT6DIR/plugins QT_PLUGIN_PATH
|
---|
| 142 | pathappend $QT6DIR/qml QML2_IMPORT_PATH
|
---|
[f175d6f6] | 143 |
|
---|
[b60f1ce] | 144 | # End Qt6 changes for KF6</literal>
|
---|
[f175d6f6] | 145 | EOF</userinput></screen>
|
---|
| 146 |
|
---|
| 147 | <para>
|
---|
| 148 | Expand your <filename>/etc/ld.so.conf</filename> file:
|
---|
| 149 | </para>
|
---|
| 150 |
|
---|
| 151 | <screen role="root"><userinput>cat >> /etc/ld.so.conf << "EOF"
|
---|
[b60f1ce] | 152 | <literal># Begin KF6 addition
|
---|
[f175d6f6] | 153 |
|
---|
[b60f1ce] | 154 | /opt/kf6/lib
|
---|
[f175d6f6] | 155 |
|
---|
[b60f1ce] | 156 | # End KF6 addition</literal>
|
---|
[f175d6f6] | 157 | EOF</userinput></screen>
|
---|
| 158 |
|
---|
[5bfcd23e] | 159 | <indexterm zone="kf6-intro">
|
---|
[f175d6f6] | 160 | <primary sortas="e-etc-ld.so.conf">/etc/ld.so.conf</primary>
|
---|
| 161 | </indexterm>
|
---|
| 162 |
|
---|
[2e29bba] | 163 | <para revision="sysv">
|
---|
[b60f1ce] | 164 | Several <application>KDE Frameworks</application> and
|
---|
| 165 | <application>Plasma</application> packages install
|
---|
[f263bf7] | 166 | files into <application>D-Bus</application> and
|
---|
| 167 | <application>Polkit</application> directories. When installing
|
---|
[b60f1ce] | 168 | <application>KDE Frameworks</application> in a location other than
|
---|
[f175d6f6] | 169 | <filename class="directory">/usr</filename>,
|
---|
[f263bf7] | 170 | <application>D-Bus</application> and <application>Polkit</application>
|
---|
| 171 | need to be able to find these files.
|
---|
[f175d6f6] | 172 | The easiest way to achieve this is to create the following symlinks (as
|
---|
| 173 | the <systemitem class="username">root</systemitem> user):
|
---|
| 174 | </para>
|
---|
| 175 |
|
---|
[2e29bba] | 176 | <screen role="root"
|
---|
[b60f1ce] | 177 | revision="sysv"><userinput>install -v -dm755 $KF6_PREFIX/{etc,share} &&
|
---|
| 178 | ln -sfv /etc/dbus-1 $KF6_PREFIX/etc &&
|
---|
| 179 | ln -sfv /usr/share/dbus-1 $KF6_PREFIX/share &&
|
---|
| 180 | ln -sfv /usr/share/polkit-1 $KF6_PREFIX/share</userinput></screen>
|
---|
[f175d6f6] | 181 |
|
---|
[2e29bba] | 182 | <para revision="systemd">
|
---|
[b60f1ce] | 183 | Several <application>KDE Frameworks</application> and
|
---|
| 184 | <application>KDE Plasma</application> packages install
|
---|
[f263bf7] | 185 | files into <application>D-Bus</application>,
|
---|
| 186 | <application>Polkit</application>, and
|
---|
[2e29bba] | 187 | <application>systemd</application> directories. When installing
|
---|
[b60f1ce] | 188 | <application>KDE 6</application> in a location other than
|
---|
[2e29bba] | 189 | <filename class="directory">/usr</filename>,
|
---|
[f263bf7] | 190 | <application>D-Bus</application>, <application>Polkit</application>,
|
---|
| 191 | and <application>systemd</application>
|
---|
[2e29bba] | 192 | need to be able to find these files.
|
---|
| 193 | The easiest way to achieve this is to create the following symlinks (as
|
---|
| 194 | the <systemitem class="username">root</systemitem> user):
|
---|
| 195 | </para>
|
---|
| 196 |
|
---|
| 197 | <screen role="root"
|
---|
[b60f1ce] | 198 | revision="systemd"><userinput>install -v -dm755 $KF6_PREFIX/{etc,share} &&
|
---|
| 199 | ln -sfv /etc/dbus-1 $KF6_PREFIX/etc &&
|
---|
| 200 | ln -sfv /usr/share/dbus-1 $KF6_PREFIX/share &&
|
---|
| 201 | ln -sfv /usr/share/polkit-1 $KF6_PREFIX/share &&
|
---|
| 202 | install -v -dm755 $KF6_PREFIX/lib &&
|
---|
| 203 | ln -sfv /usr/lib/systemd $KF6_PREFIX/lib</userinput></screen>
|
---|
[2e29bba] | 204 |
|
---|
[f175d6f6] | 205 | <para>
|
---|
| 206 | Some packages may also install icons from the "hicolor" icon set. Since that
|
---|
| 207 | icon set is used by many packages, it is a good idea to create a
|
---|
| 208 | symlink to the one in <filename class="directory">/usr/share</filename>
|
---|
| 209 | to avoid having multiple installations of <xref linkend="hicolor-icon-theme"/>.
|
---|
| 210 | Run the following commands as the <systemitem class="username">root</systemitem>
|
---|
| 211 | user:
|
---|
| 212 | </para>
|
---|
| 213 |
|
---|
[b60f1ce] | 214 | <screen role="root"><userinput>install -v -dm755 $KF6_PREFIX/share/icons &&
|
---|
| 215 | ln -sfv /usr/share/icons/hicolor $KF6_PREFIX/share/icons</userinput></screen>
|
---|
[f175d6f6] | 216 |
|
---|
| 217 | <tip>
|
---|
| 218 | <para>
|
---|
| 219 | Sometimes, the installation paths are hardcoded into installed files.
|
---|
[b60f1ce] | 220 | This is the reason why <filename class="directory">/opt/kf6</filename>
|
---|
[f175d6f6] | 221 | is used as installation prefix instead of <filename
|
---|
[b60f1ce] | 222 | class="directory">/opt/kf6-&kf6-version;</filename>. After installing
|
---|
[f175d6f6] | 223 | <application>KDE Frameworks</application>, you may rename the directory
|
---|
| 224 | and create a symlink:
|
---|
| 225 | </para>
|
---|
| 226 |
|
---|
[b60f1ce] | 227 | <screen role="root"><userinput>mv /opt/kf6{,-&kf6-version;}
|
---|
| 228 | ln -sfv kf6-&kf6-version; /opt/kf6</userinput></screen>
|
---|
[f175d6f6] | 229 |
|
---|
| 230 | <para>
|
---|
| 231 | Later on, you may want to install other versions of
|
---|
[b60f1ce] | 232 | <application>KDE Frameworks</application>. To do that, just remove
|
---|
| 233 | the symlink and use <filename class="directory">/opt/kf6</filename>
|
---|
[f175d6f6] | 234 | as the prefix again. Which version of
|
---|
[b60f1ce] | 235 | <application>KDE Frameworks</application> you use depends only on
|
---|
[f175d6f6] | 236 | where the symlink points. No other reconfiguration will be needed.
|
---|
| 237 | </para>
|
---|
| 238 | </tip>
|
---|
| 239 |
|
---|
| 240 | </sect2>
|
---|
| 241 |
|
---|
| 242 | </sect1>
|
---|