nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{
2 lib,
3 rustPlatform,
4 fetchFromGitHub,
5 pkg-config,
6 openssl,
7 versionCheckHook,
8}:
9
10rustPlatform.buildRustPackage rec {
11 pname = "orogene";
12 version = "0.3.34";
13
14 src = fetchFromGitHub {
15 owner = "orogene";
16 repo = "orogene";
17 rev = "v${version}";
18 hash = "sha256-GMWrlvZZ2xlcvcRG3u8jS8KiewHpyX0brNe4pmCpHbM=";
19 fetchSubmodules = true;
20 };
21
22 cargoPatches = [
23 # Workaround to avoid "error[E0282]"
24 # ref: https://github.com/orogene/orogene/pull/315
25 ./update-outdated-lockfile.patch
26 ];
27
28 cargoHash = "sha256-I08mqyogEuadp+V10svMmCm0i0zOZWiocOpM9E3lgag=";
29
30 nativeBuildInputs = [
31 pkg-config
32 ];
33
34 buildInputs = [
35 openssl
36 ];
37
38 preCheck = ''
39 export CI=true
40 export HOME=$(mktemp -d)
41 '';
42
43 doInstallCheck = true;
44 nativeInstallCheckInputs = [
45 versionCheckHook
46 ];
47 versionCheckProgram = "${placeholder "out"}/bin/oro";
48 versionCheckProgramArg = "--version";
49
50 meta = with lib; {
51 description = "Package manager for tools that use node_modules";
52 homepage = "https://github.com/orogene/orogene";
53 changelog = "https://github.com/orogene/orogene/blob/${src.rev}/CHANGELOG.md";
54 license = with licenses; [
55 asl20
56 isc
57 ];
58 maintainers = with maintainers; [ figsoda ];
59 mainProgram = "oro";
60 };
61}