[Linux] New version removes backend files when first starts
Closed this issue · 10 comments
Hi @3unjee !
When I update MotionBox, at the first start the updated application removes every file from the ~/.local/share/MotionBox/backend folder. It happened multiple times in the past and last time now, when I updated the app from version 1.6.0-3 to 1.6.0-4.
If I restore the backend files from the backend repository everything is working like before.
Greetings @G-P-L , you mean you have an empty list with no backend after the update ?
The application is supposed to update each backend with the latest version from the repository.
What Linux distribution are you using ?
Yes, the list is empty and if I check the ~/.local/share/MotionBox/backend folder it is also totally empty.
I am using Arch Linux only.
Ok, I did the following:
- I opened the ~/.local/share/MotionBox/data.xml and modified the
<version>1.6.0-4</version>
to<version>1.6.0-3</version>
so the application thinks that the next start will be the first. - I started MotionBox from the terminal to see the messenges which were the following:
Starting MotionBox...
DATA LOCAL LOADED
Deleting file backend.pro
Deleting file bittorrent.vbml
Deleting folder cover
Deleting file bittorrent.png
Deleting file dailymotion.png
Deleting file duckduckgo.png
Deleting file soundcloud.png
Deleting file vimeo.png
Deleting file youtube.png
Deleting file dailymotion.vbml
Deleting file duckduckgo.vbml
Deleting file index.vbml
Deleting file lastfm.vbml
Deleting file opensubtitles.vbml
Deleting file soundcloud.vbml
Deleting file tmdb.vbml
Deleting file vimeo.vbml
Deleting file youtube.vbml
Deleting file 1.jpg
Deleting file 10.jpg
...and so on, it deletes a bunch of jpegs.
And the end of the messages:
Deleting file 97.jpg
Deleting file 98.jpg
Deleting file 99.jpg
Deleting file index
Deleting folder 1
Deleting folder 1
Deleting file 1.xml
Deleting file 1.xml
Deleting file 1.xml
Deleting folder 3
Deleting file 1.xml
Deleting file 3.xml
QSGContext::initialize: stencil buffer support missing, expect rendering errors
BEGIN LOG
TABS LOADED
QObject::connect: Cannot connect (null)::actionComplete(bool) to ControllerCore::onLoaded()
Retrying
FOLDER LOADED
FOLDER LOADED
TORRENT PROXY
TORRENT OPTIONS
TAB LOADED
FOLDER LOADED
WControllerNetwork: Connected
PLAYLIST LOADED
FOLDER SAVED
DATA LOCAL SAVED
WCacheThread::writeFile: Get failed http://i.ytimg.com/vi/WjxfsTbws4Q/hqdefault.jpg code 203. Error transferring http://i.ytimg.com/vi/WjxfsTbws4Q/hqdefault.jpg - server replied: Not Found
DATA LOCAL SAVED
Get http://omega.gg/get/MotionBox/1.0.0/linux64/data.xml
END LOG
DATA LOCAL SAVED
PLAYLIST SAVED
FOLDER SAVED
FOLDER SAVED
Deleting WControllerTorrent
TORRENT SESSION BEFORE
TORRENT SESSION AFTER
Deleting WControllerMedia
Deleting WControllerPlaylist
Deleting ControllerCore
Deleting WControllerView
Deleting WControllerDeclarative
Deleting WControllerXml
Deleting WControllerDownload
Deleting WControllerNetwork
Deleting WControllerFile
Done
It only says that MotionBox deleted the backend files but I cannot see any output line which states that new ones are downloaded. Thus I have to add them manually again.
Okay this: QObject::connect: Cannot connect (null)::actionComplete(bool) to ControllerCore::onLoaded()
might be a clue of what happens.
Can you confirm your MotionBox/backend folder has backends in it ?
Update: Can't seem to reproduce on Ubuntu 18.04
After the first start no backends in that folder.
If I start first of a clean install, it creates the backend folder without content and if I start the app after a version upgrade it will remove the existing backend files (if there any in the backend folder) and does not create/download new ones.
To solve the issue temporarily, I made a script which downloads the backends files and put them into the corresponding folder. So if this bug appears, I just run the script and problem solved until the next update.
Maybe I will make a test with different distributions in a virtual machine to test whenever it is caused by the different Qt version or if it is a distro specific issue.
So if you make a fresh install and extract the Linux archive you do get a backend folder with stuff in it ?
I mean in the install folder, not the "~/.local/share" stuff.
There is the backend folder with content in the extracted archive. And while I investigated this, I figured out that this is a packaging issue in my Arch package, so mystery solved, it was my fault.
Thanks for the help! :)