Skip to content

opendeck: init at 2.2.1#358223

Draft
pluiedev wants to merge 5 commits intoNixOS:masterfrom
pluiedev:push-uznktyotsvrv
Draft

opendeck: init at 2.2.1#358223
pluiedev wants to merge 5 commits intoNixOS:masterfrom
pluiedev:push-uznktyotsvrv

Conversation

@pluiedev
Copy link
Member

@pluiedev pluiedev commented Nov 22, 2024

This PR will remain as a DRAFT until the necessary Deno infrastructure has been merged, which would be separated out into another PR.

Until then, this PR is still buildable and testable, though please only review the changes pertaining to OpenDeck itself in this PR — any suggestions towards the Deno infrastructure should be directed to its own PR.

Note: If you are using a NVIDIA GPU on Linux, you should know that OpenDeck, like all Tauri applications, suffers from a WebkitGTK bug that either makes the window entirely black or makes the app crash entirely. This is an upstream bug. Setting WEBKIT_DISABLE_DMABUF_RENDERER=1 might resolve the issue, but your mileage will vary.

Open questions:

  • Should we also package OpenDeck's plugins? Upstream provides a very handy catalogue we can use to generate our own plugins inside Nixpkgs, which, in theory, can be installed directly.

Closes #356016

Things done

  • Built on platform(s)
    • x86_64-linux
    • aarch64-linux
    • x86_64-darwin
    • aarch64-darwin
  • For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)
    • sandbox = relaxed
    • sandbox = true
  • Tested, as applicable:
  • Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
  • Tested basic functionality of all binary files (usually in ./result/bin/)
  • 25.05 Release Notes (or backporting 24.11 and 25.05 Release notes)
    • (Package updates) Added a release notes entry if the change is major or breaking
    • (Module updates) Added a release notes entry if the change is significant
    • (Module addition) Added a release notes entry if adding a new NixOS module
  • Fits CONTRIBUTING.md.

Add a 👍 reaction to pull requests you find important.

@github-actions github-actions bot added 6.topic: nixos Issues or PRs affecting NixOS modules, or package usability issues specific to NixOS 8.has: module (update) This PR changes an existing module in `nixos/` labels Nov 22, 2024
@ofborg ofborg bot added 8.has: package (new) This PR adds a new package 11.by: package-maintainer This PR was created by a maintainer of all the package it changes. 10.rebuild-darwin: 1-10 This PR causes between 1 and 10 packages to rebuild on Darwin. 10.rebuild-darwin: 1 This PR causes 1 package to rebuild on Darwin. 10.rebuild-linux: 1-10 This PR causes between 1 and 10 packages to rebuild on Linux. labels Nov 23, 2024
Adds a simple setup hook that would add any fetched Deno deps to the
node_modules folder at the root source directory.
@h7x4 h7x4 added the 8.has: module (new) This PR adds a module in `nixos/` label Nov 27, 2024
@wegank wegank added the 2.status: merge conflict This PR has merge conflicts with the target branch label Dec 31, 2024
@Suzu-lab
Copy link

Hi. I am interested in using Opendeck, and it is my understanding that the Deno framework has already been merged into main (according to what I saw in https://github.com/NixOS/nixpkgs/blob/nixos-unstable/pkgs/by-name/de/deno/package.nix and https://search.nixos.org/packages?channel=unstable&show=deno&type=packages&query=deno, but feel free to correct me if I'm wrong).
Is it possible for this package to come out of draft now? Thanks.

@pluiedev
Copy link
Member Author

pluiedev commented Jun 25, 2025

While Deno itself has already been in Nixpkgs for a while, the problem is that we do not have a reliable way to pre-download dependencies in the format that Deno expects. During the build process we don't have internet access so this needs to be done beforehand in a way that is stable.

Unfortunately Deno's native caching abilities are very brittle and shouldn't be relied upon and we still need a better alternative, which is why this PR still cannot be merged at this moment. See #417591, #407434 (comment).

@Suzu-lab
Copy link

Oh, I see. It seems here that the build support helper merge was reverted and everything, so I guess that would make it impossible for me to just try and use this PR as-is.
Thanks for the explanation.
It's a shame. The other option available in nixpkgs (StreamController) is not compatible with my device, while Opendeck has support for user-written plugins to add new devices.

@nixpkgs-ci nixpkgs-ci bot added the 2.status: stale https://github.com/NixOS/nixpkgs/blob/master/.github/STALE-BOT.md label Dec 22, 2025
@aMOPel
Copy link
Contributor

aMOPel commented Feb 19, 2026

Unfortunately Deno's native caching abilities are very brittle and shouldn't be relied upon and we still need a better alternative, which is why this PR still cannot be merged at this moment. See #417591, #407434 (comment).

I made a separate repo for the buildDenoPackage now, since I don't expect the new PR to ever get merged into nixpkgs due to nobody reviewing my code.

https://github.com/aMOPel/deno2nix

@nixpkgs-ci nixpkgs-ci bot removed the 2.status: stale https://github.com/NixOS/nixpkgs/blob/master/.github/STALE-BOT.md label Feb 19, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

2.status: merge conflict This PR has merge conflicts with the target branch 6.topic: nixos Issues or PRs affecting NixOS modules, or package usability issues specific to NixOS 8.has: module (new) This PR adds a module in `nixos/` 8.has: module (update) This PR changes an existing module in `nixos/` 8.has: package (new) This PR adds a new package 10.rebuild-darwin: 1-10 This PR causes between 1 and 10 packages to rebuild on Darwin. 10.rebuild-darwin: 1 This PR causes 1 package to rebuild on Darwin. 10.rebuild-linux: 1-10 This PR causes between 1 and 10 packages to rebuild on Linux. 11.by: package-maintainer This PR was created by a maintainer of all the package it changes.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Package request: OpenDeck

5 participants