Commit Graph

27118 Commits

Author SHA1 Message Date
Bruce Dubbs
dbcdcdf9af Fix md5sum for gcc in grub-efi 2023-07-31 10:08:36 -05:00
Xi Ruoyao
b18a8f667e
libusb: Reword the kernel configuration 2023-07-31 21:44:38 +08:00
Xi Ruoyao
cddcdb1411
treewide: The remaining of kernel configuration rendering 2023-07-31 21:44:38 +08:00
Xi Ruoyao
1cf243636e
introduction: Use new kernel configuration rendering in conventions 2023-07-31 21:44:38 +08:00
Xi Ruoyao
0add36657c
networking: Use new kernel configuration rendering 2023-07-31 21:44:38 +08:00
Xi Ruoyao
c41cafb3bc
kernel-config: Add color for hotkey
Align with recent LFS change.  Regenerate all kernel.xml files.
2023-07-31 21:44:37 +08:00
Xi Ruoyao
e7cd19a120
general: Use new rendering method for kernel configuration
It's almost a plain "conversion".  Exceptions:

- In elogind, [CGROUPS] is dropped because it's in LFS now.
- In libusb, move the kernel configuration to match the layout of other
  packages.
2023-07-31 21:44:37 +08:00
Xi Ruoyao
2fbed8076c
kernel-config: Fix a bug causing some menu not rendered
For example:

    menu "Power management and ACPI options"

    config ARCH_SUPPORTS_ACPI
        bool

    config ACPI
        bool
        depends on ARCH_SUPPORTS_ACPI
	prompt "ACPI (Advanced Configuration and Power Interface) Support"

    endmenu

If ACPI=y, we need to "backward propagate" it to ARCH_SUPPORTS_ACPI, in
order to further mark the menu used.  Otherwise the ACPI menu won't show
up.
2023-07-31 21:44:37 +08:00
Xi Ruoyao
14176436f0
kernel-config: Update the script
1. Don't throw unspecified entries too early.  Doing so caused various
   rendering glitches.  And we can now also check if an entry is
   selected but it's parent not.
2. "menu"s in Kconfig can also have dependencies...

Some pre-existing .toml data files are found problematic after the
change, fix them and regenerate all rendered -kernel.xml files.
2023-07-31 21:44:37 +08:00
Xi Ruoyao
08c3c25204
pm-utils: Discourage using it on systemd
Not sure if we should hide this page at all if REV=systemd.
2023-07-31 21:44:37 +08:00
Xi Ruoyao
c1beec5499
lm_sensors: Modernize, and use new rendering for kernel configuration
I believe the book documented how to configure the sensors in 1990s.
Let's document some modern thing instead.
2023-07-31 21:44:37 +08:00
Xi Ruoyao
9cc0aba5bb
postlfs: Convert the remaining kernel configuration to new rendering 2023-07-31 21:44:37 +08:00
Xi Ruoyao
7ebdf4e9f5
firmware: Use new kernel configuration rendering 2023-07-31 21:44:37 +08:00
Xi Ruoyao
ece1f60ddb
firmware: Update NVIDIA firmware info
1. It does not make sense to tell the users "enable CONFIG_DRM_NOUVEAU"
   here.  It's the kernel driver needs the firmware, not the opposite.
   So drop the kernel configuration section here.
2. Port the script to Python 3.  I've checked the md5sums of the output
   binaries and they are same with the original version.
3. Bump the NVIDIA driver blob version.  If the blob is not downloaded
   or extracted, the script will tell to download 340.32, so we use the
   same version to avoid confusion.
4. Update nouveau wiki link.
2023-07-31 21:44:37 +08:00
Xi Ruoyao
4e37f01a45
kernel-config: Do not include kernel version in every generated file
This is stupid and it will cause meaningless diffs in version control
(like this commit does :( ).

Remove the kernel version from the generated XML files.  Add
kernel.version file into git to track the kernel version.
2023-07-31 21:44:37 +08:00
Xi Ruoyao
d67d543479
filesystems: Convert the remaining kernel configurations to use new rendering
I don't know these FS very well so I did not change things, except:

- "SCSI_LOW_LEVEL" should be "SCSI_LOWLEVEL" (without the "_" between
  "LOW" and "LEVEL").
- RAID append mode is deprecated, so I removed it.

And I've fixed some issues in kernel-config.py as well.
2023-07-31 21:44:36 +08:00
Xi Ruoyao
921c13a021
ntfs-3g: Use new kernel configuration rendering
and clarify the condition where CONFIG_FUSE is needed.
2023-07-31 21:44:36 +08:00
Xi Ruoyao
185ffd913f
kernel-config: Allow specifying non-module style forcing for tristate
instead of relying on unsound heuristic.
2023-07-31 21:44:36 +08:00
Xi Ruoyao
4955b595ba
fuse: Use new kernel configuration rendering
And fix the test command, simplify the doc install command, document a
mysterious test failure.
2023-07-31 21:44:36 +08:00
Xi Ruoyao
2d9bcc8c4d
dosfstools: Use new kernel configuration rendering, and ...
clarify the rationale of the package and kernel support.

Note that we actually do not need this package if we only need to mount
FAT fs, not create or check or relabel it.
2023-07-31 21:44:36 +08:00
Xi Ruoyao
10b89821d1
grub-setup: Add kernel configuration into index 2023-07-31 21:44:36 +08:00
Xi Ruoyao
6af847b8dd
uefi: Use new kernel config
Fix an issue causing kernel-config.py not to process indented "source"
directive in Kconfig for this.
2023-07-31 21:44:36 +08:00
Xi Ruoyao
c36db1c461
Convert the remaining of X to use the new kernel-config system 2023-07-31 21:44:36 +08:00
Xi Ruoyao
d9e1464442
.gitignore: Don't ignore generated kernel configuration
We don't expect every editor to run kernel-config.py!
2023-07-31 21:44:36 +08:00
Xi Ruoyao
831ba20acd
kernel-config: Handle if/endif pairs in Kconfig, and allow to set "forced" attribute for options
For example, CONFIG_INPUT is forced w/o CONFIG_EXPERT.

libevdev kernel section needs these features to be rendered
successfully.
2023-07-31 21:44:36 +08:00
Xi Ruoyao
5ca8d70839
kernel-config: Allow setting comments for options, and convert Mesa 2023-07-31 21:44:35 +08:00
Xi Ruoyao
604355989a
Add kernel-config infrastructure
The kernel-config.py script takes a toml file containing a set of
kernel configuration key-value pairs.  Then it parses the Kconfig files
in a kernel source tree and render the given configuration as a
LFS-style <screen> in a separate XML file.  The XML file can be used in
the book with xinclude.

Some "features":

1. The lines are limited to 80 columns.
   If the text of the configuration option is too long, it will be
   trimmed; if the symbolic name of the option cannot fit in this line,
   a separate line will be used for it.
2. If a configuration option is given but it does not exist in Kconfig
   files, the script will abort immediately.  This helps catching
   removed options.
3. The script also aborts immediately if a configuration option is
   illegal, for example setting an option to 'M' while it cannot be a
   module.
4. The infrastructure is not wired into the main Makefile.  It's because
   not all editors have the latest kernel tree, and even if they do the
   locations of the kernel tree are still different.  To update the
   generated XML files, use
   "make -C kernel-config KERNEL_TREE=/sources/linux-x.y.z".

Backword incompatible change:

The script no longer outputs "CONFIG_" prefix for the symbolic name.  It
really does not make too much sense to waste 7 characters here because
it's a common prefix for all options!

A limitation:

The script does not really validate the configuration.  Generally
validating the configuration requires to solve the 3-CNF-SAT problem,
which is NP-complete.
2023-07-31 21:44:35 +08:00
Ken Moffat
11c720a621 Update to dvisvgm-3.1. 2023-07-30 23:23:02 +01:00
Bruce Dubbs
4b4ff5c890 PAckage updates.
Update to pipewire-0.3.76.
Update to mlt-7.18.0.
2023-07-30 16:46:03 -05:00
Bruce Dubbs
3cf047576f Update to gspell-1.12.2. 2023-07-30 16:28:11 -05:00
Bruce Dubbs
5864a1662c Update to gcc-13.2.0. 2023-07-30 16:15:35 -05:00
Xi Ruoyao
dfb8390cea
systemd: Update to systemd-254 2023-07-29 10:34:02 +08:00
Bruce Dubbs
cabcb6b9a2 Update to btrfs-progs-v6.3.3. 2023-07-28 13:58:41 -05:00
Douglas R. Reno
d7cb9192cc Update to nss-3.92 2023-07-28 13:44:57 -05:00
Douglas R. Reno
1c19af5d1a Update to sphinx-7.1.1 (Python Module) 2023-07-28 12:11:37 -05:00
Douglas R. Reno
5ac273f689 Update to python-dbusmock-0.29.1 (Python Module) 2023-07-28 12:11:37 -05:00
Bruce Dubbs
6886d518bc Typos 2023-07-28 12:10:23 -05:00
Bruce Dubbs
1ff589706d Update to umockdev-0.17.18 2023-07-27 11:26:11 -05:00
Xi Ruoyao
bc1414a348
p11-kit: Apply an upstreamed fix
The issue is a new regression in 0.25.0, and it's causing test failures
in glib-networking and libsoup.

We know we are on Linux so we don't need the fancy #ifdef stuff, so we
can simplify the change into a sed.
2023-07-27 14:53:05 +08:00
Xi Ruoyao
e9aa209b00
umockdev: Remove unneeded PATH addition for test
Now udevadm is in /usr/bin for both LFS SysV and LFS Systemd.
2023-07-27 14:20:16 +08:00
Douglas R. Reno
d26b2db100 Update to gexiv2-0.14.2 2023-07-26 13:08:20 -05:00
Douglas R. Reno
3a001df828 Update to cmake-3.27.1 2023-07-26 13:02:35 -05:00
Douglas R. Reno
f223225246 Update to curl-8.2.1 (Security Update) 2023-07-26 12:47:37 -05:00
Xi Ruoyao
7affde51e6
xorg-config: Further refine the condition where vga_arbiter is needed
Let's stop people from messing with vga_arbiter because they have two
state-of-art NVIDIA or AMD GPUs.
2023-07-26 17:58:30 +08:00
Xi Ruoyao
1473268a08
xorg-config: Remove xf86-video-* remnant from PRIME configuration
Hmm, it may be hard to distinguish two "modesetting"s here.  But anyway
this command is said to be unnecessary with the modesetting driver.
2023-07-26 17:03:45 +08:00
Xi Ruoyao
9871a7a6a8
xorg-config: Update the DRI checking example after xf86-video-* removal 2023-07-26 16:46:23 +08:00
Xi Ruoyao
4ada352178
xorg-config: Some reword about the TearFree control
1. Move the configuration file into /etc, to be consistent with other
   configuration files created in BLFS.
2. We no longer need a separate "configure the graphic card" example
   because the TearFree configuration file is already a good example.
3. Tearing issue is really not new after xf86-video-* removal.  In some
   xf86-video-* drivers a TearFree option is available but rarely
   enabled by default (only the amdgpu driver when the output is rotated
   or transformed).  So this is actually the first time we document it
   in BLFS.
4. It's really not difficult to observer the tearing by dragging a
   window in twm, despite twm only renders the window border during
   dragging.
2023-07-26 16:04:06 +08:00
Xi Ruoyao
2ac99448b1
xorg-config: Remove "AIGLX error" section
With modesetting driver, $HOME/.local/share/xorg/Xorg.0.log contains:

    [ 65817.713] (II) AIGLX: Loaded and initialized crocus

And there is no more "AIGLX error" messages.
2023-07-26 16:04:05 +08:00
Xi Ruoyao
1903174c9f
twm: Comment out xorg-legacy dependency
I really don't understand what it is for.  And I can run twm without it.

If someone has a good reason to use legacy fonts, please revert, but you
should at least consider marking it runtime and maybe demoting it to
optional.
2023-07-26 16:04:05 +08:00
Bruce Dubbs
bf800e6cca Update to qca-2.3.7. 2023-07-25 14:05:58 -05:00