nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{
2 lib,
3 stdenv,
4 fetchFromGitHub,
5 rustPlatform,
6 installShellFiles,
7 nix-update-script,
8}:
9
10rustPlatform.buildRustPackage rec {
11 pname = "rustic";
12 version = "0.10.3";
13
14 src = fetchFromGitHub {
15 owner = "rustic-rs";
16 repo = "rustic";
17 tag = "v${version}";
18 hash = "sha256-MYl6tcCpWsyU38YSXpK3uFaDpS351ct89JIXhvpVu+Q=";
19 };
20
21 cargoHash = "sha256-RIkOyx1paYKeytNPAcD402hBQi36gys+6lMnmoR24L8=";
22
23 nativeBuildInputs = [ installShellFiles ];
24
25 postInstall = lib.optionalString (stdenv.buildPlatform.canExecute stdenv.hostPlatform) ''
26 installShellCompletion --cmd rustic \
27 --bash <($out/bin/rustic completions bash) \
28 --fish <($out/bin/rustic completions fish) \
29 --zsh <($out/bin/rustic completions zsh)
30 '';
31
32 passthru.updateScript = nix-update-script { };
33
34 meta = {
35 homepage = "https://github.com/rustic-rs/rustic";
36 changelog = "https://github.com/rustic-rs/rustic/blob/${src.rev}/CHANGELOG.md";
37 description = "Fast, encrypted, deduplicated backups powered by pure Rust";
38 mainProgram = "rustic";
39 platforms = lib.platforms.linux ++ lib.platforms.darwin;
40 license = [
41 lib.licenses.mit
42 lib.licenses.asl20
43 ];
44 maintainers = [
45 lib.maintainers.nobbz
46 lib.maintainers.pmw
47 ];
48 };
49}