Skip to content

feat(nix): support selecting model targets in Nix builds - #163

Merged
0xShug0 merged 1 commit into
0xShug0:mainfrom
francescobozzo:feat/nix-model-selection
Jul 31, 2026
Merged

feat(nix): support selecting model targets in Nix builds#163
0xShug0 merged 1 commit into
0xShug0:mainfrom
francescobozzo:feat/nix-model-selection

Conversation

@francescobozzo

Copy link
Copy Markdown
Contributor

Changes

  • package.nix: Added models parameter: non-empty list auto-sets AUDIOCPP_MODEL_SET=custom, empty defaults to full
  • CMakeLists.txt: EXCLUDE_FROM_ALL on all model OBJECT libraries so unselected models aren't compiled; vibevoice_finetune_overlay_check now gated on vibevoice being linked. Note: this change influences all other build pipelines, but was necessary to exclude unwanted models not just from linking but also from compile time.
  • docs/build/nixos.md: New Model Selection section with CLI and NixOS examples

Tests

Validated model list reduces the number of building steps in cmake with the following configuration:

vulkan = base.override {
  vulkanSupport = true;
  models = [
    "vibevoice"
    "miotts"
  ];
};

Expose CMake's AUDIOCPP_MODEL_SET/AUDIOCPP_MODELS via a 'models'
Nix parameter. Non-empty list auto-sets custom mode; empty defaults
to full. CMake OBJECT libraries now use EXCLUDE_FROM_ALL so
unselected models are not compiled. Test binary
vibevoice_finetune_overlay_check is now gated on vibevoice being
linked.
@0xShug0
0xShug0 merged commit 4da0031 into 0xShug0:main Jul 31, 2026
4 checks passed
@0xShug0

0xShug0 commented Jul 31, 2026

Copy link
Copy Markdown
Owner

@francescobozzo Merged! Thanks!

@francescobozzo
francescobozzo deleted the feat/nix-model-selection branch July 31, 2026 10:23
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.

2 participants