Richard Hughes ([info]hughsient) wrote,
@ 2008-03-28 01:50:00
Previous Entry  Add to memories!  Tell a Friend!  Next Entry
ServicePack : User Interface
Quite a common use case for Linux is where PC's are installed on computers without internet access, or where internet access is very expensive.

So, enter PackageKit. You insert a CDROM or USB pendrive with updates on. The following UI appears:



You click "yes" and then the update icon appears as if you were online. You click "Update system" and then the update proceeds as if you were online.

Plus, because the local media is an actual repo, you can also use the Add/Remove software tool as normal.

Nothing is in git master yet, although I've got a local branch that I'll probably merge after 0.1.10 is released.

Comments appreciated.


(Post a new comment)

Some improvements
[info]rahulsundaram
2008-03-28 03:48 am UTC (link)
I insert media and I would like to view the package updates before confirming that I trust it. Can you change the UI to support that?

Sometimes I just need to distribute a set of packages to a friend that does not have a net connection. It is not a service package (ie) a set of updates to existing software. You probably shouldn't call it a service pack in that case.

(Reply to this)

... and also some higgy advice ;-)
[info]davidz25
2008-03-28 03:57 am UTC (link)
Already gave you comments about the implementation on the list. And FWIW, I agree Service Pack is an awful name. Call it what it is "Update Media".

Why the question about trust and authenticity? Surely just rely on the packages being signed. This would mean that you'd need to fix the GPG key import problem first [1]. But you'd need to do that _anyway_ for PackageKit to be remotely useful. Certainly, in my opinion, something like that is of _much_ greater importance than messing around with Service Packs. Run before you can walk, stuff like that.

[1] : I tried installing the Livna release RPM on a virgin F9 beta system the other day. From Firefox it opened PackageKit. So far so good. However, PackageKit gave me a less than helpful/useful modal dialog saying something about the GPG key not being known. The only button I could use press was "OK". Nothing happened.


Btw according to the HIG, the buttons would probably look something like this

[Help] [Cancel] [Add Media]

(Reply to this)(Thread)

Re: ... and also some higgy advice ;-)
[info]davidz25
2008-03-28 04:00 am UTC (link)
Eh.. walk before you can run. (I always get this wrong.)

And there's suppose to be a bunch of space between [Help] and [Cancel] but LJ thinks it's smarter than me so it removed the extra white-space. Annoying.

(Reply to this)(Parent)

Re: ... and also some higgy advice ;-)
[info]kevin_kofler
2008-03-28 04:09 am UTC (link)
You should also use gtk_dialog_set_alternative_button_order so KDE users get the button order they expect (as you need to specify it: FYI, that would be [Help] ___ [Add Media] [Cancel]).

Unfortunately, this very useful function is highly underused in GTK+ apps.

(Reply to this)(Parent)(Thread)

Re: ... and also some higgy advice ;-)
[info]loupgaroublond
2008-03-28 08:40 pm UTC (link)
Apparently, QT needs this love too. I hate how QT programs think they know better than me, in gnome.

(Reply to this)(Parent)(Thread)

Re: ... and also some higgy advice ;-)
[info]kevin_kofler
2008-03-28 09:16 pm UTC (link)
Qt 4 with the Cleanlooks style will automatically reorder the buttons to follow the GNOME HIG (assuming the button roles are set sensibly, but usually the defaults are fine), at least for Qt's own classes (not sure how KDE 4 apps react).

(Reply to this)(Parent)(Thread)

Re: ... and also some higgy advice ;-)
[info]loupgaroublond
2008-03-28 09:29 pm UTC (link)
great to know then :)

(Reply to this)(Parent)

What about signing?
[info]chiui
2008-03-28 09:30 am UTC (link)
Why are you asking if a media is trusted?
You could just check the gpg signatures on the rpms before applying the upgrades.

(Reply to this)(Thread)

Re: What about signing?
[info]ebel
2008-03-28 01:29 pm UTC (link)
I agree. 'You should check the authenicity of the media' is unhelpful. How do I check the authencity?

(Reply to this)(Parent)(Thread)

Re: What about signing?
[info]hub_
2008-03-28 04:01 pm UTC (link)
by praying $DEITY :-)


(I was about to make the same comment)

(Reply to this)(Parent)


[info]schmexygeek
2008-03-28 11:59 am UTC (link)
It would be nicer to skip the "Do you trust this media" if the rpms were signed and the keys for it were already loaded. In the case of fedora, you might be able to check /etc/pki. If the key exists there, chances are it is ok.

(Reply to this)

SP
[info]mmahut
2008-03-28 12:01 pm UTC (link)
I would also suggest to change the name "Service Pack".

(Reply to this)(Thread)

Re: SP
[info]hughsient
2008-03-28 12:16 pm UTC (link)
Sure, it can be set by whatever user prepared the update media. The current format of the file is this:

[PackageKit]
Encoding=UTF-8
DistroID=fedora-8-i686
Location=fedora/updates
Name=Fedora 9 Service Pack 4
Comment=Updates Fedora 9 with the latest security and important updates
Icon=fedora-logo-icon
Type=service-pack
Author=Richard Hughes <richard@hughsie.com>

(Reply to this)(Parent)

If you are going to ask...
[info]jasondclinton
2008-03-28 02:53 pm UTC (link)
Can we kill of "Yes/No" buttons, please? Should be "I Trust" or "Abort".

(Reply to this)(Thread)

Re: If you are going to ask...
[info]hub_
2008-03-28 04:02 pm UTC (link)
Abort / Retry / Ignore


So that it be familiar with the other universe.

(Reply to this)(Parent)

Please streamline the user interaction
[info]rtcm
2008-03-28 03:27 pm UTC (link)
As people have already said you should fix the button positions and text labels. Besides that,

"
You click "yes" and then the update icon appears as if you were online. You click "Update system" and then the update proceeds as if you were online.
"
Why make the user go through another click? And worse a click on an (to the user) unrelated place (an icon in the panel). If the user inserted the media they probably want to go ahead and install it after having said they trust it so bring up the update list right away please.

Otherwise the idea seems nice!

(Reply to this)


[info]groks
2008-03-29 12:36 am UTC (link)
Here's a scenario:

Magazines often ship a cover DVD. Updates are likely to be less than a full distro, so it would be nice if towards the end of the 6 month life cycle a bunch of updates for Fedora, Ubuntu, Suse etc. were shipped on the same media.

The user would insert the DVD and if they were running Fedora, PackageKit would find and show only the Fedora updates, and so on depending on the distro.

It would also be a nice touch if when a user inserts update media which doesn't match their system, either because it's for Ubuntu and they're running Fedora, or because it's for F8 and they're running F9, PackageKit would recognise this and tell them what's up.

'236 Ubuntu updates found. Not applicable for Fedora 8'

etc.


Thinking about it a bit more, is there a role for this mechanism in distro upgrades? What happens if you're running F8 and you install an F9 DVD?

PackageKit doesn't have to do a live upgrade (unsupported in Fedora), but it could do a bit of hand-holding: it could verify that this is a valid upgrade path (F8 -> F9) and tell the user to reboot; it could copy the rpms to the hard drive before rebooting, to minimise downtime; it could depsolve before rebooting and realise that the madwifi driver from the livna repository should be cached.


I mention these because I guess you either need to support multiple PackageKit files in the media root, or you need to support a PackageKit file format that can handle multiple sets of updates.

(Reply to this)


Create an Account
Forgot your login?
Login w/ OpenID
English • Español • Deutsch • Русский…