staxman-old/README.md

3.0 KiB
Raw Permalink Blame History

staxman (ski-ba-bop-ba-dop-bop)

Fuck you YAML!

If you're dumb enough to play stax at your LGS you're a bigenoughschmuck to cometo try out staxman!

Bad design! Apps that break down! Errors!

If you think you're going to fix up your server good: You can kiss my nix!

It's our belief that you're such a stupid noob sysadmin, you'll fall for this bullshit—guaranteed!

If you find a better tool: Shove it up your ugly ass!
You heard us right! Shove it up your ugly ass!

Bring your configs!
Bring your containers!
Bring your waifu!
We'll fuck her! That's right! We'll fuck your waifu!

Because here at staxman your server's down six ways from Sunday!

Usage

Important disclaimer: It doesn't work!!

Nix channel

Woops "GIF"

Woops you forgot to put flake.nix in your computer

Nix flake

  • Run once: nix run
  • Cute shell with cargo-watch: nix develop

Add these lines to your flake.nix, I dare you:

modules = [
	...
	staxman.nixosModules.default
	({ config, pkgs, ... }: {
		services.staxman = {
			enable = true;
			stackDir = "/path/to/stacks";
			bindAddress = "1.2.3.4:3000";
		};
	})
];

Manual (cringe) install

You'll need:

then cargo run (you want packages? who do you think you are??)

License

AGPL-3.0-only

Questions never asked

Why

I maintain a single box with 30+ services and I refuse to let Kubernetes make my life miserable so I stick with Docker Compose. YAML is a pain in the butt and most of my docker-compose.yml files are full of the same stuff like tons of Traefik tags. Nix is a powerful language that can replace most of the bloat with function calls. It's like Jsonnet or Dhall except harder to learn but someone already put all the work into making it work with Compose so that's why I picked it (also NixOS is dope).

The other part is that using Portainer is handy but it's kinda bloated and full of multi-node mumbo jumbo I really don't care about, staxman focuses on single-node and is a traditional multipage app that loads instantly even without a complex bundling/minimizing pipeline.

Goal for this is to manage docker compose stacks from a web UI with glue code to enable gitops.

Should I use this?

Probably not! This is MY project, built for my needs only, if you haven't been scared off the memey readme and terrible commit message quality, this is your warning that I'm not gonna add features if people ask for them.

If you think you're just as brainrot as me and wanna join my adventure in trying to create a cozy way to manage a remote box and get some services up with all the pain and lack of support it entails, give it a shot I guess??

But kubernetes is awesome!

:)