nix-configs/modules/desktop/home/niri/default.nix

43 lines
1 KiB
Nix

# this file must only be saved via autosave due to the formatter.
# else it will be ugly
{ pkgs, lib, ... }:
{
home.file."config" =
let
kdlfiles =
builtins.readDir ./kdl
|> lib.filterAttrs (key: value: value == "regular")
|> lib.mapAttrsToList (filename: _value: "include \"${./kdl}/${filename}\"");
startups =
[
[
"eww"
"open-many"
"topBar"
"bottomBar"
]
[
"${pkgs.swaybg}/bin/swaybg"
"-i"
"${./wallpaper.jpg}"
"-m"
"fill"
]
[
"touch"
".config/niri/live.kdl"
]
]
|> map (map (word: "\"${word}\""))
|> map (lib.concatStringsSep " ")
|> map (it: "spawn-at-startup ${it}");
other = [
"include \"live.kdl\""
"output \"eDP-1\" { scale 1.1; }"
];
in
{
target = ".config/niri/config.kdl";
text = lib.concatLines (startups ++ kdlfiles ++ other);
};
}