Set up the repo layout (.chezmoiroot -> home/) and import the existing metapac configuration from ~/.config/metapac. Machines are described once in home/.chezmoidata/hosts.toml; that registry drives both chezmoi templating (exposed as .host) and metapac's hostname_enabled_backends / hostname_groups tables. Adding a machine is a single entry there. Each host also carries a baseline group, groups/hosts/<hostname>.toml, generated from `metapac unmanaged`. metapac treats any explicitly-installed package absent from the group files as unmanaged, and `metapac clean` uninstalls unmanaged packages -- without a baseline it would offer to remove base, sudo, linux-cachyos, linux-firmware, mkinitcpio and limine among 266 others. config.toml.tmpl prepends hosts/<hostname> to every host's group list so the baseline cannot be forgotten; a host missing one fails loudly, naming the path to create. macOS hosts get a symlink from ~/Library/Application Support/metapac to ~/.config/metapac so one set of group files serves every platform. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
22 lines
485 B
TOML
22 lines
485 B
TOML
arch = {
|
|
packages = [
|
|
"discord",
|
|
"steam",
|
|
|
|
# proton
|
|
"proton-ge-custom-bin",
|
|
"umu-launcher",
|
|
"lutris",
|
|
|
|
# for games-screenshot-manager
|
|
{
|
|
name = "go",
|
|
hooks = {
|
|
after_sync = [
|
|
"go", "install", "github.com/fmartingr/games-screenshot-manager/cmd/games-screenshot-manager@latest"
|
|
]
|
|
}
|
|
},
|
|
"perl-image-exiftool",
|
|
]
|
|
}
|