Skip to content
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

Rust 1.67 #626

Merged
merged 1 commit into from
Feb 1, 2024
Merged

Rust 1.67 #626

merged 1 commit into from
Feb 1, 2024

Conversation

J0WI
Copy link
Contributor

@J0WI J0WI commented Jan 28, 2024

No description provided.

@J0WI J0WI mentioned this pull request Jan 29, 2024
Copy link
Owner

@tianon tianon left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I've tested this locally and it works 😄

Was it a draft just because it still doesn't quite get us to bookworm yet?

@tianon
Copy link
Owner

tianon commented Feb 1, 2024

I'm going to bring this in for now because it is good and correct, even if it doesn't completely solve your goal -- I'll play with it a bit more post-merge and see if I can get it up to bookworm successfully. ❤️

@tianon tianon marked this pull request as ready for review February 1, 2024 19:17
@tianon tianon merged commit ccae07b into tianon:master Feb 1, 2024
49 of 50 checks passed
@J0WI J0WI deleted the rust-67 branch February 1, 2024 19:48
@tianon
Copy link
Owner

tianon commented Feb 1, 2024

I tried a bunch of combinations and no matter what I do, my Bookworm-based container is failing to run virtiofsd (and thus failing to run the VM / DD) 😭

The really weird thing is that it's failing with SIGSYS (bad system call). 🤔

@J0WI
Copy link
Contributor Author

J0WI commented Feb 3, 2024

There are newer versions of virtiofsd available but I couldn't the sources of Docker Desktop to check what version it requires.

@tianon
Copy link
Owner

tianon commented Feb 10, 2024

I think I could technically read the code, but I actually wrote this whole Dockerfile before I could've, and still try hard not to (especially so I don't accidentally cross a line here).

That being said, I do check the version before/after to ensure I package the same version they're using:

before="$(virtiofsd --version 2>&1)"; \
dpkg-divert --add --rename --divert /opt/docker-desktop/bin/virtiofsd.orig /opt/docker-desktop/bin/virtiofsd; \
ln -svfT virtiofsd.tianon /opt/docker-desktop/bin/virtiofsd; \
after="$(virtiofsd --version 2>&1)"; \
[ "$before" = "$after" ]; \

I think DD has code that will use a virtiofsd that comes with QEMU (which is why I added that bit which diverts that binary too slightly further down), but I don't know how far they go on compatibility, or even frankly what's going wrong to understand how/why/what might fix it. 😭

@tianon
Copy link
Owner

tianon commented Apr 8, 2024

I just tried this again with the latest 4.29.0 and it's somehow worse now? 😭

Even with --security-opt seccomp=unconfined --security-opt apparmor=unconfined I'm getting EPERM just running com.docker.backend now: 😭

$ strace -ff com.docker.backend --with-frontend
execve("/opt/docker-desktop/bin/com.docker.backend", ["com.docker.backend", "--with-frontend"], 0x7fff649242c0 /* 13 vars */) = -1 EPERM (Operation not permitted)
strace: exec: Operation not permitted
+++ exited with 1 +++

@tianon
Copy link
Owner

tianon commented Oct 24, 2024

Good news -- I don't know what fixed it, but it seems to be working now! 5edaaef

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants