diff options
| -rw-r--r-- | makefu/1systems/gum/config.nix | 10 | ||||
| -rw-r--r-- | makefu/1systems/latte/config.nix | 1 | ||||
| -rw-r--r-- | makefu/1systems/nextgum/config.nix | 13 | ||||
| -rw-r--r-- | makefu/1systems/omo/config.nix | 71 | ||||
| -rw-r--r-- | makefu/1systems/studio/config.nix | 1 | ||||
| -rw-r--r-- | makefu/1systems/x/config.nix | 14 | ||||
| -rw-r--r-- | makefu/2configs/bitlbee.nix | 8 | ||||
| -rw-r--r-- | makefu/2configs/default.nix | 11 | ||||
| -rw-r--r-- | makefu/3modules/default.nix | 1 | ||||
| -rw-r--r-- | makefu/3modules/state.nix | 9 | 
10 files changed, 115 insertions, 24 deletions
diff --git a/makefu/1systems/gum/config.nix b/makefu/1systems/gum/config.nix index 998ecd0fb..351844482 100644 --- a/makefu/1systems/gum/config.nix +++ b/makefu/1systems/gum/config.nix @@ -17,7 +17,6 @@ in {        # <stockholm/makefu/2configs/disable_v6.nix>        <stockholm/makefu/2configs/exim-retiolum.nix>        <stockholm/makefu/2configs/tinc/retiolum.nix> -      <stockholm/makefu/2configs/urlwatch>        # Security        <stockholm/makefu/2configs/sshd-totp.nix> @@ -26,7 +25,6 @@ in {        <stockholm/makefu/2configs/tools/core.nix>        <stockholm/makefu/2configs/tools/dev.nix>        <stockholm/makefu/2configs/tools/sec.nix> -      <stockholm/makefu/2configs/vim.nix>        <stockholm/makefu/2configs/zsh-user.nix>        # services @@ -57,7 +55,7 @@ in {        <stockholm/makefu/2configs/nginx/misa-felix-hochzeit.ml.nix>        <stockholm/makefu/2configs/deployment/photostore.krebsco.de.nix> -      <stockholm/makefu/2configs/deployment/graphs.nix> +      # <stockholm/makefu/2configs/deployment/graphs.nix>        <stockholm/makefu/2configs/deployment/owncloud.nix>        <stockholm/makefu/2configs/deployment/boot-euer.nix>        <stockholm/makefu/2configs/deployment/bgt/hidden_service.nix> @@ -196,12 +194,6 @@ in {      get      tmux    ]; -  services.bitlbee = { -    enable = true; -    libpurple_plugins = [ pkgs.telegram-purple ]; -  }; - -  # Hardware    # Network    networking = { diff --git a/makefu/1systems/latte/config.nix b/makefu/1systems/latte/config.nix index 5352b029f..bec778abc 100644 --- a/makefu/1systems/latte/config.nix +++ b/makefu/1systems/latte/config.nix @@ -22,7 +22,6 @@ in {      # Tools      <stockholm/makefu/2configs/tools/core.nix> -    <stockholm/makefu/2configs/vim.nix>      <stockholm/makefu/2configs/zsh-user.nix>      # Services      <stockholm/makefu/2configs/remote-build/slave.nix> diff --git a/makefu/1systems/nextgum/config.nix b/makefu/1systems/nextgum/config.nix index 9761546e7..db22cf9b8 100644 --- a/makefu/1systems/nextgum/config.nix +++ b/makefu/1systems/nextgum/config.nix @@ -19,14 +19,15 @@ in {        <stockholm/makefu/2configs/tools/core.nix>        <stockholm/makefu/2configs/tools/dev.nix>        <stockholm/makefu/2configs/tools/sec.nix> -      <stockholm/makefu/2configs/vim.nix>        <stockholm/makefu/2configs/zsh-user.nix>        <stockholm/makefu/2configs/mosh.nix> +      <stockholm/makefu/2configs/gui/xpra.nix>        <stockholm/makefu/2configs/git/cgit-retiolum.nix>        <stockholm/makefu/2configs/backup.nix>        <stockholm/makefu/2configs/exim-retiolum.nix>        <stockholm/makefu/2configs/tinc/retiolum.nix> +        # services        <stockholm/makefu/2configs/sabnzbd.nix> @@ -51,12 +52,13 @@ in {        <stockholm/makefu/2configs/dnscrypt/server.nix>        <stockholm/makefu/2configs/binary-cache/server.nix>        <stockholm/makefu/2configs/iodined.nix> +      <stockholm/makefu/2configs/bitlbee.nix>        ## buildbot        <stockholm/makefu/2configs/remote-build/slave.nix>        # Removed until move: no extra mails -      # <stockholm/makefu/2configs/urlwatch> +      <stockholm/makefu/2configs/urlwatch>        # Removed until move: avoid double-update of domain        # <stockholm/makefu/2configs/hub.nix>        # Removed until move: avoid letsencrypt ban @@ -166,6 +168,8 @@ in {          networking.firewall.allowedTCPPorts = [ 5201 ];        } +      # krebs infrastructure services +      <stockholm/makefu/2configs/stats/server.nix>    ];    makefu.dl-dir = "/var/download"; @@ -200,13 +204,8 @@ in {    environment.systemPackages = with pkgs;[      weechat      bepasty-client-cli -    get      tmux    ]; -  services.bitlbee = { -    enable = true; -    libpurple_plugins = [ pkgs.telegram-purple ]; -  };    # Hardware diff --git a/makefu/1systems/omo/config.nix b/makefu/1systems/omo/config.nix index a85d5f5ce..109877bf1 100644 --- a/makefu/1systems/omo/config.nix +++ b/makefu/1systems/omo/config.nix @@ -10,6 +10,7 @@ let    rootDisk = byid "ata-SanDisk_SD8SNAT128G1122_162099420904";    rootPartition = byid "ata-SanDisk_SD8SNAT128G1122_162099420904-part2";    primaryInterface = "enp2s0"; +  firetv = "192.168.1.238";    # cryptsetup luksFormat $dev --cipher aes-xts-plain64 -s 512 -h sha512    # cryptsetup luksAddKey $dev tmpkey    # cryptsetup luksOpen $dev crypt0 --key-file tmpkey --keyfile-size=4096 @@ -28,7 +29,8 @@ let    # |  *    |    # |  *    |    # |_______| -  cryptDisk0 = byid "ata-ST2000DM001-1CH164_Z240XTT6"; +  # cryptDisk0 = byid "ata-ST2000DM001-1CH164_Z240XTT6"; +  cryptDisk0 = byid "ata-ST8000DM004-2CX188_ZCT01PLV";    cryptDisk1 = byid "ata-TP02000GB_TPW151006050068";    cryptDisk2 = byid "ata-ST4000DM000-1F2168_Z303HVSG";    cryptDisk3 = byid "ata-ST8000DM004-2CX188_ZCT01SG4"; @@ -97,6 +99,71 @@ in {        # Temporary:        # <stockholm/makefu/2configs/temp/rst-issue.nix> +      { # ncdc +        environment.systemPackages = [ pkgs.ncdc ]; +        networking.firewall = { +          allowedUDPPorts = [ 51411 ]; +          allowedTCPPorts = [ 51411 ]; +        }; +      } +      { +        systemd.services.firetv = { +          wantedBy = [ "multi-user.target" ]; +          serviceConfig = { +            User = "nobody"; +            ExecStart = "${pkgs.python-firetv}/bin/firetv-server -d ${firetv}:5555"; +          }; +        }; +        nixpkgs.config.permittedInsecurePackages = [ +         "homeassistant-0.65.5" +       ]; +        services.home-assistant = { +          config = { +            homeassistant = { +              name = "Home"; time_zone = "Europe/Berlin"; +              latitude = "48.7687"; +              longitude = "9.2478"; +            }; +            media_player = [ +              { platform = "kodi"; +                host = firetv; +              } +              { platform = "firetv"; +                # assumes python-firetv running +              } +            ]; +            sensor = [ +              { platform = "luftdaten"; +                name = "Ditzingen"; +                sensorid = "663"; +                monitored_conditions = [ "P1" "P2" ]; +              } +              # https://www.home-assistant.io/cookbook/automation_for_rainy_days/ +              { platform = "darksky"; +                api_key = "c73619e6ea79e553a585be06aacf3679"; +                language = "de"; +                monitored_conditions = [ "summary" "icon" +                "nearest_storm_distance" "precip_probability" +                "precip_intensity" +                "temperature" # "temperature_high" "temperature_low" +                "hourly_summary" +                "uv_index" ]; +                units =  "si" ; +                update_interval = { +                      days = 0; +                      hours = 0; +                      minutes = 10; +                      seconds = 0; +                }; +              } +            ]; +            frontend = { }; +            http = { }; +          }; +          enable = true; +          #configDir = "/var/lib/hass"; +        }; +      }      ];    makefu.full-populate = true;    makefu.server.primary-itf = primaryInterface; @@ -164,7 +231,7 @@ in {      // cryptMount "crypt2"      // cryptMount "crypt3"      // { "/media/cryptX" = { -            device = (lib.concatMapStringsSep ":" (d: (toMapper d)) [ 0 1 2 ]); +            device = (lib.concatMapStringsSep ":" (d: (toMapper d)) [ 0 1 2 3 ]);              fsType = "mergerfs";              noCheck = true;              options = [ "defaults" "allow_other" "nofail" "nonempty" ]; diff --git a/makefu/1systems/studio/config.nix b/makefu/1systems/studio/config.nix index b9a1a5d6a..b3d9383c4 100644 --- a/makefu/1systems/studio/config.nix +++ b/makefu/1systems/studio/config.nix @@ -3,7 +3,6 @@    imports = [      <stockholm/makefu>      <stockholm/makefu/2configs/vncserver.nix> -    <stockholm/makefu/2configs/vim.nix>      <stockholm/makefu/2configs/disable_v6.nix>      <stockholm/makefu/2configs/audio/jack-on-pulse.nix>      <stockholm/makefu/2configs/audio/realtime-audio.nix> diff --git a/makefu/1systems/x/config.nix b/makefu/1systems/x/config.nix index e5b481ab6..f6ca0c0ac 100644 --- a/makefu/1systems/x/config.nix +++ b/makefu/1systems/x/config.nix @@ -15,7 +15,7 @@ with import <stockholm/lib>;        <stockholm/makefu/2configs/tools/mic92.nix>        <stockholm/makefu/2configs/laptop-backup.nix> -      <stockholm/makefu/2configs/dnscrypt/client.nix> +      # <stockholm/makefu/2configs/dnscrypt/client.nix>        <stockholm/makefu/2configs/avahi.nix>        # Debugging @@ -36,6 +36,8 @@ with import <stockholm/lib>;        # Krebs        <stockholm/makefu/2configs/tinc/retiolum.nix> +      <stockholm/makefu/2configs/share/gum-client.nix> +        # applications        <stockholm/makefu/2configs/exim-retiolum.nix> @@ -72,6 +74,7 @@ with import <stockholm/lib>;        <stockholm/makefu/2configs/hw/irtoy.nix>        <stockholm/makefu/2configs/hw/bluetooth.nix>        # <stockholm/makefu/2configs/hw/rad1o.nix> +      <stockholm/makefu/2configs/hw/smartcard.nix>        # Filesystem        <stockholm/makefu/2configs/fs/sda-crypto-root-home.nix> @@ -82,6 +85,8 @@ with import <stockholm/lib>;          programs.adb.enable = true;        }        # temporary +      <stockholm/makefu/2configs/pyload.nix> +      # <stockholm/makefu/2configs/nginx/rompr.nix>        # <stockholm/makefu/2configs/lanparty/lancache.nix>        # <stockholm/makefu/2configs/lanparty/lancache-dns.nix>        # <stockholm/makefu/2configs/lanparty/samba.nix> @@ -138,8 +143,11 @@ with import <stockholm/lib>;    boot.loader.grub.configurationLimit = 3;    environment.systemPackages = [ pkgs.passwdqc-utils pkgs.nixUnstable ]; -  nixpkgs.overlays = [ (import <python/overlay.nix>) ];    # environment.variables = { GOROOT = [ "${pkgs.go.out}/share/go" ]; }; - +  state = [ +    "/home/makefu/stockholm" +    "/home/makefu/backup/borgun" +    "/home/makefu/.mail/" +  ];  } diff --git a/makefu/2configs/bitlbee.nix b/makefu/2configs/bitlbee.nix new file mode 100644 index 000000000..17efa7113 --- /dev/null +++ b/makefu/2configs/bitlbee.nix @@ -0,0 +1,8 @@ +{pkgs, ... }: +# state: /var/lib/bitlbee +{ +   services.bitlbee = { +    enable = true; +    libpurple_plugins = [ pkgs.telegram-purple ]; +  }; +} diff --git a/makefu/2configs/default.nix b/makefu/2configs/default.nix index 0a89d2023..6192a92a5 100644 --- a/makefu/2configs/default.nix +++ b/makefu/2configs/default.nix @@ -8,13 +8,16 @@ with import <stockholm/lib>;          mapAttrs (_: h: { hashedPassword = h; })                   (import <secrets/hashedPasswords.nix>);      } -    ./vim.nix +    ./editor/vim.nix      ./binary-cache/nixos.nix    ];    boot.kernelPackages = lib.mkDefault pkgs.linuxPackages_latest;    programs.command-not-found.enable = false; + +  nix.package = pkgs.nixUnstable; +    nixpkgs.config.allowUnfreePredicate =  (pkg: pkgs.lib.hasPrefix "unrar-" pkg.name);    krebs = {      enable = true; @@ -158,4 +161,10 @@ with import <stockholm/lib>;          "-a task,never"        ];      }; +  system.activationScripts.state =  optionalString (config.state != []) '' +    cat << EOF +    This machine is burdened with state: +    ${concatMapStringsSep "\n" (d: "* ${d}") config.state} +    EOF +  '';  } diff --git a/makefu/3modules/default.nix b/makefu/3modules/default.nix index fa4eb827c..f06ce3d53 100644 --- a/makefu/3modules/default.nix +++ b/makefu/3modules/default.nix @@ -2,6 +2,7 @@ _:  {    imports = [ +    ./state.nix      ./populate.nix      ./awesome-extra.nix      ./deluge.nix diff --git a/makefu/3modules/state.nix b/makefu/3modules/state.nix new file mode 100644 index 000000000..461b90152 --- /dev/null +++ b/makefu/3modules/state.nix @@ -0,0 +1,9 @@ +{config, lib, pkgs, ... }: + +{ +  options.state = lib.mkOption { +    type = lib.types.listOf lib.types.str; +    description = "state which is currently scattered on the machine"; +    default = []; +  }; +}  | 
