{ stdenvNoCC, fetchzip, lib, ... }: { hardware, date, version, hash ? "", ... }: stdenvNoCC.mkDerivation (finalAttrs: { pname = "kobo-firmware"; inherit version hardware date; src = fetchzip { url = "https://ereaderfiles.kobo.com/firmwares/${finalAttrs.hardware}/${finalAttrs.date}/kobo-update-${finalAttrs.version}.zip"; inherit hash; }; outputs = [ "out" "KoboRoot" ]; phases = "installPhase"; installPhase = '' runHook preInstall mkdir $out cp -r $src/{manifest.md5sum,upgrade} $out/ mkdir $KoboRoot tar xvzf $src/KoboRoot.tgz --directory=$KoboRoot runHook postInstall ''; passthru = { inherit hardware date; }; meta = with lib; { homepage = "https://pgaskin.net/KoboStuff/kobofirmware.html"; description = '' Kobo firmware files. ''; platform = platforms.all; outputsToInstall = finalAttrs.outputs; }; })