From e6b6016ba7fa4385d8dbfc1d1227cb4f97ec099e Mon Sep 17 00:00:00 2001 From: Dennis Schoepf Date: Mon, 24 Nov 2025 23:07:37 +0100 Subject: [PATCH] wip: dnsc-machine setup --- hosts/dnsc-machine/default.nix | 8 +++ modules/wezterm/config/overrides.lua | 2 +- modules/wm/fuzzel/default.nix | 4 +- modules/wm/ironbar/config/config.toml | 2 +- modules/wm/niri/config/config.kdl | 80 ++++++++++++++++++--------- modules/wm/swaync/config.json | 12 ---- modules/wm/swaync/style.css | 20 ++++--- 7 files changed, 77 insertions(+), 51 deletions(-) diff --git a/hosts/dnsc-machine/default.nix b/hosts/dnsc-machine/default.nix index 9a52b2b..0de41a9 100644 --- a/hosts/dnsc-machine/default.nix +++ b/hosts/dnsc-machine/default.nix @@ -94,6 +94,14 @@ services.gnome.gnome-keyring.enable = true; security.pam.services.hyprlock = {}; + # Steam + programs.steam = { + enable = true; + remotePlay.openFirewall = true; # Open ports in the firewall for Steam Remote Play + dedicatedServer.openFirewall = true; # Open ports in the firewall for Source Dedicated Server + localNetworkGameTransfers.openFirewall = true; # Open ports in the firewall for Steam Local Network Game Transfers + }; + # Nix settings nix.gc = { automatic = true; diff --git a/modules/wezterm/config/overrides.lua b/modules/wezterm/config/overrides.lua index 369db68..dd17be1 100644 --- a/modules/wezterm/config/overrides.lua +++ b/modules/wezterm/config/overrides.lua @@ -15,7 +15,7 @@ function M.apply_to_config(config) config.font_size = 15.5 config.window_decorations = "NONE" config.window_padding = helpers.get_padding(18, 6) - config.window_background_opacity = 1 + config.window_background_opacity = 0.94 -- config.enable_wayland = false; end end diff --git a/modules/wm/fuzzel/default.nix b/modules/wm/fuzzel/default.nix index 9a39f32..0de3c7f 100644 --- a/modules/wm/fuzzel/default.nix +++ b/modules/wm/fuzzel/default.nix @@ -7,7 +7,7 @@ main = { terminal = "${pkgs.wezterm}/bin/wezterm start -- "; layer = "overlay"; - font = "VictorMono Nerd Font:weight=400:size=15"; + font = "VictorMono Nerd Font:weight=300:size=15"; use-bold = true; icon-theme = "Reversal-dark"; width = 85; @@ -19,7 +19,7 @@ image-size-ratio = 1; }; colors = { - background = "0f0b15ff"; + background = "0f0b15f5"; text = "ffffffff"; message = "bf8a9fff"; prompt = "807c9fff"; diff --git a/modules/wm/ironbar/config/config.toml b/modules/wm/ironbar/config/config.toml index 14c685c..bc56e22 100644 --- a/modules/wm/ironbar/config/config.toml +++ b/modules/wm/ironbar/config/config.toml @@ -1,4 +1,4 @@ -position = "left" +position = "top" height = 24 icon_theme = "Reversal-dark" diff --git a/modules/wm/niri/config/config.kdl b/modules/wm/niri/config/config.kdl index 747892c..7525565 100644 --- a/modules/wm/niri/config/config.kdl +++ b/modules/wm/niri/config/config.kdl @@ -81,7 +81,7 @@ layout { // - "always", the focused column will always be centered. // - "on-overflow", focusing a column will center it if it doesn't fit // together with the previously focused column. - center-focused-column "never" + center-focused-column "on-overflow" // You can customize the widths that "switch-preset-column-width" (Mod+R) toggles between. preset-column-widths { @@ -183,11 +183,9 @@ layout { } // STARTUP - -// Wallpaper Setup spawn-at-startup "swaync" -// spawn-at-startup "ironbar" -spawn-at-startup "swww-daemon" // Wallpaper +spawn-at-startup "ironbar" +spawn-at-startup "swww-daemon" spawn-sh-at-startup "~/.config/awww/bin/random-bg.sh ~/Pictures/Wallpapers/safe/dark" hotkey-overlay { @@ -218,10 +216,33 @@ animations { // slowdown 3.0 } +overview { + backdrop-color "#0f0b15" +} + +workspace "main" +workspace "code" +workspace "gaming" +workspace "other" +workspace "chat" +workspace "media" + // Window rules let you adjust behavior for individual windows. // Find more information on the wiki: // https://yalter.github.io/niri/Configuration:-Window-Rules +// TODO: Set up window rules for windows (only at niri startup) +// window-rule { +// match at-startup=true app-id=r#"^Spotify$"# +// open-on-workspace "media" +// } + +// TODO: Set up window rules for windows (only at niri startup) +// window-rule { +// match at-startup=true app-id=r#"^Signal$"# +// open-on-workspace "chat" +// } + // Work around WezTerm's initial configure bug // by setting an empty default-column-width. // window-rule { @@ -241,6 +262,11 @@ window-rule { open-floating true } +window-rule { + match app-id=r#"gimp$"# title="^GIMP$" + open-maximized true +} + // Example: block out two password managers from screen capture. // (This example rule is commented out with a "/-" in front.) /-window-rule { @@ -409,24 +435,24 @@ binds { // // For example, with 2 workspaces + 1 empty, indices 3, 4, 5 and so on // will all refer to the 3rd workspace. - Mod+1 { focus-workspace 1; } - Mod+2 { focus-workspace 2; } - Mod+3 { focus-workspace 3; } - Mod+4 { focus-workspace 4; } - Mod+5 { focus-workspace 5; } - Mod+6 { focus-workspace 6; } - Mod+7 { focus-workspace 7; } - Mod+8 { focus-workspace 8; } - Mod+9 { focus-workspace 9; } - Mod+Ctrl+1 { move-column-to-workspace 1; } - Mod+Ctrl+2 { move-column-to-workspace 2; } - Mod+Ctrl+3 { move-column-to-workspace 3; } - Mod+Ctrl+4 { move-column-to-workspace 4; } - Mod+Ctrl+5 { move-column-to-workspace 5; } - Mod+Ctrl+6 { move-column-to-workspace 6; } - Mod+Ctrl+7 { move-column-to-workspace 7; } - Mod+Ctrl+8 { move-column-to-workspace 8; } - Mod+Ctrl+9 { move-column-to-workspace 9; } + Alt+1 { focus-workspace "main"; } + Alt+2 { focus-workspace "code"; } + Alt+3 { focus-workspace "gaming"; } + Alt+4 { focus-workspace "other"; } + Alt+5 { focus-workspace "chat"; } + Alt+6 { focus-workspace "media"; } + Alt+7 { focus-workspace 7; } + Alt+8 { focus-workspace 8; } + Alt+9 { focus-workspace 9; } + Alt+Ctrl+1 { move-column-to-workspace "main"; } + Alt+Ctrl+2 { move-column-to-workspace "code"; } + Alt+Ctrl+3 { move-column-to-workspace "gaming"; } + Alt+Ctrl+4 { move-column-to-workspace "other"; } + Alt+Ctrl+5 { move-column-to-workspace "chat"; } + Alt+Ctrl+6 { move-column-to-workspace "media"; } + Alt+Ctrl+7 { move-column-to-workspace 7; } + Alt+Ctrl+8 { move-column-to-workspace 8; } + Alt+Ctrl+9 { move-column-to-workspace 9; } // Alternatively, there are commands to move just a single window: // Mod+Ctrl+1 { move-window-to-workspace 1; } @@ -437,13 +463,13 @@ binds { // The following binds move the focused window in and out of a column. // If the window is alone, they will consume it into the nearby column to the side. // If the window is already in a column, they will expel it out. - Mod+BracketLeft { consume-or-expel-window-left; } - Mod+BracketRight { consume-or-expel-window-right; } + Mod+Comma { consume-or-expel-window-left; } + Mod+Period { consume-or-expel-window-right; } // Consume one window from the right to the bottom of the focused column. - Mod+Comma { consume-window-into-column; } + // Mod+Comma { consume-window-into-column; } // Expel the bottom window from the focused column to the right. - Mod+Period { expel-window-from-column; } + // Mod+Period { expel-window-from-column; } Mod+R { switch-preset-column-width; } // Cycling through the presets in reverse order is also possible. diff --git a/modules/wm/swaync/config.json b/modules/wm/swaync/config.json index 6fa5446..3760937 100644 --- a/modules/wm/swaync/config.json +++ b/modules/wm/swaync/config.json @@ -21,18 +21,6 @@ }, "buttons-grid": { "actions": [ - { - "command": "wezterm start -- nmtui", - "label": " 󰛳 " - }, - { - "command": "blueman-manager", - "label": " 󰂯 " - }, - { - "command": "hyprlock", - "label": " 󰌾 " - }, { "command": "niri msg action quit", "label": " 󰍃 " diff --git a/modules/wm/swaync/style.css b/modules/wm/swaync/style.css index 535a042..6bde05f 100644 --- a/modules/wm/swaync/style.css +++ b/modules/wm/swaync/style.css @@ -78,11 +78,11 @@ notificationwindow, blankwindow, blankwindow { border-radius: 12px; padding: 6px 12px; margin: 8px; - background-color: @bg; + background-color: @bg_secondary; } .notification-row .notification-background .notification:hover { - background-color: @bg; + background-color: @bg_secondary; } .notification-row .notification-background .notification.low { @@ -110,7 +110,7 @@ notificationwindow, blankwindow, blankwindow { .notification-row .notification-background .notification .notification-default-action:hover { -gtk-icon-filter: none; - background-color: @bg; + background-color: @bg_secondary; } .notification-row .notification-background .notification .notification-default-action:not(:only-child) { @@ -302,7 +302,7 @@ notificationwindow, blankwindow, blankwindow { } .notification-group.collapsed .notification-row .notification { - background-color: @bg; + background-color: @bg_secondary; } .notification-group.collapsed .notification-row:not(:last-child) { @@ -316,14 +316,16 @@ notificationwindow, blankwindow, blankwindow { } .notification-group.collapsed:hover .notification-row:not(:only-child) .notification { - background-color: @bg; + background-color: @bg_secondary; } .control-center { /* The Control Center which contains the old notifications + widgets */ background-color: @bg; border-radius: 0; + border-left: 2px solid @magenta_subtle_bg; color: @fg; + opacity: 0.95; } .control-center .control-center-list-placeholder { @@ -338,7 +340,7 @@ notificationwindow, blankwindow, blankwindow { .control-center .control-center-list .notification { box-shadow: none; - border: 2px solid @magenta_subtle_bg_darker; + border: 2px solid @magenta_subtle_bg; } .control-center .control-center-list .notification .notification-default-action, @@ -347,7 +349,7 @@ notificationwindow, blankwindow, blankwindow { .control-center .control-center-list .notification .notification-default-action:hover, .control-center .control-center-list .notification .notification-action:hover { - background-color: @bg; + background-color: @bg_secondary; } .blank-window { @@ -365,6 +367,7 @@ notificationwindow, blankwindow, blankwindow { .widget-mpris { padding: 0; + opacity: 1; } .widget-mpris .widget-mpris-player { @@ -425,7 +428,7 @@ notificationwindow, blankwindow, blankwindow { margin-left: 12px; font-size: 1.8rem; font-weight: bold; - color: @fg_dim; + color: @fg; } /* .widget-buttons-grid { */ @@ -437,6 +440,7 @@ notificationwindow, blankwindow, blankwindow { margin: 8px; background-color: @magenta_subtle_bg_darker; color: @magenta_brighter; + opacity: 1; } .widget-buttons-grid flowboxchild > button:hover {