{ stdenv, fetchurl, unzip }: # Look for the correct urls for build_front and build_api artifacts on the tags page of the project : https://dev.funkwhale.audio/funkwhale/funkwhale/pipelines?scope=tags # Attention : do not use the url "https://dev.funkwhale.audio/funkwhale/funkwhale/-/jobs/artifacts/${release}/download?job=" : it is not guaranteed to be stable let release = "1.0.1"; srcs = { api = fetchurl { url = https://dev.funkwhale.audio/funkwhale/funkwhale/-/jobs/56793/artifacts/download; name = "api.zip"; sha256 = "0p21r8kbn7sr33chp7404fi9pm4yz6qhfz4z7gxf3vamg9fbsbsc"; }; frontend = fetchurl { url = https://dev.funkwhale.audio/funkwhale/funkwhale/-/jobs/56790/artifacts/download; name = "frontend.zip"; sha256 = "0hz4d59sva6zi5q53wj3f6yaw5didcl9z148s6rsy2m6gyr8566d"; }; }; in stdenv.mkDerivation { name = "funkwhale"; version = "${release}"; src = srcs.api; nativeBuildInputs = [ unzip ]; postPatch = '' substituteInPlace requirements/base.txt \ --replace "django-cleanup==3.2.0" django-cleanup ''; installPhase = '' mkdir $out cp -R ./* $out unzip ${srcs.frontend} -d $out mv $out/front/ $out/front_tmp mv $out/front_tmp/dist $out/front rmdir $out/front_tmp ''; meta = with stdenv.lib; { description = "A modern, convivial and free music server"; homepage = https://funkwhale.audio/; license = licenses.agpl3; platforms = platforms.linux; maintainers = with maintainers; [ mmai ]; }; }