2022-05-09 16:42:19 +02:00
|
|
|
# Shared home configuration for all machines.
|
|
|
|
|
|
|
|
{ depot, pkgs, ... }: # readTree
|
|
|
|
{ config, lib, ... }: # home-manager
|
|
|
|
|
|
|
|
{
|
2022-06-14 15:02:59 +02:00
|
|
|
imports = [ (depot.third_party.sources.impermanence + "/home-manager.nix") ];
|
2022-05-09 16:42:19 +02:00
|
|
|
|
|
|
|
home.persistence."/persist/tazjin/home" = {
|
|
|
|
allowOther = true;
|
|
|
|
|
|
|
|
directories = [
|
|
|
|
".cargo"
|
|
|
|
".config/audacity"
|
|
|
|
".config/google-chrome"
|
|
|
|
".config/quassel-irc.org"
|
2022-07-14 17:38:18 +02:00
|
|
|
".config/syncthing"
|
2022-05-13 18:04:05 +02:00
|
|
|
".config/unity3d"
|
2022-05-26 19:38:16 +02:00
|
|
|
".electrum"
|
2022-05-09 16:42:19 +02:00
|
|
|
".gnupg"
|
|
|
|
".local/share/audacity"
|
|
|
|
".local/share/direnv"
|
|
|
|
".local/share/fish"
|
|
|
|
".local/share/keyrings"
|
|
|
|
".local/share/zoxide"
|
|
|
|
".mozilla/firefox"
|
|
|
|
".password-store"
|
|
|
|
".rustup"
|
|
|
|
".ssh"
|
|
|
|
".steam"
|
|
|
|
".telega"
|
2022-07-05 17:04:05 +02:00
|
|
|
".thunderbird"
|
2022-05-09 16:42:19 +02:00
|
|
|
"go"
|
|
|
|
"mail"
|
|
|
|
];
|
|
|
|
|
|
|
|
files = [
|
|
|
|
".notmuch-config"
|
|
|
|
];
|
|
|
|
};
|
|
|
|
|
|
|
|
home.activation.screenshots = lib.hm.dag.entryAnywhere ''
|
|
|
|
$DRY_RUN_CMD mkdir -p $HOME/screenshots
|
|
|
|
'';
|
|
|
|
|
|
|
|
programs.git = {
|
|
|
|
enable = true;
|
|
|
|
userName = "Vincent Ambo";
|
|
|
|
userEmail = "mail@tazj.in";
|
|
|
|
extraConfig = {
|
|
|
|
pull.rebase = true;
|
|
|
|
init.defaultBranch = "canon";
|
2022-05-10 17:24:58 +02:00
|
|
|
safe.directory = [ "/depot" ];
|
2022-05-09 16:42:19 +02:00
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
programs.fish = {
|
|
|
|
enable = true;
|
|
|
|
interactiveShellInit = ''
|
|
|
|
${pkgs.zoxide}/bin/zoxide init fish | source
|
|
|
|
'';
|
|
|
|
};
|
|
|
|
|
|
|
|
services.screen-locker = {
|
|
|
|
enable = true;
|
|
|
|
inactiveInterval = 10; # minutes
|
|
|
|
lockCmd = "${depot.users.tazjin.screenLock}/bin/tazjin-screen-lock";
|
|
|
|
};
|
|
|
|
|
|
|
|
services.picom = {
|
|
|
|
enable = true;
|
|
|
|
vSync = true;
|
|
|
|
backend = "glx";
|
|
|
|
};
|
|
|
|
|
2022-07-14 15:37:34 +02:00
|
|
|
services.syncthing.enable = true;
|
|
|
|
|
2022-05-09 16:42:19 +02:00
|
|
|
# Enable the dunst notification daemon, but force the
|
|
|
|
# configuration file separately instead of going via the strange
|
|
|
|
# Nix->dunstrc encoding route.
|
|
|
|
services.dunst.enable = true;
|
|
|
|
xdg.configFile."dunst/dunstrc" = {
|
|
|
|
source = depot.users.tazjin.dotfiles.dunstrc;
|
|
|
|
onChange = ''
|
|
|
|
${pkgs.procps}/bin/pkill -u "$USER" ''${VERBOSE+-e} dunst || true
|
|
|
|
'';
|
|
|
|
};
|
|
|
|
|
|
|
|
systemd.user.startServices = true;
|
|
|
|
}
|