-
Notifications
You must be signed in to change notification settings - Fork 2.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Podman relies in config on specific qemu version to start a machine #18111
Comments
M1 Macbook Pro has the same issue. edit:
|
What podman version is this? |
Same problem with MacBook Pro M1 running Podman version 4.4.4 after updating qemu to version 7.2.1. I was only able to start a Podman Machine by deleting the old one and creating a new one. |
Same problem with MacBook M1 Air. |
I'm on latest version 4.5.0 (Though can't be sure what version created the config file) If a fully qualified path is required, can Podman just use this path, without fully resolving all symlinks along the path - it will point to the current version of qemu installed
|
As a workaround you don't have to delete te VM. You can just update the machine configuration file. The file can be found by |
oh my, thats no good ... lets fix this up ok @ashley-cui ? |
Thanks for the cc and sorry for the trouble. I can probably test later today, but it would make sense for my PR to cause this change -- in one case (nix users) not resolving the symlink was the cause of the trouble, in another case (homebrew users) resolving it probably is. Homebrew users likely much more plentiful than nix users so reasonable to optimize for that case, though it sure would be nice to solve for both. |
Installed qemu from homebrew and using this as a little test script: #!/usr/bin/env bash
set -Eeuf -o pipefail
shopt -s inherit_errexit
set -x
main() {
(
podman machine stop
podman machine rm -f
rm -r ~/.config/containers/
make clean
) || true
make podman-remote
mv bin/darwin/podman bin/podman
export CONTAINERS_HELPER_BINARY_DIR=$(dirname "$(type -p gvproxy)")
bin/podman machine init
bin/podman machine start
grep edk2-aarch64-code.fd ~/.config/containers/podman/machine/qemu/podman-machine-default.json
}
main "$@" Current
after
So as suspected reverting that commit should fix this issue. I suspect it may re-break:
Could we revert #17027, re-open #17026, and I'll try to look for a solution there? |
This reverts commit 6b64589 (Resolve symlink path for qemu directory if possible). Fully resolving the symlink to qemu solves some issues for aarch64-darwin nix with regards to finding `edk2-aarch64-code.fd`, but unfortunately the fully resolved path includes the version number, making it so that even patch updates break the path to homebrew-installed qemu files. Fixes containers#18111 [NO NEW TESTS NEEDED] Signed-off-by: Nathan Henrie <[email protected]>
This reverts commit 6b64589 (Resolve symlink path for qemu directory if possible). Fully resolving the symlink to qemu solves some issues for aarch64-darwin nix with regards to finding `edk2-aarch64-code.fd`, but unfortunately the fully resolved path includes the version number, making it so that even patch updates break the path to homebrew-installed qemu files. Fixes containers#18111 [NO NEW TESTS NEEDED] Signed-off-by: Nathan Henrie <[email protected]>
I had this same error and managed to resolve by performing the following:
Now my issue is resolved. |
|
Do we still need to drop and re-create the podman machine? I'm on version 4.6.1 and the qemu path in the config file for my default machine still points to a versioned path |
If you have updated qemu via brew to a newer version, you will either need to drop and re-create the machine or edit the config file. You can check the installed version with
I've been using the following command to patch the config file without having to drop and recreate the machine. /usr/bin/sed -E -i ".$(date +'%F@%T')~" 's,/Cellar/qemu/[^/]+,/opt/qemu,' \
"$(podman machine inspect --format '{{ .ConfigPath.Path }}')" |
Issue Description
The config that is set up has this line:
However, my quemu has been updated to 7.2.1 and is therefore not available anymore. I manually updated the path, otherwise I wouldn't be able to start the machine.
Steps to reproduce the issue
Steps to reproduce the issue
Describe the results you received
Can't start machine
Describe the results you expected
machine starts
podman info output
The text was updated successfully, but these errors were encountered: