nix: machine-specific configs

This commit is contained in:
Roman Godmaire 2024-04-04 15:17:34 -04:00
parent eca4cf646c
commit 674871898d
3 changed files with 53 additions and 47 deletions

8
home-manager/charles.nix Normal file
View file

@ -0,0 +1,8 @@
{ config, lib, pkgs, ... }:
{
imports = [ ./common.nix ];
home.username = "dtingley";
home.homeDirectory = "/Users/dtingley";
}

View file

@ -1,11 +1,6 @@
{ config, pkgs, ... }: { 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 # This value determines the Home Manager release that your configuration is
# compatible with. This helps avoid breakage when a new Home Manager release # compatible with. This helps avoid breakage when a new Home Manager release
# introduces backwards incompatible changes. # introduces backwards incompatible changes.
@ -31,18 +26,10 @@
yazi yazi
jq jq
# Shell
shellcheck
shfmt
# System # System
ansible ansible
clang
opentofu opentofu
pass pass
# Sway
i3status-rust
]; ];
# Home Manager is pretty good at managing dotfiles. The primary way to manage # Home Manager is pretty good at managing dotfiles. The primary way to manage
@ -166,38 +153,4 @@
enable = true; enable = true;
defaultEditor = 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";
};
};
};
};
} }

45
home-manager/diana.nix Normal file
View file

@ -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";
};
};
};
};
}