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
sommelier: init at 2020-08-10-be4e16f #95874
Conversation
@GrahamcOfBorg build sommelier |
What are you doing with it? (just curious!) |
For testing:
I am still getting following errors:
This is most likely to be fixed with: https://patches.videolan.org/patch/20875/ |
@colemickens using for lightweight secure dev environments, have several iterations how i want to test it (locally with multiple users sharing same root compositor, docker dev containers, kata containers, just a few ideas) |
@colemickens thanks for initial package |
@offlinehacker I'm very interested in those use-cases, I'd love to know if you get cool stuff working. You might be interested in https://spectrum-os.org/ and #spectrum on freenode if you're not already familiar. @offlinehacker also, no worries, I didn't know any of it was useful. I think I had (tried to?) implemented xdg stable but never got anything to actually work... |
I was also trying with drm support using:
Getting these errors:
I have iris driver, but i did not dig too much yet, why it does not work. |
Does my Sommelier package work? chromiumOSPackages.sommelier in https://spectrum-os.org/git/nixpkgs |
@colemickens I found out about spectrum-os when packaging sommelier and from what I was reading from @alyssais posts on mailing list it looks like absolutely awesome project. I still need a bit more research (reading of @alyssais weekly updates), whether it aligns with what I want to accomplish and I might join to contribute. @alyssais I was testing it, and it works, but I think I had issue when running in master mode, it needed to have wayland device. I worked around this by overriding it to NULL. Also Google has updated sources to use stable xdg shell now, so it does not need patches anymore. I would also prefer for nixpkgs to package sommelier from "official" source. |
@alyssais I was testing it, and it works, but I think I had issue when
running in master mode, it needed to have wayland device. I worked
around this by overriding it to NULL. Also Google has updated sources
to use stable xdg shell now, so it does not need patches anymore. I
would also prefer for nixpkgs to package sommelier from "official"
source.
Oh, cool! That's good to know. Not sure what you mean about "official"
source -- I fetch from Google Gitiles just as you do.
|
"-Dshm_driver=noop" | ||
]; | ||
|
||
NIX_CFLAGS_COMPILE = ["-DVIRTWL_DEVICE=NULL"]; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What’s your use case for Sommelier if you’re not using it with virtio wayland? it would feel very weird to be to package Sommelier without virtio wayland Support since that’s (to me at least) its most compelling feature.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
One example would be running sommelier in linux container and let it use your system wayland compositor. This way processes in container can use sommelier for wayland compositon, instead of directly connecting to system wayland, thus providing extra layer of security.
Sorry I have mistaken with this fork from @colemickens https://github.com/colemickens/platform2-sommelier |
Looks like they just reverted the update to stable version of xdg shell, probably the same issues with xdg_surface. https://chromium.googlesource.com/chromiumos/platform2/+/32050c0ea6c00c16999915856b40a6a6b8b41bb9 |
}; | ||
setSourceRoot="sourceRoot=$(echo platform2-*/vm_tools/sommelier)"; | ||
|
||
nativeBuildInputs = [ pkgconfig meson ninja ] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nativeBuildInputs = [ pkgconfig meson ninja ] | |
nativeBuildInputs = [ pkg-config meson ninja ] |
setSourceRoot="sourceRoot=$(echo platform2-*/vm_tools/sommelier)"; | ||
|
||
nativeBuildInputs = [ pkgconfig meson ninja ] | ||
++ stdenv.lib.optional buildDocs scdoc; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
++ stdenv.lib.optional buildDocs scdoc; | |
++ lib.optional buildDocs scdoc; |
|
||
enableParallelBuilding = true; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
enableParallelBuilding = true; |
set by cmake.
|
||
enableParallelBuilding = true; | ||
|
||
meta = with stdenv.lib; { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
meta = with stdenv.lib; { | |
meta = with lib; { |
I marked this as stale due to inactivity. → More info |
Since virtio-gpu context types are now in upstream kernels, it is now possible to use Sommelier without patching it or using custom kernels, so I think it's finally suitable for inclusion in Nixpkgs. I'm using the same versioning scheme I made up for crosvm here. Figuring out the version is handled by the update script, which I adapted from the crosvm one. Sadly there's too many differences between them to easily merge them into one, so reducing duplication between them is left as further work. Closes: NixOS#95874
Since virtio-gpu context types are now in upstream kernels, it is now possible to use Sommelier without patching it or using custom kernels, so I think it's finally suitable for inclusion in Nixpkgs. I'm using the same versioning scheme I made up for crosvm here. Figuring out the version is handled by the update script, which I adapted from the crosvm one. Sadly there's too many differences between them to easily merge them into one, so reducing duplication between them is left as further work. Closes: #95874
Things done
sandbox
innix.conf
on non-NixOS linux)nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
./result/bin/
)nix path-info -S
before and after)