2 changed files with 159 additions and 0 deletions
@ -0,0 +1,54 @@ |
|||||||
|
Index: src/github.com/containers/skopeo/Makefile
|
||||||
|
--- src/github.com/containers/skopeo/Makefile.orig 2020-02-28 22:36:57.000000000 +0100
|
||||||
|
+++ src/github.com/containers/skopeo/Makefile 2020-02-28 23:21:25.439462000 +0100
|
||||||
|
@@ -30,7 +30,7 @@
|
||||||
|
endif
|
||||||
|
|
||||||
|
CONTAINER_RUNTIME := $(shell command -v podman 2> /dev/null || echo docker)
|
||||||
|
-GOMD2MAN ?= $(shell command -v go-md2man || echo '$(GOBIN)/go-md2man')
|
||||||
|
+GOMD2MAN ?= md2man
|
||||||
|
|
||||||
|
# Go module support: set `-mod=vendor` to use the vendored sources.
|
||||||
|
# See also hack/make.sh.
|
||||||
|
@@ -107,7 +107,7 @@
|
||||||
|
|
||||||
|
# Build w/o using containers
|
||||||
|
binary-local:
|
||||||
|
- $(GPGME_ENV) $(GO) build $(MOD_VENDOR) ${GO_DYN_FLAGS} -ldflags "-X main.gitCommit=${GIT_COMMIT}" -gcflags "$(GOGCFLAGS)" -tags "$(BUILDTAGS)" -o skopeo ./cmd/skopeo
|
||||||
|
+ $(GPGME_ENV) $(GO) build -v $(MOD_VENDOR) ${GO_DYN_FLAGS} -ldflags "-X main.gitCommit=${GIT_COMMIT}" -gcflags "$(GOGCFLAGS)" -tags "$(BUILDTAGS)" -o skopeo ./cmd/skopeo
|
||||||
|
|
||||||
|
binary-local-static:
|
||||||
|
$(GPGME_ENV) $(GO) build $(MOD_VENDOR) -ldflags "-extldflags \"-static\" -X main.gitCommit=${GIT_COMMIT}" -gcflags "$(GOGCFLAGS)" -tags "$(BUILDTAGS)" -o skopeo ./cmd/skopeo
|
||||||
|
Index: src/github.com/containers/skopeo/vendor/github.com/containers/storage/drivers/driver_freebsd.go
|
||||||
|
--- src/github.com/containers/skopeo/vendor/github.com/containers/storage/drivers/driver_freebsd.go.orig 2020-02-28 22:36:57.000000000 +0100
|
||||||
|
+++ src/github.com/containers/skopeo/vendor/github.com/containers/storage/drivers/driver_freebsd.go 2020-02-28 23:20:36.646480000 +0100
|
||||||
|
@@ -1,8 +1,6 @@
|
||||||
|
package graphdriver
|
||||||
|
|
||||||
|
import (
|
||||||
|
- "syscall"
|
||||||
|
-
|
||||||
|
"golang.org/x/sys/unix"
|
||||||
|
)
|
||||||
|
|
||||||
|
@@ -16,7 +14,7 @@
|
||||||
|
// Mounted checks if the given path is mounted as the fs type
|
||||||
|
func Mounted(fsType FsMagic, mountPath string) (bool, error) {
|
||||||
|
var buf unix.Statfs_t
|
||||||
|
- if err := syscall.Statfs(mountPath, &buf); err != nil {
|
||||||
|
+ if err := unix.Statfs(mountPath, &buf); err != nil {
|
||||||
|
return false, err
|
||||||
|
}
|
||||||
|
return FsMagic(buf.Type) == fsType, nil
|
||||||
|
Index: src/github.com/containers/skopeo/vendor/github.com/containers/storage/pkg/system/mknod.go
|
||||||
|
--- src/github.com/containers/skopeo/vendor/github.com/containers/storage/pkg/system/mknod.go.orig 2020-02-28 22:36:57.000000000 +0100
|
||||||
|
+++ src/github.com/containers/skopeo/vendor/github.com/containers/storage/pkg/system/mknod.go 2020-02-28 23:20:36.646614000 +0100
|
||||||
|
@@ -9,7 +9,7 @@
|
||||||
|
// Mknod creates a filesystem node (file, device special file or named pipe) named path
|
||||||
|
// with attributes specified by mode and dev.
|
||||||
|
func Mknod(path string, mode uint32, dev int) error {
|
||||||
|
- return unix.Mknod(path, mode, dev)
|
||||||
|
+ return unix.Mknod(path, mode, uint64(dev))
|
||||||
|
}
|
||||||
|
|
||||||
|
// Mkdev is used to build the value of linux devices (in /dev/) which specifies major
|
||||||
@ -0,0 +1,105 @@ |
|||||||
|
## |
||||||
|
## skopeo.spec -- OpenPKG RPM Package Specification |
||||||
|
## Copyright (c) 2000-2020 OpenPKG Project <http://openpkg.org/> |
||||||
|
## |
||||||
|
## Permission to use, copy, modify, and distribute this software for |
||||||
|
## any purpose with or without fee is hereby granted, provided that |
||||||
|
## the above copyright notice and this permission notice appear in all |
||||||
|
## copies. |
||||||
|
## |
||||||
|
## THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED |
||||||
|
## WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF |
||||||
|
## MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. |
||||||
|
## IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR |
||||||
|
## CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |
||||||
|
## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT |
||||||
|
## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF |
||||||
|
## USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND |
||||||
|
## ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, |
||||||
|
## OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT |
||||||
|
## OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF |
||||||
|
## SUCH DAMAGE. |
||||||
|
## |
||||||
|
|
||||||
|
# package version |
||||||
|
%define V_skopeo_base 0.1.41 |
||||||
|
%define V_skopeo_snap 20200228 |
||||||
|
|
||||||
|
# package information |
||||||
|
Name: skopeo |
||||||
|
Summary: Docker Registry Remote Access |
||||||
|
URL: https://github.com/containers/skopeo |
||||||
|
Vendor: Red Hat |
||||||
|
Packager: OpenPKG Project |
||||||
|
Distribution: OpenPKG Community |
||||||
|
Class: EVAL |
||||||
|
Group: Web |
||||||
|
License: Apache |
||||||
|
Version: %{V_skopeo_base}.%{V_skopeo_snap} |
||||||
|
Release: 20200228 |
||||||
|
|
||||||
|
# list of sources |
||||||
|
Source0: http://download.openpkg.org/components/versioned/skopeo/skopeo-%{V_skopeo_snap}.tar.xz |
||||||
|
Patch0: skopeo.patch |
||||||
|
|
||||||
|
# build information |
||||||
|
BuildPreReq: OpenPKG, openpkg >= 20160101, go, md2man |
||||||
|
PreReq: OpenPKG, openpkg >= 20160101 |
||||||
|
|
||||||
|
%description |
||||||
|
Skopeo is a command line utility that performs various operations |
||||||
|
on container images and image repositories. Skopeo can work with |
||||||
|
OCI images as well as the original Docker v2 images. Skopeo works |
||||||
|
with API V2 registries such as Docker registries, the Atomic |
||||||
|
registry, private registries, local directories and local OCI-layout |
||||||
|
directories. |
||||||
|
|
||||||
|
%track |
||||||
|
prog skopeo:release = { |
||||||
|
version = %{V_skopeo_base} |
||||||
|
url = https://github.com/containers/skopeo/releases |
||||||
|
regex = v(\d+\.\d+\.\d+)\.tar\.gz |
||||||
|
} |
||||||
|
prog skopeo:snapshot = { |
||||||
|
version = %{V_skopeo_snap} |
||||||
|
url = http://download.openpkg.org/components/versioned/skopeo/ |
||||||
|
regex = skopeo-(__VER__)\.tar\.xz |
||||||
|
} |
||||||
|
|
||||||
|
%prep |
||||||
|
%setup -q -n skopeo |
||||||
|
%patch -p0 |
||||||
|
|
||||||
|
%build |
||||||
|
# build program |
||||||
|
export GOPATH=`pwd` |
||||||
|
cd src/github.com/containers/skopeo |
||||||
|
%{l_shtool} subst -e 's;/bin/bash;%{l_bash};g' */*.sh |
||||||
|
%{l_make} %{l_mflags} SHELL=%{l_bash} binary-local |
||||||
|
|
||||||
|
# build manpages |
||||||
|
%{l_make} %{l_mflags} SHELL=%{l_bash} docs |
||||||
|
|
||||||
|
%install |
||||||
|
# create directory hierarchy |
||||||
|
%{l_shtool} mkdir -f -p -m 755 \ |
||||||
|
$RPM_BUILD_ROOT%{l_prefix}/bin \ |
||||||
|
$RPM_BUILD_ROOT%{l_prefix}/man/man1 |
||||||
|
|
||||||
|
# install program |
||||||
|
%{l_shtool} install -c -s -m 755 \ |
||||||
|
src/github.com/containers/skopeo/skopeo \ |
||||||
|
$RPM_BUILD_ROOT%{l_prefix}/bin/ |
||||||
|
|
||||||
|
# install manpages |
||||||
|
%{l_shtool} install -c -m 644 \ |
||||||
|
src/github.com/containers/skopeo/docs/*.1 \ |
||||||
|
$RPM_BUILD_ROOT%{l_prefix}/man/man1/ |
||||||
|
|
||||||
|
# determine installation files |
||||||
|
%{l_rpmtool} files -v -ofiles -r$RPM_BUILD_ROOT %{l_files_std} |
||||||
|
|
||||||
|
%files -f files |
||||||
|
|
||||||
|
%clean |
||||||
|
|
||||||
Loading…
Reference in new issue