hyprland-community/pyprland

[FEAT] Allow to import additional config files

Closed this issue · 4 comments

Is your feature request related to a problem? Please describe.

I'm using NixOS + home-manager to manage my configurations reproducible. The down-sides is that config files in my home dir are symlinks to the 'nix store' which are read-only. So changing the configuration by just editing pyprland.toml is rather cumbersome.

To compensate I created a folder that contains config files ~/.config/overrides that are not managed by NixOS/ home-manager to allow quick & easy config testing.

Describe the solution you'd like

A config expression, similar to hyprlands source that allows importing additional config files would be the preferred solution.

Describe alternatives you've considered

n/a

Sorry, I struggle to understand the benefit of it.
If your system have some design you want to work around, why not just using a read-write folder to store your config files instead of a read only nix store? I don't get how a "source" or "include" command can solve it better than what is already possible.

Sure, I'm happy to explain :-)

The great thing about NixOS is that it is essentially "OS-as-Code" which combined with git as the source of truth make system and configuration management much more reliable than anything else. Thing ansible or saltstack on steriods - especially: No more configuration drift.

This is achieved by symlinking configuration files into the nix store that is by design read-only.

Pyprland is expanding functionality over time, which I highly appreciate, so there is configuration for my systems that is mature (e.g. scratchpads) while other parts of the config are experimental due to new features or me testing bugs.

A source argument (or the ability to load multiple config files in a pre-defined order) allows to separate (for my use-case) between the mature/static configuration and the testing/developing configuration.

Another benefit would be that it allows to split the configuration into multiple files for readability. E.g. one config file per plugin.

Can you test the git version and provide some feedback ? I only did basic tests...

By the way, did you know there is a --config option ?