From cfb277b32d0247cbd91d3878cec39dd602ae36a8 Mon Sep 17 00:00:00 2001 From: Aly Raffauf Date: Tue, 11 Jun 2024 13:31:10 -0400 Subject: [PATCH] aly/dustin: code refactor --- aly.nix | 158 +++++++++++++++++++++++++++-------------------------- dustin.nix | 30 +++++----- 2 files changed, 97 insertions(+), 91 deletions(-) diff --git a/aly.nix b/aly.nix index 115ad247..d91c33bd 100644 --- a/aly.nix +++ b/aly.nix @@ -6,29 +6,88 @@ ... }: { imports = [./homeManagerModules]; - home.username = "aly"; - home.homeDirectory = "/home/aly"; - home.stateVersion = "24.05"; - programs.home-manager.enable = true; - home.packages = with pkgs; [ - browsh - curl - fractal - gh - git - gnome.file-roller - google-chrome - keepassxc - obsidian - plexamp - python3 - ruby - tauon - trayscale - webcord - wget - ]; + home = { + username = "aly"; + homeDirectory = "/home/aly"; + stateVersion = "24.05"; + packages = with pkgs; [ + browsh + curl + fractal + gh + git + gnome.file-roller + google-chrome + keepassxc + obsidian + plexamp + python3 + ruby + tauon + trayscale + webcord + wget + ]; + }; + + programs = { + home-manager.enable = true; + git = { + enable = true; + userName = "Aly Raffauf"; + userEmail = "aly@raffauflabs.com"; + }; + }; + + wayland.windowManager = { + sway.config = { + assigns = { + "workspace 1: web" = [{app_id = "firefox";} {app_id = "brave-browser";}]; + "workspace 2: code" = [{app_id = "codium-url-handler";}]; + "workspace 3: chat" = [{app_id = "org.gnome.Fractal";} {app_id = "WebCord";}]; + "workspace 4: work" = [{app_id = "google-chrome";} {app_id = "chromium-browser";}]; + "workspace 10: zoom" = [{class = "zoom";} {app_id = "Zoom";}]; + }; + + startup = [ + {command = ''${lib.getExe' pkgs.keepassxc "keepassxc"}'';} + ]; + }; + + hyprland.extraConfig = '' + # Workspace - Browser + workspace = 1, defaultName:web, on-created-empty:${config.alyraffauf.desktop.defaultApps.webBrowser.exe} + windowrulev2 = workspace 1,class:(firefox) + windowrulev2 = workspace 1,class:(brave-browser) + + # Workspace - Coding + workspace = 2, defaultName:code, on-created-empty:${config.alyraffauf.desktop.defaultApps.editor.exe} + windowrulev2 = workspace 2,class:(codium-url-handler) + + # Workspace - Chrome + windowrulev2 = workspace 3,class:(google-chrome) + + # Scratchpad Chat + # bind = SUPER, S, togglespecialworkspace, magic + # bind = SUPER SHIFT, W, movetoworkspace, special:magic + workspace = special:magic, on-created-empty:${lib.getExe pkgs.fractal} + windowrulev2 = workspace special:magic,class:(org.gnome.Fractal) + windowrulev2 = workspace special:magic,class:(WebCord) + + # Scratchpad Notes + bind = SUPER, N, togglespecialworkspace, notes + bind = SUPER SHIFT, N, movetoworkspace, special:notes + workspace = special:notes, on-created-empty:${lib.getExe' pkgs.obsidian "obsidian"} + # windowrulev2 = workspace special:notes,class:(obsidian) + + # # Scratchpad Music + # bind = SUPER, P, togglespecialworkspace, music + # bind = SUPER SHIFT, P, movetoworkspace, special:music + # workspace = special:music, on-created-empty:${lib.getExe' pkgs.plexamp "plexamp"} + # windowrulev2 = workspace special:music,class:(Plexamp) + ''; + }; alyraffauf = { desktop = { @@ -43,10 +102,6 @@ enable = true; randomWallpaper = true; }; - sway = { - enable = true; - randomWallpaper = true; - }; theme = { enable = true; gtk = { @@ -119,55 +174,4 @@ pp-adjuster.enable = true; }; }; - - programs.git = { - enable = true; - userName = "Aly Raffauf"; - userEmail = "aly@raffauflabs.com"; - }; - - wayland.windowManager.sway.config.startup = [ - {command = ''${lib.getExe' pkgs.keepassxc "keepassxc"}'';} - ]; - - wayland.windowManager.sway.config.assigns = { - "workspace 1: web" = [{app_id = "firefox";} {app_id = "brave-browser";}]; - "workspace 2: code" = [{app_id = "codium-url-handler";}]; - "workspace 3: chat" = [{app_id = "org.gnome.Fractal";} {app_id = "WebCord";}]; - "workspace 4: work" = [{app_id = "google-chrome";} {app_id = "chromium-browser";}]; - "workspace 10: zoom" = [{class = "zoom";} {app_id = "Zoom";}]; - }; - - wayland.windowManager.hyprland.extraConfig = '' - # Workspace - Browser - workspace = 1, defaultName:web, on-created-empty:${config.alyraffauf.desktop.defaultApps.webBrowser.exe} - windowrulev2 = workspace 1,class:(firefox) - windowrulev2 = workspace 1,class:(brave-browser) - - # Workspace - Coding - workspace = 2, defaultName:code, on-created-empty:${config.alyraffauf.desktop.defaultApps.editor.exe} - windowrulev2 = workspace 2,class:(codium-url-handler) - - # Workspace - Chrome - windowrulev2 = workspace 3,class:(google-chrome) - - # Scratchpad Chat - # bind = SUPER, S, togglespecialworkspace, magic - # bind = SUPER SHIFT, W, movetoworkspace, special:magic - workspace = special:magic, on-created-empty:${lib.getExe pkgs.fractal} - windowrulev2 = workspace special:magic,class:(org.gnome.Fractal) - windowrulev2 = workspace special:magic,class:(WebCord) - - # Scratchpad Notes - bind = SUPER, N, togglespecialworkspace, notes - bind = SUPER SHIFT, N, movetoworkspace, special:notes - workspace = special:notes, on-created-empty:${lib.getExe' pkgs.obsidian "obsidian"} - # windowrulev2 = workspace special:notes,class:(obsidian) - - # # Scratchpad Music - # bind = SUPER, P, togglespecialworkspace, music - # bind = SUPER SHIFT, P, movetoworkspace, special:music - # workspace = special:music, on-created-empty:${lib.getExe' pkgs.plexamp "plexamp"} - # windowrulev2 = workspace special:music,class:(Plexamp) - ''; } diff --git a/dustin.nix b/dustin.nix index 692ad28f..5632654c 100644 --- a/dustin.nix +++ b/dustin.nix @@ -5,23 +5,25 @@ ... }: { imports = [./homeManagerModules]; - home.username = "dustin"; - home.homeDirectory = "/home/dustin"; - home.stateVersion = "24.05"; + + home = { + username = "dustin"; + homeDirectory = "/home/dustin"; + stateVersion = "24.05"; + packages = with pkgs; [ + fractal + gnome.file-roller + libreoffice-fresh + plexamp + vlc + xfce.xfce4-taskmanager + webcord + zoom-us + ]; + }; programs.home-manager.enable = true; - home.packages = with pkgs; [ - fractal - gnome.file-roller - libreoffice-fresh - plexamp - vlc - xfce.xfce4-taskmanager - webcord - zoom-us - ]; - alyraffauf = { desktop = { defaultApps.enable = true;