Split generated Kitty and StumpWM settings into include fragments #1

Open
opened 2026-08-17 04:34:26 +00:00 by htayj · 0 comments
htayj commented 2026-08-17 04:34:26 +00:00 (Migrated from github.com)

Goal

Replace the current whole-file computed-file concatenation for Kitty and StumpWM with small Guix-generated include fragments.

Rationale

generated-kitty-config and generated-stumpwmrc currently prepend generated text and copy the complete tracked source into a new store item. This is valid Guix, but both applications support loading another configuration file, so only the values owned by Guix need to be generated.

Proposed implementation

  • Generate ~/.config/kitty/guix-generated.conf with plain-file.
  • Add include guix-generated.conf to the tracked Kitty configuration.
  • Generate ~/.stumpwm.d/guix-generated.lisp with plain-file.
  • Load that fragment near the beginning of the tracked .stumpwmrc.
  • Return the main Kitty and StumpWM files to ordinary dotfile deployment.
  • Remove generated-kitty-config, generated-stumpwmrc, their whole-file service entries, and the corresponding dotfile exclusions.
  • Preserve %primary-font as the shared source of the generated font family.

Do not replace the concatenation with mixed-text-file plus local-file: a file-like object there expands to its store pathname, not its contents.

Acceptance checks

  • guix home build --dry-run and Home reconfiguration succeed.
  • Kitty parses the resulting configuration without bad lines and resolves all faces to Unscii.
  • StumpWM loads the generated fragment and retains the configured primary font.
  • Editing either tracked main configuration causes only its own dotfile store item to change, not a generated concatenated copy.

Imported from GitHub issue/PR. Originally posted by htayj on 2026-08-17T04:34:26Z.

## Goal Replace the current whole-file `computed-file` concatenation for Kitty and StumpWM with small Guix-generated include fragments. ## Rationale `generated-kitty-config` and `generated-stumpwmrc` currently prepend generated text and copy the complete tracked source into a new store item. This is valid Guix, but both applications support loading another configuration file, so only the values owned by Guix need to be generated. ## Proposed implementation - Generate `~/.config/kitty/guix-generated.conf` with `plain-file`. - Add `include guix-generated.conf` to the tracked Kitty configuration. - Generate `~/.stumpwm.d/guix-generated.lisp` with `plain-file`. - Load that fragment near the beginning of the tracked `.stumpwmrc`. - Return the main Kitty and StumpWM files to ordinary dotfile deployment. - Remove `generated-kitty-config`, `generated-stumpwmrc`, their whole-file service entries, and the corresponding dotfile exclusions. - Preserve `%primary-font` as the shared source of the generated font family. Do not replace the concatenation with `mixed-text-file` plus `local-file`: a file-like object there expands to its store pathname, not its contents. ## Acceptance checks - `guix home build --dry-run` and Home reconfiguration succeed. - Kitty parses the resulting configuration without bad lines and resolves all faces to Unscii. - StumpWM loads the generated fragment and retains the configured primary font. - Editing either tracked main configuration causes only its own dotfile store item to change, not a generated concatenated copy. --- Imported from [GitHub issue/PR](https://github.com/htayj/dotfiles/issues/1). Originally posted by [htayj](https://github.com/htayj) on 2026-08-17T04:34:26Z.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
tay/dotfiles#1
No description provided.