numtide / blueprint

Nix without the glue code
40 stars 3 forks source link

Add separation for user specific configuration? #24

Closed rvveber closed 2 months ago

rvveber commented 2 months ago

How will blueprint solve the problem of user-specific configuration?

Let's say, i'm adding Hyprland to my nixos configuration. For configuring it, it expects to have a user config in ~/.config/hypr/hyprland.conf.

We can't do this system-wide - we have to do this per user.

But, for example, what if i want to add modules like "themes" that enable a desktop-manager and automatically set a bunch of style options. We would need to configure some stuff per-user, but ideally only have a system-module.

This is my problem atm, the only possible option, is, to introduce a differentiation between system and user modules. But import both, to make it work as a theme.

Could blueprint solve this issue? Is there even an elegant solution to this?

rvveber commented 2 months ago

Apparently, Home-Manager has something called "home-manager.sharedModules". With which this problem can be solved, it manages configuration on systemlevel for all users, regardless who they are.

This is a good solution for my usecase, but it would probably still make sense to think about separating settings that really are per user, out of the host configurations.