aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--main/installkernel/APKBUILD4
-rw-r--r--main/mkinitfs/APKBUILD20
-rw-r--r--main/mkinitfs/eglibc.patch17
-rw-r--r--main/mkinitfs/fix-dev-null.patch12
-rw-r--r--main/openrc/APKBUILD11
-rw-r--r--main/openrc/modloop.confd3
-rw-r--r--main/openrc/modloop.initd16
-rw-r--r--main/pcre/APKBUILD8
-rw-r--r--main/python/APKBUILD4
9 files changed, 75 insertions, 20 deletions
diff --git a/main/installkernel/APKBUILD b/main/installkernel/APKBUILD
index 6cefdb3d4c..18eaa6a0fc 100644
--- a/main/installkernel/APKBUILD
+++ b/main/installkernel/APKBUILD
@@ -1,6 +1,6 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=installkernel
-pkgver=3.2.2
+pkgver=3.4
pkgrel=0
pkgdesc="Kernel install script from debianutils"
url="http://packages.qa.debian.org/d/debianutils.html"
@@ -14,4 +14,4 @@ build() {
install -Dm755 installkernel "$pkgdir"/sbin/installkernel
install -Dm644 installkernel.8 "$pkgdir"/usr/share/man/man8/installkernel.8
}
-md5sums="1f53745f649f6428159f0bcc9263a8b1 debianutils_3.2.2.tar.gz"
+md5sums="0b37e6a6f318f146741a229ab4bfe93b debianutils_3.4.tar.gz"
diff --git a/main/mkinitfs/APKBUILD b/main/mkinitfs/APKBUILD
index 930ddb7ac5..065cbab969 100644
--- a/main/mkinitfs/APKBUILD
+++ b/main/mkinitfs/APKBUILD
@@ -1,22 +1,26 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=mkinitfs
pkgver=2.0
-pkgrel=0
+pkgrel=1
pkgdesc="Tool to generate initramfs images for Alpine"
url=http://git.alpinelinux.org/cgit/mkinitfs
depends="busybox apk-tools>=2.0"
triggers="$pkgname.trigger:/usr/share/kernel/*"
source="http://git.alpinelinux.org/cgit/$pkgname/snapshot/$pkgname-$pkgver.tar.bz2
+ eglibc.patch
+ fix-dev-null.patch
"
license="GPL-2"
prepare() {
cd "$srcdir"/$pkgname-$pkgver
- for i in $source; do
- case "$i" in
- *.patch) patch -p1 -i "$srcdir"/$i || return 1;;
- esac
- done
+ # seems dev null is not properly created after switch root
+ patch -p1 -i "$srcdir"/fix-dev-null.patch || return 1
+ # If we are using eglibc we need to include eglibc libs
+ # instead of uclibc libs.
+ if [ "$ALPINE_LIBC" = "eglibc" ]; then
+ patch -p1 -i "$srcdir"/eglibc.patch || return 1
+ fi
}
build() {
@@ -28,4 +32,6 @@ package() {
cd "$srcdir"/$pkgname-$pkgver
make install DESTDIR="$pkgdir" || return 1
}
-md5sums="b43a5eae02a1f97362ca66e7b5108593 mkinitfs-2.0.tar.bz2"
+md5sums="b43a5eae02a1f97362ca66e7b5108593 mkinitfs-2.0.tar.bz2
+e59c2f7de496fe430b07e32fd812ebe0 eglibc.patch
+0f8c809b2f3530519025a52aaccbd296 fix-dev-null.patch"
diff --git a/main/mkinitfs/eglibc.patch b/main/mkinitfs/eglibc.patch
new file mode 100644
index 0000000000..24f1e1e9a3
--- /dev/null
+++ b/main/mkinitfs/eglibc.patch
@@ -0,0 +1,17 @@
+--- a/files.d/base
++++ b/files.d/base
+@@ -7,11 +7,11 @@
+ /lib/libdl.so*
+ /lib/libm-[0-9]*
+ /lib/libm.so.*
+-/lib/libuClibc-[0-9]*
++/lib/libc-[0-9]*
+ /lib/libc.so.*
+ /lib/libz.*
+-/lib/ld-uClibc-[0-9]*
+-/lib/ld-uClibc.so*
++/lib/ld-[0-9]*
++/lib/ld-linux.so*
+ /lib/mdev
+ /sbin/apk
+ /etc/modprobe.d/blacklist
diff --git a/main/mkinitfs/fix-dev-null.patch b/main/mkinitfs/fix-dev-null.patch
new file mode 100644
index 0000000000..8b1161cee9
--- /dev/null
+++ b/main/mkinitfs/fix-dev-null.patch
@@ -0,0 +1,12 @@
+--- a/initramfs-init.in
++++ b/initramfs-init.in
+@@ -235,6 +235,9 @@
+ RC=$?
+ [ -d /dev/pts ] || mkdir -m 755 /dev/pts
+ [ -c /dev/ptmx ] || mknod -m 666 /dev/ptmx c 5 2
++# make sure /dev/null is setup correctly
++[ -f /dev/null ] && rm -f /dev/null
++[ -c /dev/null ] || mknod -m 666 /dev/null c 1 3
+ mount -t devpts -o gid=5,mode=0620,noexec,nosuid devpts /dev/pts
+ [ -d /dev/shm ] || mkdir /dev/shm
+ mount -t tmpfs -o nodev,nosuid,noexec shm /dev/shm
diff --git a/main/openrc/APKBUILD b/main/openrc/APKBUILD
index 9432b935ec..6c5b1f8e03 100644
--- a/main/openrc/APKBUILD
+++ b/main/openrc/APKBUILD
@@ -1,7 +1,7 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=openrc
pkgver=0.6.1
-pkgrel=0
+pkgrel=1
pkgdesc="OpenRC manages the services, startup and shutdown of a host"
url="http://roy.marples.name/openrc"
license='BSD-2'
@@ -18,6 +18,7 @@ source="http://roy.marples.name/downloads/$pkgname/$pkgname-$pkgver.tar.bz2
modloop.initd
networking.initd
local.start
+ modloop.confd
"
prepare() {
@@ -49,7 +50,8 @@ package() {
j=${i##*/}
install -Dm755 $i "$pkgdir"/etc/init.d/${j%.initd}
done
-
+
+ install -D -m644 "$srcdir"/modloop.confd "$pkgdir"/etc/conf.d/modloop
install -Dm644 ../local.start "$pkgdir"/etc/conf.d/local.start
}
@@ -60,6 +62,7 @@ c32e15b0858eef708497e7ee6355a055 hostname.initd
b1e64885f301166df30be3e3cf5338ff hwdrivers.initd
33ca3e558c42cdd17adccbc7807298f7 keymaps.initd
098a1f16812f56fcb56eb6b6f0fa31f6 modules.initd
-4c69d1c6a84cbe0195496c14a757579b modloop.initd
+80b3989370c8bf5cf23e65cd924f9846 modloop.initd
c05fc2ea5d771ca68cbb8d91494c9a2b networking.initd
-0a615d93aab691364c03539c3b496dcc local.start"
+0a615d93aab691364c03539c3b496dcc local.start
+c1ec888202d868710b5749f7b217d1e3 modloop.confd"
diff --git a/main/openrc/modloop.confd b/main/openrc/modloop.confd
new file mode 100644
index 0000000000..de4cbb62b8
--- /dev/null
+++ b/main/openrc/modloop.confd
@@ -0,0 +1,3 @@
+# enable loadable module support when running from RAM
+# when unionfs support is available in the kernel
+unionfs_size="32M"
diff --git a/main/openrc/modloop.initd b/main/openrc/modloop.initd
index cf46c98df0..3cb62732ee 100644
--- a/main/openrc/modloop.initd
+++ b/main/openrc/modloop.initd
@@ -63,10 +63,20 @@ start() {
fi
mkdir -p /.modloop /lib
- mount -o loop,ro -t cramfs $alpine_mnt/$modloop /.modloop &&\
- rm -rf /lib/modules &&\
- ln -sf /.modloop/modules /lib/
+ mount -o loop,ro -t cramfs $alpine_mnt/$modloop /.modloop
+
eend $? || return 1
+
+ #use unionfs is available and configured
+ if grep -q -w "unionfs$" /proc/filesystems && [ -n "$unionfs_size" ]; then
+ ebegin "UnionFS detected. Mounting modloop rw"
+ mkdir -p /.modunisonfs/modules /lib/modules
+ mount -t tmpfs -o size="$unionfs_size" tmpfs /.modunisonfs/modules
+ mount -t unionfs -o dirs=/.modunisonfs/modules=rw:/.modloop/modules=ro unionfs /lib/modules
+ eend $? || return 1
+ else
+ rm -rf /lib/modules && ln -sf /.modloop/modules /lib/
+ fi
# copy firmware if there are any
if [ -d $alpine_mnt/firmware ]; then
diff --git a/main/pcre/APKBUILD b/main/pcre/APKBUILD
index 6c5bb028ae..73cd146057 100644
--- a/main/pcre/APKBUILD
+++ b/main/pcre/APKBUILD
@@ -1,7 +1,7 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=pcre
pkgver=8.10
-pkgrel=0
+pkgrel=1
pkgdesc="Perl-compatible regular expression library"
url="http://pcre.sourceforge.net"
license="BSD"
@@ -13,7 +13,6 @@ subpackages="$pkgname-dev $pkgname-doc"
build() {
cd "$srcdir/$pkgname-$pkgver"
./configure --prefix=/usr \
- --disable-cpp \
--enable-utf8 \
--with-match-limit-recursion=8192 \
--htmldir=/usr/share/doc/$pkgname-$pkgver/html \
@@ -25,6 +24,11 @@ build() {
package() {
cd "$srcdir/$pkgname-$pkgver"
make DESTDIR="$pkgdir" install || return 1
+ # REF http://repos.archlinux.org/wsvn/packages/pcre/trunk/PKGBUILD
+ # grep uses pcre, so we need the libs in /lib
+ install -dm755 "$pkgdir"/lib
+ mv "$pkgdir"/usr/lib/libpcre.so.* "$pkgdir"/lib/
+ ln -sf ../../lib/libpcre.so.0 "$pkgdir"/usr/lib/libpcre.so
}
md5sums="780867a700e9d4e4b9cb47aa5453e4b2 pcre-8.10.tar.bz2"
diff --git a/main/python/APKBUILD b/main/python/APKBUILD
index c84d25b665..59aac9ca3a 100644
--- a/main/python/APKBUILD
+++ b/main/python/APKBUILD
@@ -1,7 +1,7 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=python
pkgver=2.6.5
-pkgrel=3
+pkgrel=4
pkgdesc="A high-level scripting language"
url="http://www.python.org"
license="custom"
@@ -25,7 +25,7 @@ build() {
./configure --prefix=/usr \
--enable-shared \
--with-threads \
- --enable-unicode \
+ --enable-unicode=ucs4 \
--disable-gdbm
make || return 1