2021-05-03 20:48:10 +00:00
|
|
|
{ lib, stdenv, fetchFromGitHub, git, gnupg, installShellFiles }:
|
2020-04-24 23:36:52 +00:00
|
|
|
|
2021-05-03 20:48:10 +00:00
|
|
|
stdenv.mkDerivation rec {
|
2020-04-24 23:36:52 +00:00
|
|
|
pname = "yadm";
|
2021-09-18 10:52:07 +00:00
|
|
|
version = "3.1.1";
|
2020-04-24 23:36:52 +00:00
|
|
|
|
|
|
|
buildInputs = [ git gnupg ];
|
|
|
|
|
2021-05-03 20:48:10 +00:00
|
|
|
nativeBuildInputs = [ installShellFiles ];
|
|
|
|
|
2020-04-24 23:36:52 +00:00
|
|
|
src = fetchFromGitHub {
|
|
|
|
owner = "TheLocehiliosan";
|
|
|
|
repo = "yadm";
|
|
|
|
rev = version;
|
2021-09-18 10:52:07 +00:00
|
|
|
sha256 = "sha256-bgiRBlqEjDq0gQ0+aUWpFDeE2piFX3Gy2gEAXgChAOk=";
|
2020-04-24 23:36:52 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
dontConfigure = true;
|
|
|
|
dontBuild = true;
|
|
|
|
|
|
|
|
installPhase = ''
|
|
|
|
runHook preInstall
|
2020-12-25 13:55:36 +00:00
|
|
|
install -Dt $out/bin yadm
|
2020-04-24 23:36:52 +00:00
|
|
|
runHook postInstall
|
|
|
|
'';
|
|
|
|
|
2021-05-03 20:48:10 +00:00
|
|
|
postInstall = ''
|
|
|
|
installManPage yadm.1
|
|
|
|
installShellCompletion --cmd yadm \
|
|
|
|
--zsh completion/zsh/_yadm \
|
|
|
|
--bash completion/bash/yadm
|
|
|
|
'';
|
|
|
|
|
2020-04-24 23:36:52 +00:00
|
|
|
meta = {
|
|
|
|
homepage = "https://github.com/TheLocehiliosan/yadm";
|
|
|
|
description = "Yet Another Dotfiles Manager";
|
|
|
|
longDescription = ''
|
|
|
|
yadm is a dotfile management tool with 3 main features:
|
|
|
|
* Manages files across systems using a single Git repository.
|
|
|
|
* Provides a way to use alternate files on a specific OS or host.
|
|
|
|
* Supplies a method of encrypting confidential data so it can safely be stored in your repository.
|
|
|
|
'';
|
2021-05-03 20:48:10 +00:00
|
|
|
license = lib.licenses.gpl3Plus;
|
2021-01-17 00:15:33 +00:00
|
|
|
maintainers = with lib.maintainers; [ abathur ];
|
|
|
|
platforms = lib.platforms.unix;
|
2020-04-24 23:36:52 +00:00
|
|
|
};
|
|
|
|
}
|