aboutsummaryrefslogtreecommitdiff
path: root/home.nix
blob: 2ec9dfb9cec0fae7166b7bbd1eba0667dcce51c1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
{ config, pkgs, ... }:

{
  custom.pkgs = import <mypkgs> { };
  custom.nixpkgs-unstable = import <nixpkgs-unstable> { };

  imports = [
  # define options custom to this config
    ./custom.nix
  # load host specific stuff
    ./host/current.nix
  # task shortcuts
    ./module/tasker.nix 
    ./tasks/default.nix
  ];

  home = {
    keyboard.layout = "de";

    packages = [
      pkgs.pass
      config.custom.pkgs.persistent-nix-shell
    ];
  };

  programs.git = {
    enable = true;
    package = pkgs.gitAndTools.gitFull;

    userName  = "Adrian Kummerlaender";
    userEmail = "adrian@kummerlaender.eu";

    extraConfig.core.editor = "vim";
    extraConfig.merge.tool = "${pkgs.meld}/bin/meld";
  };

  programs.ssh = {
    enable = true;
    matchBlocks = {
      "automatix" = {
        hostname = "kummerlaender.eu";
        user = "common";
      };
      "majestix" = {
        hostname = "10.100.0.3";
        user = "common";
      };
      "horst" = {
        proxyCommand = "ssh majestix -W %h:%p";
        hostname = "172.23.20.188";
        user = "urdzx";
      };
    };
  };

  services.gpg-agent = {
    enable = true;
    defaultCacheTtl     = 120;
    enableSshSupport    = true;
    defaultCacheTtlSsh  = 600;
    enableScDaemon      = false;
  };

  programs.fish.shellAliases = {
    ns  = "persistent-nix-shell --command fish";
    cat = "bat --plain";
  };
}