1. Allow building without gtk-doc.
2. Run "configure" manually instead of let autogen.sh run it. It's
because autogen.sh sets CFLAGS, producing binaries with optimization
off and debug on. More seriously, the debug feature it uses
(sanitizer) is not suitable for a release build per GCC security
policy.
3. Add a link to the external dependency libdbusmenu.
I've marked most of these as 'role=nodep' so that jhalfs doesn't pick up
multiples in cases where it's not needed.
Transmission, Libreoffice, CMake, Poppler, and Appstream now have Qt6
ports working well.
I have left Qca, gpgme, polkit-qt, and other KDE-related packages alone.
They do have support for Qt6, but we should not list them as they are
incompatible with the Qt5 versions and we could end up causing
unintentional breakage by doing this.
- Make some grammar improvements to the description
- Use &qt5-deps instead of just Qt5, since this package uses qt5-base.
This package will build with the alternate version as well
Note that if you build something relying on $SHELL, it may still fail to
build in chroot.
In the chroot we first use "env -i" to clean the environment variables.
When bash starts with no $SHELL set, it *sets* SHELL=(the login shell
of current user specified in /etc/passwd), but it *does not export this
variable*.
For example:
$ cat > t.c << EOF
#include <stdio.h>
#include <stdlib.h>
int main() { puts (getenv ("SHELL") ?: "(nullptr)"); }
$ ./a.out
/bin/zsh/
$ cc t.c
$ env -i bash -c "echo $SHELL"
/bin/zsh
$ env -i bash -c "./a.out"
(nullptr)
We can remove this now only because Mozilla has added a workaround into
their building system at
https://hg.mozilla.org/mozilla-central/rev/5afe7b911f61 for some Mac
builder, inadvertently fixing our issue.
Link: https://lists.linuxfromscratch.org/sympa/arc/blfs-support/2014-11/msg00050.html
Link: https://lists.linuxfromscratch.org/sympa/arc/blfs-dev/2023-11/msg00136.html
Berkeley DB is some deathware (unless we switch to the Oracle
implementation which may have legal issues) and slated for removal in
the next BLFS release.
Fix up libadwaita to build with it. Update the command explanation to
allow building it with Qt-5. Also fix the errors detected in
org.linuxfromscratch.lfs.xml reported by "appstreamcli validate".
This package actually does not overwrite 50-udev-default.rules, but
70-uaccess.rules needs this option or it'll be inconsistent with LFS
50-udev-default.rules.
This package overwrites some udev rules of udevd from systemd installed
in LFS. Without this option, the udev rule makes /dev/kvm accessible by
every user. While I don't know how to handle the overwriting issue
properly, let's make the permission of /dev/kvm consistent first.
Arch and Gentoo do this for Firefox, Thunderbird, and SpiderMonkey.
I've tested SpiderMonkey with this for a while. I'll enable this
for Firefox and Thunderbird too after testing them.
Sort all the switches (but --prefix) and explanations in alphabetic
order by the way.
In version 23.10, poppler has changed NSS, GPGME, and LIBTIFF from
"macro_optional_find_package" tp "find_soft_mandatory_package". This
means that -DENABLE_NSS3=OFF (or GPGME or LIBTIFF) needs to be passed
to prevent an error if the package is not present. Since those
libraries may be of some use anyway, make them recommended and
document how to disable them.
INFO: pip is looking at multiple versions of
sphinxcontrib-serializinghtml to determine which version is
compatible with other requirements. This could take a while.
ERROR: Could not find a version that satisfies the requirement
Sphinx>=5 (from sphinxcontrib-serializinghtml) (from versions: none)
ERROR: No matching distribution found for Sphinx>=5
INFO: pip is looking at multiple versions of sphinxcontrib-jquery to
determine which version is compatible with other requirements.
This could take a while.
ERROR: Could not find a version that satisfies the requirement
Sphinx>=1.8 (from sphinxcontrib-jquery) (from versions: none)
ERROR: No matching distribution found for Sphinx>=1.8
libxkbcommon-1.6.0 removes some definitions that are unused.
These definitions are referenced in qtbase so we remove them
with a sed for both the full qt5 package and gt5-alternate.
neither firefox nor epiphany can download them, and they are not
well maintained, because rarely tested.
This is WIP because the "(HTTP)" part of "Download (HTTP)" will
need to be removed too.
But let's see what users think first...
Recently, upstream has changed the way Qt5 is detected: if Qt5
is not installed, you have to pass -DENABLE_QT5=OFF, otherwise
cmake stops with an error. Previously, a non present Qt5 was
not fatal. But passing -DENABLE_QT5=OFF when qt5 is installed
prevents building the poppler-qt5 library, which is needed by
okular, one of the main users of poppler.
Until now we had Qt5 as optional, since building full Qt5 for other
users of poppler (mainly inkscape, other users can benefit of qt5)
was kind of overkill. But now we have qt5-alternate, and also
this change in behavior of poppler. So it seems it is acceptable
to have qt5 or qt5-alternate as recommended.