From 59cd849928e783848a4c9e0c0c04fa80eabe287d Mon Sep 17 00:00:00 2001 From: Squibid Date: Sat, 6 Dec 2025 14:55:12 -0500 Subject: [PATCH] update the flake --- flake.nix | 36 ++++++++++++++++++++++++++++++------ 1 file changed, 30 insertions(+), 6 deletions(-) diff --git a/flake.nix b/flake.nix index e3a05f8..e14cf17 100644 --- a/flake.nix +++ b/flake.nix @@ -1,7 +1,7 @@ { description = "Declaratively update your data."; inputs.nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable"; - outputs = { nixpkgs, ... }: let + outputs = { self, nixpkgs, ... }: let system = "x86_64-linux"; pkgs = import nixpkgs { inherit system; }; package = pkgs.stdenv.mkDerivation rec { @@ -11,22 +11,46 @@ src = ./.; deps = pkgs.callPackage ./build.zig.zon.nix {}; nativeBuildInputs = [ pkgs.zig.hook pkgs.libgit2 pkgs.gpgme ]; - zigBuildFlags = [ "--system" "${deps}" ]; + zigBuildFlags = [ + "--system" "${deps}" + "-Doptimize=Debug" + ]; }; - in { + in { lib = builtins.import ./lib.nix { pkgs = pkgs; }; nixosModules = rec { fooud = { pkgs, lib, config, inputs, ... }: { options.programs.fooud.enable = lib.mkEnableOption ("fooud") // { default = true; }; config = lib.mkIf config.programs.fooud.enable { - environment.systemPackages = [ pkgs.libgit2 pkgs.gpgme package ]; + environment.systemPackages = [ + pkgs.libgit2 + pkgs.gpgme + pkgs.nix + package + ]; }; }; default = fooud; }; - - # just x86 for now packages.${system} = rec { default = package; fooud = default; }; + + checks.${system}.build = let + package = self.packages.${system}.default; + in pkgs.runCommand "fooud-build" { buildInputs = [ + pkgs.git + pkgs.nix + ]; } '' + mkdir repo + git -C repo init > /dev/null 2>&1 + echo "hi" > repo/README.md + git -C repo config user.email "you@example.com" > /dev/null 2>&1 + git -C repo config user.name "Your Name" > /dev/null 2>&1 + git -C repo add . > /dev/null 2>&1 + git -C repo commit -m "initial commit" > /dev/null 2>&1 + + # this check won't succeed until I find a way to run a chroot store + ${package}/bin/fooud --git repo --dest test + ''; }; }