<?xml version="1.0"?><!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN" "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd">
<refentry id="PackageKit">
  <refmeta>
    <refentrytitle role="top_of_page">org.freedesktop.PackageKit</refentrytitle>
  </refmeta>
  <refnamediv>
    <refname>org.freedesktop.PackageKit</refname>
    <refpurpose>PackageKit interface</refpurpose>
  </refnamediv>
  <refsynopsisdiv role="synopsis">
    <title role="synopsis.title">Methods</title>
    <synopsis><link linkend="PackageKit.CanAuthorize">CanAuthorize</link>       (in  's'          action_id,
                    out 'u'          result)
<link linkend="PackageKit.CreateTransaction">CreateTransaction</link>  (out 'o'          object_path)
<link linkend="PackageKit.GetTimeSinceAction">GetTimeSinceAction</link> (in  'u'          role,
                    out 'u'          seconds)
<link linkend="PackageKit.GetTransactionList">GetTransactionList</link> (out 'ao'         transactions)
<link linkend="PackageKit.StateHasChanged">StateHasChanged</link>    (in  's'          reason)
<link linkend="PackageKit.SuggestDaemonQuit">SuggestDaemonQuit</link>  ()
<link linkend="PackageKit.GetPackageHistory">GetPackageHistory</link>  (in  'as'         names,
                    in  'u'          count,
                    out 'a{saa{sv}}' history)
<link linkend="PackageKit.GetDaemonState">GetDaemonState</link>     (out 's'          state)
<link linkend="PackageKit.SetProxy">SetProxy</link>           (in  's'          proxy_http,
                    in  's'          proxy_https,
                    in  's'          proxy_ftp,
                    in  's'          proxy_socks,
                    in  's'          no_proxy,
                    in  's'          pac)
<link linkend="PackageKit.ClearResults">ClearResults</link>       ()
<link linkend="PackageKit.Trigger">Trigger</link>            (in  's'          action)
<link linkend="PackageKit.TriggerUpgrade">TriggerUpgrade</link>     (in  's'          action)
<link linkend="PackageKit.Cancel">Cancel</link>             ()
<link linkend="PackageKit.GetPrepared">GetPrepared</link>        (out 'as'         package_ids)
</synopsis>
  </refsynopsisdiv>
  <refsect1 role="signal_proto">
    <title role="signal_proto.title">Signals</title>
    <synopsis><link linkend="PackageKit::TransactionListChanged">TransactionListChanged</link> ('as' transactions)
<link linkend="PackageKit::RestartSchedule">RestartSchedule</link>        ()
<link linkend="PackageKit::RepoListChanged">RepoListChanged</link>        ()
<link linkend="PackageKit::UpdatesChanged">UpdatesChanged</link>         ()
</synopsis>
  </refsect1>
  <refsect1 role="impl_interfaces">
    <title role="impl_interfaces.title">Implemented Interfaces</title>
    <para>org.freedesktop.PackageKit implements
    org.freedesktop.DBus.Introspectable,
    org.freedesktop.DBus.Properties
    </para>
  </refsect1>
  <refsect1 role="properties">
    <title role="properties.title">Properties</title>
    <synopsis><link linkend="PackageKit:VersionMajor">'VersionMajor'</link>       read      'u'
<link linkend="PackageKit:VersionMinor">'VersionMinor'</link>       read      'u'
<link linkend="PackageKit:VersionMicro">'VersionMicro'</link>       read      'u'
<link linkend="PackageKit:BackendName">'BackendName'</link>        read      's'
<link linkend="PackageKit:BackendDescription">'BackendDescription'</link> read      's'
<link linkend="PackageKit:BackendAuthor">'BackendAuthor'</link>      read      's'
<link linkend="PackageKit:Roles">'Roles'</link>              read      't'
<link linkend="PackageKit:Groups">'Groups'</link>             read      't'
<link linkend="PackageKit:Filters">'Filters'</link>            read      't'
<link linkend="PackageKit:MimeTypes">'MimeTypes'</link>          read      'as'
<link linkend="PackageKit:Locked">'Locked'</link>             read      'b'
<link linkend="PackageKit:NetworkState">'NetworkState'</link>       read      'u'
<link linkend="PackageKit:DistroId">'DistroId'</link>           read      's'
<link linkend="PackageKit:UpdatePrepared">'UpdatePrepared'</link>     read      'b'
<link linkend="PackageKit:UpdateTriggered">'UpdateTriggered'</link>    read      'b'
<link linkend="PackageKit:UpgradePrepared">'UpgradePrepared'</link>    read      'b'
<link linkend="PackageKit:UpgradeTriggered">'UpgradeTriggered'</link>   read      'b'
<link linkend="PackageKit:PreparedUpgrade">'PreparedUpgrade'</link>    read      'a{sv}'
<link linkend="PackageKit:TriggerAction">'TriggerAction'</link>      read      's'
</synopsis>
  </refsect1>
  <refsect1 role="desc">
    <title role="desc.title">Description</title>
    <para>
      
        <para>
          The root interface is used for interacting with the daemon.
        </para>
      
    
      
        <para>
          The interface used for interacting with offline actions.
        </para>
      
    </para>
  </refsect1>
  <refsect1 role="details"><title role="details.title">Details</title><refsect2><title><anchor role="function" id="PackageKit.CanAuthorize"/>CanAuthorize ()</title><indexterm><primary>CanAuthorize</primary><secondary>PackageKit</secondary></indexterm><programlisting>CanAuthorize (in  's' action_id,
              out 'u' result)</programlisting></refsect2>
          <para>
            Allows a client to find out if it would be allowed to authorize an action.
          </para>
        <variablelist role="params"><varlistentry><term><parameter>action_id</parameter>:</term><listitem><simpara>
            
              The action ID, e.g. org.freedesktop.packagekit.system-network-proxy-configure
            
          </simpara></listitem></varlistentry><varlistentry><term><parameter>result</parameter>:</term><listitem><simpara>
            
              The result, either yes, no or interactive.
            
          </simpara></listitem></varlistentry></variablelist><refsect2><title><anchor role="function" id="PackageKit.CreateTransaction"/>CreateTransaction ()</title><indexterm><primary>CreateTransaction</primary><secondary>PackageKit</secondary></indexterm><programlisting>CreateTransaction (out 'o' object_path)</programlisting></refsect2>
          <para>
            Creates a new transaction that can have operations done on
            it.
            Note: The dameon will automatically destroy this transaction
            if it is not used after a few minutes.
          </para>
        <variablelist role="params"><varlistentry><term><parameter>object_path</parameter>:</term><listitem><simpara>
            
              The object_path, e.g. /45_dafeca
            
          </simpara></listitem></varlistentry></variablelist><refsect2><title><anchor role="function" id="PackageKit.GetTimeSinceAction"/>GetTimeSinceAction ()</title><indexterm><primary>GetTimeSinceAction</primary><secondary>PackageKit</secondary></indexterm><programlisting>GetTimeSinceAction (in  'u' role,
                    out 'u' seconds)</programlisting></refsect2>
          <para>
            This method allows us to query how long since an action has successfully completed.
          </para>
        <variablelist role="params"><varlistentry><term><parameter>role</parameter>:</term><listitem><simpara>
            
              The role enum, e.g. update-system
            
          </simpara></listitem></varlistentry><varlistentry><term><parameter>seconds</parameter>:</term><listitem><simpara>
            
              The amount of time in seconds
            
          </simpara></listitem></varlistentry></variablelist><refsect2><title><anchor role="function" id="PackageKit.GetTransactionList"/>GetTransactionList ()</title><indexterm><primary>GetTransactionList</primary><secondary>PackageKit</secondary></indexterm><programlisting>GetTransactionList (out 'ao' transactions)</programlisting></refsect2>
          <para>
            Gets the transaction list of any transactions that are in progress
          </para>
        <variablelist role="params"><varlistentry><term><parameter>transactions</parameter>:</term><listitem><simpara>
            
              A list of transaction ID's
            
          </simpara></listitem></varlistentry></variablelist><refsect2><title><anchor role="function" id="PackageKit.StateHasChanged"/>StateHasChanged ()</title><indexterm><primary>StateHasChanged</primary><secondary>PackageKit</secondary></indexterm><programlisting>StateHasChanged (in  's' reason)</programlisting></refsect2>
          <para>
            This method suggests to PackageKit that the package backend state may have changed.
            This allows plugins to the native package manager to suggest that PackageKit drops
            it's caches.
          </para>
        <variablelist role="params"><varlistentry><term><parameter>reason</parameter>:</term><listitem><simpara>
            
              The reason of the state change. Valid reasons are resume or
              posttrans.
              Resume is given a lower priority than posttrans.
            
          </simpara></listitem></varlistentry></variablelist><refsect2><title><anchor role="function" id="PackageKit.SuggestDaemonQuit"/>SuggestDaemonQuit ()</title><indexterm><primary>SuggestDaemonQuit</primary><secondary>PackageKit</secondary></indexterm><programlisting>SuggestDaemonQuit ()</programlisting></refsect2>
          <para>
            Suggests to the daemon that it should quit as soon as possible, for instance if a native
            package management tool is waiting to be used.
          </para>
        <variablelist role="params"/><refsect2><title><anchor role="function" id="PackageKit.GetPackageHistory"/>GetPackageHistory ()</title><indexterm><primary>GetPackageHistory</primary><secondary>PackageKit</secondary></indexterm><programlisting>GetPackageHistory (in  'as'         names,
                   in  'u'          count,
                   out 'a{saa{sv}}' history)</programlisting></refsect2>
          <para>
            Gets the history for a given package name.
            This uses the internal PackageKit history database and will not
            return transactions done outside of PackageKit using a distribution
            native tool.
          </para>
        <variablelist role="params"><varlistentry><term><parameter>names</parameter>:</term><listitem><simpara>
            
              The package names to return history for, e.g. [ colord ].
            
          </simpara></listitem></varlistentry><varlistentry><term><parameter>count</parameter>:</term><listitem><simpara>
            
              The maximum number of past transactions to return, or 0 for no limit.
            
          </simpara></listitem></varlistentry><varlistentry><term><parameter>history</parameter>:</term><listitem><simpara>
            
              The list of actions performed on this package. The array may contain
              the following keys of types:
              info[uint],
              user-id[uint],
              version[string],
              source[string],
              timestamp[uint64].
              Other keys and values may be added in the future.
            
          </simpara></listitem></varlistentry></variablelist><refsect2><title><anchor role="function" id="PackageKit.GetDaemonState"/>GetDaemonState ()</title><indexterm><primary>GetDaemonState</primary><secondary>PackageKit</secondary></indexterm><programlisting>GetDaemonState (out 's' state)</programlisting></refsect2>
          <para>
            Gets the debugging state from the daemon.
            No secure state will be shown, and all information is for reference only.
          </para>
        <variablelist role="params"><varlistentry><term><parameter>state</parameter>:</term><listitem><simpara>
            
              The state of the dameon at this specific moment.
            
          </simpara></listitem></varlistentry></variablelist><refsect2><title><anchor role="function" id="PackageKit.SetProxy"/>SetProxy ()</title><indexterm><primary>SetProxy</primary><secondary>PackageKit</secondary></indexterm><programlisting>SetProxy (in  's' proxy_http,
          in  's' proxy_https,
          in  's' proxy_ftp,
          in  's' proxy_socks,
          in  's' no_proxy,
          in  's' pac)</programlisting></refsect2>
          <para>
            Sets the proxy used by the dameon.
          </para>
        <variablelist role="params"><varlistentry><term><parameter>proxy_http</parameter>:</term><listitem><simpara>
            
              The HTTP proxy, e.g. username:password@server:port.
            
          </simpara></listitem></varlistentry><varlistentry><term><parameter>proxy_https</parameter>:</term><listitem><simpara>
            
              The HTTPS proxy, e.g. username:password@server:port.
            
          </simpara></listitem></varlistentry><varlistentry><term><parameter>proxy_ftp</parameter>:</term><listitem><simpara>
            
              The FTP proxy, e.g. username:password@server:port.
            
          </simpara></listitem></varlistentry><varlistentry><term><parameter>proxy_socks</parameter>:</term><listitem><simpara>
            
              The SOCKS proxy, e.g. username:password@server:port.
            
          </simpara></listitem></varlistentry><varlistentry><term><parameter>no_proxy</parameter>:</term><listitem><simpara>
            
              The comma seporated list of sites to not use the proxy for, e.g.
              127.0.0.1,localmirror.org.
            
          </simpara></listitem></varlistentry><varlistentry><term><parameter>pac</parameter>:</term><listitem><simpara>
            
              The PAC file for the proxy, e.g.
              /etc/network/school.pac.
              Note: Most backends will not be able to use a PAC file.
            
          </simpara></listitem></varlistentry></variablelist><para role="permission">Callers need the org.freedesktop.packagekit.set-proxy</para><refsect2><title><anchor role="function" id="PackageKit.ClearResults"/>ClearResults ()</title><indexterm><primary>ClearResults</primary><secondary>PackageKit</secondary></indexterm><programlisting>ClearResults ()</programlisting></refsect2>
          <para>
            Clears the offline update results store.
          </para>
        <variablelist role="params"/><refsect2><title><anchor role="function" id="PackageKit.Trigger"/>Trigger ()</title><indexterm><primary>Trigger</primary><secondary>PackageKit</secondary></indexterm><programlisting>Trigger (in  's' action)</programlisting></refsect2>
          <para>
            Triggers the offline update for next boot.
          </para>
        <variablelist role="params"><varlistentry><term><parameter>action</parameter>:</term><listitem><simpara>
            
              The action to take when finished applying updates, known values
              are power-off and reboot.
            
          </simpara></listitem></varlistentry></variablelist><refsect2><title><anchor role="function" id="PackageKit.TriggerUpgrade"/>TriggerUpgrade ()</title><indexterm><primary>TriggerUpgrade</primary><secondary>PackageKit</secondary></indexterm><programlisting>TriggerUpgrade (in  's' action)</programlisting></refsect2>
          <para>
            Triggers the offline system upgrade for next boot.
          </para>
        <variablelist role="params"><varlistentry><term><parameter>action</parameter>:</term><listitem><simpara>
            
              The action to take when finished installing the system upgrade, known values
              are power-off and reboot.
            
          </simpara></listitem></varlistentry></variablelist><refsect2><title><anchor role="function" id="PackageKit.Cancel"/>Cancel ()</title><indexterm><primary>Cancel</primary><secondary>PackageKit</secondary></indexterm><programlisting>Cancel ()</programlisting></refsect2>
          <para>
            Cancels the offline update so the next boot procceeds as normal.
          </para>
        <variablelist role="params"/><refsect2><title><anchor role="function" id="PackageKit.GetPrepared"/>GetPrepared ()</title><indexterm><primary>GetPrepared</primary><secondary>PackageKit</secondary></indexterm><programlisting>GetPrepared (out 'as' package_ids)</programlisting></refsect2>
          <para>
            Returns the list of prepared updates.
          </para>
        <variablelist role="params"><varlistentry><term><parameter>package_ids</parameter>:</term><listitem><simpara>
            
              An array of package IDs.
            
          </simpara></listitem></varlistentry></variablelist></refsect1>
  <refsect1 role="signals"><title role="signals.title">Signal Details</title><refsect2><title><anchor role="function" id="PackageKit::TransactionListChanged"/>The TransactionListChanged signal</title><indexterm><primary>TransactionListChanged</primary><secondary>PackageKit</secondary></indexterm><programlisting>TransactionListChanged ('as' transactions)</programlisting></refsect2>
          <para>
            The transaction list has changed, because either a transaction has finished or a new
            transaction created.
          </para>
        <variablelist role="params"><varlistentry><term><parameter>transactions</parameter>:</term><listitem><simpara>
            
              A list of transaction ID's.
            
          </simpara></listitem></varlistentry></variablelist><refsect2><title><anchor role="function" id="PackageKit::RestartSchedule"/>The RestartSchedule signal</title><indexterm><primary>RestartSchedule</primary><secondary>PackageKit</secondary></indexterm><programlisting>RestartSchedule ()</programlisting></refsect2>
          <para>
            A system restart has been sceduled
          </para>
        <variablelist role="params"/><refsect2><title><anchor role="function" id="PackageKit::RepoListChanged"/>The RepoListChanged signal</title><indexterm><primary>RepoListChanged</primary><secondary>PackageKit</secondary></indexterm><programlisting>RepoListChanged ()</programlisting></refsect2>
          <para>
            This signal is emitted when the repository list has changed
          </para>
        <variablelist role="params"/><refsect2><title><anchor role="function" id="PackageKit::UpdatesChanged"/>The UpdatesChanged signal</title><indexterm><primary>UpdatesChanged</primary><secondary>PackageKit</secondary></indexterm><programlisting>UpdatesChanged ()</programlisting></refsect2>
          <para>
            This signal is emitted when the number of updates has changed
          </para>
        <variablelist role="params"/></refsect1>
  <refsect1 role="property_details"><title role="property_details.title">Property Details</title><refsect2><title><anchor role="function" id="PackageKit:VersionMajor"/>The "VersionMajor" property</title><indexterm><primary>VersionMajor</primary><secondary>PackageKit</secondary></indexterm><programlisting>'VersionMajor'  read      'u'
</programlisting></refsect2>
          <para>
            The major version number.
          </para>
        <variablelist role="params"/><refsect2><title><anchor role="function" id="PackageKit:VersionMinor"/>The "VersionMinor" property</title><indexterm><primary>VersionMinor</primary><secondary>PackageKit</secondary></indexterm><programlisting>'VersionMinor'  read      'u'
</programlisting></refsect2>
          <para>
            The minor version number.
          </para>
        <variablelist role="params"/><refsect2><title><anchor role="function" id="PackageKit:VersionMicro"/>The "VersionMicro" property</title><indexterm><primary>VersionMicro</primary><secondary>PackageKit</secondary></indexterm><programlisting>'VersionMicro'  read      'u'
</programlisting></refsect2>
          <para>
            The micro version number.
          </para>
        <variablelist role="params"/><refsect2><title><anchor role="function" id="PackageKit:BackendName"/>The "BackendName" property</title><indexterm><primary>BackendName</primary><secondary>PackageKit</secondary></indexterm><programlisting>'BackendName'  read      's'
</programlisting></refsect2>
          <para>
            The backend name, e.g. "dnf".
          </para>
        <variablelist role="params"/><refsect2><title><anchor role="function" id="PackageKit:BackendDescription"/>The "BackendDescription" property</title><indexterm><primary>BackendDescription</primary><secondary>PackageKit</secondary></indexterm><programlisting>'BackendDescription'  read      's'
</programlisting></refsect2>
          <para>
            The backend description, e.g. "Yellow Dog Update Modifier".
          </para>
        <variablelist role="params"/><refsect2><title><anchor role="function" id="PackageKit:BackendAuthor"/>The "BackendAuthor" property</title><indexterm><primary>BackendAuthor</primary><secondary>PackageKit</secondary></indexterm><programlisting>'BackendAuthor'  read      's'
</programlisting></refsect2>
          <para>
            The backend author, e.g. "Joe Bloggs &lt;joe&amp;blogs.com&gt;".
          </para>
        <variablelist role="params"/><refsect2><title><anchor role="function" id="PackageKit:Roles"/>The "Roles" property</title><indexterm><primary>Roles</primary><secondary>PackageKit</secondary></indexterm><programlisting>'Roles'  read      't'
</programlisting></refsect2>
          <para>
            The roles the backend supports, e.g. search-name|refresh-cache.
          </para>
        <variablelist role="params"/><refsect2><title><anchor role="function" id="PackageKit:Groups"/>The "Groups" property</title><indexterm><primary>Groups</primary><secondary>PackageKit</secondary></indexterm><programlisting>'Groups'  read      't'
</programlisting></refsect2>
          <para>
            The groups the backend supports, e.g. accessories|games.
          </para>
        <variablelist role="params"/><refsect2><title><anchor role="function" id="PackageKit:Filters"/>The "Filters" property</title><indexterm><primary>Filters</primary><secondary>PackageKit</secondary></indexterm><programlisting>'Filters'  read      't'
</programlisting></refsect2>
          <para>
            The filters the backend supports, e.g. installed|newest.
          </para>
        <variablelist role="params"/><refsect2><title><anchor role="function" id="PackageKit:MimeTypes"/>The "MimeTypes" property</title><indexterm><primary>MimeTypes</primary><secondary>PackageKit</secondary></indexterm><programlisting>'MimeTypes'  read      'as'
</programlisting></refsect2>
          <para>
            The mime-types the backend supports, e.g.
            ['application/x-rpm;', 'application/x-deb'].
          </para>
        <variablelist role="params"/><refsect2><title><anchor role="function" id="PackageKit:Locked"/>The "Locked" property</title><indexterm><primary>Locked</primary><secondary>PackageKit</secondary></indexterm><programlisting>'Locked'  read      'b'
</programlisting></refsect2>
          <para>
            Set when the backend is locked and native tools would fail.
          </para>
        <variablelist role="params"/><refsect2><title><anchor role="function" id="PackageKit:NetworkState"/>The "NetworkState" property</title><indexterm><primary>NetworkState</primary><secondary>PackageKit</secondary></indexterm><programlisting>'NetworkState'  read      'u'
</programlisting></refsect2>
          <para>
            Gets the network state from the daemon. This is provided as some clients may not want
            to use NetworkManager if the system daemon is configured to use something else.
          </para>
          <para>
            If the system is managed using NetworkManager then the following
            states are supported:
            unknown, offline, online,
            wifi, mobile or wired.
            If the system is configured for legacy UNIX network fallback, or NetworkManager
            is not running then the folowing states are supported:
            unknown, offline or online.
          </para>
        <variablelist role="params"/><refsect2><title><anchor role="function" id="PackageKit:DistroId"/>The "DistroId" property</title><indexterm><primary>DistroId</primary><secondary>PackageKit</secondary></indexterm><programlisting>'DistroId'  read      's'
</programlisting></refsect2>
          <para>
            The distribution identification, in the
            distro;version;arch form e.g.
            "debian;squeeze/sid;x86_64".
          </para>
        <variablelist role="params"/><refsect2><title><anchor role="function" id="PackageKit:UpdatePrepared"/>The "UpdatePrepared" property</title><indexterm><primary>UpdatePrepared</primary><secondary>PackageKit</secondary></indexterm><programlisting>'UpdatePrepared'  read      'b'
</programlisting></refsect2>
          <para>
            If an update has been prepared and is ready to be triggered.
          </para>
        <variablelist role="params"/><refsect2><title><anchor role="function" id="PackageKit:UpdateTriggered"/>The "UpdateTriggered" property</title><indexterm><primary>UpdateTriggered</primary><secondary>PackageKit</secondary></indexterm><programlisting>'UpdateTriggered'  read      'b'
</programlisting></refsect2>
          <para>
            If an update has been triggered.
          </para>
        <variablelist role="params"/><refsect2><title><anchor role="function" id="PackageKit:UpgradePrepared"/>The "UpgradePrepared" property</title><indexterm><primary>UpgradePrepared</primary><secondary>PackageKit</secondary></indexterm><programlisting>'UpgradePrepared'  read      'b'
</programlisting></refsect2>
          <para>
            If a system upgrade has been prepared and is ready to be triggered.
          </para>
        <variablelist role="params"/><refsect2><title><anchor role="function" id="PackageKit:UpgradeTriggered"/>The "UpgradeTriggered" property</title><indexterm><primary>UpgradeTriggered</primary><secondary>PackageKit</secondary></indexterm><programlisting>'UpgradeTriggered'  read      'b'
</programlisting></refsect2>
          <para>
            If a system upgrade has been triggered.
          </para>
        <variablelist role="params"/><refsect2><title><anchor role="function" id="PackageKit:PreparedUpgrade"/>The "PreparedUpgrade" property</title><indexterm><primary>PreparedUpgrade</primary><secondary>PackageKit</secondary></indexterm><programlisting>'PreparedUpgrade'  read      'a{sv}'
</programlisting></refsect2>
          <para>
            Details about a prepared system upgrade. Currently recognized keys
            are "name" and "version".
          </para>
        <variablelist role="params"/><refsect2><title><anchor role="function" id="PackageKit:TriggerAction"/>The "TriggerAction" property</title><indexterm><primary>TriggerAction</primary><secondary>PackageKit</secondary></indexterm><programlisting>'TriggerAction'  read      's'
</programlisting></refsect2>
          <para>
            The action to take when finished applying updates, known values
            are power-off, reboot or
            unset if no offline update is scheduled.
          </para>
        <variablelist role="params"/></refsect1>
</refentry>
