Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Tracking: skiff-next vs. upstream mainline #6

Closed
wants to merge 32 commits into from

Conversation

paralin
Copy link
Collaborator

@paralin paralin commented Aug 8, 2020

No description provided.

automated build + check-package + legal-info.

Signed-off-by: Christian Stewart <[email protected]>
@paralin paralin force-pushed the skiff-next branch 11 times, most recently from 401f03b to d0973e1 Compare August 13, 2020 21:38
@paralin paralin force-pushed the skiff-next branch 4 times, most recently from b0746d7 to 110797f Compare August 20, 2020 18:08
Signed-off-by: Christian Stewart <[email protected]>
All Go compiler versions > 1.4.x (old) are written in Go, and require a existing
compiled Go version to use to build from source.

https://golang.org/doc/install/source#bootstrapFromSource

The process for "bootstrapping" the Go compiler in Buildroot is:

1. Compile a C/C++ cross-compiler (gcc) as the host toolchain.
2. Build go-bootstrap (which is Go 1.4.x and written in C)
3. Build go 1.16.x (written in Go) using go-bootstrap.

The problem is that step 2 - build go-bootstrap - does not work on 64-bit arm.
The Go compiler from 1.4.x is compatible with x86, x86_64, and arm (32 bit).

This means that arm64 host machines will skip building Go and all go-based
packages like Docker.

This patch instead uses the host Go compiler to bootstrap host-go when
BR2_PACKAGE_HOST_GO_BOOTSTRAP_ARCH_SUPPORTS is not set. This is similar to how
the host GCC is used to bootstrap the Buildroot toolchain.

Signed-off-by: Christian Stewart <[email protected]>

---

WIP:

https://patchwork.ozlabs.org/project/buildroot/patch/[email protected]/
Adds both host and target packages for buildah.

Buildah is a tool that facilitates building OCI images.

https://github.com/containers/buildah

The buildah tree does not ship with a default policy.json file, and instead
relies on packagers to provide one. A patch is added to create a basic barebones
policy.json which is installed to /etc/containers/policy.json with a hook.

Signed-off-by: Christian Stewart <[email protected]>

---

v1 -> v2:

 - add package to developers
 - add host runc dependency for host package
 - add libgpgme runtime dependency

v2 -> v3:

 - add policy.json to target: required by some commands
 - example: buildah pull docker.io/library/alpine
 - pull: tested on raspberry pi 4
nerdctl is a CLI for containerd (package docker-containerd) which is drop-in
compatible with the Docker Daemon CLI.

This allows using the lighter weight containerd daemon directly, instead of via
the additional docker daemon. It also implements rootless mode.

https://github.com/containerd/nerdctl

Signed-off-by: Christian Stewart <[email protected]>

---

v1:

 - pkg-golang does not support main.go at root of project
 - https://bugs.busybox.net/show_bug.cgi?id=13651
 - override the build command instead

v2:

 - bump to 0.8.0
 - go now works fine with /. targets, remove command override
 - docker-containerd was renamed to containerd

v3:

 - bump to version 0.17.1 from 0.8.0
 - add correct build targets

Signed-off-by: Christian Stewart <[email protected]>
Adds support for building runc as a host package.

The bin name and gomod have to be specified as the pkg-golang infrastructure
assumes the bin name will be "host-runc" on default.

Signed-off-by: Christian Stewart <[email protected]>
docker-proxy (libnetwork) has not added a release tag for a long time. Use the
latest master commit hash from 25 Jan 2021 instead.

b350742

Signed-off-by: Christian Stewart <[email protected]>
This series is currently marked "stable" on the gentoo repo.

Signed-off-by: Christian Stewart <[email protected]>
Tested on Pi4 Model B (aarch64).

Note: this needs adjustment as per comments from upstream:

 - GLX is marked as provided when it's not on arm64

Signed-off-by: Christian Stewart <[email protected]>
Adds support for USB rtl8821cu wifi cards.

Similar to rtl8821au and rtl8812au-aircrack-ng packages.

https://github.com/morrownr/8821cu-20210118

Signed-off-by: Christian Stewart <[email protected]>
Daemonize is a command line utility to run a program as a Unix daemon.

Signed-off-by: Christian Stewart <[email protected]>
Fixes warnings from check-package.

Signed-off-by: Christian Stewart <[email protected]>
Users may want to use buildkitd and buildkitctl to build images on the host.

Adds package host-moby-buildkit and BR2_PACKAGE_HOST_MOBY_BUILDKIT.

Signed-off-by: Christian Stewart <[email protected]>
Signed-off-by: Christian Stewart <[email protected]>
Use go mod init to convert other tool files and create go.mod properly.

Signed-off-by: Christian Stewart <[email protected]>
@paralin paralin closed this Jun 16, 2022
paralin pushed a commit that referenced this pull request Jul 19, 2024
Commit 8f88a64 "support/scripts/apply-patches.sh: set the maximum
fuzz factor to 0" reduced the fuzz factor.

Due to this change, rrdtool fails to build with output:

    patching file src/rrd_tool.c
    Hunk #2 FAILED at 42.
    Hunk #3 succeeded at 435 (offset -8 lines).
    Hunk #4 succeeded at 518 (offset -8 lines).
    Hunk #5 succeeded at 564 (offset -8 lines).
    Hunk #6 succeeded at 879 (offset -8 lines).
    1 out of 6 hunks FAILED -- saving rejects to file src/rrd_tool.c.rej

Because this was caused by an upstream patch we do not change it but add
another upstream patch to be applied before our current patch to avoid
the problem.

Fixes:
http://autobuild.buildroot.net/results/6996dbd764b0066da49dd009f1385196342c89dc/

Signed-off-by: Bernd Kuhls <[email protected]>
Reviewed-by: Yann E. MORIN <[email protected]>
Tested-by: Yann E. MORIN <[email protected]>
[[email protected]:
  - add comment as suggested by [email protected]
]
Signed-off-by: Yann E. MORIN <[email protected]>
paralin pushed a commit that referenced this pull request Jul 19, 2024
Commit 8f88a64 ("support/scripts/apply-patches.sh: set the maximum
fuzz factor to 0") reduced the fuzz factor.

Due to this change, grpc fails to build with output:

    Applying 0003-host-grpc-only-cpp-plugin.patch using patch:
    patching file CMakeLists.txt
    Hunk #2 succeeded at 567 (offset 8 lines).
    Hunk #3 succeeded at 580 (offset 7 lines).
    Hunk #4 succeeded at 1315 (offset 79 lines).
    Hunk #5 succeeded at 1368 (offset 79 lines).
    Hunk #6 FAILED at 1462.
    Hunk #7 succeeded at 2515 (offset 131 lines).
    Hunk #8 succeeded at 2631 (offset 107 lines).
    Hunk #9 succeeded at 3117 (offset 186 lines).
    Hunk #10 succeeded at 3202 (offset 198 lines).
    Hunk #11 succeeded at 3654 (offset 172 lines).
    Hunk #12 succeeded at 3909 (offset 184 lines).
    Hunk #13 succeeded at 4203 (offset 158 lines).
    Hunk #14 succeeded at 4263 (offset 158 lines).
    Hunk #15 succeeded at 4347 (offset 158 lines).
    Hunk #16 FAILED at 4281.
    Hunk #17 succeeded at 11110 (offset -143 lines).
    Hunk #18 succeeded at 11140 (offset -143 lines).
    Hunk #19 succeeded at 23153 (offset 3325 lines).
    Hunk #20 succeeded at 23250 (offset 3325 lines).
    2 out of 20 hunks FAILED -- saving rejects to file CMakeLists.txt.rej

This commit refreshes the package patch on the current package version.

Signed-off-by: Dario Binacchi <[email protected]>
Signed-off-by: Arnout Vandecappelle <[email protected]>
paralin pushed a commit that referenced this pull request Jul 19, 2024
Commit 8f88a64 ("support/scripts/apply-patches.sh: set the maximum
fuzz factor to 0") reduced the fuzz factor.

Due to this change, libssh2 fails to build with output:

    Applying 0002-src-add-strict-KEX-to-fix-CVE-2023-48795-Terrapin-Attack.patch using patch:
    patching file src/kex.c
    Hunk #1 succeeded at 3037 (offset 5 lines).
    Hunk #2 succeeded at 3062 (offset 5 lines).
    Hunk #3 succeeded at 3315 (offset 5 lines).
    Hunk #4 succeeded at 3406 (offset 5 lines).
    Hunk #5 succeeded at 3440 (offset 5 lines).
    Hunk #6 succeeded at 3476 (offset 5 lines).
    Hunk #7 succeeded at 3489 (offset 5 lines).
    Hunk #8 succeeded at 3523 (offset 5 lines).
    Hunk #9 succeeded at 3569 (offset 5 lines).
    Hunk #10 succeeded at 3591 (offset 5 lines).
    Hunk #11 succeeded at 3633 (offset 5 lines).
    Hunk #12 succeeded at 3654 (offset 5 lines).
    Hunk #13 succeeded at 3687 (offset 5 lines).
    Hunk #14 succeeded at 3709 (offset 5 lines).
    Hunk #15 succeeded at 3892 (offset 5 lines).
    Hunk #16 succeeded at 3918 (offset 5 lines).
    Hunk #17 succeeded at 3967 (offset 5 lines).
    patching file src/libssh2_priv.h
    Hunk #1 succeeded at 699 (offset -37 lines).
    Hunk #2 succeeded at 873 (offset -38 lines).
    Hunk #3 succeeded at 914 (offset -38 lines).
    Hunk #4 succeeded at 1149 (offset -38 lines).
    patching file src/packet.c
    Hunk #1 succeeded at 605 (offset -19 lines).
    Hunk #2 succeeded at 656 (offset -19 lines).
    Hunk #3 succeeded at 1404 (offset -23 lines).
    Hunk #4 succeeded at 1474 (offset -23 lines).
    patching file src/packet.h
    Hunk #1 FAILED at 72.
    1 out of 1 hunk FAILED -- saving rejects to file src/packet.h.rej

This commit refreshes the package patches on the current package version.

Signed-off-by: Dario Binacchi <[email protected]>
Signed-off-by: Romain Naour <[email protected]>
paralin pushed a commit that referenced this pull request Jul 19, 2024
Commit 8f88a64 ("support/scripts/apply-patches.sh: set the maximum
fuzz factor to 0") reduced the fuzz factor.

Due to this change, lxc fails to build with output:

    Applying 0001-src-lxc-syscall_numbers.h-drop-define-1.patch using patch:
    patching file src/lxc/syscall_numbers.h
    Hunk #1 FAILED at 53.
    Hunk #2 FAILED at 92.
    Hunk #3 FAILED at 129.
    Hunk #4 FAILED at 166.
    Hunk #5 FAILED at 203.
    Hunk #6 FAILED at 272.
    Hunk #7 FAILED at 309.
    Hunk #8 FAILED at 346.
    Hunk #9 FAILED at 383.
    Hunk #10 FAILED at 440.
    Hunk #11 FAILED at 477.
    Hunk #12 FAILED at 518.
    Hunk #13 FAILED at 759.
    13 out of 13 hunks FAILED -- saving rejects to file src/lxc/syscall_numbers.h.rej

This commit refreshes the package patch on the current package version.

As you can see from [1], the patch was created for version v6.0.0 but
has been backported in Buildroot without being rebased on lxc v5.0.0,
where loongarch64 support was not yet merged. This is further evidence
of the importance of applying patches with fuzz 0.

[1] lxc/lxc@82fe018
Signed-off-by: Dario Binacchi <[email protected]>
Signed-off-by: Romain Naour <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant