diff --git a/home-manager/charles.nix b/home-manager/charles.nix new file mode 100644 index 0000000..d16edb9 --- /dev/null +++ b/home-manager/charles.nix @@ -0,0 +1,8 @@ +{ config, lib, pkgs, ... }: + +{ + imports = [ ./common.nix ]; + + home.username = "dtingley"; + home.homeDirectory = "/Users/dtingley"; +} diff --git a/home-manager/home.nix b/home-manager/common.nix similarity index 80% rename from home-manager/home.nix rename to home-manager/common.nix index cf30cc4..32b9e44 100644 --- a/home-manager/home.nix +++ b/home-manager/common.nix @@ -1,11 +1,6 @@ { config, pkgs, ... }: { - # Home Manager needs a bit of information about you and the paths it should - # manage. - home.username = "digyx"; - home.homeDirectory = "/var/home/digyx"; - # 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. @@ -31,18 +26,10 @@ yazi jq - # Shell - shellcheck - shfmt - # System ansible - clang opentofu pass - - # Sway - i3status-rust ]; # Home Manager is pretty good at managing dotfiles. The primary way to manage @@ -166,38 +153,4 @@ enable = true; defaultEditor = true; }; - - # Services - services.syncthing.enable = true; - - # Borgmatic - services.borgmatic = { - enable = true; - frequency = "*-*-* 08:00:00"; - }; - - programs.borgmatic = { - enable = true; - - backups = { - diana = { - location = { - sourceDirectories = [ "/var/home/digyx" ]; - repositories = [ "ssh://tztl5fp2@tztl5fp2.repo.borgbase.com/./repo" ]; - }; - - retention = { - keepDaily = 7; - keepWeekly = 4; - keepMonthly = 12; - }; - - storage = { - encryptionPasscommand = "${pkgs.pass}/bin/pass borg-key"; - extraConfig.ssh_command = "/usr/bin/ssh"; - }; - }; - }; - - }; } diff --git a/home-manager/diana.nix b/home-manager/diana.nix new file mode 100644 index 0000000..9377174 --- /dev/null +++ b/home-manager/diana.nix @@ -0,0 +1,45 @@ +{ config, lib, pkgs, ... }: + +{ + imports = [ ./common.nix ]; + + home.username = "digyx"; + home.homeDirectory = "/var/home/digyx"; + + home.packages = with pkgs; [ + i3status-rust + ]; + + # Services + services.syncthing.enable = true; + + # Borgmatic + services.borgmatic = { + enable = true; + frequency = "*-*-* 08:00:00"; + }; + + programs.borgmatic = { + enable = true; + + backups = { + diana = { + location = { + sourceDirectories = [ "/var/home/digyx" ]; + repositories = [ "ssh://tztl5fp2@tztl5fp2.repo.borgbase.com/./repo" ]; + }; + + retention = { + keepDaily = 7; + keepWeekly = 4; + keepMonthly = 12; + }; + + storage = { + encryptionPasscommand = "${pkgs.pass}/bin/pass borg-key"; + extraConfig.ssh_command = "/usr/bin/ssh"; + }; + }; + }; + }; +}