summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNatasha Moongrave <natasha@256phi.eu>2026-02-01 23:24:25 +0100
committerNatasha Moongrave <natasha@256phi.eu>2026-02-01 23:24:25 +0100
commit6b31a53666059962b5ccc607e7891b65f0da8138 (patch)
tree982c8f6768ebf6bd44c68430a6748f335b00dd14
parent49423b9a43e26d437124faff73470d30e8830be6 (diff)
moved stuff
-rw-r--r--[-rwxr-xr-x]modules/home/hyprland/hyprland.nix (renamed from modules/polybar.nix)0
-rw-r--r--modules/home/i3wm/original/default.nix12
-rw-r--r--modules/home/i3wm/original/dunst.nix45
-rw-r--r--modules/home/i3wm/original/i3.nix130
-rw-r--r--modules/home/i3wm/original/kitty.nix45
-rw-r--r--modules/home/i3wm/original/picom.nix25
-rw-r--r--modules/home/i3wm/original/polybar.nix181
-rw-r--r--modules/home/i3wm/original/scripts.nix35
-rw-r--r--modules/nixos/hyprland.nix25
-rwxr-xr-xmun.nix467
10 files changed, 504 insertions, 461 deletions
diff --git a/modules/polybar.nix b/modules/home/hyprland/hyprland.nix
index e69de29..e69de29 100755..100644
--- a/modules/polybar.nix
+++ b/modules/home/hyprland/hyprland.nix
diff --git a/modules/home/i3wm/original/default.nix b/modules/home/i3wm/original/default.nix
new file mode 100644
index 0000000..362d6f8
--- /dev/null
+++ b/modules/home/i3wm/original/default.nix
@@ -0,0 +1,12 @@
+{ ... }:
+
+{
+ imports = [
+ ./dunst.nix
+ ./i3.nix
+ ./kitty.nix
+ ./picom.nix
+ ./polybar.nix
+ ./scripts.nix
+ ];
+} \ No newline at end of file
diff --git a/modules/home/i3wm/original/dunst.nix b/modules/home/i3wm/original/dunst.nix
new file mode 100644
index 0000000..6f217d9
--- /dev/null
+++ b/modules/home/i3wm/original/dunst.nix
@@ -0,0 +1,45 @@
+{ config, pkgs, lib, ... }:
+
+{
+ services.dunst = {
+ enable = true;
+
+ settings = let
+ colors = {
+ foreground = "#d0b6fd";
+ background = "#1c182d";
+ alert = "#7b91fc";
+ };
+ in {
+ global = {
+ width = "(200,300)";
+ height = "(0,150)";
+ offset = "(30,50)";
+ origin = "bottom-right";
+ transparency = 10;
+ frame_width = 0;
+ font = "Fira Code 10";
+ };
+
+ urgency_low = {
+ background = colors.background;
+ foreground = colors.foreground;
+ timeout = 8;
+ };
+
+ urgency_normal = {
+ background = colors.background;
+ foreground = colors.foreground;
+ frame-size = "0";
+ timeout = 10;
+ };
+
+ urgency_critical = {
+ background = colors.background;
+ foreground = colors.foreground;
+ frame-size = "5";
+ frame-color = colors.alert;
+ };
+ };
+ };
+} \ No newline at end of file
diff --git a/modules/home/i3wm/original/i3.nix b/modules/home/i3wm/original/i3.nix
new file mode 100644
index 0000000..35ce6de
--- /dev/null
+++ b/modules/home/i3wm/original/i3.nix
@@ -0,0 +1,130 @@
+{ config, pkgs, lib, ... }:
+
+{
+ xsession.windowManager.i3 = {
+ enable = true;
+ config.bars = [];
+
+ extraConfig = ''
+ # i3 config
+ set $mod Mod4
+ font pango:Fira Code 10
+
+ exec --no-startup-id dex-autostart --autostart --environment i3
+ exec --no-startup-id xss-lock --transfer-sleep-lock -- i3lock-fancy-rapid 5 3 --nofork
+ exec --no-startup-id nm-applet
+ exec --no-startup-id blueman-applet
+ exec_always --no-startup-id sh -c "sleep 1 && picom --config ~/.config/picom/picom.conf"
+ exec --no-startup-id -merge ~/.Xresources
+ exec_always --no-startup-id feh --bg-scale ~/Pictures/wallpapers/vox.jpg
+ exec_always --no-startup-id sh -c "killall -q polybar; sleep 1; polybar example --config=~/.config/polybar/config.ini &"
+ exec_always --no-startup-id polybar-hide-on-fullscreen
+ exec --no-startup-id flameshot
+
+ gaps top 60
+
+ bindsym XF86MonBrightnessDown exec brightnessctl set 10%-
+ bindsym XF86MonBrightnessUp exec brightnessctl set +10%
+ bindsym XF86AudioMute exec amixer set Master toggle
+ bindsym XF86AudioLowerVolume exec amixer set Master 5%-
+ bindsym XF86AudioRaiseVolume exec amixer set Master 5%+
+ bindsym XF86AudioMicMute exec amixer set Capture toggle
+
+ floating_modifier $mod
+
+ bindsym $mod+Shift+s exec flameshot gui
+ bindsym $mod+Return exec kitty
+ bindsym $mod+Control+l exec --no-startup-id i3lock-fancy-rapid 5 3
+ bindsym $mod+m exec rofi -show drun
+ bindsym $mod+Shift+m exec kitty nnn
+ bindsym $mod+n exec firefox
+ bindsym $mod+Shift+q kill
+
+ bindsym $mod+j focus left
+ bindsym $mod+k focus down
+ bindsym $mod+l focus up
+ bindsym $mod+uring focus right
+
+ bindsym $mod+Shift+j move left
+ bindsym $mod+Shift+k move down
+ bindsym $mod+Shift+l move up
+ bindsym $mod+Shift+uring move right
+
+ bindsym $mod+h split h
+ bindsym $mod+v split v
+ bindsym $mod+f fullscreen toggle
+ bindsym $mod+s layout stacking
+ bindsym $mod+w layout tabbed
+ bindsym $mod+e layout toggle split
+ bindsym $mod+Shift+space floating toggle
+ bindsym $mod+space focus mode_toggle
+ bindsym $mod+a focus parent
+
+ set $ws1 "1"
+ set $ws2 "2"
+ set $ws3 "3"
+ set $ws4 "4"
+ set $ws5 "5"
+ set $ws6 "6"
+ set $ws7 "7"
+ set $ws8 "8"
+ set $ws9 "9"
+ set $ws10 "10"
+
+ bindsym $mod+plus workspace number $ws1
+ bindsym $mod+ecaron workspace number $ws2
+ bindsym $mod+scaron workspace number $ws3
+ bindsym $mod+ccaron workspace number $ws4
+ bindsym $mod+rcaron workspace number $ws5
+ bindsym $mod+zcaron workspace number $ws6
+ bindsym $mod+yacute workspace number $ws7
+ bindsym $mod+aacute workspace number $ws8
+ bindsym $mod+iacute workspace number $ws9
+ bindsym $mod+eacute workspace number $ws10
+
+ bindsym $mod+Shift+plus move container to workspace number $ws1
+ bindsym $mod+Shift+ecaron move container to workspace number $ws2
+ bindsym $mod+Shift+scaron move container to workspace number $ws3
+ bindsym $mod+Shift+ccaron move container to workspace number $ws4
+ bindsym $mod+Shift+rcaron move container to workspace number $ws5
+ bindsym $mod+Shift+zcaron move container to workspace number $ws6
+ bindsym $mod+Shift+yacute move container to workspace number $ws7
+ bindsym $mod+Shift+aacute move container to workspace number $ws8
+ bindsym $mod+Shift+iacute move container to workspace number $ws9
+ bindsym $mod+Shift+eacute move container to workspace number $ws10
+
+ bindsym $mod+Shift+c reload
+ bindsym $mod+Shift+r restart
+ bindsym $mod+Shift+e exec "i3-nagbar -t warning -m 'You pressed the exit shortcut. Do you really want to exit i3? This will end your X session.' -B 'Yes, exit i3' 'i3-msg exit'"
+
+ mode "resize" {
+ bindsym j resize shrink width 5 px or 5 ppt
+ bindsym k resize grow height 5 px or 5 ppt
+ bindsym l resize shrink height 5 px or 5 ppt
+ bindsym uring resize grow width 5 px or 5 ppt
+
+ bindsym Left resize shrink width 5 px or 5 ppt
+ bindsym Down resize grow height 5 px or 5 ppt
+ bindsym Up resize shrink height 5 px or 5 ppt
+ bindsym Right resize grow width 5 px or 5 ppt
+
+ bindsym Return mode "default"
+ bindsym Escape mode "default"
+ bindsym $mod+r mode "default"
+ }
+
+ bindsym $mod+r mode "resize"
+
+ client.focused #FFFFFF #FFFFFF #FFFFFF #FFFFFF #b12cbf
+ client.focused_inactive #8C8C8C #4C4C4C #FFFFFF #4C4C4C #FFFFFF
+ client.unfocused #4C4C4C #222222 #888888 #292D2E #500096
+ client.urgent #EC69A0 #DB3279 #FFFFFF #DB3279 #DB3279
+ client.placeholder #000000 #0C0C0C #FFFFFF #000000 #FFFFFF
+ client.background #FFFFFF
+
+ default_border pixel 3
+ default_floating_border pixel 3
+ hide_edge_borders smart
+ '';
+ };
+} \ No newline at end of file
diff --git a/modules/home/i3wm/original/kitty.nix b/modules/home/i3wm/original/kitty.nix
new file mode 100644
index 0000000..17b220d
--- /dev/null
+++ b/modules/home/i3wm/original/kitty.nix
@@ -0,0 +1,45 @@
+{ config, pkgs, lib, ... }:
+
+{
+ programs.kitty = {
+ enable = true;
+ extraConfig = ''
+ confirm_os_window_close 0
+ font_family Fira Code
+ bold_font Fira Code Bold
+ italic_font Fira Code Light
+ shell_integration no-cursor
+ cursor_shape beam
+ window_padding_width 7
+ window_padding_height 10
+ scrollback_lines 3000
+ font_size 11
+ map ctrl+shift+plus change_font_size all +1.0
+ map ctrl+shift+minus change_font_size all -1.0
+ background_opacity 0.7
+
+ cursor #AC82E9
+ selection_background #d8cab8
+ selection_foreground #141216
+ background #141216
+ foreground #d8cab8
+
+ color0 #2b2135
+ color8 #92fcfa
+ color1 #fc4649
+ color9 #fc4649
+ color2 #c4e881
+ color10 #c4e881
+ color3 #AC82E9
+ color11 #AC82E9
+ color4 #7b91fc
+ color12 #7b91fc
+ color5 #f3fc7b
+ color13 #f3fc7b
+ color6 #8F56E1
+ color14 #8F56E1
+ color7 #fc92fc
+ color15 #d8cab8
+ '';
+ };
+} \ No newline at end of file
diff --git a/modules/home/i3wm/original/picom.nix b/modules/home/i3wm/original/picom.nix
new file mode 100644
index 0000000..84b49a7
--- /dev/null
+++ b/modules/home/i3wm/original/picom.nix
@@ -0,0 +1,25 @@
+{ config, pkgs, lib, ... }:
+
+{
+ services.picom = {
+ enable = true;
+ backend = "glx";
+ vSync = true;
+ inactiveOpacity = 0.9;
+ activeOpacity = 1.0;
+ fade = true;
+ fadeSteps = [ 0.09 0.09 ];
+ fadeDelta = 5;
+ shadow = true;
+ shadowOffsets = [ 12 12 ];
+ shadowOpacity = 0.5;
+ shadowExclude = [
+ "class_g = 'Polybar'"
+ "name = 'Polybar'"
+ ];
+ settings = {
+ corner-radius = 15;
+ };
+ };
+ };
+} \ No newline at end of file
diff --git a/modules/home/i3wm/original/polybar.nix b/modules/home/i3wm/original/polybar.nix
new file mode 100644
index 0000000..95130cf
--- /dev/null
+++ b/modules/home/i3wm/original/polybar.nix
@@ -0,0 +1,181 @@
+{ config, pkgs, lib, ... }:
+
+
+{
+ services.polybar = {
+ enable = true;
+
+ extraConfig = let
+ colors = {
+ background = "#1c182d";
+ background-alt = "#2b1b3d";
+ foreground = "#d0b6fd";
+ primary = "#cfb5fd";
+ secondary = "#8a78b0";
+ alert = "#7b91fc";
+ disabled = "#707880";
+ };
+ in ''
+ [bar/example]
+ width = 98%
+ height = 30pt
+ radius = 15
+ offset-x = 1%
+ offset-y = 1%
+ override-redirect = true
+ fixed-center = true
+ enable-ipc = true
+
+ background = ${colors.background}
+ foreground = ${colors.foreground}
+
+ line-size = 4pt
+ border-size = Opt
+ border-color = #00000000
+
+ padding-left = 1
+ padding-right = 1
+ module-margin = 1
+
+ separator = |
+ separator-foreground = ${colors.disabled}
+
+ font-0 = fira code;2
+
+ modules-left = xworkspaces spotify spotify-prev spotify-play-pause spotify-next
+ modules-center = date
+ modules-right = filesystem memory cpu pulseaudio-devices wlan xkeyboard battery
+
+ [module/systray]
+ type = internal/tray
+ format-margin = 8pt
+ tray-spacing = 16pt
+
+ [module/xworkspaces]
+ type = internal/xworkspaces
+ label-active = %name%
+ label-active-background = ${colors.background-alt}
+ label-active-underline = ${colors.primary}
+ label-active-padding = 1
+ label-occupied = %name%
+ label-occupied-padding = 1
+ label-urgent = %name%
+ label-urgent-background = ${colors.alert}
+ label-urgent-padding = 1
+ label-empty = %name%
+ label-empty-foreground = ${colors.disabled}
+ label-empty-padding = 1
+
+ [module/xwindow]
+ type = internal/xwindow
+ label = %title:0:60:...%
+
+ [module/filesystem]
+ type = internal/fs
+ interval = 25
+ mount-0 = /
+ label-mounted = %{F#F0C674}%mountpoint%%{F-} %percentage_used%%
+ label-unmounted = %mountpoint% not mounted
+ label-unmounted-foreground = ${colors.disabled}
+
+ [module/pulseaudio]
+ type = internal/pulseaudio
+ format-volume-prefix = "VOL "
+ format-volume-prefix-foreground = ${colors.primary}
+ format-volume = <label-volume>
+ label-volume = %percentage%%
+ label-muted = muted
+ label-muted-foreground = ${colors.disabled}
+
+ [module/xkeyboard]
+ type = internal/xkeyboard
+ blacklist-0 = num lock
+ label-layout = %layout%
+ label-layout-foreground = ${colors.primary}
+ label-indicator-padding = 2
+ label-indicator-margin = 1
+ label-indicator-foreground = ${colors.background}
+ label-indicator-background = ${colors.secondary}
+
+ [module/memory]
+ type = internal/memory
+ interval = 2
+ format-prefix = "RAM "
+ format-prefix-foreground = ${colors.primary}
+ label = %percentage_used:2%%
+
+ [module/cpu]
+ type = internal/cpu
+ interval = 2
+ format-prefix = "CPU "
+ format-prefix-foreground = ${colors.primary}
+ label = %percentage:2%%
+
+ [network-base]
+ type = internal/network
+ interval = 5
+ format-connected = <label-connected>
+ format-disconnected = <label-disconnected>
+ label-disconnected = %{F#F0C674}%ifname%%{F#707880} disconnected
+
+ [module/wlan]
+ inherit = network-base
+ interface-type = wireless
+ label-connected = %{F#F0C674}%ifname%%{F-} %essid%
+
+ [module/eth]
+ inherit = network-base
+ interface-type = wired
+ label-connected = %{F#F0C674}%ifname%%{F-}
+
+ [module/date]
+ type = internal/date
+ interval = 1
+ date = %H:%M
+ date-alt = %Y-%m-%d %H:%M:%S
+ label = %date%
+ label-foreground = ${colors.primary}
+
+ [settings]
+ screenchange-reload = true
+ pseudo-transparency = true
+
+ [module/battery]
+ type = internal/battery
+ full-at = 100
+ low-at = 15
+ battery = BAT0
+ adapter = ADP1
+ poll-interval = 5
+
+ [module/spotify]
+ type = custom/script
+ tail = true
+ interval = 1
+ format-prefix = "♫"
+ format = <label>
+ exec = get-spotify-status
+
+ [module/spotify-prev]
+ type = custom/script
+ exec = echo "◀◀"
+ format = <label>
+ click-left = playerctl previous -p spotify
+
+ [module/spotify-play-pause]
+ type = custom/ipc
+ hook-0 = echo "▶"
+ hook-1 = echo "▶"
+ initial = 1
+ click-left = playerctl play-pause -p spotify
+
+ [module/spotify-next]
+ type = custom/script
+ exec = echo "▶▶"
+ format = <label>
+ click-left = playerctl next -p spotify
+ '';
+
+ script = "polybar example --config=~/.config/polybar/config.ini &";
+ };
+} \ No newline at end of file
diff --git a/modules/home/i3wm/original/scripts.nix b/modules/home/i3wm/original/scripts.nix
new file mode 100644
index 0000000..31d2378
--- /dev/null
+++ b/modules/home/i3wm/original/scripts.nix
@@ -0,0 +1,35 @@
+{ pkgs, ... }:
+
+{
+ { pkgs, ... }:
+
+{
+ home.packages = [
+ (pkgs.writeShellScriptBin "get-spotify-status" ''
+ PARENT_BAR="example"
+ PLAYER="playerctld"
+ FORMAT="{{ title }} - {{ artist }}"
+
+ PLAYERCTL_STATUS=$(playerctl --player=$PLAYER status 2>/dev/null)
+
+ if [ "$PLAYERCTL_STATUS" = "Playing" ]; then
+ playerctl --player=$PLAYER metadata --format "$FORMAT"
+ elif [ "$PLAYERCTL_STATUS" = "Paused" ]; then
+ echo "Paused"
+ else
+ echo "No music"
+ fi
+ '')
+
+ (pkgs.writeShellScriptBin "polybar-hide-on-fullscreen" ''
+ i3-msg -t subscribe -m '[ "window" ]' | while read -r event; do
+ if echo "$event" | grep -q '"fullscreen_mode":[[:space:]]*1'; then
+ polybar-msg cmd hide
+ elif echo "$event" | grep -q '"fullscreen_mode":[[:space:]]*0'; then
+ polybar-msg cmd show
+ fi
+ done
+ '')
+ ];
+}
+} \ No newline at end of file
diff --git a/modules/nixos/hyprland.nix b/modules/nixos/hyprland.nix
new file mode 100644
index 0000000..9d00cec
--- /dev/null
+++ b/modules/nixos/hyprland.nix
@@ -0,0 +1,25 @@
+{ pkgs, ... }:
+
+{
+ # Enable Hyprland
+ programs.hyprland = {
+ enable = true;
+ withUWSM = true;
+ };
+ environment.sessionVariables.NIXOS_OZONE_WL = "1";
+ environment.sessionVariables.WLR_NO_HARDWARE_CURSORS = "1";
+
+ programs.hyprlock.enable = true;
+ services.hypridle.enable = true;
+
+ environment.systemPackages = with pkgs; [
+ pyprland
+ hyprpicker
+ hyprcursor
+ hyprlock
+ hypridle
+ hyprpaper
+ hyprsunset
+ hyprpolkitagent
+ ];
+} \ No newline at end of file
diff --git a/mun.nix b/mun.nix
index f62b8bd..90ccfa2 100755
--- a/mun.nix
+++ b/mun.nix
@@ -1,59 +1,8 @@
{ config, lib, pkgs, ... }:
-let
- get_spotify_status = pkgs.writeShellScript "get_spotify_status.sh" ''
- #!/bin/bash
- PARENT_BAR="example"
- PARENT_BAR_PID=$(pgrep -a "polybar" | grep "$PARENT_BAR" | cut -d" " -f1)
- PLAYER="playerctld"
- FORMAT="{{ title }} - {{ artist }}"
-
- update_hooks() {
- while IFS= read -r id; do
- polybar-msg -p "$id" hook spotify-play-pause $2 1>/dev/null 2>&1
- done < <(echo "$1")
- }
-
- PLAYERCTL_STATUS=$(playerctl --player=$PLAYER status 2>/dev/null)
- EXIT_CODE=$?
-
- if [ $EXIT_CODE -eq 0 ]; then
- STATUS=$PLAYERCTL_STATUS
- else
- STATUS="No player is running"
- fi
-
- if [ "$1" == "--status" ]; then
- echo "$STATUS"
- else
- if [ "$STATUS" = "Stopped" ]; then
- echo "Music Stopped"
- elif [ "$STATUS" = "Paused" ]; then
- update_hooks "$PARENT_BAR_PID" 2
- playerctl --player=$PLAYER metadata --format "$FORMAT"
- elif [ "$STATUS" = "No player is running" ]; then
- echo "Music Off"
- else
- update_hooks "$PARENT_BAR_PID" 1
- playerctl --player=$PLAYER metadata --format "$FORMAT"
- fi
- fi
- '';
-
- hidePolybarInFullscreen = pkgs.writeShellScript "hidePolybarInFullscreen.sh" ''
- #!/usr/bin/env bash
- sleep 1
- i3-msg -t subscribe -m '[ "window" ]' | while read -r event; do
- if echo "$event" | grep -q '"fullscreen_mode":[[:space:]]*1'; then
- polybar-msg cmd hide
- elif echo "$event" | grep -q '"fullscreen_mode":[[:space:]]*0'; then
- polybar-msg cmd show
- fi
- done
- '';
-in
{
imports = [
+ ./modules/i3wm/original/default.nix
];
home = {
username = "mun";
@@ -77,10 +26,6 @@ in
};
};
- gtk.cursorTheme = {
- package = pkgs.rose-pine-cursor;
- name = "RosePine";
- };
xdg = {
enable = true;
@@ -239,418 +184,18 @@ in
'';
};
- kitty = {
- enable = true;
- extraConfig = ''
- confirm_os_window_close 0
- font_family Fira Code
- bold_font Fira Code Bold
- italic_font Fira Code Light
- shell_integration no-cursor
- cursor_shape beam
- window_padding_width 7
- window_padding_height 10
- scrollback_lines 3000
- font_size 11
- map ctrl+shift+plus change_font_size all +1.0
- map ctrl+shift+minus change_font_size all -1.0
- background_opacity 0.7
-
- cursor #AC82E9
- selection_background #d8cab8
- selection_foreground #141216
- background #141216
- foreground #d8cab8
-
- color0 #2b2135
- color8 #92fcfa
- color1 #fc4649
- color9 #fc4649
- color2 #c4e881
- color10 #c4e881
- color3 #AC82E9
- color11 #AC82E9
- color4 #7b91fc
- color12 #7b91fc
- color5 #f3fc7b
- color13 #f3fc7b
- color6 #8F56E1
- color14 #8F56E1
- color7 #fc92fc
- color15 #d8cab8
- '';
- };
+
};
- xsession.windowManager.i3 = {
- enable = true;
- config.bars = [];
-
- extraConfig = ''
- # i3 config
- set $mod Mod4
- font pango:Fira Code 10
-
- exec --no-startup-id dex-autostart --autostart --environment i3
- exec --no-startup-id xss-lock --transfer-sleep-lock -- i3lock-fancy-rapid 5 3 --nofork
- exec --no-startup-id nm-applet
- exec --no-startup-id blueman-applet
- exec_always --no-startup-id sh -c "sleep 1 && picom --config ~/.config/picom/picom.conf"
- exec --no-startup-id -merge ~/.Xresources
- exec_always --no-startup-id feh --bg-scale ~/Pictures/wallpapers/vox.jpg
- exec_always --no-startup-id sh -c "killall -q polybar; sleep 1; polybar example --config=~/.config/polybar/config.ini &"
- exec_always --no-startup-id ${hidePolybarInFullscreen}
- exec --no-startup-id flameshot
-
- gaps top 60
-
- bindsym XF86MonBrightnessDown exec brightnessctl set 10%-
- bindsym XF86MonBrightnessUp exec brightnessctl set +10%
- bindsym XF86AudioMute exec amixer set Master toggle
- bindsym XF86AudioLowerVolume exec amixer set Master 5%-
- bindsym XF86AudioRaiseVolume exec amixer set Master 5%+
- bindsym XF86AudioMicMute exec amixer set Capture toggle
-
- floating_modifier $mod
-
- bindsym $mod+Shift+s exec flameshot gui
- bindsym $mod+Return exec kitty
- bindsym $mod+Control+l exec --no-startup-id i3lock-fancy-rapid 5 3
- bindsym $mod+m exec rofi -show drun
- bindsym $mod+Shift+m exec kitty nnn
- bindsym $mod+n exec firefox
- bindsym $mod+Shift+q kill
-
- bindsym $mod+j focus left
- bindsym $mod+k focus down
- bindsym $mod+l focus up
- bindsym $mod+uring focus right
-
- bindsym $mod+Shift+j move left
- bindsym $mod+Shift+k move down
- bindsym $mod+Shift+l move up
- bindsym $mod+Shift+uring move right
-
- bindsym $mod+h split h
- bindsym $mod+v split v
- bindsym $mod+f fullscreen toggle
- bindsym $mod+s layout stacking
- bindsym $mod+w layout tabbed
- bindsym $mod+e layout toggle split
- bindsym $mod+Shift+space floating toggle
- bindsym $mod+space focus mode_toggle
- bindsym $mod+a focus parent
-
- set $ws1 "1"
- set $ws2 "2"
- set $ws3 "3"
- set $ws4 "4"
- set $ws5 "5"
- set $ws6 "6"
- set $ws7 "7"
- set $ws8 "8"
- set $ws9 "9"
- set $ws10 "10"
-
- bindsym $mod+plus workspace number $ws1
- bindsym $mod+ecaron workspace number $ws2
- bindsym $mod+scaron workspace number $ws3
- bindsym $mod+ccaron workspace number $ws4
- bindsym $mod+rcaron workspace number $ws5
- bindsym $mod+zcaron workspace number $ws6
- bindsym $mod+yacute workspace number $ws7
- bindsym $mod+aacute workspace number $ws8
- bindsym $mod+iacute workspace number $ws9
- bindsym $mod+eacute workspace number $ws10
-
- bindsym $mod+Shift+plus move container to workspace number $ws1
- bindsym $mod+Shift+ecaron move container to workspace number $ws2
- bindsym $mod+Shift+scaron move container to workspace number $ws3
- bindsym $mod+Shift+ccaron move container to workspace number $ws4
- bindsym $mod+Shift+rcaron move container to workspace number $ws5
- bindsym $mod+Shift+zcaron move container to workspace number $ws6
- bindsym $mod+Shift+yacute move container to workspace number $ws7
- bindsym $mod+Shift+aacute move container to workspace number $ws8
- bindsym $mod+Shift+iacute move container to workspace number $ws9
- bindsym $mod+Shift+eacute move container to workspace number $ws10
-
- bindsym $mod+Shift+c reload
- bindsym $mod+Shift+r restart
- bindsym $mod+Shift+e exec "i3-nagbar -t warning -m 'You pressed the exit shortcut. Do you really want to exit i3? This will end your X session.' -B 'Yes, exit i3' 'i3-msg exit'"
-
- mode "resize" {
- bindsym j resize shrink width 5 px or 5 ppt
- bindsym k resize grow height 5 px or 5 ppt
- bindsym l resize shrink height 5 px or 5 ppt
- bindsym uring resize grow width 5 px or 5 ppt
-
- bindsym Left resize shrink width 5 px or 5 ppt
- bindsym Down resize grow height 5 px or 5 ppt
- bindsym Up resize shrink height 5 px or 5 ppt
- bindsym Right resize grow width 5 px or 5 ppt
-
- bindsym Return mode "default"
- bindsym Escape mode "default"
- bindsym $mod+r mode "default"
- }
-
- bindsym $mod+r mode "resize"
-
- client.focused #FFFFFF #FFFFFF #FFFFFF #FFFFFF #b12cbf
- client.focused_inactive #8C8C8C #4C4C4C #FFFFFF #4C4C4C #FFFFFF
- client.unfocused #4C4C4C #222222 #888888 #292D2E #500096
- client.urgent #EC69A0 #DB3279 #FFFFFF #DB3279 #DB3279
- client.placeholder #000000 #0C0C0C #FFFFFF #000000 #FFFFFF
- client.background #FFFFFF
-
- default_border pixel 3
- default_floating_border pixel 3
- hide_edge_borders smart
- '';
- };
+
services = {
gnome-keyring.enable = true;
- dunst = {
- enable = true;
+
- settings = let
- colors = {
- foreground = "#d0b6fd";
- background = "#1c182d";
- alert = "#7b91fc";
- };
- in {
- global = {
- width = "(200,300)";
- height = "(0,150)";
- offset = "(30,50)";
- origin = "bottom-right";
- transparency = 10;
- frame_width = 0;
- font = "Fira Code 10";
- };
-
- urgency_low = {
- background = colors.background;
- foreground = colors.foreground;
- timeout = 8;
- };
-
- urgency_normal = {
- background = colors.background;
- foreground = colors.foreground;
- frame-size = "0";
- timeout = 10;
- };
-
- urgency_critical = {
- background = colors.background;
- foreground = colors.foreground;
- frame-size = "5";
- frame-color = colors.alert;
- };
- };
- };
+
- polybar = {
- enable = true;
-
- extraConfig = let
- colors = {
- background = "#1c182d";
- background-alt = "#2b1b3d";
- foreground = "#d0b6fd";
- primary = "#cfb5fd";
- secondary = "#8a78b0";
- alert = "#7b91fc";
- disabled = "#707880";
- };
- in ''
- [bar/example]
- width = 98%
- height = 30pt
- radius = 15
- offset-x = 1%
- offset-y = 1%
- override-redirect = true
- fixed-center = true
- enable-ipc = true
-
- background = ${colors.background}
- foreground = ${colors.foreground}
-
- line-size = 4pt
- border-size = Opt
- border-color = #00000000
-
- padding-left = 1
- padding-right = 1
- module-margin = 1
-
- separator = |
- separator-foreground = ${colors.disabled}
-
- font-0 = fira code;2
-
- modules-left = xworkspaces spotify spotify-prev spotify-play-pause spotify-next
- modules-center = date
- modules-right = filesystem memory cpu pulseaudio-devices wlan xkeyboard battery
-
- [module/systray]
- type = internal/tray
- format-margin = 8pt
- tray-spacing = 16pt
-
- [module/xworkspaces]
- type = internal/xworkspaces
- label-active = %name%
- label-active-background = ${colors.background-alt}
- label-active-underline = ${colors.primary}
- label-active-padding = 1
- label-occupied = %name%
- label-occupied-padding = 1
- label-urgent = %name%
- label-urgent-background = ${colors.alert}
- label-urgent-padding = 1
- label-empty = %name%
- label-empty-foreground = ${colors.disabled}
- label-empty-padding = 1
-
- [module/xwindow]
- type = internal/xwindow
- label = %title:0:60:...%
-
- [module/filesystem]
- type = internal/fs
- interval = 25
- mount-0 = /
- label-mounted = %{F#F0C674}%mountpoint%%{F-} %percentage_used%%
- label-unmounted = %mountpoint% not mounted
- label-unmounted-foreground = ${colors.disabled}
-
- [module/pulseaudio]
- type = internal/pulseaudio
- format-volume-prefix = "VOL "
- format-volume-prefix-foreground = ${colors.primary}
- format-volume = <label-volume>
- label-volume = %percentage%%
- label-muted = muted
- label-muted-foreground = ${colors.disabled}
-
- [module/xkeyboard]
- type = internal/xkeyboard
- blacklist-0 = num lock
- label-layout = %layout%
- label-layout-foreground = ${colors.primary}
- label-indicator-padding = 2
- label-indicator-margin = 1
- label-indicator-foreground = ${colors.background}
- label-indicator-background = ${colors.secondary}
-
- [module/memory]
- type = internal/memory
- interval = 2
- format-prefix = "RAM "
- format-prefix-foreground = ${colors.primary}
- label = %percentage_used:2%%
-
- [module/cpu]
- type = internal/cpu
- interval = 2
- format-prefix = "CPU "
- format-prefix-foreground = ${colors.primary}
- label = %percentage:2%%
-
- [network-base]
- type = internal/network
- interval = 5
- format-connected = <label-connected>
- format-disconnected = <label-disconnected>
- label-disconnected = %{F#F0C674}%ifname%%{F#707880} disconnected
-
- [module/wlan]
- inherit = network-base
- interface-type = wireless
- label-connected = %{F#F0C674}%ifname%%{F-} %essid%
-
- [module/eth]
- inherit = network-base
- interface-type = wired
- label-connected = %{F#F0C674}%ifname%%{F-}
-
- [module/date]
- type = internal/date
- interval = 1
- date = %H:%M
- date-alt = %Y-%m-%d %H:%M:%S
- label = %date%
- label-foreground = ${colors.primary}
-
- [settings]
- screenchange-reload = true
- pseudo-transparency = true
-
- [module/battery]
- type = internal/battery
- full-at = 100
- low-at = 15
- battery = BAT0
- adapter = ADP1
- poll-interval = 5
-
- [module/spotify]
- type = custom/script
- tail = true
- interval = 1
- format-prefix = "♫"
- format = <label>
- exec = ${get_spotify_status}
-
- [module/spotify-prev]
- type = custom/script
- exec = echo "◀◀"
- format = <label>
- click-left = playerctl previous -p spotify
-
- [module/spotify-play-pause]
- type = custom/ipc
- hook-0 = echo "▶"
- hook-1 = echo "▶"
- initial = 1
- click-left = playerctl play-pause -p spotify
-
- [module/spotify-next]
- type = custom/script
- exec = echo "▶▶"
- format = <label>
- click-left = playerctl next -p spotify
- '';
-
- script = "polybar example --config=~/.config/polybar/config.ini &";
- };
-
- picom = {
- enable = true;
- backend = "glx";
- vSync = true;
- inactiveOpacity = 0.9;
- activeOpacity = 1.0;
- fade = true;
- fadeSteps = [ 0.09 0.09 ];
- fadeDelta = 5;
- shadow = true;
- shadowOffsets = [ 12 12 ];
- shadowOpacity = 0.5;
- shadowExclude = [
- "class_g = 'Polybar'"
- "name = 'Polybar'"
- ];
- settings = {
- corner-radius = 15;
- };
- };
- };
+
}