How to generate the Aegis file?
Page |
1 |
Hi all,
I am trying to deploy my harmattan application to QEMU but i always get the following errors
- libqtcontacts-tracker: engine.cpp:1280: Invalid credential string (TrackerReadAccess), errno (22) : Invalid argument
- libqtcontacts-tracker: engine.cpp:1280: Invalid credential string (TrackerWriteAccess), errno (22) : Invalid argument
- libqtcontacts-tracker: engine.cpp:1289: Entity does not possess required credential
- libqtcontacts-tracker: engine.cpp:1307:
- =============================================================================
- WARNING /!\ - MANDATORY SECURITY TOKENS ARE MISSIN
- =============================================================================
- Rejecting QContactLocalIdFetchRequest.
- Please add an AEGIS manifest to your package requesting the following
- security tokens: TrackerReadAccess, TrackerWriteAccess for /opt/FaceOff/bin/FaceOff [754].
- =============================================================================
- "Couldn't obtain a direct connection to the Tracker store: Error calling StartServiceByName for org.freedesktop.Tracker1: GDBus.Error:org.freedesktop.DBus.Error.Spawn.ChildExited: Process /usr/lib/tracker/tracker-store exited with status 1"
- libqtcontacts-tracker: sparqlresolver.cpp:123: Couldn't obtain a direct connection to the Tracker store: Error calling StartServiceByName for org.freedesktop.Tracker1: GDBus.Error:org.freedesktop.DBus.Error.Spawn.ChildExited: Process /usr/lib/tracker/tracker-store exited with status 1
- libqtcontacts-tracker: tasks.cpp:66: Cannot prefill resource cache with resources required by detail schemas
I know that there is missing credentials .
I tried to add theme manually but without any result.
- <aegis>
- <request policy="add">
- <credential name="TrackerReadAccess"/>
- <credential name="TrackerWriteAccess"/>
- <for path="/opt/FaceOff/bin/FaceOff"/>
- </request>
- </aegis>
I want now to generate theme automatically, How can I do that?
note:- I am using windows 7, Qt SDK 1.1.3, QEMU nothing more than that
Thank you for your help.
20 replies
Did you upgraded to the last Qt 4.7.4 and Qt Creator 2.3.0 ? This is important because the previouse Qt Creator version was having some bugs managing the packaging.
In this moment I don’t remember exactly but the aegis problem was depending by the Windows 7 and not by the development environement. I am sure of this. This is the same problem I had when tryed to compile the first applicaiton for Harmattan under Windows 7 + QEMU
This problems will disappear with Qt Creator 2.3.0
Finally I remembered where I have found about aegis: http://www.developer.nokia.com/Community/Wiki/Harmattan:Developer_Library/Developing_for_Harmattan/Harmattan_security/Security_guide/Aegis_manifest_file_generation_tool
It is in the Harmattan section of developer.nokia.com not on the developer network. I think this link may be helpful for you.
You might also note to check if your “qtc_packaging/debian_harmattan/manifest.aegis” file still exists. The current Qt SDK has an error which deletes this file upon project opening: https://bugreports.qt.nokia.com/browse/QTCREATORBUG-6117
Also delete the _aegis file in your project directory and check if it gets re-generated when packaging. It should contain your manifest.aegis’ contents.
For a detailed list take a look here: http://harmattan-dev.nokia.com/docs/library/html/guide/html/Developer_Library_Developing_for_Harmattan_Harmattan_security_Security_guide_Harmattan_APIs_that_require_credentials.html
Create the manifest.aegis file your own in qtc_packaging/debian_harmattan and be prepared the file gets cleared. So store a copy of it somewhere or use a versioning system. Check the file contents before packaging :)
Finally I remembered where I have found about aegis: http://www.developer.nokia.com/Community/Wiki/Harmattan:Developer_Library/Developing_for_Harmattan/Harmattan_security/Security_guide/Aegis_manifest_file_generation_tool
It is in the Harmattan section of developer.nokia.com not on the developer network. I think this link may be helpful for you.
@gri: It is the second time that someone of us tells it to @mismael :) Seems that we are discussing alone :D
The developer.nokia.com site is much older than the harmattan-dev site. It also contains no reference to the list of credentials and is less structured in my point of view :) So it is not the same for me.
Edit: Ok, I was wrong, it has detailed information but different :) So it’s better to look at both of them.
I tried to put the aegis file while qt creator packaging the application and i used the following credentials in it
- <aegis>
- <request>
- <credential name="TrackerReadAccess" />
- <credential name="TrackerWriteAccess" />
- <credential name="GRP::metadata-users" />
- <credential name="GRP::pulse-access" />
- <credential name="GRP::video" />
- <credential name="mce::DeviceModeControl" />
- <credential name="mce::TKLockControl" />
- <for path="/usr/bin/userdatamanager" />
- </request>
- </aegis>
but still the application does not execute because of the credentials.
Do you run the application with debugger attached or without? On the N950 beta1 firmware, there was an error where the applications’ credentials are lost when running with debugger.
I don’t know exactly which version the emulator is running. If the application works without the debugger, this may be the same.
In this case you would need to:
- Login as developer via ssh
- Execute “cat /etc/passwd | grep developer” and see if you read /bin/sh or /bin/develsh
- If there is /bin/sh, become root and open “/etc/shells” with an editor, add “/bin/develsh”
- Become developer again and run “chsh”, choose “/bin/develsh”
You must log in to post a reply. Not a member yet? Register here!




