Changes

Added TDE 14.1.2 page
{{header_en|title=Installing TDE 14.1.2 on Slackware / SlackwareArm Linux 15.0 | keyword={{Template:keyword_en_tde}} | description=Building, installing and configuring working TDE 14.1.2 packages on Slackware / SlackwareArm Linux 15.0 | link_page=trinity_desktop_environment_14.1.2}}

== '''TDE 14.1.2 and Slackware 15.0''' ==

The 28th April 2024 marks the release of '''Trinity Desktop Environment 14.1.2''': a desktop environment for '''Linux''' and other '''UNIX''' flavors. This is the third release in the TDE 14.1.x branch, consisting in a maintenance release that fixes all bugs and issues reported by users since the previous 14.1.1 one. No new major features were introduced, just some minor updates meant to enhance user experience. The '''TQt3''' and '''tqtinterface''' code cleanup effort is still going on but, unluckily, produced no evident improvement so far.

As usual I managed to update the SlackBuild build scripts for Slackware Linux then managed to build, install and test packages for the graphic environment, that is my usual choice for every virtual machine needing a GUI I deploy. Thanks to the few changes introduced, the scripts required little if no update. Following is a list of '''differences introduced between releases 14.1.1 and 14.1.2'''. For the impatient here is the [http://www.giustetti.net/resource/slackbuild/tde/1412/tde_build_tree_sg-14.1.2.tar.xz link to the build scripts] useful to build all of the packages on your Linux boxes.

=== Libksquirrel ===
One of the long term goals of the Trinity Desktop Environment project consists of '''migrating the build system to CMake'''. Pretty much all of the packages were gradually ported from '''AutoTools'''. Among the few notable exceptions was '''libksquirrel''': an optional library that adds some image codecs into TDE. The build system was finally switched with TDE release 14.1.2 as such the build script required some tweaking to remove any reference to '''AutoTools''' and to set the build options as in the following code snippet:
<syntaxhighlight lang="bash">
# Add some include paths to the standard compiler flags otherwise the build
# process will fail with an error
SLKCFLAGS="${SLKCFLAGS} -L ${QTDIR}/lib${LIBDIRSUFFIX}"

cmake ${TMP}/tmp-${PRGNAM}/${DIR_SRC} \
-DCMAKE_C_FLAGS:STRING="${SLKCFLAGS}" \
-DCMAKE_CXX_FLAGS:STRING="${SLKCFLAGS} ${DEBUG_CMAKE_OPT}" \
-DCMAKE_INSTALL_PREFIX=${PREFIX} \
-DTQTDIR=${QTDIR} \
-DBUILD_DXF="OFF" \
-DBUILD_DICOM="OFF" \
-DBUILD_FIG="OFF" \
2>&1 | tee -a ${OUTPUT}/${PRGNAM}_configure.log
</syntaxhighlight>

The last three options are required to avoid the script from failing raising an error lamenting missing libraries. Those libraries are not included in Slackware 15.0 official package list.

All of the tweaks and updates are included in the previously linked build script.

=== Building Packages ===
In order to build TDE successfully, please '''remove any installed TDE package from your Linux box''', logout then login again in order to reset the environment variables, removing unwanted TDE options. Before you start I'll strongly suggest to:
* Back-up all of your data, the configuration directory ''&tilde;/.trinity'' and the configuration file ''''&tilde;/.tderc'' in your home directory. I never experienced any data loss or other issue updating, but you definitely want to have a fail-safe in case any of that should happen.
* Removing TDE packages means no graphical interface will be available for the time needed to build the new release. The required time interval depends on your machine. You are suggested to switch to runlevel 3 (Command Line Interface) for the duration of the procedure:
<syntaxhighlight lang="bash">
init 3
</syntaxhighlight>

* Remove all previously installed TDE packages. To remove release 14.1.1, for example, execute command:
<syntaxhighlight lang="bash">
removepkg /var/log/packages/*trinity-14.1.1*
</syntaxhighlight>

* Delete configuration scripts left over by the '''removepkg''' command.
<syntaxhighlight lang="bash">
rm /etc/profile.d/tqt3.*
rm /etc/profile.d/trinity.*
</syntaxhighlight>

* Logout, then login again to ensure that all references pointing to TDE are removed from the environment configuration.
* Install or update some packages required by TDE. Optional packages include:
* '''Heimdall''';
* '''Imlib''';
* Compilers and other tools used too build software;
* Programming languages to bind to TDE (Optional);
If you don't install the prerequisites, some functionality could go missing for the resulting packages.

=== Ready the Build Tree ===
The Trinity Desktop Environment includes a lot of packages, which require building and installing in the right order. Download the source code, available as a big tar archive, decompress it and move the resulting compressed archive files in the proper directory.
* Download and decompress [http://www.giustetti.net/resource/slackbuild/tde/1412/tde_build_tree_sg-14.1.2.tar.xz the build tree archive] in a local directory. Both ''/tmp'' and ''/usr/src/tde-14.1.2'' are valid candidates.
* Download and decompress the '''tar''' archive containing the [https://mirror.ppa.trinitydesktop.org/trinity/releases/R14.1.2/R14.1.2-complete.tar source code for '''all''' of the packages].
* Move the compressed source code archives in the target directories. Every archive with '''tar.xz''' extension to the directory bearing the same name.
* Set the build options required by your CPU. For a computer with a 64 bit Amd CPU inside, for example, use the following command:
<syntaxhighlight lang="bash">
rm TDE.options
ln -s TDE.options.x86_64 TDE.options
</syntaxhighlight>

* Move to the directory where script '''TDE.SlackBuild''' is located.
<syntaxhighlight lang="bash">
cd ./tde_build_script/bin
</syntaxhighlight>

* If you wish to build all of the localization packages together with the base ones, update the main build script '''tde_build_script/bin/TDE.SlackBuild''' turning lines
<syntaxhighlight lang="bash">
# Build package
# bash ./${PKG}.SlackBuild
</syntaxhighlight>

into
<syntaxhighlight lang="bash">
# Build package
bash ./${PKG}.SlackBuild
</syntaxhighlight>

* Run the main script and wait patiently for its conclusion:
<syntaxhighlight lang="bash">
sh ./TDE.SlackBuild
</syntaxhighlight>

The script will build each and every package in the base, library and prerequisite group then install and configure them. A full installation will require several hours. When the script will finish, TDE will be installed and ready for use. The script will stop before its programmed conclusion only when encountering issues such as a missing dependency package or build tool or similar.

* Check the Trinity Desktop Environment installation running the '''startx''' command to load the graphical interface.
* Last, whoever usually starts its Linux box in GUI mode should close the TDE session and revert the runlevel to 4:
<syntaxhighlight lang="bash">
init 4
</syntaxhighlight>
----

=== The Updated Build Tree ===
The updated build tree can be downloaded from the following link: [http://www.giustetti.net/resource/slackbuild/tde/1412/tde_build_tree_sg-14.1.2.tar.xz tde_build_tree_sg-14.1.2.tar.xz]. The tar archive includes every and each SlackBuild script, patch and configuration file.
----


== CONCLUSIONS ==

This web page includes a summary of the changes introduced in '''release 14.1.2 of TDE''' and the updates required by the build scripts for Slackware Linux. Brief instructions to successfully use the scripts were provided along with some example commands. All the of the build, installation, configuration and subsequent use tests were conducted on '''64 and 32 bits AMD CPUs running an up to date version of Slackware Linux 15.0'''. In conclusion, the deserved praises to all of the '''TDE''' developers for their commitment and efforts are renewed. Until the next official release for the usual update.


For any feedback, questions, errors and such, please e-mail me at ''studiosg [at] giustetti [dot] net''


External links
----

* [http://www.slackware.com Slackware home page]
* [http://arm.slackware.com Slackware Linux for the ARM architecture]
* [http://www.trinitydesktop.org TDE home page]
* [https://mirror.ppa.trinitydesktop.org/trinity/releases/R14.1.2/downloads.html TDE download links]
* [https://wiki.trinitydesktop.org/Release_Notes_For_R14.1.2 TDE 14.1.2 release notes]

----

{{footer_en | link_page=trinity_desktop_environment_14.1.2}}