Yes, there’s a work around. Let me check my notes.
Indeed the main problem is that the UI itself lacks the permission to access a few files it needs, due to not requesting the proper permissions. (and actually, I’m the one who filed the issue, but kind of forgot about this part ).
This only affects the UI (the list picker). Not the functionnality of defender itself as that is running in background services that rewrite the host file.
Basically the main work-around is:
Edit the file manually
The settings are stored in file .config/harbour-defender/defender.conf
. Either copy it from an rsync backup / from your Jolla 1 phone. Or manually edit it and set the lists you want to sourceenabled = yes
. Example:
[SETTINGS]
wlanonly = no
[stevenblack_unified]
sourceenabled = yes
[cameleon]
sourceenabled = no
[disconnectme_simple_tracking]
sourceenabled = yes
[disconnectme_simple_ad]
sourceenabled = yes
[mvps]
sourceenabled = no
…
To force updating the lists after that, run as root (this is the service that normally runs on a timer):
systemctl restart harbour-defender.service
Or alternatively as a user (this is how the UI passes the refresh instruction to the the above root servce):
touch ~/.config/harbour-defender/update
In theory, it should also be possible to patch the missing functionality (use Python functions instead of calling external wc -l
) and run harbour-defender
on the command line, directly instead of inside a sailjail.