diff --git a/README.md b/README.md
index 4606ef1..e991cf0 100644
--- a/README.md
+++ b/README.md
@@ -1,3 +1,70 @@
-# oizys
+
+
oizys
+
nix begat oizys
+
+
+This is a custom multi-host [nixos](https://nixos.org) flake.
+See below for the currently maintained hosts.
+
+## hosts
+
+
+
+ rune |
+ name |
+ system |
+
+
+ |
+ othalan |
+ Thinkpad Carbon X1 Gen 9 |
+
+
+ |
+ algiz |
+ Vultr VPS hosting forgejo,soft-serve & gts |
+
+
+ |
+ mannaz |
+ Custom AMD Tower with Nvidia 1050ti |
+
+
+
+
+
+## oizys cli
+
+A small helper utility that mostly just wraps `nix` commands for convenience.
+
+```sh
+nix run "github:daylinmorgan/oizys"
+```
+
+```
+oizys [opts]
+ commands:
+ dry poor man's nix flake check
+ boot nixos-rebuild boot
+ switch nixos-rebuild switch
+ cache build and push to cachix
+ build build system flake
+
+ options:
+ -h|--help show this help
+ --host hostname (current host)
+ -f|--flake path to flake ($FLAKE_PATH or $HOME/styx)
+ -c|--cache name of cachix binary cache (daylin)
+ --no-nom don't use nix-output-monitor
+```
+
+
+## oizys?
+
+Oizys was birthed by the goddess Nyx/Nix and embodies suffering and misery. Which is all that awaits you if you embrace nix.
+
+---
+
+> **NOTE**
+> I don't use home-manager to manager my shell/user configs. You can find those in my separate `chezmoi`-managed [`dotfiles`](https://git.dayl.in/daylin/dotfiles) repository.
-[![](https://github.com/daylinmorgan/oizys/actions/workflows/build.yml/badge.svg)](https://github.com/daylinmorgan/oizys/actions/workflows/build.yml)
diff --git a/hosts/algiz/README.md b/hosts/algiz/README.md
index 6ad7d1c..e6817a8 100644
--- a/hosts/algiz/README.md
+++ b/hosts/algiz/README.md
@@ -1,6 +1,6 @@
-
Algiz
+
algiz
## Setting up git user for use with gitea originally
diff --git a/hosts/mannaz/README.md b/hosts/mannaz/README.md
index ce37840..3e59679 100644
--- a/hosts/mannaz/README.md
+++ b/hosts/mannaz/README.md
@@ -1,5 +1,5 @@
-
Mannaz
+
mannaz
diff --git a/hosts/othalan/README.md b/hosts/othalan/README.md
index 92ed8b9..15a10bc 100644
--- a/hosts/othalan/README.md
+++ b/hosts/othalan/README.md
@@ -1,5 +1,5 @@
-
Othalan
+
othalan
diff --git a/oizys/oizys.nim b/oizys/oizys.nim
index 24628d6..5e1617e 100644
--- a/oizys/oizys.nim
+++ b/oizys/oizys.nim
@@ -14,7 +14,7 @@ proc info(args: varargs[string, `$`]) =
proc error(args: varargs[string, `$`]) =
stdout.styledWriteLine(
fgCyan, "oizys", resetStyle, "|",
- styleDim, "ERROR", resetStyle, "| ",
+ fgRed, "ERROR", resetStyle, "| ",
args.join("")
)
@@ -32,6 +32,17 @@ proc newCtx(): OizysContext =
result.flake = getEnv("FLAKE_PATH", getEnv("HOME") / "oizys")
result.host = getHostname()
+proc check(c: OizysContext) =
+ if not dirExists c.flake:
+ error c.flake, " does not exist"
+ error "please use -f/--flake or $FLAKE_PATH"
+ quit 1
+
+ info "flake: ", c.flake
+ info "host: ", c.host
+
+
+
proc systemFlakePath(c: OizysContext): string =
c.flake & "#nixosConfigurations." & c.host & ".config.system.build.toplevel"
@@ -87,12 +98,14 @@ oizys [opts]
build build system flake
options:
- -h|--help > show this help
- --host > hostname (current host)
- -f|--flake > path to flake ($FLAKE_PATH or $HOME/styx)
- -c|--cache > name of cachix binary cache (daylin)
+ -h|--help show this help
+ --host hostname (current host)
+ -f|--flake path to flake ($FLAKE_PATH or $HOME/styx)
+ -c|--cache name of cachix binary cache (daylin)
+ --no-nom don't use nix-output-monitor
"""
+
proc runCmd(c: OizysContext, cmd: string) =
case cmd:
of "dry": dry c
@@ -134,5 +147,5 @@ when isMainModule:
echo "please specify a command"
echo usage; quit 1
- info $c
+ check c
runCmd c, cmd