From 908002fd6cccb5172369f4eb091c1ce9b4441c1b Mon Sep 17 00:00:00 2001 From: Drew Haven Date: Mon, 10 Feb 2025 20:03:49 -0800 Subject: [PATCH] [Nix] Reorganizes files a bit. --- home-manager/drew.nix | 56 +-------------------- home-manager/features/development-linux.nix | 2 +- home-manager/features/linux-desktop.nix | 55 ++++++++++++++++++++ home-manager/features/nix.nix | 10 ++++ system/hosts/tarro-mbp/drew.nix | 1 + 5 files changed, 69 insertions(+), 55 deletions(-) create mode 100644 home-manager/features/linux-desktop.nix create mode 100644 home-manager/features/nix.nix diff --git a/home-manager/drew.nix b/home-manager/drew.nix index da1a3e7..6ac0e59 100644 --- a/home-manager/drew.nix +++ b/home-manager/drew.nix @@ -1,10 +1,10 @@ { pkgs, inputs, ... }: { imports = [ - ./features/audio.nix - ./features/hyprland.nix + ./features/linux-desktop.nix ./features/development-linux.nix ./features/haskell.nix + ./features/nix.nix ]; home.stateVersion = "24.11"; @@ -12,22 +12,14 @@ home.username = "drew"; home.homeDirectory = "/home/drew"; - nix.settings.experimental-features = ["flakes" "nix-command"]; - home.packages = with pkgs; [ - # Development - git - nix-prefetch-github - # Applications discord - webcord # Discord app replacement element-desktop signal-desktop obsidian firefox waypaper # Wallpaper switcher - feh # Gaming mangohud @@ -39,26 +31,6 @@ }) protonup-ng vulkan-tools # useful for debugging Vulkan issues - - # Desktop Environment - networkmanagerapplet # network control - hyprlock # lock screen - wofi # launcher - hyprpaper # wallpaper - swayidle # lock on idle - swayosd # volume pop-up - eww # widgets - swaynotificationcenter # notifications - hyprpolkitagent # Privilege managent - gnome-keyring # Secret management - glib # for Gnome/GTK settings - xdg-desktop-portal-hyprland - xdg-desktop-portal-gtk # GTK backend for XDG components like pickers - grim # Screenshot provider - hyprshot # Screenshot utility - nwg-look # GTK settings editor - playerctl # for universal play/pause etc - wirelesstools ]; xdg.desktopEntries = { @@ -69,30 +41,6 @@ }; }; - # Hint for electron apps to use wayland - home.sessionVariables.NIXOS_OZONE_WL = "1"; - - # GTK settings - gtk = { - enable = true; - theme = { - name = "Adwaita-dark"; - package = pkgs.gnome-themes-extra; - }; - gtk3.extraConfig = { - gtk-application-prefer-dark-theme = true; - }; - gtk4.extraConfig = { - gtk-application-prefer-dark-theme = true; - }; - }; - - qt = { - enable = true; - platformTheme.name = "adwaita"; - style.name = "adwaita-dark"; - }; - programs.git = { userName = "Drew Haven"; userEmail = "drew.haven@gmail.com"; diff --git a/home-manager/features/development-linux.nix b/home-manager/features/development-linux.nix index 292c72e..22dd499 100644 --- a/home-manager/features/development-linux.nix +++ b/home-manager/features/development-linux.nix @@ -4,5 +4,5 @@ imports = [ ./development.nix ./ssh.nix - ] + ]; } diff --git a/home-manager/features/linux-desktop.nix b/home-manager/features/linux-desktop.nix new file mode 100644 index 0000000..075afb1 --- /dev/null +++ b/home-manager/features/linux-desktop.nix @@ -0,0 +1,55 @@ +{ pkgs, ... }: +{ + imports = [ + ./hyprland.nix + ./audio.nix + ]; + + home.packages = with pkgs; [ + # Desktop Environment + feh + networkmanagerapplet # network control + hyprlock # lock screen + wofi # launcher + hyprpaper # wallpaper + swayidle # lock on idle + swayosd # volume pop-up + eww # widgets + swaynotificationcenter # notifications + hyprpolkitagent # Privilege managent + gnome-keyring # Secret management + glib # for Gnome/GTK settings + xdg-desktop-portal-hyprland + xdg-desktop-portal-gtk # GTK backend for XDG components like pickers + grim # Screenshot provider + hyprshot # Screenshot utility + nwg-look # GTK settings editor + playerctl # for universal play/pause etc + wirelesstools + ]; + + # Hint for electron apps to use wayland + home.sessionVariables.NIXOS_OZONE_WL = "1"; + + # GTK settings + gtk = { + enable = true; + theme = { + name = "Adwaita-dark"; + package = pkgs.gnome-themes-extra; + }; + gtk3.extraConfig = { + gtk-application-prefer-dark-theme = true; + }; + gtk4.extraConfig = { + gtk-application-prefer-dark-theme = true; + }; + }; + + # QT theming + qt = { + enable = true; + platformTheme.name = "adwaita"; + style.name = "adwaita-dark"; + }; +} diff --git a/home-manager/features/nix.nix b/home-manager/features/nix.nix new file mode 100644 index 0000000..4ffa2ae --- /dev/null +++ b/home-manager/features/nix.nix @@ -0,0 +1,10 @@ +{ pkgs, ... }: +{ + home.packages = with pkgs; [ + # Useful for getting the import information from github info for flakes. + nix-prefetch-github + ]; + + # Enable flakes and nix-commnands. + nix.settings.experimental-features = ["flakes" "nix-command"]; +} diff --git a/system/hosts/tarro-mbp/drew.nix b/system/hosts/tarro-mbp/drew.nix index 17565a9..2dbfde8 100644 --- a/system/hosts/tarro-mbp/drew.nix +++ b/system/hosts/tarro-mbp/drew.nix @@ -4,6 +4,7 @@ ../../../home-manager/features/development.nix ../../../home-manager/features/kubernetes.nix ../../../home-manager/features/macos + ../../../home-manager/features/nix.nix ]; home.username = "drew";