Commit Graph

33 Commits

Author SHA1 Message Date
Debarshi Ray
b78b16e24a Update to 0.0.99.6
Update the compiler and linker flags for RHEL 10 by incorporating the
distribution's defaults from RHEL 10.0 Beta, because RHEL 10.0 is still
early in its development cycle and the defaults may be in a state of
flux.  Some exceptions are mentioned below.

The '-z pack-relative-relocs' linker flag was left out.  It's currently
not supported on s390x, so using it would require architecture specific
patches, which is a hassle.  Support for aarch64 was recently added [1],
so hopefully s390x will also be supported soon.

The change to use the RPM's %{name}, %{version}, %{release} and the
SOURCE_DATE_EPOCH environment variable [2], instead of /dev/urandom, to
generate the build ID annotation for the toolbox(1) binary [3] was left
out.  It will need more work to propagate the RPM's %{name}, %{version}
and %{release} to Meson.

The 'rpminspect --tests=elf' test run by the downstream CI was silenced
because toolbox(1) is only built with the '-z relro' linker flag, but
not '-z now' [4].  Otherwise, it fails with:
  /usr/bin/toolbox lost full GNU_RELRO security protection

Stop carrying the downstream patch for the compiler and linker flags for
PPC64.  The architecture was already discontinued from Fedora 29 [5],
even before the patch was added [6].  It was added purely for the sake
of completeness, and in the last four years since it was introduced, it
hasn't been tested or used.  At this point it's becoming too much of a
maintenance burden, and removing it silences the %ifarch-applied-patch
warning from rpmlint.

Fill in some of the missing Requires for the toolbox-tests sub-package.

[1] CentOS Stream redhat-rpm-config commit 3c5a6b17540b2a0b
    https://gitlab.com/redhat/centos-stream/rpms/redhat-rpm-config/-/commit/3c5a6b17540b2a0b
    https://gitlab.com/redhat/centos-stream/rpms/redhat-rpm-config/-/merge_requests/42
    https://issues.redhat.com/browse/RHEL-40379

[2] https://reproducible-builds.org/docs/source-date-epoch/

[3] go-rpm-macros commit 1980932bf3a21890
    https://pagure.io/go-rpm-macros/c/1980932bf3a21890
    https://fedoraproject.org/wiki/Changes/ReproduciblePackageBuilds

[4] Upstream commit 83f28c52e47c2d44
    https://github.com/containers/toolbox/commit/83f28c52e47c2d44
    https://github.com/containers/toolbox/pull/1548

[5] https://fedoraproject.org/wiki/Changes/DiscontinuePPC64

[6] Fedora toolbox commit ba60453d21
    https://src.fedoraproject.org/rpms/toolbox/c/ba60453d216a9226
    https://src.fedoraproject.org/rpms/toolbox/pull-request/2

Resolves: RHEL-61579
2024-10-04 22:22:54 +02:00
Debarshi Ray
6682165143 Update to 0.0.99.5
Start using Toolbx as the name of the project, instead of Toolbox; and
recommend subscription-manager, as requested by the Fedora Workstation
Working Group [1], to make it easier to have gratis, self-supported Red Hat
Enterprise Linux containers on Fedora.

[1] https://pagure.io/fedora-workstation/issue/391
2023-12-19 13:28:45 +01:00
Debarshi Ray
95d6ea8689 Update to 0.0.99.4
https://bugzilla.redhat.com/show_bug.cgi?id=2171961
2023-02-23 18:05:26 +01:00
Yaakov Selkowitz
46d2ca508e Use vendored dependencies for RHEL 2022-12-22 16:17:31 -05:00
Debarshi Ray
08f687ebe2 Update to 0.0.99.3 2021-12-10 04:47:38 +01:00
Oliver Gutierrez
10d00acf90
Updated to 0.0.99.2^3.git075b9a8d2779 snapshot 2021-08-09 19:11:49 +01:00
Oliver Gutierrez
8b5e951037
Updated to 0.0.99.2^2.git40fbd377ed0b snapshot 2021-07-29 14:27:25 +01:00
Oliver Gutierrez
906afe610c
Updated sources to 0.00.99.2^1.git9820550c82bb snapshot 2021-07-28 16:55:24 +01:00
Debarshi Ray
12df1ef16a Update to 0.0.99.2
Disable the %check section because 'go test ...' isn't working as it
is in the build environment.
2021-06-26 21:58:41 +02:00
Debarshi Ray
aba1d296b5 Update to 0.0.99.1 2021-02-23 20:19:10 +01:00
Debarshi Ray
07c5601e0b Update to 0.0.99 2021-01-12 14:16:48 +01:00
Debarshi Ray
800ec3712d Update to 0.0.98.1 2021-01-07 20:36:04 +01:00
Debarshi Ray
0e1027a121 Update to 0.0.98 2021-01-05 18:29:31 +01:00
Debarshi Ray
c45736f5a2 Update to 0.0.97 2020-11-03 20:55:50 +01:00
Debarshi Ray
19102e8caf Update to 0.0.96 2020-10-01 20:25:44 +02:00
Debarshi Ray
a463b09a8e Update to 0.0.95 2020-08-30 22:56:44 +02:00
Debarshi Ray
f9e5eff5aa Update to 0.0.94
Based on code written by Ondřej Míchal.
2020-08-24 20:01:25 +02:00
Debarshi Ray
d3ce957850 Update to 0.0.93
The test suite has been temporarily disabled because ShellCheck 0.7.1
triggers SC2086 for some unquoted variables. It should be re-enabled as
soon as it's fixed upstream.
2020-07-25 11:48:27 +02:00
Debarshi Ray
795a1681f9 Update to 0.0.92 2020-07-03 16:08:39 +02:00
Harry Míchal
ba60453d21 Update to 0.0.91
Toolbox is now written in Go, so this is no longer a noarch package.

Unlike idiomatic Go code-bases, Toolbox uses the Meson build system to
check for additional non-Go dependencies and install various auxilliary
files. This leads to some interesting problems.

The Go toolchain doesn't play well with passing compiler and linker
flags via environment variables. The linker flags require a second
level of quoting, which leaves the build system without a quote level
to assign the flags to an environment variable like GOFLAGS.

This is one reason why Fedora doesn't have a RPM macro with only the
flags. The %{gobuild} RPM macro includes the entire 'go build ...'
invocation.

Therefore, the entire 'go build ...' invocation is swapped out using a
set of downstream patches (one for PPC64 because it doesn't use
'-buildmode pie', and another for other CPU architectures) to match
the %{gobuild} RPM macro.

The Go toolchain also doesn't like the LDFLAGS environment variable as
exported by Fedora's %{meson} RPM macro.

For some reason, when built on Koji, the final binary gets created as
../src/src instead of ../src/toolbox, but it doesn't happen when
building locally with 'rpmbuild -ba ...'. Hence it's necessary to
explicitly specify the name of the output binary.

Finally, Fedora doesn't support Go modules when building Go programs.
This means that Go's semantic import versioning can't be used.

A conscious effort was made to minimize the use of exotic Go-specific
RPM macros to retain the legibility of the spec file. A proliferation
of such RPM macros is a hindrance for those who are not experts in the
ins and outs of packaging Go code in Fedora.

Some changes by Debarshi Ray.

https://src.fedoraproject.org/rpms/toolbox/pull-request/2
2020-06-30 19:17:15 +02:00
Debarshi Ray
b58043a0c6 Update to 0.0.18 2020-01-14 16:35:45 +01:00
Debarshi Ray
02f9da9165 Update to 0.0.17 2019-11-20 18:13:56 +01:00
Debarshi Ray
dc193621b2 Update to 0.0.16 2019-10-29 16:18:06 +01:00
Debarshi Ray
74e17d85b0 Update to 0.0.15 2019-09-30 18:34:52 +02:00
Debarshi Ray
3071f36850 Update to 0.0.14
Fix a typo in the minimum Podman version requirement. Podman 1.4.0 is
meant to be fine.
2019-09-18 19:08:37 +02:00
Debarshi Ray
8cd9b48ced Update to 0.0.13 2019-09-05 15:14:13 +02:00
Debarshi Ray
2589ddfe46 Update to 0.0.12 2019-07-22 14:34:53 +02:00
Debarshi Ray
3b15753f16 Update to 0.0.11 2019-06-21 16:57:36 +02:00
Debarshi Ray
86f63f7964 Update to 0.0.10 2019-05-21 22:48:54 +02:00
Debarshi Ray
f5b32ef1d3 Update to 0.0.9 2019-04-30 12:56:48 +02:00
Debarshi Ray
83e7cea95a Update to 0.0.8 2019-04-12 17:31:21 +02:00
Debarshi Ray
b63f98c3b8 Update to 0.0.7 2019-03-14 14:25:59 +01:00
Debarshi Ray
33bd39b0f9 Initial build after rename from fedora-toolbox 2019-03-01 18:59:51 +01:00