mirror of
https://github.com/archlinuxarm/PKGBUILDs.git
synced 2025-03-19 00:21:40 +00:00
Docker to 1.2.0, with patch only to daemon for arch check.
This commit is contained in:
parent
c930bd621f
commit
f5a9cd5c82
5 changed files with 32 additions and 196 deletions
|
@ -1,25 +0,0 @@
|
|||
From aac5df4ecbb56c741afb63e2ca5d7ca42b59a736 Mon Sep 17 00:00:00 2001
|
||||
From: Kevin Mihelich <kevin@archlinuxarm.org>
|
||||
Date: Wed, 7 May 2014 15:42:38 -0600
|
||||
Subject: [PATCH 1/3] ARM as allowed architecture
|
||||
|
||||
---
|
||||
docker/docker.go | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/docker/docker.go b/docker/docker.go
|
||||
index 26ccd24..19de4a0 100644
|
||||
--- a/docker/docker.go
|
||||
+++ b/docker/docker.go
|
||||
@@ -251,7 +251,7 @@ func showVersion() {
|
||||
|
||||
func checkKernelAndArch() error {
|
||||
// Check for unsupported architectures
|
||||
- if runtime.GOARCH != "amd64" {
|
||||
+ if runtime.GOARCH != "amd64" && runtime.GOARCH != "arm" {
|
||||
return fmt.Errorf("The docker runtime currently only supports amd64 (not %s). This will change in the future. Aborting.", runtime.GOARCH)
|
||||
}
|
||||
// Check for unsupported kernel versions
|
||||
--
|
||||
1.9.0
|
||||
|
13
community/docker/0001-daemon-no-arch-check.patch
Normal file
13
community/docker/0001-daemon-no-arch-check.patch
Normal file
|
@ -0,0 +1,13 @@
|
|||
--- a/daemon/daemon.go 2014-08-28 21:22:18.805001026 -0400
|
||||
+++ b/daemon/daemon.go 2014-08-28 21:23:52.030001071 -0400
|
||||
@@ -1095,10 +1095,6 @@ func (daemon *Daemon) ImageGetCached(img
|
||||
}
|
||||
|
||||
func checkKernelAndArch() error {
|
||||
- // Check for unsupported architectures
|
||||
- if runtime.GOARCH != "amd64" {
|
||||
- return fmt.Errorf("The Docker runtime currently only supports amd64 (not %s). This will change in the future. Aborting.", runtime.GOARCH)
|
||||
- }
|
||||
// Check for unsupported kernel versions
|
||||
// FIXME: it would be cleaner to not test for specific versions, but rather
|
||||
// test for specific functionalities.
|
|
@ -1,29 +0,0 @@
|
|||
From 88fd97ad84730327a5f56dc70af6b71547090c2c Mon Sep 17 00:00:00 2001
|
||||
From: Vladimir Pouzanov <farcaller@gmail.com>
|
||||
Date: Wed, 18 Jun 2014 21:16:41 +0100
|
||||
Subject: [PATCH] Fix btrfs detection on ARM
|
||||
|
||||
---
|
||||
daemon/graphdriver/driver.go | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/daemon/graphdriver/driver.go b/daemon/graphdriver/driver.go
|
||||
index 4536489..bd9e6df 100644
|
||||
--- a/daemon/graphdriver/driver.go
|
||||
+++ b/daemon/graphdriver/driver.go
|
||||
@@ -10,10 +10,10 @@ import (
|
||||
"github.com/dotcloud/docker/pkg/mount"
|
||||
)
|
||||
|
||||
-type FsMagic uint64
|
||||
+type FsMagic int32
|
||||
|
||||
const (
|
||||
- FsMagicBtrfs = FsMagic(0x9123683E)
|
||||
+ FsMagicBtrfs = FsMagic(-1859950530)
|
||||
FsMagicAufs = FsMagic(0x61756673)
|
||||
)
|
||||
|
||||
--
|
||||
1.8.5.2
|
||||
|
|
@ -1,116 +0,0 @@
|
|||
From 663b9649d37a2d0f2bdae4134ba55ed36e97ba3f Mon Sep 17 00:00:00 2001
|
||||
From: Vladimir Pouzanov <farcaller@gmail.com>
|
||||
Date: Wed, 18 Jun 2014 21:07:31 +0100
|
||||
Subject: [PATCH] setBridgeMacAddress ARM support
|
||||
|
||||
---
|
||||
pkg/netlink/netlink_linux.go | 19 -------------------
|
||||
pkg/netlink/setbridgemacaddress_amd64.go | 27 +++++++++++++++++++++++++++
|
||||
pkg/netlink/setbridgemacaddress_arm.go | 27 +++++++++++++++++++++++++++
|
||||
3 files changed, 54 insertions(+), 19 deletions(-)
|
||||
create mode 100644 pkg/netlink/setbridgemacaddress_amd64.go
|
||||
create mode 100644 pkg/netlink/setbridgemacaddress_arm.go
|
||||
|
||||
diff --git a/pkg/netlink/netlink_linux.go b/pkg/netlink/netlink_linux.go
|
||||
index 14e30aa..12aee4d 100644
|
||||
--- a/pkg/netlink/netlink_linux.go
|
||||
+++ b/pkg/netlink/netlink_linux.go
|
||||
@@ -5,7 +5,6 @@ package netlink
|
||||
import (
|
||||
"encoding/binary"
|
||||
"fmt"
|
||||
- "math/rand"
|
||||
"net"
|
||||
"sync/atomic"
|
||||
"syscall"
|
||||
@@ -944,21 +943,3 @@ func AddToBridge(iface, master *net.Interface) error {
|
||||
|
||||
return nil
|
||||
}
|
||||
-
|
||||
-func setBridgeMacAddress(s int, name string) error {
|
||||
- ifr := ifreqHwaddr{}
|
||||
- ifr.IfruHwaddr.Family = syscall.ARPHRD_ETHER
|
||||
- copy(ifr.IfrnName[:], name)
|
||||
-
|
||||
- for i := 0; i < 6; i++ {
|
||||
- ifr.IfruHwaddr.Data[i] = int8(rand.Intn(255))
|
||||
- }
|
||||
-
|
||||
- ifr.IfruHwaddr.Data[0] &^= 0x1 // clear multicast bit
|
||||
- ifr.IfruHwaddr.Data[0] |= 0x2 // set local assignment bit (IEEE802)
|
||||
-
|
||||
- if _, _, err := syscall.Syscall(syscall.SYS_IOCTL, uintptr(s), syscall.SIOCSIFHWADDR, uintptr(unsafe.Pointer(&ifr))); err != 0 {
|
||||
- return err
|
||||
- }
|
||||
- return nil
|
||||
-}
|
||||
diff --git a/pkg/netlink/setbridgemacaddress_amd64.go b/pkg/netlink/setbridgemacaddress_amd64.go
|
||||
new file mode 100644
|
||||
index 0000000..dea7e1a
|
||||
--- /dev/null
|
||||
+++ b/pkg/netlink/setbridgemacaddress_amd64.go
|
||||
@@ -0,0 +1,27 @@
|
||||
+// +build amd64
|
||||
+
|
||||
+package netlink
|
||||
+
|
||||
+import (
|
||||
+ "math/rand"
|
||||
+ "syscall"
|
||||
+ "unsafe"
|
||||
+)
|
||||
+
|
||||
+func setBridgeMacAddress(s int, name string) error {
|
||||
+ ifr := ifreqHwaddr{}
|
||||
+ ifr.IfruHwaddr.Family = syscall.ARPHRD_ETHER
|
||||
+ copy(ifr.IfrnName[:], name)
|
||||
+
|
||||
+ for i := 0; i < 6; i++ {
|
||||
+ ifr.IfruHwaddr.Data[i] = int8(rand.Intn(255))
|
||||
+ }
|
||||
+
|
||||
+ ifr.IfruHwaddr.Data[0] &^= 0x1 // clear multicast bit
|
||||
+ ifr.IfruHwaddr.Data[0] |= 0x2 // set local assignment bit (IEEE802)
|
||||
+
|
||||
+ if _, _, err := syscall.Syscall(syscall.SYS_IOCTL, uintptr(s), syscall.SIOCSIFHWADDR, uintptr(unsafe.Pointer(&ifr))); err != 0 {
|
||||
+ return err
|
||||
+ }
|
||||
+ return nil
|
||||
+}
|
||||
diff --git a/pkg/netlink/setbridgemacaddress_arm.go b/pkg/netlink/setbridgemacaddress_arm.go
|
||||
new file mode 100644
|
||||
index 0000000..f5e116e
|
||||
--- /dev/null
|
||||
+++ b/pkg/netlink/setbridgemacaddress_arm.go
|
||||
@@ -0,0 +1,27 @@
|
||||
+// +build arm
|
||||
+
|
||||
+package netlink
|
||||
+
|
||||
+import (
|
||||
+ "math/rand"
|
||||
+ "syscall"
|
||||
+ "unsafe"
|
||||
+)
|
||||
+
|
||||
+func setBridgeMacAddress(s int, name string) error {
|
||||
+ ifr := ifreqHwaddr{}
|
||||
+ ifr.IfruHwaddr.Family = syscall.ARPHRD_ETHER
|
||||
+ copy(ifr.IfrnName[:], name)
|
||||
+
|
||||
+ for i := 0; i < 6; i++ {
|
||||
+ ifr.IfruHwaddr.Data[i] = uint8(rand.Intn(128))
|
||||
+ }
|
||||
+
|
||||
+ ifr.IfruHwaddr.Data[0] &^= 0x1 // clear multicast bit
|
||||
+ ifr.IfruHwaddr.Data[0] |= 0x2 // set local assignment bit (IEEE802)
|
||||
+
|
||||
+ if _, _, err := syscall.Syscall(syscall.SYS_IOCTL, uintptr(s), syscall.SIOCSIFHWADDR, uintptr(unsafe.Pointer(&ifr))); err != 0 {
|
||||
+ return err
|
||||
+ }
|
||||
+ return nil
|
||||
+}
|
||||
--
|
||||
1.8.5.2
|
||||
|
|
@ -1,11 +1,8 @@
|
|||
# $Id$
|
||||
# Maintainer: Sebastien "Seblu" Luttringer
|
||||
|
||||
# ALARM: Kevin Mihelich <kevin@archlinuxarm.org>
|
||||
# - ARM patches, adjustments
|
||||
# Maintainer: Sébastien "Seblu" Luttringer
|
||||
|
||||
pkgname=docker
|
||||
pkgver=1.0.0
|
||||
pkgver=1.2.0
|
||||
pkgrel=1
|
||||
epoch=1
|
||||
pkgdesc='Pack, ship and run any application as a lightweight container'
|
||||
|
@ -19,28 +16,14 @@ optdepends=('btrfs-progs: btrfs backend support'
|
|||
# don't strip binaries! A sha1 is used to check binary consistency.
|
||||
options=('!strip')
|
||||
install=$pkgname.install
|
||||
source=("git+https://github.com/dotcloud/docker.git#tag=v$pkgver"
|
||||
'0001-ARM-as-allowed-architecture.patch'
|
||||
'0002-Fix-btrfs-detection-on-ARM.patch'
|
||||
'0003-setBridgeMacAddress-ARM-support.patch')
|
||||
source=("git+https://github.com/docker/docker.git#tag=v$pkgver"
|
||||
"0001-daemon-no-arch-check.patch")
|
||||
md5sums=('SKIP'
|
||||
'c003084f4cf0f754c868662a8bae95e8'
|
||||
'3ca24a8fe8567a153fad4f9ab31286ae'
|
||||
'1f74fb11f1b10868dbc55ddb6d437125')
|
||||
|
||||
prepare() {
|
||||
cd "docker"
|
||||
patch -p1 -i ../0001-ARM-as-allowed-architecture.patch
|
||||
patch -p1 -i ../0002-Fix-btrfs-detection-on-ARM.patch
|
||||
find . -name '*.go' | xargs sed --in-place= -e 's/\/\/ +build amd64/\/\/ +build arm/'
|
||||
find . -name '*.go' | xargs sed --in-place= -e 's/\/\/ +build !linux !amd64/\/\/ +build !linux !arm/'
|
||||
find . -name '*.go' | xargs sed --in-place= -e 's/\/\/ +build linux,amd64/\/\/ +build linux,arm/'
|
||||
# This patch is applicable after the seds.
|
||||
patch -p1 -i ../0003-setBridgeMacAddress-ARM-support.patch
|
||||
}
|
||||
'6746a788096a02829666c67bece899d5')
|
||||
|
||||
build() {
|
||||
cd docker
|
||||
patch -p1 < $srcdir/0001-daemon-no-arch-check.patch
|
||||
export AUTO_GOPATH=1
|
||||
./hack/make.sh dynbinary
|
||||
}
|
||||
|
@ -56,8 +39,18 @@ package() {
|
|||
install -Dm755 "bundles/$pkgver/dynbinary/docker-$pkgver" "$pkgdir/usr/bin/docker"
|
||||
install -Dm755 "bundles/$pkgver/dynbinary/dockerinit-$pkgver" "$pkgdir/usr/lib/docker/dockerinit"
|
||||
# completion
|
||||
install -Dm644 "contrib/completion/bash/docker" "$pkgdir/usr/share/bash-completion/completions/docker"
|
||||
install -Dm644 "contrib/completion/zsh/_docker" "$pkgdir/usr/share/zsh/site-functions/_docker"
|
||||
install -Dm644 'contrib/completion/bash/docker' "$pkgdir/usr/share/bash-completion/completions/docker"
|
||||
install -Dm644 'contrib/completion/zsh/_docker' "$pkgdir/usr/share/zsh/site-functions/_docker"
|
||||
# systemd
|
||||
install -Dm644 "contrib/init/systemd/docker.service" "$pkgdir/usr/lib/systemd/system/docker.service"
|
||||
install -Dm644 'contrib/init/systemd/docker.service' \
|
||||
"$pkgdir/usr/lib/systemd/system/docker.service"
|
||||
install -Dm644 'contrib/init/systemd/docker.socket' \
|
||||
"$pkgdir/usr/lib/systemd/system/docker.socket"
|
||||
# vim syntax
|
||||
install -Dm644 'contrib/syntax/vim/syntax/dockerfile.vim' \
|
||||
"$pkgdir/usr/share/vim/vimfiles/syntax/dockerfile.vim"
|
||||
install -Dm644 'contrib/syntax/vim/ftdetect/dockerfile.vim' \
|
||||
"$pkgdir/usr/share/vim/vimfiles/ftdetect/dockerfile.vim"
|
||||
}
|
||||
|
||||
# vim:set ts=2 sw=2 et:
|
||||
|
|
Loading…
Reference in a new issue