yadm: add missing dependencies

* yadm: add missing dependencies (#73615)

* yadm: replace buildCommand with installPhase
This let the fixup phase compress man pages and patch shebangs
This commit is contained in:
ilikeavocadoes 2019-11-29 15:12:32 +02:00 committed by Renaud
parent 435c3ecde7
commit 6c6abf444b

View File

@ -1,10 +1,12 @@
{ stdenv, fetchFromGitHub }: { stdenv, fetchFromGitHub, git, gnupg }:
let version = "1.12.0"; in let version = "1.12.0"; in
stdenv.mkDerivation { stdenv.mkDerivation {
pname = "yadm"; pname = "yadm";
inherit version; inherit version;
buildInputs = [ git gnupg ];
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "TheLocehiliosan"; owner = "TheLocehiliosan";
repo = "yadm"; repo = "yadm";
@ -12,26 +14,26 @@ stdenv.mkDerivation {
sha256 = "0873jgks7dpfkj5km1jchxdrhf7lia70p0f8zsrh9p4crj5f4pc6"; sha256 = "0873jgks7dpfkj5km1jchxdrhf7lia70p0f8zsrh9p4crj5f4pc6";
}; };
buildCommand = '' dontConfigure = true;
mkdir -p $out/bin dontBuild = true;
mkdir -p $out/share/man/man1
mkdir -p $out/share/zsh/site-functions installPhase = ''
mkdir -p $out/share/bash-completion/completions runHook preInstall
sed -e 's:/bin/bash:/usr/bin/env bash:' $src/yadm > $out/bin/yadm install -Dt $out/bin $src/yadm
chmod 755 $out/bin/yadm install -Dt $out/share/man/man1 $src/yadm.1
install -m 644 $src/yadm.1 $out/share/man/man1/yadm.1 install -D $src/completion/yadm.zsh_completion $out/share/zsh/site-functions/_yadm
install -m644 $src/completion/yadm.zsh_completion $out/share/zsh/site-functions/_yadm install -D $src/completion/yadm.bash_completion $out/share/bash-completion/completions/yadm.bash
install -m644 $src/completion/yadm.bash_completion $out/share/bash-completion/completions/yadm.bash runHook postInstall
''; '';
meta = { meta = {
homepage = https://github.com/TheLocehiliosan/yadm; homepage = https://github.com/TheLocehiliosan/yadm;
description = "Yet Another Dotfiles Manager"; description = "Yet Another Dotfiles Manager";
longDescription = '' longDescription = ''
yadm is a dotfile management tool with 3 main features: Manages files across yadm is a dotfile management tool with 3 main features:
systems using a single Git repository. Provides a way to use alternate files on * Manages files across systems using a single Git repository.
a specific OS or host. Supplies a method of encrypting confidential data so it * Provides a way to use alternate files on a specific OS or host.
can safely be stored in your repository. * Supplies a method of encrypting confidential data so it can safely be stored in your repository.
''; '';
license = stdenv.lib.licenses.gpl3; license = stdenv.lib.licenses.gpl3;
platforms = stdenv.lib.platforms.unix; platforms = stdenv.lib.platforms.unix;