Doesn't work properly if Spicetify is installed
- [x] You are using the Spotify
last tested versionmentioned in the README. - [x] You are using the latest BlockTheSpot from github.
- [x] You uninstalled Spotify and just ran the patch
- [x] You read through the known issues section in the README.
- [x] You read through the additional notes section in the README.
- [x] You enabled logging by editing config.ini
set log = 1. - [x] Make sure whether an issue related yours is already open or not.
- [x] Make sure you have completed everything in the above checklist.
Screenshots:
Log:
Although the log shows the script working fine, I still upload here just in case: blockthespot.log
You should install it after spicetify install
I did that, Spicetify first, then apply BlockTheSpot.
can you:
- install Spicetify
- Install BlockTheSpot with manual step.
still same issue
@Nuzair46 I found the reason why.
-
When we run
Spicetify applyorSpicetify backup applycommand, Spicetify will extract%APPDATA%\Spotify\Apps\*.spafiles and remove the original.spafiles. -
Therefore, when we run our batch, and open Spotify, Spotify itself found those extracted folders, so it don't need to call
cef_zip_reader_createto read zip anymore and our hook becomes useless.
How to fix ?
- Pack
loginandxpuifolders in%APPDATA%\Spotify\Appsto zip then rename packed folders' extension to.spa. - Reopen Spotify and everything works fine.
My thought
- So I think there are 2 ways to solve:
-
Pack the
loginandxpuifolders to.spatype if packed version are not found. -
Ask Spicetify to pack into
.spaafter modifying. (probably the best way) -
Find a better function that doesn't depend on the zip reader to hook.
Yes, I know that, but manual installation doesn't modify xpui file directly.
Manual steps
Browse to your Spotify installation folder %APPDATA%\Spotify Download chrome_elf.zip from releases Unzip dpapi.dll and config.ini to Spotify directory.
Ah, my bad, I should look at the source code before.
After looking at the source code, I can see that it hooks directly to cef_zip_reader_create in libcef.dll to change values.
Again, Spotify works fine even with only extracted folder of xpui.spa and login.spa.
Therefore, when we run Spotify, with only extracted folder of xpui.spa and login.spa, the original cef_zip_reader_create function won't be called, so our hook becomes useless.
To solve this, we need to somehow keep those .spa files by ways I mentioned above.
Spicetify has its own AdBlock extension. Why'd you use BlockTheSpot with Spicetify to begin with!
@NguyenASang Sorry for the bother, but I wanted to ask you if it was still working, I tried various methods, automatic script for both, separate scripts, one before the other and viceversa, manual both, but I can't seem to be able to install BTS over Spicetify.
Spicetify will always "prevail" making the Explore Premium appear, even if I patch Spotify with BTS after having finished with Spicetify.
I also tried your method but I honestly don't think I did it correctly as nothing "new" happened.
Currently I'm just using BTS as for now that's more than enough :) but would love to use the lyrics from Spicetify and perhaps some theming.
manual install should fix this issue