Some distros retain config files after removing packages, so /etc/olpc-security
might exist even if rainbow is not installed.
Signed-off-by: Sascha Silbe <sascha@silbe.org>
Future extensions:
a) we are now able to reliably detect when an activity's main process has
exited. We should take advantage of this to give better feedback on activity
crashes; e.g. by turning the frame's activity-icon into an error icon and by
inserting the activity's log into the datastore so that it appears in the
Journal.
b) in the future, I'd like rainbow to provide more narrow interfaces for
manipulating jails; e.g. for garbage-collecting them, nuking their contents, or
for reusing them. Please consider this an invitation to show me which interfaces
would work best for Sugar.
P.S. - Thanks to Sascha Silbe for testing and for improvements to this patch.
Threads and signals don't get along too well together. Instead, use
gobject's spawn_async functionality which already has the necessary zombie-
reaping integrated into the gobject event loop.