Skip to content

Instantly share code, notes, and snippets.

@Nekroze
Created October 21, 2019 09:39
Show Gist options
  • Save Nekroze/9a879200fb5a3cddc7a99127af9ae888 to your computer and use it in GitHub Desktop.
Save Nekroze/9a879200fb5a3cddc7a99127af9ae888 to your computer and use it in GitHub Desktop.
wip sanoid nix expression
{ stdenv, fetchFromGitHub, perl, perlPackages, openssh, pv, gzip, lzop, makeWrapper, zfstools, zfs, mbuffer, procps }:
stdenv.mkDerivation rec {
version = "2.0.1";
name = "sanoid-${version}";
#src = fetchFromGitHub {
# #rev = "v${version}";
# rev = "681820ceab202c64406e841931b5cdab22b97154";
# owner = "jimsalterjrs";
# repo = "sanoid";
# sha256 = "17grnq704wa9qcwnnnalxrfpwd5x1cr194nnw9qm6lywr4viwasp";
#};
src = fetchFromGitHub {
rev = "dc2371775afe08af799d3097d47b48182d1716eb";
owner = "phreaker0";
repo = "sanoid";
sha256 = "1c3g9p0l1jp3yrzgxq9hqsyqm34ch7bjxbvrwj7lmsxcmxyk83k8";
};
phases = [ "installPhase" "fixupPhase" ];
propagatedBuildInputs = [
zfstools
zfs
openssh
pv
gzip
lzop
mbuffer
procps
];
buildInputs = [
makeWrapper
perl
];
installPhase = ''
mkdir -p $out/{bin,share,etc}
cp $src/sanoid.defaults.conf $out/etc/sanoid.defaults.conf
for file in sanoid syncoid findoid sleepymutex; do
cp $src/$file $out/share/$file.pl
makeWrapper $out/share/$file.pl $out/bin/$file --set PERL5LIB \
"${with perlPackages; makePerlPath ([ CaptureTiny ConfigIniFiles ])}"
done
'';
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment