#!/bin/sh # Check if a name argument was provided if [ -z "$1" ]; then echo "Usage: $0 " exit 1 fi name="devc-$1" command="/bin/bash" # When container is not running or arguments are provided, # recreate it. if [ "$(podman container inspect "$name" -f {{.State.Running}} 2>&1)" != 'true' ]; then echo "starting devcontainer..." podman container rm -f -t 0 "$name" 1>/dev/null podman run \ --security-opt label=disable \ --userns=keep-id \ --name $name \ --network host \ -e HOST_HOME=$HOME \ -e SSH_AUTH_SOCK='/tmp/ssh.sock' \ -v /run/user/$UID/bus:/tmp/dbus.sock \ -v /run/user/$UID/keyring/ssh:/tmp/ssh.sock \ -v /run/user/$UID/podman/podman.sock:/tmp/podman.sock \ -v $HOME/dev:/home/user/dev \ -v v-$name:/home/user:copy \ --rm -td git.plabble.org/maurice/devc-$name fi podman exec --detach-keys "ctrl-@" -it "$name" ${command:-}