Integration with gnome-software



Hi all,

I'm building a plugin for gnome-software so we can do system upgrades
of an atomic workstation for Fedora 25 (using rpm-ostree). GNOME
Software (and the desktop generally) has some quite different
requirements compared to the cloud image and so I wanted to ask for
help before I jumped right in.

I'd appreciate some advice on how to do the following:

* List the user-visible name for the remote, i.e. something like
"Fedora Workstation" rather than just the ID from
ostree_repo_remote_list(). If this isn't available anywhere we can
just hardcode something (e.g. fedora-atomic-workstation -> _("Fedora
Workstation")) but I know xdg-app has something like this in the
summary file.

* Get the *default* remote for the system (this is just the first in
the list, right?)

* Get the packages installed that make up the currently running system
(e.g. kernel-1.2.3, glibc-1.3.2, gnome-shell-3.20.0) -- using rpm
would be fine of course, but wouldn't be an awesome dep and it would
be much more awesome to just query a daemon or read a file.

* Download all the required commits for the newest version of a
specific remote *without* actually committing (so we can download when
the session is idle) -- also with progress and cancellability (we
auto-cancel the background download if the session goes non-idle).

* Display all the package names of all the updates in the
downloaded-but-not-staged commits (so we can ask the user to show the
update info in the UI) - hiding anything that's not been downloaded.

* Rebase *without* actually rebooting automatically (note: we'd need
progress notifications and cancellability if this is going to take
more than a couple of seconds)

gnome-software isn't running privileged, and so any root-requiring
actions would need to go through rpm-ostreed. Any help welcome,
thanks.

Richard


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]