Difference between revisions of "Unit ShellUpdate"
From Ultibo.org
(15 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 === | ||
Line 34: | Line 234: | ||
{| class="wikitable" style="font-size: 14px; background: white;" | {| class="wikitable" style="font-size: 14px; background: white;" | ||
|- | |- | ||
− | ! | + | ! Note |
| None documented | | None documented | ||
|- | |- | ||
Line 40: | Line 240: | ||
</div></div> | </div></div> | ||
<br /> | <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