X-Git-Url: https://gitweb.ps.run/chirp/blobdiff_plain/4dd72bd444298a01fea2e17d5ba9915489c6f6ad..refs/heads/refactor:/flake.nix?ds=sidebyside diff --git a/flake.nix b/flake.nix index 5022167..e32262f 100644 --- a/flake.nix +++ b/flake.nix @@ -1,26 +1,35 @@ { - description = "Zig project flake"; + description = "Chirp Flake"; - inputs = { - zig2nix.url = "github:Cloudef/zig2nix"; - }; + inputs.self.submodules = true; + inputs.nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable"; + inputs.flake-utils.url = "github:numtide/flake-utils"; - outputs = { zig2nix, ... }: let - flake-utils = zig2nix.inputs.flake-utils; - in (flake-utils.lib.eachDefaultSystem (system: let - # Zig flake helper - # Check the flake.nix in zig2nix project for more options: - # - env = zig2nix.outputs.zig-env.${system} {}; - in with builtins; with env.pkgs.lib; rec { - apps.default = env.app [] "zig build run -- \"$@\""; - packages.default = env.package { - src = cleanSource ./.; + outputs = { self, nixpkgs, flake-utils }: + flake-utils.lib.eachDefaultSystem (system: + let + pkgs = import nixpkgs { inherit system; }; + in { + packages.default = pkgs.stdenvNoCC.mkDerivation { + pname = "chirp"; + version = "0.0.0"; + src = ./.; - nativeBuildInputs = with env.pkgs; []; - buildInputs = with env.pkgs; []; + buildPhase = '' + mkdir -p .zig-cache-global/zig + ${pkgs.zig}/bin/zig build --global-cache-dir .zig-cache-global + ''; - zigPreferMusl = false; - }; - })); + installPhase = '' + mkdir -p $out/bin + cp zig-out/bin/chirp $out/bin + ''; + }; + + apps.default = { + type = "app"; + program = "${self.packages.${system}.default}/bin/chirp"; + }; + }); } +