Dotfiles integration: modules/user/dotfiles.sh #2

Merged
yuri merged 2 commits from feat/dotfiles-integration into main 2026-10-27 12:49:54 +01:00
Owner

New optional module that clones yuri/fedora-dots (bare) into ~/.cfg.git and checks it out into $HOME.

  • Menu question (default: no) + --dotfiles=yes|no flag
  • Idempotent: skips when ~/.cfg.git exists
  • Graceful on an empty dotfiles repo
  • Uses --bare clone (plain clone breaks the git-dir alias - proven)

Tested via stub harness + real git: checkout lands tracked files, existing ~/.cfg.git untouched, default does not clone.

New optional module that clones yuri/fedora-dots (bare) into ~/.cfg.git and checks it out into $HOME. - Menu question (default: no) + --dotfiles=yes|no flag - Idempotent: skips when ~/.cfg.git exists - Graceful on an empty dotfiles repo - Uses --bare clone (plain clone breaks the git-dir alias - proven) Tested via stub harness + real git: checkout lands tracked files, existing ~/.cfg.git untouched, default does not clone.
yuri added 1 commit 2026-10-27 12:25:32 +01:00
New modules/user/dotfiles.sh behind a menu question ('Clone personal
dotfiles?', default no) and --dotfiles=yes|no flag.

Does a --bare clone of yuri/fedora-dots into ~/.cfg.git, checks the repo
out into $HOME with status.showUntrackedFiles=no, and handles an empty
repo gracefully (configures the alias, skips checkout). Existing
~/.cfg.git is left untouched (idempotent).

Fix proven in the harness: the module originally used a plain git clone,
which creates a working copy and breaks the git-dir alias — the same
failure YuKu hit manually; --bare is required.
Dispatch runs the dotfiles module before DE/TWM so configs are in place
when sessions are installed.
yuri added 1 commit 2026-10-27 12:37:30 +01:00
- On btrfs, snapshots + zstd compression now just happen (no prompt);
  --snapper=no remains the explicit opt-out.
- Vendor scripts/snapper-*.sh + config/snapper.actions from
  SysGuides/sysguides-snapper-fedora (MIT, upstream 0a28eb4) into
  vendor/snapper/ and install from there — no runtime clone of an
  external repo, and no dependency on exec bits (fixes the
  './install.sh: Permission denied' failure seen on the test VM).
- grub-btrfs still cloned at runtime from Antynea/grub-btrfs with the
  Fedora config applied; everything else is local now.
yuri merged commit 525537c929 into main 2026-10-27 12:49:54 +01:00
Sign in to join this conversation.
No Reviewers
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: yuri/fedora#2