Compare commits

...
Sign in to create a new pull request.

9 commits

Author SHA1 Message Date
Debarshi Ray
691c8f89af Add bc and iproute to the toolbox-experience sub-package
No need to issue a build just for this.
2021-07-08 21:01:34 +02:00
Debarshi Ray
cd9768661b 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:55:03 +02:00
Debarshi Ray
c434433151 Tweak the Summary
No need to issue a build just for this.
2021-06-26 20:05:46 +02:00
Debarshi Ray
e8830669b9 Update to 0.0.99.1 2021-02-23 21:16:58 +01:00
Debarshi Ray
fb9c2d77c9 Update to 0.0.99
Harden the binary by using the same CGO_CFLAGS as on RHEL 8.
2021-01-12 14:28:20 +01:00
Debarshi Ray
7542fb2580 Update to 0.0.98.1 2021-01-07 20:38:29 +01:00
Debarshi Ray
11f6b99eb4 Update to 0.0.98 2021-01-05 18:32:33 +01:00
Ondřej Míchal
1ae8c9a070 Tweak the description
No need to issue a build just for this.
2020-11-25 22:52:11 +01:00
Ondřej Míchal
a5d3815e4a Move krb5-libs to -experience, and update the list of packages
The krb5-libs package is necessary to ensure the presence of the
/etc/krb5.conf.d directory with the correct permissions. However, it's
not strictly necessary and toolbox(1) can work without it.

No need to issue a build just for this.

https://src.fedoraproject.org/rpms/toolbox/pull-request/4
2020-11-25 22:15:04 +01:00
5 changed files with 45 additions and 27 deletions

5
.gitignore vendored
View file

@ -18,3 +18,8 @@
/toolbox-0.0.95.tar.xz
/toolbox-0.0.96.tar.xz
/toolbox-0.0.97.tar.xz
/toolbox-0.0.98.tar.xz
/toolbox-0.0.98.1.tar.xz
/toolbox-0.0.99.tar.xz
/toolbox-0.0.99.1.tar.xz
/toolbox-0.0.99.2.tar.xz

View file

@ -1 +1 @@
SHA512 (toolbox-0.0.97.tar.xz) = e8c9b3713346a8e1ecabda4518af3955ca2b729a7a99000b15ac8275243d81d5eb53a8accb876f89ef7320ea8bc6e683547ae5cd027ee5e5054494032727f85d
SHA512 (toolbox-0.0.99.2.tar.xz) = 8e775d500755181f22f62dde4da32d5eff446590e54587633a545f880e9d58dc36ace9e7b37e5ec7a4713f570ceb3d27569f9421ad27fd95f0bb6499b470d0b6

View file

@ -1,4 +1,4 @@
From d70e3b4bf7825e67f57373fcd6e8da5ed1d5b461 Mon Sep 17 00:00:00 2001
From e9bfc40bbbf7af1a20819b6840441cbe52a7d1b7 Mon Sep 17 00:00:00 2001
From: Debarshi Ray <rishi@fedoraproject.org>
Date: Mon, 29 Jun 2020 17:57:47 +0200
Subject: [PATCH] build: Make the build flags match Fedora's %{gobuild} for
@ -19,27 +19,22 @@ exported by Fedora's %{meson} RPM macro.
Note that these flags are only meant for the "ppc64" CPU architecture,
and should be kept updated to match Fedora's Go guidelines. Use
'rpm --eval "%{gobuild}"' to expand the %{gobuild} 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.
---
src/go-build-wrapper | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/src/go-build-wrapper b/src/go-build-wrapper
index f061a1c5ccf6..8baaff53b329 100755
index 515e1d8a0670..8baaff53b329 100755
--- a/src/go-build-wrapper
+++ b/src/go-build-wrapper
@@ -27,5 +27,6 @@ if ! cd "$1"; then
exit 1
fi
-go build -trimpath -ldflags "-extldflags '-Wl,--wrap,pthread_sigmask $4' -linkmode external -X github.com/containers/toolbox/pkg/version.currentVersion=$3" -o "$2"
-go build -trimpath -ldflags "-extldflags '-Wl,--wrap,pthread_sigmask $4' -linkmode external -X github.com/containers/toolbox/pkg/version.currentVersion=$3" -o "$2/toolbox"
+unset LDFLAGS
+go build -compiler gc -tags="rpm_crashtraceback ${BUILDTAGS:-}" -ldflags "${LDFLAGS:-} -B 0x$(head -c20 /dev/urandom|od -An -tx1|tr -d ' \n') -extldflags '-Wl,-z,relro -Wl,--as-needed -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -Wl,--wrap,pthread_sigmask $4' -linkmode external -X github.com/containers/toolbox/pkg/version.currentVersion=$3" -a -v -x -o "$2/toolbox"
exit "$?"
--
2.25.4
2.29.2

View file

@ -1,4 +1,4 @@
From b1d265c4529eb0b23d10633326c075d54e07772f Mon Sep 17 00:00:00 2001
From d204528ce3b3c70727c12e1911d1c5562b56d474 Mon Sep 17 00:00:00 2001
From: Debarshi Ray <rishi@fedoraproject.org>
Date: Mon, 29 Jun 2020 17:57:47 +0200
Subject: [PATCH] build: Make the build flags match Fedora's %{gobuild}
@ -18,27 +18,22 @@ exported by Fedora's %{meson} RPM macro.
Note that these flags are meant for every CPU architecture other than
PPC64, and should be kept updated to match Fedora's Go guidelines. Use
'rpm --eval "%{gobuild}"' to expand the %{gobuild} 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.
---
src/go-build-wrapper | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/src/go-build-wrapper b/src/go-build-wrapper
index f061a1c5ccf6..013a35e52a1a 100755
index 515e1d8a0670..013a35e52a1a 100755
--- a/src/go-build-wrapper
+++ b/src/go-build-wrapper
@@ -27,5 +27,6 @@ if ! cd "$1"; then
exit 1
fi
-go build -trimpath -ldflags "-extldflags '-Wl,--wrap,pthread_sigmask $4' -linkmode external -X github.com/containers/toolbox/pkg/version.currentVersion=$3" -o "$2"
-go build -trimpath -ldflags "-extldflags '-Wl,--wrap,pthread_sigmask $4' -linkmode external -X github.com/containers/toolbox/pkg/version.currentVersion=$3" -o "$2/toolbox"
+unset LDFLAGS
+go build -buildmode pie -compiler gc -tags="rpm_crashtraceback ${BUILDTAGS:-}" -ldflags "${LDFLAGS:-} -B 0x$(head -c20 /dev/urandom|od -An -tx1|tr -d ' \n') -extldflags '-Wl,-z,relro -Wl,--as-needed -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -Wl,--wrap,pthread_sigmask $4' -linkmode external -X github.com/containers/toolbox/pkg/version.currentVersion=$3" -a -v -x -o "$2/toolbox"
exit "$?"
--
2.25.4
2.29.2

View file

@ -1,11 +1,11 @@
Name: toolbox
Version: 0.0.97
Version: 0.0.99.2
%global goipath github.com/containers/%{name}
%gometa
Release: 1%{?dist}
Summary: Unprivileged development environment
Summary: Tool for containerized command line environments on Linux
License: ASL 2.0
URL: https://github.com/containers/%{name}
@ -27,6 +27,7 @@ BuildRequires: golang(github.com/fsnotify/fsnotify) >= 1.4.7
BuildRequires: golang(github.com/godbus/dbus) >= 5.0.3
BuildRequires: golang(github.com/mattn/go-isatty) >= 0.0.12
BuildRequires: golang(github.com/sirupsen/logrus) >= 1.4.2
# BuildRequires: golang(github.com/stretchr/testify) >= 1.7.0
BuildRequires: golang(github.com/spf13/cobra) >= 0.0.5
BuildRequires: golang(golang.org/x/sys/unix)
BuildRequires: meson
@ -38,8 +39,9 @@ Requires: podman >= 1.4.0
%description
Toolbox is offers a familiar RPM based environment for developing and
debugging software that runs fully unprivileged using Podman.
Toolbox is a tool for Linux operating systems, which allows the use of
containerized command line environments. It is built on top of Podman and
other standard container technologies from OCI.
# The list of requires packages for -support and -experience should be in sync with:
# https://github.com/containers/toolbox/blob/master/images/fedora/f33/extra-packages
@ -49,12 +51,11 @@ Summary: Required packages for the container image to support %{name}
# These are really required to make the image work with toolbox
Requires: passwd
Requires: shadow-utils
Requires: krb5-libs
Requires: vte-profile
%description support
The %{name}-support package contains all the required packages that are needed
to be installed in the container image to make it work with the %{name}.
to be installed in the OCI image to make it work with %{name}.
The %{name}-support package should be typically installed from the Dockerfile
if the image isn't based on the fedora-toolbox image.
@ -65,6 +66,7 @@ Summary: Set of packages to enhance the %{name} experience
Requires: %{name}-support = %{version}-%{release}
Requires: bash-completion
Requires: bc
Requires: bzip2
Requires: diffutils
Requires: dnf-plugins-core
@ -76,15 +78,19 @@ Requires: gnupg
Requires: gnupg2-smime
Requires: gvfs-client
Requires: hostname
Requires: iproute
Requires: iputils
Requires: jwhois
Requires: keyutils
Requires: krb5-libs
Requires: less
Requires: lsof
Requires: man-db
Requires: man-pages
Requires: mlocate
Requires: mtr
Requires: nano-default-editor
Requires: nss-mdns
Requires: openssh-clients
Requires: pigz
Requires: procps-ng
@ -98,6 +104,7 @@ Requires: unzip
Requires: wget
Requires: which
Requires: words
Requires: xorg-x11-xauth
Requires: xz
Requires: zip
@ -136,14 +143,15 @@ The %{name}-tests package contains system tests for %{name}.
%build
export GO111MODULE=off
export GOPATH=%{gobuilddir}:%{gopath}
export CGO_CFLAGS="%{optflags} -D_GNU_SOURCE -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64"
ln -s src/cmd cmd
ln -s src/pkg pkg
%meson --buildtype=plain -Dprofile_dir=%{_sysconfdir}/profile.d
%meson_build
%check
%meson_test
# %%check
# %%meson_test
%install
@ -169,6 +177,21 @@ ln -s src/pkg pkg
%changelog
* Sat Jun 26 2021 Debarshi Ray <rishi@fedoraproject.org> - 0.0.99.2-1
- Update to 0.0.99.2
* Tue Feb 23 2021 Debarshi Ray <rishi@fedoraproject.org> - 0.0.99.1-1
- Update to 0.0.99.1
* Tue Jan 12 2021 Debarshi Ray <rishi@fedoraproject.org> - 0.0.99-1
- Update to 0.0.99
* Thu Jan 07 2021 Debarshi Ray <rishi@fedoraproject.org> - 0.0.98.1-1
- Update to 0.0.98.1
* Tue Jan 05 2021 Debarshi Ray <rishi@fedoraproject.org> - 0.0.98-1
- Update to 0.0.98
* Tue Nov 03 2020 Debarshi Ray <rishi@fedoraproject.org> - 0.0.97-1
- Update to 0.0.97