Otherworld

Otherworld creates a persistent Docker container running your choice of GNU/Linux distribution, with a matching user account (no need to run everything as root) and with x11 and PulseAudio mappings. The container is created the first time you run otherworld and sticks around until you dispose of it manually.

Usage

Run command as user

otherworld <command> <arguments>

Run command as root

otherworld --sudo <command> <arguments>

Run command without printing anything else

otherworld --quiet <command> <arguments>

Remove the container

otherworld --rm

Arguments

These are arguments that go between otherworld and the command.

--container=

Name to assign to container (default: otherworld_$USER)

--image=

Image to create the container with (default: image_$CONTAINER_NAME, or debian:stable if that image does not exist)

--sudo

Runs command as root, instead of current user.

--rm

Removes the specified container.

--commit

Commits the container to an image named image_$CONTAINER_NAME.

--build=

Path to build context to build the image from. This overrides --image/OW_IMAGE. The resulting image is named image_$CONTAINER_NAME

--volume=

Volume to map to the container. ~ is expanded automatically. If the directory exists in the user's home directory it will be created to ensure it has the correct ownership and permissions.

--env==

Set the environment variable key to value in the command. Note that this does not set environment variables in the container itself.

Environment variables

OW_IMAGE

Image to create the container with (default: debian:stable)

OW_CONTAINER

Name to assign to container (default: otherworld_$USER)

License

GNU GPL v3 or later

Description
Otherworld creates a persistent Docker container running your choice of GNU/Linux distribution for you to install programs in.
Readme 441 KiB
Languages
Python 99.6%
Dockerfile 0.4%