]> git.immae.eu Git - perso/Immae/Config/Nix.git/blob - modules/private/system.nix
Add openssl to common tools
[perso/Immae/Config/Nix.git] / modules / private / system.nix
1 { pkgs, lib, config, name, ... }:
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.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.openssl
59 pkgs.wget
60
61 pkgs.cnagios
62 nagios-cli
63 ];
64 };
65
66 users.mutableUsers = false;
67
68 environment.etc.cnagios.source = "${pkgs.cnagios}/share/doc/cnagios";
69 environment.systemPackages = [
70 pkgs.git
71 pkgs.vim
72 ] ++
73 (lib.optional (builtins.length (config.hostEnv.users pkgs) > 0) pkgs.home-manager);
74 };
75 }