nixpkgs/pkgs/by-name/br/brig/package.nix
Winter a19cd4ffb1 Revert "treewide: replace rev with tag"
This reverts commit 65a333600d5c88a98d674f637d092807cfc12253.

This wasn't tested for correctness with something like fodwatch [0],
and should not have been (self-)merged so quickly, especially without
further review.

It also resulted in the breakage of at least one package [1] (and that's
the one we know of and was caught).

A few packages that were updated in between this commit and this revert
were not reverted back to using `rev`, but other than that, this is a
1:1 revert.

[0]: https://codeberg.org/raphaelr/fodwatch
[1]: https://github.com/NixOS/nixpkgs/pull/396904 / 758551e4587d75882aebc21a04bee960418f8ce9
2025-04-08 02:57:25 -04:00

63 lines
1.6 KiB
Nix

{
lib,
buildGoModule,
fetchFromGitHub,
installShellFiles,
}:
buildGoModule rec {
pname = "brig";
version = "0.4.1";
src = fetchFromGitHub {
owner = "sahib";
repo = "brig";
rev = "v${version}";
sha256 = "0gi39jmnzqrgj146yw8lcmgmvzx7ii1dgw4iqig7kx8c0jiqi600";
};
vendorHash = null;
nativeBuildInputs = [ installShellFiles ];
subPackages = [ "." ];
ldflags =
[
"-s"
"-w"
]
++ lib.mapAttrsToList (n: v: "-X github.com/sahib/brig/version.${n}=${v}") {
Major = lib.versions.major version;
Minor = lib.versions.minor version;
Patch = lib.versions.patch version;
ReleaseType = "";
BuildTime = "1970-01-01T00:00:00+0000";
GitRev = src.rev;
};
postInstall = ''
installShellCompletion --cmd brig \
--bash $src/autocomplete/bash_autocomplete \
--zsh $src/autocomplete/zsh_autocomplete
'';
# There are no tests for the brig executable.
doCheck = false;
meta = with lib; {
description = "File synchronization on top of IPFS with a git-like interface and a FUSE filesystem";
longDescription = ''
brig is a distributed and secure file synchronization tool with a version
control system. It is based on IPFS, written in Go and will feel familiar
to git users. Think of it as a swiss army knife for file synchronization
or as a peer to peer alternative to Dropbox.
'';
homepage = "https://brig.readthedocs.io";
changelog = "https://github.com/sahib/brig/releases/tag/${src.rev}";
license = licenses.agpl3Only;
maintainers = with maintainers; [ offline ];
mainProgram = "brig";
};
}