diff options
author | Nikolay Korotkiy <sikmir@disroot.org> | 2024-04-15 13:11:27 +0400 |
---|---|---|
committer | Nikolay Korotkiy <sikmir@disroot.org> | 2024-04-15 16:10:48 +0400 |
commit | bd662930103650e0d569776e6e0566d510e43479 (patch) | |
tree | af0e091135794367edaf70278f4e9dbc401b4016 /pkgs/by-name/gi | |
parent | 55995103d380e4dbe38f3d3809daf7bc854831d4 (diff) |
gitui: migrate to by-name
Diffstat (limited to 'pkgs/by-name/gi')
-rw-r--r-- | pkgs/by-name/gi/gitui/package.nix | 63 |
1 files changed, 63 insertions, 0 deletions
diff --git a/pkgs/by-name/gi/gitui/package.nix b/pkgs/by-name/gi/gitui/package.nix new file mode 100644 index 0000000000000..edc03effa5fd9 --- /dev/null +++ b/pkgs/by-name/gi/gitui/package.nix @@ -0,0 +1,63 @@ +{ lib +, stdenv +, rustPlatform +, fetchFromGitHub +, libiconv +, openssl +, pkg-config +, xclip +, darwin +}: + +rustPlatform.buildRustPackage rec { + pname = "gitui"; + version = "0.26.1"; + + src = fetchFromGitHub { + owner = "extrawurst"; + repo = "gitui"; + rev = "v${version}"; + hash = "sha256-JqxZbxjZrrdsXWhpYu0E9F18gMldtOLrAYd+uiY8IcQ="; + }; + + cargoHash = "sha256-zEoNyIiHQT6HBNSe+H7pz229K4eD0WMhp3I/6zJQHuU="; + + nativeBuildInputs = [ pkg-config ]; + + buildInputs = [ openssl ] + ++ lib.optional stdenv.isLinux xclip + ++ lib.optionals stdenv.isDarwin [ + libiconv + darwin.apple_sdk.frameworks.Security + darwin.apple_sdk.frameworks.AppKit + ]; + + postPatch = '' + # The cargo config overrides linkers for some targets, breaking the build + # on e.g. `aarch64-linux`. These overrides are not required in the Nix + # environment: delete them. + rm .cargo/config + + # build script tries to get version information from git + rm build.rs + substituteInPlace Cargo.toml --replace-fail 'build = "build.rs"' "" + ''; + + GITUI_BUILD_NAME = version; + # Needed to get openssl-sys to use pkg-config. + OPENSSL_NO_VENDOR = 1; + + # Getting app_config_path fails with a permission denied + checkFlags = [ + "--skip=keys::key_config::tests::test_symbolic_links" + ]; + + meta = { + description = "Blazing fast terminal-ui for Git written in Rust"; + homepage = "https://github.com/extrawurst/gitui"; + changelog = "https://github.com/extrawurst/gitui/blob/v${version}/CHANGELOG.md"; + mainProgram = "gitui"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ Br1ght0ne yanganto mfrw ]; + }; +} |