-
Notifications
You must be signed in to change notification settings - Fork 1
Open
Description
Improve setup parity between distro-specific setup-system scripts
Problem
The scripts/setup-system-*.tmpl scripts have significant inconsistency in what they configure:
Chimera (~111 lines):
- Full system config: shell, locales, services (syslog, dhcp, bluetooth)
- Desktop environment (GNOME, flatpak)
- Development tools (clang, cmake, cargo, go)
- Containers (podman)
- CLI tools (wget, tmux, uv, jq, fzf, ripgrep, fd, eza, bat, delta, gh, jj, restic, etc.)
Arch (~80 lines):
- System config: locales, timezone, staff group, keyring
- SSH/mDNS setup
- Basic packages (vi, zsh, which, xz, wget, unzip)
- Console font (bare-metal only)
Debian/Ubuntu (~25 lines):
- Only:
xz-utils,zsh
Fedora (~23 lines):
- Only:
xz,zsh,neovim
Expected Behavior
All distros should provide comparable base functionality:
- System configuration (locales, timezone, groups)
- Shell setup (zsh)
- Essential tools (vi/neovim, xz, wget, unzip)
- SSH configuration (where applicable)
- Platform-specific adjustments (WSL vs bare-metal)
Optional features should be consistently handled via flags (.coding, .containers, .headless).
Tentative Plan
- Document what each script currently does
- Define a "base set" of functionality all distros should provide
- Standardize conditional logic (WSL, ephemeral, coding, containers, headless)
- Update minimal scripts (Debian/Ubuntu/Fedora) to match Arch/Chimera patterns
- Consider extracting common setup into
setup-system-linux.tmplwhere possible
Related
- Arch improvements in Update arch setup, particularly for WSL #26 could serve as a template for other distros
- Chimera setup demonstrates comprehensive capability coverage and good script structure (os-install/setup-root separation)
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels