Difference between revisions of "Unit ShellUpdate"
From Ultibo.org
								
												
				 (Created page with "Return to Unit Reference   === Description === ----  ''To be documented''  === Constants === ----  ''To be documented''  === Type definitions === ----  ''To...")  | 
				|||
| (16 intermediate revisions by the same user not shown) | |||
| Line 5: | Line 5: | ||
----  | ----  | ||
| − | ''  | + | '''Ultibo Update Shell Extension unit'''  | 
=== Constants ===  | === Constants ===  | ||
----  | ----  | ||
| − | |||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''Shell update specific constants''' <code> SHELL_UPDATE_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>SHELL_UPDATE_HTTP_DELIMITER = ':';</code>  | ||
| + | | style="width: 50%;"|   | ||
| + | |-  | ||
| + | | <code>SHELL_UPDATE_HTTP_SEPARATOR = '/';</code>  | ||
| + | | style="width: 50%;"|   | ||
| + | |-  | ||
| + | | <code>SHELL_UPDATE_HTTP_PROTOCOL = 'http://';</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |colspan="2"|    | ||
| + | |-  | ||
| + | | <code>SHELL_UPDATE_EXTENSION_TMP = '.tmp';</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>SHELL_UPDATE_EXTENSION_BAK = '.bak';</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />   | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''Shell update command''' <code> SHELL_UPDATE_COMMAND_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>SHELL_UPDATE_COMMAND_UPDATE = 'UPDATE';</code>  | ||
| + | | style="width: 50%;"|   | ||
| + | |-  | ||
| + | | <code>SHELL_UPDATE_COMMAND_WGET = 'WGET';</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />   | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''Shell update action''' <code> SHELL_UPDATE_ACTION_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>SHELL_UPDATE_ACTION_CHECK = 'CHECK';</code>  | ||
| + | | style="width: 50%;"|   | ||
| + | |-  | ||
| + | | <code>SHELL_UPDATE_ACTION_GET = 'GET';</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>SHELL_UPDATE_ACTION_SET = 'SET';</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />   | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''Shell update item''' <code> SHELL_UPDATE_ITEM_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>SHELL_UPDATE_ITEM_ALL = 'ALL';</code>  | ||
| + | | style="width: 50%;"|   | ||
| + | |-  | ||
| + | | <code>SHELL_UPDATE_ITEM_KERNEL = 'KERNEL';</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>SHELL_UPDATE_ITEM_CONFIG = 'CONFIG';</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>SHELL_UPDATE_ITEM_COMMAND = 'COMMAND';</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>SHELL_UPDATE_ITEM_FIRMWARE = 'FIRMWARE';</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>SHELL_UPDATE_ITEM_FILE = 'FILE';</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |colspan="2"|    | ||
| + | |-  | ||
| + | | <code>SHELL_UPDATE_ITEM_HTTP_SERVER = 'SERVER';</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>SHELL_UPDATE_ITEM_HTTP_PROXY = 'PROXY';</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>SHELL_UPDATE_ITEM_HTTP_PATH = 'REMOTE';</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>SHELL_UPDATE_ITEM_LOCAL_PATH = 'LOCAL';</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>SHELL_UPDATE_ITEM_KERNEL_IMAGE = 'IMAGE';</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>SHELL_UPDATE_ITEM_KERNEL_CONFIG = 'CONFIG';</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>SHELL_UPDATE_ITEM_KERNEL_COMMAND = 'COMMAND';</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>SHELL_UPDATE_ITEM_FIRMWARE_FILES = 'FIRMWARE';</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>SHELL_UPDATE_ITEM_DEVICETREE_FILES = 'DEVICETREE';</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />   | ||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''Shell update parameter''' <code> SHELL_UPDATE_PARAMETER_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>SHELL_UPDATE_PARAMETER_REBOOT = 'R';</code>  | ||
| + | | style="width: 50%;"|   | ||
| + | |-  | ||
| + | | <code>SHELL_UPDATE_PARAMETER_FORCE = 'F';</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>SHELL_UPDATE_PARAMETER_CURRENT = 'C';</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>HELL_UPDATE_PARAMETER_DTB = 'DTB';</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />  | ||
=== Type definitions ===  | === Type definitions ===  | ||
----  | ----  | ||
| − | ''  | + | ''None defined''  | 
| + | |||
| + | === Class definitions ===  | ||
| + | ----  | ||
| + | |||
| + | |||
| + | '''Shell Update specific classes'''  | ||
| + | |||
| + | {| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"  | ||
| + | |-  | ||
| + | | [[TShellUpdate|<code>TShellUpdate = class(TShellCommand)</code>]]  | ||
| + | |-  | ||
| + | |}  | ||
| + | <br />  | ||
=== Public variables ===  | === Public variables ===  | ||
----  | ----  | ||
| − | ''  | + | |
| + | '''Shell update specific variables'''  | ||
| + | |||
| + | {| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"  | ||
| + | |-  | ||
| + | | <code>SHELL_UPDATE_HTTP_SERVER:String;</code>  | ||
| + | | style="width: 40%;"|Name or IP of http server for updates (eg 192.168.0.1)  | ||
| + | |-  | ||
| + | |}  | ||
| + | {| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"  | ||
| + | |-  | ||
| + | | <code>SHELL_UPDATE_HTTP_PROXY:String;</code>  | ||
| + | | style="width: 40%;"|Name or IP and Port of http proxy server (eg 192.168.0.100:8080)  | ||
| + | |-  | ||
| + | |}  | ||
| + | {| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"  | ||
| + | |-  | ||
| + | | <code>SHELL_UPDATE_HTTP_PATH:String;</code>  | ||
| + | | style="width: 40%;"|URL path on http server for updates (eg /updates/)  | ||
| + | |-  | ||
| + | |}  | ||
| + | {| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"  | ||
| + | |-  | ||
| + | | <code>SHELL_UPDATE_LOCAL_PATH:String;</code>  | ||
| + | | style="width: 40%;"|Local path for updates (eg C:\)  | ||
| + | |-  | ||
| + | |}  | ||
| + | {| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"  | ||
| + | |-  | ||
| + | | <code>SHELL_UPDATE_KERNEL_IMAGE:String;</code>  | ||
| + | | style="width: 40%;"|Name of the kernel image file for updates (eg kernel.img)  | ||
| + | |-  | ||
| + | |}  | ||
| + | {| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"  | ||
| + | |-  | ||
| + | | <code>SHELL_UPDATE_KERNEL_CONFIG:String;</code>  | ||
| + | | style="width: 40%;"|Name of the kernel config file for updates (eg config.txt)  | ||
| + | |-  | ||
| + | |}  | ||
| + | {| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"  | ||
| + | |-  | ||
| + | | <code>SHELL_UPDATE_KERNEL_COMMAND:String;</code>  | ||
| + | | style="width: 40%;"|Name of the kernel command file for updates (eg cmdline.txt)  | ||
| + | |-  | ||
| + | |}  | ||
| + | {| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"  | ||
| + | |-  | ||
| + | | <code>SHELL_UPDATE_FIRMWARE_FILES:String;</code>  | ||
| + | | style="width: 40%;"|Name of the firmware files for updates (eg bootcode.bin,start.elf,fixup.dat)  | ||
| + | |-  | ||
| + | |}  | ||
| + | {| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"  | ||
| + | |-  | ||
| + | | <code>SHELL_UPDATE_DTB_FILES:String;</code>  | ||
| + | | style="width: 40%;"|Name of the device tree files for updates (eg bcm2708-rpi-b.dtb,bcm2710-rpi-2-b.dtb,bcm2711-rpi-4-b.dtb)  | ||
| + | |-  | ||
| + | |}  | ||
| + | <br />  | ||
=== Function declarations ===  | === Function declarations ===  | ||
----  | ----  | ||
| − | |||
| + | '''Initialization functions'''  | ||
| + | |||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">  | ||
| + | <pre style="border: 0; padding-bottom:0px;">procedure ShellUpdateInit;</pre>  | ||
| + | <div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | ! Note  | ||
| + | | None documented  | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />  | ||
Return to [[Unit_Reference|Unit Reference]]  | Return to [[Unit_Reference|Unit Reference]]  | ||
Latest revision as of 03:42, 13 September 2022
Return to Unit Reference
Contents
Description
Ultibo Update Shell Extension unit
Constants
Shell update specific constants 
 SHELL_UPDATE_*  SHELL_UPDATE_HTTP_DELIMITER = ':';
 | 
|
 SHELL_UPDATE_HTTP_SEPARATOR = '/';
 | 
|
 SHELL_UPDATE_HTTP_PROTOCOL = 'http://';
 | 
|
 SHELL_UPDATE_EXTENSION_TMP = '.tmp';
 | 
|
 SHELL_UPDATE_EXTENSION_BAK = '.bak';
 | 
|
 
Shell update command 
 SHELL_UPDATE_COMMAND_*  SHELL_UPDATE_COMMAND_UPDATE = 'UPDATE';
 | 
|
 SHELL_UPDATE_COMMAND_WGET = 'WGET';
 | 
 
Shell update action 
 SHELL_UPDATE_ACTION_*  SHELL_UPDATE_ACTION_CHECK = 'CHECK';
 | 
|
 SHELL_UPDATE_ACTION_GET = 'GET';
 | 
|
 SHELL_UPDATE_ACTION_SET = 'SET';
 | 
 
Shell update item 
 SHELL_UPDATE_ITEM_*  SHELL_UPDATE_ITEM_ALL = 'ALL';
 | 
|
 SHELL_UPDATE_ITEM_KERNEL = 'KERNEL';
 | 
|
 SHELL_UPDATE_ITEM_CONFIG = 'CONFIG';
 | 
|
 SHELL_UPDATE_ITEM_COMMAND = 'COMMAND';
 | 
|
 SHELL_UPDATE_ITEM_FIRMWARE = 'FIRMWARE';
 | 
|
 SHELL_UPDATE_ITEM_FILE = 'FILE';
 | 
|
 SHELL_UPDATE_ITEM_HTTP_SERVER = 'SERVER';
 | 
|
 SHELL_UPDATE_ITEM_HTTP_PROXY = 'PROXY';
 | 
|
 SHELL_UPDATE_ITEM_HTTP_PATH = 'REMOTE';
 | 
|
 SHELL_UPDATE_ITEM_LOCAL_PATH = 'LOCAL';
 | 
|
 SHELL_UPDATE_ITEM_KERNEL_IMAGE = 'IMAGE';
 | 
|
 SHELL_UPDATE_ITEM_KERNEL_CONFIG = 'CONFIG';
 | 
|
 SHELL_UPDATE_ITEM_KERNEL_COMMAND = 'COMMAND';
 | 
|
 SHELL_UPDATE_ITEM_FIRMWARE_FILES = 'FIRMWARE';
 | 
|
 SHELL_UPDATE_ITEM_DEVICETREE_FILES = 'DEVICETREE';
 | 
|
 
Shell update parameter 
 SHELL_UPDATE_PARAMETER_*  SHELL_UPDATE_PARAMETER_REBOOT = 'R';
 | 
|
 SHELL_UPDATE_PARAMETER_FORCE = 'F';
 | 
|
 SHELL_UPDATE_PARAMETER_CURRENT = 'C';
 | 
|
 HELL_UPDATE_PARAMETER_DTB = 'DTB';
 | 
Type definitions
None defined
Class definitions
Shell Update specific classes
 TShellUpdate = class(TShellCommand)
 | 
Public variables
Shell update specific variables
 SHELL_UPDATE_HTTP_SERVER:String;
 | 
Name or IP of http server for updates (eg 192.168.0.1) | 
 SHELL_UPDATE_HTTP_PROXY:String;
 | 
Name or IP and Port of http proxy server (eg 192.168.0.100:8080) | 
 SHELL_UPDATE_HTTP_PATH:String;
 | 
URL path on http server for updates (eg /updates/) | 
 SHELL_UPDATE_LOCAL_PATH:String;
 | 
Local path for updates (eg C:\) | 
 SHELL_UPDATE_KERNEL_IMAGE:String;
 | 
Name of the kernel image file for updates (eg kernel.img) | 
 SHELL_UPDATE_KERNEL_CONFIG:String;
 | 
Name of the kernel config file for updates (eg config.txt) | 
 SHELL_UPDATE_KERNEL_COMMAND:String;
 | 
Name of the kernel command file for updates (eg cmdline.txt) | 
 SHELL_UPDATE_FIRMWARE_FILES:String;
 | 
Name of the firmware files for updates (eg bootcode.bin,start.elf,fixup.dat) | 
 SHELL_UPDATE_DTB_FILES:String;
 | 
Name of the device tree files for updates (eg bcm2708-rpi-b.dtb,bcm2710-rpi-2-b.dtb,bcm2711-rpi-4-b.dtb) | 
Function declarations
Initialization functions
procedure ShellUpdateInit;
Description: To be documented
| Note | None documented | 
|---|
Return to Unit Reference