]> git.immae.eu Git - perso/Immae/Config/Nix.git/blame - modules/private/system.nix
Upgrade to nixos-unstable
[perso/Immae/Config/Nix.git] / modules / private / system.nix
CommitLineData
619e4f46 1{ pkgs, lib, config, name, ... }:
8d213e2b
IB
2{
3 config = {
d2e703c5 4 services.duplyBackup.profiles.system = {
6a8252b1
IB
5 rootDir = "/var/lib";
6 excludeFile = lib.mkAfter ''
7 + /var/lib/nixos
8 + /var/lib/udev
9 + /var/lib/udisks2
10 + /var/lib/systemd
11 + /var/lib/private/systemd
12 - /var/lib
13 '';
14 };
8d213e2b
IB
15 nixpkgs.overlays = builtins.attrValues (import ../../overlays);
16 _module.args = {
17 pkgsNext = import <nixpkgsNext> {};
18 pkgsPrevious = import <nixpkgsPrevious> {};
8d213e2b
IB
19 };
20
21 services.journald.extraConfig = ''
22 MaxLevelStore="warning"
23 MaxRetentionSec="1year"
24 '';
25
8a304ef4
IB
26 users.users =
27 builtins.listToAttrs (map (x: lib.attrsets.nameValuePair x.name ({
28 isNormalUser = true;
29 home = "/home/${x.name}";
30 createHome = true;
31 linger = true;
32 } // x)) (config.hostEnv.users pkgs))
33 // {
34 root.packages = let
35 nagios-cli = pkgs.writeScriptBin "nagios-cli" ''
36 #!${pkgs.stdenv.shell}
37 sudo -u naemon ${pkgs.nagios-cli}/bin/nagios-cli -c ${./monitoring/nagios-cli.cfg}
38 '';
39 in
40 [
41 pkgs.telnet
42 pkgs.htop
43 pkgs.iftop
44 pkgs.bind.dnsutils
45 pkgs.httpie
46 pkgs.iotop
47 pkgs.whois
48 pkgs.ngrep
49 pkgs.tcpdump
50 pkgs.tshark
51 pkgs.tcpflow
52 pkgs.mitmproxy
53 pkgs.nmap
54 pkgs.p0f
55 pkgs.socat
56 pkgs.lsof
57 pkgs.psmisc
58 pkgs.wget
781c3202 59
8a304ef4
IB
60 pkgs.cnagios
61 nagios-cli
62 ];
63 };
8d213e2b 64
8a304ef4 65 users.mutableUsers = false;
8d213e2b 66
8a304ef4 67 environment.etc.cnagios.source = "${pkgs.cnagios}/share/doc/cnagios";
258dd18b
IB
68 environment.systemPackages = [
69 pkgs.git
70 pkgs.vim
71 ] ++
72 (lib.optional (builtins.length (config.hostEnv.users pkgs) > 0) pkgs.home-manager);
8d213e2b
IB
73 };
74}