maemo.org - Talk

maemo.org - Talk (https://talk.maemo.org/index.php)
-   MeeGo / Harmattan (https://talk.maemo.org/forumdisplay.php?f=45)
-   -   N9 Uninstall scripts (https://talk.maemo.org/showthread.php?t=90075)

tortoisedoc 2013-05-11 21:45

N9 Uninstall scripts
 
So, I have made this service app.
And I have my prerm / postinstall scripts working fine from Qt Creator.

Butbut!
When uninstalling the app from the device, it says
"Application still running, cannot install" (or something similar).

Now, looking a bit around got me to this :

http://www.developer.nokia.com/Commu...ips_and_Tricks

where they say that:

Quote:

The system does not close the application running on the background when the user uninstalls the application. If the application needs to handle these situations gracefully a preremove/postremove script needs to be used. <more information later>
Gotta love the <more information later> part.

Anyone has solved the issue?

EDIT : FYI, I followed the instructions found here :
http://meegoharmattandev.blogspot.fi...ackground.html
for the prerm / postinstall scripts.

rainisto 2013-05-11 22:00

Re: N9 Uninstall scripts
 
Does your daemon run as root or user? Ie have you ensured that your kill command run as root if your daemon runs as root? That can be done with aegis manifest.

tortoisedoc 2013-05-11 23:01

Re: N9 Uninstall scripts
 
This is my upstart .conf file command:

exec /usr/bin/aegis-exec -s -u user /opt/debota/lancia


as devel-su,
start/stop apps/debota_daemon

works flawlessy.

Also, installing not from QtCreator, but from .deb package via download works (as in, app is started after install thanks to postinst script as expected).

But upon uninstall, it fails.
It is as if the prerm script would not be there.

How to check?

tortoisedoc 2013-05-13 04:44

Re: N9 Uninstall scripts
 
*BUMP*
an update; apparently, the process is killed no problem if assigned to "nobody".

So problem seems to actually be linked to forcing the daemon into user / users via aegis (as instructed by the above link, same place where i got the postinst / prerm scripts from):

<credential name="UID::user" />
<credential name="GID::users" />

Thought the package daemon runs as root??

ajalkane 2013-05-13 17:41

Re: N9 Uninstall scripts
 
Are you sure you didn't have the application UI open (ie. the non-daemon part) when uninstalling?

That's when I have gotten that message. There's been no problem stopping the daemon part.

Running as "nobody" is usually not a good idea, at least it caused me problems. But depending on what the daemon is doing, it may be harmless.

Uninstalling applications runs as root.

tortoisedoc 2013-05-16 00:51

Re: N9 Uninstall scripts
 
Ooook!
So, yes, my daemon is actually an app (!) and yes, it has a window.

So, daemon is no go.

How about prestart / Applifed ? It seems the best alternative, but according to harmattan official docs /etc/prestart is *NOT* in the nokia QA path exception list - does this mean that making my app prestartable will invalidate it automagically for nokia store?

Any help on this?? PLEASE!

tortoisedoc 2013-05-16 04:05

Re: N9 Uninstall scripts
 
Nevermind, found my info.
File is part of system integration, therefore cannot be modified.
Unfortunately, this request was not even considered by Nokia so it seems the applifed daemon only relies on nokia.conf which is LAME. :(

rainisto 2013-05-16 07:20

Re: N9 Uninstall scripts
 
What problem are you trying to solve by doing prestart? You can just kill the ui part from the script too.

tortoisedoc 2013-05-16 08:28

Re: N9 Uninstall scripts
 
Quote:

Originally Posted by rainisto (Post 1343973)
What problem are you trying to solve by doing prestart? You can just kill the ui part from the script too.

I want my app to start on boot (preferably with the prestarted apps and before the user can interact with the homeview); of course there is upstart, but upstart is started after the -prestart's (which is not really optimal, as it makes my ui not available straight away); so I was keeping it as a (very not wanted) backup solution; and whilst testing it prevently, I encountered the problem during the deinstallation mentioned above.

Applifed would have been perfect solution, for the starting on boot (but once again meh nokia :(), but for the uninstalling maybe things are different.

ajalkane 2013-05-16 12:28

Re: N9 Uninstall scripts
 
Quote:

Originally Posted by tortoisedoc (Post 1343990)
I want my app to start on boot (preferably with the prestarted apps and before the user can interact with the homeview); of course there is upstart, but upstart is started after the -prestart's (which is not really optimal, as it makes my ui not available straight away); so I was keeping it as a (very not wanted) backup solution; and whilst testing it prevently, I encountered the problem during the deinstallation mentioned above.

Applifed would have been perfect solution, for the starting on boot (but once again meh nokia :(), but for the uninstalling maybe things are different.

You could probably do it in open mode or using inception, but then no-dice getting the application to Nokia Store.

Apart from that, using Upstart is AFAIK the only possibility.


All times are GMT. The time now is 15:53.

vBulletin® Version 3.8.8