Files
nixy/home/system/hyprland/lib.nix
T
kptltd00m fe508d9cd8 Migrate Hyprland to Lua config, drop dead flake inputs, general cleanup
Hyprland
- Switch wayland.windowManager.hyprland to configType = "lua" (Hyprland 0.56)
- Convert settings, env, monitors, window rules, gesture, animations
  (hl.curve/hl.animation) and all keybinds to hl.* calls
- Add home/system/hyprland/lib.nix with exec/bind/execOnce helpers;
  every exec-once now runs from a hyprland.start hook
- Drop hard-coded default_monitor = "eDP-2"

Flake
- Remove blog, awesome-wallpapers and default-creds inputs (their repos
  no longer ship a flake.nix and broke `nix flake update`), along with
  the server modules and Glance links that used them
- Update flake.lock
- Replace removed `gcr` with `gcr_4`

Fixes
- Point configDirectory at /etc/nixos/nixy on home-pc and thinkpad
- Fix home-pc git email typo
- Remove conflicting openpgp signing format, make pull.rebase a boolean,
  replace hx/peco in git aliases with nvim/sk
- Fix zsh NUL alias (2>&1) and stop forcing bat colors in the cat alias
- Require a password for sudo again (nixos-rebuild stays NOPASSWD)
- Remove duplicate hardware.graphics block from home-pc flake
- Delete unused zen .old files, run alejandra on host files
2026-09-28 18:15:30 +02:00

26 lines
680 B
Nix

# Small helpers for writing the Hyprland Lua config through home-manager's `settings`
{lib}: rec {
inherit (lib.generators) mkLuaInline;
toLua = lib.generators.toLua {};
# hl.dsp.exec_cmd("...")
exec = cmd: mkLuaInline "hl.dsp.exec_cmd(${toLua cmd})";
# hl.bind(keys, dispatcher, opts?)
bind = keys: dsp: opts: {
_args = [keys dsp] ++ lib.optional (opts != null) opts;
};
# Run commands once at compositor start (replacement for `exec-once`)
execOnce = cmds: [
{
_args = [
"hyprland.start"
(mkLuaInline ''
function()
${lib.concatMapStrings (c: " hl.exec_cmd(${toLua c})\n") cmds}end'')
];
}
];
}