about summary refs log tree commit diff
path: root/home/shell/fish
diff options
context:
space:
mode:
Diffstat (limited to 'home/shell/fish')
-rw-r--r--home/shell/fish/default.nix4
-rw-r--r--home/shell/fish/functions/nix-rebuild-host.fish4
-rw-r--r--home/shell/fish/functions/rgerrit.fish6
3 files changed, 14 insertions, 0 deletions
diff --git a/home/shell/fish/default.nix b/home/shell/fish/default.nix
index c81f188..d000cd9 100644
--- a/home/shell/fish/default.nix
+++ b/home/shell/fish/default.nix
@@ -27,5 +27,9 @@ in
         end
       '';
     };
+    xdg.configFile."fish/functions" = {
+      source = ./functions;
+      recursive = true;
+    };
   };
 }
diff --git a/home/shell/fish/functions/nix-rebuild-host.fish b/home/shell/fish/functions/nix-rebuild-host.fish
new file mode 100644
index 0000000..1ec7daa
--- /dev/null
+++ b/home/shell/fish/functions/nix-rebuild-host.fish
@@ -0,0 +1,4 @@
+function nix-rebuild-host --description "rebuild the current host"
+  cd ~/workspace/world
+  sudo nixos-rebuild switch --flake .
+end
diff --git a/home/shell/fish/functions/rgerrit.fish b/home/shell/fish/functions/rgerrit.fish
new file mode 100644
index 0000000..3aed310
--- /dev/null
+++ b/home/shell/fish/functions/rgerrit.fish
@@ -0,0 +1,6 @@
+# gerrit runs on tahoe, and we ssh to it through its tailscale
+# network interface.
+function rgerrit --description "execute gerrit commands"
+  set -lx gerrit_host (tailscale status --json | jq -r '.Peer | map(select(.HostName == "tahoe"))[0].TailscaleIPs[0]')
+  ssh $gerrit_host -p 29418 gerrit $argv
+end