aboutsummaryrefslogtreecommitdiffstats
path: root/hm/soispha/wms/river/default.nix
diff options
context:
space:
mode:
authorSoispha <soispha@vhack.eu>2023-08-26 23:42:21 +0200
committerSoispha <soispha@vhack.eu>2023-08-26 23:42:21 +0200
commit3f600ab07dbad3b6dd7655587ddea158b19aea71 (patch)
tree7164ccd965e1d14ade970aeb8eb188b1442a6c91 /hm/soispha/wms/river/default.nix
parentStyle(treewide): Format all lua-files makes lua ➛ nix easier (diff)
downloadnixos-config-3f600ab07dbad3b6dd7655587ddea158b19aea71.zip
Refactor(treewide): Abbreviate path names
Diffstat (limited to 'hm/soispha/wms/river/default.nix')
-rw-r--r--hm/soispha/wms/river/default.nix68
1 files changed, 68 insertions, 0 deletions
diff --git a/hm/soispha/wms/river/default.nix b/hm/soispha/wms/river/default.nix
new file mode 100644
index 00000000..d8bc4009
--- /dev/null
+++ b/hm/soispha/wms/river/default.nix
@@ -0,0 +1,68 @@
+{
+ pkgs,
+ sysLib,
+ river_init_lesser,
+ nixosConfig,
+ system,
+ ...
+}: let
+ inherit (nixosConfig.networking) hostName;
+ mappings =
+ if hostName == "tiamat"
+ then ''
+ err_fail riverctl keyboard-layout 'us'
+ err_fail river_init_lesser ~/.config/river/res/moonlander.ron
+ ''
+ else if hostName == "lahmu" || hostName == "apzu" || hostName == "mammun" || hostName == "isimud"
+ then ''
+ err_fail riverctl keyboard-layout 'us(dvorak)'
+ err_fail river_init_lesser ~/.config/river/res/keys.ron
+ ''
+ else builtins.throw "Host not covered in river mappings";
+ screen_setup =
+ if hostName == "lahmu"
+ then ''
+ err_fail wlr-randr --output Virtual-1 --mode 1920x1080
+ ''
+ else if hostName == "tiamat"
+ then ''
+ err_fail wlr-randr --output DP-2 --pos 2560,0
+ err_fail wlr-randr --output DP-1 --scale 1.5 --pos 0,0
+ err_fail gammastep &
+ ''
+ else if hostName == "apzu" || hostName == "mammun" || hostName == "isimud"
+ then ''
+ err_fail gammastep &
+ ''
+ else builtins.throw "Host not covered in river screen setup";
+ init_scr = pkgs.substituteAll {
+ src = ./init;
+ inherit mappings screen_setup;
+ };
+in {
+ xdg.configFile."river/init".source =
+ sysLib.writeShellScriptWithLibraryAndKeepPath {
+ name = "river_init";
+ src = init_scr;
+ dependencies = builtins.attrValues {
+ river_init_lesser = river_init_lesser.packages.${system}.default;
+ inherit
+ (pkgs)
+ dash
+ river
+ glib # gnome lib
+ gammastep
+ wlr-randr
+ yambar
+ mako
+ swaybg
+ swayidle
+ swaylock
+ alacritty
+ ;
+ };
+ }
+ + /bin/river_init;
+
+ xdg.configFile."river/res".source = ./res;
+}