Commit graph

7 commits

Author SHA1 Message Date
ec285bcc52
treewide: config/nixos/programs -> modules/nix/programs
Here, we also use the option we just added, `local.modules.hyprland.enable` to toggle Hyprland, as well as the profiles. Also removed other unused configuration, such as KDE/Gnome.
2025-01-14 14:18:55 +01:00
76a2caa9c7
options/modules: add options for Hyprland 2025-01-14 14:18:54 +01:00
7d1baf7eb5
options: use mkIf for assertions 2025-01-14 12:33:41 +01:00
65ea8beba0
options: remove isServer since we have server profile 2025-01-14 12:30:19 +01:00
7906864ae1
options/profiles: add laptop profile 2025-01-14 12:30:19 +01:00
b89a42ef13
modules/options: add profiles
The next step in the refactoring is to add different profiles, so that
we may toggle them easily in our hosts. Here's the profiles I went for:

- desktop: enables everything a desktop computer needs (graphics,
productivity apps, base apps such as browsers...)
- gaming: enables gaming configurations (steam, gamescope...)
- server: enables server configurations (website hosting, git forge...)

I made sure the server profile can not be enabled if desktop/gaming are
enabled, as it would not make sense to have desktop applications and
configurations on a server.
2025-01-14 11:59:59 +01:00
bb55875491
treewide: move shared/nixosModules to modules
The idea of this refactor is, as the configuration is getting bigger and
more complex, to move everything into a local modules system. The idea
is to simplify hosts declaration and add a new layer of abstraction to
avoid the long and redundant imports in hosts/default.nix, that I am
currently using.

First, we're going to move everything to the modules directory, and
split options from the proper configuration. That allows us to have an
easier time understanding how the options are structured, as they will
follow the directory structure and won't be mixed with the module
configuration.
2025-01-14 10:56:34 +01:00