diff --git a/common/desktop/drivers/skynet.nix b/common/desktop/drivers/skynet.nix index 343e45d..af4185b 100644 --- a/common/desktop/drivers/skynet.nix +++ b/common/desktop/drivers/skynet.nix @@ -13,7 +13,7 @@ profiles = { laptop = { fingerprint = { - eDP-1 = "00ffffffffffff0009e55f0900000000171d0104a51c137803de50a3544c99260f505400000001010101010101010101010101010101115cd01881e02d50302036001dbe1000001aa749d01881e02d50302036001dbe1000001a000000fe00424f452043510a202020202020000000fe004e4531333546424d2d4e34310a00fb"; + eDP-1 = "00ffffffffffff0009e55f0900000000171d0104a51c137803de50a3544c99260f505400000001010101010101010101010101010101115cd01881e02d50302036001dbe1000001aa749d01881e02d50302036001dbe1000001a000000fe00424f452043510a202020202020000000fe004e4531333546424d2d4e34310a00fb"; }; config = { eDP-1 = { diff --git a/flake.nix b/flake.nix index f69c6f0..f0e6494 100644 --- a/flake.nix +++ b/flake.nix @@ -29,9 +29,18 @@ ... }: let modules = { - home = [ - ./users/relms/home.nix - ]; + home = { + common = [ + ./users/relms/base.nix + ./users/relms/shell.nix + ]; + dev = [ + ./users/relms/dev.nix + ]; + gui = [ + ./users/relms/gui.nix + ]; + }; nixos = { common = [ ./common/personal.nix @@ -90,7 +99,7 @@ homeConfigurations.relms = home-manager.lib.homeManagerConfiguration { inherit pkgs; - modules = modules.home; + modules = modules.home.common ++ modules.home.dev ++ modules.home.gui; }; formatter.x86_64-linux = nixpkgs.legacyPackages.x86_64-linux.alejandra; diff --git a/users/relms/base.nix b/users/relms/base.nix new file mode 100644 index 0000000..e3bea9c --- /dev/null +++ b/users/relms/base.nix @@ -0,0 +1,21 @@ +{ + lib, + config, + pkgs, + ... +}: { + home.username = "relms"; + home.homeDirectory = "/home/relms"; + + home.stateVersion = "22.11"; + + programs.home-manager.enable = true; + + programs.gpg.enable = true; + services.gpg-agent.enable = true; + services.gpg-agent.enableSshSupport = true; + services.gpg-agent.pinentryFlavor = "gnome3"; + + services.gnome-keyring.enable = true; + services.gnome-keyring.components = ["pkcs11" "secrets" "ssh"]; +} diff --git a/users/relms/dev.nix b/users/relms/dev.nix new file mode 100644 index 0000000..a1a2db9 --- /dev/null +++ b/users/relms/dev.nix @@ -0,0 +1,74 @@ +{pkgs, ...}: { + home.packages = with pkgs; [ + gcc12 + xsel + wget + rustup + tree-sitter + ]; + + programs.git = { + enable = true; + package = pkgs.gitAndTools.gitFull; + userEmail = "relms@relms.dev"; + userName = "Daryl Ronningen"; + delta = { + enable = true; + options = { + navigate = true; + light = false; + line-numbers = true; + side-by-side = true; + }; + }; + extraConfig = { + init = { + defaultBranch = "main"; + }; + pull = { + rebase = false; + }; + credential = { + helper = "store"; + }; + core = { + editor = "nvim"; + }; + }; + signing = { + signByDefault = true; + key = "3905311D17C0E1E8AD2B3439FD23F0C934A5EC6B"; + }; + }; + + programs.neovim = { + enable = true; + package = pkgs.neovim; + viAlias = true; + vimAlias = true; + vimdiffAlias = true; + withNodeJs = true; + withPython3 = true; + withRuby = true; + }; + + programs.direnv.enable = true; + programs.direnv.nix-direnv.enable = true; + + programs.lazygit.enable = true; + programs.lazygit.settings = { + gui = { + showIcons = true; + }; + git = { + paging = { + colorArg = "always"; + pager = "delta --dark --paging=never"; + }; + commit = { + signOff = true; + }; + parseEmoji = true; + }; + }; +} diff --git a/users/relms/gui.nix b/users/relms/gui.nix new file mode 100644 index 0000000..fff7d0b --- /dev/null +++ b/users/relms/gui.nix @@ -0,0 +1,28 @@ +{pkgs, ...}: { + home.packages = with pkgs; [ + gnome.nautilus + gnome.gnome-tweaks + gnome.gnome-software + adw-gtk3 + numix-icon-theme-circle + ]; + + programs.gnome-terminal = { + enable = true; + profile = { + default = { + default = true; + font = "FiraCode Nerd Font Mono"; + visibleName = "Default"; + }; + }; + }; + + programs.firefox.enable = true; + programs.firefox.package = pkgs.firefox.override { + cfg = { + enableGnomeExtensions = true; + enableTridactylNative = true; + }; + }; +} diff --git a/users/relms/home.nix b/users/relms/home.nix deleted file mode 100644 index 167a979..0000000 --- a/users/relms/home.nix +++ /dev/null @@ -1,184 +0,0 @@ -{ - lib, - config, - pkgs, - ... -}: { - # Home Manager needs a bit of information about you and the - # paths it should manage. - home.username = "relms"; - home.homeDirectory = "/home/relms"; - - # Some user packages - home.packages = with pkgs; [ - gnome.nautilus - gnome.gnome-tweaks - gnome.gnome-software - adw-gtk3 - numix-icon-theme-circle - gcc12 - xsel - wget - rustup - tree-sitter - ]; - - # This value determines the Home Manager release that your - # configuration is compatible with. This helps avoid breakage - # when a new Home Manager release introduces backwards - # incompatible changes. - # - # You can update Home Manager without changing this value. See - # the Home Manager release notes for a list of state version - # changes in each release. - home.stateVersion = "22.11"; - - # Let Home Manager install and manage itself. - programs.home-manager.enable = true; - - programs.htop.enable = true; - - programs.hyfetch.enable = true; - programs.hyfetch.settings = { - preset = "genderfluid"; - mode = "rgb"; - color_align = { - mode = "horizontal"; - }; - }; - - programs.exa.enable = true; - - programs.fish.enable = true; - programs.fish.shellAliases = { - ls = "exa -laFghHUum@ --sort name --group-directories-first --git --icons"; - tree = "exa -laFghHUumRT@ --sort name --group-directories-first --git --icons"; - nixos-rebuild = "sudo nixos-rebuild --flake ~/git/flake#"; - home-manager = "home-manager --flake ~/git/flake#relms"; - }; - - programs.bash.enable = true; - programs.bash.enableVteIntegration = true; - - programs.firefox.enable = true; - programs.firefox.package = pkgs.firefox.override { - cfg = { - enableGnomeExtensions = true; - enableTridactylNative = true; - }; - }; - - programs.starship.enable = true; - programs.starship.enableFishIntegration = true; - programs.starship.enableBashIntegration = true; - programs.starship.settings = { - add_newline = true; - format = lib.concatStrings ["$username@$hostname" " " "$directory" " " "$all$character"]; - right_format = "$cmd_duration"; - directory = { - format = "[$path]($style)[$read_only]($read_only_style)"; - read_only = " 🔒"; - }; - hostname = { - ssh_only = false; - format = "[$hostname]($style)"; - }; - username = { - show_always = true; - format = "[$user]($style)"; - }; - shell = { - disabled = false; - }; - time = { - disabled = false; - }; - status = { - disabled = false; - }; - }; - - programs.git = { - enable = true; - package = pkgs.gitAndTools.gitFull; - userEmail = "relms@relms.dev"; - userName = "Daryl Ronningen"; - delta = { - enable = true; - options = { - navigate = true; - light = false; - line-numbers = true; - side-by-side = true; - }; - }; - extraConfig = { - init = { - defaultBranch = "main"; - }; - pull = { - rebase = false; - }; - credential = { - helper = "store"; - }; - core = { - editor = "nvim"; - }; - }; - signing = { - signByDefault = true; - key = "3905311D17C0E1E8AD2B3439FD23F0C934A5EC6B"; - }; - }; - - programs.neovim = { - enable = true; - package = pkgs.neovim; - viAlias = true; - vimAlias = true; - vimdiffAlias = true; - withNodeJs = true; - withPython3 = true; - withRuby = true; - }; - - programs.gnome-terminal = { - enable = true; - profile = { - default = { - default = true; - font = "FiraCode Nerd Font Mono"; - visibleName = "Default"; - }; - }; - }; - - programs.direnv.enable = true; - programs.direnv.nix-direnv.enable = true; - - programs.lazygit.enable = true; - programs.lazygit.settings = { - gui = { - showIcons = true; - }; - git = { - paging = { - colorArg = "always"; - pager = "delta --dark --paging=never"; - }; - commit = { - signOff = true; - }; - parseEmoji = true; - }; - }; - - programs.gpg.enable = true; - services.gpg-agent.enable = true; - services.gpg-agent.enableSshSupport = true; - services.gpg-agent.pinentryFlavor = "gnome3"; - - services.gnome-keyring.enable = true; - services.gnome-keyring.components = ["pkcs11" "secrets" "ssh"]; -} diff --git a/users/relms/shell.nix b/users/relms/shell.nix new file mode 100644 index 0000000..ead9bca --- /dev/null +++ b/users/relms/shell.nix @@ -0,0 +1,55 @@ +{lib, ...}: { + programs.htop.enable = true; + + programs.hyfetch.enable = true; + programs.hyfetch.settings = { + preset = "genderfluid"; + mode = "rgb"; + color_align = { + mode = "horizontal"; + }; + }; + + programs.exa.enable = true; + + programs.fish.enable = true; + programs.fish.shellAliases = { + ls = "exa -laFghHUum@ --sort name --group-directories-first --git --icons"; + tree = "exa -laFghHUumRT@ --sort name --group-directories-first --git --icons"; + nixos-rebuild = "sudo nixos-rebuild --flake ~/git/flake#"; + home-manager = "home-manager --flake ~/git/flake#relms"; + }; + + programs.bash.enable = true; + programs.bash.enableVteIntegration = true; + + programs.starship.enable = true; + programs.starship.enableFishIntegration = true; + programs.starship.enableBashIntegration = true; + programs.starship.settings = { + add_newline = true; + format = lib.concatStrings ["$username@$hostname" " " "$directory" " " "$all$character"]; + right_format = "$cmd_duration"; + directory = { + format = "[$path]($style)[$read_only]($read_only_style)"; + read_only = " 🔒"; + }; + hostname = { + ssh_only = false; + format = "[$hostname]($style)"; + }; + username = { + show_always = true; + format = "[$user]($style)"; + }; + shell = { + disabled = false; + }; + time = { + disabled = false; + }; + status = { + disabled = false; + }; + }; +}