stevenblack-blocklist: split files into separate outputs

This commit is contained in:
Ali Rizvi
2024-07-05 23:27:50 -04:00
parent 4299680f26
commit 24e4ca0864
@@ -11,10 +11,51 @@ stdenvNoCC.mkDerivation (finalAttrs: {
src = fetchFromGitHub {
owner = "StevenBlack";
repo = "hosts";
rev = finalAttrs.version;
rev = "refs/tags/${finalAttrs.version}";
hash = "sha256-tahf6mdtmZofwMZfMsuDAqCR/V1qZt6vV+o6t4YTKG0=";
};
outputs = [
# default src fallback
"out"
# base hosts file
"ads"
# extensions only
"fakenews"
"gambling"
"porn"
"social"
];
dontConfigure = true;
dontBuild = true;
installPhase = ''
runHook preInstall
mkdir -p $out $ads $fakenews $gambling $porn $social
# out
find alternates -type f -not -name "hosts" -exec rm {} +
cp -r alternates $out
install -Dm644 hosts $out
# ads
install -Dm644 hosts $ads
# extensions
install -Dm644 alternates/fakenews-only/hosts $fakenews
install -Dm644 alternates/gambling-only/hosts $gambling
install -Dm644 alternates/porn-only/hosts $porn
install -Dm644 alternates/social-only/hosts $social
runHook postInstall
'';
passthru.updateScript = nix-update-script { };
meta = with lib; {
description = "Unified hosts file with base extensions";
homepage = "https://github.com/StevenBlack/hosts";