summaryrefslogtreecommitdiffstats
path: root/1systems
diff options
context:
space:
mode:
Diffstat (limited to '1systems')
-rw-r--r--1systems/lass/mors.nix220
-rw-r--r--1systems/lass/uriel.nix195
-rw-r--r--1systems/tv/cd.nix127
-rw-r--r--1systems/tv/mkdir.nix67
-rw-r--r--1systems/tv/nomic.nix100
-rw-r--r--1systems/tv/rmdir.nix68
-rw-r--r--1systems/tv/wu.nix449
7 files changed, 0 insertions, 1226 deletions
diff --git a/1systems/lass/mors.nix b/1systems/lass/mors.nix
deleted file mode 100644
index 940dc4fdb..000000000
--- a/1systems/lass/mors.nix
+++ /dev/null
@@ -1,220 +0,0 @@
-{ config, pkgs, ... }:
-
-{
- imports = [
- ../../2configs/lass/desktop-base.nix
- ../../2configs/lass/programs.nix
- ../../2configs/lass/bitcoin.nix
- ../../2configs/lass/browsers.nix
- ../../2configs/lass/games.nix
- ../../2configs/lass/pass.nix
- ../../2configs/lass/vim.nix
- ../../2configs/lass/virtualbox.nix
- ../../2configs/lass/elster.nix
- ../../2configs/lass/urxvt.nix
- ../../2configs/lass/steam.nix
- ../../2configs/lass/wine.nix
- ../../2configs/lass/texlive.nix
- ../../2configs/lass/binary-caches.nix
- ../../2configs/lass/ircd.nix
- ../../2configs/lass/chromium-patched.nix
- ../../2configs/lass/git-repos.nix
- ../../2configs/tv/synaptics.nix
- ../../2configs/tv/exim-retiolum.nix
- {
- imports = [ ../../3modules/tv/retiolum.nix ];
- tv.retiolum = {
- enable = true;
- hosts = ../../Zhosts;
- connectTo = [
- "fastpoke"
- "gum"
- "pigstarter"
- ];
- };
- }
- {
- imports = [ ../../3modules/tv/identity.nix ];
- tv.identity = {
- enable = true;
- };
- }
- ];
-
- networking.hostName = "mors";
- networking.wireless.enable = true;
-
- networking.extraHosts = ''
- '';
-
- nix.maxJobs = 4;
-
- hardware.enableAllFirmware = true;
- nixpkgs.config.allowUnfree = true;
-
- boot = {
- loader.grub.enable = true;
- loader.grub.version = 2;
- loader.grub.device = "/dev/sda";
-
- initrd.luks.devices = [ { name = "luksroot"; device = "/dev/sda2"; } ];
- initrd.luks.cryptoModules = [ "aes" "sha512" "sha1" "xts" ];
- initrd.availableKernelModules = [ "xhci_hcd" "ehci_pci" "ahci" "usb_storage" ];
- #kernelModules = [ "kvm-intel" "msr" ];
- kernelModules = [ "msr" ];
- };
- fileSystems = {
- "/" = {
- device = "/dev/big/nix";
- fsType = "ext4";
- };
-
- "/boot" = {
- device = "/dev/sda1";
- };
-
- "/mnt/loot" = {
- device = "/dev/big/loot";
- fsType = "ext4";
- };
-
- "/home" = {
- device = "/dev/big/home";
- fsType = "ext4";
- };
-
- "/home/lass" = {
- device = "/dev/big/home-lass";
- fsType = "ext4";
- };
-
- "/mnt/backups" = {
- device = "/dev/big/backups";
- fsType = "ext4";
- };
-
- "/home/games/.local/share/Steam" = {
- device = "/dev/big/steam";
- fsType = "ext4";
- };
-
- "/home/virtual/virtual" = {
- device = "/dev/big/virtual";
- fsType = "ext4";
- };
-
- "/mnt/public" = {
- device = "/dev/big/public";
- fsType = "ext4";
- };
- };
-
- services.udev.extraRules = ''
- SUBSYSTEM=="net", ATTR{address}=="a0:88:b4:29:26:bc", NAME="wl0"
- SUBSYSTEM=="net", ATTR{address}=="f0:de:f1:0c:a7:63", NAME="et0"
- '';
-
- #TODO activationScripts seem broken, fix them!
- #activationScripts
- #split up and move into base
- system.activationScripts.powertopTunables = ''
- #Enable Audio codec power management
- echo '1' > '/sys/module/snd_hda_intel/parameters/power_save'
- #VM writeback timeout
- echo '1500' > '/proc/sys/vm/dirty_writeback_centisecs'
- #Autosuspend for USB device Broadcom Bluetooth Device [Broadcom Corp]
- echo 'auto' > '/sys/bus/usb/devices/1-1.4/power/control'
- #Autosuspend for USB device Biometric Coprocessor
- echo 'auto' > '/sys/bus/usb/devices/1-1.3/power/control'
-
- #Runtime PMs
- echo 'auto' > '/sys/bus/pci/devices/0000:00:02.0/power/control'
- echo 'auto' > '/sys/bus/pci/devices/0000:00:16.0/power/control'
- echo 'auto' > '/sys/bus/pci/devices/0000:00:00.0/power/control'
- echo 'auto' > '/sys/bus/pci/devices/0000:03:00.0/power/control'
- echo 'auto' > '/sys/bus/pci/devices/0000:00:1f.3/power/control'
- echo 'auto' > '/sys/bus/pci/devices/0000:00:1f.2/power/control'
- echo 'auto' > '/sys/bus/pci/devices/0000:00:1f.0/power/control'
- echo 'auto' > '/sys/bus/pci/devices/0000:00:1d.0/power/control'
- echo 'auto' > '/sys/bus/pci/devices/0000:00:1c.3/power/control'
- echo 'auto' > '/sys/bus/pci/devices/0000:0d:00.0/power/control'
- echo 'auto' > '/sys/bus/pci/devices/0000:00:1c.0/power/control'
- echo 'auto' > '/sys/bus/pci/devices/0000:00:1b.0/power/control'
- echo 'auto' > '/sys/bus/pci/devices/0000:00:1a.0/power/control'
- echo 'auto' > '/sys/bus/pci/devices/0000:00:19.0/power/control'
- echo 'auto' > '/sys/bus/pci/devices/0000:00:16.3/power/control'
- echo 'auto' > '/sys/bus/pci/devices/0000:00:1c.1/power/control'
- echo 'auto' > '/sys/bus/pci/devices/0000:00:1c.4/power/control'
- '';
-
- hardware.trackpoint = {
- enable = true;
- sensitivity = 220;
- speed = 0;
- emulateWheel = true;
- };
-
- #system.activationScripts.trackpoint = ''
- # echo 0 > '/sys/devices/platform/i8042/serio1/serio2/speed'
- # echo 220 > '/sys/devices/platform/i8042/serio1/serio2/sensitivity'
- #'';
-
- services.xserver = {
- videoDriver = "intel";
- vaapiDrivers = [ pkgs.vaapiIntel ];
- deviceSection = ''
- Option "AccelMethod" "sna"
- BusID "PCI:0:2:0"
- '';
- };
-
- users.extraUsers = {
- #main user
- mainUser = {
- uid = 1337;
- name = "lass";
- #isNormalUser = true;
- group = "users";
- createHome = true;
- home = "/home/lass";
- useDefaultShell = true;
- isSystemUser = false;
- extraGroups = [ "wheel" "audio" ];
- };
- };
-
- environment.systemPackages = with pkgs; [
- ];
-
- #TODO: fix this shit
- ##fprint stuff
- ##sudo fprintd-enroll $USER to save fingerprints
- #services.fprintd.enable = true;
- #security.pam.services.sudo.fprintAuth = true;
-
- users.extraGroups = {
- loot = {
- members = [
- config.users.extraUsers.mainUser.name
- "firefox"
- "chromium"
- "google"
- "virtual"
- ];
- };
- };
-
- networking.firewall = {
- allowPing = true;
- allowedTCPPorts = [
- 8000
- ];
- allowedUDPPorts = [
- 67
- ];
- };
-
- services.mongodb = {
- enable = true;
- };
-}
diff --git a/1systems/lass/uriel.nix b/1systems/lass/uriel.nix
deleted file mode 100644
index 25745d055..000000000
--- a/1systems/lass/uriel.nix
+++ /dev/null
@@ -1,195 +0,0 @@
-{ config, pkgs, ... }:
-
-{
- imports = [
- ../../2configs/lass/desktop-base.nix
- ../../2configs/lass/browsers.nix
- ../../2configs/lass/games.nix
- ../../2configs/lass/pass.nix
- ../../2configs/lass/vim.nix
- ../../2configs/lass/urxvt.nix
- ../../2configs/lass/bird.nix
- ../../2configs/lass/git-repos.nix
- ../../2configs/lass/chromium-patched.nix
- ../../2configs/tv/exim-retiolum.nix
- {
- imports = [ ../../3modules/tv/retiolum.nix ];
- tv.retiolum = {
- enable = true;
- hosts = ../../Zhosts;
- connectTo = [
- "fastpoke"
- "gum"
- "pigstarter"
- ];
- };
- }
- {
- imports = [ ../../3modules/tv/identity.nix ];
- tv.identity = {
- enable = true;
- };
- }
- ];
-
- networking.hostName = "uriel";
- networking.wireless.enable = true;
- nix.maxJobs = 2;
-
- hardware.enableAllFirmware = true;
- nixpkgs.config.allowUnfree = true;
-
- boot = {
- #kernelParams = [
- # "acpi.brightness_switch_enabled=0"
- #];
- #loader.grub.enable = true;
- #loader.grub.version = 2;
- #loader.grub.device = "/dev/sda";
-
- loader.gummiboot.enable = true;
- loader.gummiboot.timeout = 5;
-
- initrd.luks.devices = [ { name = "luksroot"; device = "/dev/sda2"; } ];
- initrd.luks.cryptoModules = [ "aes" "sha512" "sha1" "xts" ];
- initrd.availableKernelModules = [ "xhci_hcd" "ehci_pci" "ahci" "usb_storage" ];
- #kernelModules = [ "kvm-intel" "msr" ];
- kernelModules = [ "msr" ];
- extraModprobeConfig = ''
- '';
- };
- fileSystems = {
- "/" = {
- device = "/dev/pool/root";
- fsType = "ext4";
- };
-
- "/boot" = {
- device = "/dev/sda1";
- };
- };
-
- services.udev.extraRules = ''
- SUBSYSTEM=="net", ATTR{address}=="64:27:37:7d:d8:ae", NAME="wl0"
- SUBSYSTEM=="net", ATTR{address}=="f0:de:f1:b8:c8:2e", NAME="et0"
- '';
-
- #services.xserver = {
- #};
-
- services.xserver.synaptics = {
- enable = true;
- twoFingerScroll = true;
- accelFactor = "0.035";
- additionalOptions = ''
- Option "FingerHigh" "60"
- Option "FingerLow" "60"
- '';
- };
-
- users.extraUsers = {
- root = {
- openssh.authorizedKeys.keys = [
- config.sshKeys.lass.pub
- ];
- };
- mainUser = {
- uid = 1337;
- name = "lass";
- #isNormalUser = true;
- group = "users";
- createHome = true;
- home = "/home/lass";
- useDefaultShell = true;
- isSystemUser = false;
- description = "lassulus";
- extraGroups = [ "wheel" "audio" ];
- openssh.authorizedKeys.keys = [
- config.sshKeys.lass.pub
- ];
- };
- };
-
- environment.systemPackages = with pkgs; [
- ];
-
- #for google hangout
-
- users.extraUsers.google.extraGroups = [ "audio" "video" ];
-
-
- #users.extraGroups = {
- # loot = {
- # members = [
- # "lass"
- # "firefox"
- # "chromium"
- # "google"
- # ];
- # };
- #};
- #
- # iptables
- #
- #networking.firewall.enable = false;
- #system.activationScripts.iptables =
- # let
- # log = false;
- # when = c: f: if c then f else "";
- # in
- # ''
- # ip4tables() { ${pkgs.iptables}/sbin/iptables "$@"; }
- # ip6tables() { ${pkgs.iptables}/sbin/ip6tables "$@"; }
- # ipXtables() { ip4tables "$@"; ip6tables "$@"; }
-
- # #
- # # nat
- # #
-
- # # reset tables
- # ipXtables -t nat -F
- # ipXtables -t nat -X
-
- # #
- # #ipXtables -t nat -A PREROUTING -j REDIRECT ! -i retiolum -p tcp --dport ssh --to-ports 0
- # ipXtables -t nat -A PREROUTING -j REDIRECT -p tcp --dport 11423 --to-ports ssh
-
- # #
- # # filter
- # #
-
- # # reset tables
- # ipXtables -P INPUT DROP
- # ipXtables -P FORWARD DROP
- # ipXtables -F
- # ipXtables -X
-
- # # create custom chains
- # ipXtables -N Retiolum
-
- # # INPUT
- # ipXtables -A INPUT -j ACCEPT -m conntrack --ctstate RELATED,ESTABLISHED
- # ipXtables -A INPUT -j ACCEPT -i lo
- # ipXtables -A INPUT -j ACCEPT -p tcp --dport ssh -m conntrack --ctstate NEW
- # ipXtables -A INPUT -j ACCEPT -p tcp --dport http -m conntrack --ctstate NEW
- # ipXtables -A INPUT -j ACCEPT -p tcp --dport tinc -m conntrack --ctstate NEW
- # ipXtables -A INPUT -j Retiolum -i retiolum
- # ${when log "ipXtables -A INPUT -j LOG --log-level info --log-prefix 'INPUT DROP '"}
-
- # # FORWARD
- # ${when log "ipXtables -A FORWARD -j LOG --log-level info --log-prefix 'FORWARD DROP '"}
-
- # # Retiolum
- # ip4tables -A Retiolum -j ACCEPT -p icmp --icmp-type echo-request
- # ip6tables -A Retiolum -j ACCEPT -p ipv6-icmp -m icmp6 --icmpv6-type echo-request
-
-
- # ${when log "ipXtables -A Retiolum -j LOG --log-level info --log-prefix 'REJECT '"}
- # ipXtables -A Retiolum -j REJECT -p tcp --reject-with tcp-reset
- # ip4tables -A Retiolum -j REJECT -p udp --reject-with icmp-port-unreachable
- # ip4tables -A Retiolum -j REJECT --reject-with icmp-proto-unreachable
- # ip6tables -A Retiolum -j REJECT -p udp --reject-with icmp6-port-unreachable
- # ip6tables -A Retiolum -j REJECT
-
- # '';
-}
diff --git a/1systems/tv/cd.nix b/1systems/tv/cd.nix
deleted file mode 100644
index 6913508b5..000000000
--- a/1systems/tv/cd.nix
+++ /dev/null
@@ -1,127 +0,0 @@
-{ config, lib, pkgs, ... }:
-
-with lib;
-
-let
- Zpkgs = import ../../Zpkgs/tv { inherit pkgs; };
-in
-
-{
- krebs.build.host = config.krebs.hosts.cd;
-
- imports = [
- ../../2configs/tv/CAC-Developer-2.nix
- ../../2configs/tv/CAC-CentOS-7-64bit.nix
- ../../2configs/tv/base.nix
- ../../2configs/tv/consul-server.nix
- ../../2configs/tv/exim-smarthost.nix
- ../../2configs/tv/git.nix
- {
- imports = [ ../../2configs/tv/charybdis.nix ];
- tv.charybdis = {
- enable = true;
- sslCert = ../../Zcerts/charybdis_cd.crt.pem;
- };
- }
- {
- tv.ejabberd = {
- enable = true;
- hosts = [ "jabber.viljetic.de" ];
- };
- }
- {
- krebs.github-hosts-sync.enable = true;
- tv.iptables.input-internet-accept-new-tcp =
- singleton config.krebs.github-hosts-sync.port;
- }
- {
- tv.iptables = {
- enable = true;
- input-internet-accept-new-tcp = [
- "ssh"
- "tinc"
- "smtp"
- "xmpp-client"
- "xmpp-server"
- ];
- input-retiolum-accept-new-tcp = [
- "http"
- ];
- };
- }
- {
- tv.iptables.input-internet-accept-new-tcp = singleton "http";
- krebs.nginx.servers.cgit.server-names = singleton "cgit.cd.viljetic.de";
- }
- {
- # TODO make public_html also available to cd, cd.retiolum (AKA default)
- tv.iptables.input-internet-accept-new-tcp = singleton "http";
- krebs.nginx.servers.public_html = {
- server-names = singleton "cd.viljetic.de";
- locations = singleton (nameValuePair "~ ^/~(.+?)(/.*)?\$" ''
- alias /home/$1/public_html$2;
- '');
- };
- }
- {
- krebs.nginx.servers.viljetic = {
- server-names = singleton "viljetic.de";
- # TODO directly set root (instead via location)
- locations = singleton (nameValuePair "/" ''
- root ${Zpkgs.viljetic-pages};
- '');
- };
- }
- {
- krebs.retiolum = {
- enable = true;
- connectTo = [
- "fastpoke"
- "pigstarter"
- "ire"
- ];
- };
- }
- ];
-
- networking.interfaces.enp2s1.ip4 = [
- {
- address = "162.219.7.216";
- prefixLength = 24;
- }
- ];
- networking.defaultGateway = "162.219.7.1";
- networking.nameservers = [
- "8.8.8.8"
- ];
-
- environment.systemPackages = with pkgs; [
- git # required for ./deploy, clone_or_update
- htop
- iftop
- iotop
- iptables
- mutt # for mv
- nethogs
- rxvt_unicode.terminfo
- tcpdump
- ];
-
- services.journald.extraConfig = ''
- SystemMaxUse=1G
- RuntimeMaxUse=128M
- '';
-
- users.extraUsers = {
- mv = {
- uid = 1338;
- group = "users";
- home = "/home/mv";
- createHome = true;
- useDefaultShell = true;
- openssh.authorizedKeys.keys = [
- config.krebs.users.mv.pubkey
- ];
- };
- };
-}
diff --git a/1systems/tv/mkdir.nix b/1systems/tv/mkdir.nix
deleted file mode 100644
index 7542ad0ce..000000000
--- a/1systems/tv/mkdir.nix
+++ /dev/null
@@ -1,67 +0,0 @@
-{ config, lib, pkgs, ... }:
-
-with lib;
-
-{
- krebs.build.host = config.krebs.hosts.mkdir;
-
- imports = [
- ../../2configs/tv/CAC-Developer-1.nix
- ../../2configs/tv/CAC-CentOS-7-64bit.nix
- ../../2configs/tv/base.nix
- ../../2configs/tv/consul-server.nix
- ../../2configs/tv/exim-smarthost.nix
- ../../2configs/tv/git.nix
- {
- tv.iptables = {
- enable = true;
- input-internet-accept-new-tcp = [
- "ssh"
- "tinc"
- "smtp"
- ];
- input-retiolum-accept-new-tcp = [
- "http"
- ];
- };
- }
- {
- krebs.retiolum = {
- enable = true;
- connectTo = [
- "cd"
- "fastpoke"
- "pigstarter"
- "ire"
- ];
- };
- }
- ];
-
- networking.interfaces.enp2s1.ip4 = [
- {
- address = "162.248.167.241"; # TODO
- prefixLength = 24;
- }
- ];
- networking.defaultGateway = "162.248.167.1";
- networking.nameservers = [
- "8.8.8.8"
- ];
-
- environment.systemPackages = with pkgs; [
- git # required for ./deploy, clone_or_update
- htop
- iftop
- iotop
- iptables
- nethogs
- rxvt_unicode.terminfo
- tcpdump
- ];
-
- services.journald.extraConfig = ''
- SystemMaxUse=1G
- RuntimeMaxUse=128M
- '';
-}
diff --git a/1systems/tv/nomic.nix b/1systems/tv/nomic.nix
deleted file mode 100644
index cd6e02596..000000000
--- a/1systems/tv/nomic.nix
+++ /dev/null
@@ -1,100 +0,0 @@
-{ config, lib, pkgs, ... }:
-
-with lib;
-
-{
- krebs.build.host = config.krebs.hosts.nomic;
-
- imports = [
- ../../2configs/tv/AO753.nix
- ../../2configs/tv/base.nix
- ../../2configs/tv/consul-server.nix
- ../../2configs/tv/exim-retiolum.nix
- ../../2configs/tv/git.nix
- {
- tv.iptables = {
- enable = true;
- input-internet-accept-new-tcp = [
- "ssh"
- "http"
- "tinc"
- "smtp"
- ];
- };
- }
- {
- krebs.nginx = {
- enable = true;
- servers.default.locations = [
- (nameValuePair "~ ^/~(.+?)(/.*)?\$" ''
- alias /home/$1/public_html$2;
- '')
- ];
- };
- }
- {
- krebs.retiolum = {
- enable = true;
- connectTo = [
- "gum"
- "pigstarter"
- ];
- };
- }
- ];
-
- boot.initrd.luks = {
- cryptoModules = [ "aes" "sha1" "xts" ];
- devices = [
- {
- name = "luks1";
- device = "/dev/disk/by-uuid/cac73902-1023-4906-8e95-3a8b245337d4";
- }
- ];
- };
-
- fileSystems."/" =
- { device = "/dev/disk/by-uuid/de4780fc-0473-4708-81df-299b7383274c";
- fsType = "btrfs";
- };
-
- fileSystems."/boot" =
- { device = "/dev/disk/by-uuid/be3a1d80-3157-4d7c-86cc-ef01b64eff5e";
- fsType = "ext4";
- };
-
- fileSystems."/home" =
- { device = "/dev/disk/by-uuid/9db9c8ff-51da-4cbd-9f0a-0cd3333bbaff";
- fsType = "btrfs";
- };
-
- swapDevices = [ ];
-
- nix = {
- buildCores = 2;
- maxJobs = 2;
- daemonIONiceLevel = 1;
- daemonNiceLevel = 1;
- };
-
- # TODO base
- boot.tmpOnTmpfs = true;
-
- environment.systemPackages = with pkgs; [
- (writeScriptBin "play" ''
- #! /bin/sh
- set -euf
- mpv() { exec ${mpv}/bin/mpv "$@"; }
- case $1 in
- deepmix) mpv http://deepmix.ru/deepmix128.pls;;
- groovesalad) mpv http://somafm.com/play/groovesalad;;
- ntslive) mpv http://listen2.ntslive.co.uk/listen.pls;;
- *)
- echo "$0: bad argument: $*" >&2
- exit 23
- esac
- '')
- rxvt_unicode.terminfo
- tmux
- ];
-}
diff --git a/1systems/tv/rmdir.nix b/1systems/tv/rmdir.nix
deleted file mode 100644
index 9233014ba..000000000
--- a/1systems/tv/rmdir.nix
+++ /dev/null
@@ -1,68 +0,0 @@
-{ config, lib, pkgs, ... }:
-
-with lib;
-
-{
- krebs.build.host = config.krebs.hosts.rmdir;
-
- imports = [
- ../../2configs/tv/CAC-Developer-1.nix
- ../../2configs/tv/CAC-CentOS-7-64bit.nix
- ../../2configs/tv/base.nix
- ../../2configs/tv/consul-server.nix
- ../../2configs/tv/exim-smarthost.nix
- ../../2configs/tv/git.nix
- {
- tv.iptables = {
- enable = true;
- input-internet-accept-new-tcp = [
- "ssh"
- "tinc"
- "smtp"
- ];
- input-retiolum-accept-new-tcp = [
- "http"
- ];
- };
- }
- {
- krebs.retiolum = {
- enable = true;
- connectTo = [
- "cd"
- "mkdir"
- "fastpoke"
- "pigstarter"
- "ire"
- ];
- };
- }
- ];
-
- networking.interfaces.enp2s1.ip4 = [
- {
- address = "167.88.44.94";
- prefixLength = 24;
- }
- ];
- networking.defaultGateway = "167.88.44.1";
- networking.nameservers = [
- "8.8.8.8"
- ];
-
- environment.systemPackages = with pkgs; [
- git # required for ./deploy, clone_or_update
- htop
- iftop
- iotop
- iptables
- nethogs
- rxvt_unicode.terminfo
- tcpdump
- ];
-
- services.journald.extraConfig = ''
- SystemMaxUse=1G
- RuntimeMaxUse=128M
- '';
-}
diff --git a/1systems/tv/wu.nix b/1systems/tv/wu.nix
deleted file mode 100644
index 192b65b9d..000000000
--- a/1systems/tv/wu.nix
+++ /dev/null
@@ -1,449 +0,0 @@
-{ config, lib, pkgs, ... }:
-
-with lib;
-
-let
- Zpkgs = import ../../Zpkgs/tv { inherit pkgs; };
-in
-
-{
- krebs.build.host = config.krebs.hosts.wu;
-
- imports = [
- ../../2configs/tv/w110er.nix
- ../../2configs/tv/base.nix
- ../../2configs/tv/consul-client.nix
- ../../2configs/tv/exim-retiolum.nix
- ../../2configs/tv/git.nix
- ../../2configs/tv/mail-client.nix
- ../../2configs/tv/xserver.nix
- ../../2configs/tv/synaptics.nix # TODO w110er if xserver is enabled
- ../../2configs/tv/urlwatch.nix
- {
- environment.systemPackages = with pkgs; [
-
- # stockholm
- git
- gnumake
- parallel
- Zpkgs.genid
- Zpkgs.hashPassword
- Zpkgs.lentil
- (pkgs.writeScriptBin "ff" ''
- #! ${pkgs.bash}/bin/bash
- exec sudo -u ff -i <<EOF
- exec ${pkgs.firefoxWrapper}/bin/firefox $(printf " %q" "$@")
- EOF
- '')
- (pkgs.writeScriptBin "im" ''
- #! ${pkgs.bash}/bin/bash
- export PATH=${makeSearchPath "bin" (with pkgs; [
- tmux
- gnugrep
- weechat
- ])}
- if tmux list-sessions -F\#S | grep -q '^im''$'; then
- exec tmux attach -t im
- else
- exec tmux new -s im weechat
- fi
- '')
-
- # root
- cryptsetup
- ntp # ntpate
-
- # tv
- bc
- bind # dig
- file
- gitAndTools.qgit
- gnupg21
- haskellPackages.hledger
- htop
- jq
- manpages
- mkpasswd
- mpv
- netcat
- nix-repl
- nmap
- p7zip
- pavucontrol
- posix_man_pages
- qrencode
- sxiv
- texLive
- tmux
- zathura
- Zpkgs.dic
-
- #ack
- #apache-httpd
- #ascii
- #emacs
- #es
- #esniper
- #gcc
- #gptfdisk
- #graphviz
- #haskellPackages.cabal2nix
- #haskellPackages.ghc
- #haskellPackages.shake
- #hdparm
- #i7z
- #iftop
- #imagemagick
- #inotifyTools
- #iodine
- #iotop
- #lshw
- #lsof
- #minicom
- #mtools
- #ncmpc
- #neovim
- #nethogs
- #nix-prefetch-scripts #cvs bug
- #openssl
- #openswan
- #parted
- #perl
- #powertop
- #ppp
- #proot
- #pythonPackages.arandr
- #pythonPackages.youtube-dl
- #racket
- #rxvt_unicode-with-plugins
- #scrot
- #sec
- #silver-searcher
- #sloccount
- #smartmontools
- #socat
- #sshpass
- #strongswan
- #sysdig
- #sysstat
- #tcpdump
- #tlsdate
- #unetbootin
- #utillinuxCurses
- #wvdial
- #xdotool
- #xkill
- #xl2tpd
- #xsel
- ];
- }
- {
- tv.iptables = {
- enable = true;
- input-internet-accept-new-tcp = [
- "ssh"
- "http"
- "tinc"
- "smtp"
- ];
- };
- }
- {
- krebs.nginx = {
- enable = true;
- servers.default.locations = [
- (nameValuePair "~ ^/~(.+?)(/.*)?\$" ''
- alias /home/$1/public_html$2;
- '')
- ];
- };
- }
- {
- krebs.retiolum = {
- enable = true;
- connectTo = [
- "gum"
- "pigstarter"
- ];
- };
- }
- {
- users.extraGroups = {
- tv-sub.gid = 1337;
- };
-
- users.extraUsers =
- mapAttrs (name: user: user // {
- inherit name;
- home = "/home/${name}";
- createHome = true;
- useDefaultShell = true;
- }) {
- ff = {
- uid = 13378001;
- group = "tv-sub";
- extraGroups = [
- "audio"
- "video"
- ];
- };
-
- cr = {
- uid = 13378002;
- group = "tv-sub";
- extraGroups = [
- "audio"
- "video"
- "bumblebee"
- ];
- };
-
- vimb = {
- uid = 13378003;
- group = "tv-sub";
- extraGroups = [
- "audio"
- "video"
- "bumblebee"
- ];
- };
-
- fa = {
- uid = 2300001;
- group = "tv-sub";
- };
-
- rl = {
- uid = 2300002;
- group = "tv-sub";
- };
-
- tief = {
- uid = 2300702;
- group = "tv-sub";
- };
-
- btc-bitcoind = {
- uid = 2301001;
- group = "tv-sub";
- };
-
- btc-electrum = {
- uid = 2301002;
- group = "tv-sub";
- };
-
- ltc-litecoind = {
- uid = 2301101;
- group = "tv-sub";
- };
-
- eth = {
- uid = 2302001;
- group = "tv-sub";
- };
-
- emse-hsdb = {
- uid = 4200101;
- group = "tv-sub";
- };
-
- wine = {
- uid = 13370400;
- group = "tv-sub";
- extraGroups = [
- "audio"
- "video"
- "bumblebee"
- ];
- };
-
- # dwarffortress
- df = {
- uid = 13370401;
- group = "tv-sub";
- extraGroups = [
- "audio"
- "video"
- "bumblebee"
- ];
- };
-
- # XXX visudo: Warning: Runas_Alias `FTL' referenced but not defined
- FTL = {
- uid = 13370402;
- #group = "tv-sub";
- extraGroups = [
- "audio"
- "video"
- "bumblebee"
- ];
- };
-
- freeciv = {
- uid = 13370403;
- group = "tv-sub";
- };
-
- xr = {
- uid = 13370061;
- group = "tv-sub";
- extraGroups = [
- "audio"
- "video"
- ];
- };
-
- "23" = {
- uid = 13370023;
- group = "tv-sub";
- };
-
- electrum = {
- uid = 13370102;
- group = "tv-sub";
- };
-
- Reaktor = {
- uid = 4230010;
- group = "tv-sub";
- };
-
- gitolite = {
- uid = 7700;
- };
-
- skype = {
- uid = 6660001;
- group = "tv-sub";
- extraGroups = [
- "audio"
- ];
- };
-
- onion = {
- uid = 6660010;
- group = "tv-sub";
- };
-
- zalora = {
- uid = 1000301;
- group = "tv-sub";
- extraGroups = [
- "audio"
- # TODO remove vboxusers when hardening is active
- "vboxusers"
- "video"
- ];
- };
- };
-
- security.sudo.extraConfig =
- let
- inherit (import ../../4lib/tv { inherit lib pkgs; })
- isSuffixOf;
-
- hasMaster = { group ? "", ... }:
- isSuffixOf "-sub" group;
-
- masterOf = user : removeSuffix "-sub" user.group;
- in
- concatStringsSep "\n"
- (map (u: "${masterOf u} ALL=(${u.name}) NOPASSWD: ALL")
- (filter hasMaster (attrValues config.users.extraUsers)));
- }
- ];
-
- boot.initrd.luks = {