Commit Graph

1675 Commits

Author SHA1 Message Date
Peter Korsgaard
ac53ade192 Merge branch 'next'
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2025-06-12 09:59:11 +02:00
Peter Korsgaard
c32f8a99bb docs/website/news.html: add 2025.05 announcement link
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2025-06-09 22:43:39 +02:00
Peter Korsgaard
fcde5363aa pdate for 2025.05
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2025-06-09 22:21:47 +02:00
Adam Duskett
7d8d48cd2b package/systemd: bump to version 257.5
Noteable changes:
  - Add -Dipe=false and -Dsysupdated=disabled as defaults to CONF_OPTS and
    HOST_CONF_OPTS. If another user has a use for either, they can submit a
    patch at a later date.

  - systemd-networkd now requires kernel >= 5.4 due to the inclusion of the
    sockios.h header, which uses the SIOCGSTAMP_OLD macro. This macro was first
    introduced in kernel 5.2, but the official README recommends 5.4 as a
    baseline, so stick with that. Due to this change:
      - systemd-networkd now depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4
      - default y only if BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4
      - Add a section in migrating.adoc about the new requirement

  - The sha256sum of README.md changed due to the addition of some CentOS CI
    lines.

  - Add the new license file LICENSES/alg-sha1-public-domain.txt.

For change log, see:
https://github.com/systemd/systemd/blob/v257.5/NEWS

Tested with `./utils/test-pkg -p systemd -a`
40 builds, 28 skipped, 0 build failed, 0 legal-info failed, 0 show-info failed

Tested with `./support/testing/run-tests tests.init.test_systemd`
All tests passed

Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>
Reviewed-by: Marcus Hoffmann <buildroot@bubu1.eu>
[Julien: add link to change log in commit log]
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-06-01 22:45:40 +02:00
Peter Korsgaard
1bdb79ba78 Update for 2025.05-rc2
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2025-05-28 22:05:47 +02:00
Peter Korsgaard
37a715969f Update for 2025.05-rc1
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2025-05-19 12:33:23 +02:00
Arnout Vandecappelle
43a74db621 docs/website/{download,news}.html: update for 2025.02.3
Signed-off-by: Arnout Vandecappelle <arnout@rnout.be>
2025-05-19 09:57:25 +02:00
Francois Perrad
36f9436488 docs/manual/customize-directory-structure.adoc: suggest a custom top Makefile
Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
[Arnout: give a bit more explanation, simplify the example]
Signed-off-by: Arnout Vandecappelle <arnout@rnout.be>
2025-05-18 18:20:28 +02:00
Arnout Vandecappelle
05d8a49c09 docs/website/{download,news}.html: update for 2025.02.2
Signed-off-by: Arnout Vandecappelle <arnout@rnout.be>
2025-05-18 17:20:20 +02:00
Guillaume Chaye
e240b889f1 support/download/dl-wrapper: add basic support for smb file download using curl
It allows to download files from smb share in buildroot packages.
Usage is specified in manual.

Signed-off-by: Guillaume Chaye <guillaume.chaye@zeetim.com>
[Peter: reword documentation]
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2025-05-18 11:27:59 +02:00
Arnout Vandecappelle
1026abbcf9 docs/manual/adding-packages-tips.adoc: add section about private repositories
Buildroot packaging pretty much assumes that the sources it downloads
are publicly available. In general, however, Buildroot is also used to
download sources from private repositories. Nowadays, that mostly means
from a github or gitlab instance.

Although git-over-ssh can be used for that, this poses a problem for CI,
because the CI runners integrated with github and gitlab only have
access to the repository itself, not to other private repositories. And
creating ssh key pairs for CI runners is tricky.

Therefore, document how standard tools can be used to make private
repositories available both to developers and to CI. There are quite a
few alternative approaches possible, but they're more complicated or
less generically applicable.

Signed-off-by: Arnout Vandecappelle <arnout@rnout.be>
[Peter: Fix insteadOf example, capitalize SSH/HTTPS]
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2025-05-17 11:31:40 +02:00
Thomas Petazzoni
b0a62a9654 docs/migrating.adoc: document the tarball suffix update for Cargo-fetch packages
We changed the suffix of tarballs for Cargo-fetched packages, which
affects out-of-tree packages, so it makes sense to document that in
the migration guide.

Reported-by: Julien Olivain <ju.o@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Arnout Vandecappelle <arnout@rnout.be>
2025-05-16 20:00:38 +02:00
Marcus Hoffmann
b15cd1d8fe docs/manual/adding-packages-python.adoc: clarify how _BUILD_OPTS work
PYTHON_FOO_BUILD_OPTS are passed to the build module call of the package
build, this allows passing options to the python build *backend* by
using the --config-setting= option. setup.py is no longer involved since
even the setuptools backend now used the pep517 build method.

The note about the options being passed to
support/scripts/pyinstaller.py seems to be no longer accurate.

Signed-off-by: Marcus Hoffmann <buildroot@bubu1.eu>
[Arnout: also mention -C (suggested by James)]
Signed-off-by: Arnout Vandecappelle <arnout@rnout.be>
2025-05-16 16:46:57 +02:00
Peter Korsgaard
d9182a7556 docs/website/download.html: update for 2025.02.1
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2025-05-16 10:25:31 +02:00
Thomas Petazzoni
448ceefa78 support/dependencies/dependencies.sh: awk is needed by Buildroot
A basic Fedora 42 container does not have 'awk' installed, but it is
needed by Buildroot. First by check-host-python3.sh:

support/dependencies/check-host-python3.sh: line 6: awk: command not found
support/dependencies/check-host-python3.sh: line 19: awk: command not found
support/dependencies/check-host-python3.sh: line 19: awk: command not found

but then even building host-expat assumes awk is available:

config.status: creating Makefile
./config.status: line 1404: awk: command not found
config.status: creating expat.pc
./config.status: line 1404: awk: command not found

Since it's a pretty basic tool, make it part of the tools checked by
dependencies.sh. One minor annoyance is that check-host-python3.sh is
executed *before* dependencies.sh does its thing, so when 'awk' is not
available, we end up seeing:

support/dependencies/check-host-python3.sh: line 6: awk: command not found
support/dependencies/check-host-python3.sh: line 19: awk: command not found
support/dependencies/check-host-python3.sh: line 19: awk: command not found
which: no awk in (/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin)
You must install 'awk' on your build machine
make: *** [support/dependencies/dependencies.mk:27: dependencies] Error 1

It would be nice to have the awk check *before* it gets used in
check-host-python3.sh, but that's a topic for another patch.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-05-08 21:35:27 +02:00
Peter Korsgaard
b459253bbf docs/website/news.html: correct left/right for 2024.02.13 entry
The 2024.02.13 entry should use the timeline-inverted class to get rendered
at the right side of the screen.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2025-04-23 08:59:01 +02:00
Arnout Vandecappelle
3154fd8ee1 docs/website/news.html: Update for 2025.02.1
Signed-off-by: Arnout Vandecappelle <arnout@rnout.be>
2025-04-22 23:46:45 +02:00
Arnout Vandecappelle
87d5d63983 docs/website/news.html: Update for 2024.02.13
Signed-off-by: Arnout Vandecappelle <arnout@rnout.be>
2025-04-22 23:38:41 +02:00
Arnout Vandecappelle
3ea8757fa5 docs/website/news.html: Update for 2024.11.4
Signed-off-by: Arnout Vandecappelle <arnout@rnout.be>
2025-04-22 23:24:50 +02:00
Yann E. MORIN
a1012b363a support/download/git: use FOO_DL_OPTS
The manual states that FOO_DL_OPTS are valid for all the different
download backends, but that is not the case: at least the git backend
does not use them (it does not fail, it just ignores them).

Accept FOO_DL_OPTS in the git backend, and pass them to 'git fetch'.
There is no way that we can pass such options to submodules or lfs,
though.

Update the manual accordingly.

Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2025-04-19 17:10:07 +02:00
Peter Korsgaard
b4d259727e docs/website: Update for 2024.02.12
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2025-03-25 09:46:44 +01:00
Peter Korsgaard
d3df91fca0 docs/website: Update for 2024.11.3
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2025-03-25 09:42:09 +01:00
Arnout Vandecappelle
b111e07fd5 docs/website: add current LTS sponsors
Add the LTS sponsors who engaged already for 2025: EVS, Open Home
Foundation, and Sense Labs. There is one more sponsor but they prefer to
remain anonymous.

For Open Home Foundation, we can reuse the existing logo. For the other
two, add their logo.

Add a new class panel-lts-sponsor for sizing the panels. It is different
from panel-sponsor because there doesn't need to be space for an
explanation of what type of sponsorship is done, we just need to have
space for the company name. So the minimum height is 200px instead of
350px.

Signed-off-by: Arnout Vandecappelle <arnout@mind.be>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-03-24 21:39:17 +01:00
Arnout Vandecappelle
e287bc7f44 docs/website/images/openhomefoundation-logo.png: crop for better layout
The Open Home Foundation logo is in a white area that is too large for
how we display it on the sponsors page. As a result, it ends up at the
bottom of the logo area and it looks very unbalanced.

Crop the logo to a tigher area. Since it is going to end up being
scaled, it's difficult to predict what the best size it is, but cropping
at a height of 300 pixels gives a visually pleasing layout at at least
some resolutions.

Signed-off-by: Arnout Vandecappelle <arnout@mind.be>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-03-24 21:39:06 +01:00
Peter Korsgaard
781987d67e Merge branch 'next' 2025-03-18 15:41:43 +01:00
Peter Korsgaard
d55efe967e docs/website/news.html: add 2025.02 announcement link
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2025-03-18 15:38:17 +01:00
Peter Korsgaard
aa2d7ca53f Update for 2025.02
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2025-03-17 18:54:20 +01:00
Yann E. MORIN
3a2baca4b7 system/skeleton: move target of /etc/resolv.conf symlink
In commit ba70f94e62 (subversion makes it so we do not need a separate
tarball to store empty directories and symlinks for the target_skeleton.)
/etc/resolv.conf was made a symlink to ../tmp/resolv.conf. There was no
rationale behind this change, but back at the time (2006!), the only
location that Buildroot guaranteed to be writable was /tmp, and we
needed a writable location to create resolv.conf from a DHCP reply for
example, so the change made sense.

Commits 2f67d9e2fe (preparation for BR2_PACKAGE_BUSYBOX_SKELETON), in
2007, then d9119c0bc5 (move default skeleton to fs/ and drop busybox
skeleton), in 2010, and finally 6c3e3ad419 (New top-level directory:
system), in 2012, propagated that /etc/resolv.conf without any change in
the target of the symlink.

However, since commit d380dde1d2 (skeleton: make /run a proper
directory/filesystem), in 2015, a tmpfs has been mounted on /run, so it
is now guaranteed to be writable as well for SYS-V-based systems. That
has also been the case for openrc since commit a840e485d1
(package/skeleton-init-openrc: new package), in 2019. This has also
always been the case for systemd as well.

resolv.conf is not a temporary file [0]; it is really more of a runtime
data; its location in /tmp is just a historical artefact of a long-wrong
assertion.

Nowadays, distributions either have an actual file as /etc/resolv.conf
(when /etc is writable), or it is a symlink to a location below /run.

Although resolv.conf is used by the C library resolver, a lot of
applications now will directly use it; this is the case for some
container management tools, such as podman (and its helpers, like
netavark), that expect /etc/resolv.conf to either be a file or a symlink
to somewhere in /run, and fail to provide DNS services if that is not
the case.

So, we move the target of /etc/resolv.conf to ../run/resolv.conf.

As a consequence, we can drop the workaround in podman's runtime test.

To be noted: there are tow custom fstab files in Buildroot that do not
explicitly mount a tmpfs on /run:
  - one for a systemd runtime test, so /run would also be a tmpfs there
    anyway, as systemd does mount one;
  - one for the mender_x86_64_efi_defconfig; that's a not a problem:
    / is an ext4 that is mounted r/w (and /tmp is not a tmpfs either, so
    the symlink to /tmp would not not have worked if / was not r/w
    anyway).

This leaves people with their own fstab, to adapt. Cater to them by
adding a little blurb in the documentation.

Note: the following 43 tests all built and ran successfully:
    tests.init
    tests.package.test_apache
    tests.package.test_docker_compose
    tests.package.test_dropbear
    tests.package.test_iputils
    tests.package.test_podman
    tests.package.test_skopeo
    tests.package.test_wget

(no other runtime test were attempted)

[0] temporary, as in relatively short-lived.

Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-03-15 22:23:59 +01:00
Peter Korsgaard
873407b46c docs/website/news.html: refer to gitlab bug tracker
We moved the issue tracking to gitlab some time ago.  Adjust the bug tracker
references in news.html to point to there instead of bugzilla for clarity.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2025-03-13 11:40:10 +01:00
Peter Korsgaard
53f74f49c0 Update for 2025.02-rc2
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2025-03-13 11:09:27 +01:00
Peter Korsgaard
a031b51637 Update for 2025.02-rc1
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2025-02-28 17:27:41 +01:00
Yann E. MORIN
dcb5d1d918 package/pkg-golang: allow packages to provide extldflags
Currently, only the -static extldflags may be set in the
golang-package infra. However, in some cases, it might be necessary to
pass other flags, either because they are needed on a specific
architecture, or a specific C library; packages may also have a need
to pass arbitrary linker flags when they use CGO linking.

For example, on AArch64, go forcibly uses ld.gold, but it is not
available in all toolchains, and ld.bfd works nowadays (following
patch); another case is musl, where PIE is not supported with go.

Introduce FOO_EXTLDFLAGS, which we use to set those flags, and that
packages can set to pass such flags.

Migrate the current setting of -static to use that new variable.

Signed-off-by: Yann E. MORIN <yann.morin@orange.com>
Tested-by: Nathaniel Roach <nroach44@nroach44.id.au>
Signed-off-by: Fiona Klute (WIWA) <fiona.klute@gmx.de>
Reviewed-by: Yann E. MORIN <yann.morin@orange.com>
Reviewed-by: Christian Stewart <christian@aperture.us>
Signed-off-by: Romain Naour <romain.naour@smile.fr>
2025-02-22 22:18:28 +01:00
Peter Korsgaard
2f0c31bffd docs/website: Update for 2024.11.2
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2025-02-21 15:53:51 +01:00
Peter Korsgaard
ca47c95118 docs/website: Update for 2024.02.11
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2025-02-21 15:51:39 +01:00
Francois Perrad
3ef139386d package: add support for <pkg>_BUSYBOX_CONFIG_FIXUPS
This will allow individual packages to define extra Busybox options
that they need.

Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2025-02-04 17:33:35 +01:00
Adam Duskett
67c6d1b12c package/mender: bump version to 3.5.3
Updating directly to 4.x is too difficult and complex, as mender 4.x is
a complete rewrite in C++, with several new dependencies and changes.

As such, update to the last version that was written in Go, which is
3.5.3. The following changes are necessary:

The artifact_info file is no longer supported. Instead, mender now expects a
bootstrap.mender artifact created by mender-artifact /var/lib/mender.
See the following for more information:
https://northerntech.atlassian.net/browse/MEN-2585
https://northerntech.atlassian.net/browse/MEN-2583
https://docs.mender.io/release-information/release-notes-changelog/mender-client#mender-3-5-0-1
https://github.com/mendersoftware/mender/blob/3.5.3/Documentation/automatic-bootstrap-artifact.md

  - Remove all instances of creating or copying an artifact_info file
    from board examples and package/mender.

  - Add a generate_mender_bootstrap_artifact method to
    board/mender/x86_64/post-image-efi.sh which creates a proper
    bootstrap.mender file and places it in the data partition.

  - Add a post-build.sh script to support/testing/tests/package/test_mender
    with the same generate_mender_bootstrap_artifact method with one change:
    As the rootfs.ext4 file is not yet created; we omit the optional
    --provides "rootfs-image.checksum:${img_checksum}" argument when
    generating the bootstrap.mender file.

Mender expects the device_type file to exist in /var/lib/mender/device_type.
  This is further supported by the following line in tests/Dockerfile.daemon:
  `echo device_type=docker-client > /var/lib/mender/device_type`

Add a migration section in docs/manual/migrating.adoc

Update the package/mender/readme.txt to include a quick mention of the
bootstrap.mender artifact change.

License changes:

New:
vendor/github.com/klauspost/compress/internal/snapref/LICENSE (BSD-3-Clause)
vendor/github.com/klauspost/compress/zstd/internal/xxhash/LICENSE.txt (MIT)

Removed:
vendor/github.com/klauspost/compress/internal/snapref/LICENSE
vendor/github.com/klauspost/compress/zstd/internal/xxhash/LICENSE.txt

Modified:
LICENSE: Update year from 2022 to 2024
LIC_FILES_CHKSUM.sha256: Sum of all Licenses changed
vendor/github.com/mendersoftware/mender-artifact/LICENSE
  - Update year from 2022 to 2023

Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>
[Arnout:
  - fix LIC_FILES_CHKSUM.sha256 hash
  - Better URL for bootstrap artifact doc
  - Migrate to 2025.02 instead of 2024.11
  - Improve migrating text (editorial changes)
]
Signed-off-by: Arnout Vandecappelle <arnout@mind.be>
2025-02-04 15:00:19 +01:00
Thomas Petazzoni
225ea56e8f docs/website: fix </div> soup
Commit bdcdc4428c got the div soup
wrong, adjust this.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2025-02-03 14:21:09 +01:00
Thomas Petazzoni
bdcdc4428c docs/website: add Open Home Foundation to the sponsors
The Open Home Foundation generously sponsored the Buildroot project
end of 2024, credit them.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2025-02-03 14:17:21 +01:00
Peter Korsgaard
d81b579d99 docs/website: Update for 2024.11.1
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2025-01-09 16:32:19 +01:00
Peter Korsgaard
9d3d12b6b5 docs/website: Update for 2024.02.10
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2025-01-09 15:05:33 +01:00
Peter Korsgaard
a836ca88b4 docs/website: Update for 2024.02.9
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2024-12-08 22:24:54 +01:00
Peter Korsgaard
eb24a208f7 docs/website: Update for 2024.08.3
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2024-12-08 21:12:26 +01:00
Peter Korsgaard
ef33e6bce6 docs/website/news.html: add 2024.11 announcement link
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2024-12-08 13:59:35 +01:00
Peter Korsgaard
8f9ce0c913 Update for 2024.11
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2024-12-08 11:18:01 +01:00
Peter Korsgaard
0901a670a8 Update for 2024.11-rc3
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2024-12-05 18:06:59 +01:00
Peter Korsgaard
b617eb3281 docs/website/news.html: refer to gitlab for buildroot-test repo
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2024-11-23 11:40:14 +01:00
Peter Korsgaard
366d403bed docs/website/news.html: use gitlab for all CHANGES links
We migrated to Gitlab a while ago, so update the CHANGES links to point to
that rather than git.buildroot.net.

Automated with:

sed -i 's|http://git.buildroot.net/buildroot/plain/CHANGES?id=\([^"]*\)|https://gitlab.com/buildroot.org/buildroot/-/blob/\1/CHANGES|g' \
 docs/website/news.html

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2024-11-23 11:36:10 +01:00
Peter Korsgaard
81d111dbd4 Update for 2024.11-rc2
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2024-11-23 11:00:53 +01:00
Peter Korsgaard
b4ae65e36e docs/website: Update for 2024.02.8
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2024-11-14 17:39:32 +01:00
Peter Korsgaard
a7ed78badc docs/website: Update for 2024.08.2
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2024-11-14 14:50:12 +01:00