about summary refs log tree commit diff
path: root/home/packages
diff options
context:
space:
mode:
authorFranck Cuny <franck@fcuny.net>2022-06-16 17:20:22 -0700
committerFranck Cuny <franck@fcuny.net>2022-06-16 17:22:13 -0700
commit9d8c62a6e1f28491377b7000a6505c08630dc48c (patch)
tree046809bcc5a8ccbf58d47c5d2c36d9aa4aed5542 /home/packages
parentdocs(tools/govanity): update instructions (diff)
downloadworld-9d8c62a6e1f28491377b7000a6505c08630dc48c.tar.gz
ref(scripts): remove the module for scripts
The scripts should be part of other modules. If there's no good place
for them, they should be part of the packages module.

Change-Id: Ic6c678fbe981444848a0ac7015c6c2e450f3b1c1
Reviewed-on: https://cl.fcuny.net/c/world/+/424
Tested-by: CI
Reviewed-by: Franck Cuny <franck@fcuny.net>
Diffstat (limited to 'home/packages')
-rw-r--r--home/packages/default.nix16
1 files changed, 14 insertions, 2 deletions
diff --git a/home/packages/default.nix b/home/packages/default.nix
index e6dac4c..bd897ac 100644
--- a/home/packages/default.nix
+++ b/home/packages/default.nix
@@ -1,5 +1,16 @@
 { config, lib, pkgs, ... }:
-let cfg = config.my.home.packages;
+let
+  cfg = config.my.home.packages;
+  album-to-nas = pkgs.writeShellScriptBin "album-to-nas" ''
+    set -euo pipefail
+
+    ALBUM_PATH="''${1}"
+    ALBUM_NAME=$(basename "''${ALBUM_PATH}")
+    NAS=$(${pkgs.tailscale}/bin/tailscale status --json | ${pkgs.jq}/bin/jq -r '.Peer | map(select(.HostName == "tahoe"))[0].TailscaleIPs[0]')
+
+    scp "''${ALBUM_PATH}" "''${NAS}:~/import/album.zip"
+    ssh "''${NAS}" bc-to-beet ~/import/album.zip
+  '';
 in
 {
   options.my.home.packages = with lib; {
@@ -15,5 +26,6 @@ in
     };
   };
   config.home.packages = with pkgs;
-    lib.mkIf cfg.enable ([ util-linux jq ripgrep ] ++ cfg.additionalPackages);
+    lib.mkIf cfg.enable
+      ([ util-linux jq ripgrep album-to-nas ] ++ cfg.additionalPackages);
 }