depot/third_party/nixpkgs/pkgs/applications/misc/effitask/default.nix

52 lines
1.3 KiB
Nix
Raw Normal View History

{ lib, stdenv
, rustPlatform
, fetchFromGitHub
, pkg-config
, openssl
, gtk3
, rust
}:
rustPlatform.buildRustPackage rec {
pname = "effitask";
version = "1.4.0";
src = fetchFromGitHub {
owner = "sanpii";
repo = pname;
rev = version;
sha256 = "09bffxdp43s8b1rpmsgqr2kyz3i4jbd2yrwbxw21fj3sf3mwb9ig";
};
# workaround for missing Cargo.lock file https://github.com/sanpii/effitask/issues/48
cargoPatches = [ ./cargo-lock.patch ];
cargoSha256 = "0dvmp23kny6rlv6c0mfyy3cmz1bi5wcm1mxps4z67lym5kxfd362";
buildInputs = [ openssl gtk3 ];
nativeBuildInputs = [ pkg-config ];
# default installPhase don't install assets
installPhase = ''
runHook preInstall
make install PREFIX="$out" TARGET="target/${rust.toRustTarget stdenv.hostPlatform}/release/effitask"
runHook postInstall
'';
meta = with lib; {
description = "Graphical task manager, based on the todo.txt format";
longDescription = ''
To use it as todo.sh add-on, create a symlink like this:
mkdir ~/.todo.actions.d/
ln -s $(which effitask) ~/.todo.actions.d/et
Or use it as standalone program by defining some environment variables
like described in the projects readme.
'';
homepage = "https://github.com/sanpii/effitask";
maintainers = with maintainers; [ davidak ];
license = with licenses; [ mit ];
};
}