Repository navigation
Install vds_hcd through Kbuild so nixpkgs can sign it - #42
Merged
Merged
Conversation
Recent nixpkgs signs kernel modules with kmodigest and, when NixOS
assembles the module tree, merges a .ko.cer certificate for every
external module. vds-module.nix copied vds_hcd.ko into place by hand, so
no certificate was produced and every NixOS system with OpenDS5 enabled
failed to build:
cat: extra/vds_hcd.ko.cer: No such file or directory
Pass the kernel's commonMakeFlags (which carry the cmd_sign override)
and install with `make modules_install`, so the module is signed and its
certificate written next to it. DEPMOD=true keeps a stray module index
out of the output. Kernels from older nixpkgs have no commonMakeFlags
and build as before.
Tested against nixpkgs 02c087f (linux_zen 7.2.11) and the pinned
e7a3ca8 (linux_zen 7.1.2); both build the full module tree.
See NixOS/nixpkgs#575192.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01DcLhngVhW5BGLmCdt5Uvbd
Retr0astic
added a commit
to Retr0astic/nixos
that referenced
this pull request
Oct 23, 2026
nixpkgs now merges a .ko.cer for every external kernel module when it builds the module tree. OpenDS5 installs vds_hcd without one, so chapel stopped building and the daily update held nixpkgs back. Re-enable it after LordVicky/OpenDS5#42 merges. See NixOS/nixpkgs#575192.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Problem
Current nixpkgs (since NixOS/nixpkgs@6bd7526744, "aggregateModules: merge certificates from external modules") signs kernel modules with
kmodigestand expects a<module>.ko.cercertificate next to every external module when NixOS assembles the module tree.nix/vds-module.nixcopiedvds_hcd.kointo place withinstall, so the module was never signed and no certificate exists. Any NixOS system withservices.opends5.enable = trueon that nixpkgs fails to build:This is the same breakage as NixOS/nixpkgs#575192 (zenpower, acpi_call, yt6801). The fix there for in-tree packages is the same as here (NixOS/nixpkgs#577453).
Fix
commonMakeFlagsto the build. On new nixpkgs these carry thecmd_sign=kmodigest …override.make modules_installinstead of copying the.ko, so the module goes through that signing step andvds_hcd.ko.ceris written next to it.DEPMOD=truekeeps a stray module index out of$out(NixOS builds one for the whole tree).commonMakeFlags, soor [ ]keeps them building as before.Side effect: Kbuild installs the module compressed (
vds_hcd.ko.xz), like every other module in the tree.modprobehandles that transparently.Testing
Built
vds-module.nixandaggregateModules [ kernel.modules vds ](the step that fails) against:02c087f(2026-10-20)SIGNed,extra/vds_hcd.ko.cerpresent, listed inmodules.dep, PKCS#7 signature same as in-tree modulese7a3ca8(this flake's lock)modules.depNot yet booted on hardware.
nix/vds-hcd.nixhas the same hand-copy install but nothing references it, so I left it alone.🤖 Generated with Claude Code
https://claude.ai/code/session_01DcLhngVhW5BGLmCdt5Uvbd