]> git.immae.eu Git - perso/Immae/Config/Nix.git/blame - modules/private/system.nix
Update Chloé’s website
[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 };
9dd3eb0b
IB
15 nixpkgs.overlays = builtins.attrValues (import ../../overlays) ++ [
16 (self: super: { postgresql = self.postgresql_pam; }) # don’t put it as generic overlay for home-manager
17 ];
8d213e2b
IB
18 _module.args = {
19 pkgsNext = import <nixpkgsNext> {};
20 pkgsPrevious = import <nixpkgsPrevious> {};
8d213e2b
IB
21 };
22
23 services.journald.extraConfig = ''
24 MaxLevelStore="warning"
25 MaxRetentionSec="1year"
26 '';
27
8a304ef4
IB
28 users.users =
29 builtins.listToAttrs (map (x: lib.attrsets.nameValuePair x.name ({
30 isNormalUser = true;
31 home = "/home/${x.name}";
32 createHome = true;
33 linger = true;
34 } // x)) (config.hostEnv.users pkgs))
35 // {
36 root.packages = let
37 nagios-cli = pkgs.writeScriptBin "nagios-cli" ''
38 #!${pkgs.stdenv.shell}
39 sudo -u naemon ${pkgs.nagios-cli}/bin/nagios-cli -c ${./monitoring/nagios-cli.cfg}
40 '';
41 in
42 [
43 pkgs.telnet
44 pkgs.htop
45 pkgs.iftop
46 pkgs.bind.dnsutils
47 pkgs.httpie
48 pkgs.iotop
49 pkgs.whois
50 pkgs.ngrep
51 pkgs.tcpdump
52 pkgs.tshark
53 pkgs.tcpflow
54 pkgs.mitmproxy
55 pkgs.nmap
56 pkgs.p0f
57 pkgs.socat
58 pkgs.lsof
59 pkgs.psmisc
ca732a83 60 pkgs.openssl
8a304ef4 61 pkgs.wget
781c3202 62
8a304ef4
IB
63 pkgs.cnagios
64 nagios-cli
65 ];
66 };
8d213e2b 67
8a304ef4 68 users.mutableUsers = false;
8d213e2b 69
8a304ef4 70 environment.etc.cnagios.source = "${pkgs.cnagios}/share/doc/cnagios";
258dd18b
IB
71 environment.systemPackages = [
72 pkgs.git
73 pkgs.vim
74 ] ++
75 (lib.optional (builtins.length (config.hostEnv.users pkgs) > 0) pkgs.home-manager);
8d213e2b
IB
76 };
77}