1 votes

Fedora : Lancer l'installation graphique du paquet

Je suis en train de créer une application graphique qui, lors de la première exécution, vérifie si tous les logiciels nécessaires sont installés (s'il vous plaît, ne répondez pas au sujet des dépendances deb/rpm). La propre application (en Python) détecte si l'application tourne sous Ubuntu ou Fedora. Si l'application est sous Ubuntu, je lance cette commande pour installer les paquets nécessaires :

apturl apt://xdotool

Il lance une boîte de dialogue demandant à l'utilisateur s'il souhaite l'installer, puis lui demande son mot de passe :

Dialogue Box-Image

Existe-t-il une commande similaire dans Fedora (bien sûr, dans une installation de bureau de base) ?

0voto

mattdm Points 2638

Vous devez utiliser PackageKit pour ce faire. A partir de ce site, voici une version légèrement modifiée du code d'exemple pour Python :

import dbus

try:
    bus = dbus.SessionBus()
except dbus.DBusException, e:
    print 'Unable to connect to dbus: %s' % str(e)
    sys.exit()
try:
    proxy = bus.get_object('org.freedesktop.PackageKit', '/org/freedesktop/PackageKit')
    iface = dbus.Interface(proxy, 'org.freedesktop.PackageKit.Modify')
    iface.InstallPackageNames(dbus.UInt32(0), ["xdotool","otherpackage","whatever"], "show-confirm-search,hide-finished")
except dbus.DBusException, e:
    print 'Unable to use PackageKit: %s' % str(e)

Bonus ! Cela devrait fonctionner sous GNOME sur à la fois Fedora et Ubuntu.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X