Skip to content

Instantly share code, notes, and snippets.

@minijackson
Last active May 26, 2020 15:09
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save minijackson/096430eb6a4d0f70da12571a62d500fc to your computer and use it in GitHub Desktop.
Save minijackson/096430eb6a4d0f70da12571a62d500fc to your computer and use it in GitHub Desktop.
{ stdenv
, rustPlatform
, fetchFromGitHub
, llvmPackages
, openssl
, pkg-config
, Security
, gitMinimal
}:
rustPlatform.buildRustPackage rec {
pname = "imag";
version = "0.10.1";
src = fetchFromGitHub {
owner = "matthiasbeyer";
repo = pname;
rev = "v${version}";
sha256 = "0f9915f083z5qqcxyavj0w6m973c8m1x7kfb89pah5agryy5mkaq";
};
nativeBuildInputs = [ pkg-config ];
buildInputs = [ openssl ]
++ stdenv.lib.optional stdenv.isDarwin Security;
checkInputs = [ gitMinimal ];
LIBCLANG_PATH = "${llvmPackages.libclang}/lib";
cargoSha256 = "0n8cw70qh8g4hfwfaxwwxbrrx5hm2z037z8kdhvdpqkxljl9189x";
checkPhase = ''
export HOME=$TMPDIR
git config --global user.email "nobody@example.com"
git config --global user.name "Nobody"
# UI tests uses executables directly, so we need to build them before
# launching the tests
cargo build
cargo test --workspace -- --skip test_linking
'';
meta = with stdenv.lib; {
description = "Commandline personal information management suite";
homepage = "https://imag-pim.org/";
license = licenses.lgpl21;
maintainers = with maintainers; [ filalex77 minijackson ];
platforms = platforms.unix;
};
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment