aboutsummaryrefslogtreecommitdiff
path: root/home/rices/schrottkatze/niri.nix
diff options
context:
space:
mode:
Diffstat (limited to 'home/rices/schrottkatze/niri.nix')
-rw-r--r--home/rices/schrottkatze/niri.nix33
1 files changed, 33 insertions, 0 deletions
diff --git a/home/rices/schrottkatze/niri.nix b/home/rices/schrottkatze/niri.nix
new file mode 100644
index 0000000..a69685f
--- /dev/null
+++ b/home/rices/schrottkatze/niri.nix
@@ -0,0 +1,33 @@
+# this file must only be saved via autosave due to the formatter.
+# else it will be ugly
+{pkgs, lib, ...}: {
+ home.packages = with pkgs; [
+ zenity
+ xwayland-satellite
+ ];
+ home.file."config" =
+ let
+ kdlfiles =
+ builtins.readDir ./niri/kdl
+ |> lib.filterAttrs (key: value: value == "regular")
+ |> lib.mapAttrsToList (filename: _value: "include \"${./niri/kdl}/${filename}\"");
+ startups =
+ [
+ ["eww" "open-many" "topBar" "bottomBar"]
+ ["${pkgs.swaybg}/bin/swaybg" "-i" "${./niri/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; }"
+ "animations { window-open { duration-ms 3000; curve \"linear\"; custom-shader r\"\n${builtins.readFile ./niri/shaders/arc.frag}\";};}"
+ "binds {Mod+Shift+I { spawn \"${./niri/scripts/cpdate.sh}\"; }; }"
+ ];
+ in {
+ target = ".config/niri/config.kdl";
+ text = lib.concatLines (startups ++ kdlfiles ++ other);
+ };
+}