glfs/introduction/welcome/rationale.xml
2024-05-18 07:27:38 -06:00

97 lines
3.8 KiB
XML

<?xml version="1.0" encoding="UTF-8"?>
<!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;
]>
<sect1 id="rationale" xreflabel="Rationale for Packages">
<?dbhtml filename="rationale.html"?>
<title>Rationale for Packages</title>
<para>
Upon reading through some of the sections in this book, you may notice
that a lot of the packages linked in some of the sections aren't in
this book but rather in BLFS, and that some optional dependencies aren't
even listed. Furthermore, some packages may be outdated. Lastly, some
packages that have test suites don't have test instructions. These
choices are very much deliberate.
</para>
<sect2>
<title>Why Are Many Packages Not in the Book?</title>
<para>
Many packages linked on some of the packages' sections aren't in
the book but rather in the BLFS book. There are multiple reasons
for this, but the most notable one is the packages that aren't in
the book aren't important for the main packages in the book, those
being <application>Steam</application> and <application>Wine
</application>. They are still listed anyway if users want more
support out of the specific packages not specific to the main
packages, like media playback for example. Another reason for
packages not being in the book is that the packages take a lot
of work to install and require jumping around. They can also require
a lot of choice or take up space or RAM for no real benefit for a
lot of users when there are more simple solutions, for example: a
logind variant being completely unnecessary as the regular user can
just be added to the <systemitem class='groupname'>audio</systemitem>,
<systemitem class='groupname'>video</systemitem>, and
<systemitem class='groupname'>input</systemitem> groups.
</para>
</sect2>
<sect2>
<title>Why Are Some Optional Dependencies Not Listed?</title>
<para>
There are some optional dependencies that aren't listed, and the
main reason for this is that they just would take up unnecessary
space. If on the offchance you desire even more out of your system,
there are plenty more packages in BLFS and is more geared for
everyone, although this book focuses more on gaming.
</para>
</sect2>
<sect2>
<title>Packages That Are Outdated and Why</title>
<para>
<application>GCC</application>-&gcc-version; vs <application>GCC
</application>-14.1.0: <application>GCC</application>-14.1.0
introduces a lot of bugs, leading to the inability to even
compile the newest version with <application>MinGW-w64
</application>. It also leads to unexpected test failures. Until
these bugs are worked out, the <application>GCC</application>
version will be &gcc-version;.
</para>
</sect2>
<sect2>
<title>Some Package Test Instructions Aren't Included</title>
<para>
Many packages have Test Suites, which offer as a way to see if
a package you just compiled doesn't have any bugs. However, in
GLFS, a lot of these packages have test suites that depend on
packages that aren't necessary in the book and would make this
book larger than it needs to be. Part of the appeal of LFS is
that you install only what you need and this book aims to reflect
that. A lot of the tests as well aren't involved with critical
components of the system but rather graphical binaries. If you
wish to do test suites, BLFS has good instructions for them and
covers all the required dependencies. However, some packages
such as <xref linkend="gnat"/> have test suite instructions due
to their system critical nature and if things go wrong can render
your system unusable in some cases.
</para>
</sect2>
</sect1>