Commit Graph

20 Commits

Author SHA1 Message Date
Daniil Klimuk 79e40334f9 check for Capsule Update compatibility with currently installed firm
Signed-off-by: Daniil Klimuk <daniil.klimuk@3mdeb.com>
2024-11-18 16:52:47 +01:00
Daniil Klimuk f6ed23873c include: do not modify SHELL env. var.
Reviewed-by: MichaƂ Iwanicki <michal.iwanicki@3mdeb.com>
Signed-off-by: Daniil Klimuk <daniil.klimuk@3mdeb.com>
2024-11-18 16:52:46 +01:00
Daniil Klimuk 04ab1e1907 include: dts-functions.sh: add capsules for MSI
Signed-off-by: Daniil Klimuk <daniil.klimuk@3mdeb.com>
2024-11-18 16:52:45 +01:00
Daniil Klimuk ad3958c185 include: fix transaction to Heads
Add variables for Hash and Signature.

Add checking for EC, beacuse some platforms which use Heads use EC as
well, therefore EC firmware links are needed during transition. Before
this commit the link had not been set, and transition failed.

Signed-off-by: Daniil Klimuk <daniil.klimuk@3mdeb.com>
2024-11-18 16:52:25 +01:00
Daniil Klimuk 5d310535f5 fix sourcing libs
Cause of this patch: After I have added and integrated HAL - I have
added following line in dts-boot:

source $DTS_HAL

This was needed because I have used some fuctions from the HAL in the
script.

Inside DTS_HAL I had following line:

source $DTS_ENV

Because I have used some vars from the DTS_ENV in the HAL.

The problem was, that I had another line in DTS_ENV:

source $DTS_HAL

So, I got following boot workflow:

Boot
|
v
dts-boot
|   /-------\
v   v       |
DTS_HAL->DTS_ENV
           .
............
v
dts

Instead of sourcing some scripts and then launching dts script - I got a
loop betwee DTS_HAL and DTS_ENV. Therefore I decided to clean up
sourcing a bit.

Signed-off-by: Daniil Klimuk <daniil.klimuk@3mdeb.com>
2024-11-18 16:17:36 +01:00
Daniil Klimuk 6d53e2cf05 integrate HAL
Signed-off-by: Daniil Klimuk <daniil.klimuk@3mdeb.com>
2024-11-18 16:17:36 +01:00
Daniil Klimuk c93114f437 include: add UEFI Capusle Update configuration
Signed-off-by: Daniil Klimuk <daniil.klimuk@3mdeb.com>
2024-11-14 10:39:37 +01:00
Daniil Klimuk 423221471d include: dts-functions: clean up platforms configuration
Configurations of all supported platforms are done inside
board_config function as switch/case Bash statements. The list of
supported platforms has grown a lot since then, and the function became
unreadable, so adding and managing configurations became difficult and
error-prone.

This commit adds some default configuration values as well as tries to
reuse some configuration code.

Signed-off-by: Daniil Klimuk <daniil.klimuk@3mdeb.com>
2024-11-14 10:39:30 +01:00
Pawel Langowski bfa2a3168f Add verbose option to dts-menu and enable sending logs
Signed-off-by: Pawel Langowski <pawel.langowski@3mdeb.com>
2024-09-17 10:09:14 +02:00
Maciej Pijanowski 084d27d939 tests: port from meta-dts
Signed-off-by: Maciej Pijanowski <maciej.pijanowski@3mdeb.com>
2024-07-25 22:22:33 +02:00
Daniil Klimuk db23885453 Use DPP instead of DES
According to:
https://github.com/Dasharo/presentations/blob/main/dug_6_shameless_plug.md#dasharo-cooperation-models

Signed-off-by: Daniil Klimuk <daniil.klimuk@3mdeb.com>
2024-07-22 16:52:27 +02:00
Daniil Klimuk d80465ed56 add DES submenu
This commit adds dynamically rendered submenu for functionality
implemented by private DES packages installed from Dasharo server.
Every installed package extends the submenu accroding to its needs.

Signed-off-by: Daniil Klimuk <daniil.klimuk@3mdeb.com>
2024-07-22 16:45:06 +02:00
Daniil Klimuk 6e2ba4b9ca add package managment
This commit adds package management functionality: downloading and
installing packages from Dasharo server. The packages are private, the
access is granted after entering DES credentials.

Additionally this commit reworks codebase a bit, to make it more clear.

Signed-off-by: Daniil Klimuk <daniil.klimuk@3mdeb.com>
2024-07-22 16:45:05 +02:00
Daniil Klimuk 1e98c2e919 add DES and SSH header parts and menu
Signed-off-by: Daniil Klimuk <daniil.klimuk@3mdeb.com>
2024-04-15 15:36:22 +02:00
Daniil Klimuk 5796994c51 scripts: dts: rework DTS header
The header was inspired by Chromebox.

Add more hardware nad firmware information into the header.

Signed-off-by: Daniil Klimuk <daniil.klimuk@3mdeb.com>
2024-04-15 15:35:37 +02:00
Daniil Klimuk cfc288cf8a rename BOARD_VENDOR variable to SYSTEM_VENDOR
This variable is initialized with value from dmiedecode -s
system-manufacturer, so SYSTEM_VENDOR name is more appropriate.

Signed-off-by: Daniil Klimuk <daniil.klimuk@3mdeb.com>
2024-04-15 15:35:37 +02:00
Daniil Klimuk 5610e60007 rework colors and print functions
Signed-off-by: Daniil Klimuk <daniil.klimuk@3mdeb.com>
2024-04-15 15:35:34 +02:00
Daniil Klimuk 433483c213 include: ignore SC2034 shellcheck warnings
Reason: ignore "variable appears unsued" beacause scripts in this
directory are being sourced by other scripts in the repo, and,
therefore, so not use self declared variables.

Solutions I have also tried:
- adding "# shellcheck source=../include/dts-functions.sh" and "# shellcheck
  source=../include/dts-environment.sh" to all scripts under path
  ./scripts/;
- adding "# shellcheck source=SCRIPTDIR/../include/dts-functions.sh" and "#
  shellcheck source=SCRIPTDIR/../include/dts-environment.sh" to all scripts
  under path ./scripts/;
- adding "source-path=./include" and "source-path=SCRIPTDIR/../include" to
  ".shellcheckrc" as well as via command line arguments and comments in shell
  scriptfiles;
- mixing above solutions in different ways;

All above solutions did not work.

References:
https://www.shellcheck.net/wiki/Directive
https://www.shellcheck.net/wiki/SC2034
https://www.shellcheck.net/wiki/SC1090
https://pre-commit.com/#config-args

Signed-off-by: Daniil Klimuk <daniil.klimuk@3mdeb.com>
2024-04-15 09:02:02 +02:00
Maciej Pijanowski 2583e7e5fa relicense to Apache-2.0, reuse compliance
Signed-off-by: Maciej Pijanowski <maciej.pijanowski@3mdeb.com>
2024-04-10 11:10:52 +02:00
Daniil Klimuk 9e89d02099 reorganize repo structure
Signed-off-by: Daniil Klimuk <daniil.klimuk@3mdeb.com>
2024-04-09 13:32:05 +02:00