From a84e38d96ef1517ef694597c66e7be22e7a9a382 Mon Sep 17 00:00:00 2001 From: Slug-Boi Date: Thu, 17 Apr 2025 23:31:51 +0200 Subject: [PATCH] feat: add nix flake --- flake.nix | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 flake.nix diff --git a/flake.nix b/flake.nix new file mode 100644 index 0000000..d20159b --- /dev/null +++ b/flake.nix @@ -0,0 +1,35 @@ +{ + inputs = { + nixpkgs.url = "github:nixos/nixpkgs/nixpkgs-unstable"; + flake-utils.url = "github:numtide/flake-utils"; + prog_src = { + flake = false; + url = "github:Slug-Boi/cocommit"; + rev = "v1.3.0"; + }; + }; + outputs = { self, nixpkgs, flake-utils, ... }@inputs: let + forAllSys = flake-utils.lib.eachSystem flake-utils.lib.allSystems; + + APPNAME = "cocommit"; + appOverlay = final: prev: { + # any pkgs overrides made here will be + # inherited in the arguments of default.nix + # because we used final.callPackage instead of prev.callPackage + # i.e. + # nodejs = prev.nodejs.overrideAttrs { name = "stinky"; }; + # would make it so that final.callPackage gives the altered nodejs + ${APPNAME} = final.callPackage ./. { inherit (inputs) prog_src; }; + }; + in { + overlays.default = appOverlay; + } // ( + forAllSys (system: let + pkgs = import nixpkgs { inherit system; overlays = [ appOverlay ]; }; + in{ + packages = { + default = pkgs.${APPNAME}; + }; + }) + ); +} \ No newline at end of file