[5af3a383] | 1 | <?xml version="1.0" encoding="ISO-8859-1"?>
|
---|
[ece8268a] | 2 | <!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
|
---|
[5af3a383] | 3 | "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
|
---|
| 4 | <!ENTITY % general-entities SYSTEM "../../general.ent">
|
---|
| 5 | %general-entities;
|
---|
| 6 | ]>
|
---|
| 7 |
|
---|
[2341740] | 8 | <sect1 id="lxqt-pre-install" xreflabel="LXQt Pre-Install">
|
---|
[5af3a383] | 9 | <?dbhtml filename="pre-install.html"?>
|
---|
| 10 |
|
---|
| 11 | <sect1info>
|
---|
| 12 | <date>$Date$</date>
|
---|
| 13 | </sect1info>
|
---|
| 14 |
|
---|
| 15 | <title>LXQt Desktop Pre-Install Instructions</title>
|
---|
| 16 |
|
---|
[ece8268a] | 17 | <indexterm zone="lxqt-pre-install">
|
---|
[2341740] | 18 | <primary sortas="g-lxqt-pre-install">LXQt Pre-Install</primary>
|
---|
[ece8268a] | 19 | </indexterm>
|
---|
[3368ef4] | 20 |
|
---|
[ece8268a] | 21 | <caution>
|
---|
| 22 | <para>
|
---|
| 23 | Due to recent changes in <command>grep</command> it is essential that
|
---|
[f50481de] | 24 | the installing system be set to a UTF-8 locale. An example
|
---|
[31be310] | 25 | is <command>export LANG=en_US.UTF-8</command>, but any UTF-8 locale is
|
---|
[ece8268a] | 26 | sufficient. Failure to do this will result in a faulty installation.
|
---|
| 27 | </para>
|
---|
| 28 | </caution>
|
---|
[3368ef4] | 29 |
|
---|
[6073ef0] | 30 | <para>
|
---|
| 31 | LXQt can be installed in /usr or /opt/lxqt.
|
---|
| 32 | </para>
|
---|
| 33 |
|
---|
[ece8268a] | 34 | <sect2>
|
---|
| 35 | <title>Installing in /usr</title>
|
---|
[6073ef0] | 36 |
|
---|
| 37 | <para>
|
---|
| 38 | Installing in <filename class="directory">/usr</filename> creates
|
---|
[ece8268a] | 39 | a simpler setup. Run:
|
---|
| 40 | </para>
|
---|
[6073ef0] | 41 |
|
---|
| 42 | <screen><userinput>export LXQT_PREFIX=/usr</userinput></screen>
|
---|
| 43 |
|
---|
| 44 | <para>
|
---|
| 45 | Either add that to your own <filename>.bash_profile</filename>
|
---|
| 46 | so that it will still be set if you build the packages over a
|
---|
| 47 | period of time, or else add it to the system profile as the
|
---|
| 48 | <systemitem class="username">root</systemitem> user:
|
---|
| 49 | </para>
|
---|
| 50 |
|
---|
[2341740] | 51 | <screen role="root"><userinput>cat > /etc/profile.d/lxqt.sh << "EOF"
|
---|
| 52 | <literal># Begin LXQt profile
|
---|
[6073ef0] | 53 |
|
---|
| 54 | export LXQT_PREFIX=/usr
|
---|
| 55 |
|
---|
[2341740] | 56 | # End LXQt profile</literal>
|
---|
[6073ef0] | 57 | EOF</userinput></screen>
|
---|
| 58 |
|
---|
| 59 | <para>
|
---|
[ece8268a] | 60 | There is no other configuration needed to install LXQt in
|
---|
| 61 | <filename class="directory">/usr</filename>.
|
---|
[6073ef0] | 62 | </para>
|
---|
| 63 |
|
---|
| 64 | </sect2>
|
---|
| 65 |
|
---|
[5af3a383] | 66 | <sect2>
|
---|
| 67 | <title>Installing in /opt/lxqt</title>
|
---|
| 68 |
|
---|
| 69 | <para>
|
---|
[2341740] | 70 | Installing in <filename class="directory">/opt/lxqt</filename> may
|
---|
| 71 | simplify upgrading to a later version of LXQt.
|
---|
[5af3a383] | 72 | </para>
|
---|
| 73 |
|
---|
| 74 | <para>
|
---|
| 75 | Some variables need to be defined in your system profile, as the
|
---|
[b8edcab8] | 76 | <systemitem class="username">root</systemitem> user:
|
---|
[5af3a383] | 77 | </para>
|
---|
| 78 |
|
---|
[ece8268a] | 79 | <screen role="root"><userinput>install -vdm755 /opt/lxqt/{bin,lib,share/man}
|
---|
[5af3a383] | 80 |
|
---|
[ece8268a] | 81 | cat > /etc/profile.d/lxqt.sh << "EOF"
|
---|
[2341740] | 82 | <literal># Begin LXQt profile
|
---|
[5af3a383] | 83 |
|
---|
[6073ef0] | 84 | export LXQT_PREFIX=/opt/lxqt
|
---|
| 85 |
|
---|
[d8efa96] | 86 | pathappend /opt/lxqt/bin PATH
|
---|
| 87 | pathappend /opt/lxqt/share/man/ MANPATH
|
---|
| 88 | pathappend /opt/lxqt/lib/pkgconfig PKG_CONFIG_PATH
|
---|
[ece8268a] | 89 | pathappend /opt/lxqt/lib/plugins QT_PLUGIN_PATH
|
---|
[5af3a383] | 90 |
|
---|
[2341740] | 91 | # End LXQt profile</literal>
|
---|
[ece8268a] | 92 | EOF
|
---|
| 93 |
|
---|
| 94 | cat >> /etc/profile.d/qt5.sh << "EOF"
|
---|
| 95 | <literal>
|
---|
| 96 | # Begin Qt5 changes for LXQt
|
---|
| 97 |
|
---|
| 98 | pathappend $QT5DIR/plugins QT_PLUGIN_PATH
|
---|
| 99 |
|
---|
| 100 | # End Qt5 changes for LXQt</literal>
|
---|
[5af3a383] | 101 | EOF</userinput></screen>
|
---|
| 102 |
|
---|
| 103 | <para>
|
---|
| 104 | Expand your <filename>/etc/ld.so.conf</filename> file:
|
---|
| 105 | </para>
|
---|
| 106 |
|
---|
| 107 | <screen role="root"><userinput>cat >> /etc/ld.so.conf << "EOF"
|
---|
[20f09631] | 108 | <literal>
|
---|
| 109 | # Begin LXQt addition
|
---|
[5af3a383] | 110 |
|
---|
| 111 | /opt/lxqt/lib
|
---|
| 112 |
|
---|
[20f09631] | 113 | # End LXQt addition
|
---|
| 114 | </literal>
|
---|
[5af3a383] | 115 | EOF</userinput></screen>
|
---|
| 116 |
|
---|
[ece8268a] | 117 | <para>
|
---|
| 118 | Before starting to install the packages in the following pages, remember
|
---|
| 119 | to execute:
|
---|
| 120 | </para>
|
---|
[5af3a383] | 121 |
|
---|
| 122 | <screen><userinput>source /etc/profile</userinput></screen>
|
---|
| 123 |
|
---|
| 124 | <para>
|
---|
[ece8268a] | 125 | Some packages from the KDE Frameworks 5 bundle install files into D-Bus
|
---|
| 126 | directories. In order to have D-Bus find those files, the easiest
|
---|
[31be310] | 127 | way is to create a symlink. Some packages may also install icons from
|
---|
| 128 | the <quote>hicolor</quote> icon set. Since that icon set is used by many
|
---|
| 129 | packages, it is a good idea to create a symlink to the one in <filename
|
---|
[ece8268a] | 130 | class="directory">/usr/share</filename> to avoid having multiple
|
---|
[31be310] | 131 | installations of <xref linkend="hicolor-icon-theme"/>. Run the
|
---|
[ece8268a] | 132 | following commands as the <systemitem class="username">root</systemitem>
|
---|
| 133 | user:
|
---|
[5af3a383] | 134 | </para>
|
---|
| 135 |
|
---|
[6073ef0] | 136 | <screen role="root"><userinput>source /etc/profile &&
|
---|
| 137 | install -v -dm755 $LXQT_PREFIX/share/icons &&
|
---|
[4ea888eb] | 138 | ln -sfv /usr/share/icons/hicolor $LXQT_PREFIX/share/icons &&
|
---|
| 139 | ln -sfv /usr/share/dbus-1 $LXQT_PREFIX/share </userinput></screen>
|
---|
[5af3a383] | 140 |
|
---|
| 141 | <tip>
|
---|
| 142 | <para>
|
---|
| 143 | Sometimes, the installation paths are hardcoded into installed files.
|
---|
| 144 | This is the reason why <filename class="directory">/opt/lxqt</filename>
|
---|
| 145 | is used as installation prefix instead of <filename
|
---|
| 146 | class="directory">/opt/lxqt-&lxqt-version;</filename>. After installing
|
---|
| 147 | <application>LXQt Desktop</application>, you may rename the directory
|
---|
| 148 | and create a symlink:
|
---|
| 149 | </para>
|
---|
| 150 |
|
---|
| 151 | <screen role="root"><userinput>mv /opt/lxqt{,-&lxqt-version;}
|
---|
| 152 | ln -sfv lxqt-&lxqt-version; /opt/lxqt</userinput></screen>
|
---|
| 153 |
|
---|
| 154 | <para>
|
---|
| 155 | Later on, you may want to install other versions of <application>LXQt
|
---|
| 156 | Desktop</application>. To do that, just remove the symlink and use
|
---|
| 157 | <filename class="directory">/opt/lxqt</filename> as the prefix again.
|
---|
| 158 | Which version of <application>LXQt Desktop</application> you use
|
---|
| 159 | depends only on where the symlink points. No other reconfiguration will
|
---|
| 160 | be needed.
|
---|
| 161 | </para>
|
---|
| 162 | </tip>
|
---|
| 163 |
|
---|
| 164 | </sect2>
|
---|
| 165 |
|
---|
[31be310] | 166 | <sect2>
|
---|
| 167 | <title>Notes about building LXQt dependencies</title>
|
---|
| 168 |
|
---|
| 169 | <para>
|
---|
| 170 | <application>LXQt</application> obviously needs <xref linkend="qt5"/>,
|
---|
| 171 | but not all Qt5 modules and dependencies are necessary. Since the aim
|
---|
| 172 | of <application>LXQt</application> is to be light weight, it may be
|
---|
| 173 | interesting to cut down the Qt5 overhead, and to build only parts of it.
|
---|
| 174 | To build Qt and LXQT dependencies, the proposed order is the following:
|
---|
| 175 | </para>
|
---|
| 176 |
|
---|
| 177 | <procedure>
|
---|
| 178 | <step>
|
---|
| 179 | <para>
|
---|
| 180 | Build <xref linkend="linux-pam"/>, <xref linkend="shadow"/>,
|
---|
| 181 | and <xref linkend="sudo"/>, with their dependencies
|
---|
| 182 | </para>
|
---|
| 183 | </step>
|
---|
| 184 |
|
---|
| 185 | <step>
|
---|
| 186 | <para>
|
---|
| 187 | Build the whole <xref linkend="x-window-system"/> chapter, with
|
---|
| 188 | Wayland support, and replacing twm vith <xref linkend="openbox"/>
|
---|
| 189 | (and its required dependencies). Some Xorg applications and fonts
|
---|
| 190 | may be omitted, but with a negligible impact on build time and size
|
---|
| 191 | </para>
|
---|
| 192 | </step>
|
---|
| 193 |
|
---|
| 194 | <step>
|
---|
| 195 | <para>
|
---|
| 196 | Build <xref linkend="gtk2"/> and its required and recommended
|
---|
| 197 | dependencies. GTK+2 is needed for <xref linkend="libfm"/>, and
|
---|
| 198 | brings the <command>gtk-update-icon-cache</command> executable,
|
---|
| 199 | which is needed by libqtxdg
|
---|
| 200 | </para>
|
---|
| 201 | </step>
|
---|
| 202 |
|
---|
| 203 | <step>
|
---|
| 204 | <para>
|
---|
| 205 | Build required Qt dependencies, and some of the recommended or
|
---|
| 206 | optional dependencies, namely:
|
---|
[737f339] | 207 | <xref linkend="openssl10"/>,
|
---|
[31be310] | 208 | <xref linkend="dbus"/>,
|
---|
| 209 | <xref linkend="alsa-lib"/>,
|
---|
| 210 | <xref linkend="pulseaudio"/>, and
|
---|
| 211 | <xref linkend="libxkbcommon"/>
|
---|
| 212 | </para>
|
---|
| 213 | </step>
|
---|
| 214 |
|
---|
| 215 | <step>
|
---|
| 216 | <para>
|
---|
| 217 | Build the required parts of <xref linkend="qt5"/>. To skip all
|
---|
| 218 | modules but the four needed for LXQt, do:
|
---|
| 219 | </para>
|
---|
| 220 | <screen role="nodump"><userinput>ls -Fd qt* | grep / | sed 's/^/-skip /;s/qt//;s@/@@' > tempconf
|
---|
| 221 | sed -i '/base/d;/tools/d;/x11extras/d;/svg/d' tempconf
|
---|
| 222 | # if you plan to build SDDM, add:
|
---|
[737f339] | 223 | sed -i '/declarative/d' tempconf
|
---|
[31be310] | 224 | ./configure <book flags> $(cat tempconf)</userinput></screen>
|
---|
| 225 | <para>
|
---|
| 226 | The time needed to complete the Qt installation is thus reduced to
|
---|
| 227 | around 6 SBU
|
---|
| 228 | </para>
|
---|
| 229 | </step>
|
---|
| 230 |
|
---|
| 231 | <step>
|
---|
| 232 | <para>
|
---|
[0639bb6] | 233 | Build miscellaneous dependencies (with their required ones):
|
---|
[737f339] | 234 | <xref linkend="libexif"/>,
|
---|
[31be310] | 235 | <xref linkend="libstatgrab"/>,
|
---|
| 236 | <xref linkend="polkit"/>,
|
---|
| 237 | <phrase revision="sysv">
|
---|
[737f339] | 238 | <xref linkend="consolekit"/> (after polkit),
|
---|
[31be310] | 239 | <xref linkend="pm-utils"/>,
|
---|
| 240 | </phrase>
|
---|
| 241 | <xref linkend="lm_sensors"/>,
|
---|
| 242 | <xref linkend="upower"/>, and
|
---|
| 243 | <xref linkend="libfm"/>. If <xref linkend="cmake"/> has not been
|
---|
| 244 | built during the preceding steps, build it now
|
---|
| 245 | </para>
|
---|
| 246 | </step>
|
---|
| 247 |
|
---|
| 248 | <step>
|
---|
| 249 | <para>
|
---|
| 250 | Build KDE frameworks dependencies:
|
---|
| 251 | <xref linkend="extra-cmake-modules"/>,
|
---|
| 252 | <xref linkend="libdbusmenu-qt"/>, and
|
---|
| 253 | <xref linkend="polkit-qt"/>
|
---|
| 254 | </para>
|
---|
| 255 | </step>
|
---|
| 256 |
|
---|
| 257 | <step>
|
---|
| 258 | <para>
|
---|
| 259 | Finally, build some desktop utilities:
|
---|
| 260 | <xref linkend="xdg-utils"/> (needs only xmlto),
|
---|
| 261 | <xref linkend="xdg-user-dirs"/>,
|
---|
| 262 | <xref linkend="oxygen-icons5"/> or other sets of icons
|
---|
| 263 | </para>
|
---|
| 264 | </step>
|
---|
| 265 | </procedure>
|
---|
| 266 |
|
---|
| 267 | </sect2>
|
---|
| 268 |
|
---|
[5af3a383] | 269 | </sect1>
|
---|