-
-
Notifications
You must be signed in to change notification settings - Fork 15.4k
Barco clickshare #59891
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
Barco clickshare #59891
Conversation
70124f3
to
9aeba76
Compare
throw "unsupported system: ${stdenv.hostPlatform.system}"; | ||
inherit usersGroup; | ||
sourceRoot = "."; | ||
postUnpack = builtins.readFile ./post-unpack.sh; |
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.
please inline these files.
xorg.libXinerama | ||
xorg.libXtst | ||
]; | ||
rpmArch = |
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.
please set this in a let expression inside postUnpack
, and use ${rpmArch} in there.
# The package brings a udev rule file with a group name. | ||
# This module has to define that group. | ||
# We check for a name mismatch here: | ||
assert clicksharePkg.usersGroup=="clickshare"; |
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.
Why do we check this here?
How can a user of the module redefine usersGroup
by accident? 😕
Thanks, @flokli, for the review and your suggestions. I updated my branch accordingly. Regarding the group name check, I'm just used to adding lots of assertions to catch any mismatches. I removed it. I also rebased on current |
Barco ClickShare is a wireless presentation system where a USB dongle transmits to a base station that is connected with a beamer. Note that this package also contains a udev rule file to grant access to the dongle if connected. Access is limited to a group "clickshare" (the name may be altered by package options).
Updated the branch following a suggestion of #61312: Remove empty line at beginning and end of |
{ | ||
|
||
options.programs.clickshare-csc1.enable = | ||
lib.options.mkEnableOption "Barco ClickShare CSC-1 driver/client"; |
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.
Probably we should add a line that users need to be added to the clickshare
group to be able to use it.
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.
Done (I hope the interpunctation of mkEnableOption
adds up correctly in the documentation).
The clickshare-csc1 package brings a udev rule file to grant access to the ClickShare dongle if connected. This module provides an option to install that rule file. Only users in the "clickshare" users group have access.
@Yarny0 , I can't really test this (as I don't have the hardware around), but I assume you did :-) |
Thanks! |
For the record: Most of my tests happened on the release-19.03 branch and on a NixOS 19.03 machine. Once I also built it on top of the unstable branch and successfully used the binaries, also on a NixOS 19.03 machine, however. So the only thing I never tested is whether the udev rule recognizes the dongle on the unstable branch. But I'm optimistic about that :-) Thanks for your help and all your efforts, @flokli !! |
Motivation for this change
Let NixOS users share their desktops with Barco's ClickShare dongles during presentations etc. See the package's description and Barco's homepage for more information on the technology.
Things done
sandbox
innix.conf
on non-NixOS)nix-shell -p nix-review --run "nix-review wip"
( does not apply )./result/bin/
)nix path-info -S
before and after): the package requires 5.9 MiB