From b77d9b37ae0776462cf83b51499e6cd9d6472754 Mon Sep 17 00:00:00 2001 From: xqtc161 Date: Sat, 9 Mar 2024 12:58:01 +0100 Subject: [PATCH] Modularization of most of the home-manager config --- home/default.nix | 268 +++++++++---------------------------- home/modules/gtk.nix | 26 ++++ home/modules/home-pkgs.nix | 66 +++++++++ home/modules/wm.nix | 67 ++++++++++ 4 files changed, 222 insertions(+), 205 deletions(-) create mode 100644 home/modules/gtk.nix create mode 100644 home/modules/home-pkgs.nix create mode 100644 home/modules/wm.nix diff --git a/home/default.nix b/home/default.nix index e0b4ee9..1e6a1b2 100644 --- a/home/default.nix +++ b/home/default.nix @@ -7,7 +7,11 @@ }: { imports = [ ./modules/nixvim.nix + ./modules/shell.nix ./modules/firefox.nix + ./modules/wm.nix + ./modules/gtk.nix + ./modules/home-pkgs.nix #./modules/ssh.nix ]; home.username = "xqtc"; @@ -25,215 +29,69 @@ programs.joshuto = {enable = true;}; - programs = { - zsh.enable = true; - atuin = { - enable = true; - enableNushellIntegration = true; - }; - eza.enable = true; - nushell = { - enable = true; - shellAliases = {ls = "eza -l --icons --group-directories-first";}; - extraConfig = "uwufetch --image"; - configFile = { - text = '' - $env.config = { - show_banner: false - } - ''; - }; - }; - carapace.enable = true; - carapace.enableNushellIntegration = true; - starship = let - flavour = "mocha"; - in { - enable = true; - enableNushellIntegration = true; - enableBashIntegration = true; - enableZshIntegration = true; - settings = - { - # Other config here - character = { - success_symbol = "[λ::](bold green)"; - error_symbol = "[λ::](bold red)"; - }; - username = { - style_user = "bold pink"; - format = "[$user]($style)"; - show_always = true; - disabled = false; - }; - hostname = { - ssh_only = false; - format = "[ 🏳️‍⚧️ ](bold pink)[$hostname](bold flamingo)"; - disabled = false; - }; - right_format = "$all"; - format = '' - $username$hostname in $directory - $character''; - palette = "catppuccin_${flavour}"; - } - // builtins.fromTOML (builtins.readFile (pkgs.fetchFromGitHub { - owner = "catppuccin"; - repo = "starship"; - rev = "5629d2356f62a9f2f8efad3ff37476c19969bd4f"; # Replace with the latest commit hash - sha256 = "sha256-nsRuxQFKbQkyEI4TXgvAjcroVdG+heKX5Pauq/4Ota0="; - } - + /palettes/${flavour}.toml)); - }; - }; dconf.enable = true; - dconf.settings = { - "org/gnome/desktop/interface" = { - color-scheme = "prefer-dark"; - cursor-theme = "Adwaita"; - }; - }; - - gtk = { - enable = true; - theme = { - name = "Catppuccin-Mocha-Compact-Pink-Dark"; - package = pkgs.catppuccin-gtk.override { - accents = ["pink"]; - size = "compact"; - tweaks = ["rimless"]; - variant = "mocha"; - }; - }; - }; - - home.sessionVariables.DEFAULT_BROWSER = "${pkgs.firefox}/bin/firefox"; - - home.file."~/.local/share/fonts/AppleColorEmoji.ttf".source = - ./config-files/AppleColorEmoji.ttf; - - wayland.windowManager.hyprland = { - enable = true; - package = pkgs.hyprland; - - #xwayland.enable = true; - - #enableNvidiaPatches = true; - extraConfig = builtins.readFile ./config-files/hyprland.conf; - }; - - programs.waybar = { - enable = true; - settings = { - mainBar = { - layer = "top"; - position = "top"; - height = 30; - modules-left = ["hyprland/workspaces"]; - #modules-center = [ "hyprland/window" ]; - modules-right = ["tray" "network" "battery" "battery#bat2" "clock"]; - "tray" = {"icon-size" = 21;}; - "network" = { - "format-wifi" = "NET: {essid} ({signalStrength}%) "; - "format-ethernet" = "{ifname} "; - "format-disconnected" = ""; - "max-length" = 50; - }; - "battery" = { - "bat" = "BAT0"; - "interval" = 10; - "states" = { - "warning" = 30; - "critical" = 15; - }; - "format" = " BAT IN: {capacity}%"; - #"format-icons" = ''["", "", "", "", ""]''; - "max-length" = 25; - }; - "battery#bat2" = { - "bat" = "BAT1"; - "interval" = 10; - "states" = { - "warning" = 30; - "critical" = 15; - }; - "format" = " BAT EX: {capacity}%"; - #"format-icons" = ''["", "", "", "", ""]''; - "max-length" = 25; - }; - }; - }; - style = builtins.readFile ./config-files/waybar-mocha.css; - }; - - services.mako = { - enable = true; - font = "Hack Nerd Font 15"; - backgroundColor = "#1e1e2e"; - textColor = "#cdd6f4"; - }; services.easyeffects = {enable = true;}; - home.packages = with pkgs; [ - neofetch - uwufetch - btop - iftop - ranger - - obsidian - - moodle-dl - - brightnessctl - pavucontrol - - bitwarden - bitwarden-cli - - sway-contrib.grimshot - - libnotify - - strace - ltrace - - nodejs - - nerdfonts - vivaldi - vivaldi-ffmpeg-codecs - - signal-desktop - vesktop - discord - telegram-desktop - webex - element-desktop - - qbittorrent - nicotine-plus - - via - qmk - qmk-udev-rules - - neovide - - yubioath-flutter - - steam - protonup-qt - - spotify - sayonara - mpv - feishin - - nixos-icons - swww - ]; + # home.packages = with pkgs; [ + # neofetch + # uwufetch + # btop + # iftop + # ranger + # + # obsidian + # + # moodle-dl + # + # brightnessctl + # pavucontrol + # + # bitwarden + # bitwarden-cli + # + # sway-contrib.grimshot + # + # libnotify + # + # strace + # ltrace + # + # nodejs + # + # nerdfonts + # vivaldi + # vivaldi-ffmpeg-codecs + # + # signal-desktop + # vesktop + # discord + # telegram-desktop + # webex + # element-desktop + # + # qbittorrent + # nicotine-plus + # + # via + # qmk + # qmk-udev-rules + # + # neovide + # + # yubioath-flutter + # + # steam + # protonup-qt + # + # spotify + # sayonara + # mpv + # feishin + # + # nixos-icons + # swww + # ]; home.stateVersion = "23.11"; programs.home-manager.enable = true; diff --git a/home/modules/gtk.nix b/home/modules/gtk.nix new file mode 100644 index 0000000..5324c62 --- /dev/null +++ b/home/modules/gtk.nix @@ -0,0 +1,26 @@ +{ + config, + pkgs, + inputs, + ... +}: { + dconf.settings = { + "org/gnome/desktop/interface" = { + color-scheme = "prefer-dark"; + cursor-theme = "Adwaita"; + }; + }; + + gtk = { + enable = true; + theme = { + name = "Catppuccin-Mocha-Compact-Pink-Dark"; + package = pkgs.catppuccin-gtk.override { + accents = ["pink"]; + size = "compact"; + tweaks = ["rimless"]; + variant = "mocha"; + }; + }; + }; +} diff --git a/home/modules/home-pkgs.nix b/home/modules/home-pkgs.nix new file mode 100644 index 0000000..4f7b749 --- /dev/null +++ b/home/modules/home-pkgs.nix @@ -0,0 +1,66 @@ +{ + config, + inputs, + pkgs, + ... +}: { + home.packages = with pkgs; [ + neofetch + uwufetch + btop + iftop + ranger + + obsidian + + moodle-dl + + brightnessctl + pavucontrol + + bitwarden + bitwarden-cli + + sway-contrib.grimshot + + libnotify + + strace + ltrace + + nodejs + + nerdfonts + vivaldi + vivaldi-ffmpeg-codecs + + signal-desktop + vesktop + discord + telegram-desktop + webex + element-desktop + + qbittorrent + nicotine-plus + + via + qmk + qmk-udev-rules + + neovide + + yubioath-flutter + + steam + protonup-qt + + spotify + sayonara + mpv + feishin + + nixos-icons + swww + ]; +} diff --git a/home/modules/wm.nix b/home/modules/wm.nix new file mode 100644 index 0000000..781374c --- /dev/null +++ b/home/modules/wm.nix @@ -0,0 +1,67 @@ +{ + config, + pkgs, + inputs, + ... +}: { + wayland.windowManager.hyprland = { + enable = true; + package = pkgs.hyprland; + + #xwayland.enable = true; + + #enableNvidiaPatches = true; + extraConfig = builtins.readFile ../config-files/hyprland.conf; + }; + + programs.waybar = { + enable = true; + settings = { + mainBar = { + layer = "top"; + position = "top"; + height = 30; + modules-left = ["hyprland/workspaces"]; + #modules-center = [ "hyprland/window" ]; + modules-right = ["tray" "network" "battery" "battery#bat2" "clock"]; + "tray" = {"icon-size" = 21;}; + "network" = { + "format-wifi" = "NET: {essid} ({signalStrength}%) "; + "format-ethernet" = "{ifname} "; + "format-disconnected" = ""; + "max-length" = 50; + }; + "battery" = { + "bat" = "BAT0"; + "interval" = 10; + "states" = { + "warning" = 30; + "critical" = 15; + }; + "format" = " BAT IN: {capacity}%"; + #"format-icons" = ''["", "", "", "", ""]''; + "max-length" = 25; + }; + "battery#bat2" = { + "bat" = "BAT1"; + "interval" = 10; + "states" = { + "warning" = 30; + "critical" = 15; + }; + "format" = " BAT EX: {capacity}%"; + #"format-icons" = ''["", "", "", "", ""]''; + "max-length" = 25; + }; + }; + }; + style = builtins.readFile ../config-files/waybar-mocha.css; + }; + + services.mako = { + enable = true; + font = "Hack Nerd Font 15"; + backgroundColor = "#1e1e2e"; + textColor = "#cdd6f4"; + }; +}