Skip to content

Nix flake: one-import NixOS support#21

Merged
LordVicky merged 4 commits into
devfrom
feature/nix-flake
Jul 14, 2026
Merged

Nix flake: one-import NixOS support#21
LordVicky merged 4 commits into
devfrom
feature/nix-flake

Conversation

@LordVicky

Copy link
Copy Markdown
Owner

Adds a Nix flake so NixOS users install everything with two lines of config instead of the manual generator dance:

  • nixosModules.default — builds the vds_hcd module against the user's configured kernel, builds vdsd/vdsctl from the in-tree vds/ source (replacing the glibc prebuilts that don't run on NixOS), and sets up the udev rules, vds group, wireplumber config, and vdsd service via services.opends5.enable.
  • packages.vds / packages.vds-module — buildable on any machine with Nix for smoke-testing.
  • docs/INSTALLER.md — NixOS section rewritten flake-first; the --install-system generator stays as the non-flake fallback.
  • CI workflow that evaluates the flake and builds both packages on flake/vds changes.

The derivations were written against the real CMake/Kbuild files but not compiled locally (no Nix on the dev box) — the CI run on this PR is the verification.

Trigger profiles UI polish + engine startup recognition fixes
OpenDS5 1.7.0: rebrand, system installer, first-launch wizard, public profile library
nixosModules.default replaces the entire installer flow on NixOS:
vds_hcd built from the in-tree source against the configured kernel,
vdsd/vdsctl built from vds/ (no glibc prebuilts), udev rules, vds
group, wireplumber conf, and the vdsd unit — services.opends5.enable.

The --install-system generator remains as the fallback for non-flake
configurations; docs/INSTALLER.md gains a full NixOS section covering
both paths and the update procedure.
@LordVicky
LordVicky changed the base branch from main to dev July 14, 2026 13:57
@LordVicky
LordVicky merged commit a494ff2 into dev Jul 14, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant