/ flake.nix
flake.nix
1 { 2 description = "File/Directory transferring tool"; 3 4 inputs = { 5 nixpkgs.url = "github:nixos/nixpkgs/release-25.05"; 6 flake-utils.url = "github:numtide/flake-utils"; 7 }; 8 9 outputs = 10 { 11 self, 12 nixpkgs, 13 flake-utils, 14 ... 15 }: 16 flake-utils.lib.eachSystem [ "x86_64-linux" "aarch64-linux" ] ( 17 system: 18 let 19 pkgs = import nixpkgs { 20 inherit system; 21 config.allowUnfree = true; 22 overlays = [ 23 self.overlays.default 24 ]; 25 }; 26 in 27 { 28 packages = { 29 inherit (pkgs) bale; 30 default = pkgs.bale; 31 }; 32 } 33 ) 34 // { 35 overlays = { 36 default = 37 final: prev: 38 let 39 mtime = self.lastModifiedDate; 40 date = builtins.substring 2 6 mtime; 41 rev = self.rev or (nixpkgs.lib.warn "Git changes are not committed" (self.dirtyRev or "dirty")); 42 version = "${date}+${builtins.substring 0 8 rev}"; 43 in 44 { 45 bale = final.callPackage ./app { 46 inherit version; 47 }; 48 }; 49 }; 50 hydraJobs = self.packages; 51 }; 52 }