Commit Graph

25 Commits

Author SHA1 Message Date
Fabio Erculiani 89b114f005 [Rigo*] implement mirrors optimization feature, see bug #3438 2012-08-03 16:26:52 +02:00
Fabio Erculiani b5b8d25297 [RigoDaemon] add support for Action Queue "introspection" (in a MVCC way)
The new action_queue_items() is able to return the internal
Action Queue status without blocking while returning a consistent
state. This method will be used by Rigo to list the Action Queue
activity on the bottom notification box.
2012-07-31 16:35:38 +02:00
Fabio Erculiani b29764443b [Rigo] implement Repository management 2012-07-01 23:41:07 +02:00
Fabio Erculiani 375ec06f60 [RigoDaemon] make the dbus service executable source /etc/profile 2012-04-17 20:31:24 +02:00
Fabio Erculiani 161f5205d8 [RigoDaemon/Rigo] implement Notice Board support (woot) 2012-04-10 23:37:22 +02:00
Fabio Erculiani d35d827fc7 [RigoDaemon/Rigo] move startup updates calculation and repo validation to RigoDaemon
Calling RigoDaemon.hello() triggers several welcome signals from
RigoDaemon itself, such as updates availability, repositories aging
and repositories unavailability. This way, Rigo is completely unloaded
with beneficial effects wrt responsiveness.
2012-04-09 22:39:47 +02:00
Fabio Erculiani e68268abe2 [RigoDaemon/Rigo] Add support for .etp and .tbz2 package files installation 2012-04-09 15:38:31 +02:00
Fabio Erculiani 415c5af799 [RigoDaemon] complete configuration file updates implementation 2012-04-08 18:13:09 +02:00
Fabio Erculiani 8a34b071b0 [Rigo/RigoDaemon] partially implement configuration file updates management 2012-04-07 19:33:28 +02:00
Fabio Erculiani d845fce5a3 [RigoDaemon] make possible to interrupt the Application Management activity 2012-04-05 17:09:41 +02:00
Fabio Erculiani f716248e91 [RigoDaemon] wrap the dbus service executable around a script, source /etc/env.d/02locale 2012-04-02 15:18:53 +02:00
Fabio Erculiani 0640d7ee43 [RigoDaemon] enable daemon logging by default 2012-04-01 19:05:46 +02:00
Fabio Erculiani 3a43bb7e13 [RigoDaemon] integrate with build system 2012-04-01 01:18:30 +02:00
Fabio Erculiani e35b225d26 [Rigo/RigoDaemon] implement basic support to System Upgrade 2012-03-30 17:15:56 +02:00
Fabio Erculiani 0c506f5164 [RigoDaemon/Rigo] first chunk of App management code (install action only, incomplete) 2012-03-27 18:15:11 +02:00
Fabio Erculiani 72def71a07 [Rigo/RigoDaemon] implement Application License management 2012-03-25 18:02:54 +02:00
Fabio Erculiani abdb7dc53f [RigoDaemon] add reload() Dbus method
reload() is going to be used during RigoDaemon package
upgrade to kindly ask the Dbus service to reload itself as soon as
no more clients are connected.
2012-03-24 20:12:29 +01:00
Fabio Erculiani a3d82ff44f [RigoDaemon] expose daemon API version to Rigo 2012-03-24 19:53:08 +01:00
Fabio Erculiani 47b9570224 [Rigo] implement centralized Application transaction state 2012-03-24 16:07:39 +01:00
Fabio Erculiani 1c8872d610 [RigoDaemon] add action_queue_length() dbus method 2012-03-20 19:43:29 +01:00
Fabio Erculiani b400b4bfea [RigoDaemon] rename is_exclusive() to exclusive() 2012-03-19 21:32:26 +01:00
Fabio Erculiani 5f63057c05 [Rigo/RigoDaemon] first chunk of code related to Application Management, WIP 2012-03-18 18:32:26 +01:00
Fabio Erculiani efde0c2ec3 [Rigo/RigoDaemon] greatly simplify resource passing rendezvous
Completely move the arbitration to RigoDaemon, making Rigo passively
accepting the former requests.
Moreover, complete support for bottom notification area and start
implementing app management events.
2012-03-18 07:57:57 +01:00
Fabio Erculiani b2f3bd5b8c [Rigo*] fifth daemon architectural design
- Introduce Activity states and busy(), unbusy() methods to allocate
and deallocate Daemon activities from the Clients, concurrently.

- Tokenize acquire_resources() and release_resources() to filter out
older events. The same token is returned to Clients via signals whenever
it makes sense (repositories_updated() is one of them).

- Implement Repositories Update Activity resume functionality in Rigo.
It is possible to close Rigo during a repo update and reopen it afterwards.
Multiple Rigo instances are allowed as well.

- Implement the ability for RigoDaemon to kindly request Rigo Clients
to release their locks (either shared or exclusive) due to new activity
being scheduled.

All the races and possible deadlocks should be handled correctly,
but due to the actual complexity, only time will tell.
2012-03-14 17:47:34 +01:00
Fabio Erculiani 6a4da6c261 [rigo] fifth architectural design iteration, things should work now 2012-03-13 16:05:40 +01:00