[Git-commits] [grml/grml-live] 257ace: Fix symlink preservation in language configuration...

Chris Hofstaedtler noreply at github.com
Wed Jun 18 20:35:46 CEST 2025


  Branch: refs/heads/zeha/langkbd
  Home:   https://github.com/grml/grml-live
  Commit: 257ace5db359f31f5531fc3ec32c6039b1999438
      https://github.com/grml/grml-live/commit/257ace5db359f31f5531fc3ec32c6039b1999438
  Author: Chris Hofstaedtler <ch at grml.org>
  Date:   2025-06-18 (Wed, 18 Jun 2025)

  Changed paths:
    M config/files/GRMLBASE/usr/bin/grml-lang
    M config/files/GRMLBASE/usr/sbin/grml-setlang
    M config/files/GRMLBASE/usr/share/grml-autoconfig/autoconfig.functions

  Log Message:
  -----------
  Fix symlink preservation in language configuration tools

At runtime, /etc/default/locale starts as a symlink to /etc/locale.conf (created
by systemd and locales packages). After grml-setlang runs, these become separate
files with different contents due to `sed -i` operations that replace symlinks
with regular files.

**Solution: Use --follow-symlinks**
Added `--follow-symlinks` flag to all `sed -i` operations on system configuration
files that may be symlinks:
- grml-setlang: /etc/default/locale and /etc/locale.gen operations
- grml-lang: /etc/default/keyboard operations
- autoconfig.functions: /etc/inittab and /etc/X11/Xwrapper.config operations

This ensures sed operates on the target file rather than replacing the symlink.

**Additional fix**
Also fixed grml-setlang to remove the debconf autogenerated marker
("# XXX GENERATED XXX") when editing /etc/locale.gen, in addition to
the existing grml-live marker removal.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply at anthropic.com>


  Commit: 5b5bd98e36baa40d747eb726159c4637569e4f95
      https://github.com/grml/grml-live/commit/5b5bd98e36baa40d747eb726159c4637569e4f95
  Author: Chris Hofstaedtler <ch at grml.org>
  Date:   2025-06-18 (Wed, 18 Jun 2025)

  Changed paths:
    M config/files/GRMLBASE/etc/locale.gen

  Log Message:
  -----------
  Add locales for all grml-lang supported languages to avoid boot delays

grml-lang claims to support: at, ch, de, dvorak, es, fr, it, jp, uk, us
However, only en_US.UTF-8 was pre-generated in GRMLBASE, causing long boot delays
when users select other languages due to runtime locale generation.

**Solution: Pre-generate supported locales**
Added all corresponding locales to config/files/GRMLBASE/etc/locale.gen:
- de_AT.UTF-8 (at - Austrian)
- de_CH.UTF-8 (ch - Swiss)
- de_DE.UTF-8 (de - German)
- en_GB.UTF-8 (uk - British)
- en_US.UTF-8 (us/dvorak - American, already present)
- es_ES.UTF-8 (es - Spanish)
- fr_FR.UTF-8 (fr - French)
- it_IT.UTF-8 (it - Italian)
- ja_JP.UTF-8 (jp - Japanese)

These locales are now generated during build time instead of boot time,
eliminating the delay when users configure language settings.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply at anthropic.com>


Compare: https://github.com/grml/grml-live/compare/05bc99b8d71c...5b5bd98e36ba

To unsubscribe from these emails, change your notification settings at https://github.com/grml/grml-live/settings/notifications


More information about the Git-commits mailing list