Alexander Heldt acebeaf180 hyprland: Migrate config to Lua, bump back to current
Hyprland 0.56.x dropped the hyprlang (.conf) config backend in favor
of Lua-only config. Switch configType to "lua" and rewrite monitors,
workspace/window rules, binds, env vars, and autostart using the new
hl.* dispatcher API. Un-pin the hyprland flake input (back to current,
following root nixpkgs) now that the config no longer depends on the
old hyprlang backend.

Every module that injects Hyprland keybinds (foot, wezterm, bemenu,
music, light, sound, screenshot, physlock, hyprlock) is converted to
the same Lua bind syntax, since the config is all-or-nothing per
configType. hyprlock's swayidle dpms toggle and the hyprland-monitors
hotplug script's hyprctl dispatch calls are updated to the new
hl.dsp.* expression syntax the same way.

One behavior change: hl.workspace_rule keeps only the last monitor set
per workspace (unlike hyprlang's rule list), so workspaces that used
to declare two candidate monitors now declare one static default;
the hyprland-monitors service still re-dispatches the correct monitor
on startup and hotplug.
2026-08-26 14:08:28 +02:00
2024-09-02 21:07:34 +02:00
2024-09-02 21:07:34 +02:00

config-manager

./config-manager is a module that contains a script to make usage of this flake easier.

To install it

  1. first add the module to the nixOS system connfiguration
  2. set config-manager.flakePath = <path to this flake>
  3. run nixos-rebuild switch --flake .#<configuration> after that cm will be available on $PATH.

Secrets

Secrets are managed by agenix (https://github.com/ryantm/agenix).

Creating new secrets

  1. Update secrets/secrets.nix with the new secret.

  2. When inside ./secrets:

EDITOR=vim agenix -e "some-secret.age"

This will create a new secret. To view its content one can do:

EDITOR=vim agenix -d "some-secret.age" -i ~/.ssh/alex.pinwheel

Or use some other SSH key that is has been used to key the secret.

Test VM

Build the test VM with the command:

cm  --build-test-vm

and test it with:

cm  --run-test-vm
S
Description
No description provided
Readme
1.6 MiB
Languages
Nix 76.4%
HTML 20.1%
Shell 3.5%