diff options
| author | Arpit Chakladar <54011232+arpitchakladar@users.noreply.github.com> | 2025-11-28 00:01:27 +0530 |
|---|---|---|
| committer | Arpit Chakladar <54011232+arpitchakladar@users.noreply.github.com> | 2025-11-28 00:01:27 +0530 |
| commit | 170461002890d55718618bec64feaa8856c3a6d4 (patch) | |
| tree | 39828106660958fc9de2c8c8d1fc972c8e2320cb /modules/graphical | |
| parent | 547bf872cbf85f4718576e1ac3a0eab094ccd26a (diff) | |
| download | home-manager-config-170461002890d55718618bec64feaa8856c3a6d4.tar.gz home-manager-config-170461002890d55718618bec64feaa8856c3a6d4.zip | |
Organised the configuration to allow for different options for different users.
Diffstat (limited to 'modules/graphical')
21 files changed, 0 insertions, 482 deletions
diff --git a/modules/graphical/bspwm/default.nix b/modules/graphical/bspwm/default.nix deleted file mode 100644 index f334290..0000000 --- a/modules/graphical/bspwm/default.nix +++ /dev/null @@ -1,42 +0,0 @@ -{ config, lib, pkgs, ... }: - -{ - config = lib.mkIf config.graphical.enable { - xsession.windowManager.bspwm.enable = true; - - xsession.windowManager.bspwm.settings = with config.scheme.withHashtag; { - window_gap = 10; - split_ratio = 0.5; - single_monocle = true; - borderless_monocle = false; - gapless_monocle = false; - focus_follows_pointer = true; - pointer_follows_focus = false; - pointer_motion_interval = 40; - pointer_modifier = "mod4"; - pointer_action1 = "resize_side"; - pointer_action2 = "move"; - pointer_action3 = "resize_corner"; - normal_border_color = base02; - active_border_color = base02; - focused_border_color = base03; - }; - - xsession.windowManager.bspwm.rules = { - "floating-termial" = { - state = "floating"; - sticky = true; - rectangle = "1000x600+0+0"; - center = true; - follow = true; - }; - }; - - xsession.windowManager.bspwm.extraConfig = '' -for monitor in $(xrandr -q | grep -w 'connected' | cut -d' ' -f1); do - bspc monitor "$monitor" -d '1' '2' '3' '4' '5' '6' -done -polybar-msg cmd restart - ''; - }; -} diff --git a/modules/graphical/default.nix b/modules/graphical/default.nix deleted file mode 100644 index 9e18ce0..0000000 --- a/modules/graphical/default.nix +++ /dev/null @@ -1,28 +0,0 @@ -{ lib, config, pkgs, ... }: - -{ - imports = [ - ./bspwm - ./polybar - ./sxhkd - ]; - - options.graphical = { - enable = lib.mkEnableOption "Enables graphical interface."; - }; - - config = lib.mkIf config.graphical.enable { - xdg.enable = true; - xsession.enable = true; - - xsession.windowManager.command = lib.mkForce " -#!/bin/sh -${if config.tools.feh.enable then - "${pkgs.feh}/bin/feh --bg-scale ${../../assets/skeleton-mage.png}" -else "xsetroot -solid \"${config.scheme.withHashtag.base00}\""} -pkill sxhkd -sxhkd & -exec ${pkgs.bspwm}/bin/bspwm -"; - }; -} diff --git a/modules/graphical/polybar/bar/default.nix b/modules/graphical/polybar/bar/default.nix deleted file mode 100644 index 23a43c4..0000000 --- a/modules/graphical/polybar/bar/default.nix +++ /dev/null @@ -1,5 +0,0 @@ -{ config, lib }: - -{ - "bar/main" = import ./main.nix { inherit config lib; }; -} diff --git a/modules/graphical/polybar/bar/main.nix b/modules/graphical/polybar/bar/main.nix deleted file mode 100644 index 326b768..0000000 --- a/modules/graphical/polybar/bar/main.nix +++ /dev/null @@ -1,44 +0,0 @@ -{ config, lib }: - -with config.scheme.withHashtag; -let - largerFontSize = toString (builtins.ceil (config.fonts.size * 9.0 / 8.0)); -in { - width = "100%:-20"; - fixed-center = false; - height = 35; - override-redirect = false; - wm-restack = "bspwm"; - enable-ipc = true; - - border-top-size = 1; - border-bottom-size = 1; - border-left-size = 1; - border-right-size = 1; - border-color = base03; - - background = base00; - foreground = base05; - - line-size = 3; - line-color = base08; - - padding-left = 1; - padding-right = 1; - - module-margin-left = 1; - module-margin-right = 1; - - separator = "%{F${base03}}%{T3}│%{T-}%{F-}"; - - offset-x = "10"; - offset-y = "10"; - - font-0 = "${config.fonts.normal}:pixelsize=${toString config.fonts.size};3"; - font-1 = "${config.fonts.normal}:weight=Bold:pixelsize=${largerFontSize};3"; - font-2 = "${config.fonts.normal}:style=Light:pixelsize=${largerFontSize};2"; - - modules-left = "bspwm separator"; - modules-center = "xwindow"; - modules-right = "separator volume battery time memory cpu date"; -} diff --git a/modules/graphical/polybar/default.nix b/modules/graphical/polybar/default.nix deleted file mode 100644 index d96c2ae..0000000 --- a/modules/graphical/polybar/default.nix +++ /dev/null @@ -1,20 +0,0 @@ -{ config, lib, pkgs, ... }: - -{ - config = lib.mkIf config.graphical.enable { - services.polybar.enable = true; - services.polybar.package = (pkgs.polybar.override { - pulseSupport = true; - }); - 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; }) - { - settings = { - screenchange-reload = true; - }; - } - ]; - }; -} diff --git a/modules/graphical/polybar/module/battery.nix b/modules/graphical/polybar/module/battery.nix deleted file mode 100644 index 5787f24..0000000 --- a/modules/graphical/polybar/module/battery.nix +++ /dev/null @@ -1,36 +0,0 @@ -{ config }: - -with config.scheme.withHashtag; -{ - type = "internal/battery"; - battery = "BAT1"; - adapter = "ADP1"; - - format-charging = "%{T2}%{F${base03}}<animation-charging>%{F-}%{T-} <label-charging>"; - format-discharging = "%{T2}%{F${base03}}<ramp-capacity>%{F-}%{T-} <label-discharging>"; - format-full-prefix = " "; - - ramp-capacity-0 = ""; - ramp-capacity-1 = ""; - ramp-capacity-2 = ""; - ramp-capacity-3 = ""; - ramp-capacity-4 = ""; - ramp-capacity-5 = ""; - ramp-capacity-6 = ""; - ramp-capacity-7 = ""; - ramp-capacity-8 = ""; - ramp-capacity-9 = ""; - - animation-charging-0 = ""; - animation-charging-1 = ""; - animation-charging-2 = ""; - animation-charging-3 = ""; - animation-charging-4 = ""; - animation-charging-5 = ""; - animation-charging-6 = ""; - animation-charging-7 = ""; - animation-charging-8 = ""; - animation-charging-9 = ""; - - animation-charging-framerate = 750; -} diff --git a/modules/graphical/polybar/module/bspwm.nix b/modules/graphical/polybar/module/bspwm.nix deleted file mode 100644 index ed82946..0000000 --- a/modules/graphical/polybar/module/bspwm.nix +++ /dev/null @@ -1,21 +0,0 @@ -{ config }: - -with config.scheme.withHashtag; -{ - type = "internal/bspwm"; - - label-focused = "%index%"; - label-focused-underline = "${base0D}"; - label-focused-padding = 2; - - label-occupied = "%index%"; - label-occupied-padding = 2; - - label-urgent = "%index%"; - label-urgent-underline = "${base08}"; - label-urgent-padding = 2; - - label-empty = "%index%"; - label-empty-foreground = "${base03}"; - label-empty-padding = 2; -} diff --git a/modules/graphical/polybar/module/cpu.nix b/modules/graphical/polybar/module/cpu.nix deleted file mode 100644 index 8134df1..0000000 --- a/modules/graphical/polybar/module/cpu.nix +++ /dev/null @@ -1,9 +0,0 @@ -{ config }: - -with config.scheme.withHashtag; -{ - type = "internal/cpu"; - interval = 2; - format-prefix = "%{T2}%{F${base03}} %{F-}%{T-}"; - label = "%percentage%%"; -} diff --git a/modules/graphical/polybar/module/date.nix b/modules/graphical/polybar/module/date.nix deleted file mode 100644 index 9c56121..0000000 --- a/modules/graphical/polybar/module/date.nix +++ /dev/null @@ -1,10 +0,0 @@ -{ config }: - -with config.scheme.withHashtag; -{ - type = "internal/date"; - interval = 60; - date = "%d/%m/%Y"; - label = "%date%"; - format-prefix = "%{T2}%{F${base03}} %{F-}%{T-}"; -} diff --git a/modules/graphical/polybar/module/default.nix b/modules/graphical/polybar/module/default.nix deleted file mode 100644 index fe5b8a1..0000000 --- a/modules/graphical/polybar/module/default.nix +++ /dev/null @@ -1,13 +0,0 @@ -{ config, lib }: - -{ - "module/separator" = import ./separator.nix { inherit config; }; - "module/xwindow" = import ./xwindow.nix { inherit config; }; - "module/bspwm" = import ./bspwm.nix { inherit config; }; - "module/cpu" = import ./cpu.nix { inherit config; }; - "module/memory" = import ./memory.nix { inherit config; }; - "module/date" = import ./date.nix { inherit config; }; - "module/time" = import ./time.nix { inherit config; }; - "module/volume" = import ./volume.nix { inherit config; }; - "module/battery" = import ./battery.nix { inherit config; }; -} diff --git a/modules/graphical/polybar/module/memory.nix b/modules/graphical/polybar/module/memory.nix deleted file mode 100644 index a4aa410..0000000 --- a/modules/graphical/polybar/module/memory.nix +++ /dev/null @@ -1,9 +0,0 @@ -{ config }: - -with config.scheme.withHashtag; -{ - type = "internal/memory"; - interval = 2; - format-prefix = "%{T2}%{F${base03}} %{F-}%{T-}"; - label = "%gb_used%"; -} diff --git a/modules/graphical/polybar/module/separator.nix b/modules/graphical/polybar/module/separator.nix deleted file mode 100644 index 3cd1430..0000000 --- a/modules/graphical/polybar/module/separator.nix +++ /dev/null @@ -1,7 +0,0 @@ -{ config }: - -with config.scheme.withHashtag; -{ - type = "custom/text"; - label = " "; -} diff --git a/modules/graphical/polybar/module/time.nix b/modules/graphical/polybar/module/time.nix deleted file mode 100644 index 71df1a5..0000000 --- a/modules/graphical/polybar/module/time.nix +++ /dev/null @@ -1,10 +0,0 @@ -{ config }: - -with config.scheme.withHashtag; -{ - type = "internal/date"; - interval = 30; - time = "%H:%M"; - label = "%time%"; - format-prefix = "%{T2}%{F${base03}} %{F-}%{T-}"; -} diff --git a/modules/graphical/polybar/module/volume.nix b/modules/graphical/polybar/module/volume.nix deleted file mode 100644 index ee18dc0..0000000 --- a/modules/graphical/polybar/module/volume.nix +++ /dev/null @@ -1,13 +0,0 @@ -{ config }: - -with config.scheme.withHashtag; -{ - type = "internal/pulseaudio"; - interval = 5; - format-volume = "%{T2}%{F${base03}}<ramp-volume>%{F-}%{T-} <label-volume>"; - label-volume = "%percentage%%"; - label-muted = "%{T2}%{F${base03}} "; - ramp-volume-0 = " "; - ramp-volume-1 = " "; - ramp-volume-2 = " "; -} diff --git a/modules/graphical/polybar/module/xwindow.nix b/modules/graphical/polybar/module/xwindow.nix deleted file mode 100644 index 833899e..0000000 --- a/modules/graphical/polybar/module/xwindow.nix +++ /dev/null @@ -1,7 +0,0 @@ -{ config }: - -with config.scheme.withHashtag; -{ - type = "internal/xwindow"; - label = "%title:0:30:...%"; -} diff --git a/modules/graphical/sxhkd/default.nix b/modules/graphical/sxhkd/default.nix deleted file mode 100644 index 5746394..0000000 --- a/modules/graphical/sxhkd/default.nix +++ /dev/null @@ -1,41 +0,0 @@ -{ pkgs, config, lib, ... }: - -{ - config = lib.mkIf config.graphical.enable { - services.sxhkd.enable = true; - services.sxhkd.keybindings = - let - modKey = "super"; - createKeybinding = keybinding: createKeybindingBase "${modKey} + ${keybinding}"; - createKeybindingBase = keybinding: description: command: { - "# ${description}\n${keybinding}" = command; - }; - in lib.mkMerge [ - (import ./keybindings/brightnessctl.nix { inherit pkgs createKeybindingBase lib; }) - (import ./keybindings/bspwm.nix { inherit pkgs createKeybinding lib; }) - (import ./keybindings/pamixer.nix { inherit pkgs createKeybindingBase lib; }) - (import ./keybindings/playerctl.nix { inherit pkgs createKeybindingBase lib; }) - - (createKeybinding - "s" - "Show keybindings." - "kitty --title 'Keybindings' --class floating-termial -e ${pkgs.writeShellScript "keybindings.sh" (builtins.readFile ./scripts/keybindings.sh)}" - ) - - (createKeybinding - "r" - "Application launcher." - "rofi -show drun") - - (createKeybinding - "t" - "Launch terminal." - "kitty") - - (createKeybinding - "f" - "Launch File Manager." - "kitty --title 'File Manager' --class floating-termial -e nnn") - ]; - }; -} diff --git a/modules/graphical/sxhkd/keybindings/brightnessctl.nix b/modules/graphical/sxhkd/keybindings/brightnessctl.nix deleted file mode 100644 index acb4ea2..0000000 --- a/modules/graphical/sxhkd/keybindings/brightnessctl.nix +++ /dev/null @@ -1,15 +0,0 @@ -{ createKeybindingBase, pkgs, lib }: - -let - brightnessctl = "${pkgs.brightnessctl}/bin/brightnessctl"; -in lib.mkMerge [ - (createKeybindingBase - "XF86MonBrightnessDown" - "Decrease brightness." - "${brightnessctl} set 5%-") - - (createKeybindingBase - "XF86MonBrightnessUp" - "Increase brightness." - "${brightnessctl} set +5%") -] diff --git a/modules/graphical/sxhkd/keybindings/bspwm.nix b/modules/graphical/sxhkd/keybindings/bspwm.nix deleted file mode 100644 index ed62ed4..0000000 --- a/modules/graphical/sxhkd/keybindings/bspwm.nix +++ /dev/null @@ -1,45 +0,0 @@ -{ createKeybinding, pkgs, lib }: - -let - bspc = "${pkgs.bspwm}/bin/bspc"; -in lib.mkMerge [ - (createKeybinding - "q" - "Kill current window." - "${bspc} node -c") - - (createKeybinding - "{1-9,0}" - "Switch workspace." - "${bspc} desktop -f {1-9,10}") - - (createKeybinding - "shift + {1-9,0}" - "Move window to workspace." - "${bspc} node -d {1-9,10} --follow") - - (createKeybinding - "{n,d,m}" - "Set current window mode (tiled, floating, fullscreen)." - "${bspc} node focused -t {tiled,floating,fullscreen}") - - (createKeybinding - "{_,shift + }{h,j,k,l}" - "Navigate between windows." - "${bspc} node --{focus,swap} {west,south,north,east}") - - # the indentation for each line is required to work with the help prompt - (createKeybinding - "ctrl + {h,j,k,l}" - "Resize current window." - '' - ${bspc} node {@parent/second -z left -20 0; \ - @parent/first -z right -20 0, \ - @parent/second -z top 0 +20; \ - @parent/first -z bottom 0 +20, \ - @parent/first -z bottom 0 -20; \ - @parent/second -z top 0 -20, \ - @parent/first -z right +20 0; \ - @parent/second -z left +20 0} -'') -] diff --git a/modules/graphical/sxhkd/keybindings/pamixer.nix b/modules/graphical/sxhkd/keybindings/pamixer.nix deleted file mode 100644 index 3543d8f..0000000 --- a/modules/graphical/sxhkd/keybindings/pamixer.nix +++ /dev/null @@ -1,20 +0,0 @@ -{ createKeybindingBase, pkgs, lib }: - -let - pamixer = "${pkgs.pamixer}/bin/pamixer"; -in lib.mkMerge [ - (createKeybindingBase - "XF86AudioLowerVolume" - "Decrease volume." - "${pamixer} --decrease 5") - - (createKeybindingBase - "XF86AudioRaiseVolume" - "Increase volume." - "${pamixer} --increase 5") - - (createKeybindingBase - "XF86AudioMute" - "Mute audio." - "${pamixer} --toggle-mute") -] diff --git a/modules/graphical/sxhkd/keybindings/playerctl.nix b/modules/graphical/sxhkd/keybindings/playerctl.nix deleted file mode 100644 index 3e5c4e0..0000000 --- a/modules/graphical/sxhkd/keybindings/playerctl.nix +++ /dev/null @@ -1,10 +0,0 @@ -{ createKeybindingBase, pkgs, lib }: - -let - playerctl = "${pkgs.playerctl}/bin/playerctl"; -in lib.mkMerge [ - (createKeybindingBase - "XF86AudioPlay" - "Toggle video / audio player." - "${playerctl} play-pause") -] diff --git a/modules/graphical/sxhkd/scripts/keybindings.sh b/modules/graphical/sxhkd/scripts/keybindings.sh deleted file mode 100755 index 01bb05f..0000000 --- a/modules/graphical/sxhkd/scripts/keybindings.sh +++ /dev/null @@ -1,77 +0,0 @@ -#!/bin/sh - -# Path to your sxhkd config file -SXHKD_FILE="$HOME/.config/sxhkd/sxhkdrc" - -# Function to wrap text to a specified width -wrap_text() { - local text="$1" - local width="$2" - echo "$text" | fold -s -w "$width" -} - -# Get terminal width -terminal_width=$(tput cols) - -# Set the table width to the full terminal width, leaving space for borders -table_width=$((terminal_width - 4)) # 4 for the borders and space between columns - -# Set keybinding column width to half of the available width -max_keybinding_length=$((table_width / 2)) - -# Length of the cotent inside the cell (2 spaces are substracted for padding) -max_keybinding_content_length=$((max_keybinding_length - 2)) - -# Set the description column width to the other half -description_width=$((table_width - max_keybinding_length - 1)) # 1 for the separator between columns - -# Length of the cotent inside the cell (2 spaces are substracted for padding) -description_content_width=$((description_width - 2)) - -# Generate the top border line and row separator -border_line="├$(printf '%.0s─' $(seq 1 $max_keybinding_length))┼$(printf '%.0s─' $(seq 1 $description_width))┤" - -# Pipe all output to less -{ - # Print table header with borders - echo "┌$(printf '%.0s─' $(seq 1 $max_keybinding_length))┬$(printf '%.0s─' $(seq 1 $description_width))┐" - printf "│ %-*s │ %-*s │\n" "$max_keybinding_content_length" "KEYBINDING" "$description_content_width" "DESCRIPTION" - - # Initialize variables - description="" - - # Load the sxhkd file into an array - mapfile -t lines < "$SXHKD_FILE" - - # Loop through lines for output - for line in "${lines[@]}"; do - # Check if the line is a comment - if [[ $line =~ ^# ]]; then - # Remove the "#" and any leading/trailing whitespace to capture the description - description="${line#\# }" - elif [[ $line =~ ^[^#[:space:]] ]]; then - # If it's a keybinding line, store it - keybinding="$line" - # Move to the next line for the command - command="${lines[((++i))]}" - - # Wrap the description to the calculated width - wrapped_description=$(wrap_text "$description" "$description_width") - - # Print the keybinding with a border line above and below it - echo "$border_line" - printf "│ %-*s │ %-*s │\n" "$max_keybinding_content_length" "$keybinding" "$description_content_width" "$(echo "$wrapped_description" | head -n 1)" - - # Print wrapped description lines with empty keybinding column - echo "$wrapped_description" | sed '1d' | while read -r continuation; do - printf "│ %-*s │ %-*s │\n" "$max_keybinding_content_length" "" "$description_content_width" "$continuation" - done - - # Reset description for the next keybinding - description="" - fi - done - - # Print the final border line - echo "└$(printf '%.0s─' $(seq 1 $max_keybinding_length))┴$(printf '%.0s─' $(seq 1 $description_width))┘" -} | less |
