about summary refs log tree commit diff
diff options
context:
space:
mode:
authorFranck Cuny <franck@fcuny.net>2022-06-20 13:45:50 -0700
committerFranck Cuny <franck@fcuny.net>2022-06-20 14:41:06 -0700
commit47692795b39aa4463487be3202f62ae900797d24 (patch)
treed36b0adaf6440526e0b7edff5a36a13ea3c3ff96
parentref(home/shell): switch default shell to fish (diff)
downloadworld-47692795b39aa4463487be3202f62ae900797d24.tar.gz
feat(home/shell): manage fish's functions directory
Change-Id: I03a35a211c7563e65770b39b140099291efafab9
Reviewed-on: https://cl.fcuny.net/c/world/+/458
Reviewed-by: Franck Cuny <franck@fcuny.net>
Tested-by: CI
-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