#5683: Add LXQt 0.9.1
--------------------+--------------------------
 Reporter:  Krejzi  |       Owner:  blfs-book@…
     Type:  task    |      Status:  new
 Priority:  normal  |   Milestone:  7.8
Component:  BOOK    |     Version:  SVN
 Severity:  normal  |  Resolution:
 Keywords:          |
--------------------+--------------------------

Comment (by fo):

 By request.

 {{{
 BOOK/general/genlib/libstatgrab.xml (finished)
 BOOK/lxqt/lxqt-build.xml (was editing this one)
 BOOK/lxqt/lxqt-intro.xml (had not started this one)
 BOOK/lxqt/lxqt.xml (finished)
 }}}

 lxqt/lxqt.xml:

 {{{
 <?xml version="1.0" encoding="ISO-8859-1"?>
 <!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
   "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd"; [
  <!ENTITY % general-entities SYSTEM "../../general.ent">
  %general-entities;
 ]>

 <!--
 $LastChangedBy: bdubbs $
 $Date: 2015-06-24 18:03:07 -0500 (Wed, 24 Jun 2015) $
 -->

 <chapter id="lxqt">
   <?dbhtml filename="lxqt.html"?>

   <title>KDE Frameworks 5</title>

   <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"; href="lxqt-
 intro.xml"/>
   <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"; href="lxqt-
 build.xml"/>

 </chapter>
 }}}

 Dependencies:

 {{{

   <bridgehead renderas="sect4">Required</bridgehead>
   <para role="required">
     <xref linkend="extra-cmake-modules"/>,
     kwindowsystem and kguiaddons, from <xref linkend="kf5-frameworks"/>,
     <xref linkend="openbox"/>,
     <xref linkend="lxmenu-data"/>,
     <xref linkend="menu-cache"/>,
     <xref linkend="qt5"/>, and
     <xref linkend="wget"/> (required to download the packages)
   </para>

   <bridgehead renderas="sect4">Recommended</bridgehead>
   <para role="recommended">
     <xref linkend="alsa"/> or
     <xref linkend="pulseaudio"/> (Volume control panel plugin),
     <xref linkend="libdbusmenu-qt"/> (built with qt5),
     <xref linkend="libstatgrab"/> (CPU load and Network monitor panel
 plugins),
     <xref linkend="lm_sensors"/> (Sensors panel plugin), and
     <xref linkend="polkit-qt"/> (built with qt5),
   </para>
 }}}

 libstatgrab.xml is ready:

 {{{
 <?xml version="1.0" encoding="ISO-8859-1"?>
 <!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
    "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd"; [
   <!ENTITY % general-entities SYSTEM "../../general.ent">
   %general-entities;

   <!ENTITY libstatgrab-download-http
 
"http://www.mirrorservice.org/sites/ftp.i-scream.org/pub/i-scream/libstatgrab/libstatgrab
 -&libstatgrab-version;.tar.gz">
   <!ENTITY libstatgrab-download-ftp
 
"ftp://www.mirrorservice.org/sites/ftp.i-scream.org/pub/i-scream/libstatgrab/libstatgrab
 -&libstatgrab-version;.tar.gz">
   <!ENTITY libstatgrab-md5sum        "b906d312076ca9be3d5188edfe07f496">
   <!ENTITY libstatgrab-size          "760 KB">
   <!ENTITY libstatgrab-buildsize     "9.0 MB (with the test suite)">
   <!ENTITY libstatgrab-time          "0.1 SBU (1.6 SBU with the test
 suite)">
 ]>

 <sect1 id="libstatgrab" xreflabel="libstatgrab-&libstatgrab-version;">
   <?dbhtml filename="libstatgrab.html"?>

   <sect1info>
     <othername>$LastChangedBy: ken $</othername>
     <date>$Date: 2015-04-28 21:00:18 -0300 (Ter, 28 Abr 2015) $</date>
   </sect1info>

   <title>libstatgrab-&libstatgrab-version;</title>

   <indexterm zone="libstatgrab">
     <primary sortas="a-libstatgrab">libstatgrab</primary>
   </indexterm>

   <sect2 role="package">
     <title>Introduction to libstatgrab</title>

     <para>
       This is a library that provides cross platform access to statistics
 about
       the system on which it's run. It's written in C and presents a
 selection
       of useful interfaces which can be used to access key system
 statistics.
       The current list of statistics includes CPU usage, memory
 utilisation,
       disk usage, process counts, network traffic, disk I/O, and more.
     </para>

     &lfs77_checked; &gcc5_checked;

     <bridgehead renderas="sect3">Package Information</bridgehead>
     <itemizedlist spacing="compact">
       <listitem>
         <para>
           Download (HTTP): <ulink url="&libstatgrab-download-http;"/>
         </para>
       </listitem>
       <listitem>
         <para>
           Download (FTP): <ulink url="&libstatgrab-download-ftp;"/>
         </para>
       </listitem>
       <listitem>
         <para>
           Download MD5 sum: &libstatgrab-md5sum;
         </para>
       </listitem>
       <listitem>
         <para>
           Download size: &libstatgrab-size;
         </para>
       </listitem>
       <listitem>
         <para>
           Estimated disk space required: &libstatgrab-buildsize;
         </para>
       </listitem>
       <listitem>
         <para>
           Estimated build time: &libstatgrab-time;
         </para>
       </listitem>
     </itemizedlist>

     <para condition="html" role="usernotes">
       User Notes: <ulink url="&blfs-wiki;/libstatgrab"/>
     </para>

   </sect2>

   <sect2 role="installation">
     <title>Installation of libstatgrab</title>

     <para>
       Install <application>libstatgrab</application> by running the
 following
       commands:
     </para>

 <screen><userinput>./configure --prefix=/usr   \
             --disable-static \
             --docdir=/usr/share/doc/libstatgrab-&libstatgrab-version;
 &amp;&amp;
 make</userinput></screen>

     <para>To test the results, issue: <command>make
 check</command>.</para>

     <para>
       Now, as the <systemitem class="username">root</systemitem> user:
     </para>

 <screen role="root"><userinput>make install</userinput></screen>

   </sect2>

   <sect2 role="commands">
     <title>Command Explanations</title>

     <xi:include xmlns:xi="http://www.w3.org/2001/XInclude";
       href="../../xincludes/static-libraries.xml"/>

   </sect2>

   <sect2 role="content">
     <title>Contents</title>

     <segmentedlist>
       <segtitle>Installed Programs</segtitle>
       <segtitle>Installed Library</segtitle>
       <segtitle>Installed Directories</segtitle>

       <seglistitem>
         <seg>
           saidar, statgrab, statgrab-make-mrtg-config, and
           statgrab-make-mrtg-index
         </seg>
         <seg>
           libstatgrab.so
         </seg>
         <seg>
           /usr/share/doc/libstatgrab-&libstatgrab-version;
         </seg>
       </seglistitem>
     </segmentedlist>

     <variablelist>
       <bridgehead renderas="sect3">Short Descriptions</bridgehead>
       <?dbfo list-presentation="list"?>
       <?dbhtml list-presentation="table"?>

       <varlistentry id="saidar">
         <term><command>saidar</command></term>
         <listitem>
           <para>
             is a curses-based tool for viewing system statistics.
           </para>
           <indexterm zone="libstatgrab saidar">
             <primary sortas="b-saidar">saidar</primary>
           </indexterm>
         </listitem>
       </varlistentry>

       <varlistentry id="statgrab">
         <term><command>statgrab</command></term>
         <listitem>
           <para>
             is a sysctl-style interface to system statistics.
           </para>
           <indexterm zone="libstatgrab statgrab">
             <primary sortas="b-statgrab">statgrab</primary>
           </indexterm>
         </listitem>
       </varlistentry>

       <varlistentry id="statgrab-make-mrtg-config">
         <term><command>statgrab-make-mrtg-config</command></term>
         <listitem>
           <para>
             generates MRTG configuration.
           </para>
           <indexterm zone="libstatgrab statgrab-make-mrtg-config">
             <primary sortas="b-statgrab-make-mrtg-config">statgrab-make-
 mrtg-config</primary>
           </indexterm>
         </listitem>
       </varlistentry>

       <varlistentry id="statgrab-make-mrtg-index">
         <term><command>statgrab-make-mrtg-index</command></term>
         <listitem>
           <para>
             generates an XHTML index page from MRTG configuration files or
             stdin.
           </para>
           <indexterm zone="libstatgrab statgrab-make-mrtg-index">
             <primary sortas="b-statgrab-make-mrtg-index">statgrab-make-
 mrtg-index</primary>
           </indexterm>
         </listitem>
       </varlistentry>

       <varlistentry id="libstatgrab-lib">
         <term><filename
 class="libraryfile">libstatgrab.so</filename></term>
         <listitem>
           <para>
             is a library for handling page faults in user mode.
           </para>
           <indexterm zone="libstatgrab libstatgrab-lib">
             <primary sortas="c-libstatgrab">libstatgrab.so</primary>
           </indexterm>
         </listitem>
       </varlistentry>

     </variablelist>

   </sect2>

 </sect1>
 }}}


 Downloads and order:

 {{{
 cat > ../lxqt-0.9.1.md5 << "EOF"
 3e92e224da807710862a0a94fad14dcd  libqtxdg-1.2.0.tar.xz
 b027c6114d543e24a35846d37d374009  liblxqt-0.9.0.tar.xz
 f7e0de7cac2379a7dd7af7fd97e9138c  lxqt-globalkeys-0.9.0.tar.xz
 11d8e306c0b2e23a4cca312cdcb54dbd  lxqt-notificationd-0.9.0.tar.xz
 2d9d9889ba2ed8712d34e6835001e6d0  libsysstat-0.3.0.tar.xz
 476d91d6680f63b0dd7ab445120b9e20  liblxqt-mount-0.9.0.tar.xz
 cdae5a811c68fe8162230f1e9ef765f2  lxqt-panel-0.9.0.tar.xz
 b0ce100b4380ad1a47926a3465aeb6e9  pcmanfm-qt-0.9.0.tar.xz
 92fca1504bcd61d0c8a761ba3748e81f  lxqt-session-0.9.0.tar.xz
 f68f8b9876bc825a2f5c9d6e9621211a  lxqt-runner-0.9.0.tar.xz
 91220a62607ea42a439bd56c23e7303d  lxqt-qtplugin-0.9.0.tar.xz
 15f8f12465d9475ca15562431a21bf38  lxqt-policykit-0.9.0.tar.xz
 5efa3de8ee1b8548ee59dc8f7fd773d0  lxqt-powermanagement-0.9.0.tar.xz
 af485d58ed9aa78e46bb76db5c51eb9a  lxqt-config-0.9.0.tar.xz
 8a9ea5b780101b071911a84bb258675d  lxqt-about-0.9.0.tar.xz
 7db547d46c4e4e5efb6b3ee8e4a90ad9  lxqt-common-0.9.1.tar.xz
 EOF
 }}}



 [http://downloads.lxqt.org/libqtxdg/1.2.0/libqtxdg-1.2.0.tar.xz]

 [http://downloads.lxqt.org/libsysstat/0.3.0/libsysstat-0.3.0.tar.xz]

 [http://downloads.lxqt.org/lxqt/0.9.1/]

 Pre-install:

 {{{
 install -vdm755 /opt/lxqt/lib

 cat >> /etc/profile.d/extrapaths.sh << "EOF"

 # Begin LXQt addition

 pathappend /opt/lxqt/share/man/  MANPATH
 pathappend /opt/lxqt/bin

 # End LXQt addition

 EOF

 source /etc/profile

 cat >> /etc/ld.so.conf << "EOF"

 # Begin LXQt addition

 /opt/lxqt/lib

 # End LXQt addition

 EOF
 }}}

 Post-install

 {{{
 ln -svfn /opt/lxqt/share/lxqt /usr/share/lxqt &&

 for i in /opt/lxqt/share/applications/*
 do
   ln -svf $i /usr/share/applications/
 done
 unset i
 }}}

 Build/Install

 Sources and user under lxqt-0.9.1 directory.

 {{{
     for package in \
         $(grep -v '^#' ../lxqt-0.9.1.md5 | awk '{print $2}')
     do
       packagedir=$(echo $package | sed 's/.tar.xz//') &&
       DESTINODIR=/tmp/DEST-$packagedir &&
       tar -xf $package -C /tmp &&
       pushd /tmp/$packagedir &&
       case $packagedir in
         liblxqt-[0-9]* )

           sed -e '/lxqtnotification.h/ i #include <QObject>' \
               -i lxqtnotification.cpp

         ;;
         lxqt-notificationd-[0-9]* )

           sed -e '/QDebug/ i #include <QObject>' \
               -e 's:<KF5/KWindowSystem/:<:' \
               -i src/notification.cpp &&

           sed -e '/LXQt\/Notification/ i  #include <QObject>' \
               -i config/basicsettings.cpp

         ;;
         lxqt-runner-[0-9]* )

           sed -i 's:<KF5/KWindowSystem/:<:' dialog.cpp

         ;;
         lxqt-session-[0-9]* )

           sed -i 's:<KF5/KWindowSystem/:<:' lxqt-
 session/src/lxqtmodman.cpp

         ;;
         lxqt-panel-[0-9]* )

           sed -i 's:<KF5/KWindowSystem/:<:' \
                  plugin-mainmenu/lxqtmainmenu.cpp \
                  plugin-kbindicator/lxqtkbindicator.h \
                  plugin-showdesktop/showdesktop.cpp \
                  plugin-taskbar/lxqttaskbutton.cpp \
                  plugin-taskbar/lxqttaskbar.h \
                  plugin-desktopswitch/desktopswitch.cpp \
                  panel/lxqtpanel.cpp \
                  panel/config/configpaneldialog.cpp &&
           sed -i 's:<KF5/KGuiAddons/:<:' plugin-
 kbindicator/lxqtkbindicator.h

         ;;
         lxqt-config-[0-9]* )

           sed -e '/<QRect>/ i  #include <QObject>' \
               -i lxqt-config-monitor/monitor.h

         ;;
       esac
       mkdir -vp build &&
       cd        build &&
       cmake -DCMAKE_BUILD_TYPE=Release       \
             -DCMAKE_INSTALL_PREFIX=/opt/lxqt \
             .. &&
       time make -j${MKFLGS} &&
       if [ $INSTVAR = s ]
       then
         make DESTDIR=$DESTINODIR install
       elif [ $INSTVAR = e ]
       then
         make install &&
         echo "`date` $packagedir $package" >> /usr/src/packages.log &&
         ldconfig
       fi &&
       popd
     done
 }}}

--
Ticket URL: <http://wiki.linuxfromscratch.org/blfs/ticket/5683#comment:11>
BLFS Trac <http://wiki.linuxfromscratch.org/blfs>
Beyond Linux From Scratch
-- 
http://lists.linuxfromscratch.org/listinfo/blfs-book
FAQ: http://www.linuxfromscratch.org/blfs/faq.html
Unsubscribe: See the above information page

Reply via email to