Hi, wolf <w...@wolfsden.cz> writes:
> Podman does work, but there is no built in service to configure it correctly. > Snippet from my system configuration: > > (simple-service 'subugid-config etc-service-type > `(("subuid" ,(plain-file "subuid" "wolf:100000:65536\n")) > ("subgid" ,(plain-file "subgid" > "wolf:100000:65536\n")))) > (simple-service 'containers etc-service-type > `(("containers/storage.conf" ,(plain-file > "containers-storage.conf" "[storage]\ndriver = \"btrfs\"\n")) > ("containers/policy.json" ,(local-file > "files/policy.json")))) > > And files/policy.json: > > { > "default": [ > { > "type": "insecureAcceptAnything" > } > ], > "transports": > { > "docker-daemon": > { > "": [{"type":"insecureAcceptAnything"}] > } > } > } > > After that, guix shell podman -- podman run --rm hello-world . > Thanks for sharing you configuration. I think I got podman working with the following system services: ```scheme (simple-service 'subugid-config etc-service-type `(("subuid" ,(plain-file "subuid" "plattfot:100000:65536\n")) ("subgid" ,(plain-file "subgid" "plattfot:100000:65536\n")))) (simple-service 'containers etc-service-type `(("containers/storage.conf" ,(plain-file "containers-storage.conf" "\ [storage] driver = \"btrfs\" ")) ("containers/policy.json" ,(plain-file "policy.json" "\ { \"default\": [ { \"type\": \"insecureAcceptAnything\" } ], \"transports\": { \"docker-daemon\": { \"\": [{\"type\":\"insecureAcceptAnything\"}] } } } ")) ("containers/registries.conf" ,(plain-file "registries.conf" "\ unqualified-search-registries = ['quay.io', 'docker.io'] [[registry]] location='localhost:5000' insecure=true ")))) ``` The hello-world from docker.io works, the one from quay.io does not. But might be an issue on their side. >> Has anyone got distrobox working and if so how? > > No idea about distrobox, but the above should get the podman working. I got further with distrobox now when podman seems to be correctly setup. ``` guix shell distrobox -- distrobox create -i docker.io/library/ubuntu:22.04 ``` Works, but I cannot enter the container: ``` $ guix shell distrobox conmon runc -- distrobox enter ubuntu-22-04 Container ubuntu-22-04 is not running. Starting container ubuntu-22-04 run this command to follow along: /gnu/store/yph7wgfp922w7ck6pclgq10mcg7j5gxi-podman-4.4.1/bin/podman logs -f ubuntu-22-04 Error: could not start entrypoint. + '[' -n '' ']' + printf 'distrobox: Installing basic packages...\n' ++ basename /gnu/store/3g4msmrx9sswxzccv578h5cyk4a80zpg-bash-5.1.16/bin/bash + shell_pkg=bash + '[' bash = ash ']' + '[' 0 -ne 0 ']' + test -x find + test -x apk + test -x apt-get + test -x dnf + test -x emerge + test -x microdnf + test -x pacman + test -x slackpkg + test -x swupd + test -x xbps-install + test -x yum + test -x zypper + printf 'Error: could not find a supported package manager.\n' + printf 'Error: could not set up base dependencies.\n' + exit 127 + '[' 127 -ne 0 ']' + printf 'Error: An error occurred\n' distrobox: Installing basic packages... Error: could not find a supported package manager. Error: could not set up base dependencies. Error: An error occurred ``` Looks like there are some missing OCI binaries, I used `--verbose` and rerun it and saw this in the output: ``` $ guix shell distrobox conmon runc -- distrobox enter ubuntu-22-04 --verbose … DEBU[0000] [graphdriver] trying provided driver "btrfs" DEBU[0000] Initializing event backend file DEBU[0000] Configured OCI runtime crun-wasm initialization failed: no valid executable found for OCI runtime crun-wasm: invalid argument DEBU[0000] using runtime "runc" from $PATH: "/gnu/store/vfgxc5n2ygac691iivfjmd3nn9ywk9wx-profile/sbin/runc" DEBU[0000] Configured OCI runtime kata initialization failed: no valid executable found for OCI runtime kata: invalid argument DEBU[0000] Configured OCI runtime youki initialization failed: no valid executable found for OCI runtime youki: invalid argument DEBU[0000] Configured OCI runtime ocijail initialization failed: no valid executable found for OCI runtime ocijail: invalid argument DEBU[0000] Configured OCI runtime runj initialization failed: no valid executable found for OCI runtime runj: invalid argument DEBU[0000] Configured OCI runtime runsc initialization failed: no valid executable found for OCI runtime runsc: invalid argument DEBU[0000] Configured OCI runtime krun initialization failed: no valid executable found for OCI runtime krun: invalid argument DEBU[0000] Using OCI runtime "/gnu/store/gadwcvv4ynlk267wisxcdl91kjzqmc49-crun-1.4.5/bin/crun" INFO[0000] Setting parallel job count to 73 + '[' -n '' ']' + printf 'distrobox: Installing basic packages...\n' … ``` So I'll keep digging when I have time. -- s/Fred[re]+i[ck]+/Fredrik/g