]> git.immae.eu Git - perso/Immae/Config/Nix.git/blob - modules/private/system.nix
Add monitoring tools to path
[perso/Immae/Config/Nix.git] / modules / private / system.nix
1 { pkgs, lib, ... }:
2 {
3 config = {
4 services.duplyBackup.profiles.system = {
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 };
15 nixpkgs.overlays = builtins.attrValues (import ../../overlays);
16 _module.args = {
17 pkgsNext = import <nixpkgsNext> {};
18 pkgsPrevious = import <nixpkgsPrevious> {};
19 };
20
21 services.journald.extraConfig = ''
22 MaxLevelStore="warning"
23 MaxRetentionSec="1year"
24 '';
25
26 users.mutableUsers = false;
27 users.users.root.packages = let
28 nagios-cli = pkgs.writeScriptBin "nagios-cli" ''
29 #!${pkgs.stdenv.shell}
30 sudo -u naemon ${pkgs.nagios-cli}/bin/nagios-cli -c ${./monitoring/nagios-cli.cfg}
31 '';
32 in
33 [
34 pkgs.telnet
35 pkgs.htop
36 pkgs.iftop
37 pkgs.bind.dnsutils
38 pkgs.httpie
39 pkgs.iotop
40 pkgs.whois
41 pkgs.ngrep
42 pkgs.tcpdump
43 pkgs.tshark
44 pkgs.tcpflow
45 pkgs.mitmproxy
46 pkgs.nmap
47 pkgs.p0f
48 pkgs.socat
49 pkgs.lsof
50 pkgs.psmisc
51 pkgs.wget
52
53 pkgs.cnagios
54 nagios-cli
55 ];
56
57 environment.etc.cnagios.source = "${pkgs.cnagios}/share/doc/cnagios";
58 environment.systemPackages = [
59 pkgs.vim
60 ];
61
62 };
63 }