Extract all vmix CLI logic (build, copy, run) from flake.nix into cli.nix. flake.nix is now 30 lines — just wiring. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
31 lines
736 B
Nix
31 lines
736 B
Nix
{
|
|
description = "vmix — composable QEMU VM image building and orchestration";
|
|
|
|
inputs = {
|
|
nixpkgs.url = "github:NixOS/nixpkgs/nixos-25.11";
|
|
};
|
|
|
|
outputs = { self, nixpkgs, ... }:
|
|
let
|
|
system = "x86_64-linux";
|
|
pkgs = import nixpkgs {
|
|
inherit system;
|
|
config.allowUnfree = true;
|
|
};
|
|
lib = pkgs.lib;
|
|
vmixLib = import ./lib { inherit pkgs lib system; };
|
|
in {
|
|
overlays.default = import ./overlay.nix;
|
|
|
|
nixosModules.default = import ./module.nix;
|
|
|
|
lib.${system} = vmixLib;
|
|
|
|
packages.${system}.default = import ./cli.nix { inherit pkgs self system; };
|
|
|
|
apps.${system}.default = {
|
|
type = "app";
|
|
program = "${self.packages.${system}.default}/bin/vmix";
|
|
};
|
|
};
|
|
}
|