{ config, pkgs, ... }: { imports = [ ./common-headless.nix ]; boot.loader.grub.enable = true; boot.loader.grub.version = 2; boot.loader.grub.device = "/dev/sdg"; # or "nodev" for efi only networking = { hostName = "vaccaria"; hostId = "3d551a7c"; }; services.openssh.enable = true; users.extraUsers.gebner = { isNormalUser = true; extraGroups = ["wheel" "transmission"]; }; boot.supportedFilesystems = ["zfs"]; boot.kernelPackages = pkgs.lib.mkOverride 10 pkgs.linuxPackages; system.stateVersion = "17.03"; fileSystems."/mnt/vaccaria" = pkgs.lib.mkOverride 10 { device = "vaccaria/export"; fsType = "zfs"; }; services.samba = { enable = true; extraConfig = '' passdb backend = tdbsam unix password sync = no ''; shares = { export = { "guest ok" = "no"; path = "/mnt/vaccaria"; }; }; }; # services.transmission = { # enable = true; # settings = { # download-dir = "/mnt/aplysia/torrents"; # incomplete-dir = "/mnt/aplysia/torrents"; # }; # }; networking.firewall = { allowedTCPPorts = [ 445 139 # samba ]; allowedUDPPorts = [ 137 138 # samba ]; }; environment.systemPackages = with pkgs; [ transmission samba ]; # fancontrol boot.kernelModules = ["it87"]; systemd.services.fancontrol = let fancontrolConfig = pkgs.writeText "fancontrol" '' # Configuration file generated by pwmconfig, changes will be lost INTERVAL=10 DEVPATH=hwmon0=devices/pci0000:00/0000:00:18.3 hwmon2=devices/platform/it87.552 DEVNAME=hwmon0=k10temp hwmon2=it8720 FCTEMPS=hwmon2/pwm3=hwmon0/temp1_input hwmon2/pwm1=hwmon0/temp1_input FCFANS=hwmon2/pwm3=hwmon2/fan1_input hwmon2/pwm1=hwmon2/fan1_input MINTEMP=hwmon2/pwm3=40 hwmon2/pwm1=40 MAXTEMP=hwmon2/pwm3=65 hwmon2/pwm1=65 MINSTART=hwmon2/pwm3=150 hwmon2/pwm1=150 MINSTOP=hwmon2/pwm3=0 hwmon2/pwm1=100 ''; in { description = "fancontrol from lm_sensors"; wantedBy = ["multi-user.target"]; serviceConfig.ExecStart = "${pkgs.lm_sensors}/bin/fancontrol ${fancontrolConfig}"; }; # hdd spindown powerManagement.powerUpCommands = '' ${pkgs.hdparm}/bin/hdparm -B127 -S100 /dev/sd{a,b,c,d,e,f} ''; }