Warning, /plasma/discover/libdiscover/backends/SteamOSBackend/com.steampowered.Atomupd1.xml is written in an unsupported language. File is not indexed.
0001 <!DOCTYPE node PUBLIC 0002 "-//freedesktop//DTD D-BUS Object Introspection 1.0//EN" 0003 "http://www.freedesktop.org/standards/dbus/1.0/introspect.dtd"> 0004 0005 0006 <!-- 0007 Copyright © 2021-2022 Collabora Ltd. 0008 SPDX-License-Identifier: MIT 0009 0010 Permission is hereby granted, free of charge, to any person obtaining 0011 a copy of this software and associated documentation files (the 0012 "Software"), to deal in the Software without restriction, including 0013 without limitation the rights to use, copy, modify, merge, publish, 0014 distribute, sublicense, and/or sell copies of the Software, and to 0015 permit persons to whom the Software is furnished to do so, subject to 0016 the following conditions: 0017 0018 The above copyright notice and this permission notice shall be included 0019 in all copies or substantial portions of the Software. 0020 0021 THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 0022 EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 0023 MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 0024 IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY 0025 CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, 0026 TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 0027 SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 0028 --> 0029 0030 <node name="/" xmlns:doc="http://www.freedesktop.org/dbus/1.0/doc.dtd"> 0031 <!-- 0032 com.steampowered.Atomupd1: 0033 @short_description: Interface to control an atomic update 0034 --> 0035 <interface name="com.steampowered.Atomupd1"> 0036 0037 <!-- 0038 Version: 0039 0040 The version of this interface implemented by this object. 0041 This file documents version 1 of the interface. 0042 --> 0043 <property name="Version" type="u" access="read"/> 0044 0045 <!-- 0046 ProgressPercentage: 0047 0048 Percentage of how much of the update process has been completed. 0049 --> 0050 <property name="ProgressPercentage" type="d" access="read"> 0051 <annotation name="org.freedesktop.DBus.Property.EmitsChangedSignal" value="true"/> 0052 </property> 0053 0054 <!-- 0055 EstimatedCompletionTime: 0056 0057 A Unix timestamp with seconds precision, that indicates when the update 0058 process is expected to complete. 0059 0 if no estimate is available. 0060 --> 0061 <property name="EstimatedCompletionTime" type="t" access="read"> 0062 <annotation name="org.freedesktop.DBus.Property.EmitsChangedSignal" value="true"/> 0063 </property> 0064 0065 <!-- 0066 UpdateStatus: 0067 0068 An UpdateStatus enum, representing the status of the update. 0069 The possible values are: 0070 0 = IDLE, the update has not been launched yet 0071 1 = IN_PROGRESS, the update is currently being applied 0072 2 = PAUSED, the update has been paused 0073 3 = SUCCESSFUL, the update process successfully completed 0074 4 = FAILED, an error occurred during the update 0075 5 = CANCELLED, a special case of FAILED where the update attempt has been cancelled 0076 --> 0077 <property name="UpdateStatus" type="u" access="read"> 0078 <annotation name="org.freedesktop.DBus.Property.EmitsChangedSignal" value="true"/> 0079 </property> 0080 0081 <!-- 0082 UpdateBuildID: 0083 0084 String that uniquely represents the OS Build ID of the image update 0085 that has been chosen when `StartUpdate` method was executed. 0086 It is the empty string if `StartUpdate` has not been called yet. 0087 Please check `CurrentBuildID` description for an explanation of how 0088 Build ID can be interpreted. 0089 --> 0090 <property name="UpdateBuildID" type="s" access="read"/> 0091 0092 <!-- 0093 Variant: 0094 0095 String that represents the chosen update variant that is currently 0096 being tracked. 0097 This value is updated every time a new variant is chosen with 0098 `SwitchToVariant` method or via the CLI tool steamos-select-branch. 0099 Typical values include `steamdeck` and `steamdeck-beta`. 0100 It defaults to the variant value from the steamos-atomupd manifest JSON 0101 if the text file is empty or missing. 0102 --> 0103 <property name="Variant" type="s" access="read"> 0104 <annotation name="org.freedesktop.DBus.Property.EmitsChangedSignal" value="true"/> 0105 </property> 0106 0107 <!-- 0108 FailureCode: 0109 0110 A D-Bus error name like `org.freedesktop.DBus.Failed`, or the empty string 0111 if the status of UpdateStatus is not FAILED. 0112 --> 0113 <property name="FailureCode" type="s" access="read"> 0114 <annotation name="org.freedesktop.DBus.Property.EmitsChangedSignal" value="true"/> 0115 </property> 0116 0117 <!-- 0118 FailureMessage: 0119 0120 A human-readable error message, or the empty string if the status of 0121 UpdateStatus is not FAILED. 0122 --> 0123 <property name="FailureMessage" type="s" access="read"> 0124 <annotation name="org.freedesktop.DBus.Property.EmitsChangedSignal" value="true"/> 0125 </property> 0126 0127 <!-- 0128 UpdatesAvailable: 0129 0130 Map of available update Build IDs to their keys and values. 0131 It is an empty map if either there aren't any available 0132 updates or if `CheckForUpdates` has not been called yet. 0133 0134 The values of this map are vardicts that include the following keys: 0135 <variablelist> 0136 <varlistentry> 0137 <term>variant s</term> 0138 <listitem><para> 0139 Represents the variant of this update. Possible values include 0140 `steamdeck` and `steamdeck-beta`. 0141 </para></listitem> 0142 </varlistentry> 0143 <varlistentry> 0144 <term>version s</term> 0145 <listitem><para> 0146 The version of this update. E.g. "3.5.1". 0147 </para></listitem> 0148 </varlistentry> 0149 <varlistentry> 0150 <term>estimated_size t</term> 0151 <listitem><para> 0152 Estimated download size, in Bytes, to perform the update. 0153 </para></listitem> 0154 </varlistentry> 0155 <varlistentry> 0156 <term>update_type u</term> 0157 <listitem><para> 0158 An enum representing the update type. 0159 Possible values are: 0160 <simplelist> 0161 <member>0: MINOR_UPDATE</member> 0162 <member>1: MAJOR_UPDATE</member> 0163 </simplelist> 0164 </para></listitem> 0165 </varlistentry> 0166 </variablelist> 0167 --> 0168 <property name="UpdatesAvailable" type="a{sa{sv}}" access="read"> 0169 <annotation name="org.qtproject.QtDBus.QtTypeName" type="a{sa{sv}}" value="VariantMapMap"/> 0170 </property> 0171 0172 <!-- 0173 UpdatesAvailableLater: 0174 0175 Map of available update IDs (i.e. version number) to their keys and 0176 values. These updates can't be directly installed because they require 0177 a base system version that is newer than the current one. 0178 It is an empty map if either there aren't any available 0179 later updates or if `CheckForUpdates` has not been called yet. 0180 0181 The values of this map are the same as for `UpdatesAvailable`, 0182 plus additional vardicts with the following keys: 0183 <variablelist> 0184 <varlistentry> 0185 <term>requires s</term> 0186 <listitem><para> 0187 Version ID that must be installed before this update. 0188 </para></listitem> 0189 </varlistentry> 0190 </variablelist> 0191 0192 Please note that here the key `estimated_size` represents the estimated 0193 download size, under the assumption that the update will be performed 0194 with a system running the version specified in the `requires` key. 0195 --> 0196 <property name="UpdatesAvailableLater" type="a{sa{sv}}" access="read"> 0197 <annotation name="org.qtproject.QtDBus.QtTypeName" type="a{sa{sv}}" value="VariantMapMap"/> 0198 </property> 0199 0200 <!-- 0201 CurrentVersion: 0202 0203 The user-facing version of the OS, suitable for display in user 0204 interfaces, for example 3.4.9. Internally, this behaves more like 0205 a branch than a version number: there can be several release-candidates 0206 for the same user-facing version. 0207 To avoid potentially showing in the UI an update to the same user-facing 0208 version, it is recommended to include the build ID alongside it. 0209 --> 0210 <property name="CurrentVersion" type="s" access="read"/> 0211 0212 <!-- 0213 CurrentBuildID: 0214 0215 String that uniquely represents the OS Build ID of the image that is 0216 currently in use, for example "20230906.1". 0217 Build IDs for the same version can be compared like any other version 0218 number. Comparing Build IDs for different versions will instead only 0219 tell you the release order and not which one has the latest features. 0220 --> 0221 <property name="CurrentBuildID" type="s" access="read"/> 0222 0223 <!-- 0224 KnownVariants: 0225 0226 Array of strings representing the known suggested variants that could 0227 be chosen. 0228 --> 0229 <property name="KnownVariants" type="as" access="read"/> 0230 0231 <!-- 0232 SwitchToVariant: 0233 @variant: Desired update variant. Possible values include `steamdeck` and 0234 and `steamdeck-beta` 0235 0236 Change the update variant to @variant. 0237 This value is stored in the same text file that the CLI tool 0238 steamos-select-branch uses. 0239 --> 0240 <method name="SwitchToVariant"> 0241 <arg type="s" name="variant" direction="in"/> 0242 </method> 0243 0244 <!-- 0245 CheckForUpdates: 0246 @options: Vardict with configuration options. None currently available, 0247 reserved for future use 0248 @updates_available: Map of available update Build IDs to their keys and values 0249 @updates_available_later: Map of available update Build IDs, to their keys and 0250 values, that require a newer system version 0251 0252 At least one update is available, for the current system version, when 0253 @updates_available is not the empty map. 0254 0255 For more information about the content of @updates_available and 0256 @updates_available_later, please refer to the description of the 0257 properties `UpdatesAvailable` and `UpdatesAvailableLater` respectively. 0258 --> 0259 <method name="CheckForUpdates"> 0260 <arg type="a{sv}" name="options" direction="in"/> 0261 <arg type="a{sa{sv}}" name="updates_available" direction="out"/> 0262 <arg type="a{sa{sv}}" name="updates_available_later" direction="out"/> 0263 <annotation name="org.qtproject.QtDBus.QtTypeName.In0" type="a{sv}" value="QVariantMap"/> 0264 <annotation name="org.qtproject.QtDBus.QtTypeName.Out0" type="a{sa{sv}}" value="VariantMapMap"/> 0265 <annotation name="org.qtproject.QtDBus.QtTypeName.Out1" type="a{sa{sv}}" value="VariantMapMap"/> 0266 </method> 0267 0268 <!-- 0269 StartUpdate: 0270 @id: Chosen update ID (i.e. version number) that needs be installed 0271 0272 Start to apply the @id update. 0273 This method is expected to be called after `CheckForUpdates`, with an 0274 @id taken from the returned `updates_available`. 0275 0276 If the provided @id is not a valid update, either because not available 0277 or because it requires a newer system version, this method will fail. 0278 --> 0279 <method name="StartUpdate"> 0280 <arg type="s" name="id" direction="in"/> 0281 </method> 0282 0283 <!-- 0284 PauseUpdate: 0285 0286 Pauses the update that is currently in progress, if any. 0287 --> 0288 <method name="PauseUpdate"> 0289 </method> 0290 0291 <!-- 0292 ResumeUpdate: 0293 0294 Resumes a previously paused update. If UpdateStatus is not set to 0295 UPDATE_PAUSED, this method is expected to fail. 0296 --> 0297 <method name="ResumeUpdate"> 0298 </method> 0299 0300 <!-- 0301 CancelUpdate: 0302 0303 Cancel the update that is currently in progress, if any. 0304 --> 0305 <method name="CancelUpdate"> 0306 </method> 0307 0308 </interface> 0309 0310 </node>