ticker/default.nix

54 lines
1.1 KiB
Nix

{ mozillaOverlay ? import <mozillaOverlay>,
rustManifest ? ./channel-rust-nightly.toml,
}:
let
pkgs = import <nixpkgs> { overlays = [ mozillaOverlay ]; };
in
with pkgs;
let
rustChannelOfTargets = _channel: _date:
(pkgs.lib.rustLib.fromManifestFile rustManifest {
inherit (pkgs) stdenv fetchurl patchelf;
}).rust;
rust =
rustChannelOfTargets "nightly" null;
rustPlatform = pkgs.recurseIntoAttrs (pkgs.makeRustPlatform {
rustc = rust;
cargo = rust;
});
cargoSha256 = "1p6512fslxbihl8nci61hfraizcsyn430932w28s8qg8ib36zgwc";
ticker-update = rustPlatform.buildRustPackage {
name = "ticker-update";
src = ./.;
buildInputs = [
pkg-config openssl postgresql.lib
rust
];
preBuild = "pushd ticker-update";
postBuild = "popd";
inherit cargoSha256;
};
ticker-serve = rustPlatform.buildRustPackage {
name = "ticker-serve";
src = ./.;
buildInputs = [
pkg-config openssl postgresql.lib
rust
];
preBuild = "pushd ticker-serve";
postBuild = "popd";
inherit cargoSha256;
};
in {
inherit
rustPlatform
ticker-update
ticker-serve;
}