diff --git a/.gitignore b/.gitignore index 78ef6d7..67f3f6d 100644 --- a/.gitignore +++ b/.gitignore @@ -1,5 +1,5 @@ +SOURCES/dnsname-18822f9.tar.gz +SOURCES/podman-4.0.2-342c825.tar.gz SOURCES/podman-machine-cni-0749884.tar.gz SOURCES/v0.1.0.tar.gz -SOURCES/v0.1.5.tar.gz -SOURCES/v1.3.0.tar.gz -SOURCES/v3.4-c15c154.tar.gz +SOURCES/v0.1.7.tar.gz diff --git a/.podman.metadata b/.podman.metadata index ae8e996..a7f1d4e 100644 --- a/.podman.metadata +++ b/.podman.metadata @@ -1,5 +1,5 @@ +00c35447384f51ccc2360965b80868fc91293711 SOURCES/dnsname-18822f9.tar.gz +056e82ce8263115e4f87febd5d015c9b20a33a5c SOURCES/podman-4.0.2-342c825.tar.gz 70b08b173bdf0d1325fce035c186b43085865587 SOURCES/podman-machine-cni-0749884.tar.gz d2be14e364fef2d95c61cdac528219548640f6d4 SOURCES/v0.1.0.tar.gz -4502491739693bd1b1d108d9af545f69a3bd424b SOURCES/v0.1.5.tar.gz -667dcf5bea5992e18963bac6b833053a0d8b1eaa SOURCES/v1.3.0.tar.gz -7c06114150ac3723425cd89137a8ed8e4adaaa3a SOURCES/v3.4-c15c154.tar.gz +94419a237f932ff2a79c91f6e3005034d9c367a5 SOURCES/v0.1.7.tar.gz diff --git a/SPECS/podman.spec b/SPECS/podman.spec index 2d16ed4..45f6b2e 100644 --- a/SPECS/podman.spec +++ b/SPECS/podman.spec @@ -3,30 +3,26 @@ %global _find_debuginfo_dwz_opts %{nil} %global _dwz_low_mem_die_limit 0 -%if 0%{?rhel} > 7 && ! 0%{?fedora} %define gobuild(o:) \ -go build -buildmode pie -compiler gc -tags="rpm_crashtraceback libtrust_openssl ${BUILDTAGS:-}" -ldflags "${LDFLAGS:-} -linkmode=external -compressdwarf=false -B 0x$(head -c20 /dev/urandom|od -An -tx1|tr -d ' \\n') -extldflags '%__global_ldflags'" -a -v %{?**}; -%else -%if ! 0%{?gobuild:1} -%define gobuild(o:) GO111MODULE=off go build -buildmode pie -compiler gc -tags="rpm_crashtraceback ${BUILDTAGS:-}" -ldflags "${LDFLAGS:-} -linkmode=external -B 0x$(head -c20 /dev/urandom|od -An -tx1|tr -d ' \\n') -extldflags '-Wl,-z,relro -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld '" -a -v %{?**}; -%endif -%endif +GO111MODULE=off go build -buildmode pie -compiler gc -tags="rpm_crashtraceback ${BUILDTAGS:-}" -ldflags "${LDFLAGS:-} -linkmode=external -compressdwarf=false -B 0x$(head -c20 /dev/urandom|od -An -tx1|tr -d ' \\n') -extldflags '%__global_ldflags'" -a -v %{?**}; %global import_path github.com/containers/podman -%global branch v3.4 -%global commit0 c15c1540837b25305729bc72d61372098e204151 +#%%global branch v4.0 +%global commit0 342c8259381b63296e96ad29519bd4b9c7afbf97 %global shortcommit0 %(c=%{commit0}; echo ${c:0:7}) -%global cataver 0.1.5 -%global dnsnamever 1.3.0 +%global cataver 0.1.7 +#%%global dnsnamever 1.3.0 +%global commit_dnsname 18822f9a4fb35d1349eb256f4cd2bfd372474d84 +%global shortcommit_dnsname %(c=%{commit_dnsname}; echo ${c:0:7}) %global gvproxyrepo gvisor-tap-vsock %global gvproxyver 0.1.0 %global commit_mcni 0749884b8d1a455c68da30789e37811ec0809d51 %global shortcommit_mcni %(c=%{commit_mcni}; echo ${c:0:7}) -Epoch: 1 +Epoch: 2 Name: podman -Version: 3.4.1 -Release: 3%{?dist} +Version: 4.0.2 +Release: 1%{?dist} Summary: Manage Pods, Containers and Container Images License: ASL 2.0 and GPLv3+ URL: https://%{name}.io/ @@ -36,19 +32,20 @@ Source0: https://%{import_path}/tarball/%{commit0}/%{branch}-%{shortcommit0}.tar Source0: https://%{import_path}/archive/%{commit0}/%{name}-%{version}-%{shortcommit0}.tar.gz %endif Source1: https://github.com/openSUSE/catatonit/archive/v%{cataver}.tar.gz -Source2: https://github.com/containers/dnsname/archive/v%{dnsnamever}.tar.gz +#Source2: https://github.com/containers/dnsname/archive/v%%{dnsnamever}.tar.gz +Source2: https://github.com/containers/dnsname/archive/%{commit_dnsname}/dnsname-%{shortcommit_dnsname}.tar.gz Source3: https://github.com/containers/%{name}-machine-cni/archive/%{commit_mcni}/%{name}-machine-cni-%{shortcommit_mcni}.tar.gz Source4: https://github.com/containers/%{gvproxyrepo}/archive/v%{gvproxyver}.tar.gz # https://fedoraproject.org/wiki/PackagingDrafts/Go#Go_Language_Architectures ExclusiveArch: %{go_arches} -Provides: %{name}-manpages = %{version}-%{release} -Obsoletes: %{name}-manpages < %{version}-%{release} +Provides: %{name}-manpages = %{epoch}:%{version}-%{release} +Obsoletes: %{name}-manpages < %{epoch}:%{version}-%{release} BuildRequires: golang >= 1.16.6 BuildRequires: glib2-devel BuildRequires: glibc-devel BuildRequires: glibc-static BuildRequires: git-core -BuildRequires: go-md2man +BuildRequires: /usr/bin/go-md2man BuildRequires: gpgme-devel BuildRequires: libassuan-devel BuildRequires: libgpg-error-devel @@ -59,6 +56,7 @@ BuildRequires: pkgconfig BuildRequires: make BuildRequires: systemd BuildRequires: systemd-devel +BuildRequires: shadow-utils-subid-devel # for catatonit BuildRequires: autoconf BuildRequires: automake @@ -98,7 +96,7 @@ manipulate images (but not containers) created by the other. Summary: Emulate Docker CLI using %{name} BuildArch: noarch Requires: %{name} = %{epoch}:%{version}-%{release} -Provides: docker = %{version}-%{release} +Provides: docker = %{epoch}:%{version}-%{release} %description docker This package installs a script named docker that emulates the Docker CLI by @@ -134,7 +132,7 @@ signalfd(2)) and has no additional features. %package plugins Summary: Plugins for %{name} Requires: dnsmasq -Recommends: %{name}-gvproxy = %{version}-%{release} +Recommends: %{name}-gvproxy = %{epoch}:%{version}-%{release} %description plugins This plugin sets up the use of dnsmasq on a given CNI network so @@ -147,6 +145,7 @@ file. Each CNI network will have its own dnsmasq instance. %package tests Summary: Tests for %{name} Requires: %{name} = %{epoch}:%{version}-%{release} +Requires: %{name}-plugins = %{epoch}:%{version}-%{release} #Requires: bats (which RHEL8 doesn't have. If it ever does, un-comment this) Requires: nmap-ncat Requires: httpd-tools @@ -155,6 +154,8 @@ Requires: socat Requires: skopeo Requires: openssl Requires: buildah +Requires: gnupg +Requires: git-daemon %description tests %{summary} @@ -176,6 +177,7 @@ dynamic port forwarding. %else %autosetup -Sgit -n %{name}-%{commit0} %endif +sed -i 's;@@PODMAN@@\;$(BINDIR);@@PODMAN@@\;%{_bindir};' Makefile tar fx %{SOURCE1} tar fx %{SOURCE2} tar fx %{SOURCE3} @@ -188,8 +190,16 @@ rm -rf docs/source/markdown/containers-mounts.conf.5.md %build export GO111MODULE=off -export GOPATH=$(pwd):$(pwd)/_build -export CGO_CFLAGS="%{optflags} -D_GNU_SOURCE -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64" +export GOPATH=$(pwd)/_build:$(pwd) +CGO_CFLAGS="%{optflags} -D_GNU_SOURCE -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64" +# These extra flags present in $CFLAGS have been skipped for now as they break the build +CGO_CFLAGS=$(echo $CGO_CFLAGS | sed 's/-flto=auto//g') +CGO_CFLAGS=$(echo $CGO_CFLAGS | sed 's/-Wp,D_GLIBCXX_ASSERTIONS//g') +CGO_CFLAGS=$(echo $CGO_CFLAGS | sed 's/-specs=\/usr\/lib\/rpm\/redhat\/redhat-annobin-cc1//g') + +%ifarch x86_64 +export CGO_CFLAGS+=" -m64 -mtune=generic -fcf-protection=full" +%endif mkdir _build pushd _build @@ -200,9 +210,13 @@ ln -s vendor src rm -rf vendor/github.com/containers/storage/drivers/register/register_btrfs.go -export BUILDTAGS="systemd selinux seccomp btrfs_noversion exclude_graphdriver_devicemapper $(hack/libdm_tag.sh)" # build date. FIXME: Makefile uses '/v2/libpod', that doesn't work here? LDFLAGS="-X %{import_path}/libpod/define.buildInfo=$(date +%s)" + +# build rootlessport first +%gobuild -o bin/rootlessport %{import_path}/cmd/rootlessport + +export BUILDTAGS="seccomp btrfs_noversion exclude_graphdriver_devicemapper exclude_graphdriver_btrfs $(hack/libdm_tag.sh) $(hack/selinux_tag.sh) $(hack/systemd_tag.sh) $(hack/libsubid_tag.sh)" %gobuild -o bin/%{name} %{import_path}/cmd/%{name} # build %%{name}-remote @@ -212,7 +226,8 @@ export BUILDTAGS="remote $BUILDTAGS" %{__make} docs # build catatonit -unset LDFLAGS +LDFLAGS="%__global_ldflags" +CFLAGS="%{optflags} -fPIE -D_GNU_SOURCE -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64" pushd catatonit-%{cataver} autoreconf -fi %configure @@ -228,7 +243,7 @@ popd # build dnsname plugin unset LDFLAGS -pushd dnsname-%{dnsnamever} +pushd dnsname-%{commit_dnsname} mkdir _build pushd _build mkdir -p src/github.com/containers @@ -240,7 +255,6 @@ export GOPATH=$(pwd)/_build:$(pwd) popd pushd %{name}-machine-cni-%{commit_mcni} -unset LDFLAGS mkdir _build pushd _build mkdir -p src/github.com/containers @@ -252,7 +266,6 @@ export GOPATH=$(pwd)/_build:$(pwd) popd pushd %{gvproxyrepo}-%{gvproxyver} -unset LDFLAGS mkdir _build pushd _build mkdir -p src/github.com/containers @@ -264,11 +277,10 @@ export GOPATH=$(pwd)/_build:$(pwd) popd %install -PODMAN_VERSION=%{version} %{__make} PREFIX=%{buildroot}%{_prefix} \ - ETCDIR=%{buildroot}%{_sysconfdir} \ - install.bin-nobuild \ - install.remote-nobuild \ - install.man-nobuild \ +PODMAN_VERSION=%{version} %{__make} PREFIX=%{buildroot}%{_prefix} ETCDIR=%{buildroot}%{_sysconfdir} \ + install.bin \ + install.remote \ + install.man \ install.systemd \ install.completions \ install.docker @@ -293,7 +305,7 @@ install -p catatonit-%{cataver}/COPYING %{buildroot}%{_datadir}/licenses/podman- ln -s %{_libexecdir}/catatonit/catatonit %{buildroot}%{_libexecdir}/podman/catatonit # install dnsname plugin -pushd dnsname-%{dnsnamever} +pushd dnsname-%{commit_dnsname} %{__make} PREFIX=%{_prefix} DESTDIR=%{buildroot} install popd @@ -339,6 +351,7 @@ exit 0 %license LICENSE %doc README.md CONTRIBUTING.md pkg/hooks/README-hooks.md install.md transfer.md %{_bindir}/%{name} +%{_libexecdir}/%{name}/rootlessport %{_datadir}/bash-completion/completions/%{name} # By "owning" the site-functions dir, we don't need to Require zsh %dir %{_datadir}/zsh/site-functions @@ -380,8 +393,8 @@ exit 0 %{_libexecdir}/podman/catatonit %files plugins -%license dnsname-%{dnsnamever}/LICENSE -%doc dnsname-%{dnsnamever}/{README.md,README_PODMAN.md} +%license dnsname-%{commit_dnsname}/LICENSE +%doc dnsname-%{commit_dnsname}/{README.md,README_PODMAN.md} %{_libexecdir}/cni/dnsname %{_libexecdir}/cni/%{name}-machine @@ -396,6 +409,185 @@ exit 0 %{_libexecdir}/%{name}/gvproxy %changelog +* Mon Mar 07 2022 Jindrich Novy - 2:4.0.2-1 +- update to https://github.com/containers/podman/releases/tag/v4.0.2 +- Related: #2061390 + +* Mon Feb 28 2022 Jindrich Novy - 2:4.0.1-1 +- update to https://github.com/containers/podman/releases/tag/v4.0.1 +- Related: #2001445 + +* Mon Feb 21 2022 Lokesh Mandvekar - 2:4.0.0-3 +- use correct commit 49f8da72 for podman, previous commit said 4.0.1-dev +- Related: #2001445 + +* Mon Feb 21 2022 Lokesh Mandvekar - 2:4.0.0-2 +- install podman-plugins for gating tests +- Related: #2001445 + +* Fri Feb 18 2022 Jindrich Novy - 2:4.0.0-1 +- update to podman-4.0.0 final +- Related: #2001445 + +* Thu Feb 17 2022 Jindrich Novy - 2:4.0.0-0.31 +- update to the latest content of https://github.com/containers/podman/tree/v4.0 + (https://github.com/containers/podman/commit/a34f279) +- Related: #2001445 + +* Wed Feb 16 2022 Jindrich Novy - 2:4.0.0-0.30 +- fix linker flags to assure -D_FORTIFY_SOURCE=2 is present at the command line +- Related: #2001445 + +* Tue Feb 15 2022 Jindrich Novy - 2:4.0.0-0.29 +- update to the latest content of https://github.com/containers/podman/tree/v4.0 + (https://github.com/containers/podman/commit/ab3e566) +- Related: #2001445 + +* Mon Feb 14 2022 Jindrich Novy - 2:4.0.0-0.28 +- update to the latest content of https://github.com/containers/podman/tree/v4.0 + (https://github.com/containers/podman/commit/b0a445e) +- Related: #2001445 + +* Fri Feb 11 2022 Jindrich Novy - 2:4.0.0-0.27 +- update to the latest content of https://github.com/containers/podman/tree/v4.0 + (https://github.com/containers/podman/commit/c4a9aa7) +- Related: #2001445 + +* Thu Feb 10 2022 Jindrich Novy - 2:4.0.0-0.26 +- update to the latest content of https://github.com/containers/podman/tree/v4.0 + (https://github.com/containers/podman/commit/5b2d96f) +- Related: #2001445 + +* Wed Feb 09 2022 Jindrich Novy - 2:4.0.0-0.25 +- set CGO_CFLAGS explicitly +- Related: #2001445 + +* Mon Feb 07 2022 Jindrich Novy - 2:4.0.0-0.24 +- update to the latest content of https://github.com/containers/podman/tree/v4.0 + (https://github.com/containers/podman/commit/2dca7b2) +- Related: #2001445 + +* Fri Feb 04 2022 Jindrich Novy - 2:4.0.0-0.23 +- update to the latest content of https://github.com/containers/podman/tree/v4.0 + (https://github.com/containers/podman/commit/4ad9e00) +- Related: #2001445 + +* Fri Feb 04 2022 Jindrich Novy - 2:4.0.0-0.22 +- update to the latest content of https://github.com/containers/podman/tree/v4.0 + (https://github.com/containers/podman/commit/337f706) +- Related: #2001445 + +* Thu Jan 27 2022 Jindrich Novy - 1:3.4.5-0.7 +- update to the latest content of https://github.com/containers/podman/tree/v3.4 + (https://github.com/containers/podman/commit/a54320a) +- Related: #2001445 + +* Thu Jan 20 2022 Jindrich Novy - 2:3.4.5-0.6 +- update gating tests +- Related: #2001445 + +* Mon Jan 17 2022 Jindrich Novy - 1:3.4.5-0.5 +- add git-daemon to test subpackage + (https://github.com/containers/podman/issues/12851) +- Related: #2001445 + +* Fri Jan 14 2022 Jindrich Novy - 1:3.4.5-0.4 +- update to the latest content of https://github.com/containers/podman/tree/v3.4 + (https://github.com/containers/podman/commit/63134a1) +- Related: #2001445 + +* Tue Jan 11 2022 Jindrich Novy - 1:3.4.5-0.3 +- update to the latest content of https://github.com/containers/podman/tree/v3.4 + (https://github.com/containers/podman/commit/3f57b6e) +- Related: #2001445 + +* Fri Dec 17 2021 Jindrich Novy - 1:3.4.5-0.2 +- update to the latest content of https://github.com/containers/podman/tree/v3.4 + (https://github.com/containers/podman/commit/17788ed) +- Related: #2001445 + +* Thu Dec 09 2021 Jindrich Novy - 1:3.4.5-0.1 +- update to the latest content of https://github.com/containers/podman/tree/v3.4 + (https://github.com/containers/podman/commit/b8fde5c) +- Related: #2001445 + +* Wed Dec 08 2021 Jindrich Novy - 1:3.4.4-0.2 +- drop patch applied upstream +- Related: #2001445 + +* Wed Dec 08 2021 Jindrich Novy - 1:3.4.4-0.1 +- update to the latest content of https://github.com/containers/podman/tree/v3.4 + (https://github.com/containers/podman/commit/49f589d) +- Related: #2001445 + +* Mon Dec 06 2021 Jindrich Novy - 1:3.4.3-0.9 +- update to the latest content of https://github.com/containers/podman/tree/v3.4 + (https://github.com/containers/podman/commit/fe44757) +- Related: #2001445 + +* Thu Dec 02 2021 Jindrich Novy - 1:3.4.3-0.8 +- update to the latest content of https://github.com/containers/podman/tree/v3.4 + (https://github.com/containers/podman/commit/815f36a) +- Related: #2001445 + +* Wed Dec 01 2021 Jindrich Novy - 1:3.4.3-0.7 +- update to the latest content of https://github.com/containers/podman/tree/v3.4 + (https://github.com/containers/podman/commit/31bc358) +- Related: #2001445 + +* Tue Nov 23 2021 Jindrich Novy - 1:3.4.3-0.6 +- update to the latest content of https://github.com/containers/podman/tree/v3.4 + (https://github.com/containers/podman/commit/e3a7a74) +- add libsubid_tag.sh into BUILDTAGS +- Related: #2001445 + +* Mon Nov 22 2021 Jindrich Novy - 1:3.4.3-0.5 +- do not put patch URL as the backported patch will get overwritten when + "spectool -g -f" is executed +- Related: #2001445 + +* Mon Nov 22 2021 Jindrich Novy - 1:3.4.3-0.4 +- update to the latest content of https://github.com/containers/podman/tree/v3.4 + (https://github.com/containers/podman/commit/7203178) +- Related: #2001445 + +* Tue Nov 16 2021 Jindrich Novy - 1:3.4.3-0.3 +- remove -t 0 from podman gating test +- Related: #2001445 + +* Mon Nov 15 2021 Jindrich Novy - 1:3.4.3-0.2 +- add BuildRequires: shadow-utils-subid-devel +- Related: #2001445 + +* Mon Nov 15 2021 Jindrich Novy - 1:3.4.3-0.1 +- update to the latest content of https://github.com/containers/podman/tree/v3.4 + (https://github.com/containers/podman/commit/4808a63) +- Related: #2001445 + +* Fri Nov 12 2021 Jindrich Novy - 1:3.4.2-0.4 +- update to the latest content of https://github.com/containers/podman/tree/v3.4 + (https://github.com/containers/podman/commit/fd010ad) +- Related: #2001445 + +* Tue Nov 09 2021 Jindrich Novy - 1:3.4.2-0.3 +- update to the latest content of https://github.com/containers/podman/tree/v3.4 + (https://github.com/containers/podman/commit/8de9950) +- Related: #2001445 + +* Tue Nov 02 2021 Jindrich Novy - 1:3.4.2-0.2 +- update to the latest content of https://github.com/containers/podman/tree/v3.4 + (https://github.com/containers/podman/commit/75023e9) +- Related: #2001445 + +* Thu Oct 21 2021 Jindrich Novy - 1:3.4.2-0.1 +- update to the latest content of https://github.com/containers/podman/tree/v3.4 + (https://github.com/containers/podman/commit/09aade7) +- Related: #2001445 + +* Tue Oct 19 2021 Jindrich Novy +- more dependency tightening - thanks to Michael Rochefort for noticing +- Related: #2001445 + * Mon Oct 18 2021 Jindrich Novy - 1:3.4.1-3 - fix also dependency for podman-catatonit - Related: #2001445