From 7f73fcc77bf7ad08e530e90c6dbdd0ce0b91cf30 Mon Sep 17 00:00:00 2001 From: Dennis Schoepf Date: Tue, 25 Nov 2025 16:32:58 +0100 Subject: [PATCH 01/28] wip: dnsc-machine setup --- hosts/dnsc-machine/default.nix | 1 + modules/wm/niri/config/config.kdl | 1 + 2 files changed, 2 insertions(+) diff --git a/hosts/dnsc-machine/default.nix b/hosts/dnsc-machine/default.nix index 21c2ca7..ac547fd 100644 --- a/hosts/dnsc-machine/default.nix +++ b/hosts/dnsc-machine/default.nix @@ -141,6 +141,7 @@ ghostty fish pwvucontrol + rclone ]; # Some programs need SUID wrappers, can be configured further or are diff --git a/modules/wm/niri/config/config.kdl b/modules/wm/niri/config/config.kdl index ab96739..3f36008 100644 --- a/modules/wm/niri/config/config.kdl +++ b/modules/wm/niri/config/config.kdl @@ -185,6 +185,7 @@ layout { // STARTUP spawn-at-startup "swaync" spawn-at-startup "swww-daemon" +spawn-at-startup "ironbar" spawn-sh-at-startup "~/.config/awww/bin/random-bg.sh ~/Pictures/Wallpapers/safe/dark" hotkey-overlay { From 3dc88415d878c016c8d69e1a2dc9bf1acf362347 Mon Sep 17 00:00:00 2001 From: Dennis Schoepf Date: Tue, 25 Nov 2025 16:43:58 +0100 Subject: [PATCH 02/28] wip: dnsc-machine setup --- home/linux.nix | 2 ++ hosts/dnsc-machine/default.nix | 1 - modules/rclone/default.nix | 6 ++++++ 3 files changed, 8 insertions(+), 1 deletion(-) create mode 100644 modules/rclone/default.nix diff --git a/home/linux.nix b/home/linux.nix index d7a0c3f..8453449 100644 --- a/home/linux.nix +++ b/home/linux.nix @@ -33,6 +33,8 @@ nautilus-open-any-terminal swaynotificationcenter gimp + rclone + rclone-ui ]; imports = [ diff --git a/hosts/dnsc-machine/default.nix b/hosts/dnsc-machine/default.nix index ac547fd..21c2ca7 100644 --- a/hosts/dnsc-machine/default.nix +++ b/hosts/dnsc-machine/default.nix @@ -141,7 +141,6 @@ ghostty fish pwvucontrol - rclone ]; # Some programs need SUID wrappers, can be configured further or are diff --git a/modules/rclone/default.nix b/modules/rclone/default.nix new file mode 100644 index 0000000..7d55462 --- /dev/null +++ b/modules/rclone/default.nix @@ -0,0 +1,6 @@ +{ + xdg.configFile."rclone/rclone.conf".text = '' + [dnsc-icloud] + type = + ''; +} From f09cb18aa633923ed8ef7bed5e6e029bc76bf8f4 Mon Sep 17 00:00:00 2001 From: Dennis Schoepf Date: Tue, 25 Nov 2025 16:54:23 +0100 Subject: [PATCH 03/28] removes rclone --- home/linux.nix | 2 -- modules/rclone/default.nix | 6 ------ 2 files changed, 8 deletions(-) delete mode 100644 modules/rclone/default.nix diff --git a/home/linux.nix b/home/linux.nix index 8453449..d7a0c3f 100644 --- a/home/linux.nix +++ b/home/linux.nix @@ -33,8 +33,6 @@ nautilus-open-any-terminal swaynotificationcenter gimp - rclone - rclone-ui ]; imports = [ diff --git a/modules/rclone/default.nix b/modules/rclone/default.nix deleted file mode 100644 index 7d55462..0000000 --- a/modules/rclone/default.nix +++ /dev/null @@ -1,6 +0,0 @@ -{ - xdg.configFile."rclone/rclone.conf".text = '' - [dnsc-icloud] - type = - ''; -} From da777df16a50a016e1668dc887915db494e17a26 Mon Sep 17 00:00:00 2001 From: Dennis Schoepf Date: Tue, 25 Nov 2025 17:09:52 +0100 Subject: [PATCH 04/28] wip: dnsc-machine setup --- modules/ghostty/default.nix | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 modules/ghostty/default.nix diff --git a/modules/ghostty/default.nix b/modules/ghostty/default.nix new file mode 100644 index 0000000..0984a77 --- /dev/null +++ b/modules/ghostty/default.nix @@ -0,0 +1,34 @@ +{ + # TODO: Add custom theme: https://nix-community.github.io/home-manager/options.xhtml#opt-programs.ghostty.themes + programs.ghostty = { + enable = true; + enableFishIntegration = true; + installBatSyntax = true; + installVimSyntax = true; + systemd.enable = true; + clearDefaultKeybinds = false; # set to true after config is finished + settings = { + theme = "catppuccin-mocha"; + font-size = 15; + font = "VictorMono Nerd Font"; + keybind = [ + "ctrl+b>v=new_split:left" + "ctrl+b>s=new_split:down" + "ctrl+b>h=goto_split:left" + "ctrl+b>j=goto_split:down" + "ctrl+b>k=goto_split:up" + "ctrl+b>l=goto_split:right" + "ctrl+b>c=new_tab" + "ctrl+b>1=goto_tab:1" + "ctrl+b>2=goto_tab:2" + "ctrl+b>3=goto_tab:3" + "ctrl+b>4=goto_tab:4" + "ctrl+b>5=goto_tab:5" + "ctrl+b>6=goto_tab:6" + "ctrl+b>7=goto_tab:7" + "ctrl+b>8=goto_tab:8" + "ctrl+b>9=goto_tab:9" + ]; + }; + }; +} From 27d71bfe9fe592437a4936e8798c1e16b3071eeb Mon Sep 17 00:00:00 2001 From: Dennis Schoepf Date: Tue, 25 Nov 2025 17:11:14 +0100 Subject: [PATCH 05/28] wip: dnsc-machine setup --- home/linux.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/home/linux.nix b/home/linux.nix index d7a0c3f..e2e3b18 100644 --- a/home/linux.nix +++ b/home/linux.nix @@ -42,6 +42,7 @@ ../modules/direnv ../modules/nvim ../modules/wezterm + ../modules/ghostty ../modules/fish ../modules/firefox ../modules/wm/swaync From 3e6aeef589f7a4fbd8b17ba78b73f919d2e50cd4 Mon Sep 17 00:00:00 2001 From: Dennis Schoepf Date: Tue, 25 Nov 2025 17:13:20 +0100 Subject: [PATCH 06/28] wip: dnsc-machine setup --- modules/ghostty/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/ghostty/default.nix b/modules/ghostty/default.nix index 0984a77..6ea7496 100644 --- a/modules/ghostty/default.nix +++ b/modules/ghostty/default.nix @@ -8,7 +8,7 @@ systemd.enable = true; clearDefaultKeybinds = false; # set to true after config is finished settings = { - theme = "catppuccin-mocha"; + theme = "Catppuccin Mocha"; font-size = 15; font = "VictorMono Nerd Font"; keybind = [ From 5f14250f68ea9b624103b7e2f330e9a9e2a59662 Mon Sep 17 00:00:00 2001 From: Dennis Schoepf Date: Tue, 25 Nov 2025 17:14:41 +0100 Subject: [PATCH 07/28] wip: dnsc-machine setup --- modules/ghostty/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/modules/ghostty/default.nix b/modules/ghostty/default.nix index 6ea7496..b49325c 100644 --- a/modules/ghostty/default.nix +++ b/modules/ghostty/default.nix @@ -9,8 +9,8 @@ clearDefaultKeybinds = false; # set to true after config is finished settings = { theme = "Catppuccin Mocha"; - font-size = 15; - font = "VictorMono Nerd Font"; + font-size = 16; + font-family = "VictorMono Nerd Font"; keybind = [ "ctrl+b>v=new_split:left" "ctrl+b>s=new_split:down" From 372e4378e27a24c31e5d3452b4e357e1484768cc Mon Sep 17 00:00:00 2001 From: Dennis Schoepf Date: Tue, 25 Nov 2025 17:17:10 +0100 Subject: [PATCH 08/28] wip: dnsc-machine setup --- modules/ghostty/default.nix | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/modules/ghostty/default.nix b/modules/ghostty/default.nix index b49325c..b6ea2a5 100644 --- a/modules/ghostty/default.nix +++ b/modules/ghostty/default.nix @@ -11,6 +11,10 @@ theme = "Catppuccin Mocha"; font-size = 16; font-family = "VictorMono Nerd Font"; + font-variation = "wght=500"; + background-opacity = 0.95; + window-padding-x = 8; + window-padding-y = 8; keybind = [ "ctrl+b>v=new_split:left" "ctrl+b>s=new_split:down" From 18fd957cc99eb53f2fea73947267c65ed82caf69 Mon Sep 17 00:00:00 2001 From: Dennis Schoepf Date: Tue, 25 Nov 2025 17:18:13 +0100 Subject: [PATCH 09/28] wip: dnsc-machine setup --- modules/ghostty/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/ghostty/default.nix b/modules/ghostty/default.nix index b6ea2a5..deae9c1 100644 --- a/modules/ghostty/default.nix +++ b/modules/ghostty/default.nix @@ -12,7 +12,7 @@ font-size = 16; font-family = "VictorMono Nerd Font"; font-variation = "wght=500"; - background-opacity = 0.95; + background-opacity = 0; window-padding-x = 8; window-padding-y = 8; keybind = [ From 745542b1613eade2266bf6b7122a9139652784ea Mon Sep 17 00:00:00 2001 From: Dennis Schoepf Date: Tue, 25 Nov 2025 21:23:24 +0100 Subject: [PATCH 10/28] wip: dnsc-machine setup --- modules/ghostty/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/ghostty/default.nix b/modules/ghostty/default.nix index deae9c1..b6ea2a5 100644 --- a/modules/ghostty/default.nix +++ b/modules/ghostty/default.nix @@ -12,7 +12,7 @@ font-size = 16; font-family = "VictorMono Nerd Font"; font-variation = "wght=500"; - background-opacity = 0; + background-opacity = 0.95; window-padding-x = 8; window-padding-y = 8; keybind = [ From 40ce047bdc073843ca9e5a3d4f2c84b19abb6e44 Mon Sep 17 00:00:00 2001 From: Dennis Schoepf Date: Tue, 25 Nov 2025 21:28:45 +0100 Subject: [PATCH 11/28] wip: dnsc-machine setup --- modules/ghostty/default.nix | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/modules/ghostty/default.nix b/modules/ghostty/default.nix index b6ea2a5..fcf58e6 100644 --- a/modules/ghostty/default.nix +++ b/modules/ghostty/default.nix @@ -10,8 +10,7 @@ settings = { theme = "Catppuccin Mocha"; font-size = 16; - font-family = "VictorMono Nerd Font"; - font-variation = "wght=500"; + font-family = "VictorMono NF Medium"; background-opacity = 0.95; window-padding-x = 8; window-padding-y = 8; From d2f8d18d95584a8653905e67a3ce6d32aefd5ac1 Mon Sep 17 00:00:00 2001 From: Dennis Schoepf Date: Tue, 25 Nov 2025 21:32:47 +0100 Subject: [PATCH 12/28] wip: dnsc-machine setup --- modules/ghostty/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/ghostty/default.nix b/modules/ghostty/default.nix index fcf58e6..ef22c3f 100644 --- a/modules/ghostty/default.nix +++ b/modules/ghostty/default.nix @@ -10,7 +10,7 @@ settings = { theme = "Catppuccin Mocha"; font-size = 16; - font-family = "VictorMono NF Medium"; + font-family = "VictorMono NF SemiBold"; background-opacity = 0.95; window-padding-x = 8; window-padding-y = 8; From f777b4abf5f3258df685fa9d0b20174eb9fff5f5 Mon Sep 17 00:00:00 2001 From: Dennis Schoepf Date: Tue, 25 Nov 2025 21:34:01 +0100 Subject: [PATCH 13/28] wip: dnsc-machine setup --- modules/ghostty/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/modules/ghostty/default.nix b/modules/ghostty/default.nix index ef22c3f..775e9a0 100644 --- a/modules/ghostty/default.nix +++ b/modules/ghostty/default.nix @@ -9,11 +9,11 @@ clearDefaultKeybinds = false; # set to true after config is finished settings = { theme = "Catppuccin Mocha"; - font-size = 16; + font-size = 17; font-family = "VictorMono NF SemiBold"; background-opacity = 0.95; - window-padding-x = 8; - window-padding-y = 8; + window-padding-x = 15; + window-padding-y = 15; keybind = [ "ctrl+b>v=new_split:left" "ctrl+b>s=new_split:down" From 6fa7ea037eabf852216ee0c1b83891ba8e7a5429 Mon Sep 17 00:00:00 2001 From: Dennis Schoepf Date: Tue, 25 Nov 2025 21:36:07 +0100 Subject: [PATCH 14/28] wip: dnsc-machine setup --- modules/ghostty/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/modules/ghostty/default.nix b/modules/ghostty/default.nix index 775e9a0..4a446c5 100644 --- a/modules/ghostty/default.nix +++ b/modules/ghostty/default.nix @@ -9,11 +9,11 @@ clearDefaultKeybinds = false; # set to true after config is finished settings = { theme = "Catppuccin Mocha"; - font-size = 17; + font-size = 15; font-family = "VictorMono NF SemiBold"; background-opacity = 0.95; - window-padding-x = 15; - window-padding-y = 15; + window-padding-x = 16; + window-padding-y = 12; keybind = [ "ctrl+b>v=new_split:left" "ctrl+b>s=new_split:down" From b6159d3ecd393c30c7a52b292b696ae72e97bb3b Mon Sep 17 00:00:00 2001 From: Dennis Schoepf Date: Tue, 25 Nov 2025 22:25:33 +0100 Subject: [PATCH 15/28] configures ghostty --- hosts/dnsc-machine/default.nix | 6 ++++- modules/ghostty/default.nix | 49 ++++++++++++++++++++++++++++++---- 2 files changed, 49 insertions(+), 6 deletions(-) diff --git a/hosts/dnsc-machine/default.nix b/hosts/dnsc-machine/default.nix index 21c2ca7..747548a 100644 --- a/hosts/dnsc-machine/default.nix +++ b/hosts/dnsc-machine/default.nix @@ -199,7 +199,11 @@ services.tailscale.enable = true; # Environment & session variables - environment.variables.EDITOR = "nvim"; + environment.variables = { + EDITOR = "nvim"; + SYSTEMD_EDITOR = "nvim"; + VISUAL = "nvim"; + }; environment.sessionVariables.NIXOS_OZONE_WL = "1"; # This value determines the NixOS release from which the default diff --git a/modules/ghostty/default.nix b/modules/ghostty/default.nix index 4a446c5..796bc57 100644 --- a/modules/ghostty/default.nix +++ b/modules/ghostty/default.nix @@ -3,25 +3,54 @@ programs.ghostty = { enable = true; enableFishIntegration = true; - installBatSyntax = true; installVimSyntax = true; systemd.enable = true; - clearDefaultKeybinds = false; # set to true after config is finished + clearDefaultKeybinds = true; settings = { theme = "Catppuccin Mocha"; font-size = 15; font-family = "VictorMono NF SemiBold"; background-opacity = 0.95; - window-padding-x = 16; + window-padding-x = 12; window-padding-y = 12; + window-padding-balance = true; + window-inherit-working-directory = true; + window-theme = "ghostty"; + copy-on-select = true; + shell-integration-features = true; + scrollback-limit = 100000; + background = "#0f0b15"; + foreground = "#ffffff"; + cursor-color = "#d369af"; + selection-foreground = "#af85ea"; + selection-background = "#572454"; + palette = [ + "0=#0f0b15" + "1=#f47359" + "2=#29a444" + "3=#b58a52" + "4=#3f95f6" + "5=#d369af" + "6=#4fbaef" + "7=#b8c6d5" + "8=#807c9f" + "9=#ff6a7a" + "10=#00a392" + "11=#df9080" + "12=#029fff" + "13=#af85ea" + "14=#35afbf" + "15=#ffffff" + ]; keybind = [ - "ctrl+b>v=new_split:left" - "ctrl+b>s=new_split:down" + "ctrl+b>s=new_split:auto" "ctrl+b>h=goto_split:left" "ctrl+b>j=goto_split:down" "ctrl+b>k=goto_split:up" "ctrl+b>l=goto_split:right" + "ctrl+b>z=toggle_split_zoom" "ctrl+b>c=new_tab" + "ctrl+b>x=close_surface" "ctrl+b>1=goto_tab:1" "ctrl+b>2=goto_tab:2" "ctrl+b>3=goto_tab:3" @@ -31,6 +60,16 @@ "ctrl+b>7=goto_tab:7" "ctrl+b>8=goto_tab:8" "ctrl+b>9=goto_tab:9" + "ctrl+b+u=scroll_page_lines:-20" + "ctrl+b+d=scroll_page_lines:20" + "ctrl+b>p=toggle_command_palette" + "ctrl++=increase_font_size:2" + "ctrl+-=decrease_font_size:2" + "ctrl+0=reset_font_size" + "ctrl+shift+a=select_all" + "ctrl+shift+c=copy_to_clipboard" + "ctrl+shift+v=paste_from_clipboard" + "global:cmd+semicolon>p=toggle_quick_terminal" ]; }; }; From c8bf3951b15d4df6cf536f98bbd04badc96176a3 Mon Sep 17 00:00:00 2001 From: Dennis Schoepf Date: Tue, 25 Nov 2025 22:26:49 +0100 Subject: [PATCH 16/28] configures ghostty --- modules/ghostty/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/ghostty/default.nix b/modules/ghostty/default.nix index 796bc57..35f8184 100644 --- a/modules/ghostty/default.nix +++ b/modules/ghostty/default.nix @@ -4,7 +4,7 @@ enable = true; enableFishIntegration = true; installVimSyntax = true; - systemd.enable = true; + # systemd.enable = true; clearDefaultKeybinds = true; settings = { theme = "Catppuccin Mocha"; From 40f1e6ac351efae3ddc894ff053f4bd47cd0e434 Mon Sep 17 00:00:00 2001 From: Dennis Schoepf Date: Tue, 25 Nov 2025 22:28:19 +0100 Subject: [PATCH 17/28] wip: dnsc-machine setup --- modules/ghostty/default.nix | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/modules/ghostty/default.nix b/modules/ghostty/default.nix index 35f8184..7be47cb 100644 --- a/modules/ghostty/default.nix +++ b/modules/ghostty/default.nix @@ -60,16 +60,16 @@ "ctrl+b>7=goto_tab:7" "ctrl+b>8=goto_tab:8" "ctrl+b>9=goto_tab:9" + "ctrl+b>p=toggle_command_palette" "ctrl+b+u=scroll_page_lines:-20" "ctrl+b+d=scroll_page_lines:20" - "ctrl+b>p=toggle_command_palette" - "ctrl++=increase_font_size:2" - "ctrl+-=decrease_font_size:2" + "ctrl+plus=increase_font_size:2" + "ctrl+minus=decrease_font_size:2" "ctrl+0=reset_font_size" "ctrl+shift+a=select_all" "ctrl+shift+c=copy_to_clipboard" "ctrl+shift+v=paste_from_clipboard" - "global:cmd+semicolon>p=toggle_quick_terminal" + "global:cmd+semicolon=toggle_quick_terminal" ]; }; }; From 8fbed39caa394e096b925e44fa6cc638ce27fc15 Mon Sep 17 00:00:00 2001 From: Dennis Schoepf Date: Tue, 25 Nov 2025 22:39:08 +0100 Subject: [PATCH 18/28] wip: dnsc-machine setup --- modules/ghostty/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/modules/ghostty/default.nix b/modules/ghostty/default.nix index 7be47cb..a329917 100644 --- a/modules/ghostty/default.nix +++ b/modules/ghostty/default.nix @@ -4,7 +4,7 @@ enable = true; enableFishIntegration = true; installVimSyntax = true; - # systemd.enable = true; + systemd.enable = true; clearDefaultKeybinds = true; settings = { theme = "Catppuccin Mocha"; @@ -61,8 +61,8 @@ "ctrl+b>8=goto_tab:8" "ctrl+b>9=goto_tab:9" "ctrl+b>p=toggle_command_palette" - "ctrl+b+u=scroll_page_lines:-20" - "ctrl+b+d=scroll_page_lines:20" + "ctrl+shift+u=scroll_page_lines:-40" + "ctrl+shift+d=scroll_page_lines:40" "ctrl+plus=increase_font_size:2" "ctrl+minus=decrease_font_size:2" "ctrl+0=reset_font_size" From 5e8740cab94ce3b60ec42a459e7f746e18dcc17d Mon Sep 17 00:00:00 2001 From: Dennis Schoepf Date: Tue, 25 Nov 2025 22:56:34 +0100 Subject: [PATCH 19/28] configures ly --- modules/ghostty/default.nix | 1 - modules/wm/ly/default.nix | 19 ++++++++++++++++++- 2 files changed, 18 insertions(+), 2 deletions(-) diff --git a/modules/ghostty/default.nix b/modules/ghostty/default.nix index a329917..88f43f4 100644 --- a/modules/ghostty/default.nix +++ b/modules/ghostty/default.nix @@ -1,5 +1,4 @@ { - # TODO: Add custom theme: https://nix-community.github.io/home-manager/options.xhtml#opt-programs.ghostty.themes programs.ghostty = { enable = true; enableFishIntegration = true; diff --git a/modules/wm/ly/default.nix b/modules/wm/ly/default.nix index 6d3eeab..6a08f73 100644 --- a/modules/wm/ly/default.nix +++ b/modules/wm/ly/default.nix @@ -1,6 +1,23 @@ { services.displayManager = { enable = true; - ly.enable = true; + ly = { + enable = true; + settings = { + animation = "doom"; + asterisk = "0x2022"; + bigclock = "en"; + default_input = "password"; + doom_top_color = "0x00c57faf"; + doom_middle_color = "0x00d369af"; + doom_bottom_color = "0x00572454"; + session_log = ".local/share/ly-session.log"; + vi_mode = true; + vi_default_mode = "insert"; + bg = "0x000f0b15"; + border_fg = "0x00807c9f"; + box-title = "dnsc-machine"; + }; + }; }; } From cb2008990d32b13083e5324c5f09956ad6b909f9 Mon Sep 17 00:00:00 2001 From: Dennis Schoepf Date: Tue, 25 Nov 2025 23:10:25 +0100 Subject: [PATCH 20/28] configures ly --- home/linux.nix | 1 - hosts/dnsc-machine/default.nix | 9 +++++++++ modules/wm/ly/default.nix | 2 ++ 3 files changed, 11 insertions(+), 1 deletion(-) diff --git a/home/linux.nix b/home/linux.nix index e2e3b18..0448b2a 100644 --- a/home/linux.nix +++ b/home/linux.nix @@ -41,7 +41,6 @@ ../modules/zoxide ../modules/direnv ../modules/nvim - ../modules/wezterm ../modules/ghostty ../modules/fish ../modules/firefox diff --git a/hosts/dnsc-machine/default.nix b/hosts/dnsc-machine/default.nix index 747548a..6673a73 100644 --- a/hosts/dnsc-machine/default.nix +++ b/hosts/dnsc-machine/default.nix @@ -198,6 +198,15 @@ # Tailscale services.tailscale.enable = true; + # Printing + services.printing.enable = true; + services.avahi = { + enable = true; + nssmdns4 = true; + openFirewall = true; + }; + + # Environment & session variables environment.variables = { EDITOR = "nvim"; diff --git a/modules/wm/ly/default.nix b/modules/wm/ly/default.nix index 6a08f73..02fe8b0 100644 --- a/modules/wm/ly/default.nix +++ b/modules/wm/ly/default.nix @@ -5,9 +5,11 @@ enable = true; settings = { animation = "doom"; + animation_timeout_sec = 30; asterisk = "0x2022"; bigclock = "en"; default_input = "password"; + doom_fire_height = 1; doom_top_color = "0x00c57faf"; doom_middle_color = "0x00d369af"; doom_bottom_color = "0x00572454"; From 44e1b85f7420369af57751200765b64d4bae371e Mon Sep 17 00:00:00 2001 From: Dennis Schoepf Date: Tue, 25 Nov 2025 23:13:47 +0100 Subject: [PATCH 21/28] updates ghostty config --- modules/ghostty/default.nix | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/modules/ghostty/default.nix b/modules/ghostty/default.nix index 88f43f4..b917628 100644 --- a/modules/ghostty/default.nix +++ b/modules/ghostty/default.nix @@ -18,6 +18,8 @@ copy-on-select = true; shell-integration-features = true; scrollback-limit = 100000; + link-url = true; + link-previews = true; background = "#0f0b15"; foreground = "#ffffff"; cursor-color = "#d369af"; @@ -43,6 +45,8 @@ ]; keybind = [ "ctrl+b>s=new_split:auto" + "ctrl+b>-=new_split:down" + "ctrl+b>|=new_split:right" "ctrl+b>h=goto_split:left" "ctrl+b>j=goto_split:down" "ctrl+b>k=goto_split:up" From 1407b6964d872b69cc26081e113db22c56307a94 Mon Sep 17 00:00:00 2001 From: Dennis Schoepf Date: Tue, 25 Nov 2025 23:51:16 +0100 Subject: [PATCH 22/28] configures cliphist --- home/linux.nix | 1 + hosts/dnsc-machine/default.nix | 8 ++++++++ modules/wm/cliphist/default.nix | 9 +++++++++ modules/wm/fuzzel/default.nix | 1 - modules/wm/niri/config/config.kdl | 14 ++------------ modules/wm/niri/default.nix | 2 -- modules/wm/swaync/style.css | 12 +++++++++--- 7 files changed, 29 insertions(+), 18 deletions(-) create mode 100644 modules/wm/cliphist/default.nix diff --git a/home/linux.nix b/home/linux.nix index 0448b2a..de12416 100644 --- a/home/linux.nix +++ b/home/linux.nix @@ -45,6 +45,7 @@ ../modules/fish ../modules/firefox ../modules/wm/swaync + ../modules/wm/cliphist ../modules/wm/awww ../modules/wm/fuzzel ../modules/wm/ironbar diff --git a/hosts/dnsc-machine/default.nix b/hosts/dnsc-machine/default.nix index 6673a73..46ff10c 100644 --- a/hosts/dnsc-machine/default.nix +++ b/hosts/dnsc-machine/default.nix @@ -151,6 +151,14 @@ enableSSHSupport = true; }; + xdg.portal = { + enable = true; + extraPortals = [ + pkgs.xdg-desktop-portal-gtk + pkgs.xdg-desktop-portal-gnome + ]; + }; + # Services # Pipewire diff --git a/modules/wm/cliphist/default.nix b/modules/wm/cliphist/default.nix new file mode 100644 index 0000000..8c1bee1 --- /dev/null +++ b/modules/wm/cliphist/default.nix @@ -0,0 +1,9 @@ +{ ... }: + +{ + services.cliphist = { + enable = true; + allowImages = true; + systemdTargets = [ "graphical-session.target" ]; + }; +} diff --git a/modules/wm/fuzzel/default.nix b/modules/wm/fuzzel/default.nix index 0de3c7f..db97092 100644 --- a/modules/wm/fuzzel/default.nix +++ b/modules/wm/fuzzel/default.nix @@ -21,7 +21,6 @@ colors = { background = "0f0b15f5"; text = "ffffffff"; - message = "bf8a9fff"; prompt = "807c9fff"; input = "ffffffff"; match = "c57fafff"; diff --git a/modules/wm/niri/config/config.kdl b/modules/wm/niri/config/config.kdl index 3f36008..143a8e1 100644 --- a/modules/wm/niri/config/config.kdl +++ b/modules/wm/niri/config/config.kdl @@ -246,16 +246,6 @@ window-rule { // open-on-workspace "chat" // } -// Work around WezTerm's initial configure bug -// by setting an empty default-column-width. -// window-rule { -// // This regular expression is intentionally made as specific as possible, -// // since this is the default config, and we want no false positives. -// // You can get away with just app-id="wezterm" if you want. -// match app-id=r#"^org\.wezfurlong\.wezterm$"# -// default-column-width {} -// } - // Open the Firefox picture-in-picture player as floating by default. window-rule { // This app-id regular expression will work for both: @@ -305,10 +295,10 @@ binds { Mod+Shift+Slash { show-hotkey-overlay; } // Suggested binds for running programs: terminal, app launcher, screen locker. - Mod+Return hotkey-overlay-title="Open a terminal" { spawn "wezterm"; } + Mod+T hotkey-overlay-title="Open a terminal" { spawn "ghostty +new-window"; } Mod+Space hotkey-overlay-title="Launcher" { spawn "fuzzel"; } Mod+B hotkey-overlay-title="Browser" { spawn "firefox"; } - Mod+M hotkey-overlay-title="System Monitor" { spawn-sh "wezterm start -- btop"; } + Mod+M hotkey-overlay-title="System Monitor" { spawn-sh "ghostty -e btop"; } Mod+N hotkey-overlay-title="File Manager" { spawn "nautilus"; } Mod+Alt+L hotkey-overlay-title="Lock the Screen: hyprlock" { spawn "hyprlock"; } diff --git a/modules/wm/niri/default.nix b/modules/wm/niri/default.nix index 53b4e63..d0f3bc6 100644 --- a/modules/wm/niri/default.nix +++ b/modules/wm/niri/default.nix @@ -10,7 +10,5 @@ services.polkit-gnome.enable = true; # WM Utilities (split out if they need additional config) - # TODO configure ironbar programs.hyprlock.enable = true; - # TODO: Install idle manager } diff --git a/modules/wm/swaync/style.css b/modules/wm/swaync/style.css index 6bde05f..605b966 100644 --- a/modules/wm/swaync/style.css +++ b/modules/wm/swaync/style.css @@ -32,6 +32,10 @@ @define-color silver #b8c6d5; @define-color silver_bright #ffffff; +* { + font-family: "VictorMono NF SemiBold"; +} + notificationwindow, blankwindow, blankwindow { background: transparent; } @@ -438,14 +442,16 @@ notificationwindow, blankwindow, blankwindow { .widget-buttons-grid flowboxchild > button { padding: 12px 0; margin: 8px; - background-color: @magenta_subtle_bg_darker; - color: @magenta_brighter; + background-color: @magenta; + color: @fg; opacity: 1; } .widget-buttons-grid flowboxchild > button:hover { padding: 12px 0; - background-color: @magenta_subtle_bg; + background-color: @magenta; + box-shadow: inset 0px 0px 15px 3px rgba(0,0,0,0.8); + transition: none; color: @fg; } From f57466354195856577c91277e20f1df35396ad16 Mon Sep 17 00:00:00 2001 From: Dennis Schoepf Date: Tue, 25 Nov 2025 23:56:58 +0100 Subject: [PATCH 23/28] updates ghostty config --- modules/ghostty/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/modules/ghostty/default.nix b/modules/ghostty/default.nix index b917628..3c6bdce 100644 --- a/modules/ghostty/default.nix +++ b/modules/ghostty/default.nix @@ -9,13 +9,13 @@ theme = "Catppuccin Mocha"; font-size = 15; font-family = "VictorMono NF SemiBold"; - background-opacity = 0.95; + background-opacity = 0.94; window-padding-x = 12; window-padding-y = 12; window-padding-balance = true; window-inherit-working-directory = true; window-theme = "ghostty"; - copy-on-select = true; + copy-on-select = "clipboard"; shell-integration-features = true; scrollback-limit = 100000; link-url = true; From 5c28fcff69d3fcabbf6d8767a09e95fa541958e0 Mon Sep 17 00:00:00 2001 From: Dennis Schoepf Date: Wed, 26 Nov 2025 00:03:49 +0100 Subject: [PATCH 24/28] configures fuzzel scripts --- modules/wm/fuzzel/default.nix | 7 ++++++- modules/wm/fuzzel/scripts/fuzzel-cliphist.sh | 3 +++ 2 files changed, 9 insertions(+), 1 deletion(-) create mode 100644 modules/wm/fuzzel/scripts/fuzzel-cliphist.sh diff --git a/modules/wm/fuzzel/default.nix b/modules/wm/fuzzel/default.nix index db97092..a0b6529 100644 --- a/modules/wm/fuzzel/default.nix +++ b/modules/wm/fuzzel/default.nix @@ -1,6 +1,10 @@ -{ pkgs, ... }: +{ config, pkgs, ... }: { + xdg.configFile."fuzzel/bin" = { + source = config.lib.file.mkOutOfStoreSymlink "${config.home.homeDirectory}/dev/nix-config/modules/wm/fuzzel/scripts"; + }; + programs.fuzzel = { enable = true; settings = { @@ -17,6 +21,7 @@ vertical-pad = 20; inner-pad = 25; image-size-ratio = 1; + prompt = "Open "; }; colors = { background = "0f0b15f5"; diff --git a/modules/wm/fuzzel/scripts/fuzzel-cliphist.sh b/modules/wm/fuzzel/scripts/fuzzel-cliphist.sh new file mode 100644 index 0000000..efa85f5 --- /dev/null +++ b/modules/wm/fuzzel/scripts/fuzzel-cliphist.sh @@ -0,0 +1,3 @@ +#!/bin/sh + +echo "test" From 68bf60569f7869ded67df2a337695ed6bd2c4cc7 Mon Sep 17 00:00:00 2001 From: Dennis Schoepf Date: Wed, 26 Nov 2025 00:12:55 +0100 Subject: [PATCH 25/28] some more clipboard config changes --- home/linux.nix | 1 + modules/ghostty/default.nix | 4 ++-- modules/wm/fuzzel/default.nix | 2 +- modules/wm/fuzzel/scripts/fuzzel-cliphist.sh | 2 +- modules/wm/niri/config/config.kdl | 5 +++-- 5 files changed, 8 insertions(+), 6 deletions(-) mode change 100644 => 100755 modules/wm/fuzzel/scripts/fuzzel-cliphist.sh diff --git a/home/linux.nix b/home/linux.nix index de12416..6f66cbf 100644 --- a/home/linux.nix +++ b/home/linux.nix @@ -33,6 +33,7 @@ nautilus-open-any-terminal swaynotificationcenter gimp + wl-clipboard ]; imports = [ diff --git a/modules/ghostty/default.nix b/modules/ghostty/default.nix index 3c6bdce..573dd2f 100644 --- a/modules/ghostty/default.nix +++ b/modules/ghostty/default.nix @@ -45,8 +45,8 @@ ]; keybind = [ "ctrl+b>s=new_split:auto" - "ctrl+b>-=new_split:down" - "ctrl+b>|=new_split:right" + "ctrl+b>minus=new_split:down" + "ctrl+b>v=new_split:right" "ctrl+b>h=goto_split:left" "ctrl+b>j=goto_split:down" "ctrl+b>k=goto_split:up" diff --git a/modules/wm/fuzzel/default.nix b/modules/wm/fuzzel/default.nix index a0b6529..73a4f50 100644 --- a/modules/wm/fuzzel/default.nix +++ b/modules/wm/fuzzel/default.nix @@ -21,7 +21,7 @@ vertical-pad = 20; inner-pad = 25; image-size-ratio = 1; - prompt = "Open "; + prompt = "Open\t"; }; colors = { background = "0f0b15f5"; diff --git a/modules/wm/fuzzel/scripts/fuzzel-cliphist.sh b/modules/wm/fuzzel/scripts/fuzzel-cliphist.sh old mode 100644 new mode 100755 index efa85f5..b047d7b --- a/modules/wm/fuzzel/scripts/fuzzel-cliphist.sh +++ b/modules/wm/fuzzel/scripts/fuzzel-cliphist.sh @@ -1,3 +1,3 @@ #!/bin/sh -echo "test" +cliphist list | fuzzel --dmenu --prompt "Copy\t" | cliphist decode | wl-copy diff --git a/modules/wm/niri/config/config.kdl b/modules/wm/niri/config/config.kdl index 143a8e1..d3e62c7 100644 --- a/modules/wm/niri/config/config.kdl +++ b/modules/wm/niri/config/config.kdl @@ -300,6 +300,7 @@ binds { Mod+B hotkey-overlay-title="Browser" { spawn "firefox"; } Mod+M hotkey-overlay-title="System Monitor" { spawn-sh "ghostty -e btop"; } Mod+N hotkey-overlay-title="File Manager" { spawn "nautilus"; } + Mod+V hotkey-overlay-title="Clipboard" { spawn-sh "~/.config/fuzzel/bin/fuzzel-cliphist.sh"; } Mod+Alt+L hotkey-overlay-title="Lock the Screen: hyprlock" { spawn "hyprlock"; } // Use spawn-sh to run a shell command. Do this if you need pipes, multiple commands, etc. @@ -497,8 +498,8 @@ binds { Mod+Shift+Equal { set-window-height "+10%"; } // Move the focused window between the floating and the tiling layout. - Mod+V { toggle-window-floating; } - Mod+Shift+V { switch-focus-between-floating-and-tiling; } + Mod+Shift+S { toggle-window-floating; } + // Mod+Shift+V { switch-focus-between-floating-and-tiling; } // Toggle tabbed column display mode. // Windows in this column will appear as vertical tabs, From aa9a0fe7f26de072f152e1b3b399e15a60dbe1a6 Mon Sep 17 00:00:00 2001 From: Dennis Schoepf Date: Wed, 26 Nov 2025 00:40:59 +0100 Subject: [PATCH 26/28] implements script to easily ssh connect from fuzzel --- modules/wm/fuzzel/default.nix | 2 +- modules/wm/fuzzel/scripts/connect-with-ssh.sh | 6 ++++++ modules/wm/fuzzel/scripts/fuzzel-cliphist.sh | 2 +- 3 files changed, 8 insertions(+), 2 deletions(-) create mode 100755 modules/wm/fuzzel/scripts/connect-with-ssh.sh diff --git a/modules/wm/fuzzel/default.nix b/modules/wm/fuzzel/default.nix index 73a4f50..e7e1fba 100644 --- a/modules/wm/fuzzel/default.nix +++ b/modules/wm/fuzzel/default.nix @@ -21,7 +21,7 @@ vertical-pad = 20; inner-pad = 25; image-size-ratio = 1; - prompt = "Open\t"; + prompt = "Open: "; }; colors = { background = "0f0b15f5"; diff --git a/modules/wm/fuzzel/scripts/connect-with-ssh.sh b/modules/wm/fuzzel/scripts/connect-with-ssh.sh new file mode 100755 index 0000000..07d31d4 --- /dev/null +++ b/modules/wm/fuzzel/scripts/connect-with-ssh.sh @@ -0,0 +1,6 @@ +#!/bin/sh + +fish_executable="/run/current-system/sw/bin/fish" +selected=$(cat ~/.ssh/config | grep "Host " | cut -d " " -f 2 | sort | tail -n +2 | fuzzel --dmenu --prompt "Connect to: ") + +ghostty -e "$fish_executable" -c "ssh $selected" diff --git a/modules/wm/fuzzel/scripts/fuzzel-cliphist.sh b/modules/wm/fuzzel/scripts/fuzzel-cliphist.sh index b047d7b..08affd1 100755 --- a/modules/wm/fuzzel/scripts/fuzzel-cliphist.sh +++ b/modules/wm/fuzzel/scripts/fuzzel-cliphist.sh @@ -1,3 +1,3 @@ #!/bin/sh -cliphist list | fuzzel --dmenu --prompt "Copy\t" | cliphist decode | wl-copy +cliphist list | fuzzel --dmenu --prompt "Copy: " | cliphist decode | awk '{$1=$1};1' | head -c -1 | wl-copy From 9fe5d5ac1e62e31051a19bffadaaa47ae3a2a107 Mon Sep 17 00:00:00 2001 From: Dennis Schoepf Date: Wed, 26 Nov 2025 00:48:37 +0100 Subject: [PATCH 27/28] configures fuzzel scripts --- modules/wm/fuzzel/default.nix | 13 +++++++++++++ .../scripts/{connect-with-ssh.sh => fuzzel-ssh.sh} | 0 2 files changed, 13 insertions(+) rename modules/wm/fuzzel/scripts/{connect-with-ssh.sh => fuzzel-ssh.sh} (100%) diff --git a/modules/wm/fuzzel/default.nix b/modules/wm/fuzzel/default.nix index e7e1fba..d0e386d 100644 --- a/modules/wm/fuzzel/default.nix +++ b/modules/wm/fuzzel/default.nix @@ -5,6 +5,19 @@ source = config.lib.file.mkOutOfStoreSymlink "${config.home.homeDirectory}/dev/nix-config/modules/wm/fuzzel/scripts"; }; + xdg.desktopEntries = { + fuzzel-ssh = { + type = "Application"; + name = "SSH"; + exec = "${config.home.homeDirectory}/.config/fuzzel/bin/fuzzel-ssh.sh"; + }; + fuzzel-cliphist = { + type = "Application"; + name = "Clipboard History"; + exec = "${config.home.homeDirectory}/.config/fuzzel/bin/fuzzel-cliphist.sh"; + }; + }; + programs.fuzzel = { enable = true; settings = { diff --git a/modules/wm/fuzzel/scripts/connect-with-ssh.sh b/modules/wm/fuzzel/scripts/fuzzel-ssh.sh similarity index 100% rename from modules/wm/fuzzel/scripts/connect-with-ssh.sh rename to modules/wm/fuzzel/scripts/fuzzel-ssh.sh From 5aec5313c546896dbb987416ab49b59ce598af58 Mon Sep 17 00:00:00 2001 From: Dennis Schoepf Date: Wed, 26 Nov 2025 00:52:17 +0100 Subject: [PATCH 28/28] fixes fuzzel ssh script --- modules/wm/fuzzel/default.nix | 2 +- modules/wm/fuzzel/scripts/fuzzel-ssh.sh | 4 +++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/modules/wm/fuzzel/default.nix b/modules/wm/fuzzel/default.nix index d0e386d..c8efa91 100644 --- a/modules/wm/fuzzel/default.nix +++ b/modules/wm/fuzzel/default.nix @@ -34,7 +34,7 @@ vertical-pad = 20; inner-pad = 25; image-size-ratio = 1; - prompt = "Open: "; + prompt = "Open: "; }; colors = { background = "0f0b15f5"; diff --git a/modules/wm/fuzzel/scripts/fuzzel-ssh.sh b/modules/wm/fuzzel/scripts/fuzzel-ssh.sh index 07d31d4..5c960fa 100755 --- a/modules/wm/fuzzel/scripts/fuzzel-ssh.sh +++ b/modules/wm/fuzzel/scripts/fuzzel-ssh.sh @@ -3,4 +3,6 @@ fish_executable="/run/current-system/sw/bin/fish" selected=$(cat ~/.ssh/config | grep "Host " | cut -d " " -f 2 | sort | tail -n +2 | fuzzel --dmenu --prompt "Connect to: ") -ghostty -e "$fish_executable" -c "ssh $selected" +if [ "$selected" != "" ]; then + ghostty -e "$fish_executable" -c "ssh $selected" +fi