Dygmalab / Bazecor

Graphical configurator for Dygma Products
https://dygma.com/
GNU General Public License v3.0
391 stars 85 forks source link

Check udev rules under ./lib/udev/rules.d #370

Open gvolpe opened 1 year ago

gvolpe commented 1 year ago

Is your feature request related to a problem? Please describe.

I am trying to package the distributed AppImage so that it works on NixOS, but the current hard-coded file path on the udev rules check code is problematic.

Describe the solution you'd like

A minimal solution would be to check for the existence of the 10-dygma.rules file under lib/udev/rules.d/ in addition to /etc/udev/rules.d like Chrysalis does. Another option could be to make the file path configurable.

Additionally, it would be great if the necessary udev rules could be on a separate file (as in Chrysalis) instead of being a string value pushed via echo. That would make it clearer and it would further help the packaging for distros such as NixOS and Guix.

Describe alternatives you've considered

I tried to package the application from source as well (code also on the same repo I linked above), but packaging Electron apps for Nix is an absolute nightmare, and I got blocked on dependency resolution of the acorn library on my last attempt.

ajmasia commented 1 year ago

The same issue here. The solution proposed by @gvolpe seems interesting and the the most correct!

amesgen commented 1 year ago

FYI: I opened a https://github.com/NixOS/nixpkgs/pull/254264 to package bazecor for Nix via the appimage, and one currently has to vendor the udev rules due to the problem described in this issue.

gvolpe commented 1 year ago

@amesgen that's awesome! I've parked my work on this until I get the Defy (should arrive in ~2 weeks now). Hopefully their hardware is better than their software 😄