chore: scaffold flake + settings + entry-point quartet
Single-source-of-truth pattern: settings.nix threads identity, host, and remote topology into every module via specialArgs. configuration.nix and home.nix stay thin import-lists so module composition is obvious. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
677b8c7c27
commit
3f528623b3
4 changed files with 208 additions and 0 deletions
34
home.nix
Normal file
34
home.nix
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
# lnbits-sensei — home-manager user config.
|
||||
#
|
||||
# Placeholder shell. Substantive home-manager wiring (shell, editor,
|
||||
# git identity, dev shell aliases) lands in follow-up passes once the
|
||||
# module skeleton settles.
|
||||
{
|
||||
config,
|
||||
pkgs,
|
||||
lib,
|
||||
settings,
|
||||
osConfig,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
home.username = settings.user;
|
||||
home.homeDirectory = "/home/${settings.user}";
|
||||
|
||||
# State version pins the schema of files this generation produces.
|
||||
# Match the NixOS stateVersion in configuration.nix.
|
||||
home.stateVersion = "24.11";
|
||||
|
||||
# Git identity is sourced from settings.nix so it is set exactly once
|
||||
# for the whole host.
|
||||
programs.git = {
|
||||
enable = true;
|
||||
userName = settings.gitName;
|
||||
userEmail = settings.gitEmail;
|
||||
};
|
||||
|
||||
# Future passes: shell prompt, editor, lnbits dev shell aliases,
|
||||
# direnv integration, tmux launcher, etc. Keep this file thin and
|
||||
# delegate behaviour to modules/.
|
||||
}
|
||||
Reference in a new issue