nixpkgs/pkgs/tools/package-management/home-manager/default.nix

44 lines
1.2 KiB
Nix

#Adapted from
#https://github.com/rycee/home-manager/blob/2c07829be2bcae55e04997b19719ff902a44016d/home-manager/default.nix
{ bash, coreutils, findutils, gnused, less, stdenv, makeWrapper, fetchFromGitHub }:
stdenv.mkDerivation rec {
pname = "home-manager";
version = "2020-03-17";
src = fetchFromGitHub {
owner = "rycee";
repo = "home-manager";
rev = "5969551a5cc52f9470b5ff5ca01327bf4bda82c1";
sha256 = "0f4kz83a1kp3ci8zi5hvp8fp34wi73arpykl4d9vlywdk6w36bnd";
};
nativeBuildInputs = [ makeWrapper ];
dontBuild = true;
installPhase = ''
install -v -D -m755 ${src}/home-manager/home-manager $out/bin/home-manager
substituteInPlace $out/bin/home-manager \
--subst-var-by bash "${bash}" \
--subst-var-by coreutils "${coreutils}" \
--subst-var-by findutils "${findutils}" \
--subst-var-by gnused "${gnused}" \
--subst-var-by less "${less}" \
--subst-var-by HOME_MANAGER_PATH '${src}'
install -D -m755 home-manager/completion.bash \
"$out/share/bash-completion/completions/home-manager"
'';
meta = with stdenv.lib; {
description = "A user environment configurator";
maintainers = with maintainers; [ rycee ];
platforms = platforms.unix;
license = licenses.mit;
};
}