From 5dd486eabdec439cc67b2341519d1afdd577c34f Mon Sep 17 00:00:00 2001
From: makefu <github@syntax-fehler.de>
Date: Thu, 31 May 2018 10:33:08 +0200
Subject: [PATCH 1/6] ma bluetooth: separate file

---
 makefu/1systems/x/config.nix       | 47 +++++-------------------------
 makefu/2configs/hw/bluetooth.nix   | 39 +++++++++++++++++++++++++
 makefu/2configs/{ => hw}/rad1o.nix |  0
 3 files changed, 46 insertions(+), 40 deletions(-)
 create mode 100644 makefu/2configs/hw/bluetooth.nix
 rename makefu/2configs/{ => hw}/rad1o.nix (100%)

diff --git a/makefu/1systems/x/config.nix b/makefu/1systems/x/config.nix
index 93bb27efe..451689f91 100644
--- a/makefu/1systems/x/config.nix
+++ b/makefu/1systems/x/config.nix
@@ -19,6 +19,7 @@ with import <stockholm/lib>;
 
       # Debugging
       # <stockholm/makefu/2configs/disable_v6.nix>
+      # <stockholm/makefu/2configs/pyload.nix>
 
       # Testing
       # <stockholm/makefu/2configs/deployment/gitlab.nix>
@@ -67,7 +68,9 @@ with import <stockholm/lib>;
       # <stockholm/makefu/2configs/hw/rtl8812au.nix>
       <stockholm/makefu/2configs/hw/network-manager.nix>
       <stockholm/makefu/2configs/hw/stk1160.nix>
-      # <stockholm/makefu/2configs/rad1o.nix>
+      <stockholm/makefu/2configs/hw/irtoy.nix>
+      <stockholm/makefu/2configs/hw/bluetooth.nix>
+      # <stockholm/makefu/2configs/hw/rad1o.nix>
 
       # Filesystem
       <stockholm/makefu/2configs/fs/sda-crypto-root-home.nix>
@@ -103,44 +106,9 @@ with import <stockholm/lib>;
           ];
         };
       }
-      { # bluetooth+pulse config
-        # for blueman-applet
-        users.users.makefu.packages = [
-          pkgs.blueman
-        ];
-        hardware.pulseaudio = {
-          enable = true;
-          package = pkgs.pulseaudioFull;
-          # systemWide = true;
-          support32Bit = true;
-          configFile = pkgs.writeText "default.pa" ''
-            load-module module-udev-detect
-            load-module module-bluetooth-policy
-            load-module module-bluetooth-discover
-            load-module module-native-protocol-unix
-            load-module module-always-sink
-            load-module module-console-kit
-            load-module module-systemd-login
-            load-module module-intended-roles
-            load-module module-position-event-sounds
-            load-module module-filter-heuristics
-            load-module module-filter-apply
-            load-module module-switch-on-connect
-            load-module module-switch-on-port-available
-            '';
-        };
-
-        # presumably a2dp Sink
-        # Enable profile:
-        ## pacmd set-card-profile "$(pactl list cards short | egrep -o bluez_card[[:alnum:]._]+)" a2dp_sink
-        hardware.bluetooth.extraConfig = '';
-          [general]
-          Enable=Source,Sink,Media,Socket
-        '';
-
-        # connect via https://nixos.wiki/wiki/Bluetooth#Using_Bluetooth_headsets_with_PulseAudio
-        hardware.bluetooth.enable = true;
-      }
+      # {
+      #   services.zerotierone.enable = true;
+      # }
 
     ];
 
@@ -166,7 +134,6 @@ with import <stockholm/lib>;
   # hard dependency because otherwise the device will not be unlocked
   boot.initrd.luks.devices = [ { name = "luksroot"; device = "/dev/sda2"; allowDiscards=true; }];
 
-  nix.package = pkgs.nixUnstable;
   environment.systemPackages = [ pkgs.passwdqc-utils pkgs.nixUnstable ];
   nixpkgs.overlays = [ (import <python/overlay.nix>) ];
 
diff --git a/makefu/2configs/hw/bluetooth.nix b/makefu/2configs/hw/bluetooth.nix
new file mode 100644
index 000000000..85c3190ff
--- /dev/null
+++ b/makefu/2configs/hw/bluetooth.nix
@@ -0,0 +1,39 @@
+{ pkgs, ... }:
+{ # bluetooth+pulse config
+# for blueman-applet
+  users.users.makefu.packages = [
+    pkgs.blueman
+  ];
+  hardware.pulseaudio = {
+    enable = true;
+    package = pkgs.pulseaudioFull;
+# systemWide = true;
+    support32Bit = true;
+    configFile = pkgs.writeText "default.pa" ''
+      load-module module-udev-detect
+      load-module module-bluetooth-policy
+      load-module module-bluetooth-discover
+      load-module module-native-protocol-unix
+      load-module module-always-sink
+      load-module module-console-kit
+      load-module module-systemd-login
+      load-module module-intended-roles
+      load-module module-position-event-sounds
+      load-module module-filter-heuristics
+      load-module module-filter-apply
+      load-module module-switch-on-connect
+      load-module module-switch-on-port-available
+      '';
+  };
+
+# presumably a2dp Sink
+# Enable profile:
+## pacmd set-card-profile "$(pactl list cards short | egrep -o bluez_card[[:alnum:]._]+)" a2dp_sink
+  hardware.bluetooth.extraConfig = '';
+  [general]
+    Enable=Source,Sink,Media,Socket
+      '';
+
+# connect via https://nixos.wiki/wiki/Bluetooth#Using_Bluetooth_headsets_with_PulseAudio
+  hardware.bluetooth.enable = true;
+}
diff --git a/makefu/2configs/rad1o.nix b/makefu/2configs/hw/rad1o.nix
similarity index 100%
rename from makefu/2configs/rad1o.nix
rename to makefu/2configs/hw/rad1o.nix

From b31dff172455519e93292ccee5e3c8441a5888e3 Mon Sep 17 00:00:00 2001
From: makefu <github@syntax-fehler.de>
Date: Thu, 31 May 2018 10:33:48 +0200
Subject: [PATCH 2/6] ma omo.r: also deploy torrent secrets

---
 makefu/1systems/omo/source.nix | 1 +
 1 file changed, 1 insertion(+)

diff --git a/makefu/1systems/omo/source.nix b/makefu/1systems/omo/source.nix
index 94fd9cbe6..da0d87aad 100644
--- a/makefu/1systems/omo/source.nix
+++ b/makefu/1systems/omo/source.nix
@@ -1,3 +1,4 @@
 import <stockholm/makefu/source.nix> {
   name="omo";
+  torrent = true;
 }

From b7c156e5d25f0acf0a430eb1477890482009c51e Mon Sep 17 00:00:00 2001
From: makefu <github@syntax-fehler.de>
Date: Thu, 31 May 2018 10:34:46 +0200
Subject: [PATCH 3/6] ma source: bump nixpkgs to today

---
 makefu/source.nix | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/makefu/source.nix b/makefu/source.nix
index 40aeac8b6..d956a06cd 100644
--- a/makefu/source.nix
+++ b/makefu/source.nix
@@ -23,7 +23,7 @@ let
     ];
   };
   # TODO: automate updating of this ref + cherry-picks
-  ref = "a09afbfb8a4"; # nixos-18.03 @ 2018-04-04
+  ref = "a8e3e2cc1f7"; # nixos-18.03 @ 2018-05-31
                        # + do_sqlite3 ruby: 55a952be5b5
 
 in

From 319bb6fa89e24d0da9eca1b9d69c685b95f329f0 Mon Sep 17 00:00:00 2001
From: makefu <github@syntax-fehler.de>
Date: Thu, 31 May 2018 10:36:10 +0200
Subject: [PATCH 4/6] ma hw/irtoy: init

---
 makefu/2configs/hw/irtoy.nix | 15 +++++++++++++++
 1 file changed, 15 insertions(+)
 create mode 100644 makefu/2configs/hw/irtoy.nix

diff --git a/makefu/2configs/hw/irtoy.nix b/makefu/2configs/hw/irtoy.nix
new file mode 100644
index 000000000..688f1b2b9
--- /dev/null
+++ b/makefu/2configs/hw/irtoy.nix
@@ -0,0 +1,15 @@
+{ config, lib, pkgs, ... }:
+
+{
+
+  users.users.makefu.packages = with pkgs; [
+    lirc
+  ];
+
+  users.extraUsers.${config.krebs.build.user.name}.extraGroups = [ "dialout" ];
+
+  services.udev.extraRules = ''
+    SUBSYSTEMS=="usb", ATTRS{idProduct}=="fd08", ATTRS{idVendor}=="04d8", SYMLINK+="irtoy", MODE="0666", GROUP="dialout"
+  '';
+}
+

From f6006d7df1fbe2e24b32d945eb55aede97b41886 Mon Sep 17 00:00:00 2001
From: makefu <github@syntax-fehler.de>
Date: Thu, 31 May 2018 12:26:53 +0200
Subject: [PATCH 5/6] ma source: fix exfat-nofuse build

---
 makefu/source.nix | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/makefu/source.nix b/makefu/source.nix
index a15edd1aa..56d9095b2 100644
--- a/makefu/source.nix
+++ b/makefu/source.nix
@@ -23,8 +23,9 @@ let
     ];
   };
   # TODO: automate updating of this ref + cherry-picks
-  ref = "a8e3e2cc1f7"; # nixos-18.03 @ 2018-05-31
-                       # + do_sqlite3 ruby: 55a952be5b5
+  ref = "60b6ab055ad"; # nixos-18.03 @ 2018-05-31
+                       # + do_sqlite3 ruby:   55a952be5b5
+                       # + exfat-nofuse bump: ee6a5296a35
 
 in
   evalSource (toString _file) [

From 3c704cf61e2dc48629af6e331c21d9c5be5d277b Mon Sep 17 00:00:00 2001
From: makefu <github@syntax-fehler.de>
Date: Thu, 7 Jun 2018 21:18:39 +0200
Subject: [PATCH 6/6] ma tools: core -> desktop

---
 makefu/2configs/tools/all.nix     |  1 +
 makefu/2configs/tools/core.nix    |  9 ---------
 makefu/2configs/tools/desktop.nix | 11 +++++++++++
 3 files changed, 12 insertions(+), 9 deletions(-)
 create mode 100644 makefu/2configs/tools/desktop.nix

diff --git a/makefu/2configs/tools/all.nix b/makefu/2configs/tools/all.nix
index 2bb438f16..b6554e040 100644
--- a/makefu/2configs/tools/all.nix
+++ b/makefu/2configs/tools/all.nix
@@ -5,6 +5,7 @@
     ./core.nix
     ./core-gui.nix
     ./dev.nix
+    ./desktop.nix
     ./extra-gui.nix
     ./games.nix
     ./media.nix
diff --git a/makefu/2configs/tools/core.nix b/makefu/2configs/tools/core.nix
index 7e9a459c3..604288904 100644
--- a/makefu/2configs/tools/core.nix
+++ b/makefu/2configs/tools/core.nix
@@ -24,7 +24,6 @@
 
     # io
     pv
-    sshpass
     usbutils
     p7zip
     hdparm
@@ -39,11 +38,6 @@
     wol
     iftop
 
-    mkpasswd
-    mutt
-    weechat
-    tmux
-
     # stockholm
     git
     gnumake
@@ -55,8 +49,5 @@
     rxvt_unicode.terminfo
     krebspaste
 
-    # TODO:
-    taskwarrior
-    pass
   ];
 }
diff --git a/makefu/2configs/tools/desktop.nix b/makefu/2configs/tools/desktop.nix
new file mode 100644
index 000000000..1fe03e111
--- /dev/null
+++ b/makefu/2configs/tools/desktop.nix
@@ -0,0 +1,11 @@
+{ pkgs, ... }:
+
+{
+  users.users.makefu.packages = with pkgs; [
+    taskwarrior
+    pass
+    mutt
+    weechat
+    tmux
+  ];
+}