Initially, I was using a weird combination of options in order to apply
my theme dynamically. I was setting a read-only option from inside my
modules, which was then used in every application that required it. What
I ended up doing is refactoring everything in order to be inside of my
theme module, and automatically configured when enabled, without doing
any mkMerge/mkIf shenanigans in my other pieces of configuration. This
is healthier, although it should be split up as the theme/default.nix
got quite big.
Implemented notifications with SwayNotificationCenter, as well as theming using
the custom theme module. Some Waybar code had to be updated too, and was
also simplified in order to be more consistent with the new
SwayNotificationCenter implementation.
I decided to refactor how the theme module works. The idea is, that I
wanted originally a module that I could give a base16 scheme name to,
and use that globally in my config. However, scheme only took the base16
scheme name without any checks, which was pretty bad. I ended up
creating a new option, schemeName, that scheme is computed from. It then
makes the whole configuration cleaner, and avoids long inputs
interpolations with the scheme name.
commit f60d03acf6
Author: Anthony Rodriguez <anthony@nezia.dev>
Date: Mon Oct 21 16:02:55 2024 +0200
flake: update dependencies
commit 8c3cd9631a
Author: Anthony Rodriguez <anthony@nezia.dev>
Date: Mon Oct 21 15:49:07 2024 +0200
repo: move common home packages into home/default.nix
commit aa46aa0762
Author: Anthony Rodriguez <anthony@nezia.dev>
Date: Mon Oct 21 15:34:23 2024 +0200
repo: refactor to remove home/profiles
Removed the profiles directory in home, as I thought it was redundant:
they had the same name as my hostnames, as all my machines are
single-user only. Therefore, everything is now under its own
hosts/{hostname}, and flake.nix just has to import hosts/default.nix
like it did before.