90 lines
1.7 KiB
Nix
90 lines
1.7 KiB
Nix
{
|
|
lib,
|
|
stdenv,
|
|
fetchFromGitHub,
|
|
replaceVars,
|
|
appstream-glib,
|
|
desktop-file-utils,
|
|
meson,
|
|
ninja,
|
|
pkg-config,
|
|
python3,
|
|
rustPlatform,
|
|
rustc,
|
|
cargo,
|
|
wrapGAppsHook3,
|
|
glib,
|
|
gtk4,
|
|
libadwaita,
|
|
wayland,
|
|
gocryptfs,
|
|
cryfs,
|
|
fuse,
|
|
util-linux,
|
|
}:
|
|
|
|
stdenv.mkDerivation (finalAttrs: {
|
|
pname = "vaults";
|
|
version = "0.10.0";
|
|
|
|
src = fetchFromGitHub {
|
|
owner = "mpobaschnig";
|
|
repo = "vaults";
|
|
tag = finalAttrs.version;
|
|
hash = "sha256-B4CNEghMfP+r0poyhE102zC1Yd2U5ocV1MCMEVEMjEY=";
|
|
};
|
|
|
|
cargoDeps = rustPlatform.fetchCargoVendor {
|
|
inherit (finalAttrs) pname version src;
|
|
hash = "sha256-my4CxFIEN19juo/ya2vlkejQTaZsyoYLtFTR7iCT9s0=";
|
|
};
|
|
|
|
patches = [
|
|
(replaceVars ./remove_flatpak_dependency.patch {
|
|
cryfs = lib.getExe' cryfs "cryfs";
|
|
gocryptfs = lib.getExe' gocryptfs "gocryptfs";
|
|
fusermount = lib.getExe' fuse "fusermount";
|
|
umount = lib.getExe' util-linux "umount";
|
|
})
|
|
];
|
|
|
|
postPatch = ''
|
|
patchShebangs build-aux
|
|
'';
|
|
|
|
nativeBuildInputs = [
|
|
desktop-file-utils
|
|
meson
|
|
ninja
|
|
pkg-config
|
|
wrapGAppsHook3
|
|
cargo
|
|
rustc
|
|
rustPlatform.cargoSetupHook
|
|
];
|
|
|
|
buildInputs = [
|
|
appstream-glib
|
|
gtk4
|
|
python3
|
|
glib
|
|
libadwaita
|
|
wayland
|
|
gocryptfs
|
|
cryfs
|
|
];
|
|
|
|
meta = {
|
|
description = "GTK frontend for encrypted vaults supporting gocryptfs and CryFS for encryption";
|
|
homepage = "https://mpobaschnig.github.io/vaults/";
|
|
changelog = "https://github.com/mpobaschnig/vaults/releases/tag/${finalAttrs.version}";
|
|
license = lib.licenses.gpl3Plus;
|
|
maintainers = with lib.maintainers; [
|
|
benneti
|
|
aleksana
|
|
];
|
|
mainProgram = "vaults";
|
|
platforms = lib.platforms.linux;
|
|
};
|
|
})
|