From ec89a35b5d281dbd53ce361a88bc4faceb544698 Mon Sep 17 00:00:00 2001 From: Peter Chinetti Date: Sun, 13 Jul 2014 16:32:03 -0400 Subject: [PATCH 01/20] Fix dkms-mt7601 to use v3.0.0.4 upsteam src. Fixes build failure on kernel 3.14 caused by kernel data structure change into an actual C struct. It also uses the new v3.0.0.4 upstream sources. The source.tar.bz2 has been rehosted on github.io. --- alarm/dkms-mt7601/PKGBUILD | 16 ++++++++-------- alarm/dkms-mt7601/dkms-mt7601.install | 8 ++++++-- alarm/dkms-mt7601/dkms.conf | 10 ++-------- 3 files changed, 16 insertions(+), 18 deletions(-) diff --git a/alarm/dkms-mt7601/PKGBUILD b/alarm/dkms-mt7601/PKGBUILD index 368bee088..00a357985 100644 --- a/alarm/dkms-mt7601/PKGBUILD +++ b/alarm/dkms-mt7601/PKGBUILD @@ -1,8 +1,8 @@ pkgname=dkms-mt7601 -pkgver=v3.0.0.3 +pkgver=v3.0.0.4 pkgrel=1 pkgdesc="Driver for Ralink MT7601 chipset wireless adaptors" -arch=('arm') +arch=('arm' 'armv7h') url="http://www.ralinktech.com" license=('GPL') depends=('dkms' 'linux-headers') @@ -10,20 +10,20 @@ conflicts=() install=${pkgname}.install options=(!strip) _pkgname="mt7601" -source=("https://googledrive.com/host/0B_JlgOR4VNe0Sjg4ei0ySEY4aUE/DPA_MT7601U_LinuxSTA_3.0.0.3_20130717_LS.tar.bz2" +source=("https://ddaygold.github.io/DPO_MT7601U_LinuxSTA_3.0.0.4_20130913.pfc.tar.bz2" "dkms.conf") -md5sums=('7597450f4374ecaa5798a8f60c956911' - '230952e09ff23d9725fc329a2e9522e3') +md5sums=('f7984ea77c465a01e89453a8b60f9e4f' + 'f07b4518d0f1190e0c72230137afadb4') package() { # Change src dir name - mv ${srcdir}/DPA_MT7601U_LinuxSTA_3.0.0.3_20130717_LS ${srcdir}/$_pkgname-$pkgver + mv ${srcdir}/DPO_MT7601U_LinuxSTA_3.0.0.4_20130913 ${srcdir}/$_pkgname-$pkgver # Copy Makefile to subdir (because symbolic link is not copied for some reason) - rm ${srcdir}/$_pkgname-$pkgver/UTIL/Makefile - cp ${srcdir}/$_pkgname-$pkgver/Makefile.inc ${srcdir}/$_pkgname-$pkgver/UTIL/Makefile + #rm ${srcdir}/$_pkgname-$pkgver/UTIL/Makefile + #cp ${srcdir}/$_pkgname-$pkgver/Makefile.inc ${srcdir}/$_pkgname-$pkgver/UTIL/Makefile installDir="$pkgdir/usr/src/$_pkgname-$pkgver" diff --git a/alarm/dkms-mt7601/dkms-mt7601.install b/alarm/dkms-mt7601/dkms-mt7601.install index 9368d9712..968a7fcc6 100644 --- a/alarm/dkms-mt7601/dkms-mt7601.install +++ b/alarm/dkms-mt7601/dkms-mt7601.install @@ -1,11 +1,12 @@ post_install (){ MODULE="mt7601" - VERSION="v3.0.0.3" + VERSION="v3.0.0.4" DKMS=$(which dkms) MODPROBE=$(which modprobe) CP=$(which cp) MKDIR=$(which mkdir) + DEPMOD=$(which depmod) # TODO: replace /usr/src with a variable. SRCDIR=/usr/src/$MODULE-$VERSION @@ -20,7 +21,10 @@ post_install (){ $MKDIR -p $PARAMSDIR $CP $SRCDIR/RT2870STA.dat $PARAMSDIR - $MODPROBE -a mt7601Usta mtutil7601Usta mtnet7601Usta + $DEPMOD -a $(uname -r) + + #$MODPROBE -a mt7601Usta mtutil7601Usta mtnet7601Usta + $MODPROBE -a mt7601Usta } pre_upgrade(){ diff --git a/alarm/dkms-mt7601/dkms.conf b/alarm/dkms-mt7601/dkms.conf index 08ade38f0..ccc89a5f1 100644 --- a/alarm/dkms-mt7601/dkms.conf +++ b/alarm/dkms-mt7601/dkms.conf @@ -1,19 +1,13 @@ PACKAGE_NAME="mt7601" -PACKAGE_VERSION="v3.0.0.3" +PACKAGE_VERSION="v3.0.0.4" AUTOINSTALL="yes" MAKE[0]="make" BUILT_MODULE_NAME[0]="mt7601Usta" -BUILT_MODULE_NAME[1]="mtutil7601Usta" -BUILT_MODULE_NAME[2]="mtnet7601Usta" -BUILT_MODULE_LOCATION[0]="MODULE/os/linux" -BUILT_MODULE_LOCATION[1]="UTIL/os/linux" -BUILT_MODULE_LOCATION[2]="NETIF/os/linux" +BUILT_MODULE_LOCATION[0]="os/linux" DEST_MODULE_LOCATION[0]="/kernel/drivers/net/wireless" -DEST_MODULE_LOCATION[1]="/kernel/drivers/net/wireless" -DEST_MODULE_LOCATION[2]="/kernel/drivers/net/wireless" From d742e66c111b45c6c8fecd828f7a087021afb786 Mon Sep 17 00:00:00 2001 From: Kevin Mihelich Date: Wed, 16 Jul 2014 02:18:17 +0000 Subject: [PATCH 02/20] core/linux-wandboard to 3.10.17-3 --- core/linux-wandboard/PKGBUILD | 8 ++++---- core/linux-wandboard/config | 14 ++++++++------ 2 files changed, 12 insertions(+), 10 deletions(-) diff --git a/core/linux-wandboard/PKGBUILD b/core/linux-wandboard/PKGBUILD index 9c787b91f..6d22f6c20 100644 --- a/core/linux-wandboard/PKGBUILD +++ b/core/linux-wandboard/PKGBUILD @@ -4,12 +4,12 @@ buildarch=4 pkgbase=linux-wandboard -_commit=9d567e4f285e80bc332e79f0636259bc05a4ee3b +_commit=13697f2edf19fc99921376039bdb0ad595b48ebb _srcname=linux-${_commit} _kernelname=${pkgbase#linux} _desc="i.MX6 Wandboard" pkgver=3.10.17 -pkgrel=2 +pkgrel=3 arch=('armv7h') url="http://www.kernel.org/" license=('GPL2') @@ -18,9 +18,9 @@ options=('!strip') source=("https://github.com/wandboard-org/linux/archive/${_commit}.tar.gz" '0001-Swap-usdhc1-and-usdhc3.patch' 'config') -md5sums=('97d87f0d40873c0b1da12b616a2c4ee1' +md5sums=('e10cf2d6b0e82303be6ea384aa2880fb' '1edf745b39c715206fbe327c60f6cf76' - '81ec6ae7ff6967ca73f08775b9603387') + '87706fcb5d01bf5a1722c6c9de5be83f') prepare() { cd "${srcdir}/${_srcname}" diff --git a/core/linux-wandboard/config b/core/linux-wandboard/config index 9b96ac33f..1dde6b9b0 100644 --- a/core/linux-wandboard/config +++ b/core/linux-wandboard/config @@ -1,6 +1,6 @@ # # Automatically generated file; DO NOT EDIT. -# Linux/arm 3.10.17-8 Kernel Configuration +# Linux/arm 3.10.17-3 Kernel Configuration # CONFIG_ARM=y CONFIG_MIGHT_HAVE_PCI=y @@ -2140,6 +2140,7 @@ CONFIG_TOUCHSCREEN_MC13783=y # CONFIG_TOUCHSCREEN_W90X900 is not set # CONFIG_TOUCHSCREEN_ST1232 is not set # CONFIG_TOUCHSCREEN_TPS6507X is not set +# CONFIG_TOUCHSCREEN_FUSION is not set CONFIG_INPUT_MISC=y # CONFIG_INPUT_AD714X is not set # CONFIG_INPUT_BMA150 is not set @@ -3617,7 +3618,7 @@ CONFIG_USB=y # CONFIG_USB_DEFAULT_PERSIST=y # CONFIG_USB_DYNAMIC_MINORS is not set -# CONFIG_USB_OTG is not set +CONFIG_USB_OTG=y # CONFIG_USB_OTG_WHITELIST is not set # CONFIG_USB_OTG_BLACKLIST_HUB is not set # CONFIG_USB_MON is not set @@ -3837,21 +3838,22 @@ CONFIG_USB_U_SERIAL=m CONFIG_USB_F_SERIAL=m CONFIG_USB_F_OBEX=m CONFIG_USB_ZERO=m +# CONFIG_USB_ZERO_HNPTEST is not set # CONFIG_USB_AUDIO is not set CONFIG_USB_ETH=m CONFIG_USB_ETH_RNDIS=y -# CONFIG_USB_ETH_EEM is not set +CONFIG_USB_ETH_EEM=y # CONFIG_USB_G_NCM is not set # CONFIG_USB_GADGETFS is not set # CONFIG_USB_FUNCTIONFS is not set CONFIG_USB_MASS_STORAGE=m -# CONFIG_FSL_UTP is not set +CONFIG_FSL_UTP=y # CONFIG_USB_GADGET_TARGET is not set CONFIG_USB_G_SERIAL=m # CONFIG_USB_MIDI_GADGET is not set # CONFIG_USB_G_PRINTER is not set -# CONFIG_USB_CDC_COMPOSITE is not set -# CONFIG_USB_G_ACM_MS is not set +CONFIG_USB_CDC_COMPOSITE=m +CONFIG_USB_G_ACM_MS=m # CONFIG_USB_G_MULTI is not set # CONFIG_USB_G_HID is not set # CONFIG_USB_G_DBGP is not set From a2923a82b2aaa45a0600357a9f96662cc80f78d7 Mon Sep 17 00:00:00 2001 From: Kevin Mihelich Date: Wed, 16 Jul 2014 02:33:04 +0000 Subject: [PATCH 03/20] added core/systemd --- ...rly-track-addresses-when-first-added.patch | 104 ++++++++++ core/systemd/PKGBUILD | 170 +++++++++++++++++ core/systemd/initcpio-hook-udev | 22 +++ core/systemd/initcpio-install-systemd | 160 ++++++++++++++++ core/systemd/initcpio-install-udev | 29 +++ core/systemd/systemd.install | 180 ++++++++++++++++++ 6 files changed, 665 insertions(+) create mode 100644 core/systemd/0001-networkd-properly-track-addresses-when-first-added.patch create mode 100644 core/systemd/PKGBUILD create mode 100644 core/systemd/initcpio-hook-udev create mode 100644 core/systemd/initcpio-install-systemd create mode 100644 core/systemd/initcpio-install-udev create mode 100644 core/systemd/systemd.install diff --git a/core/systemd/0001-networkd-properly-track-addresses-when-first-added.patch b/core/systemd/0001-networkd-properly-track-addresses-when-first-added.patch new file mode 100644 index 000000000..4f1af0741 --- /dev/null +++ b/core/systemd/0001-networkd-properly-track-addresses-when-first-added.patch @@ -0,0 +1,104 @@ +From 4958aee4977f325be19f0e1e4b424922c3cada5f Mon Sep 17 00:00:00 2001 +From: Tom Gundersen +Date: Thu, 3 Jul 2014 22:47:51 +0200 +Subject: [PATCH] networkd: properly track addresses when first added + +When doing a NEWADDR, the reply we get back is the NEWADDR itself, rather +than just an empty ack (unlike how NEWLINK works). For this reason, the +process that did the NEWADDR does not get the broadcast message. + +We were only listening for broadcast messages, and hence not tracking the +addresses we added ourselves. This went unnoticed as the kernel will usually +send NEWADDR messages from time to time anyway, so things would mostly work, +but in the worst case we would not notice that a routable address was available +and consider ourselves offline. +--- + src/network/networkd-link.c | 54 +++++++++++++++++++++++++-------------------- + 1 file changed, 30 insertions(+), 24 deletions(-) + +diff --git a/src/network/networkd-link.c b/src/network/networkd-link.c +index 961c1ab..6257372 100644 +--- a/src/network/networkd-link.c ++++ b/src/network/networkd-link.c +@@ -599,10 +599,35 @@ static int route_drop_handler(sd_rtnl *rtnl, sd_rtnl_message *m, void *userdata) + return 0; + } + ++static int link_get_address_handler(sd_rtnl *rtnl, sd_rtnl_message *m, void *userdata) { ++ _cleanup_link_unref_ Link *link = userdata; ++ int r; ++ ++ assert(rtnl); ++ assert(m); ++ assert(link); ++ assert(link->manager); ++ ++ for (; m; m = sd_rtnl_message_next(m)) { ++ r = sd_rtnl_message_get_errno(m); ++ if (r < 0) { ++ log_debug_link(link, "getting address failed: %s", strerror(-r)); ++ continue; ++ } ++ ++ r = link_rtnl_process_address(rtnl, m, link->manager); ++ if (r < 0) ++ log_warning_link(link, "could not process address: %s", strerror(-r)); ++ } ++ ++ return 1; ++} ++ + static int address_handler(sd_rtnl *rtnl, sd_rtnl_message *m, void *userdata) { + _cleanup_link_unref_ Link *link = userdata; + int r; + ++ assert(rtnl); + assert(m); + assert(link); + assert(link->ifname); +@@ -623,6 +648,11 @@ static int address_handler(sd_rtnl *rtnl, sd_rtnl_message *m, void *userdata) { + link->ifname, strerror(-r), + "ERRNO=%d", -r, + NULL); ++ if (r >= 0) { ++ /* calling handler directly so take a ref */ ++ link_ref(link); ++ link_get_address_handler(rtnl, m, link); ++ } + + if (link->addr_messages == 0) { + log_debug_link(link, "addresses set"); +@@ -2233,30 +2263,6 @@ int link_rtnl_process_address(sd_rtnl *rtnl, sd_rtnl_message *message, void *use + return 1; + } + +-static int link_get_address_handler(sd_rtnl *rtnl, sd_rtnl_message *m, void *userdata) { +- _cleanup_link_unref_ Link *link = userdata; +- int r; +- +- assert(rtnl); +- assert(m); +- assert(link); +- assert(link->manager); +- +- for (; m; m = sd_rtnl_message_next(m)) { +- r = sd_rtnl_message_get_errno(m); +- if (r < 0) { +- log_debug_link(link, "getting address failed: %s", strerror(-r)); +- continue; +- } +- +- r = link_rtnl_process_address(rtnl, m, link->manager); +- if (r < 0) +- log_warning_link(link, "could not process address: %s", strerror(-r)); +- } +- +- return 1; +-} +- + int link_add(Manager *m, sd_rtnl_message *message, Link **ret) { + Link *link; + _cleanup_rtnl_message_unref_ sd_rtnl_message *req = NULL; +-- +2.0.1 + diff --git a/core/systemd/PKGBUILD b/core/systemd/PKGBUILD new file mode 100644 index 000000000..da25a9bba --- /dev/null +++ b/core/systemd/PKGBUILD @@ -0,0 +1,170 @@ +# Maintainer: Dave Reisner +# Maintainer: Tom Gundersen + +# ALARM: Kevin Mihelich +# - !distcc + +pkgbase=systemd +pkgname=('systemd' 'libsystemd' 'systemd-sysvcompat') +pkgver=215 +pkgrel=4.1 +arch=('i686' 'x86_64') +url="http://www.freedesktop.org/wiki/Software/systemd" +makedepends=('acl' 'cryptsetup' 'docbook-xsl' 'gobject-introspection' 'gperf' + 'gtk-doc' 'intltool' 'kmod' 'libcap' 'libgcrypt' 'libmicrohttpd' 'libxslt' + 'util-linux' 'linux-api-headers' 'pam' 'python' 'python-lxml' 'quota-tools' + 'shadow' 'xz') +options=('strip' 'debug' '!distcc') +source=("http://www.freedesktop.org/software/$pkgname/$pkgname-$pkgver.tar.xz" + 'initcpio-hook-udev' + 'initcpio-install-systemd' + 'initcpio-install-udev' + '0001-networkd-properly-track-addresses-when-first-added.patch') +md5sums=('d2603e9fffd8b18d242543e36f2e7d31' + '29245f7a240bfba66e2b1783b63b6b40' + '66cca7318e13eaf37c5b7db2efa69846' + 'bde43090d4ac0ef048e3eaee8202a407' + '2d237a277a12b3801c88d159d64a7413') + +prepare() { + cd "$pkgname-$pkgver" + + patch -Np1 <"$srcdir"/0001-networkd-properly-track-addresses-when-first-added.patch +} + +build() { + cd "$pkgname-$pkgver" + + ./configure \ + --libexecdir=/usr/lib \ + --localstatedir=/var \ + --sysconfdir=/etc \ + --enable-introspection \ + --enable-gtk-doc \ + --enable-compat-libs \ + --disable-audit \ + --disable-ima \ + --disable-kdbus \ + --with-sysvinit-path= \ + --with-sysvrcnd-path= \ + --with-firmware-path="/usr/lib/firmware/updates:/usr/lib/firmware" + + make +} + +package_systemd() { + pkgdesc="system and service manager" + license=('GPL2' 'LGPL2.1' 'MIT') + depends=('acl' 'bash' 'dbus' 'glib2' 'kbd' 'kmod' 'hwids' 'libcap' 'libgcrypt' + 'libsystemd' 'pam' 'libseccomp' 'util-linux' 'xz') + provides=('nss-myhostname' "systemd-tools=$pkgver" "udev=$pkgver") + replaces=('nss-myhostname' 'systemd-tools' 'udev') + conflicts=('nss-myhostname' 'systemd-tools' 'udev') + optdepends=('python: systemd library bindings' + 'cryptsetup: required for encrypted block devices' + 'libmicrohttpd: remote journald capabilities' + 'quota-tools: kernel-level quota management' + 'systemd-sysvcompat: symlink package to provide sysvinit binaries') + backup=(etc/dbus-1/system.d/org.freedesktop.systemd1.conf + etc/dbus-1/system.d/org.freedesktop.hostname1.conf + etc/dbus-1/system.d/org.freedesktop.login1.conf + etc/dbus-1/system.d/org.freedesktop.locale1.conf + etc/dbus-1/system.d/org.freedesktop.machine1.conf + etc/dbus-1/system.d/org.freedesktop.timedate1.conf + etc/pam.d/systemd-user + etc/systemd/bootchart.conf + etc/systemd/journald.conf + etc/systemd/logind.conf + etc/systemd/system.conf + etc/systemd/timesyncd.conf + etc/systemd/resolved.conf + etc/systemd/user.conf + etc/udev/udev.conf) + install="systemd.install" + + make -C "$pkgname-$pkgver" DESTDIR="$pkgdir" install + + # don't write units to /etc by default. some of these will be re-enabled on + # post_install. + rm "$pkgdir/etc/systemd/system/getty.target.wants/getty@tty1.service" \ + "$pkgdir/etc/systemd/system/multi-user.target.wants/systemd-networkd.service" \ + "$pkgdir/etc/systemd/system/multi-user.target.wants/systemd-resolved.service" \ + "$pkgdir/etc/systemd/system/multi-user.target.wants/systemd-timesyncd.service" \ + "$pkgdir/etc/systemd/system/network-online.target.wants/systemd-networkd-wait-online.service" + rmdir "$pkgdir/etc/systemd/system/getty.target.wants" \ + "$pkgdir/etc/systemd/system/network-online.target.wants" + + # remove the coredump rule until minidumps are a thing. + rm "$pkgdir/usr/lib/sysctl.d/50-coredump.conf" + + # get rid of RPM macros + rm -r "$pkgdir/usr/lib/rpm" + + # add back tmpfiles.d/legacy.conf + install -m644 "systemd-$pkgver/tmpfiles.d/legacy.conf" "$pkgdir/usr/lib/tmpfiles.d" + + # Replace dialout/tape/cdrom group in rules with uucp/storage/optical group + sed -i 's#GROUP="dialout"#GROUP="uucp"#g; + s#GROUP="tape"#GROUP="storage"#g; + s#GROUP="cdrom"#GROUP="optical"#g' "$pkgdir"/usr/lib/udev/rules.d/*.rules + sed -i 's/dialout/uucp/g; + s/tape/storage/g; + s/cdrom/optical/g' "$pkgdir"/usr/lib/sysusers.d/basic.conf + + # add mkinitcpio hooks + install -Dm644 "$srcdir/initcpio-install-systemd" "$pkgdir/usr/lib/initcpio/install/systemd" + install -Dm644 "$srcdir/initcpio-install-udev" "$pkgdir/usr/lib/initcpio/install/udev" + install -Dm644 "$srcdir/initcpio-hook-udev" "$pkgdir/usr/lib/initcpio/hooks/udev" + + # ensure proper permissions for /var/log/journal + chown root:systemd-journal "$pkgdir/var/log/journal" + chmod 2755 "$pkgdir/var/log/journal" + + # fix pam file + sed 's|system-auth|system-login|g' -i "$pkgdir/etc/pam.d/systemd-user" + + ### split out manpages for sysvcompat + rm -rf "$srcdir/_sysvcompat" + install -dm755 "$srcdir"/_sysvcompat/usr/share/man/man8/ + mv "$pkgdir"/usr/share/man/man8/{telinit,halt,reboot,poweroff,runlevel,shutdown}.8 \ + "$srcdir"/_sysvcompat/usr/share/man/man8 + + ### split off runtime libraries + rm -rf "$srcdir/_libsystemd" + install -dm755 "$srcdir"/_libsystemd/usr/lib + cd "$srcdir"/_libsystemd + mv "$pkgdir"/usr/lib/lib{systemd,{g,}udev}*.so* usr/lib + + # include MIT license, since it's technically custom + install -Dm644 "$srcdir/$pkgname-$pkgver/LICENSE.MIT" \ + "$pkgdir/usr/share/licenses/systemd/LICENSE.MIT" +} + +package_libsystemd() { + pkgdesc="systemd client libraries" + depends=('glib2' 'glibc' 'libgcrypt' 'xz') + license=('GPL2') + provides=('libgudev-1.0.so' 'libsystemd.so' 'libsystemd-daemon.so' 'libsystemd-id128.so' + 'libsystemd-journal.so' 'libsystemd-login.so' 'libudev.so') + + mv "$srcdir/_libsystemd"/* "$pkgdir" +} + +package_systemd-sysvcompat() { + pkgdesc="sysvinit compat for systemd" + license=('GPL2') + groups=('base') + conflicts=('sysvinit') + depends=('systemd') + + mv "$srcdir/_sysvcompat"/* "$pkgdir" + + install -dm755 "$pkgdir/usr/bin" + for tool in runlevel reboot shutdown poweroff halt telinit; do + ln -s 'systemctl' "$pkgdir/usr/bin/$tool" + done + + ln -s '../lib/systemd/systemd' "$pkgdir/usr/bin/init" +} + +# vim: ft=sh syn=sh et diff --git a/core/systemd/initcpio-hook-udev b/core/systemd/initcpio-hook-udev new file mode 100644 index 000000000..0bc32e008 --- /dev/null +++ b/core/systemd/initcpio-hook-udev @@ -0,0 +1,22 @@ +#!/usr/bin/ash + +run_earlyhook() { + kmod static-nodes --format=tmpfiles --output=/run/tmpfiles.d/kmod.conf + systemd-tmpfiles --prefix=/dev --create + /usr/lib/systemd/systemd-udevd --daemon --resolve-names=never + udevd_running=1 +} + +run_hook() { + msg ":: Triggering uevents..." + udevadm trigger --action=add --type=subsystems + udevadm trigger --action=add --type=devices + udevadm settle +} + +run_cleanuphook() { + udevadm control --exit + udevadm info --cleanup-db +} + +# vim: set ft=sh ts=4 sw=4 et: diff --git a/core/systemd/initcpio-install-systemd b/core/systemd/initcpio-install-systemd new file mode 100644 index 000000000..81ae8eb97 --- /dev/null +++ b/core/systemd/initcpio-install-systemd @@ -0,0 +1,160 @@ +#!/bin/bash + +strip_quotes() { + local len=${#1} quotes=$'[\'"]' str=${!1} + + if [[ ${str:0:1} = ${str: -1} && ${str:0:1} = $quotes ]]; then + printf -v "$1" %s "${str:1:-1}" + fi +} + +add_udev_rule() { + # Add an udev rules file to the initcpio image. Dependencies on binaries + # will be discovered and added. + # $1: path to rules file (or name of rules file) + + local rules= rule= key= value= binary= + + rules=$(PATH=/usr/lib/udev/rules.d:/lib/udev/rules.d type -P "$1") + if [[ -z $rules ]]; then + # complain about not found rules + return 1 + fi + + add_file "$rules" + + while IFS=, read -ra rule; do + # skip empty lines, comments + [[ -z $rule || $rule = @(+([[:space:]])|#*) ]] && continue + + for pair in "${rule[@]}"; do + IFS=' =' read -r key value <<< "$pair" + case $key in + RUN@({program}|+)|IMPORT{program}|ENV{REMOVE_CMD}) + strip_quotes 'value' + # just take the first word as the binary name + binary=${value%% *} + if [[ ${binary:0:1} != '/' ]]; then + binary=$(PATH=/usr/lib/udev:/lib/udev type -P "$binary") + fi + add_binary "$binary" + ;; + esac + done + done <"$rules" +} + +add_systemd_unit() { + # Add a systemd unit file to the initcpio image. Hard dependencies on binaries + # and other unit files will be discovered and added. + # $1: path to rules file (or name of rules file) + + local unit= rule= entry= key= value= binary= dep= + + unit=$(PATH=/usr/lib/systemd/system:/lib/systemd/system type -P "$1") + if [[ -z $unit ]]; then + # complain about not found unit file + return 1 + fi + + add_file "$unit" + + while IFS='=' read -r key values; do + read -ra values <<< "$values" + + case $key in + Requires|OnFailure) + # only add hard dependencies (not Wants) + map add_systemd_unit "${values[@]}" + ;; + Exec*) + # don't add binaries unless they are required + if [[ ${values[0]:0:1} != '-' ]]; then + add_binary "${values[0]}" + fi + ;; + esac + + done <"$unit" + + # preserve reverse soft dependency + for dep in {/usr,}/lib/systemd/system/*.wants/${unit##*/}; do + if [[ -L $dep ]]; then + add_symlink "$dep" + fi + done + + # add hard dependencies + if [[ -d $unit.requires ]]; then + for dep in "$unit".requires/*; do + add_systemd_unit ${dep##*/} + done + fi +} + +build() { + local rules unit + + # from base + add_binary /bin/mount + add_binary /usr/bin/kmod /usr/bin/modprobe + + # systemd + add_binary /usr/lib/systemd/systemd /init + add_binary /usr/bin/systemd-tmpfiles + + # generators + add_file "/usr/lib/systemd/system-generators/systemd-fstab-generator" + add_file "/usr/lib/systemd/system-generators/systemd-gpt-auto-generator" + + # udev rules and systemd units + map add_udev_rule "$rules" \ + 50-udev-default.rules \ + 60-persistent-storage.rules \ + 64-btrfs.rules \ + 80-drivers.rules \ + 99-systemd.rules \ + + map add_systemd_unit \ + ctrl-alt-del.target \ + initrd-cleanup.service \ + initrd-fs.target \ + initrd-parse-etc.service \ + initrd-root-fs.target \ + initrd-switch-root.service \ + initrd-switch-root.target \ + initrd-udevadm-cleanup-db.service \ + initrd.target \ + kmod-static-nodes.service \ + sockets.target \ + systemd-fsck@.service \ + systemd-journald.service \ + systemd-tmpfiles-setup-dev.service \ + systemd-udev-trigger.service \ + systemd-udevd-control.socket \ + systemd-udevd-kernel.socket \ + systemd-udevd.service + + add_symlink "/usr/lib/systemd/system/default.target" "initrd.target" + + # libdbus needs the passwd info of the root user + # TODO: make sure this is no longer necessary when systemctl moves to sd-bus + add_file "/etc/nsswitch.conf" + add_file "/etc/passwd" + add_binary "$(readlink -f /usr/lib/libnss_files.so)" + + # udev wants /etc/group since it doesn't launch with --resolve-names=never + add_file "/etc/group" +} + +help() { + cat </dev/null; then + echo "==> Warning: setcap failed, falling back to setuid root on /$1" + chmod u+s "$1" + fi +} + +add_journal_acls() { + # ignore errors, since the filesystem might not support ACLs + setfacl -Rnm g:wheel:rx,d:g:wheel:rx,g:adm:rx,d:g:adm:rx var/log/journal/ 2>/dev/null + : +} + +maybe_reexec() { + # don't reexec on 209-1 upgrade due to large infrastructural changes. + if [[ $(vercmp 209-1 "$2") -eq 1 ]]; then + echo ':: systemd has not been reexecuted. It is recommended that you' + echo ' reboot at your earliest convenience.' + return + fi + + if sd_booted; then + systemctl --system daemon-reexec + fi +} + +_dir_empty() { + set -- "$1"/* + [[ ! -e $1 && ! -L $1 ]] +} + +post_common() { + systemd-machine-id-setup + + udevadm hwdb --update + journalctl --update-catalog +} + +_204_1_changes() { + printf '==> The /bin/systemd symlink has been removed. Any references in your\n' + printf ' bootloader (or elsewhere) must be updated to /usr/lib/systemd/systemd.\n' +} + +_205_1_changes() { + printf '==> systemd 205 restructures the cgroup hierarchy and changes internal\n' + printf ' protocols. You should reboot at your earliest convenience.\n' +} + +_206_1_changes() { + printf '==> The "timestamp" hook for mkinitcpio no longer exists. If you used\n' + printf ' this hook, you must remove it from /etc/mkinitcpio.conf. A "systemd"\n' + printf ' hook has been added which provides this functionality, and more.\n' +} + +_208_1_changes() { + if [[ -e var/lib/backlight && ! -e var/lib/systemd/backlight ]]; then + mv -T var/lib/backlight var/lib/systemd/backlight + fi + + if [[ -e var/lib/random-seed && ! -e var/lib/systemd/random-seed ]]; then + mv -T var/lib/random-seed var/lib/systemd/random-seed + fi +} + +_208_8_changes() { + add_journal_acls +} + +_209_1_changes() { + # attempt to preserve existing behavior + + local old_rule=etc/udev/rules.d/80-net-name-slot.rules + local new_rule=etc/udev/rules.d/80-net-setup-link.rules + + echo ":: Network device naming is now controlled by udev's net_setup_link" + echo " builtin. Refer to the systemd.link manpage for a full description." + + # not clear what action we can take here, so don't do anything + [[ -e $new_rule ]] && return 0 + + # rename the old rule to the new one so that we preserve the user's + # existing option. + if [[ -e $old_rule ]]; then + printf ':: Renaming %s to %s in order\n' "${old_rule##*/}" "${new_rule##*/}" + printf ' to preserve existing network naming behavior.\n' + mv -v "$old_rule" "$new_rule" + else + echo ':: No changes have been made to your network naming configuration.' + echo ' Interfaces should continue to maintain the same names.' + fi +} + +_210_1_changes() { + if sd_booted; then + # If /etc/systemd/network is non-empty, then this is a 209 user who used + # networkd. Re-enable it for them. + if ! _dir_empty etc/systemd/network; then + systemctl enable systemd-networkd + fi + fi +} + +_213_4_changes() { + if sd_booted; then + # if /etc/resolv.conf is a symlink, just assume that it was being managed + # by systemd-networkd, and re-enable systemd-resolved. + if [[ -L etc/resolv.conf ]]; then + systemctl enable systemd-resolved + fi + fi +} + +_214_2_changes() { + # /run/systemd/network/resolv.conf -> /run/systemd/resolve/resolv.conf + if [[ etc/resolv.conf -ef run/systemd/network/resolv.conf ]]; then + ln -sf /run/systemd/resolve/resolv.conf /etc/resolv.conf + + if sd_booted; then + if [[ ! -d run/systemd/resolve ]]; then + mkdir run/systemd/resolve + fi + + if [[ -f run/systemd/network/resolv.conf ]]; then + mv run/systemd/{network,resolve}/resolv.conf + fi + fi + fi + + echo ':: coredumps are no longer sent to the journal by default. To re-enable:' + echo ' echo >/etc/sysctl.d/50-coredump.conf \' + echo ' "kernel.core_pattern=|/usr/lib/systemd/systemd-coredump %p %u %g %s %t %e"' +} + +_215_2_changes() { + # create at least the symlink from /etc/os-release to /usr/lib/os-release + systemd-tmpfiles --create etc.conf +} + +post_install() { + post_common "$@" + + add_journal_acls + + # enable getty@tty1 by default, but don't track the file + systemctl enable getty@tty1.service + + echo ":: Append 'init=/usr/lib/systemd/systemd' to your kernel command line in your" + echo " bootloader to replace sysvinit with systemd, or install systemd-sysvcompat" +} + +post_upgrade() { + post_common "$@" + + maybe_reexec "$@" + + local v upgrades=(204-1 + 205-1 + 206-1 + 208-1 + 208-8 + 209-1 + 210-1 + 213-4 + 214-2 + 215-2) + + for v in "${upgrades[@]}"; do + if [[ $(vercmp "$v" "$2") -eq 1 ]]; then + "_${v//-/_}_changes" + fi + done +} + +# vim:set ts=2 sw=2 et: From eff71a699af87743ea1bb247e77baf06dad451c6 Mon Sep 17 00:00:00 2001 From: Kevin Mihelich Date: Wed, 16 Jul 2014 03:06:18 +0000 Subject: [PATCH 04/20] added community/uwsgi --- community/uwsgi/PKGBUILD | 252 ++++++++++++++++++ community/uwsgi/archlinux.ini | 17 ++ community/uwsgi/emperor.ini | 4 + community/uwsgi/emperor.uwsgi.service | 14 + community/uwsgi/emperor.uwsgi.socket | 9 + community/uwsgi/tmpfilesd | 1 + community/uwsgi/uwsgi.install | 12 + community/uwsgi/uwsgi@.service | 14 + community/uwsgi/uwsgi@.socket | 9 + community/uwsgi/uwsgi_fix_rpath.patch | 66 +++++ .../uwsgi/uwsgi_ruby20_compatibility.patch | 42 +++ community/uwsgi/uwsgi_trick_chroot.patch | 16 ++ 12 files changed, 456 insertions(+) create mode 100644 community/uwsgi/PKGBUILD create mode 100644 community/uwsgi/archlinux.ini create mode 100644 community/uwsgi/emperor.ini create mode 100644 community/uwsgi/emperor.uwsgi.service create mode 100644 community/uwsgi/emperor.uwsgi.socket create mode 100644 community/uwsgi/tmpfilesd create mode 100644 community/uwsgi/uwsgi.install create mode 100644 community/uwsgi/uwsgi@.service create mode 100644 community/uwsgi/uwsgi@.socket create mode 100644 community/uwsgi/uwsgi_fix_rpath.patch create mode 100644 community/uwsgi/uwsgi_ruby20_compatibility.patch create mode 100644 community/uwsgi/uwsgi_trick_chroot.patch diff --git a/community/uwsgi/PKGBUILD b/community/uwsgi/PKGBUILD new file mode 100644 index 000000000..29a7729e2 --- /dev/null +++ b/community/uwsgi/PKGBUILD @@ -0,0 +1,252 @@ +# $Id$ +# Maintainer: Daniel Wallace +# Contributor: Valentin Hăloiu +# Contributor: Angel Velasquez +# Contributor: Kevin Zuber +# Contributor: Vsevolod Balashov + +# ALARM: Kevin Mihelich +# - ripped out pypy stuff + +pkgbase=uwsgi +pkgname=(uwsgi + uwsgi-plugin-common + uwsgi-plugin-rack + uwsgi-plugin-psgi + uwsgi-plugin-python2 + uwsgi-plugin-python + uwsgi-plugin-nagios + uwsgi-plugin-router + uwsgi-plugin-php + uwsgi-plugin-lua51 + uwsgi-plugin-carbon + uwsgi-plugin-rrdtool + uwsgi-plugin-pam + uwsgi-plugin-zergpool + ) + #uwsgi-plugin-erlang + #uwsgi-plugin-admin +pkgver=2.0.6 +pkgrel=1 +arch=(i686 x86_64) +url="http://projects.unbit.it/$pkgbase" +license=(GPL2) +backup=('etc/uwsgi/emperor.ini') +conflicts=(python-$pkgbase) +makedepends=(gcc python python2 ruby python2-greenlet php-embed curl libxml2 libyaml + perl lua51 pcre libedit openssl bzip2 gmp pam java-environment=7 + jansson classpath) +source=(http://projects.unbit.it/downloads/$pkgbase-$pkgver.tar.gz + archlinux.ini + tmpfilesd + uwsgi@.service + uwsgi@.socket + uwsgi_fix_rpath.patch + uwsgi_ruby20_compatibility.patch + uwsgi_trick_chroot.patch + emperor.ini + emperor.uwsgi.service + emperor.uwsgi.socket) + +md5sums=('50e9657ebbf52dd3bcd57b565f6b65a5' + 'a0749da07b545efcbb0276f52be22652' + '752475ee32286acfbafa49b898616817' + 'c54a60431d8d81c1a65b9f4b271ac718' + 'ea381549fe65a5d72fa1abb5ceb7d3ef' + '1a4516d5cdcf5b95b036f4eae2d0c152' + '4d09535ce379c8acd76160f35d5d6b55' + '0c09a52fdb88f08c36a8b380f451ce6d' + '5fa14ddea9a3dae17b5be28468d47b80' + '69ab06670656b4ea8f8a91ebe33c38e4' + '3ab4486e02f5c217566fb6c8d469c246') + +prepare(){ + cd $srcdir/$pkgbase-$pkgver + cp $srcdir/archlinux.ini buildconf/archlinux.ini + #sed -i 's/LIBS .*-lphp5.*/LIBS = []/' plugins/php/uwsgiplugin.py + for patch in uwsgi_fix_rpath.patch uwsgi_ruby20_compatibility.patch uwsgi_trick_chroot.patch; do + patch -Np1 -i $srcdir/$patch + done + rm -rf plugins/ruby + mv plugins/ruby{19,} + sed -i 's:\(ruby\)19:\1:' plugins/ruby/uwsgiplugin.py + +} +build() { + pushd $srcdir/$pkgbase-$pkgver + + python uwsgiconfig.py --build archlinux + python2 uwsgiconfig.py --plugin plugins/python archlinux python2 + python2 uwsgiconfig.py --plugin plugins/greenlet archlinux greenlet + python2 uwsgiconfig.py --plugin plugins/gevent archlinux gevent +} + +package_uwsgi() { + pkgdesc="A fast, self-healing and developer/sysadmin-friendly application container server coded in pure C" + depends=(python2 libxml2 jansson libyaml systemd) + install=uwsgi.install + cd $srcdir/$pkgbase-$pkgver + install -Dm755 uwsgi $pkgdir/usr/bin/uwsgi + install -Dm644 $srcdir/uwsgi@.service $pkgdir/usr/lib/systemd/system/uwsgi@.service + install -Dm644 $srcdir/uwsgi@.socket $pkgdir/usr/lib/systemd/system/uwsgi@.socket + install -Dm644 $srcdir/emperor.uwsgi.service $pkgdir/usr/lib/systemd/system/emperor.uwsgi.service + install -Dm644 $srcdir/emperor.uwsgi.socket $pkgdir/usr/lib/systemd/system/emperor.uwsgi.socket + install -Dm644 $srcdir/emperor.ini $pkgdir/etc/uwsgi/emperor.ini + install -Dm755 systemd_logger_plugin.so $pkgdir/usr/lib/uwsgi/systemd_logger_plugin.so + install -Dm644 $srcdir/tmpfilesd $pkgdir/usr/lib/tmpfiles.d/uwsgi.conf +} + +package_uwsgi-plugin-common(){ + depends=(uwsgi) + pkgdesc="Common plugins for uWSGI" + install -dm755 $pkgdir/usr/bin + for plugin in cache cgi rpc ugreen; do + install -Dm755 $pkgbase-$pkgver/${plugin}_plugin.so $pkgdir/usr/lib/uwsgi/${plugin}_plugin.so + ln -s uwsgi $pkgdir/usr/bin/uwsgi_$plugin + done + install -Dm755 $pkgbase-$pkgver/corerouter_plugin.so $pkgdir/usr/lib/uwsgi/ + +} + +package_uwsgi-plugin-rack(){ + depends=(ruby uwsgi-plugin-common) + pkgdesc="Ruby rack plugin" + install -dm755 $pkgdir/usr/bin + install -Dm755 $pkgbase-$pkgver/rack_plugin.so $pkgdir/usr/lib/uwsgi/rack_plugin.so + ln -s uwsgi $pkgdir/usr/bin/uwsgi_${pkgname#uwsgi-plugin-} + install -Dm755 $pkgbase-$pkgver/fiber_plugin.so $pkgdir/usr/lib/uwsgi/fiber_plugin.so + install -Dm755 $pkgbase-$pkgver/rbthreads_plugin.so $pkgdir/usr/lib/uwsgi/rbthreads_plugin.so +} + +package_uwsgi-plugin-psgi(){ + depends=(perl uwsgi-plugin-common) + pkgdesc="Perl psgi plugin" + install -dm755 $pkgdir/usr/bin + install -Dm755 $pkgbase-$pkgver/psgi_plugin.so $pkgdir/usr/lib/uwsgi/psgi_plugin.so + ln -s uwsgi $pkgdir/usr/bin/uwsgi_${pkgname#uwsgi-plugin-} +} + +package_uwsgi-plugin-python2(){ + depends=(uwsgi-plugin-common python2-gevent python2-gevent) + pkgdesc="Plugin for Python2 support" + replace=(uswgi-plugin-greenlet) + cd $srcdir/$pkgbase-$pkgver + install -dm755 $pkgdir/usr/bin + install -Dm755 $srcdir/$pkgbase-$pkgver/python2_plugin.so $pkgdir/usr/lib/uwsgi/python2_plugin.so + install -Dm755 greenlet_plugin.so $pkgdir/usr/lib/uwsgi/greenlet_plugin.so + install -Dm755 gevent_plugin.so $pkgdir/usr/lib/uwsgi/gevent_plugin.so + ln -s uwsgi $pkgdir/usr/bin/uwsgi_${pkgname#uwsgi-plugin-} +} + +package_uwsgi-plugin-python(){ + depends=(python uwsgi-plugin-common) + pkgdesc="Plugin for Python support" + install -dm755 $pkgdir/usr/bin + cd $srcdir/$pkgbase-$pkgver + install -Dm755 $srcdir/$pkgbase-$pkgver/python_plugin.so $pkgdir/usr/lib/uwsgi/python_plugin.so + ln -s uwsgi $pkgdir/usr/bin/uwsgi_${pkgname#uwsgi-plugin-} +} + +package_uwsgi-plugin-nagios(){ + depends=( uwsgi-plugin-common) + pkgdesc="Plugin for Nagios support" + install -dm755 $pkgdir/usr/bin + install -Dm755 $pkgbase-$pkgver/nagios_plugin.so $pkgdir/usr/lib/uwsgi/nagios_plugin.so + ln -s uwsgi $pkgdir/usr/bin/uwsgi_${pkgname#uwsgi-plugin-} +} + +package_uwsgi-plugin-router(){ + depends=( uwsgi-plugin-common) + pkgdesc="Plugin for Router support" + install -dm755 $pkgdir/usr/lib/uwsgi + install -dm755 $pkgdir/usr/bin + cd $pkgbase-$pkgver + + for file in router_*_plugin.so fastrouter_plugin.so sslrouter_plugin.so rawrouter_plugin.so; do + install -Dm755 $file $pkgdir/usr/lib/uwsgi/$file + done + install -Dm755 router_basicauth_plugin.so $pkgdir/usr/lib/uwsgi/basicauth_plugin.so +} + +#package_uwsgi-plugin-admin(){ +# depends=( uwsgi-plugin-common) +# pkgdesc="Plugin for Admin support" +# install -dm755 $pkgdir/usr/bin +# install -Dm755 $pkgbase-$pkgver/admin_plugin.so $pkgdir/usr/lib/uwsgi/admin_plugin.so +# ln -s uwsgi $pkgdir/usr/bin/uwsgi_${pkgname#uwsgi-plugin-} +#} + +package_uwsgi-plugin-lua51(){ + depends=(lua51 uwsgi-plugin-common) + pkgdesc="Plugin for Lua support" + install -dm755 $pkgdir/usr/bin + install -dm755 $pkgdir/usr/bin + install -Dm755 $pkgbase-$pkgver/lua_plugin.so $pkgdir/usr/lib/uwsgi/lua_plugin.so + ln -s uwsgi $pkgdir/usr/bin/uwsgi_lua +} + +package_uwsgi-plugin-php(){ + depends=(uwsgi-plugin-common php-embed libyaml jansson) + replace=(uswgi-plugin-php) + pkgdesc="Plugin for PHP support" + install -dm755 $pkgdir/usr/bin + install -Dm755 $pkgbase-$pkgver/php_plugin.so $pkgdir/usr/lib/uwsgi/php_plugin.so + ln -s uwsgi $pkgdir/usr/bin/uwsgi_${pkgname#uwsgi-plugin-} +} + +package_uwsgi-plugin-carbon(){ + depends=(uwsgi-plugin-common) + pkgdesc="Plugin for Carbon support" + install -dm755 $pkgdir/usr/bin + install -Dm755 $pkgbase-$pkgver/carbon_plugin.so $pkgdir/usr/lib/uwsgi/carbon_plugin.so + ln -s uwsgi $pkgdir/usr/bin/uwsgi_${pkgname#uwsgi-plugin-} +} + +package_uwsgi-plugin-rrdtool(){ + depends=(uwsgi-plugin-common rrdtool) + pkgdesc="Plugin for Rrdtool support" + install -dm755 $pkgdir/usr/bin + install -Dm755 $pkgbase-$pkgver/rrdtool_plugin.so $pkgdir/usr/lib/uwsgi/rrdtool_plugin.so + ln -s uwsgi $pkgdir/usr/bin/uwsgi_${pkgname#uwsgi-plugin-} +} + +#package_uwsgi-plugin-erlang(){ +# depends=(uwsgi-plugin-common erlang) +# pkgdesc="Plugin for Erlang support" +# install -dm755 $pkgdir/usr/bin +# install -Dm755 $pkgbase-$pkgver/erlang_plugin.so $pkgdir/usr/lib/uwsgi/erlang_plugin.so +# ln -s uwsgi $pkgdir/usr/bin/uwsgi_${pkgname#uwsgi-plugin-} +#} + + +package_uwsgi-plugin-pam(){ + depends=(uwsgi-plugin-common) + pkgdesc="Plugin for Pam support" + install -dm755 $pkgdir/usr/bin + install -Dm755 $pkgbase-$pkgver/pam_plugin.so $pkgdir/usr/lib/uwsgi/pam_plugin.so + ln -s uwsgi $pkgdir/usr/bin/uwsgi_${pkgname#uwsgi-plugin-} +} + +package_uwsgi-plugin-jvm(){ + depends=(uwsgi-plugin-common java-environment=7 classpath) + pkgdesc="Plugin for Jvm support" + install -dm755 $pkgdir/usr/bin + install -Dm644 $pkgbase-$pkgver/plugins/jvm/uwsgi.jar $pkgdir/usr/share/java/uwsgi.jar + install -Dm755 $pkgbase-$pkgver/jvm_plugin.so $pkgdir/usr/lib/uwsgi/jvm_plugin.so +} + +package_uwsgi-plugin-zergpool(){ + depends=(uwsgi-plugin-common) + pkgdesc="Plugin for zergpool support" + install -dm755 $pkgdir/usr/bin + install -Dm755 $pkgbase-$pkgver/zergpool_plugin.so $pkgdir/usr/lib/uwsgi/zergpool_plugin.so + ln -s uwsgi $pkgdir/usr/bin/uwsgi_${pkgname#uwsgi-plugin-} +} + +package_uwsgi-plugin-gevent() { + depends=(uwsgi-plugin-common gevent) + pkgdesc="Plugin for gevent support" + install -dm755 $pkgdir/usr/bin + install -Dm755 $pkgbase-$pkgver/gevent_plugin.so $pkgdir/usr/lib/uwsgi/gevent_plugin.so + ln -s uwsgi $pkgdir/usr/bin/uwsgi_${pkgname#uwsgi-plugin-} +} diff --git a/community/uwsgi/archlinux.ini b/community/uwsgi/archlinux.ini new file mode 100644 index 000000000..4e689849f --- /dev/null +++ b/community/uwsgi/archlinux.ini @@ -0,0 +1,17 @@ +[uwsgi] +inherit = core +bin_name = uwsgi +xml = true +yaml = true +json = true +pcre = true +routing = true +debug = false +sqlite3 = true +ssl = true +xml_implementation = libxml2 +yaml_implementation = auto +malloc_implementation = libc +embedded_plugins = echo, ping, http, corerouter +plugin_dir = /usr/lib/uwsgi +plugins = echo, ping, http, rack, psgi, corerouter, rbthreads, fiber, python, nagios, lua, cache, cgi, rpc, ugreen, carbon, rrdtool, pam, systemd_logger, php, fastrouter, router_uwsgi, router_redirect, router_basicauth, zergpool, router_rewrite, router_http, router_cache, rawrouter, router_static, sslrouter diff --git a/community/uwsgi/emperor.ini b/community/uwsgi/emperor.ini new file mode 100644 index 000000000..27c9120bd --- /dev/null +++ b/community/uwsgi/emperor.ini @@ -0,0 +1,4 @@ +[uwsgi] +emperor = /etc/uwsgi/vassals +uid = http +gid = http diff --git a/community/uwsgi/emperor.uwsgi.service b/community/uwsgi/emperor.uwsgi.service new file mode 100644 index 000000000..f21720e63 --- /dev/null +++ b/community/uwsgi/emperor.uwsgi.service @@ -0,0 +1,14 @@ +[Unit] +Description=uWSGI Emperor +After=syslog.target + +[Service] +ExecStart=/usr/bin/uwsgi --ini /etc/uwsgi/emperor.ini +Restart=always +KillSignal=SIGQUIT +Type=notify +StandardError=syslog +NotifyAccess=main + +[Install] +WantedBy=multi-user.target diff --git a/community/uwsgi/emperor.uwsgi.socket b/community/uwsgi/emperor.uwsgi.socket new file mode 100644 index 000000000..3ef78a25c --- /dev/null +++ b/community/uwsgi/emperor.uwsgi.socket @@ -0,0 +1,9 @@ +[Unit] +Description=Socket for uWSGI Emperor + +[Socket] +# Change this to your uwsgi application port or unix socket location +ListenStream=/run/uwsgi/emperor.sock + +[Install] +WantedBy=sockets.target diff --git a/community/uwsgi/tmpfilesd b/community/uwsgi/tmpfilesd new file mode 100644 index 000000000..e1c5b0423 --- /dev/null +++ b/community/uwsgi/tmpfilesd @@ -0,0 +1 @@ +d /run/uwsgi 0775 root http - - diff --git a/community/uwsgi/uwsgi.install b/community/uwsgi/uwsgi.install new file mode 100644 index 000000000..0002ec42e --- /dev/null +++ b/community/uwsgi/uwsgi.install @@ -0,0 +1,12 @@ +post_install(){ + systemd-tmpfiles --create /usr/lib/tmpfiles.d/uwsgi.conf +} +post_update(){ + echo "To use uwsgi@.socket and uwsgi@.service:" + echo "\tAll you need to do is put the name of your .ini file after the @ sign" + echo "\tYou can use either the .socket or .service, but if you use the .socket" + echo "\tuwsgi@.service won't be started until the first time your http" + echo "\tserver touches the socket. You will also not need to specify the socket in" + echo "\tthe .ini file or in the .service file. Systemd will handle listening to" + echo "\tthe socket for you." +} diff --git a/community/uwsgi/uwsgi@.service b/community/uwsgi/uwsgi@.service new file mode 100644 index 000000000..2d4bfcc4e --- /dev/null +++ b/community/uwsgi/uwsgi@.service @@ -0,0 +1,14 @@ +[Unit] +Description=uWSGI service unit +After=syslog.target + +[Service] +ExecStart=/usr/bin/uwsgi --ini /etc/uwsgi/%I.ini +Restart=always +Type=notify +StandardError=syslog +NotifyAccess=main +KillSignal=SIGQUIT + +[Install] +WantedBy=multi-user.target diff --git a/community/uwsgi/uwsgi@.socket b/community/uwsgi/uwsgi@.socket new file mode 100644 index 000000000..641182e9a --- /dev/null +++ b/community/uwsgi/uwsgi@.socket @@ -0,0 +1,9 @@ +[Unit] +Description=Socket for uWSGI %I + +[Socket] +# Change this to your uwsgi application port or unix socket location +ListenStream=/run/uwsgi/%I.sock + +[Install] +WantedBy=sockets.target diff --git a/community/uwsgi/uwsgi_fix_rpath.patch b/community/uwsgi/uwsgi_fix_rpath.patch new file mode 100644 index 000000000..3de66a771 --- /dev/null +++ b/community/uwsgi/uwsgi_fix_rpath.patch @@ -0,0 +1,66 @@ +diff --git a/plugins/jvm/uwsgiplugin.py b/plugins/jvm/uwsgiplugin.py +index ac7eb3e..0911288 100644 +--- a/plugins/jvm/uwsgiplugin.py ++++ b/plugins/jvm/uwsgiplugin.py +@@ -59,11 +59,6 @@ if "-framework JavaVM" in JVM_LIBPATH: + + GCC_LIST = ['jvm_plugin'] + +-if 'LD_RUN_PATH' in os.environ: +- os.environ['LD_RUN_PATH'] += ':' + JVM_LIBPATH[0][2:] +-else: +- os.environ['LD_RUN_PATH'] = JVM_LIBPATH[0][2:] +- + def post_build(config): + if os.system("javac %s/plugins/jvm/uwsgi.java" % os.getcwd()) != 0: + os._exit(1) +diff --git a/plugins/php/uwsgiplugin.py b/plugins/php/uwsgiplugin.py +index fb9e5bb..fd12c91 100644 +--- a/plugins/php/uwsgiplugin.py ++++ b/plugins/php/uwsgiplugin.py +@@ -22,7 +22,6 @@ CFLAGS = [os.popen(PHPPATH + ' --includes').read().rstrip(), '-Wno-error=sign-co + LDFLAGS = os.popen(PHPPATH + ' --ldflags').read().rstrip().split() + if ld_run_path: + LDFLAGS.append('-L%s' % ld_run_path) +- os.environ['LD_RUN_PATH'] = ld_run_path + + LIBS = [os.popen(PHPPATH + ' --libs').read().rstrip(), '-lphp5'] + +diff --git a/plugins/python/uwsgiplugin.py b/plugins/python/uwsgiplugin.py +index c4f03e1..8d4b2e0 100644 +--- a/plugins/python/uwsgiplugin.py ++++ b/plugins/python/uwsgiplugin.py +@@ -45,10 +45,8 @@ if not 'UWSGI_PYTHON_NOLIB' in os.environ: + else: + try: + LDFLAGS.append("-L%s" % sysconfig.get_config_var('LIBDIR')) +- os.environ['LD_RUN_PATH'] = "%s" % (sysconfig.get_config_var('LIBDIR')) + except: + LDFLAGS.append("-L%s/lib" % sysconfig.PREFIX) +- os.environ['LD_RUN_PATH'] = "%s/lib" % sysconfig.PREFIX + + LIBS.append('-lpython%s' % get_python_version()) + else: +diff --git a/plugins/rack/uwsgiplugin.py b/plugins/rack/uwsgiplugin.py +index 8dee214..2375bc9 100644 +--- a/plugins/rack/uwsgiplugin.py ++++ b/plugins/rack/uwsgiplugin.py +@@ -44,7 +44,6 @@ LIBS = os.popen(RUBYPATH + " -e \"require 'rbconfig';print %s::CONFIG['LIBS']\"" + + if has_shared == 'yes': + LDFLAGS.append('-L' + libpath ) +- os.environ['LD_RUN_PATH'] = libpath + LIBS.append(os.popen(RUBYPATH + " -e \"require 'rbconfig';print '-l' + %s::CONFIG['RUBY_SO_NAME']\"" % rbconfig).read().rstrip()) + else: + GCC_LIST.append("%s/%s" % (libpath, os.popen(RUBYPATH + " -e \"require 'rbconfig';print %s::CONFIG['LIBRUBY_A']\"" % rbconfig).read().rstrip())) +diff --git a/plugins/ruby19/uwsgiplugin.py b/plugins/ruby19/uwsgiplugin.py +index ecea48d..4f35984 100644 +--- a/plugins/ruby19/uwsgiplugin.py ++++ b/plugins/ruby19/uwsgiplugin.py +@@ -40,6 +40,5 @@ LDFLAGS = os.popen(RUBYPATH + " -e \"require 'rbconfig';print %s::CONFIG['LDFLAG + + libpath = os.popen(RUBYPATH + " -e \"require 'rbconfig';print %s::CONFIG['libdir']\"" % rbconfig).read().rstrip() + LDFLAGS.append('-L' + libpath ) +-os.environ['LD_RUN_PATH'] = libpath + LIBS = os.popen(RUBYPATH + " -e \"require 'rbconfig';print '-l' + %s::CONFIG['RUBY_SO_NAME']\"" % rbconfig).read().rstrip().split() + diff --git a/community/uwsgi/uwsgi_ruby20_compatibility.patch b/community/uwsgi/uwsgi_ruby20_compatibility.patch new file mode 100644 index 000000000..b4bf20d38 --- /dev/null +++ b/community/uwsgi/uwsgi_ruby20_compatibility.patch @@ -0,0 +1,42 @@ +diff --git a/plugins/rack/uwsgiplugin.py b/plugins/rack/uwsgiplugin.py +index 2375bc9..b908417 100644 +--- a/plugins/rack/uwsgiplugin.py ++++ b/plugins/rack/uwsgiplugin.py +@@ -10,13 +10,14 @@ except: + rbconfig = 'Config' + + version = os.popen(RUBYPATH + " -e \"print RUBY_VERSION\"").read().rstrip() +-v = version.split('.') + + GCC_LIST = ['rack_plugin', 'rack_api'] + +-if (v[0] == '1' and v[1] == '9') or v[0] >= '2': ++if version >= '1.9': + CFLAGS = os.popen(RUBYPATH + " -e \"require 'rbconfig';print RbConfig::CONFIG['CFLAGS']\"").read().rstrip().split() + CFLAGS.append('-DRUBY19') ++ if version >= '2.0': ++ CFLAGS.append('-DRUBY20') + CFLAGS.append('-Wno-unused-parameter') + rbconfig = 'RbConfig' + else: +diff --git a/plugins/ruby19/uwsgiplugin.py b/plugins/ruby19/uwsgiplugin.py +index 4f35984..156018f 100644 +--- a/plugins/ruby19/uwsgiplugin.py ++++ b/plugins/ruby19/uwsgiplugin.py +@@ -10,13 +10,14 @@ except: + rbconfig = 'Config' + + version = os.popen(RUBYPATH + " -e \"print RUBY_VERSION\"").read().rstrip() +-v = version.split('.') + + GCC_LIST = ['../rack/rack_plugin', '../rack/rack_api'] + +-if v[0] == '1' and v[1] == '9': ++if version >= '1.9': + CFLAGS = os.popen(RUBYPATH + " -e \"require 'rbconfig';print RbConfig::CONFIG['CFLAGS']\"").read().rstrip().split() + CFLAGS.append('-DRUBY19') ++ if version >= '2.0': ++ CFLAGS.append('-DRUBY20') + CFLAGS.append('-Wno-unused-parameter') + rbconfig = 'RbConfig' + else: diff --git a/community/uwsgi/uwsgi_trick_chroot.patch b/community/uwsgi/uwsgi_trick_chroot.patch new file mode 100644 index 000000000..3bfb1ac22 --- /dev/null +++ b/community/uwsgi/uwsgi_trick_chroot.patch @@ -0,0 +1,16 @@ +diff --git a/uwsgiconfig.py b/uwsgiconfig.py +index e447123..4d55f2c 100644 +--- a/uwsgiconfig.py ++++ b/uwsgiconfig.py +@@ -1129,10 +1129,7 @@ def build_plugin(path, uc, cflags, ldflags, libs, name = None): + except: + pass + +- if uc: +- plugin_dest = uc.get('plugin_dir') + '/' + name + '_plugin' +- else: +- plugin_dest = name + '_plugin' ++ plugin_dest = name + '_plugin' + + shared_flag = '-shared' + From 167c8625fd4937f3f0f9f0e7d98ce34cebb348b4 Mon Sep 17 00:00:00 2001 From: Kevin Mihelich Date: Wed, 16 Jul 2014 12:47:34 +0000 Subject: [PATCH 05/20] extra/java7-openjdk to 7.u60_2.5.1-3 --- extra/java7-openjdk/PKGBUILD | 62 ++++++++++++++++++------------------ 1 file changed, 31 insertions(+), 31 deletions(-) diff --git a/extra/java7-openjdk/PKGBUILD b/extra/java7-openjdk/PKGBUILD index 79d5a956e..bb51430b3 100644 --- a/extra/java7-openjdk/PKGBUILD +++ b/extra/java7-openjdk/PKGBUILD @@ -15,7 +15,7 @@ pkgname=('jre7-openjdk-headless' 'jre7-openjdk' 'jdk7-openjdk' 'openjdk7-src') pkgbase=java7-openjdk _java_ver=7 -_icedtea_ver=2.5.0 +_icedtea_ver=2.5.1 # check "${srcdir}/icedtea-${_icedtea_ver}"/Makefile.am _JDK_UPDATE_VERSION=60 @@ -34,15 +34,15 @@ makedepends=('jdk7-openjdk' 'libxp' 'libxslt' 'eclipse-ecj') _icedtea_url=http://icedtea.classpath.org/download -_drops_url=${_icedtea_url}/drops/icedtea7/${_icedtea_ver:0:3} +_drops_url=${_icedtea_url}/drops/icedtea7/${_icedtea_ver} source=(${_icedtea_url}/source/icedtea-${_icedtea_ver}.tar.gz - ${_drops_url}/openjdk.tar.bz2 - ${_drops_url}/corba.tar.bz2 - ${_drops_url}/jaxp.tar.bz2 - ${_drops_url}/jaxws.tar.bz2 - ${_drops_url}/jdk.tar.bz2 - ${_drops_url}/langtools.tar.bz2 - ${_drops_url}/hotspot.tar.bz2 + icedtea_${_icedtea_ver}_openjdk.tar.bz2::${_drops_url}/openjdk.tar.bz2 + icedtea_${_icedtea_ver}_corba.tar.bz2::${_drops_url}/corba.tar.bz2 + icedtea_${_icedtea_ver}_jaxp.tar.bz2::${_drops_url}/jaxp.tar.bz2 + icedtea_${_icedtea_ver}_jaxws.tar.bz2::${_drops_url}/jaxws.tar.bz2 + icedtea_${_icedtea_ver}_jdk.tar.bz2::${_drops_url}/jdk.tar.bz2 + icedtea_${_icedtea_ver}_langtools.tar.bz2::${_drops_url}/langtools.tar.bz2 + icedtea_${_icedtea_ver}_hotspot.tar.bz2::${_drops_url}/hotspot.tar.bz2 fontconfig-paths.diff openjdk7_nonreparenting-wm.diff giflib_5.1.diff @@ -50,14 +50,14 @@ source=(${_icedtea_url}/source/icedtea-${_icedtea_ver}.tar.gz jdk7-openjdk.profile.csh jre7-openjdk.profile jre7-openjdk.profile.csh) -sha256sums=('4e369e35dbf37a5fcc1a837861a74609bf907d3d0b9be7ac98d4f9c99dba7100' - '9a2f9486a48d51f84bdf9b9a52dc34fe90b886aa60ff5447b7f2502479065859' - '1f9f07f31ce8588cd3cd12465f94e142c852c380059a3dab9831d86d3f264253' - '59edb741e1b00243c040b399986960fad9e42f7e5dbe0a1e34798752b080c488' - 'ed3803635ed25f58cd86ad8ca27585f77cc50385da0342112980cc6ba8ff6028' - '508b4e26704749172022c95f44c5aa9feb391e82b54a545fdb79f3a51c269f83' - '0eb9c19cfbecfbc6ef1e37f475d73f16469b9e1d969f69b1af4b10cbc2415659' - '645a43adaec3be3d3297479d134c02e444af9f0be33d35942f0ca863592fea26' +sha256sums=('06483c252099d41e33eade8ceee9231a15ba1e9594f90e2d32943d17c8802acd' + '0496072760c521aa184f3c26c1f515a89ef6f9a88df14fa888c6ee6cdd9379b7' + 'd476f22db32e028cc30dda47fec81e5ba0e113f029c3ed7a30edf8fc1404819b' + 'd13778e5bbf6cda22a40b9d5186d2a7d1a3f34d998b1ac4d65fe3abd12fffa25' + '29c39856af1153620023c3fa0313be2f23dc02208db1a8429ca80d1eebfce06f' + '76194344fca5db4c79e4a2af28efd9fbb2e38e879b5afc59042874519bb5f7fc' + '374174ea3b7eb2bb81d9dfae4749d7b3c9037d07004aa59aaa5e8ed5fba922d3' + '78d57f7c207d8f56bba2ee6aec232a836fd51830d352cfa4804d8077d9a7b32b' '9ad943ceb3dbcdf45d72974fc3667886a7ed65c69ab9abc17be5412827551a7f' '56b919ababb13bd6afdcdaceb112b529b6e82539255f2dae9a7e5eb91645164b' '77fba3032edf6cce549cd4e174d9296684b20f4589dc59179fcc8cba7426a4e9' @@ -66,13 +66,13 @@ sha256sums=('4e369e35dbf37a5fcc1a837861a74609bf907d3d0b9be7ac98d4f9c99dba7100' 'b7c045b08ad55a9f79390c104fa846d0e7dbb49fccffb2fab2a3824b6b19c9c8' '89d99d8ac269ca66e2e279aff652d5aac938a35faec93cd8cff8f048052bd3ce') -noextract=(openjdk.tar.gz - corba.tar.gz - jaxp.tar.gz - jaxws.tar.gz - jdk.tar.gz - langtools.tar.gz - hotspot.tar.gz) +noextract=(icedtea_${_icedtea_ver}_openjdk.tar.bz2 + icedtea_${_icedtea_ver}_corba.tar.bz2 + icedtea_${_icedtea_ver}_jaxp.tar.bz2 + icedtea_${_icedtea_ver}_jaxws.tar.bz2 + icedtea_${_icedtea_ver}_jdk.tar.bz2 + icedtea_${_icedtea_ver}_lanbtools.tar.bz2 + icedtea_${_icedtea_ver}_hotspot.tar.bz2) [ "$CARCH" = "x86_64" ] && _JARCH=amd64 [ "$CARCH" = "i686" ] && _JARCH=i386 @@ -113,13 +113,13 @@ build() { --disable-downloading --disable-Werror \ --with-pkgversion="Arch Linux ARM build ${pkgver}-${pkgrel}-${CARCH}" \ --with-jdk-home=${JAVA_HOME} \ - --with-openjdk-src-zip="${srcdir}/openjdk.tar.bz2" \ - --with-hotspot-src-zip="${srcdir}/hotspot.tar.bz2" \ - --with-corba-src-zip="${srcdir}/corba.tar.bz2" \ - --with-jaxp-src-zip="${srcdir}/jaxp.tar.bz2" \ - --with-jaxws-src-zip="${srcdir}/jaxws.tar.bz2" \ - --with-jdk-src-zip="${srcdir}/jdk.tar.bz2" \ - --with-langtools-src-zip="${srcdir}/langtools.tar.bz2" \ + --with-openjdk-src-zip="${srcdir}/icedtea_${_icedtea_ver}_openjdk.tar.bz2" \ + --with-hotspot-src-zip="${srcdir}/icedtea_${_icedtea_ver}_hotspot.tar.bz2" \ + --with-corba-src-zip="${srcdir}/icedtea_${_icedtea_ver}_corba.tar.bz2" \ + --with-jaxp-src-zip="${srcdir}/icedtea_${_icedtea_ver}_jaxp.tar.bz2" \ + --with-jaxws-src-zip="${srcdir}/icedtea_${_icedtea_ver}_jaxws.tar.bz2" \ + --with-jdk-src-zip="${srcdir}/icedtea_${_icedtea_ver}_jdk.tar.bz2" \ + --with-langtools-src-zip="${srcdir}/icedtea_${_icedtea_ver}_langtools.tar.bz2" \ --enable-nss \ --with-rhino \ --with-abs-install-dir=${_jvmdir} \ From 272da5bb743356606e6e3c1df77b285810ae5d04 Mon Sep 17 00:00:00 2001 From: David Beauchamp Date: Wed, 16 Jul 2014 15:18:59 -0400 Subject: [PATCH 06/20] community/bird to 1.4.4-1 --- community/bird/PKGBUILD | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/community/bird/PKGBUILD b/community/bird/PKGBUILD index 76c473857..2bba6ce9e 100644 --- a/community/bird/PKGBUILD +++ b/community/bird/PKGBUILD @@ -6,7 +6,7 @@ pkgbase=bird pkgname=('bird' 'bird6') -pkgver=1.4.3 +pkgver=1.4.4 pkgrel=1 arch=('i686' 'x86_64') url='http://bird.network.cz/' @@ -15,7 +15,7 @@ depends=('readline' 'ncurses') source=("ftp://bird.network.cz/pub/bird/${pkgname}-${pkgver}.tar.gz" 'bird.service' 'bird6.service') -md5sums=('eb7e00b9c1d102ddfcbc19d9cb168511' +md5sums=('4ec3a9165928a541326ec9de316da974' '69221e063a3f07dcad519d5eeacaae75' '5b172bd052b523efd95ee018e891e181') From 376087bd4ab16bf754d18fff870e315e86cf8232 Mon Sep 17 00:00:00 2001 From: Kevin Mihelich Date: Thu, 17 Jul 2014 00:21:07 +0000 Subject: [PATCH 07/20] extra/java7-openjdk to 7.u65_2.5.1-3 --- extra/java7-openjdk/PKGBUILD | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/extra/java7-openjdk/PKGBUILD b/extra/java7-openjdk/PKGBUILD index bb51430b3..0be68ae90 100644 --- a/extra/java7-openjdk/PKGBUILD +++ b/extra/java7-openjdk/PKGBUILD @@ -18,7 +18,7 @@ _java_ver=7 _icedtea_ver=2.5.1 # check "${srcdir}/icedtea-${_icedtea_ver}"/Makefile.am -_JDK_UPDATE_VERSION=60 +_JDK_UPDATE_VERSION=65 _bootstrap=0 # 0/1 for quick build or full bootstrap From 6dba1def7169358e5522ec7ac09b30a14e70412d Mon Sep 17 00:00:00 2001 From: Kevin Mihelich Date: Thu, 17 Jul 2014 01:15:51 +0000 Subject: [PATCH 08/20] community/gradm to 3.0.201407162022-1 --- community/gradm/PKGBUILD | 6 +++--- community/gradm/policy | 2 ++ 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/community/gradm/PKGBUILD b/community/gradm/PKGBUILD index 15301ae9c..615c0184a 100644 --- a/community/gradm/PKGBUILD +++ b/community/gradm/PKGBUILD @@ -10,7 +10,7 @@ pkgname=gradm _version=3.0 -_timestamp=201405281853 +_timestamp=201407162022 pkgver=3.0.$_timestamp pkgrel=1 pkgdesc="Administration utility for grsecurity's Role Based Access Control (RBAC)" @@ -22,10 +22,10 @@ source=(https://grsecurity.net/stable/$pkgname-$_version-$_timestamp.tar.gz https://grsecurity.net/stable/$pkgname-$_version-$_timestamp.tar.gz.sig learn_config policy) -sha256sums=('4ee8a4e3a658f14b58c55fb8c5a9d3234e0ec87cf90a886499918553a15c557a' +sha256sums=('300d119f584644a4698cf6c9125fa0cd17a7ff00b4f7885fe782828b93881e1b' 'SKIP' '704ea6ba7f748761735cbe1cf52ef04f53eab1a1e9ea1bdcb6abaaf4a641e44d' - 'c2fb8e696969530c4dc707c59cdc608df6c21d6226979dfeadef92c51deabc5e') + '0d069e28845f789d0e9da82fc6dffa368ab71b2ca4ab37e0d3e3c6951e82d98a') prepare() { cd $pkgname diff --git a/community/gradm/policy b/community/gradm/policy index 395eec321..9d97a2a99 100644 --- a/community/gradm/policy +++ b/community/gradm/policy @@ -385,6 +385,7 @@ subject /usr/bin/sshd dpo /root /proc r /proc/*/oom_adj rw + /proc/*/oom_score_adj rw /proc/kcore h /proc/sys h /proc/sys/kernel/ngroups_max r @@ -412,6 +413,7 @@ subject /usr/bin/sshd dpo +CAP_SYS_RESOURCE +CAP_SYS_TTY_CONFIG +CAP_AUDIT_WRITE + +CAP_KILL # to access user keys +CAP_DAC_OVERRIDE From 01b6f83cdc180568e7553ca7129b866488d0557f Mon Sep 17 00:00:00 2001 From: David Beauchamp Date: Thu, 17 Jul 2014 10:58:23 -0400 Subject: [PATCH 09/20] extra/chromium to 36.0.1985.125-1 --- extra/chromium/PKGBUILD | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/extra/chromium/PKGBUILD b/extra/chromium/PKGBUILD index ec3538753..4b83e8734 100644 --- a/extra/chromium/PKGBUILD +++ b/extra/chromium/PKGBUILD @@ -21,14 +21,14 @@ buildarch=4 pkgname=chromium -pkgver=35.0.1916.153 +pkgver=36.0.1985.125 pkgrel=1 pkgdesc="The open-source project behind Google Chrome, an attempt at creating a safer, faster, and more stable browser" arch=('armv6h' 'armv7h') url="http://www.chromium.org/" license=('BSD') depends=('gtk2' 'nss' 'alsa-lib' 'xdg-utils' 'bzip2' 'libevent' 'libxss' - 'libgcrypt' 'ttf-font' 'systemd' 'dbus' 'flac' 'snappy' + 'libexif' 'libgcrypt' 'ttf-font' 'systemd' 'dbus' 'flac' 'snappy' 'speech-dispatcher' 'pciutils' 'libpulse' 'harfbuzz' 'desktop-file-utils' 'hicolor-icon-theme') makedepends=('python2' 'perl' 'gperf' 'yasm' 'mesa' 'libgnome-keyring' @@ -49,7 +49,7 @@ source=(https://commondatastorage.googleapis.com/chromium-browser-official/$pkgn chromium-arm-r0.patch skia.patch v6-ffmpeg.patch) -sha256sums=('280ceb4307ba334918aacd1c5672e6ce6538bf229f90415245ede5b569e5e70e' +sha256sums=('1782d0a5397e94313dee9e456de38bdfccf575c4e565f064a6ed7f9c509d5023' '09bfac44104f4ccda4c228053f689c947b3e97da9a4ab6fa34ce061ee83d0322' '478340d5760a9bd6c549e19b1b5d1c5b4933ebf5f8cfb2b3e2d70d07443fe232' '4999fded897af692f4974f0a3e3bbb215193519918a1fa9b31ed51e74a2dccb9' @@ -127,7 +127,8 @@ fi -Dlinux_link_libspeechd=1 -Dlinux_link_pulseaudio=1 -Dlinux_strip_binary=1 - -Dlinux_use_gold_binary=0 + -Dlinux_use_bundled_binutils=0 + -Dlinux_use_bundled_gold=0 -Dlinux_use_gold_flags=0 -Drelease_extra_cflags="$CFLAGS -DUSE_EABI_HARDFLOAT" -Dlibspeechd_h_prefix=speech-dispatcher/ @@ -147,6 +148,7 @@ fi -Duse_system_xdg_utils=1 -Duse_system_yasm=1 -Duse_system_zlib=0 + -Dusb_ids_path=/usr/share/hwdata/usb.ids -Duse_gconf=0 -Ddisable_fatal_linker_warnings=1 -Ddisable_glibc=1 From 89063b3272be7fe71db67fba81371984f0e1c556 Mon Sep 17 00:00:00 2001 From: David Beauchamp Date: Thu, 17 Jul 2014 10:59:46 -0400 Subject: [PATCH 10/20] fix alignment --- extra/chromium/PKGBUILD | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/extra/chromium/PKGBUILD b/extra/chromium/PKGBUILD index 4b83e8734..9c376ed02 100644 --- a/extra/chromium/PKGBUILD +++ b/extra/chromium/PKGBUILD @@ -148,7 +148,7 @@ fi -Duse_system_xdg_utils=1 -Duse_system_yasm=1 -Duse_system_zlib=0 - -Dusb_ids_path=/usr/share/hwdata/usb.ids + -Dusb_ids_path=/usr/share/hwdata/usb.ids -Duse_gconf=0 -Ddisable_fatal_linker_warnings=1 -Ddisable_glibc=1 From 19e30aea3319f14a8c0b5088ae69f4f88652cf52 Mon Sep 17 00:00:00 2001 From: Kevin Mihelich Date: Fri, 18 Jul 2014 01:02:26 +0000 Subject: [PATCH 11/20] core/systemd: better bandaid for now --- core/systemd/PKGBUILD | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/core/systemd/PKGBUILD b/core/systemd/PKGBUILD index da25a9bba..d70bcda4c 100644 --- a/core/systemd/PKGBUILD +++ b/core/systemd/PKGBUILD @@ -2,7 +2,7 @@ # Maintainer: Tom Gundersen # ALARM: Kevin Mihelich -# - !distcc +# - disable optimization, currently breaks timesyncd over distcc pkgbase=systemd pkgname=('systemd' 'libsystemd' 'systemd-sysvcompat') @@ -14,7 +14,7 @@ makedepends=('acl' 'cryptsetup' 'docbook-xsl' 'gobject-introspection' 'gperf' 'gtk-doc' 'intltool' 'kmod' 'libcap' 'libgcrypt' 'libmicrohttpd' 'libxslt' 'util-linux' 'linux-api-headers' 'pam' 'python' 'python-lxml' 'quota-tools' 'shadow' 'xz') -options=('strip' 'debug' '!distcc') +options=('strip' 'debug') source=("http://www.freedesktop.org/software/$pkgname/$pkgname-$pkgver.tar.xz" 'initcpio-hook-udev' 'initcpio-install-systemd' @@ -35,6 +35,9 @@ prepare() { build() { cd "$pkgname-$pkgver" + CFLAGS=`echo $CFLAGS | sed -e 's/-O2/-O0/'` && CXXFLAGS="$CFLAGS" + unset CPPFLAGS + ./configure \ --libexecdir=/usr/lib \ --localstatedir=/var \ From fb880724fa14a276cbf6f29102a61f92831a447e Mon Sep 17 00:00:00 2001 From: Kevin Mihelich Date: Fri, 18 Jul 2014 01:15:33 +0000 Subject: [PATCH 12/20] core/linux-mmp to 3.10.49-1 --- core/linux-mmp/PKGBUILD | 11 +++-------- core/linux-mmp/config | 4 ++-- 2 files changed, 5 insertions(+), 10 deletions(-) diff --git a/core/linux-mmp/PKGBUILD b/core/linux-mmp/PKGBUILD index 67262349b..36233ecc4 100644 --- a/core/linux-mmp/PKGBUILD +++ b/core/linux-mmp/PKGBUILD @@ -7,7 +7,7 @@ pkgbase=linux-mmp _srcname=linux-3.10 _kernelname=${pkgbase#linux} _desc="Marvell PXA168/MMP platforms" -pkgver=3.10.48 +pkgver=3.10.49 pkgrel=1 arch=('armv7h') url="https://github.com/Marvell-Semi/PXA168_kernel/tree/gplugd-dev" @@ -20,10 +20,10 @@ source=("http://www.kernel.org/pub/linux/kernel/v3.x/${_srcname}.tar.xz" 'http://archlinuxarm.org/builder/src/gplugd.patch.xz' 'config') md5sums=('4f25cd5bec5f8d5a7d935b3f2ccb8481' - '76fee501b3f76f1b4034730c8421e9c3' + '316a0e7eadd96fc036160301f07e3442' 'SKIP' 'e5d2d65404b0ad9e6596b2e22365dfdc' - 'b73e349e34c90b42ce7c0f8f415110a6') + '401cb02470c8be7acfa542a10b2e59ce') prepare() { cd "${srcdir}/${_srcname}" @@ -280,8 +280,3 @@ for _p in ${pkgname[@]}; do _package${_p#${pkgbase}} }" done -md5sums=('4f25cd5bec5f8d5a7d935b3f2ccb8481' - '44348efc910022b26d4d75b7d8390ca8' - 'SKIP' - 'e5d2d65404b0ad9e6596b2e22365dfdc' - 'b73e349e34c90b42ce7c0f8f415110a6') diff --git a/core/linux-mmp/config b/core/linux-mmp/config index d7d1e87a9..6f3b48a5b 100644 --- a/core/linux-mmp/config +++ b/core/linux-mmp/config @@ -1,6 +1,6 @@ # # Automatically generated file; DO NOT EDIT. -# Linux/arm 3.10.45-1 Kernel Configuration +# Linux/arm 3.10.48-1 Kernel Configuration # CONFIG_ARM=y CONFIG_SYS_SUPPORTS_APM_EMULATION=y @@ -2521,7 +2521,7 @@ CONFIG_USB_ANNOUNCE_NEW_DEVICES=y CONFIG_USB_DEFAULT_PERSIST=y CONFIG_USB_DYNAMIC_MINORS=y CONFIG_USB_OTG=y -CONFIG_USB_OTG_WHITELIST=y +# CONFIG_USB_OTG_WHITELIST is not set # CONFIG_USB_OTG_BLACKLIST_HUB is not set CONFIG_USB_MON=y # CONFIG_USB_WUSB_CBAF is not set From 7d95459b98f0c3a95d6e3ca046b3048b22b4ac79 Mon Sep 17 00:00:00 2001 From: Kevin Mihelich Date: Fri, 18 Jul 2014 01:19:17 +0000 Subject: [PATCH 13/20] core/linux-armv5 to 3.15.6-1 --- core/linux-armv5/PKGBUILD | 18 ++---------------- 1 file changed, 2 insertions(+), 16 deletions(-) diff --git a/core/linux-armv5/PKGBUILD b/core/linux-armv5/PKGBUILD index 839ac2bba..988657c74 100644 --- a/core/linux-armv5/PKGBUILD +++ b/core/linux-armv5/PKGBUILD @@ -7,7 +7,7 @@ pkgbase=linux-armv5 _srcname=linux-3.15 _kernelname=${pkgbase#linux} _desc="ARMv5 based platforms" -pkgver=3.15.5 +pkgver=3.15.6 pkgrel=1 arch=('arm') url="http://www.kernel.org/" @@ -30,7 +30,7 @@ source=("http://www.kernel.org/pub/linux/kernel/v3.x/${_srcname}.tar.xz" 'archlinuxarm.patch' 'config') md5sums=('97ca1625bb40368dc41b9a7971549071' - 'c0ecbe6a65913273c3338be7218dcf58' + '25e4c27b4aff5e14dc4b3dc0029fd05d' 'SKIP' '537d3b1821b5685036138621308148d2' 'eb663234804d647a64cea20b949f3afd' @@ -284,17 +284,3 @@ for _p in ${pkgname[@]}; do _package${_p#${pkgbase}} }" done -md5sums=('97ca1625bb40368dc41b9a7971549071' - 'c604bc7db1d2a365a114c43e7ac504bd' - 'SKIP' - '537d3b1821b5685036138621308148d2' - 'eb663234804d647a64cea20b949f3afd' - '5fdfb6fe8c30934f38fb6315aa9d9912' - 'bc9c1dbb9b5df11621ef750a919c546c' - 'fb0f2d798b826e9b935b77dfe9422eff' - '02c58ebac58a3eeeaf709e1d8b98ca5f' - '14570ba571b001b1f42070e2066232d7' - 'ad4eb847c301bc3d5a66de3ee2369da8' - 'ef607cd7a01d7c287b107f677f6a7808' - 'e319a8e1a596a39a8951fc6454664b15' - '1023171a1d8c682ea13c3b18a66d4878') From d57d22661d11bd3f3a0f00f89ae1de82e171e076 Mon Sep 17 00:00:00 2001 From: Peter Chinetti Date: Thu, 17 Jul 2014 23:31:35 -0400 Subject: [PATCH 14/20] Trimming unneeded lines --- alarm/dkms-mt7601/PKGBUILD | 4 ---- 1 file changed, 4 deletions(-) diff --git a/alarm/dkms-mt7601/PKGBUILD b/alarm/dkms-mt7601/PKGBUILD index 00a357985..a6fe61bef 100644 --- a/alarm/dkms-mt7601/PKGBUILD +++ b/alarm/dkms-mt7601/PKGBUILD @@ -21,10 +21,6 @@ package() { # Change src dir name mv ${srcdir}/DPO_MT7601U_LinuxSTA_3.0.0.4_20130913 ${srcdir}/$_pkgname-$pkgver - # Copy Makefile to subdir (because symbolic link is not copied for some reason) - #rm ${srcdir}/$_pkgname-$pkgver/UTIL/Makefile - #cp ${srcdir}/$_pkgname-$pkgver/Makefile.inc ${srcdir}/$_pkgname-$pkgver/UTIL/Makefile - installDir="$pkgdir/usr/src/$_pkgname-$pkgver" install -dm755 "$installDir" From c3eb5b99de7b461cd89d310c7027dc1cd92da3ac Mon Sep 17 00:00:00 2001 From: Peter Chinetti Date: Thu, 17 Jul 2014 23:38:58 -0400 Subject: [PATCH 15/20] removing CMD=$(which cmd) style things --- alarm/dkms-mt7601/dkms-mt7601.install | 31 ++++++++++----------------- 1 file changed, 11 insertions(+), 20 deletions(-) diff --git a/alarm/dkms-mt7601/dkms-mt7601.install b/alarm/dkms-mt7601/dkms-mt7601.install index 968a7fcc6..e49aec205 100644 --- a/alarm/dkms-mt7601/dkms-mt7601.install +++ b/alarm/dkms-mt7601/dkms-mt7601.install @@ -2,29 +2,23 @@ post_install (){ MODULE="mt7601" VERSION="v3.0.0.4" - DKMS=$(which dkms) - MODPROBE=$(which modprobe) - CP=$(which cp) - MKDIR=$(which mkdir) - DEPMOD=$(which depmod) # TODO: replace /usr/src with a variable. SRCDIR=/usr/src/$MODULE-$VERSION - $DKMS add -m $MODULE -v $VERSION - $DKMS build -m $MODULE -v $VERSION - $DKMS install -m $MODULE -v $VERSION + dkms add -m $MODULE -v $VERSION + dkms build -m $MODULE -v $VERSION + dkms install -m $MODULE -v $VERSION # This file is read form a hardcoded location. # Can we put this in a standard location? PARAMSDIR="/etc/Wireless/RT2870STA" - $MKDIR -p $PARAMSDIR - $CP $SRCDIR/RT2870STA.dat $PARAMSDIR + mkdir -p $PARAMSDIR + cp $SRCDIR/RT2870STA.dat $PARAMSDIR - $DEPMOD -a $(uname -r) + depmod -a $(uname -r) - #$MODPROBE -a mt7601Usta mtutil7601Usta mtnet7601Usta - $MODPROBE -a mt7601Usta + modprobe -a mt7601Usta } pre_upgrade(){ @@ -41,18 +35,15 @@ pre_remove (){ /usr/bin/rmmod mt7601 &> /dev/null fi - DKMS=$(which dkms) - _line=$($DKMS status -m mt7601) + _line=$(dkms status -m mt7601) if echo "$_line" | grep -E 'added|built|installed'; then version=$(echo "$_line" | sed 's/mt7601,\([^,]*\)[,:].*/\1/;t;d') - $DKMS remove -m mt7601 -v $version --all + dkms remove -m mt7601 -v $version --all fi - RM=$(which rm) - RMDIR=$(which rmdir) - $RM -rf /etc/Wireless/RT2870STA - $RMDIR --ignore-fail-on-non-empty /etc/Wireless + rm -rf /etc/Wireless/RT2870STA + rmdir --ignore-fail-on-non-empty /etc/Wireless } post_remove () { From 63c9fd14a6b02a9f17f017498bbab8000dfcb1cb Mon Sep 17 00:00:00 2001 From: calzon65 Date: Thu, 17 Jul 2014 22:13:10 -0700 Subject: [PATCH 16/20] Update PKGBUILD --- aur/asterisk/PKGBUILD | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/aur/asterisk/PKGBUILD b/aur/asterisk/PKGBUILD index 6753fd58a..f19170b07 100644 --- a/aur/asterisk/PKGBUILD +++ b/aur/asterisk/PKGBUILD @@ -3,8 +3,8 @@ # Contributor: Maik Broemme pkgname=asterisk -pkgver=12.3.2 -pkgrel=2 +pkgver=12.4.0 +pkgrel=1 pkgdesc="A complete PBX solution" arch=('i686' 'x86_64') backup=('etc/asterisk/acl.conf' @@ -118,15 +118,15 @@ backup=('etc/asterisk/acl.conf' 'etc/asterisk/xmpp.conf') url="http://www.asterisk.org" license=('GPL') -depends=('alsa-lib' 'speex' 'popt' 'libvorbis' 'curl' 'libxml2' 'jansson' 'libxslt') -makedepends=('sqlite3' 'gsm' 'pjproject') +depends=('alsa-lib' 'speex' 'popt' 'libvorbis' 'curl' 'libxml2' 'jansson' 'libxslt' 'pjproject') +makedepends=('sqlite3' 'gsm') optdepends=('lua51' 'libsrtp' 'postgresql' 'unixodbc' 'libpri' 'libss7' 'openr2' 'iksemel' 'radiusclient-ng' 'dahdi') source=(http://downloads.asterisk.org/pub/telephony/asterisk/releases/asterisk-${pkgver}.tar.gz \ ${pkgname}.service \ ${pkgname}.logrotated \ ${pkgname}.tmpfile) install=${pkgname}.install -sha256sums=('0724ab25ba6e9334d69b7dd3866c046cb09b8c08a7b42ce4281a5f00393d5576' +sha256sums=('6c72d0060d1ce7a7d09f510d91d588f269aac0032de6a4464d5449b0d5600a72' '74e0b278d553499f0c648a6e3d55c0dbb11b0c6dc93a85b020a21eafadb83783' 'caa24cfec5c6b4f8cea385269e39557362acad7e2a552994c3bc24080e3bdd4e' '673c0c55bce8068c297f9cdd389402c2d5d5a25e2cf84732cb071198bd6fa78a') @@ -153,3 +153,4 @@ package(){ install -D -m 644 ${srcdir}/asterisk.service ${pkgdir}/usr/lib/systemd/system/asterisk.service install -D -m 644 ${srcdir}/asterisk.tmpfile ${pkgdir}/usr/lib/tmpfiles.d/asterisk.conf } + From 3bb2c68bd8805efd016ceae534fb89fbd0a8f354 Mon Sep 17 00:00:00 2001 From: Kevin Mihelich Date: Fri, 18 Jul 2014 12:19:49 +0000 Subject: [PATCH 17/20] extra/kdebindings-python to 4.13.3-1 --- extra/kdebindings-python/PKGBUILD | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/extra/kdebindings-python/PKGBUILD b/extra/kdebindings-python/PKGBUILD index a4dc858b0..408add6bb 100644 --- a/extra/kdebindings-python/PKGBUILD +++ b/extra/kdebindings-python/PKGBUILD @@ -8,7 +8,7 @@ pkgbase=kdebindings-python pkgname=('kdebindings-python' 'kdebindings-python2' 'kdebindings-python-common') -pkgver=4.13.2 +pkgver=4.13.3 pkgrel=1 url='https://projects.kde.org/projects/kde/kdebindings/pykde4' arch=('i686' 'x86_64') @@ -19,7 +19,7 @@ makedepends=('cmake' 'automoc4' 'boost' 'kdepim-runtime' 'python2-pyqt4' source=("http://download.kde.org/stable/${pkgver}/src/pykde4-${pkgver}.tar.xz" "sip-4.15.5.patch" "pykde4-4.10.0-arm-sip.patch") -sha1sums=('d62f3d5f31c061a4e6454ee0aaf5ad329f8e8661' +sha1sums=('63616a49d2fec3828741ae6e0db65eec04f9925a' 'bffd9f642ad10fb3a49c42e4b457b2b90665d641' 'f0798d25767768006d5f674049e51b2e39f9f4eb') From 6121548d88154e44682a82b9b82c1914fc49d429 Mon Sep 17 00:00:00 2001 From: Kevin Mihelich Date: Fri, 18 Jul 2014 12:20:55 +0000 Subject: [PATCH 18/20] extra/kdelibs to 4.13.3-1 --- extra/kdelibs/PKGBUILD | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/extra/kdelibs/PKGBUILD b/extra/kdelibs/PKGBUILD index 6a9acc2b2..fb7c0d822 100644 --- a/extra/kdelibs/PKGBUILD +++ b/extra/kdelibs/PKGBUILD @@ -6,8 +6,8 @@ # - patch to fix unclickable plasmoid buttons on ARM pkgname=kdelibs -pkgver=4.13.2 -pkgrel=3 +pkgver=4.13.3 +pkgrel=1 pkgdesc="KDE Core Libraries" arch=('i686' 'x86_64') url='https://projects.kde.org/projects/kde/kdelibs' @@ -22,7 +22,7 @@ source=("http://download.kde.org/stable/${pkgver}/src/${pkgname}-${pkgver}.tar.x 'kde-applications-menu.patch' 'archlinux-menu.patch' 'qt4.patch' 'arm-coronaoffscreen-input-fixes.diff' 'CVE-2014-3494.patch') -sha1sums=('1008effc37f316bf6e3a4d527c4257937fc572ec' +sha1sums=('9c0e963fa2db119ac37e15f31c05d18d3043a58e' '86ee8c8660f19de8141ac99cd6943964d97a1ed7' '63a850ab4196b9d06934f2b4a13acd9f7739bc67' 'ed1f57ee661e5c7440efcaba7e51d2554709701c' From a619de8b076e4f0171ca181c3b03b7972264d75d Mon Sep 17 00:00:00 2001 From: Kevin Mihelich Date: Fri, 18 Jul 2014 12:21:50 +0000 Subject: [PATCH 19/20] extra/kdeedu-analitza to 4.13.3-1 --- extra/kdeedu-analitza/PKGBUILD | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/extra/kdeedu-analitza/PKGBUILD b/extra/kdeedu-analitza/PKGBUILD index a48e4c81f..c76b6892a 100644 --- a/extra/kdeedu-analitza/PKGBUILD +++ b/extra/kdeedu-analitza/PKGBUILD @@ -5,7 +5,7 @@ # - patch and cmake define to disable opengl for ARM pkgname=kdeedu-analitza -pkgver=4.13.2 +pkgver=4.13.3 pkgrel=1 pkgdesc="A library to add mathematical features to your program" url="https://projects.kde.org/projects/kde/kdeedu/analitza" @@ -16,7 +16,7 @@ depends=('kdebase-runtime') makedepends=('cmake' 'automoc4' 'glu') source=("http://download.kde.org/stable/${pkgver}/src/analitza-${pkgver}.tar.xz" 'analitza-4.10.1-opengl_optional.patch') -sha1sums=('d6af0f7c3289ae7cdfab33bbcc451d69ef8cf753' +sha1sums=('2fe6612bb74c7725871babe6720cadd8d35ef36e' '1b3a522acf87ed3dee51af4290a841645bf98a32') prepare() { From a099a6ac9e1bef42a09e1e1e1d6d49db925ab61d Mon Sep 17 00:00:00 2001 From: Kevin Mihelich Date: Fri, 18 Jul 2014 12:22:36 +0000 Subject: [PATCH 20/20] extra/kdeedu-kalgebra to 4.13.3-1 --- extra/kdeedu-kalgebra/PKGBUILD | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/extra/kdeedu-kalgebra/PKGBUILD b/extra/kdeedu-kalgebra/PKGBUILD index 2b68331d6..31a7e0882 100644 --- a/extra/kdeedu-kalgebra/PKGBUILD +++ b/extra/kdeedu-kalgebra/PKGBUILD @@ -5,7 +5,7 @@ # - patch and cmake define to disable opengl for ARM pkgname=kdeedu-kalgebra -pkgver=4.13.2 +pkgver=4.13.3 pkgrel=1 pkgdesc="Graph Calculator" url="http://kde.org/applications/education/kalgebra/" @@ -17,7 +17,7 @@ makedepends=('cmake' 'automoc4' 'glu') install=${pkgname}.install source=("http://download.kde.org/stable/${pkgver}/src/kalgebra-${pkgver}.tar.xz" "kalgebra-opengl_optional.patch") -sha1sums=('906eaacb21cfc760fcefd82ca21a21d72ebdb971' +sha1sums=('a1cc526be3563fac32b0e854944ba9041898caa7' 'ae1b75e5192f8519517134447b481421112a6dd7') prepare() {