mnix
mnix is a lightweight Python implementation of a remote development workflow built around Nix flakes, SSH, and Podman.
The repository includes a root flake.nix, so mnix new can use the default ./flake.nix and nix develop works directly from the project root.
Commands
Client
mnix ls
mnix select [project-name]
mnix new [-f path/to/flake.nix] [--server server-name] project-name
mnix rebuild-switch [path/to/flake.nix] [--project project-name]
mnix shell [--project project-name]
mnix exec [--project project-name] -- command [args...]
mnix server ls
mnix server add ssh://user@example.com server-name
mnix server rm server-name
Server
The client talks to the server by invoking mnix-server over SSH. The server CLI is structured so it can later be reused behind Flask or FastAPI.
mnix-server project launch --name project-name --flake flake.nix
mnix-server project rebuild-switch --name project-name --flake flake.nix
mnix-server project shell --name project-name --flake flake.nix
mnix-server project exec --name project-name --flake flake.nix -- command [args...]
Configuration
Both client and server use TOML configuration.
Client config
Default path: ~/.config/mnix/client.toml
ssh_binary = "ssh"
remote_binary = "mnix-server"
remote_podman_binary = "podman"
default_server = "my-server"
database_path = "~/.local/state/mnix/client.db"
Server config
Default path: ~/.config/mnix/server.toml
podman_binary = "podman"
base_image = "docker.io/nixos/nix:latest"
workspace_root = "/tmp/mnix/workspaces"
warmup_command = "nix --extra-experimental-features 'nix-command flakes' develop -c true"
container_command = "sleep infinity"
Architecture
src/mnix/client: thin CLI, local SQLite state, SSH transport, workspace archiving.src/mnix/server/domain: domain entities and value objects.src/mnix/server/application: use cases for project launch and rebuild.src/mnix/server/infrastructure: Podman runner, config loading, workspace extraction.src/mnix/server/interfaces: server CLI adapter.
The current implementation is intentionally stateless on the server side: it stages a workspace, ensures a Podman container exists for the project, and returns command results directly to the client.
Metadata
Release files for mnix 0.2.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| mnix-0.2.0.tar.gz | 19.8 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| mnix-0.2.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 39.9 kB
Release files / mnix-0.2.0.tar.gz
| Download URL | mnix-0.2.0.tar.gz |
|---|---|
| Size | 19.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
d7edc08bf23112ffc35ad0cf56a70069491fcf8ebba55cf0ea103262b11f6eab
|
|
BLAKE2b-256 checksum How to use checksums |
c559107b967a864f1a685ad0fbf6a49090e9af03979e204fc4add78316a2f765
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on May 20, 2026.
Transparency logRelease files / mnix-0.2.0-py3-none-any.whl
| Download URL | mnix-0.2.0-py3-none-any.whl |
|---|---|
| Size | 20.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
3ece8ef24cbd9c9b053247a378cc1ac539da2767725de3489296bb3e1f7a8121
|
|
BLAKE2b-256 checksum How to use checksums |
9147a924f7bc124df19f3c1cef7e49b4056d996efbd522e3a164bd854705d8f0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on May 20, 2026.
Transparency log