diff options
Diffstat (limited to 'plugins/rpm-ostree/org.projectatomic.rpmostree1.xml')
-rw-r--r-- | plugins/rpm-ostree/org.projectatomic.rpmostree1.xml | 458 |
1 files changed, 458 insertions, 0 deletions
diff --git a/plugins/rpm-ostree/org.projectatomic.rpmostree1.xml b/plugins/rpm-ostree/org.projectatomic.rpmostree1.xml new file mode 100644 index 0000000..6ae04a4 --- /dev/null +++ b/plugins/rpm-ostree/org.projectatomic.rpmostree1.xml @@ -0,0 +1,458 @@ +<!DOCTYPE node PUBLIC +"-//freedesktop//DTD D-BUS Object Introspection 1.0//EN" +"http://www.freedesktop.org/standards/dbus/1.0/introspect.dtd"> +<node name="/" xmlns:doc="http://www.freedesktop.org/dbus/1.0/doc.dtd"> + + <!-- Deployment dictionary keys: + 'id' (type 's') + 'osname' (type 's') + 'serial' (type 'i') + 'checksum' (type 's') + 'version' (type 's') + 'timestamp' (type 't') + 'origin' (type 's') + 'signatures' (type 'av') + 'packages' (type 'as') + 'booted' (type 'b') + --> + + <interface name="org.projectatomic.rpmostree1.Sysroot"> + <!-- The booted OSName --> + <property name="Booted" type="o" access="read"/> + + <!-- The system root path --> + <property name="Path" type="s" access="read"/> + + <!-- The values are (method-name, sender-name, object path) --> + <property name="ActiveTransaction" type="(sss)" access="read"/> + <!-- A DBus address - connect to it to access its methods --> + <property name="ActiveTransactionPath" type="s" access="read"/> + + <!-- (Currently) optional method to denote the client plans + to either invoke methods on the daemon, or monitor status. + If no clients are registered, the daemon may exit. + + 'id (type 's') - Package/component name (e.g. `cockpit`, `gnome-software`) + --> + <method name="RegisterClient"> + <arg type="a{sv}" name="options" direction="in"/> + </method> + + <!-- You must call this if your process is no longer interested in talking to + rpm-ostree, but will remain connected to the bus. + + No options are currently defined. + --> + <method name="UnregisterClient"> + <arg type="a{sv}" name="options" direction="in"/> + </method> + + <!-- Reload sysroot if changed. This can also be used as a way to sync with the daemon + to ensure e.g. D-Bus properties are updated before reading them. --> + <method name="Reload"> + </method> + + <!-- Like Reload, but also reload configuration files. --> + <method name="ReloadConfig"> + </method> + + <!-- none, check, stage --> + <property name="AutomaticUpdatePolicy" type="s" access="read"/> + + <method name="CreateOSName"> + <arg type="s" name="name"/> + <arg type="o" name="result" direction="out"/> + </method> + + <method name="GetOS"> + <arg name="name" type="s"/> + <arg name="object_path" type="o" direction="out"/> + </method> + + <!-- Array of all deployments in boot order --> + <property name="Deployments" type="aa{sv}" access="read"/> + </interface> + + <interface name="org.projectatomic.rpmostree1.OS"> + <property name="BootedDeployment" type="a{sv}" access="read"/> + <property name="DefaultDeployment" type="a{sv}" access="read"/> + <property name="RollbackDeployment" type="a{sv}" access="read"/> + + <!-- CachedUpdate dictionary keys: + 'osname' (type 's') + 'checksum' (type 's') + 'version' (type 's') + 'timestamp' (type 't') + 'origin' (type 's') + 'signatures' (type 'av') + 'gpg-enabled' (type 'b') + 'ref-has-new-commit' (type 'b') + TRUE if 'checksum' refers to a new base commit we're not booted in. + 'rpm-diff' (type 'a{sv}') + 'upgraded' (type 'a(us(ss)(ss))') + 'downgraded' (type 'a(us(ss)(ss))') + 'removed' (type 'a(usss)') + 'added' (type 'a(usss)') + 'advisories' (type 'a(suuasa{sv})') + --> + <property name="CachedUpdate" type="a{sv}" access="read"/> + <property name="HasCachedUpdateRpmDiff" type="b" access="read"/> + + <!-- Available options: + "mode" (type 's') + One of auto, none, check. Defaults to auto, which follows configured + policy (available in AutomaticUpdatePolicy property). + "output-to-self" (type 'b') + Whether output should go to the daemon itself rather than the + transaction. Defaults to TRUE. + + If automatic updates are not enabled, @enabled will be FALSE and + @transaction_address will be the empty string. + --> + <method name="AutomaticUpdateTrigger"> + <arg type="a{sv}" name="options" direction="in"/> + <arg type="b" name="enabled" direction="out"/> + <arg type="s" name="transaction_address" direction="out"/> + </method> + + <property name="Name" type="s" access="read"/> + + <method name="GetDeploymentsRpmDiff"> + <arg type="s" name="deployid0"/> + <arg type="s" name="deployid1"/> + <arg type="a(sua{sv})" name="result" direction="out"/> + </method> + + <!-- Revision may be a full checksum or version string. + + Available options: + "reboot" (type 'b') + --> + <method name="Deploy"> + <arg type="s" name="revision" direction="in"/> + <arg type="a{sv}" name="options" direction="in"/> + <arg type="s" name="transaction_address" direction="out"/> + <annotation name="org.gtk.GDBus.C.UnixFD" value="true"/> + </method> + + <!-- details dictionary keys: + 'osname' (type 's') + 'checksum' (type 's') + 'version' (type 's') + 'timestamp' (type 't') + 'origin' (type 's') + 'signatures' (type 'av') + --> + <method name="GetCachedDeployRpmDiff"> + <arg type="s" name="revision"/> + <arg type="as" name="packages"/> + <arg type="a(sua{sv})" name="result" direction="out"/> + <arg type="a{sv}" name="details" direction="out"/> + </method> + + <method name="DownloadDeployRpmDiff"> + <arg type="s" name="revision"/> + <arg type="as" name="packages"/> + <arg type="s" name="transaction_address" direction="out"/> + </method> + + <!-- Available options: + "allow-downgrade" (type 'b') + "reboot" (type 'b') + --> + <method name="Upgrade"> + <arg type="a{sv}" name="options" direction="in"/> + <arg type="s" name="transaction_address" direction="out"/> + <annotation name="org.gtk.GDBus.C.UnixFD" value="true"/> + </method> + + <!-- details dictionary keys: + 'osname' (type 's') + 'checksum' (type 's') + 'version' (type 's') + 'timestamp' (type 't') + 'origin' (type 's') + 'signatures' (type 'av') + --> + <method name="GetCachedUpdateRpmDiff"> + <arg type="s" name="deployid"/> + <arg type="a(sua{sv})" name="result" direction="out"/> + <arg type="a{sv}" name="details" direction="out"/> + </method> + + <method name="DownloadUpdateRpmDiff"> + <arg type="s" name="transaction_address" direction="out"/> + </method> + + <!-- Available options: + "reboot" (type 'b') + --> + <method name="Rollback"> + <arg type="a{sv}" name="options" direction="in"/> + <arg type="s" name="transaction_address" direction="out"/> + </method> + + <!-- Available options: + "reboot" (type 'b') + --> + <method name="ClearRollbackTarget"> + <arg type="a{sv}" name="options" direction="in"/> + <arg type="s" name="transaction_address" direction="out"/> + </method> + + <!-- Available options: + "skip-purge" (type 'b') + "reboot" (type 'b') + "revision" (type 's') + --> + <method name="Rebase"> + <arg type="a{sv}" name="options" direction="in"/> + <arg type="s" name="refspec"/> + <arg type="as" name="packages"/> + <arg type="s" name="transaction_address" direction="out"/> + <annotation name="org.gtk.GDBus.C.UnixFD" value="true"/> + </method> + + <!-- details dictionary keys: + 'osname' (type 's') + 'checksum' (type 's') + 'version' (type 's') + 'timestamp' (type 't') + 'origin' (type 's') + 'signatures' (type 'av') + --> + <method name="GetCachedRebaseRpmDiff"> + <arg type="s" name="refspec"/> + <arg type="as" name="packages"/> + <arg type="a(sua{sv})" name="result" direction="out"/> + <arg type="a{sv}" name="details" direction="out"/> + </method> + + <method name="DownloadRebaseRpmDiff"> + <arg type="s" name="refspec"/> + <arg type="as" name="packages"/> + <arg type="s" name="transaction_address" direction="out"/> + </method> + + <!-- Available options: + "reboot" (type 'b') + "dry-run" (type 'b') + --> + <method name="PkgChange"> + <arg type="a{sv}" name="options" direction="in"/> + <arg type="as" name="packages_added"/> + <arg type="as" name="packages_removed"/> + <arg type="s" name="transaction_address" direction="out"/> + <annotation name="org.gtk.GDBus.C.UnixFD" value="true"/> + </method> + + <method name="SetInitramfsState"> + <arg type="b" name="regenerate" direction="in"/> + <arg type="as" name="args" direction="in"/> + <arg type="a{sv}" name="options" direction="in"/> + <arg type="s" name="transaction_address" direction="out"/> + </method> + + <!-- Available options: + "reboot" (type 'b') + --> + <method name="KernelArgs"> + <arg type="s" name="existing_kernel_arg_string"/> + <arg type="as" name="kernel_args_added" direction="in"/> + <arg type="as" name="kernel_args_replaced" direction="in"/> + <arg type="as" name="kernel_args_removed" direction="in"/> + <arg type="a{sv}" name="options" direction="in"/> + <arg type="s" name="transaction_address" direction="out"/> + </method> + + <method name="GetDeploymentBootConfig"> + <arg type="s" name="deployid" /> + <arg type="b" name="is_pending" direction="in"/> + <arg type="a{sv}" name="bootconfig" direction="out"/> + </method> + + <method name="Cleanup"> + <arg type="as" name="elements" direction="in"/> + <arg type="s" name="transaction_address" direction="out"/> + </method> + + <method name="RefreshMd"> + <arg type="a{sv}" name="options" direction="in"/> + <arg type="s" name="transaction_address" direction="out"/> + </method> + + <!-- Set options in yum .repo files --> + <method name="ModifyYumRepo"> + <arg type="s" name="repo_id" direction="in"/> + <arg type="a{ss}" name="settings" direction="in"/> + <arg type="s" name="transaction_address" direction="out"/> + </method> + + <!-- Available modifiers: + "set-refspec" (type 's') + "set-revision" (type 's') + "install-packages" (type 'as') + "uninstall-packages" (type 'as') + "install-local-packages" (type 'ah') + "override-remove-packages" (type 'as') + "override-reset-packages" (type 'as') + "override-replace-packages" (type 'as') + "override-replace-local-packages" (type 'ah') + "custom-origin" (type '(ss)') + + Available options: + "reboot" (type 'b') + Initiate a reboot after transaction. + "allow-downgrade" (type 'b') + Allow newly pulled bases to have older timestamps than the + current base. Defaults to TRUE if either "set-refspec" or + "set-revision" is specified. + "skip-purge" (type 'b') + Do not purge the old refspec. Only valid if "set-refspec" is + specified. + "no-pull-base" (type 'b') + Do not pull a base layer from the remote. Not valid if + either "set-refspec" or "set-revision" is specified. + "dry-run" (type 'b') + Stop short of deploying the new tree. If layering packages, + the pkg diff is printed but packages are not downloaded or + imported. + "no-layering" (type 'b') + Remove all package requests. Requests in "install-packages" + are still subsequently processed if specified. + "no-overrides" (type 'b') + Remove all active overrides. Not valid if any override + modifiers are specified. + "no-initramfs" (type 'b') + Disable any initramfs regeneration. + "cache-only" (type 'b') + Do not update rpmmd repo metadata cache or ostree refspec. + Not valid if "download-only" is specified. + "download-only" (type 'b') + Update rpmmd repo metadata cache and ostree refspec. Do not + perform any deployments. This is like "dry-run" except that + the latter does not download and import packages. Not valid + if "cache-only" or "dry-run" is specified. + "allow-inactive-requests" (type 'b') + When installing packages, allow package requests which would + not immediately be active. + "idempotent-layering" (type 'b') + Don't error out on requests in install-* or uninstall-* + modifiers that are already satisfied. + --> + <method name="UpdateDeployment"> + <arg type="a{sv}" name="modifiers" direction="in"/> + <arg type="a{sv}" name="options" direction="in"/> + <arg type="s" name="transaction_address" direction="out"/> + <annotation name="org.gtk.GDBus.C.UnixFD" value="true"/> + </method> + + </interface> + + <interface name="org.projectatomic.rpmostree1.OSExperimental"> + + <!-- Just a test method --> + <method name="Moo"> + <arg type="b" name="utf8" direction="in"/> + <arg type="s" name="result" direction="out"/> + </method> + + <method name="LiveFs"> + <arg type="a{sv}" name="options" direction="in"/> + <arg type="s" name="transaction_address" direction="out"/> + </method> + + </interface> + + <interface name="org.projectatomic.rpmostree1.Transaction"> + + <!-- A single-line human-readable string --> + <property name="Title" type="s" access="read"/> + + <!-- Yes, we can. --> + <method name="Cancel"/> + + <!-- For a client to call when ready to receive signals. + The return boolean indicates whether the transaction was + started by this method call (true) or was already started + by another client (false). --> + <method name="Start"> + <arg type="b" name="started" direction="out"/> + </method> + + <signal name="Finished"> + <arg name="success" type="b" direction="out"/> + <arg name="error_message" type="s" direction="out"/> + </signal> + + <!-- For miscellaneous messages; line-buffered. --> + <signal name="Message"> + <arg name="text" type="s" direction="out"/> + </signal> + + <!-- Tasks are notifications that work is being done. --> + <signal name="TaskBegin"> + <arg name="text" type="s" direction="out"/> + </signal> + + <signal name="TaskEnd"> + <arg name="text" type="s" direction="out"/> + </signal> + + <!-- Generic percentage progress. --> + <signal name="PercentProgress"> + <arg name="text" type="s" direction="out"/> + <arg name="percentage" type="u" direction="out"/> + </signal> + + <signal name="DownloadProgress"> + <!-- time data, format is: + start time, elapsed seconds + --> + <arg name="time" type="(tt)" direction="out"/> + + <!-- + outstanding data counts, format is: + (outstanding fetches, outstanding writes) + --> + <arg name="outstanding" type="(uu)" direction="out"/> + + <!-- + metadata counts, format is: + (scanned, fetched, outstanding) + --> + <arg name="metadata" type="(uuu)" direction="out"/> + + <!-- + delta data, format is: + (total parts, fetched parts, total super blocks, total size) + --> + <arg name="delta" type="(uuut)" direction="out"/> + + <!-- + content data, format is: + (fetched, requested) + --> + <arg name="content" type="(uu)" direction="out"/> + + <!-- + transfer data, format is: + (bytes transfered, bytes/s) + --> + <arg name="transfer" type="(tt)" direction="out"/> + </signal> + + <signal name="SignatureProgress"> + <!-- An ostree GVariant containing signature data + see ostree_gpg_verify_result_get_all. + --> + <arg name="signature" type="av" direction="out"/> + <!-- The signed commit --> + <arg name="commit" type="s" direction="out"/> + </signal> + + <!-- Indicates progress signals are done and subsequent + Message signals should be output on separate lines. --> + <signal name="ProgressEnd"/> + </interface> +</node> |