diff options
| -rw-r--r-- | .chezmoiignore | 1 | ||||
| -rw-r--r-- | .gitignore | 1 | ||||
| -rw-r--r-- | dot_config/containers/storage.conf | 17 | ||||
| -rw-r--r-- | meta/base.txt | 4 |
4 files changed, 19 insertions, 4 deletions
diff --git a/.chezmoiignore b/.chezmoiignore index 34be6e8..99af635 100644 --- a/.chezmoiignore +++ b/.chezmoiignore @@ -1,6 +1,7 @@ KEYBINDS.md README.md bootstrap.sh +migrate-podman-to-btrfs.sh meta/ systemd-units/ etc/ @@ -3,3 +3,4 @@ .ruff_cache/ node_modules/ *.swp +/migrate-podman-to-btrfs.sh diff --git a/dot_config/containers/storage.conf b/dot_config/containers/storage.conf new file mode 100644 index 0000000..3ba957e --- /dev/null +++ b/dot_config/containers/storage.conf @@ -0,0 +1,17 @@ +# Rootless podman storage configuration. +# +# Uses the native kernel btrfs graph driver — much faster than fuse-overlayfs +# (especially `podman commit`) because layers are real btrfs subvolumes with +# CoW snapshots, no FUSE userspace round-trip. +# +# Switching driver requires a one-time `podman system reset --force`; the +# overlay/fuse-overlay on-disk layout is incompatible. See the migration +# helper at the dotfiles repo root (migrate-podman-to-btrfs.sh). +# +# graphroot/runroot left at defaults: +# graphroot = $XDG_DATA_HOME/containers/storage +# runroot = $XDG_RUNTIME_DIR/containers +# both are on btrfs in this setup (root fs is btrfs). + +[storage] +driver = "btrfs" diff --git a/meta/base.txt b/meta/base.txt index 1cb96dc..1f7cdd8 100644 --- a/meta/base.txt +++ b/meta/base.txt @@ -75,10 +75,6 @@ nix perf # links against running kernel ABI; must match kernel pkg podman-compose podman-docker -fuse-overlayfs # podman rootless storage driver on btrfs (kernel overlayfs - # doesn't support btrfs as a lower dir; podman falls back to - # vfs which is unusable). ~10-30% slower than native overlay - # but unavoidable as long as ~/.local/share/containers is on btrfs. # --- sound --- alsa-utils |
