nixpkgs/pkgs/by-name/en/enc/package.nix
aleksana 571c71e6f7 treewide: migrate packages to pkgs/by-name, take 1
We are migrating packages that meet below requirements:

1. using `callPackage`
2. called path is a directory
3. overriding set is empty (`{ }`)
4. not containing path expressions other than relative path (to
makenixpkgs-vet happy)
5. not referenced by nix files outside of the directory, other
than`pkgs/top-level/all-packages.nix`
6. not referencing nix files outside of the directory
7. not referencing `default.nix` (since it's changed to `package.nix`)
8. `outPath` doesn't change after migration

The tool is here: https://github.com/Aleksanaa/by-name-migrate.
2024-11-09 20:04:51 +08:00

56 lines
1.5 KiB
Nix

{ lib
, buildGoModule
, fetchFromGitHub
, git
, installShellFiles
}:
buildGoModule rec {
pname = "enc";
version = "1.1.3";
src = fetchFromGitHub {
owner = "life4";
repo = "enc";
rev = version;
hash = "sha256-G6x17CDAKpmqvl7FTycSQ5bF0JndNP+SlUoBVUk76IQ=";
};
vendorHash = "sha256-lB4DoHB+hGKjIcrAjeCd8a5prTn8XFIWhzNakA7utHI=";
nativeBuildInputs = [ installShellFiles ];
subPackages = ".";
ldflags = [
"-s"
"-w"
"-X github.com/life4/enc/version.GitCommit=${version}"
];
nativeCheckInputs = [ git ];
postInstall = ''
installShellCompletion --cmd enc \
--bash <($out/bin/enc completion bash) \
--fish <($out/bin/enc completion fish) \
--zsh <($out/bin/enc completion zsh)
'';
meta = with lib; {
homepage = "https://github.com/life4/enc";
changelog = "https://github.com/life4/enc/releases/tag/v${version}";
description = "Modern and friendly alternative to GnuPG";
mainProgram = "enc";
longDescription = ''
Enc is a CLI tool for encryption, a modern and friendly alternative to GnuPG.
It is easy to use, secure by default and can encrypt and decrypt files using password or encryption keys,
manage and download keys, and sign data.
Our goal was to make encryption available to all engineers without the need to learn a lot of new words, concepts,
and commands. It is the most beginner-friendly CLI tool for encryption, and keeping it that way is our top priority.
'';
license = licenses.mit;
maintainers = with maintainers; [ rvnstn ];
};
}