diff options
Diffstat (limited to 'nix/derivation.nix')
| -rw-r--r-- | nix/derivation.nix | 67 |
1 files changed, 36 insertions, 31 deletions
diff --git a/nix/derivation.nix b/nix/derivation.nix index 6a25976..955f601 100644 --- a/nix/derivation.nix +++ b/nix/derivation.nix @@ -3,46 +3,51 @@ stdenv, rustPlatform, darwin, - self ? {inherit ((lib.importTOML ../Cargo.toml).package) version;}, + self ? { }, lto ? true, optimizeSize ? false, }: +let + fs = lib.fileset; +in rustPlatform.buildRustPackage { - pname = "teawiebot"; - version = - (lib.importTOML ../Cargo.toml).package.version - + "-" - + self.shortRev or self.dirtyShortRev or self.version or "unknown"; + pname = "teawie-bot"; + version = (lib.importTOML ../Cargo.toml).package.version or "unknown"; - __structuredAttrs = true; - - src = lib.fileset.toSource { + src = fs.toSource { root = ../.; - fileset = lib.fileset.unions [ - ../src - ../Cargo.toml - ../Cargo.lock - ]; + fileset = fs.intersection (fs.gitTracked ../.) ( + lib.fileset.unions [ + ../src + ../Cargo.toml + ../Cargo.lock + ] + ); }; cargoLock = { lockFile = ../Cargo.lock; }; - buildInputs = lib.optionals stdenv.isDarwin (with darwin.apple_sdk.frameworks; [ - CoreFoundation - Security - SystemConfiguration - darwin.libiconv - ]); + buildInputs = lib.optionals stdenv.isDarwin ( + with darwin.apple_sdk.frameworks; + [ + CoreFoundation + Security + SystemConfiguration + darwin.libiconv + ] + ); - env = let - toRustFlags = lib.mapAttrs' ( - name: - lib.nameValuePair - "CARGO_BUILD_RELEASE_${lib.toUpper (builtins.replaceStrings ["-"] ["_"] name)}" - ); - in + env = + let + toRustFlags = lib.mapAttrs' ( + name: + lib.nameValuePair "CARGO_BUILD_RELEASE_${ + lib.toUpper (builtins.replaceStrings [ "-" ] [ "_" ] name) + }" + ); + in { GIT_SHA = self.shortRev or self.dirtyShortRev or "unknown"; } @@ -56,11 +61,11 @@ rustPlatform.buildRustPackage { strip = "symbols"; }); - meta = with lib; { - mainProgram = "teawiebot"; + meta = { description = "funni bot"; homepage = "https://github.com/getchoo/teawiebot"; - license = licenses.mit; - maintainers = with maintainers; [getchoo]; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ getchoo ]; + mainProgram = "teawie-bot"; }; } |
