Age | Commit message (Collapse) | Author |
|
This reverts commit b840cf3a832de815a87d9d10b698eec97aceb342.
|
|
This reverts commit e2a97455cc25921dcb9f5e3a4bf06cdfb3e34b49.
|
|
loc is never empty.
if it is, it's a bug. don't hide bugs.
Signed-off-by: Leah Rowe <leah@libreboot.org>
|
|
this fixes a regression in a previous patch, this time
also taking account for the different cache locations.
all of get.sh needs to be purged, and re-written clean.
it looks clean. but it's years of hacks.
Signed-off-by: Leah Rowe <leah@libreboot.org>
|
|
This reverts commit b3232a7c4a6466381d798d7beda56fd020d86d54.
|
|
:
Signed-off-by: Leah Rowe <leah@libreboot.org>
|
|
they're the same commands, but -F does forcepull
Signed-off-by: Leah Rowe <leah@libreboot.org>
|
|
use it similarly to if_dry_build/if_not_dry_build
there is nothing cooler than an sh macro
:
Signed-off-by: Leah Rowe <leah@libreboot.org>
|
|
where backup links are available, use those as main instead.
this is because of the new XBMK_CACHE_MIRROR variable, which
makes --mirror be used
when performed on review.coreboot.org, this also pulls down
all changes from gerrit code review; the github backups for
example only contain the official branches, but gerrit creates
a new ref per merge request.
a user can still run ./mk -F to force pulling all repos,
including the coreboot.org ones, but use of -f will skip the
coreboot.org ones if the backup links worked and contain the
local commit needed, by a given project used in xbmk.
this patch won't change any real-world behaviour for xbmk
users, but it is done as a courtesy to the coreboot project,
in that it largely avoids a sudden surge in coreboot.org's
traffic if lots of users start doing XBMK_CACHE_MIRROR=y
if XBMK_CACHE_MIRROR is not set, or set to anything other
than y, a regular clone is performed, saving cached sources
to cache/clone/ - otherwise, cache/mirror/ is used.
Signed-off-by: Leah Rowe <leah@libreboot.org>
|
|
also separate some of the special ones.
this makes the variables easier to read/find.
Signed-off-by: Leah Rowe <leah@libreboot.org>
|
|
Don't hardcode the cache directory, and don't store
remotes anymore. This change retains compatibility
in practice, with the older directory location, because
it's extremely unlikely that newly generated locations
would conflict with old ones.
With this new change, non-mirror git clone caches are
now done twice; one directory per remote, rather than
one directory with two remotes.
This is just inherently much more reliable.
Signed-off-by: Leah Rowe <leah@libreboot.org>
|
|
Some repositories might use CR-LF line endings. This option
keeps Git from mangling patches when merging.
Repositories that don't do this, such as ALL repositories
currently used by xbmk, will be unaffected by this change.
This is being done in preparation for importing MrChromebox
edk2, as Intel's own edk2 repository on GitHub uses these.
Signed-off-by: Leah Rowe <leah@libreboot.org>
|
|
Don't do one repository for all remotes. Do one *clone* per
remote.
This also means that users no longer download information twice,
in practice, because the backup repository will only be downloaded
if the main one didn't work.
Theoretically, this change is makes the process less efficient, but
in practise it's more reliable now.
We do now use --mirror on the git clone command for caches, but we
already did git pull --all before.
This just ensures that we absolutely have all local code.
NOTE:
The new code isn't used by default. To use it, you must do:
export XBMK_CACHE_MIRROR="y"
Otherwise, the old behaviour will continue to be used. This is
because the new code, while correct, puts more strain on upstream
servers (more code being downloaded), and can result in higher amounts
of disk space being used. The old behaviour wasn't broken, so we'll
also support that method.
TODO: perhaps also have a check in place to re-use both caches,
where available, regardless of XBMK_CACHE_MIRROR?
Signed-off-by: Leah Rowe <leah@libreboot.org>
|
|
bauduser/lbmk:fedora43dependency into master
Reviewed-on: https://codeberg.org/libreboot/lbmk/pulls/364
|
|
|
|
recent re-factoring lead to certain code lines that
exceeded 79 characters in length.
we like to avoid this, whenever possible.
Signed-off-by: Leah Rowe <leah@libreboot.org>
|
|
i support -F, but didn't include it in the
actual getopt string.
Signed-off-by: Leah Rowe <leah@libreboot.org>
|
|
whatchanged is deprecated, and results in an error
on modern git versions, prompting you to include
the --i-still-use-this argument
what absolute, utter fucking arrogance. i use the
whatchanged feature every fucking day.
i will be complaining to git-scm.com about this.
but that's what we do in libreboot. we adapt.
Signed-off-by: Leah Rowe <leah@libreboot.org>
|
|
the way it was used is messy, and a relic of the
old chained command coding style, from before when
i recently loosened that requirement.
the new focus is simple, readable code, regardless
of size.
Signed-off-by: Leah Rowe <leah@libreboot.org>
|
|
instead of checking if_not_dry_build.
use it here the same way.
yes. shell script macros. it's how i roll.
Signed-off-by: Leah Rowe <leah@libreboot.org>
|
|
i added this in an earlier version of the patch, but
for some reason removed it.
this is necessary, or the build system will fail.
Signed-off-by: Leah Rowe <leah@libreboot.org>
|
|
see patch
Signed-off-by: Leah Rowe <leah@libreboot.org>
|
|
I realised that the Dell OptiPlex 3050 Micro has NVRAM available.
Use that backend, and hardcode power_on_after_fail to Disable,
which is already done in cmos.default.
The Lenovo ThinkPad T480 currently has no option table in coreboot,
besides the CBFS one. For this, the CBFS option table has been
enabled, and the build system has been modified to insert
a relevant config for power_on_after_fail.
Nicholas Chin informs me that Kabylake generally has legacy NVRAM,
so enabling it for the T480/T480s should work, but we'll need
to use it in the future anyway; better to just use CBFS now.
I *could* use the CBFS backend on 3050micro as well.
Signed-off-by: Leah Rowe <leah@libreboot.org>
|
|
16/17 patch' (#363) from noisytoot/haswell-nri-smbios-memory into master
Reviewed-on: https://codeberg.org/libreboot/lbmk/pulls/363
|
|
This patch implements SMBIOS type 16 and 17 for Haswell NRI, making
`dmidecode -t memory` work.
From https://review.coreboot.org/c/coreboot/+/89385
|
|
also, the check is -e, not -d, because we
might be operating on a symlink.
it's a bit hacky but this should work.
the previous change (now reverted) broke
re-use of the main cache/ in release work
directories.
Signed-off-by: Leah Rowe <leah@libreboot.org>
|
|
This reverts commit 23f98c29581e7d2cf5639e93fd89a6e64bec5635.
|
|
otherwise, an error occurs when doing ./mk release
Signed-off-by: Leah Rowe <leah@libreboot.org>
|
|
This reverts commit e8a3cd8cd0e99dbb99dbb1811c0396d2a3ee00c4.
We still need this for extracting the CAB files containing
KBC1126 EC firmware.
Signed-off-by: Leah Rowe <leah@libreboot.org>
|
|
xbmkdir checks if a directory exists, before running
mkdir, and then still uses -p
i was testing xbmk on arch linux today, and noticed
that it errored out when a directory already exists.
i'm mitigating against buggy or differently behaving
mkdir implementations this way, by wrapping around
it.
Signed-off-by: Leah Rowe <leah@libreboot.org>
|
|
this fixes ./mk inject
Signed-off-by: Leah Rowe <leah@libreboot.org>
|
|
we need the full fd path to be automatically set. this
patch prevents it from being removed by ./mk -u coreboot
Signed-off-by: Leah Rowe <leah@libreboot.org>
|
|
for reproducibility, we must not compress it
Signed-off-by: Leah Rowe <leah@libreboot.org>
|
|
otherwise, ./mk -u screws up the FSP path
we were still using the correct path for downloading
in ./mk inject, and in practise, the file used by
coreboot would have been the same, but without our
hash verification after splitting up the FSP.
that's the main reason we split FSP in lbmk, rather
than relying on coreboot's logic for this.
Signed-off-by: Leah Rowe <leah@libreboot.org>
|
|
but do it better. this time, the change won't cause any
behavioural differences.
the reason for the change is we don't want "$@" inside
an eval statement, if such calamity can be avoided.
Signed-off-by: Leah Rowe <leah@libreboot.org>
|
|
this reverts change made to this function in:
commit 4f01dc704a1ed0e18fc0efc1500e61b4bc41b0e6
Author: Leah Rowe <leah@libreboot.org>
Date: Sat Oct 4 06:13:15 2025 +0100
xbmk: remove even more eval statements
for some reason, the new code caused sch5545 ec firmware
to never download.
the old code wasn't horribly broken, so just use that.
Signed-off-by: Leah Rowe <leah@libreboot.org>
|
|
this way, the clean version can be placed inside the
release tarball.
there is a make clean option in sbase, but we should
not really on this.
the design of xbmk is that a clean src tarball is
created. there must not be build artifications in it.
Signed-off-by: Leah Rowe <leah@libreboot.org>
|
|
the --status flag seems to be a GNUism
as stated in the previous commit, i import sbase
suckless now, so as to have a consistent implementation
of sha512sum.
this ensures that its output is reliable, when i'm using
the output of this command within backticks.
Signed-off-by: Leah Rowe <leah@libreboot.org>
|
|
i currently use the output of sha512sum in several
places of xbmk, which is a bit unreliable in case
output changes.
other cases where i use util outputs in variables
are probably reliable, because i'm using mostly
posix utilities in those.
to mitigate this, i now import suckless sbase, which
has a reasonable sha512sum implementation.
*every* binary it builds is being placed in build.list,
because i'll probably start using more of them.
for example, i may start modifying the "date"
implementation, adding the GNU-specific options that
i need as mentioned on init.sh
i'm importing it in util/ because the sha512sum
util is needed for verifying project sources, so
if sbase itself is a "project source", that means
we can into a chicken and egg bootstrapping problem.
this is sbase at revision:
055cc1ae1b3a13c3d8f25af0a4a3316590efcd48
Signed-off-by: Leah Rowe <leah@libreboot.org>
|
|
the new names are still a bit crap, but a bit better.
Signed-off-by: Leah Rowe <leah@libreboot.org>
|
|
Signed-off-by: Leah Rowe <leah@libreboot.org>
|
|
Signed-off-by: Leah Rowe <leah@libreboot.org>
|
|
Signed-off-by: Leah Rowe <leah@libreboot.org>
|
|
Signed-off-by: Leah Rowe <leah@libreboot.org>
|
|
yet another oversight
Signed-off-by: Leah Rowe <leah@libreboot.org>
|
|
this was an oversight in my recent patch unrolling
the condensed code lines, to remove eval statements.
Signed-off-by: Leah Rowe <leah@libreboot.org>
|
|
it's still a dirty hack. i really should make
a better check here.
Signed-off-by: Leah Rowe <leah@libreboot.org>
|
|
i unrolled these lines earlier, but this line was
incorrect; dl was already handled. it's dl_bkup
that we have to handle here.
Signed-off-by: Leah Rowe <leah@libreboot.org>
|
|
Signed-off-by: Leah Rowe <leah@libreboot.org>
|
|
the symlink check is what made me use eval, but the
symlink check is not required, since i check every
entry that goes in nuke.list anyway.
not having that symlink check is safer than having
an eval statement on that line.
Signed-off-by: Leah Rowe <leah@libreboot.org>
|