Adopt Home Manager; manage starship, nix.conf, and opencode config
This commit is contained in:
@@ -0,0 +1,49 @@
|
||||
# nix-clanker-vm
|
||||
|
||||
Nix configuration for this host (a Debian VM with standalone Nix).
|
||||
|
||||
## What's here
|
||||
|
||||
- `flake.nix` — root flake: aggregates packages and the Home Manager config.
|
||||
- `tinfoil-proxy/` — self-contained flake packaging `tinfoil-proxy` (Go).
|
||||
- `home/` — Home Manager configuration (user `user`): bash, shell env,
|
||||
starship (declarative init), user-level nix.conf, installed packages
|
||||
(opencode), managed opencode config.
|
||||
- `config/nix.conf` — source of truth for Nix settings (`sandbox`, flakes).
|
||||
- `config/starship.toml` — the host's starship preset (nerd-font-symbols).
|
||||
- `config/opencode.jsonc` — global opencode config, managed via `home.file`.
|
||||
- `install.sh` — applies `config/nix.conf` system-wide (sudo, backs up).
|
||||
|
||||
## Apply
|
||||
|
||||
```sh
|
||||
sudo ./install.sh # update /etc/nix/nix.conf
|
||||
home-manager --flake ~/nix#user switch
|
||||
```
|
||||
|
||||
The user-level `~/.config/nix/nix.conf` is managed by Home Manager via
|
||||
`home.file` in `home/default.nix`; the shell environment is owned by
|
||||
`programs.bash` (plus `hm-session-vars.sh`).
|
||||
|
||||
## Build
|
||||
|
||||
```sh
|
||||
nix build ~/nix
|
||||
nix build ~/nix/tinfoil-proxy
|
||||
```
|
||||
|
||||
## Push to Codeberg
|
||||
|
||||
```sh
|
||||
git remote add origin git@codeberg.org:kawaiipunk/nix-clanker-vm.git
|
||||
git branch -M main
|
||||
git push -u origin main
|
||||
```
|
||||
|
||||
## Notes
|
||||
|
||||
- `sandbox = true` is a restricted setting; when supplied from the user-level
|
||||
config it is ignored with a warning (the daemon enforces it from
|
||||
`/etc/nix/nix.conf`). This is cosmetic.
|
||||
- Existing pre-Home-Manager dotfiles were moved to `~/.bashrc.backup` and
|
||||
`~/.profile.backup` during the first switch.
|
||||
Reference in New Issue
Block a user