Skip to content

ananthb/xmorph

Repository files navigation

xmorph

Replaces a running Linux root filesystem with a new in-memory rootfs built from OCI (Docker) images and rootfs tarballs — without rebooting. The old root is kept for inspection and modification at /mnt/oldroot.

Useful as a rescue environment for hosts you can't reboot on demand, a reprovisioning tool for pivoting into a fresh OS, or a rescue.target replacement that stays reachable over Tailscale.

Install

# Nix
nix run github:ananthb/xmorph -- --help

# Static binary (each release ships SHA256SUMS)
curl -LO https://github.com/ananthb/xmorph/releases/latest/download/xmorph-x86_64-linux
chmod +x xmorph-x86_64-linux
sudo mv xmorph-x86_64-linux /usr/local/bin/xmorph

# From source (Go 1.26+)
CGO_ENABLED=0 go build -o xmorph ./cmd/xmorph

Docs

Full guide, flag reference, systemd + NixOS integration, and reprovisioning recipes at ananthb.github.io/xmorph.

Licensed under the AGPL-3.0.

About

Replace your running rootfs with a new one without rebooting.

Topics

Resources

License

Stars

1 star

Watchers

1 watching

Forks

Contributors