summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
5 daysrename include/lib.sh to init.shLeah Rowe
this is in prep for the next change, where non-init functions will be moved to another file, again named include/lib.sh Signed-off-by: Leah Rowe <leah@libreboot.org>
5 dayslib.sh: introduce more top-down function orderLeah Rowe
a lot of init code was handled outside of any function. the coding style used in the rest of the build system has now been introduced, with xbmk_init being the main function. Signed-off-by: Leah Rowe <leah@libreboot.org>
5 daysmk/git.sh: remove tree_depend variableLeah Rowe
this was used alongside the xgcc linking, so that coreboot trees could specify that another tree was to be downloaded. since this variable will no longer be used, it should be removed, to avoid dead code bloat. Signed-off-by: Leah Rowe <leah@libreboot.org>
5 daysgit.sh: remove unused xgcc linking featureLeah Rowe
the "xtree" variable is used by projects such as u-boot, to export a CROSS_COMPILE variable specifying prefix for gnu compilers, and for building the named coreboot tree. for example, xtree can be "default", which is then the coreboot tree downloaded, for use of crossgcc. however, it is also used to symlink identical versions of crossgcc between coreboot trees. this latter feature was only needed for fam15h boards which were previously split between two mostly identical coreboot trees, that were later merged into a single tree, and this feature is therefore no longer used. remove this dead code, to reduce bloat in the build system. Signed-off-by: Leah Rowe <leah@libreboot.org>
5 daysmk: remove unused variables (ser/xp)Leah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
5 daysmk: simplify main()Leah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
5 dayslib.sh: use realpath to get sys python on venvLeah Rowe
In the previous revision, I make hardcoded use of /usr/local/bin and /usr/bin as search locations, instead of relying on PATH, when the user has a python venv, because in those cases, we cannot rely on PATH so we use a python command to detect the venv and then force use of the normal system path for python. However, there's no guarantee that the real Python will indeed live at these locations. For example, some distros like Nix or Guix will use many locations for different versions of a given package, and it's for the birds as to what given package version the user might be running. Therefore, this patch retains that current hardcoded assumption of /usr/local/bin and /usr/bin but *only* as a fallback solution, instead checking realpath first. The "realpath" command isn't technically POSIX standard, but in practise it is available on GNU coreutils, Busybox, and the various BSD userlands. I could perhaps *import* a realpath utility, and use that, but this should be fine. Signed-off-by: Leah Rowe <leah@libreboot.org>
6 dayslib.sh: Force use of System Python to prevent hangLeah Rowe
If the user has a virtual environment, the current logic will cause lbmk to hang. A useful workaround is to force use of the direct path to the system binary of python. This works by detecting a virtual environment first, and deferring to the old behaviour if no venv is found. If one is found, then it will not rely on PATH, but instead only search the standard locations /usr/local/bin and /usr/bin. Signed-off-by: Leah Rowe <leah@libreboot.org>
9 dayslib.sh: further condense the python checkLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
9 dayslib.sh: further simplify the python checkLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
9 dayslib.sh: condense the python checkLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
9 dayslib.sh: simplify mk()Leah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
9 dayslib.sh: simplify cbfs()Leah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
9 dayslib.sh: simplify the python checkLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
9 daysmk: remove mkhelp() and use x_() insteadLeah Rowe
x_ and mkhelp pretty much do the same thing in fact, there is no functional difference Signed-off-by: Leah Rowe <leah@libreboot.org>
9 daysmk: simplify handling of trees()Leah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
9 dayscoreboot/hp8300cmt: purge xhci_overcurrent_mappingLeah Rowe
This prevents a build error, as the variable is no longer used at all by coreboot (EHCI mapping is used as reference instead). Signed-off-by: Leah Rowe <leah@libreboot.org>
9 daysFix VBT path on HP Elite desktopsLeah Rowe
Also: hp8300cmt_16mb did not specify a data.vbt path, even though it is indeed available in the coreboot tree. This has been corrected. The previous lack of VBT on hp8300cmt_16mb wasn't really a big problem, since coreboot handles initialisation anyway, and it's basically optional on Linux. Coreboot doesn't parse VBT at all. This patch should fix build errors, that were caused on the recent revision update, where several of the HP desktops have now been turned into variants. Signed-off-by: Leah Rowe <leah@libreboot.org>
10 dayslib.sh: add missing copyright yearLeah Rowe
alper made a fix to this file a few hours ago, but forgot to update the copyright header i'm doing it for alper, as a courtesy Signed-off-by: Leah Rowe <leah@libreboot.org>
10 daysifd/q45t_am: unlock regions by defaultLeah Rowe
i used ifdtool --unlock to do this Signed-off-by: Leah Rowe <leah@libreboot.org>
10 dayscoreboot/g43t_am3: use ifd-based setupLeah Rowe
no-ME setup. with a gbe file. we previously made this a descriptorless setup. Signed-off-by: Leah Rowe <leah@libreboot.org>
10 dayscoreboot/q45t_am3: use ifd-based setupLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
10 dayscoreboot/default: add missing submodulesLeah Rowe
due to a rule in .gitignore, these were ignored, because it ignores .tar.xz entries in git status Signed-off-by: Leah Rowe <leah@libreboot.org>
10 daysNEW MAINBOARD: Acer Q45T-AM (G43T-AM3 variant)Leah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
10 daysmk: don't print confirmation of git pkg.cfgLeah Rowe
otherwise, the "list" commands include such text, where they should not. Signed-off-by: Leah Rowe <leah@libreboot.org>
10 dayscoreboot/g43t_am3: fix data.vbt pathLeah Rowe
this board became a variant, in the new coreboot revision that lbmk recently updated to. fix the data.vbt path to prevent error. Signed-off-by: Leah Rowe <leah@libreboot.org>
10 daysadd missing config/data/coreboot/0Leah Rowe
this is a file containing one byte, of value zero i meant to add it in previous commits, for the resizing and shrinking of tarballs when inserting or deleting vendor files used by include/vendor.sh Signed-off-by: Leah Rowe <leah@libreboot.org>
10 daysMerge pull request 'lib.sh: Fix python3 detection when 'python' is python2' ↵Leah Rowe
(#290) from alpernebbi/lbmk:python3-detection-fix into master Reviewed-on: https://codeberg.org/libreboot/lbmk/pulls/290
10 dayslib.sh: Fix python3 detection when 'python' is python2Alper Nebi Yasak
Properly set $pyver to "3" when we detect we can use python3. In the following version checks, use the $python we detected instead of a 'python' from PATH because the latter might be a python2 while still co-existing with a python3. Signed-off-by: Alper Nebi Yasak <alpernebiyasak@gmail.com>
10 dayscoreboot/next: merge with coreboot/defaultLeah Rowe
I also cherry-picked a patch from Heads, that fixes build issues caused by the hacks in the T480 port; several changes made by Mate are now ifdef'd based on whether a KabyLake ThinkPad is specified in defconfig. Signed-off-by: Leah Rowe <leah@libreboot.org>
11 dayscoreboot/default: Update, c247f62749b (8 Feb 2025)Leah Rowe
This is currently the latest revision of coreboot. Other coreboot trees to follow. The "next" tree will also be merged with coreboot/default, in a follow-up commit. Signed-off-by: Leah Rowe <leah@libreboot.org>
12 daysUpdate the GRUB revisionsLeah Rowe
A number of regressions were caused by the recent CVE fixes, many of which have since been fixed upstream. This includes several ext4 file system bugs, which caused some systems not to boot properly, when dealing with very large initramfs files. No additional patching has been made. This will be tested, and then used to provide a revision update for Libreboot 20241206. After this, there are several additional OOT patches that will be merged, for the next *testing release* of Libreboot. Update to this revision, for all GRUB trees: a4da71dafeea519b034beb159dfe80c486c2107c This brings in the following changes from upstream: * a4da71daf util/grub-install: Include raid5rec module for RAID 4 as well * 223fcf808 loader/ia64/efi/linux: Reset grub_errno on failure to allocate * 6504a8d4b lib/datetime: Specify license in emu module * 8fef533cf configure: Add -mno-relax on riscv* * 1fe094855 docs: Document the long options of tpm2_key_protect_init * 6252eb97c INSTALL: Document the packages needed for TPM2 key protector tests * 9d4b382aa docs: Update NV index mode of TPM2 key protector * 2043b6899 tests/tpm2_key_protector_test: Add more NV index mode tests * 9f66a4719 tests/tpm2_key_protector_test: Reset "ret" on fail * b7d89e667 tests/tpm2_key_protector_test: Simplify the NV index mode test * 5934bf51c util/grub-protect: Support NV index mode * cd9cb944d tpm2_key_protector: Support NV index handles * fa69deac5 tpm2_key_protector: Unseal key from a buffer * 75c480885 tss2: Add TPM 2.0 NV index commands * 041164d00 tss2: Fix the missing authCommand * 46c9f3a8d tpm2_key_protector: Add tpm2_dump_pcr command * 617dab9e4 tpm2_key_protector: Dump PCRs on policy fail * 204a6ddfb loader/i386/linux: Update linux_kernel_params to match upstream * 6b64f297e loader/xnu: Fix memory leak * f94d257e8 fs/btrfs: Fix memory leaks * 81146fb62 loader/i386/linux: Fix resource leak * 1d0059447 lib/reloacator: Fix memory leaks * f3f1fcecd disk/ldm: Fix memory leaks * aae2ea619 fs/ntfs: Fix NULL pointer dereference and possible infinite loop * 3b25e494d net/drivers/ieee1275/ofnet: Add missing grub_malloc() * fee6081ec kern/ieee1275/init: Increase MIN_RMA size for CAS negotiation on PowerPC machines * b66c6f918 fs/zfs: Fix a number of memory leaks in ZFS code * 1d59f39b5 tests/util/grub-shell: Remove the work directory on successful run and debug is not on * e0116f3bd tests/grub_cmd_cryptomount: Remove temporary directories if successful and debug is not on * e6e2b73db tests/grub_cmd_cryptomount: Default TMPDIR to /tmp * 32b02bb92 tests/grub_cmd_cryptomount: Cleanup the cryptsetup script unless debug is enabled * c188ca5d5 tests: Cleanup generated files on expected failure in grub_cmd_cryptomount * 50320c093 tests/util/grub-shell-luks-tester: Add missing line to create RET variable in cleanup * bb6d3199b tests/util/grub-shell-luks-tester: Find cryptodisk by UUID * 3fd163e45 tests/util/grub-shell: Default qemuopts to envvar $GRUB_QEMU_OPTS * ff7f55307 disk/lvm: Add informational messages in error cases of ignored features * a16b4304a disk/lvm: Add support for cachevol LV * 9a37d6114 disk/lvm: Add support for integrity LV * 6c14b87d6 lvm: Match all LVM segments before validation * d34b9120e disk/lvm: Remove unused cache_pool * 90848a1f7 disk/lvm: Make cache_lv more generic as ignored_feature_lv * 488ac8bda commands/ls: Add directory header for dir args * 096bf59e4 commands/ls: Print full paths for file args * 90288fc48 commands/ls: Output path for single file arguments given with path * 6337d84af commands/ls: Show modification time for file paths * cbfb031b1 commands/ls: Merge print_files_long() and print_files() into print_file() * 112d2069c commands/ls: Return proper GRUB_ERR_* for functions returning type grub_err_t * da9740cd5 commands/acpi: Use options enum to index command options * 1acf11fe4 docs: Capture additional commands restricted by lockdown * 6a168afd3 docs: Document restricted filesystems in lockdown * be0ae9583 loader/i386/bsd: Fix type passed for the kernel * ee27f07a6 kern/partition: Unbreak support for nested partitions * cb639acea lib/tss2/tss2_structs.h: Fix clang build - remove duplicate typedef * 696e35b7f include/grub/mm.h: Remove duplicate inclusion of grub/err.h * 187338f1a script/execute: Don't let trailing blank lines determine the return code * ff173a1c0 gitignore: Ignore generated files from libtasn * fbcc38891 util/grub.d/30_os-prober.in: Conditionally show or hide chain and efi menu entries * 56ccc5ed5 util/grub.d/30_os-prober.in: Fix GRUB_OS_PROBER_SKIP_LIST for non-EFI * 01f064064 docs: Do not reference non-existent --dumb option * 3f440b5a5 docs: Replace @lbracechar{} and @rbracechar{} with @{ and @} * f20988738 fs/xfs: Fix grub_xfs_iterate_dir() return value in case of failure * 1ed2628b5 fs/xfs: Add new superblock features added in Linux 6.12/6.13 * 348cd416a fs/ext2: Rework out-of-bounds read for inline and external extents * c730eddd2 disk/ahci: Remove conditional operator for endtime * f0a08324d term/ns8250-spcr: Return if redirection is disabled * 7161e2437 commands/file: Fix NULL dereference in the knetbsd tests * 11b9c2dd0 gdb_helper: Typo hueristic * 224aefd05 kern/efi/mm: Reset grub_mm_add_region_fn after ExitBootServices() call * 531750f7b i386/tsc: The GRUB menu gets stuck due to unserialized rdtsc * f2a1f66e7 kern/i386/tsc_pmtimer: The GRUB menu gets stuck due to failed calibration * 13f005ed8 loader/i386/linux: Fix cleanup if kernel doesn't support 64-bit addressing Signed-off-by: Leah Rowe <leah@libreboot.org>
14 daysRevert "git.sh: minor cleanup"Leah Rowe
This reverts commit e63d8dd20d99ec18ef03699516fd800a81b7f1df.
14 dayslib.sh: perform root check even earlierLeah Rowe
initialising variables, setting PWD, setting version, this is all unnecessary before the root check, because the dependencies commands use none of these. Signed-off-by: Leah Rowe <leah@libreboot.org>
14 dayslib.sh: tidy up opening logic (put it together)Leah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
14 dayslib.sh: do root check before python checkLeah Rowe
we don't need python before the root check principle of least privilege Signed-off-by: Leah Rowe <leah@libreboot.org>
14 daysgit.sh: minor cleanupLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
14 dayslib.sh: simplify mktarball()Leah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
14 daysvendor.sh: tidy up vendor_download()Leah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
14 daysmk: tidy up check_gnu_path()Leah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
14 daysmk: simplify check_project_hashes()Leah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
14 dayslib.sh: fix missing s/TMPDIR/xbmktmpLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
14 dayslbmk: don't handle TMPDIR directlyLeah Rowe
lbmk creates TMPDIR as /tmp/xbmk_*, but it's theoretically possible that something could re-export it by mistake. this change retains the same initialisation, but further use is now via a new variable "xbmktmp", that stores the value of TMPDIR upon lbmk's initialisation of it. this reduces the chance of such a bug in the future, as described above, so it is a preemptive/preventative fix. Signed-off-by: Leah Rowe <leah@libreboot.org>
14 daysrom.sh: minor cleanupLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
14 daysvendor.sh: yet even more code cleanupLeah Rowe
code equals bugs. code that doesn't exist can't have bugs, so it is superior by definition. Signed-off-by: Leah Rowe <leah@libreboot.org>
14 daysvendor.sh: even more cleanupLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
14 daysvendor.sh: more cleanupLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
14 daysvendor.sh: minor cleanupLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
14 daysvendor.sh: simplify process_release_romsLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
14 daysvendor.sh: remove unnecessary checkLeah Rowe
the next part checks whether the file is below 512k, so there's no point checking if it's below 2, because the lowest a file size can be is zero, and expr will produce a result of -1 if decrementing from zero. Signed-off-by: Leah Rowe <leah@libreboot.org>