adapt to recent build system changes
Signed-off-by: Leah Rowe <leah@libreboot.org>master
parent
02e9811c8f
commit
82218b0759
|
@ -165,7 +165,7 @@ If your board does not have blob sources available, then you must extract them f
|
|||
You must point libreboot to the backup rom and tell the build system which board you want to extract blobs for.
|
||||
For example, to extract blobs for the t440p you must run:
|
||||
|
||||
./blobutil extract t440p_12mb /path/to/12mb_backup.rom
|
||||
./update blobs extract t440p_12mb /path/to/12mb_backup.rom
|
||||
|
||||
You can then build the rom for this board as normal:
|
||||
|
||||
|
@ -182,28 +182,25 @@ the [libreboot maintenance manual](../maintain/); lbmk is designed to be modular
|
|||
which means that each script *can* be used on its own (if that's not true, for
|
||||
any script, it's a bug that should be fixed).
|
||||
|
||||
It's as simple as that:
|
||||
|
||||
./download all
|
||||
|
||||
The above command downloads all modules defined in the libreboot build system.
|
||||
However, you can download modules individually.
|
||||
|
||||
This command shows you the list of available modules:
|
||||
|
||||
./download list
|
||||
Check the list of downloadable modules by reading `resources/git/revisions`.
|
||||
|
||||
Example of downloading an individual module:
|
||||
|
||||
./download coreboot
|
||||
./fetch seabios
|
||||
|
||||
./download seabios
|
||||
./fetch grub
|
||||
|
||||
./download grub
|
||||
./fetch flashrom
|
||||
|
||||
./download flashrom
|
||||
Coreboot and u-Boot are handled by a separate script:
|
||||
|
||||
./download u-boot
|
||||
./fetch_trees coreboot
|
||||
|
||||
./fetch_trees u-boot
|
||||
|
||||
The 'fetch_trees` script creates multiple directories
|
||||
based on revisions, and patches per revision, whereas
|
||||
the `fetch` script only does one revision.
|
||||
|
||||
Third, build all of the modules:
|
||||
--------------------------------
|
||||
|
|
|
@ -165,7 +165,7 @@ lbmk.
|
|||
Ви маєте вказати libreboot резервну копію rom та сказати системі побудові те, для якої плати ви хочете видобути блоби
|
||||
Наприклад, щоб видобути блоби для t440p, ви маєте виконати:
|
||||
|
||||
./blobutil extract t440p_12mb /path/to/12mb_backup.rom
|
||||
./update blobs extract t440p_12mb /path/to/12mb_backup.rom
|
||||
|
||||
Ви потім можете побудувати rom для цієї плати нормально:
|
||||
|
||||
|
@ -182,28 +182,25 @@ lbmk.
|
|||
що означає те, що кожен сценарій *може* бути використано самостійно (якщо це не є правдою, для
|
||||
будь-якого сценарія, це є помилкою, яка має бути виправлена).
|
||||
|
||||
Це настільки просто, як це:
|
||||
|
||||
./download all
|
||||
|
||||
Вищезазначена команда завантажує всі модулі, які означено в системі побудови libreboot.
|
||||
Однак, ви можете завантажити модулі індивідуально.
|
||||
|
||||
Ця команда показує вам список доступних модулів:
|
||||
|
||||
./download list
|
||||
Check the list of downloadable modules by reading `resources/git/revisions`.
|
||||
|
||||
Приклад завантаження індивідуального модуля:
|
||||
|
||||
./download coreboot
|
||||
./fetch seabios
|
||||
|
||||
./download seabios
|
||||
./fetch grub
|
||||
|
||||
./download grub
|
||||
./fetch flashrom
|
||||
|
||||
./download flashrom
|
||||
Coreboot and u-Boot are handled by a separate script:
|
||||
|
||||
./download u-boot
|
||||
./fetch_trees coreboot
|
||||
|
||||
./fetch_trees u-boot
|
||||
|
||||
The 'fetch_trees` script creates multiple directories
|
||||
based on revisions, and patches per revision, whereas
|
||||
the `fetch` script only does one revision.
|
||||
|
||||
Третє, побудова кожного з модулів:
|
||||
--------------------------------
|
||||
|
|
|
@ -256,7 +256,7 @@ the *ROM* by using the `-C` option in nvramtool. You can find this under the
|
|||
directory `coreboot/default/util/nvramtool` when downloading coreboot inside
|
||||
of lbmk by running the command:
|
||||
|
||||
./download coreboot default
|
||||
./fetch_trees coreboot default
|
||||
|
||||
Go in there and type `make` to build nvramtool. Simply run nvramtool without
|
||||
arguments, and it will show a list of options.
|
||||
|
|
|
@ -130,7 +130,7 @@ Obtaining the VGA Option ROM (Nvidia)
|
|||
-------------------------------------
|
||||
|
||||
Libreboot does not (and will not) directly distribute the Nvidia ROM, but this
|
||||
WIP branch has logic added to `blobutil`, which automatically fetches Dell
|
||||
WIP branch has logic added to blob scripts, which automatically fetches Dell
|
||||
update files and extracts the Video BIOS from it. This is inserted during
|
||||
the build process, *automatically*. Everything has been figured out *for you*,
|
||||
as is the purpose of Libreboot's [automated build system](../maintain/).
|
||||
|
@ -159,7 +159,7 @@ confirmed to work, as of 9 May 2023):
|
|||
With build dependencies installed, and Git configured, you may then run
|
||||
lbmk commands to compile the ROM image.
|
||||
|
||||
Libreboot's `blobutil`, while in the `e6400nvidia_wip` branch, can be
|
||||
Libreboot's blob scripts, while in the `e6400nvidia_wip` branch, can be
|
||||
executed like so:
|
||||
|
||||
./blobutil download e6400nvidia_4mb
|
||||
|
|
|
@ -89,7 +89,7 @@ In order to inject the necessary blobs into a rom image, run the script from the
|
|||
If you only wish to flash a release rom then the process of injecting the necessary blobs is quite simple.
|
||||
Run the injection script pointing to the release archive you downloaded:
|
||||
|
||||
./blobutil inject /path/to/libreboot-20230319-18-g9f76c92_t440pmrc_12mb.tar.xz
|
||||
./update blobs inject /path/to/libreboot-20230319-18-g9f76c92_t440pmrc_12mb.tar.xz
|
||||
|
||||
The script can automatically detect the board as long as you do not change the file name.
|
||||
You can then find flash-ready ROMs in `/bin/release/`
|
||||
|
@ -98,12 +98,12 @@ Alternatively, you may patch only a single rom file, but you must supply the
|
|||
correct board target name as alluded to above.
|
||||
For example:
|
||||
|
||||
./blobutil inject -r x230_libreboot.rom -b x230_12mb
|
||||
./update blobs inject -r x230_libreboot.rom -b x230_12mb
|
||||
|
||||
Optionally, you can use this script to modify the mac address of the rom with the `-m` flag.
|
||||
For example:
|
||||
|
||||
./blobutil inject -r x230_libreboot.rom -b x230_12mb -m 00:f6:f0:40:71:fd
|
||||
./update blobs inject -r x230_libreboot.rom -b x230_12mb -m 00:f6:f0:40:71:fd
|
||||
|
||||
Check that the blobs were inserted
|
||||
==================================
|
||||
|
|
|
@ -92,7 +92,7 @@ In order to inject the necessary blobs into a rom image, run the script from the
|
|||
If you only wish to flash a release rom then the process of injecting the necessary blobs is quite simple.
|
||||
Run the injection script pointing to the release archive you downloaded:
|
||||
|
||||
./blobutil inject /path/to/libreboot-20230319-18-g9f76c92_t440pmrc_12mb.tar.xz
|
||||
./update blobs inject /path/to/libreboot-20230319-18-g9f76c92_t440pmrc_12mb.tar.xz
|
||||
|
||||
The script can automatically detect the board as long as you do not change the file name.
|
||||
You can then find flash-ready ROMs in `/bin/release/`
|
||||
|
@ -101,12 +101,12 @@ Alternatively, you may patch only a single rom file, but you must supply the
|
|||
correct board target name as alluded to above.
|
||||
For example:
|
||||
|
||||
./blobutil inject -r x230_libreboot.rom -b x230_12mb
|
||||
./update blobs inject -r x230_libreboot.rom -b x230_12mb
|
||||
|
||||
Optionally, you can use this script to modify the mac address of the rom with the `-m` flag.
|
||||
For example:
|
||||
|
||||
./blobutil inject -r x230_libreboot.rom -b x230_12mb -m 00:f6:f0:40:71:fd
|
||||
./update blobs inject -r x230_libreboot.rom -b x230_12mb -m 00:f6:f0:40:71:fd
|
||||
|
||||
Check that the blobs were inserted
|
||||
==================================
|
||||
|
|
|
@ -367,7 +367,7 @@ install flashrom. Do this after downloading the
|
|||
NOTE: debian, arch or void can be written instead of ubuntu2004. the debian
|
||||
script is also applicable to newer ubuntu versions
|
||||
|
||||
./download flashrom
|
||||
./fetch flashrom
|
||||
./build module flashrom
|
||||
|
||||
If the `ubuntu2004` script complains about missing dependencies, just modify
|
||||
|
|
|
@ -256,7 +256,7 @@ Flashrom 是用来读出、擦除、重写 NOR flash 内容的软件。
|
|||
|
||||
注意:你可以输入 debian、arch 或 void 来替换 ubuntu。debian 脚本也可以用于新版 ubuntu。
|
||||
|
||||
./download flashrom
|
||||
./fetch flashrom
|
||||
./build module flashrom
|
||||
|
||||
如果 `ubuntu2004` 报告了依赖缺失,编辑一下这个脚本,把缺失的依赖移除就行了。脚本位于 `resources/scripts/build/dependencies/ubuntu2004`,它是写给 Ubuntu 20.04 的,但在其他使用 `apt-get` 包管理器的 Linux 发行版应该也能用。
|
||||
|
|
|
@ -25,19 +25,19 @@ In order to inject the necessary blobs into a rom image, run the script from the
|
|||
If you only wish to flash a release rom then the process of injecting the necessary blobs is quite simple.
|
||||
Run the injection script pointing to the release archive you downloaded:
|
||||
|
||||
./blobutil inject /path/to/libreboot-20230423_t420_8mb.tar.xz
|
||||
./update blobs inject /path/to/libreboot-20230423_t420_8mb.tar.xz
|
||||
|
||||
The script can automatically detect the board as long as you do not change the file name.
|
||||
You can then find flash-ready ROMs in `/bin/release/`
|
||||
|
||||
Alternatively, you may patch only a single rom file.
|
||||
|
||||
./blobutil inject -r t420_libreboot.rom -b t420_8mb
|
||||
./update blobs inject -r t420_libreboot.rom -b t420_8mb
|
||||
|
||||
Optionally, you can use this script to modify the mac address of the rom with the `-m` flag.
|
||||
For example:
|
||||
|
||||
./blobutil inject -r t420_libreboot.rom -b t420_8mb -m 00:f6:f0:40:71:fd
|
||||
./update blobs inject -r t420_libreboot.rom -b t420_8mb -m 00:f6:f0:40:71:fd
|
||||
|
||||
Disassembly
|
||||
-----------
|
||||
|
|
|
@ -28,7 +28,7 @@ In order to inject the necessary blobs into a rom image, run the script from the
|
|||
If you only wish to flash a release rom then the process of injecting the necessary blobs is quite simple.
|
||||
Run the injection script pointing to the release archive you downloaded:
|
||||
|
||||
./blobutil inject /path/to/libreboot-20230319-18-g9f76c92_t440_12mb.tar.xz
|
||||
./update blobs inject /path/to/libreboot-20230319-18-g9f76c92_t440_12mb.tar.xz
|
||||
|
||||
The script can automatically detect the board as long as you do not change the file name.
|
||||
You can then find flash-ready ROMs in `/bin/release/`
|
||||
|
@ -36,21 +36,21 @@ You can then find flash-ready ROMs in `/bin/release/`
|
|||
Alternatively, you may patch only a single rom file.
|
||||
For example (libre replacement of `mrc.bin`):
|
||||
|
||||
./blobutil inject -r t440p_libreboot.rom -b t440p_12mb
|
||||
./update blobs inject -r t440p_libreboot.rom -b t440p_12mb
|
||||
|
||||
Optionally, you can use this script to modify the mac address of the rom with the `-m` flag.
|
||||
For example:
|
||||
|
||||
./blobutil inject -r t440p_libreboot.rom -b t440p_12mb -m 00:f6:f0:40:71:fd
|
||||
./update blobs inject -r t440p_libreboot.rom -b t440p_12mb -m 00:f6:f0:40:71:fd
|
||||
|
||||
If you're flashing a ROM that needs blob `mrc.bin`, you would do one of these
|
||||
instead, for example:
|
||||
|
||||
./blobutil inject -r t440p_libreboot.rom -b t440pmrc_12mb
|
||||
./update blobs inject -r t440p_libreboot.rom -b t440pmrc_12mb
|
||||
|
||||
or (inserting a different MAC address)
|
||||
|
||||
./blobutil inject -r t440p_libreboot.rom -b t440pmrc_12mb -m 00:f6:f0:40:71:fd
|
||||
./update blobs inject -r t440p_libreboot.rom -b t440pmrc_12mb -m 00:f6:f0:40:71:fd
|
||||
|
||||
NOTE: this makes use of `nvmutil`, which you can read more about in
|
||||
the [nvmutil documentation](nvmutil.md).
|
||||
|
|
|
@ -30,7 +30,7 @@ The script can determine the board automatically if you have not changed the nam
|
|||
In order to inject the necessary blobs into a rom image, run the script from the root of lbmk and point to the rom image.
|
||||
Run the injection script pointing to the release archive you downloaded:
|
||||
|
||||
./blobutil inject /path/to/libreboot-20230319-18-g9f76c92_t440_12mb.tar.xz
|
||||
./update blobs inject /path/to/libreboot-20230319-18-g9f76c92_t440_12mb.tar.xz
|
||||
|
||||
The script can automatically detect the board as long as you do not change the file name.
|
||||
You can then find flash-ready ROMs in `/bin/release/`
|
||||
|
@ -38,12 +38,12 @@ You can then find flash-ready ROMs in `/bin/release/`
|
|||
Alternatively, you may patch only a single rom file.
|
||||
For example:
|
||||
|
||||
./blobutil inject -r x230_libreboot.rom -b x230_12mb
|
||||
./update blobs inject -r x230_libreboot.rom -b x230_12mb
|
||||
|
||||
Optionally, you can use this script to modify the mac address of the rom with the `-m` flag.
|
||||
For example:
|
||||
|
||||
./blobutil inject -r x230_libreboot.rom -b x230_12mb -m 00:f6:f0:40:71:fd
|
||||
./update blobs inject -r x230_libreboot.rom -b x230_12mb -m 00:f6:f0:40:71:fd
|
||||
|
||||
NOTE: this makes use of `nvmutil`, which you can read more about in
|
||||
the [nvmutil documentation](nvmutil.md).
|
||||
|
|
|
@ -60,7 +60,7 @@ of the libreboot Git repository.
|
|||
|
||||
Then, download coreboot:
|
||||
|
||||
./download coreboot
|
||||
./fetch_trees coreboot
|
||||
|
||||
Finally, compile the `cbutils` module:
|
||||
|
||||
|
|
|
@ -84,7 +84,7 @@ You can build `cbfstool` in the libreboot build system. Run this command:
|
|||
|
||||
This assumes that you already downloaded coreboot:
|
||||
|
||||
./download coreboot
|
||||
./fetch_trees coreboot
|
||||
|
||||
This, in turn, assumes that you have installed the build dependencies for
|
||||
libreboot. On Ubuntu 20.04 and other apt-get distros, you can do this:
|
||||
|
@ -156,7 +156,7 @@ GRUB using the libreboot build system. Run the following commands (assuming
|
|||
you have the correct build dependencies installed) to build GRUB, from the
|
||||
libreboot Git repository:
|
||||
|
||||
./download grub
|
||||
./fetch_trees grub
|
||||
|
||||
./build module grub
|
||||
|
||||
|
|
|
@ -337,7 +337,7 @@ apply custom patches to GRUB.
|
|||
|
||||
This runs scripts in `resources/scripts/download`. For example:
|
||||
|
||||
./download coreboot
|
||||
./fetch_trees coreboot
|
||||
|
||||
This would run:
|
||||
|
||||
|
@ -345,7 +345,7 @@ This would run:
|
|||
|
||||
Additional parameters can be given, for example:
|
||||
|
||||
./download coreboot default
|
||||
./fetch_trees coreboot default
|
||||
|
||||
This would run:
|
||||
|
||||
|
|
|
@ -117,10 +117,10 @@ You'll need a unified rom for dual chip setups; see [the ivybridge haswell guide
|
|||
for instructions on creating a unified rom image.
|
||||
|
||||
Extracting the blobs from a vendor rom image is automated in lbmk.
|
||||
Simply run `./blobutil extract [board] [/path/to/backup.bin]`
|
||||
Simply run `./update blobs extract [board] [/path/to/backup.bin]`
|
||||
For example:
|
||||
|
||||
./blobutil extract t420s_12mb t420s_backup.bin
|
||||
./update blobs extract t420s_12mb t420s_backup.bin
|
||||
|
||||
You can then modify your coreboot configs again and set the path for the
|
||||
intel firmware descriptor, intel management engine, and gigabit ethernet firmware.
|
||||
|
|
|
@ -114,10 +114,10 @@ libreboot як `плата.`
|
|||
для інструкцій про створення уніфікованого образу rom.
|
||||
|
||||
Витягнення блобів з образа rom постачальника автоматизовано в lbmk.
|
||||
Просто виконайте `./blobutil extract [плата] [/path/to/backup.bin]`
|
||||
Просто виконайте `./update blobs extract [плата] [/path/to/backup.bin]`
|
||||
Наприклад:
|
||||
|
||||
./blobutil extract t420s_12mb t420s_backup.bin
|
||||
./update blobs extract t420s_12mb t420s_backup.bin
|
||||
|
||||
Ви можете потім модифікувати ваші конфігурації coreboot знову та встановити шлях для
|
||||
intel firmware descriptor, intel management engine, та прошивки gigabit ethernet.
|
||||
|
|
|
@ -106,7 +106,7 @@ Build system changes:
|
|||
fixes this issue which has existed in coreboot *for years*:
|
||||
<https://browse.libreboot.org/lbmk.git/plain/resources/grub/patches/0005-at-keyboard-timeout.patch?id=20192c08488104f5cacc1f3842ae8e0ee74c44ef>
|
||||
* `build/release/roms`: HP KBC1126 EC firmware scrubbed from release ROMs, for
|
||||
re-insertion later via `./blobutil download` and `./blobutil inject` like
|
||||
re-insertion later via `./update blobs download` and `./update blobs inject` like
|
||||
with ME images via `me_cleaner` - for HP laptops. Patch courtesy Leah Rowe.
|
||||
* `build/dependencies/parabola`: New script for installing build dependencies
|
||||
in Parabola GNU+Linux, courtesy of Riku Viitanen (`Riku_V` on Libreboot IRC)
|
||||
|
@ -124,7 +124,7 @@ Build system changes:
|
|||
* `blobutil/download`: support downloading KBC1126-based EC firmware for HP
|
||||
laptops. (patch by Leah Rowe)
|
||||
* `blobutil/download`: Support extracting `me.bin` from full archives, when
|
||||
running `./blobutil download` - this is done, using the `-M` option
|
||||
running `./update blobs download` - this is done, using the `-M` option
|
||||
in `me_cleaner` (some vendors put whole ROM images with IFD, GBE, ME and BIOS
|
||||
regions in them, inside their BIOS update archives - we only need to get ME
|
||||
from them, to run through `me_cleaner`) in `me_cleaner`. Ninja'd into lbmk by
|
||||
|
|
Loading…
Reference in New Issue