168 lines
4.3 KiB
Nix
168 lines
4.3 KiB
Nix
{
|
|
pkgs,
|
|
...
|
|
}:
|
|
let
|
|
colors_light = {
|
|
background = "fdf6e3";
|
|
foreground = "657b83";
|
|
regular0 = "eee8d5"; # background darker
|
|
regular1 = "dc322f"; # red
|
|
regular2 = "859900"; # green
|
|
regular3 = "b58900"; # dark orange
|
|
regular4 = "268bd2"; # azure blue
|
|
regular5 = "d33682"; # hot pink
|
|
regular6 = "2aa198"; # petrol
|
|
regular7 = "073642"; # navy
|
|
bright0 = "cb4b16"; # orange
|
|
bright1 = "fdf6e3"; # foreground
|
|
bright2 = "93a1a1"; # grey
|
|
bright3 = "839496"; # slightly darker grey
|
|
bright4 = "657b83"; # even slightly darker grey
|
|
bright5 = "6c71c4"; # purple
|
|
bright6 = "586e75"; # pretty dark grey
|
|
bright7 = "002b36"; # dark navy blue
|
|
};
|
|
colors_dark = {
|
|
cursor = "002b36 93a1a1";
|
|
background = "002b36";
|
|
foreground = "839496";
|
|
regular0 = "073642";
|
|
regular1 = "dc322f";
|
|
regular2 = "859900";
|
|
regular3 = "b58900";
|
|
regular4 = "268bd2";
|
|
regular5 = "d33682";
|
|
regular6 = "2aa198";
|
|
regular7 = "eee8d5";
|
|
bright0 = "002b36";
|
|
bright1 = "cb4b16";
|
|
bright2 = "586e75";
|
|
bright3 = "657b83";
|
|
bright4 = "839496";
|
|
bright5 = "6c71c4";
|
|
bright6 = "93a1a1";
|
|
bright7 = "fdf6e3";
|
|
selection-foreground = "93a1a1";
|
|
selection-background = "073642";
|
|
};
|
|
in
|
|
{
|
|
imports = [
|
|
./git.nix
|
|
./helix
|
|
./tmux.nix
|
|
./xdg.nix
|
|
./zsh.nix
|
|
];
|
|
|
|
home.stateVersion = "20.09";
|
|
|
|
home.sessionVariables = {
|
|
EDITOR = "hx";
|
|
PAGER = "less";
|
|
};
|
|
|
|
programs.gpg = {
|
|
enable = true;
|
|
settings = {
|
|
default-key = "99658A3EB5CD7C13";
|
|
fixed-list-mode = true;
|
|
keyid-format = "0xlong";
|
|
verify-options = "show-uid-validity";
|
|
list-options = "show-uid-validity";
|
|
cert-digest-algo = "SHA256";
|
|
use-agent = true;
|
|
keyserver = "hkps://keys.openpgp.org";
|
|
};
|
|
};
|
|
|
|
services.gpg-agent = {
|
|
enable = true;
|
|
defaultCacheTtl = 1800;
|
|
enableSshSupport = false;
|
|
};
|
|
|
|
# Languagetool server for web extension
|
|
systemd.user.services."languagetool-http-server" = {
|
|
Unit = {
|
|
Description = "Languagetool HTTP server";
|
|
PartOf = [ "graphical-session-pre.target" ];
|
|
After = [ "graphical-session.target" ];
|
|
};
|
|
|
|
Service = {
|
|
Type = "simple";
|
|
ExecStart = "${pkgs.languagetool}/bin/languagetool-http-server org.languagetool.server.HTTPServer --allow-origin '*'";
|
|
Restart = "always";
|
|
};
|
|
|
|
Install = {
|
|
WantedBy = [ "graphical-session.target" ];
|
|
};
|
|
};
|
|
|
|
systemd.user.timers."backup-keepassxc" = {
|
|
Unit.Description = "Backup password DB";
|
|
Timer = {
|
|
OnBootSec = "15min";
|
|
OnUnitActiveSec = "1d";
|
|
};
|
|
Install.WantedBy = [ "timers.target" ];
|
|
};
|
|
|
|
systemd.user.services."backup-keepassxc" = {
|
|
Unit.Description = "Backup password DB";
|
|
Unit.Type = "oneshot";
|
|
Service.ExecStart = "${pkgs.openssh}/bin/scp -P 23 -i /home/dadada/.ssh/keepassxc-backup /home/dadada/lib/sync/Personal.kdbx u355513-sub4@u355513-sub4.your-storagebox.de:Personal.kdbx";
|
|
Install.WantedBy = [ "multi-user.target" ];
|
|
};
|
|
|
|
systemd.user.timers."backup-keepassxc-ninurta" = {
|
|
Unit.Description = "Backup password DB to ninurta";
|
|
Timer = {
|
|
OnBootSec = "15min";
|
|
OnUnitActiveSec = "1d";
|
|
};
|
|
Install.WantedBy = [ "timers.target" ];
|
|
};
|
|
|
|
systemd.user.services."backup-keepassxc-ninurta" = {
|
|
Unit.Description = "Backup password DB to ninurta";
|
|
Unit.Type = "oneshot";
|
|
Service.ExecStart = "${pkgs.openssh}/bin/scp -P 22 -i /home/dadada/.ssh/keepassxc-backup /home/dadada/lib/sync/Personal.kdbx backup-keepassxc@ninurta.bs.dadada.li:/mnt/storage/backups/backup-keepassxc/Personal.kdbx";
|
|
Install.WantedBy = [ "multi-user.target" ];
|
|
};
|
|
|
|
programs.foot = {
|
|
enable = true;
|
|
server.enable = false;
|
|
settings = {
|
|
colors = colors_dark;
|
|
main = {
|
|
shell = "tmux";
|
|
dpi-aware = false;
|
|
};
|
|
mouse.hide-when-typing = true;
|
|
csd.preferred = "server";
|
|
cursor.color = "fdf6e3 586e75";
|
|
bell = {
|
|
urgent = true;
|
|
visual = false;
|
|
};
|
|
};
|
|
};
|
|
|
|
services.syncthing.enable = true;
|
|
|
|
programs.direnv = {
|
|
enable = true;
|
|
enableZshIntegration = true;
|
|
nix-direnv.enable = true;
|
|
};
|
|
|
|
# Let Home Manager install and manage itself.
|
|
programs.home-manager.enable = true;
|
|
|
|
home.packages = import ./pkgs.nix { pkgs = pkgs; };
|
|
}
|