{ symlinkJoin , lib , spotify-unwrapped , makeWrapper # High-DPI support: Spotify's --force-device-scale-factor argument; not added # if `null`, otherwise, should be a number. , deviceScaleFactor ? null }: symlinkJoin { name = "spotify-${spotify-unwrapped.version}"; paths = [ spotify-unwrapped.out ]; nativeBuildInputs = [ makeWrapper ]; preferLocalBuild = true; passthru.unwrapped = spotify-unwrapped; postBuild = '' wrapProgram $out/bin/spotify \ ${lib.optionalString (deviceScaleFactor != null) '' --add-flags ${lib.escapeShellArg "--force-device-scale-factor=${ builtins.toString deviceScaleFactor }"} ''} ''; meta = spotify-unwrapped.meta // { priority = (spotify-unwrapped.meta.priority or 0) - 1; }; }