feat: home configurations without hostname
This PR will be marked as draft until there's consensus on what the right design is and a solid implementation for it. This PR only exists since I needed a place to put the to-do list, and since the feature probably be merged in some form eventually :)
This might not be the final form this takes, so I'm not going to describe it in detail in the PR. The commit descriptions will be up to date.
To-do:
- [ ] Improve let-binding naming
- [ ] Verify generic home configs will warn users without a home-manager input
- [ ] Add test cases
See #74 for design considerations
Reviewers, how do you feel about the design? This PR exposes a users attrset to home modules. Do you think that's necessary or should users keep using homeModules for shared configuration?
My thinking here is that the users folder should be used for shared home configuration that isn't exposed as part of the flake's public interface.
by the way, i dont know if you have added this, but if users.foo for example gets imported in /hosts/foo/users/bar.nix the home.homeDirectory might be set to /home/foo but it should be /home/bar
@JumpIn-Git HM handles this already based on the home-manager.users attrset :)