# 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); }; }