[SailfishDevel] After April SDK Update Existing App fails on RPM deploy to Jolla Device: Possible rights problem
Hi All I have just installed the April SDK update, and have opened an existing app, and am trying to deploy to my Jolla. The app worked with the previous SDK release, and is already installed on the phone. If I deploy as Deploy by copying Binaries then thinks work as expected, and the app successfully deploys and starts on the phone. If I deploy as Deploy as RPM Package, then I get the error below in QtCreator, and a white screen of death on the phone. [W] unknown:72 - file:///usr/share/landed26_QT5/qml/landed26_QT5.qml:72:5: Type MainPage unavailable MainPage { ^ [W] unknown:9 - file:///usr/share/landed26_QT5/qml/gui/MainPage.qml:9:1: Script file:///usr/share/landed26_QT5/qml/javascript/landed.js unavailable import ../javascript/landed.js as LJS ^ [W] unknown:-1 - file:///usr/share/landed26_QT5/qml/javascript/landed.js: File not found I also get the white screen when trying to open the app. Via SSH on the jolla device I can find the file is present: [nemo@Jolla javascript]$ pwd /usr/share/landed26_QT5/qml/javascript [nemo@Jolla javascript]$ ls -ahl total 48K drwxr-xr-x 1 root root 152 2014-04-16 14:31 . drwxr-xr-x 1 root root 110 2014-04-16 14:31 .. -rw-r--r-- 1 root root 4.2K 2014-04-16 14:31 jsonpath.js -rw--- 1 root root 349 2014-04-16 14:31 landed.js -rw--- 1 root root 1.2K 2014-04-16 14:31 message.js -rwxr-xr-x 1 root root 9.4K 2014-04-16 14:31 readDataModel.js -rwxr-xr-x 1 root root 8.8K 2014-02-03 08:32 settingsDB.js -rw-r--r-- 1 root root 5.2K 2014-04-16 14:31 writeDataModel.js However the access permissions look very strange. I suspect that all the js files should have rights like -rwxr-xr-x Chris ___ SailfishOS.org Devel mailing list
Re: [SailfishDevel] After April SDK Update Existing App fails on RPM deploy to Jolla Device: Possible rights problem
IMHO you should manage file permissions yourself before deploying? 16.04.2014 18:39, christopher.l...@thurweb.ch пишет: Hi All I have just installed the April SDK update, and have opened an existing app, and am trying to deploy to my Jolla. The app worked with the previous SDK release, and is already installed on the phone. If I deploy as Deploy by copying Binaries then thinks work as expected, and the app successfully deploys and starts on the phone. If I deploy as Deploy as RPM Package, then I get the error below in QtCreator, and a white screen of death on the phone. [W] unknown:72 - file:///usr/share/landed26_QT5/qml/landed26_QT5.qml:72:5: Type MainPage unavailable MainPage { ^ [W] unknown:9 - file:///usr/share/landed26_QT5/qml/gui/MainPage.qml:9:1: Script file:///usr/share/landed26_QT5/qml/javascript/landed.js unavailable import ../javascript/landed.js as LJS ^ [W] unknown:-1 - file:///usr/share/landed26_QT5/qml/javascript/landed.js: File not found I also get the white screen when trying to open the app. Via SSH on the jolla device I can find the file is present: [nemo@Jolla javascript]$ pwd /usr/share/landed26_QT5/qml/javascript [nemo@Jolla javascript]$ ls -ahl total 48K drwxr-xr-x 1 root root 152 2014-04-16 14:31 . drwxr-xr-x 1 root root 110 2014-04-16 14:31 .. -rw-r--r-- 1 root root 4.2K 2014-04-16 14:31 jsonpath.js -rw--- 1 root root 349 2014-04-16 14:31 landed.js -rw--- 1 root root 1.2K 2014-04-16 14:31 message.js -rwxr-xr-x 1 root root 9.4K 2014-04-16 14:31 readDataModel.js -rwxr-xr-x 1 root root 8.8K 2014-02-03 08:32 settingsDB.js -rw-r--r-- 1 root root 5.2K 2014-04-16 14:31 writeDataModel.js However the access permissions look very strange. I suspect that all the js files should have rights like -rwxr-xr-x Chris ___ SailfishOS.org Devel mailing list ___ SailfishOS.org Devel mailing list
Re: [SailfishDevel] After April SDK Update Existing App fails on RPM deploy to Jolla Device: Possible rights problem
Hi Andrey Thanks for the fast answer Given that we are talking about cross-platform development - developing on one and deploying to another I am not sure that is always possible. What if my development host was Windows? And as a developer I want to worry about writing code, not all the arcane rights that all the files need to work when deployed In fact my main development host is OSX which has unix like permissions, the same as Sailfish. Having a look at the files on my host, it looks like the files are now deployed with the original (strange mix of) rights from my host. However in previous SDK releases this was not an issue, As far as I can see the SDK took care of permissions. In the meantime I will chmod the files on the host and see if that helps... Cheers Chris Zitat von Andrey Kozhevnikov coderusin...@gmail.com: IMHO you should manage file permissions yourself before deploying? 16.04.2014 18:39, christopher.l...@thurweb.ch пишет: Hi All I have just installed the April SDK update, and have opened an existing app, and am trying to deploy to my Jolla. The app worked with the previous SDK release, and is already installed on the phone. If I deploy as Deploy by copying Binaries then thinks work as expected, and the app successfully deploys and starts on the phone. If I deploy as Deploy as RPM Package, then I get the error below in QtCreator, and a white screen of death on the phone. [W] unknown:72 - file:///usr/share/landed26_QT5/qml/landed26_QT5.qml:72:5: Type MainPage unavailable MainPage { ^ [W] unknown:9 - file:///usr/share/landed26_QT5/qml/gui/MainPage.qml:9:1: Script file:///usr/share/landed26_QT5/qml/javascript/landed.js unavailable import ../javascript/landed.js as LJS ^ [W] unknown:-1 - file:///usr/share/landed26_QT5/qml/javascript/landed.js: File not found I also get the white screen when trying to open the app. Via SSH on the jolla device I can find the file is present: [nemo@Jolla javascript]$ pwd /usr/share/landed26_QT5/qml/javascript [nemo@Jolla javascript]$ ls -ahl total 48K drwxr-xr-x 1 root root 152 2014-04-16 14:31 . drwxr-xr-x 1 root root 110 2014-04-16 14:31 .. -rw-r--r-- 1 root root 4.2K 2014-04-16 14:31 jsonpath.js -rw--- 1 root root 349 2014-04-16 14:31 landed.js -rw--- 1 root root 1.2K 2014-04-16 14:31 message.js -rwxr-xr-x 1 root root 9.4K 2014-04-16 14:31 readDataModel.js -rwxr-xr-x 1 root root 8.8K 2014-02-03 08:32 settingsDB.js -rw-r--r-- 1 root root 5.2K 2014-04-16 14:31 writeDataModel.js However the access permissions look very strange. I suspect that all the js files should have rights like -rwxr-xr-x Chris ___ SailfishOS.org Devel mailing list ___ SailfishOS.org Devel mailing list ___ SailfishOS.org Devel mailing list
Re: [SailfishDevel] After April SDK Update Existing App fails on RPM deploy to Jolla Device: Possible rights problem
This reminds me of SDK RPM-validator tool complaining about files with executable permission (it issued a warning about possible deprecation of executable files in RPM according to Harbour rules). If any sort of permission-scheme has to be enforced, shouldn't the SDK's RPM generator take care of it by itself? On Wed, Apr 16, 2014 at 2:41 PM, Andrey Kozhevnikov coderusin...@gmail.comwrote: IMHO you should manage file permissions yourself before deploying? 16.04.2014 18:39, christopher.l...@thurweb.ch пишет: Hi All I have just installed the April SDK update, and have opened an existing app, and am trying to deploy to my Jolla. The app worked with the previous SDK release, and is already installed on the phone. If I deploy as Deploy by copying Binaries then thinks work as expected, and the app successfully deploys and starts on the phone. If I deploy as Deploy as RPM Package, then I get the error below in QtCreator, and a white screen of death on the phone. [W] unknown:72 - file:///usr/share/landed26_QT5/qml/landed26_QT5.qml:72:5: Type MainPage unavailable MainPage { ^ [W] unknown:9 - file:///usr/share/landed26_QT5/qml/gui/MainPage.qml:9:1: Script file:///usr/share/landed26_QT5/qml/javascript/landed.js unavailable import ../javascript/landed.js as LJS ^ [W] unknown:-1 - file:///usr/share/landed26_QT5/qml/javascript/landed.js: File not found I also get the white screen when trying to open the app. Via SSH on the jolla device I can find the file is present: [nemo@Jolla javascript]$ pwd /usr/share/landed26_QT5/qml/javascript [nemo@Jolla javascript]$ ls -ahl total 48K drwxr-xr-x 1 root root 152 2014-04-16 14:31 . drwxr-xr-x 1 root root 110 2014-04-16 14:31 .. -rw-r--r-- 1 root root 4.2K 2014-04-16 14:31 jsonpath.js -rw--- 1 root root 349 2014-04-16 14:31 landed.js -rw--- 1 root root 1.2K 2014-04-16 14:31 message.js -rwxr-xr-x 1 root root 9.4K 2014-04-16 14:31 readDataModel.js -rwxr-xr-x 1 root root 8.8K 2014-02-03 08:32 settingsDB.js -rw-r--r-- 1 root root 5.2K 2014-04-16 14:31 writeDataModel.js However the access permissions look very strange. I suspect that all the js files should have rights like -rwxr-xr-x Chris ___ SailfishOS.org Devel mailing list ___ SailfishOS.org Devel mailing list -- Luca Donaggio ___ SailfishOS.org Devel mailing list
Re: [SailfishDevel] After April SDK Update Existing App fails on RPM deploy to Jolla Device: Possible rights problem
On 16.04.2014 15:39, christopher.l...@thurweb.ch wrote: Hi All ... I also get the white screen when trying to open the app. Via SSH on the jolla device I can find the file is present: [nemo@Jolla javascript]$ pwd /usr/share/landed26_QT5/qml/javascript [nemo@Jolla javascript]$ ls -ahl total 48K drwxr-xr-x 1 root root 152 2014-04-16 14:31 . drwxr-xr-x 1 root root 110 2014-04-16 14:31 .. -rw-r--r-- 1 root root 4.2K 2014-04-16 14:31 jsonpath.js -rw--- 1 root root 349 2014-04-16 14:31 landed.js -rw--- 1 root root 1.2K 2014-04-16 14:31 message.js -rwxr-xr-x 1 root root 9.4K 2014-04-16 14:31 readDataModel.js -rwxr-xr-x 1 root root 8.8K 2014-02-03 08:32 settingsDB.js -rw-r--r-- 1 root root 5.2K 2014-04-16 14:31 writeDataModel.js However the access permissions look very strange. I suspect that all the js files should have rights like -rwxr-xr-x Hi Chris, I've changed the way the shared directories are mounted to the virtual machine. This might be caused by that. Previously the shared folders were mounted with 777 rights and all files were shown as read/write/exec for all inside the virtual machine. I've changed it so that the rights are as they are on your host filesystem. But there's really no reason for those two files to have only root access and the others have more access unless there's some root cause with your source files. There's no code anywhere in the SDK that checks if a file is named 'landed.js' and modifies its access rights :-) What are the source files' permissions in your Mac's filesystem when you list them? Best regards, Juha ___ SailfishOS.org Devel mailing list
Re: [SailfishDevel] After April SDK Update Existing App fails on RPM deploy to Jolla Device: Possible rights problem
Zitat von Juha Kallioinen juha.kallioi...@jolla.com: Hi Juha On my host the access permissions were apple-pip:javascript christopherlamb$ cd /Users/christopherlamb/QTProjects/landed/landed26_QT5/landed26_QT5/qml/javascript apple-pip:javascript christopherlamb$ ls -ahl total 72 drwxr-xr-x 7 christopherlamb staff 238B 22 Feb 22:01 . drwxr-xr-x 9 christopherlamb staff 306B 8 Feb 19:57 .. -rw-r--r-- 1 christopherlamb staff 4,1K 22 Feb 22:01 jsonpath.js -rw--- 1 christopherlamb staff 349B 8 Nov 15:56 landed.js -rw--- 1 christopherlamb staff 1,1K 11 Feb 19:33 message.js -rwxrwxrwx 1 christopherlamb staff 9,4K 22 Feb 19:47 readDataModel.js -rw-r--r-- 1 christopherlamb staff 5,2K 8 Feb 17:29 writeDataModel.js I am not sure why the files on my host have such wildly different permissions. This probably reflects the different ages / sources of the files. Until now the permissions set on the host was not an issue I had to think about. I have now done a chmod 777 *.js That got me a little further, it next complained about missing qml files, so we have a similar issue with the permissions of .qml files. Having gone through all my qml file in the project on my host with chmod 755 *.qml the project now deploys successfully to the device. So it looks like, that (at least on OSX) the permissions of files on the host are important and need to be set correctly as expected on the end device. Something for the known issues page? Grüsse Chris Hi Chris, I've changed the way the shared directories are mounted to the virtual machine. This might be caused by that. Previously the shared folders were mounted with 777 rights and all files were shown as read/write/exec for all inside the virtual machine. I've changed it so that the rights are as they are on your host filesystem. But there's really no reason for those two files to have only root access and the others have more access unless there's some root cause with your source files. There's no code anywhere in the SDK that checks if a file is named 'landed.js' and modifies its access rights :-) What are the source files' permissions in your Mac's filesystem when you list them? Best regards, Juha ___ SailfishOS.org Devel mailing list ___ SailfishOS.org Devel mailing list
Re: [SailfishDevel] After April SDK Update Existing App fails on RPM deploy to Jolla Device: Possible rights problem
You don't need executable permission (x) for js files. Read bit is enough so the SDK is correct here. I noticed that the missing scripts do not have read permission set which is the problem. I have no idea how it happened though. Cheers, -- Sent from my Nokia N9On 16.4.2014 15:39 christopher.l...@thurweb.ch wrote: Hi All I have just installed the April SDK update, and have opened an existing app, and am trying to deploy to my Jolla. The app worked with the previous SDK release, and is already installed on the phone. If I deploy as Deploy by copying Binaries then thinks work as expected, and the app successfully deploys and starts on the phone. If I deploy as Deploy as RPM Package, then I get the error below in QtCreator, and a white screen of death on the phone. [W] unknown:72 - file:///usr/share/landed26_QT5/qml/landed26_QT5.qml:72:5: Type MainPage unavailable MainPage { ^ [W] unknown:9 - file:///usr/share/landed26_QT5/qml/gui/MainPage.qml:9:1: Script file:///usr/share/landed26_QT5/qml/javascript/landed.js unavailable import ../javascript/landed.js as LJS ^ [W] unknown:-1 - file:///usr/share/landed26_QT5/qml/javascript/landed.js: File not found I also get the white screen when trying to open the app. Via SSH on the jolla device I can find the file is present: [nemo@Jolla javascript]$ pwd /usr/share/landed26_QT5/qml/javascript [nemo@Jolla javascript]$ ls -ahl total 48K drwxr-xr-x 1 root root 152 2014-04-16 14:31 . drwxr-xr-x 1 root root 110 2014-04-16 14:31 .. -rw-r--r-- 1 root root 4.2K 2014-04-16 14:31 jsonpath.js -rw--- 1 root root 349 2014-04-16 14:31 landed.js -rw--- 1 root root 1.2K 2014-04-16 14:31 message.js -rwxr-xr-x 1 root root 9.4K 2014-04-16 14:31 readDataModel.js -rwxr-xr-x 1 root root 8.8K 2014-02-03 08:32 settingsDB.js -rw-r--r-- 1 root root 5.2K 2014-04-16 14:31 writeDataModel.js However the access permissions look very strange. I suspect that all the js files should have rights like -rwxr-xr-x Chris ___ SailfishOS.org Devel mailing list ___ SailfishOS.org Devel mailing list
Re: [SailfishDevel] After April SDK Update Existing App fails on RPM deploy to Jolla Device: Possible rights problem
Hi Mohammed thanks The varied permission on the qml / js files on my host probably reflect that the project originated in pre-sailfish days, and thus the files have come from various sources / versions of Qt Creator / edited with different text editors etc. since then. I have now set all qml and js files in the project on my development host to chmod 644 e.g -rw-r--r-- 1 christopherlamb staff 7,7K 24 Feb 17:20 InitialCharacterPicker.qml Are these the correct permissions? It is how a new demo project sets the permissions. Chris Zitat von Mohammed Hassan mohammed.has...@jolla.com: You don't need executable permission (x) for js files. Read bit is enough so the SDK is correct here. I noticed that the missing scripts do not have read permission set which is the problem. I have no idea how it happened though. Cheers, -- Sent from my Nokia N9On 16.4.2014 15:39 christopher.l...@thurweb.ch wrote: Hi All I have just installed the April SDK update, and have opened an existing app, and am trying to deploy to my Jolla. The app worked with the previous SDK release, and is already installed on the phone. If I deploy as Deploy by copying Binaries then thinks work as expected, and the app successfully deploys and starts on the phone. If I deploy as Deploy as RPM Package, then I get the error below in QtCreator, and a white screen of death on the phone. [W] unknown:72 - file:///usr/share/landed26_QT5/qml/landed26_QT5.qml:72:5: Type MainPage unavailable MainPage { ^ [W] unknown:9 - file:///usr/share/landed26_QT5/qml/gui/MainPage.qml:9:1: Script file:///usr/share/landed26_QT5/qml/javascript/landed.js unavailable import ../javascript/landed.js as LJS ^ [W] unknown:-1 - file:///usr/share/landed26_QT5/qml/javascript/landed.js: File not found I also get the white screen when trying to open the app. Via SSH on the jolla device I can find the file is present: [nemo@Jolla javascript]$ pwd /usr/share/landed26_QT5/qml/javascript [nemo@Jolla javascript]$ ls -ahl total 48K drwxr-xr-x 1 root root 152 2014-04-16 14:31 . drwxr-xr-x 1 root root 110 2014-04-16 14:31 .. -rw-r--r-- 1 root root 4.2K 2014-04-16 14:31 jsonpath.js -rw--- 1 root root 349 2014-04-16 14:31 landed.js -rw--- 1 root root 1.2K 2014-04-16 14:31 message.js -rwxr-xr-x 1 root root 9.4K 2014-04-16 14:31 readDataModel.js -rwxr-xr-x 1 root root 8.8K 2014-02-03 08:32 settingsDB.js -rw-r--r-- 1 root root 5.2K 2014-04-16 14:31 writeDataModel.js However the access permissions look very strange. I suspect that all the js files should have rights like -rwxr-xr-x Chris ___ SailfishOS.org Devel mailing list ___ SailfishOS.org Devel mailing list ___ SailfishOS.org Devel mailing list
Re: [SailfishDevel] After April SDK Update Existing App fails on RPM deploy to Jolla Device: Possible rights problem
On 16.04.2014 16:19, christopher.l...@thurweb.ch wrote: Zitat von Juha Kallioinen juha.kallioi...@jolla.com: Hi Juha On my host the access permissions were apple-pip:javascript christopherlamb$ cd /Users/christopherlamb/QTProjects/landed/landed26_QT5/landed26_QT5/qml/javascript apple-pip:javascript christopherlamb$ ls -ahl total 72 drwxr-xr-x 7 christopherlamb staff 238B 22 Feb 22:01 . drwxr-xr-x 9 christopherlamb staff 306B 8 Feb 19:57 .. -rw-r--r-- 1 christopherlamb staff 4,1K 22 Feb 22:01 jsonpath.js -rw--- 1 christopherlamb staff 349B 8 Nov 15:56 landed.js -rw--- 1 christopherlamb staff 1,1K 11 Feb 19:33 message.js -rwxrwxrwx 1 christopherlamb staff 9,4K 22 Feb 19:47 readDataModel.js -rw-r--r-- 1 christopherlamb staff 5,2K 8 Feb 17:29 writeDataModel.js I am not sure why the files on my host have such wildly different permissions. This probably reflects the different ages / sources of the files. Until now the permissions set on the host was not an issue I had to think about. I have now done a chmod 777 *.js That got me a little further, it next complained about missing qml files, so we have a similar issue with the permissions of .qml files. Having gone through all my qml file in the project on my host with chmod 755 *.qml the project now deploys successfully to the device. So it looks like, that (at least on OSX) the permissions of files on the host are important and need to be set correctly as expected on the end device. Something for the known issues page? Ok glad it was this issue. You can do permission management for RPM packages in the yaml/spec file %files section using the %attr and %defattr directives. Here's more information about those directives: http://www.rpm.org/max-rpm-snapshot/s1-rpm-inside-files-list-directives.html Best regards, Juha ___ SailfishOS.org Devel mailing list
Re: [SailfishDevel] After April SDK Update Existing App fails on RPM deploy to Jolla Device: Possible rights problem
On Wed, 16 Apr 2014 16:17:07 +0200 christopher.l...@thurweb.ch wrote: Hi Mohammed thanks The varied permission on the qml / js files on my host probably reflect that the project originated in pre-sailfish days, and thus the files have come from various sources / versions of Qt Creator / edited with different text editors etc. since then. I have now set all qml and js files in the project on my development host to chmod 644 e.g -rw-r--r-- 1 christopherlamb staff 7,7K 24 Feb 17:20 InitialCharacterPicker.qml Are these the correct permissions? It is how a new demo project sets the permissions. I guess for RPM generation it'd be better to use %attr and %defattr as Juha pointed out. In general I use %defattr(-,root,root-) and that works fine for me. What you need is +r set for everybody and +rx set on the directories. Cheers, ___ SailfishOS.org Devel mailing list
Re: [SailfishDevel] After April SDK Update Existing App fails on RPM deploy to Jolla Device: Possible rights problem
I got the exactly same surprise. Rights of file was readable only by root. My projects is placed on a foldr that is synced between many devices, os, and fs, (btsync on windows/fat32, linux ext4, ext3 on rasp, n9) ... and look like file attrb are badly set :) Regards À Wed Apr 16 2014 14:55:37 GMT+0200 (CEST), christopher.l...@thurweb.ch a écrit : Hi Andrey Thanks for the fast answer Given that we are talking about cross-platform development - developing on one and deploying to another I am not sure that is always possible. What if my development host was Windows? And as a developer I want to worry about writing code, not all the arcane rights that all the files need to work when deployed In fact my main development host is OSX which has unix like permissions, the same as Sailfish. Having a look at the files on my host, it looks like the files are now deployed with the original (strange mix of) rights from my host. However in previous SDK releases this was not an issue, As far as I can see the SDK took care of permissions. In the meantime I will chmod the files on the host and see if that helps... Cheers Chris Zitat von Andrey Kozhevnikov coderusin...@gmail.com: IMHO you should manage file permissions yourself before deploying? 16.04.2014 18:39, christopher.l...@thurweb.ch пишет: Hi All I have just installed the April SDK update, and have opened an existing app, and am trying to deploy to my Jolla. The app worked with the previous SDK release, and is already installed on the phone. If I deploy as Deploy by copying Binaries then thinks work as expected, and the app successfully deploys and starts on the phone. If I deploy as Deploy as RPM Package, then I get the error below in QtCreator, and a white screen of death on the phone. [W] unknown:72 - file:///usr/share/landed26_QT5/qml/landed26_QT5.qml:72:5: Type MainPage unavailable MainPage { ^ [W] unknown:9 - file:///usr/share/landed26_QT5/qml/gui/MainPage.qml:9:1: Script file:///usr/share/landed26_QT5/qml/javascript/landed.js unavailable import ../javascript/landed.js as LJS ^ [W] unknown:-1 - file:///usr/share/landed26_QT5/qml/javascript/landed.js: File not found I also get the white screen when trying to open the app. Via SSH on the jolla device I can find the file is present: [nemo@Jolla javascript]$ pwd /usr/share/landed26_QT5/qml/javascript [nemo@Jolla javascript]$ ls -ahl total 48K drwxr-xr-x 1 root root 152 2014-04-16 14:31 . drwxr-xr-x 1 root root 110 2014-04-16 14:31 .. -rw-r--r-- 1 root root 4.2K 2014-04-16 14:31 jsonpath.js -rw--- 1 root root 349 2014-04-16 14:31 landed.js -rw--- 1 root root 1.2K 2014-04-16 14:31 message.js -rwxr-xr-x 1 root root 9.4K 2014-04-16 14:31 readDataModel.js -rwxr-xr-x 1 root root 8.8K 2014-02-03 08:32 settingsDB.js -rw-r--r-- 1 root root 5.2K 2014-04-16 14:31 writeDataModel.js However the access permissions look very strange. I suspect that all the js files should have rights like -rwxr-xr-x Chris ___ SailfishOS.org Devel mailing list ___ SailfishOS.org Devel mailing list ___ SailfishOS.org Devel mailing lis -- Benoît HERVIER - http://khertan.net ___ SailfishOS.org Devel mailing list