vmix.nix/flake.nix
Git Sagar 20e8b98fec laptop image tiers, devshell, partition preserve, cleanup
Images:
- laptopUpstream: bare OS install with AHCI, no templates
- laptopSlim: essentials only (debloat, registry tweaks)
- laptop: full (essentials + all apps)
- win10/win11 images use rec for self-references

CLI:
- preserve recovery partition (4) during disk copy
- expand partition 3 up to partition 4 boundary
- remove VNC CLI flag (use vncDisplay in nix configs instead)

Flake:
- add devShell with vmix alias and PS1 prompt

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-05-24 13:32:18 -03:00

46 lines
1.3 KiB
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";
};
devShells.${system}.default = pkgs.mkShell {
shellHook = ''
# vmix CLI available as local flake
export VMIX_FLAKE="path:$PWD"
alias vmix='nix run "$VMIX_FLAKE" --'
# bash prompt
PROMPT_COMMAND='PS1_CMD1=$(git branch --show-current 2>/dev/null)'; PS1='\[\e[1;7m\]$?\[\e[0m\] \[\e[2m\]\A\[\e[0m\] \[\e[91m\]\u@\h\[\e[0m\] \[\e[92;1m\]\w\[\e[0m\] \[\e[96m\]''${PS1_CMD1}\[\e[0m\] \[\e[1;2m\]$\[\e[0;1m\] \[\e[0m\]'
'';
buildInputs = with pkgs; [
bashInteractive
git
];
};
};
}