aboutsummaryrefslogtreecommitdiffstats
path: root/modules
diff options
context:
space:
mode:
Diffstat (limited to 'modules')
-rw-r--r--modules/desktop/default.nix3
-rw-r--r--modules/desktop/i3/default.nix4
-rw-r--r--modules/desktop/i3/keybindings.nix39
-rw-r--r--modules/desktop/polybar/bar/default.nix4
-rw-r--r--modules/desktop/polybar/bar/main.nix2
-rw-r--r--modules/desktop/polybar/default.nix4
-rw-r--r--modules/desktop/polybar/module/default.nix4
-rw-r--r--modules/desktop/polybar/module/xwindow.nix2
-rw-r--r--modules/scripts/default.nix5
-rw-r--r--modules/tools/kitty/default.nix4
-rw-r--r--modules/tools/nnn/default.nix2
-rw-r--r--modules/tools/zsh/default.nix2
12 files changed, 44 insertions, 31 deletions
diff --git a/modules/desktop/default.nix b/modules/desktop/default.nix
index 8af472a..5926913 100644
--- a/modules/desktop/default.nix
+++ b/modules/desktop/default.nix
@@ -1,7 +1,6 @@
{
lib,
config,
- pkgs,
...
}:
@@ -22,7 +21,7 @@
home.file.".xinitrc" = {
text = ''
- #!/bin/sh
+ #!/usr/bin/env sh
[ -f ~/.Xresources ] && xrdb -merge ~/.Xresources
[ -f ~/.profile ] && . ~/.profile
diff --git a/modules/desktop/i3/default.nix b/modules/desktop/i3/default.nix
index 718837e..d5f42e2 100644
--- a/modules/desktop/i3/default.nix
+++ b/modules/desktop/i3/default.nix
@@ -71,7 +71,7 @@
{
command =
if config.tools.feh.enable then
- "${pkgs.feh}/bin/feh --bg-scale ${../../../assets/skeleton-mage.png}"
+ "${lib.getExe pkgs.feh} --bg-scale ${../../../assets/skeleton-mage.png}"
else
"xsetroot -solid \"${config.scheme.withHashtag.base00}\"";
always = true;
@@ -79,7 +79,7 @@
}
];
- keybindings = lib.mkOptionDefault (import ./keybindings.nix { inherit pkgs lib; });
+ keybindings = lib.mkOptionDefault (import ./keybindings.nix { inherit pkgs lib config; });
};
extraConfig = ''
exec_always --no-startup-id xrandr -q | grep -w 'connected' | cut -d' ' -f1 | xargs -I{} i3-msg "workspace 1 output {}"
diff --git a/modules/desktop/i3/keybindings.nix b/modules/desktop/i3/keybindings.nix
index e61c1b5..596b38b 100644
--- a/modules/desktop/i3/keybindings.nix
+++ b/modules/desktop/i3/keybindings.nix
@@ -1,23 +1,35 @@
-{ pkgs, lib }:
+{
+ pkgs,
+ lib,
+ config,
+}:
let
mod = "Mod4";
in
{
# --- General Applications ---
- "${mod}+r" = "exec rofi -show drun";
- "${mod}+t" = "exec ${pkgs.kitty}/bin/kitty";
- "${mod}+f" = "exec kitty --title 'File Manager' --class floating-termial -e nnn";
- "${mod}+s" = "exec kitty --title 'Keybindings' --class floating-termial -e keybindings.sh";
+ "${mod}+r" = lib.mkIf config.tools.rofi.enable "exec ${lib.getExe pkgs.rofi} -show drun";
+ "${mod}+t" = lib.mkIf config.tools.kitty.enable "exec ${lib.getExe pkgs.kitty}";
+ "${mod}+f" =
+ lib.mkIf config.tools.kitty.enable "exec ${lib.getExe pkgs.kitty} --title 'File Manager' --class floating-termial -e nnn";
+ "${mod}+s" =
+ lib.mkIf config.tools.kitty.enable "exec ${lib.getExe pkgs.kitty} --title 'Keybindings' --class floating-termial -e keybindings.sh";
"${mod}+q" = "kill";
# --- Media / Hardware Keys ---
- "XF86MonBrightnessDown" = "exec brightnessctl set 5%-";
- "XF86MonBrightnessUp" = "exec brightnessctl set +5%";
- "XF86AudioLowerVolume" = "exec pamixer --decrease 5";
- "XF86AudioRaiseVolume" = "exec pamixer --increase 5";
- "XF86AudioMute" = "exec pamixer --toggle-mute";
- "XF86AudioPlay" = "exec playerctl play-pause";
+ "XF86MonBrightnessDown" =
+ lib.mkIf config.tools.brightnessctl.enable "exec ${lib.getExe pkgs.brightnessctl} set 5%-";
+ "XF86MonBrightnessUp" =
+ lib.mkIf config.tools.brightnessctl.enable "exec ${lib.getExe pkgs.brightnessctl} set +5%";
+ "XF86AudioLowerVolume" =
+ lib.mkIf config.tools.pamixer.enable "exec ${lib.getExe pkgs.pamixer} --decrease 5";
+ "XF86AudioRaiseVolume" =
+ lib.mkIf config.tools.pamixer.enable "exec ${lib.getExe pkgs.pamixer} --increase 5";
+ "XF86AudioMute" =
+ lib.mkIf config.tools.pamixer.enable "exec ${lib.getExe pkgs.pamixer} --toggle-mute";
+ "XF86AudioPlay" =
+ lib.mkIf config.tools.playerctl.enable "exec ${lib.getExe pkgs.playerctl} play-pause";
# --- Window Management (Vim-style) ---
# Focus
@@ -69,7 +81,8 @@ in
"${mod}+Shift+0" = "move container to workspace number 10; workspace number 10";
# --- Screenshots ---
- "${mod}+p" = "exec \"maim -s | xclip -selection clipboard -t image/png\"";
+ "${mod}+p" =
+ lib.mkIf config.tools.maim.enable "exec \"${lib.getExe pkgs.maim} -s | xclip -selection clipboard -t image/png\"";
"${mod}+Shift+p" =
- "exec \"mkdir -p ~/Pictures/Screenshots && maim -s ~/Pictures/Screenshots/screenshot-$(date +%Y%m%d-%H%M%S).png\"";
+ lib.mkIf config.tools.maim.enable "exec \"mkdir -p ~/Pictures/Screenshots && ${lib.getExe pkgs.maim} -s ~/Pictures/Screenshots/screenshot-$(date +%Y%m%d-%H%M%S).png\"";
}
diff --git a/modules/desktop/polybar/bar/default.nix b/modules/desktop/polybar/bar/default.nix
index 9efe672..ce6db3b 100644
--- a/modules/desktop/polybar/bar/default.nix
+++ b/modules/desktop/polybar/bar/default.nix
@@ -1,5 +1,5 @@
-{ config, lib }:
+{ config }:
{
- "bar/main" = import ./main.nix { inherit config lib; };
+ "bar/main" = import ./main.nix { inherit config; };
}
diff --git a/modules/desktop/polybar/bar/main.nix b/modules/desktop/polybar/bar/main.nix
index 8b44f8c..e05d9b4 100644
--- a/modules/desktop/polybar/bar/main.nix
+++ b/modules/desktop/polybar/bar/main.nix
@@ -1,4 +1,4 @@
-{ config, lib }:
+{ config }:
with config.scheme.withHashtag;
let
diff --git a/modules/desktop/polybar/default.nix b/modules/desktop/polybar/default.nix
index b46fc17..a07c0c6 100644
--- a/modules/desktop/polybar/default.nix
+++ b/modules/desktop/polybar/default.nix
@@ -16,8 +16,8 @@
);
services.polybar.script = "${config.services.polybar.package}/bin/polybar main &";
services.polybar.config = lib.mkMerge [
- (import ./bar { inherit config lib; })
- (import ./module { inherit config lib; })
+ (import ./bar { inherit config; })
+ (import ./module { inherit config; })
{
settings = {
screenchange-reload = true;
diff --git a/modules/desktop/polybar/module/default.nix b/modules/desktop/polybar/module/default.nix
index 05f6946..2295ac6 100644
--- a/modules/desktop/polybar/module/default.nix
+++ b/modules/desktop/polybar/module/default.nix
@@ -1,4 +1,4 @@
-{ config, lib }:
+{ config }:
{
"module/battery" = import ./battery.nix { inherit config; };
@@ -13,5 +13,5 @@
"module/volume" = import ./volume.nix { inherit config; };
"module/wifi-separator" = import ./wifi-separator.nix { inherit config; };
"module/wifi" = import ./wifi.nix { inherit config; };
- "module/xwindow" = import ./xwindow.nix { inherit config; };
+ "module/xwindow" = import ./xwindow.nix { };
}
diff --git a/modules/desktop/polybar/module/xwindow.nix b/modules/desktop/polybar/module/xwindow.nix
index 16574f5..fd73a6b 100644
--- a/modules/desktop/polybar/module/xwindow.nix
+++ b/modules/desktop/polybar/module/xwindow.nix
@@ -1,4 +1,4 @@
-{ config }:
+{ }:
{
type = "internal/xwindow";
diff --git a/modules/scripts/default.nix b/modules/scripts/default.nix
index e2d7886..f034032 100644
--- a/modules/scripts/default.nix
+++ b/modules/scripts/default.nix
@@ -1,7 +1,6 @@
{
config,
lib,
- pkgs,
...
}:
@@ -15,7 +14,9 @@
let
shellScript = path: {
text = ''
- #!${pkgs.bash}/bin/bash
+ #!${
+ if config.tools.zsh.enable then (lib.getExe config.programs.zsh.package) else "#!/usr/bin/env sh"
+ }
${builtins.readFile path}
'';
executable = true;
diff --git a/modules/tools/kitty/default.nix b/modules/tools/kitty/default.nix
index a0b8338..9a1c4c6 100644
--- a/modules/tools/kitty/default.nix
+++ b/modules/tools/kitty/default.nix
@@ -7,7 +7,7 @@
{
options.tools.kitty = {
- enable = lib.mkEnableOption "Enables kitty. WARNING! Currently faces problems with color rendering with picom.";
+ enable = lib.mkEnableOption "Enables kitty.";
};
config = lib.mkIf config.tools.kitty.enable {
@@ -49,7 +49,7 @@
allow_remote_control = "yes";
listen_on = "unix:/tmp/kitty";
- shell = lib.mkIf config.tools.zsh.enable "${pkgs.zsh}/bin/zsh";
+ shell = lib.mkIf config.tools.zsh.enable "${lib.getExe pkgs.zsh}";
};
};
};
diff --git a/modules/tools/nnn/default.nix b/modules/tools/nnn/default.nix
index 98c0877..44ca791 100644
--- a/modules/tools/nnn/default.nix
+++ b/modules/tools/nnn/default.nix
@@ -19,7 +19,7 @@
programs.nnn = {
enable = true;
- package = pkgs.nnn.override ({ withNerdIcons = true; });
+ package = pkgs.nnn.override { withNerdIcons = true; };
plugins = {
src = "${config.programs.nnn.package}/share/plugins";
mappings = {
diff --git a/modules/tools/zsh/default.nix b/modules/tools/zsh/default.nix
index 294fb5a..6ed5577 100644
--- a/modules/tools/zsh/default.nix
+++ b/modules/tools/zsh/default.nix
@@ -28,6 +28,6 @@
programs.bash.initExtra = lib.mkIf config.programs.bash.enable (lib.mkAfter nixCommandWrappers);
- home.sessionVariables.SHELL = "${config.programs.zsh.package}/bin/zsh";
+ home.sessionVariables.SHELL = "${lib.getExe config.programs.zsh.package}";
};
}