manager loop WIP, add nix flake

This commit is contained in:
2026-06-10 17:20:29 +02:00
parent 35ac5453d9
commit 7bae17c525
6 changed files with 245 additions and 3 deletions

76
flake.nix Normal file
View File

@ -0,0 +1,76 @@
{
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable";
systems.url = "github:nix-systems/default";
treefmt-nix.url = "github:numtide/treefmt-nix";
flake-compat = {
url = "github:NixOS/flake-compat";
flake = false;
};
};
outputs =
{
nixpkgs,
...
}@inputs:
with builtins;
with nixpkgs.lib;
let
doubles = import inputs.systems;
forAllSystems = genAttrs doubles;
pkgs_gen =
{ ... }@args:
import nixpkgs args;
dmm_gen =
{
pkgs,
tools ? [ ],
specialArgs ? { },
}:
pkgs.rustPlatform.buildRustPackage (
let
src = cleanSource ./.;
in
final:
{
pname = "dockermcmgr";
version = "0.0.1";
inherit src;
cargoLock.lockFile = src + "/Cargo.lock";
nativeBuildInputs = tools;
buildInputs =
with pkgs; [ sqlite ];
}
// specialArgs
);
in
{
packages = forAllSystems (
system:
let
pkgs = pkgs_gen { inherit system; };
iloader = dmm_gen { inherit pkgs; };
in
{
inherit iloader;
default = iloader;
}
);
formatter = forAllSystems (
system:
let
pkgs = pkgs_gen { inherit system; };
in
inputs.treefmt-nix.lib.mkWrapper pkgs {
programs.nixfmt.enable = true;
}
);
};
}