From 4319f36e44d4e7c70bf010c3286bb1739c59d4de Mon Sep 17 00:00:00 2001 From: root Date: Sun, 24 Jun 2012 00:04:12 +0000 Subject: Sun Jun 24 00:04:11 UTC 2012 --- .../systemd/0001-Reinstate-TIMEOUT-handling.patch | 124 ++++++++++++ ...dev-systemd-udev-settle.service-fix-After.patch | 26 +++ ...onsole-setup-enable-utf-8-mode-explicitly.patch | 79 ++++++++ testing/systemd/PKGBUILD | 214 +++++++++++++++++++++ testing/systemd/initcpio-hook-udev | 20 ++ testing/systemd/initcpio-install-timestamp | 14 ++ testing/systemd/initcpio-install-udev | 28 +++ testing/systemd/locale.sh | 60 ++++++ testing/systemd/systemd-tools.install | 29 +++ testing/systemd/systemd.install | 41 ++++ testing/xz/PKGBUILD | 39 ++++ 11 files changed, 674 insertions(+) create mode 100644 testing/systemd/0001-Reinstate-TIMEOUT-handling.patch create mode 100644 testing/systemd/0001-udev-systemd-udev-settle.service-fix-After.patch create mode 100644 testing/systemd/0001-vconsole-setup-enable-utf-8-mode-explicitly.patch create mode 100644 testing/systemd/PKGBUILD create mode 100644 testing/systemd/initcpio-hook-udev create mode 100644 testing/systemd/initcpio-install-timestamp create mode 100644 testing/systemd/initcpio-install-udev create mode 100644 testing/systemd/locale.sh create mode 100644 testing/systemd/systemd-tools.install create mode 100644 testing/systemd/systemd.install create mode 100644 testing/xz/PKGBUILD (limited to 'testing') diff --git a/testing/systemd/0001-Reinstate-TIMEOUT-handling.patch b/testing/systemd/0001-Reinstate-TIMEOUT-handling.patch new file mode 100644 index 000000000..766dcb87f --- /dev/null +++ b/testing/systemd/0001-Reinstate-TIMEOUT-handling.patch @@ -0,0 +1,124 @@ +From 2127f99fb43d2ef950e95329ce40bdd5da8b015c Mon Sep 17 00:00:00 2001 +From: Dave Reisner +Date: Fri, 25 May 2012 19:43:24 -0400 +Subject: [PATCH] Reinstate TIMEOUT= handling + +This is mostly to deal with ipw2?00 drivers which have yet to be fixed +in the kernel. +--- + src/libudev/libudev-device.c | 19 +++++++++++++++++++ + src/libudev/libudev-private.h | 1 + + src/udev/udevd.c | 13 ++++++++++--- + 3 files changed, 30 insertions(+), 3 deletions(-) + +diff --git a/src/libudev/libudev-device.c b/src/libudev/libudev-device.c +index a8277d1..5966189 100644 +--- a/src/libudev/libudev-device.c ++++ b/src/libudev/libudev-device.c +@@ -68,6 +68,7 @@ struct udev_device { + struct udev_list tags_list; + unsigned long long int seqnum; + unsigned long long int usec_initialized; ++ int timeout; + int devlink_priority; + int refcount; + dev_t devnum; +@@ -89,6 +90,21 @@ struct udev_device { + bool db_persist; + }; + ++int udev_device_get_timeout(struct udev_device *udev_device) ++{ ++ return udev_device->timeout; ++} ++ ++static int udev_device_set_timeout(struct udev_device *udev_device, int timeout) ++{ ++ char num[32]; ++ ++ udev_device->timeout = timeout; ++ snprintf(num, sizeof(num), "%u", timeout); ++ udev_device_add_property(udev_device, "TIMEOUT", num); ++ return 0; ++} ++ + /** + * udev_device_get_seqnum: + * @udev_device: udev device +@@ -362,6 +378,8 @@ void udev_device_add_property_from_string_parse(struct udev_device *udev_device, + + util_strscpyl(path, sizeof(path), TEST_PREFIX "/sys", &property[8], NULL); + udev_device_set_syspath(udev_device, path); ++ } else if (strncmp(property, "TIMEOUT=", 8) == 0) { ++ udev_device_set_timeout(udev_device, strtoull(&property[8], NULL, 10)); + } else if (startswith(property, "SUBSYSTEM=")) { + udev_device_set_subsystem(udev_device, &property[10]); + } else if (startswith(property, "DEVTYPE=")) { +@@ -605,6 +623,7 @@ struct udev_device *udev_device_new(struct udev *udev) + udev_list_init(udev, &udev_device->sysattr_value_list, true); + udev_list_init(udev, &udev_device->sysattr_list, false); + udev_list_init(udev, &udev_device->tags_list, true); ++ udev_device->timeout = -1; + udev_device->watch_handle = -1; + /* copy global properties */ + udev_list_entry_foreach(list_entry, udev_get_properties_list_entry(udev)) +diff --git a/src/libudev/libudev-private.h b/src/libudev/libudev-private.h +index 4eb4a59..99aefeb 100644 +--- a/src/libudev/libudev-private.h ++++ b/src/libudev/libudev-private.h +@@ -70,6 +70,7 @@ const char *udev_device_get_id_filename(struct udev_device *udev_device); + void udev_device_set_is_initialized(struct udev_device *udev_device); + int udev_device_add_tag(struct udev_device *udev_device, const char *tag); + void udev_device_cleanup_tags_list(struct udev_device *udev_device); ++int udev_device_get_timeout(struct udev_device *udev_device); + unsigned long long udev_device_get_usec_initialized(struct udev_device *udev_device); + void udev_device_set_usec_initialized(struct udev_device *udev_device, unsigned long long usec_initialized); + int udev_device_get_devlink_priority(struct udev_device *udev_device); +diff --git a/src/udev/udevd.c b/src/udev/udevd.c +index 0d85960..cd24462 100644 +--- a/src/udev/udevd.c ++++ b/src/udev/udevd.c +@@ -384,7 +384,7 @@ out: + } + } + +-static void event_run(struct event *event) ++static void event_run(struct event *event, bool force) + { + struct udev_list_node *loop; + +@@ -410,7 +410,7 @@ static void event_run(struct event *event) + return; + } + +- if (children >= children_max) { ++ if (!force && children >= children_max) { + if (children_max > 1) + log_debug("maximum number (%i) of children reached\n", children); + return; +@@ -444,6 +444,13 @@ static int event_queue_insert(struct udev_device *dev) + + event->state = EVENT_QUEUED; + udev_list_node_append(&event->node, &event_list); ++ ++ /* run all events with a timeout set immediately */ ++ if (udev_device_get_timeout(dev) > 0) { ++ event_run(event, true); ++ return 0; ++ } ++ + return 0; + } + +@@ -549,7 +556,7 @@ static void event_queue_start(struct udev *udev) + if (is_devpath_busy(event)) + continue; + +- event_run(event); ++ event_run(event, false); + } + } + +-- +1.7.10.2 + diff --git a/testing/systemd/0001-udev-systemd-udev-settle.service-fix-After.patch b/testing/systemd/0001-udev-systemd-udev-settle.service-fix-After.patch new file mode 100644 index 000000000..117b0df57 --- /dev/null +++ b/testing/systemd/0001-udev-systemd-udev-settle.service-fix-After.patch @@ -0,0 +1,26 @@ +From a2368a3f37ede469d4359421c1e4ad304c682a07 Mon Sep 17 00:00:00 2001 +From: Kay Sievers +Date: Wed, 6 Jun 2012 14:30:16 +0200 +Subject: [PATCH] udev: systemd-udev-settle.service fix After= + +https://bugs.freedesktop.org/show_bug.cgi?id=50779 +--- + units/systemd-udev-settle.service.in | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/units/systemd-udev-settle.service.in b/units/systemd-udev-settle.service.in +index d637700..2c4c129 100644 +--- a/units/systemd-udev-settle.service.in ++++ b/units/systemd-udev-settle.service.in +@@ -21,7 +21,7 @@ Documentation=man:udev(7) + Documentation=man:systemd-udevd(8) + DefaultDependencies=no + Wants=systemd-udev.service +-After=udev-trigger.service ++After=systemd-udev-trigger.service + Before=basic.target + ConditionCapability=CAP_MKNOD + +-- +1.7.11 + diff --git a/testing/systemd/0001-vconsole-setup-enable-utf-8-mode-explicitly.patch b/testing/systemd/0001-vconsole-setup-enable-utf-8-mode-explicitly.patch new file mode 100644 index 000000000..a2cdf64a7 --- /dev/null +++ b/testing/systemd/0001-vconsole-setup-enable-utf-8-mode-explicitly.patch @@ -0,0 +1,79 @@ +From d305a67b46644d6360ef557109384c831ee8e018 Mon Sep 17 00:00:00 2001 +From: Tom Gundersen +Date: Sun, 10 Jun 2012 20:37:14 +0200 +Subject: [PATCH] vconsole-setup: enable utf-8 mode explicitly +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Rather than assuming the console is in utf-8 mode if nothing else is +specified, be a bit more robust and enable it explicitly. + +This fixes a regression compared with Arch's initscripts when not +using a framebuffer as the old VGA console would not be in utf-8 +mode by default. + +Furthermore, this would allow vconsole-setup to be used after boot +to change the vconsole into utf-8 mode in case it has been set to +non-utf-8 mode for whatever reason. I.e, the following would leave +the console in utf-8 mode as expected: + + # export LANG=en_US.ISO-8859-1 + # /usr/lib/systemd/systemd-vconsole-setup + # export LANG=en_US.UTF-8 + # /usr/lib/systemd/systemd-vconsole-setup + +Reported-by: Xyne +Reported-by: Thomas Bächler +Cc: Dave Reisner +--- + src/vconsole/vconsole-setup.c | 24 +++++++++++++++++++++++- + 1 file changed, 23 insertions(+), 1 deletion(-) + +diff --git a/src/vconsole/vconsole-setup.c b/src/vconsole/vconsole-setup.c +index d04fab4..aa5fa18 100644 +--- a/src/vconsole/vconsole-setup.c ++++ b/src/vconsole/vconsole-setup.c +@@ -80,6 +80,25 @@ static int disable_utf8(int fd) { + return r; + } + ++static int enable_utf8(int fd) { ++ int r = 0, k; ++ ++ if (ioctl(fd, KDSKBMODE, K_UNICODE) < 0) ++ r = -errno; ++ ++ if (loop_write(fd, "\033%G", 3, false) < 0) ++ r = -errno; ++ ++ k = write_one_line_file("/sys/module/vt/parameters/default_utf8", "1"); ++ if (k < 0) ++ r = k; ++ ++ if (r < 0) ++ log_warning("Failed to enable UTF-8: %s", strerror(-r)); ++ ++ return r; ++} ++ + static int load_keymap(const char *vc, const char *map, const char *map_toggle, bool utf8, pid_t *_pid) { + const char *args[8]; + int i = 0; +@@ -418,9 +437,12 @@ int main(int argc, char **argv) { + + r = EXIT_FAILURE; + +- if (!utf8) ++ if (utf8) ++ enable_utf8(fd); ++ else + disable_utf8(fd); + ++ + if (load_keymap(vc, vc_keymap, vc_keymap_toggle, utf8, &keymap_pid) >= 0 && + load_font(vc, vc_font, vc_font_map, vc_font_unimap, &font_pid) >= 0) + r = EXIT_SUCCESS; +-- +1.7.11 + diff --git a/testing/systemd/PKGBUILD b/testing/systemd/PKGBUILD new file mode 100644 index 000000000..367b26834 --- /dev/null +++ b/testing/systemd/PKGBUILD @@ -0,0 +1,214 @@ +# Maintainer: Dave Reisner +# Contributor: Tom Gundersen + +pkgbase=systemd +pkgname=('systemd' 'libsystemd' 'systemd-tools' 'systemd-sysvcompat') +pkgver=185 +pkgrel=2 +arch=('i686' 'x86_64') +url="http://www.freedesktop.org/wiki/Software/systemd" +license=('GPL2' 'LGPL2.1' 'MIT') +makedepends=('acl' 'cryptsetup' 'dbus-core' 'docbook-xsl' 'gobject-introspection' 'gperf' + 'gtk-doc' 'intltool' 'kmod' 'libcap' 'libxslt' 'linux-api-headers' 'pam' 'xz') +options=('!libtool') +source=("http://www.freedesktop.org/software/$pkgname/$pkgname-$pkgver.tar.xz" + 'initcpio-hook-udev' + 'initcpio-install-udev' + 'initcpio-install-timestamp' + '0001-Reinstate-TIMEOUT-handling.patch' + '0001-vconsole-setup-enable-utf-8-mode-explicitly.patch' + '0001-udev-systemd-udev-settle.service-fix-After.patch' + 'locale.sh') +md5sums=('a7dbbf05986eb0d2c164ec8e570eb78f' + 'e99e9189aa2f6084ac28b8ddf605aeb8' + '59e91c4d7a69b7bf12c86a9982e37ced' + 'df69615503ad293c9ddf9d8b7755282d' + '5543be25f205f853a21fa5ee68e03f0d' + '83f51149ff9c4d75ea946e2b3cc61e53' + 'b3e41e90beaff35c66ba1b4bc223430a' + 'f15956945052bb911e5df81cf5e7e5dc') + +build() { + cd "$pkgname-$pkgver" + + # still waiting on ipw2x00 to get fixed... + patch -Np1 <"$srcdir/0001-Reinstate-TIMEOUT-handling.patch" + + # upstream commit d305a67b46644d6360ef557109384c831ee8e018 + patch -Np1 <"$srcdir/0001-vconsole-setup-enable-utf-8-mode-explicitly.patch" + + # upstream commit 8e8eb8fbafcaa841fa5393e396acde27b26edf2f + patch -Np1 <"$srcdir/0001-udev-systemd-udev-settle.service-fix-After.patch" + + ./configure \ + --libexecdir=/usr/lib \ + --localstatedir=/var \ + --sysconfdir=/etc \ + --enable-split-usr \ + --enable-introspection \ + --enable-gtk-doc \ + --disable-audit \ + --disable-ima \ + --with-pamlibdir=/usr/lib/security \ + --with-distro=arch \ + --with-usb-ids-path=/usr/share/hwdata/usb.ids \ + --with-pci-ids-path=/usr/share/hwdata/pci.ids \ + --with-firmware-path=/usr/lib/firmware/updates:/lib/firmware/updates:/usr/lib/firmware:/lib/firmware + + make +} + +package_systemd() { + pkgdesc="system and service manager" + depends=('acl' 'dbus-core' "libsystemd=$pkgver" 'kmod' 'libcap' 'pam' + "systemd-tools=$pkgver" 'util-linux' 'xz') + optdepends=('python2-dbus: systemd-analyze' + 'initscripts: legacy support for hostname and vconsole setup' + 'initscripts-systemd: native boot and initialization scripts' + 'python2-cairo: systemd-analyze' + 'systemd-arch-units: collection of native unit files for Arch daemon/init scripts' + '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.timedate1.conf + etc/systemd/system.conf + etc/systemd/user.conf + etc/systemd/logind.conf + etc/systemd/journald.conf) + install="systemd.install" + + make -C "$pkgname-$pkgver" DESTDIR="$pkgdir" install + + printf "d /run/console 0755 root root\n" > "$pkgdir/usr/lib/tmpfiles.d/console.conf" + + install -dm755 "$pkgdir/bin" + ln -s ../usr/lib/systemd/systemd "$pkgdir/bin/systemd" + + # fix systemd-analyze for python2 + sed -i '1s/python$/python2/' "$pkgdir/usr/bin/systemd-analyze" + + # move bash-completion and symlink for loginctl + install -Dm644 "$pkgdir/etc/bash_completion.d/systemd-bash-completion.sh" \ + "$pkgdir/usr/share/bash-completion/completions/systemctl" + ln -s systemctl "$pkgdir/usr/share/bash-completion/completions/loginctl" + rm -rf "$pkgdir/etc/bash_completion.d" + + # don't write units to /etc by default -- we'll enable this on post_install + # as a sane default + rm "$pkgdir/etc/systemd/system/getty.target.wants/getty@tty1.service" + rmdir "$pkgdir/etc/systemd/system/getty.target.wants" + + ### split off libsystemd (libs, includes, pkgconfig, man3) + rm -rf "$srcdir/_libsystemd" + install -dm755 "$srcdir"/_libsystemd/usr/{include,lib/pkgconfig} + cd "$srcdir"/_libsystemd + mv "$pkgdir/usr/lib"/libsystemd-*.so* usr/lib + mv "$pkgdir/usr/include/systemd" usr/include + mv "$pkgdir/usr/lib/pkgconfig"/libsystemd-*.pc usr/lib/pkgconfig + + ### 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 out systemd-tools/udev + rm -rf "$srcdir/_tools" + install -dm755 \ + "$srcdir"/_tools/etc/udev \ + "$srcdir"/_tools/usr/bin \ + "$srcdir"/_tools/usr/include \ + "$srcdir"/_tools/usr/lib/udev \ + "$srcdir"/_tools/usr/lib/systemd/system/{sysinit,sockets}.target.wants \ + "$srcdir"/_tools/usr/lib/girepository-1.0 \ + "$srcdir"/_tools/usr/share/pkgconfig \ + "$srcdir"/_tools/usr/share/gir-1.0 \ + "$srcdir"/_tools/usr/share/gtk-doc/html/{g,lib}udev \ + "$srcdir"/_tools/usr/share/man/man{1,5,7,8} + + cd "$srcdir/_tools" + mv "$pkgdir"/etc/udev etc + mv "$pkgdir"/etc/{binfmt,modules-load,sysctl,tmpfiles}.d etc + mv "$pkgdir"/usr/bin/udevadm usr/bin + mv "$pkgdir"/usr/lib/pkgconfig usr/lib + mv "$pkgdir"/usr/lib/systemd/systemd-udevd usr/lib/systemd + mv "$pkgdir"/usr/lib/systemd/system/systemd-udev* usr/lib/systemd/system + mv "$pkgdir"/usr/lib/systemd/system/sysinit.target.wants/systemd-udev* usr/lib/systemd/system/sysinit.target.wants + mv "$pkgdir"/usr/lib/systemd/system/sockets.target.wants/systemd-udev* usr/lib/systemd/system/sockets.target.wants + mv "$pkgdir"/usr/lib/lib{,g}udev* usr/lib + mv "$pkgdir"/usr/lib/{binfmt,sysctl,modules-load,tmpfiles}.d usr/lib + mv "$pkgdir"/usr/lib/udev usr/lib + mv "$pkgdir"/usr/include/{libudev.h,gudev-1.0} usr/include + mv "$pkgdir"/usr/lib/girepository-1.0 usr/lib + mv "$pkgdir"/usr/share/pkgconfig/udev.pc usr/share/pkgconfig + mv "$pkgdir"/usr/share/gir-1.0 usr/share + mv "$pkgdir"/usr/share/gtk-doc/html/{g,lib}udev usr/share/gtk-doc/html + mv "$pkgdir"/usr/share/man/man7/udev.7 usr/share/man/man7 + mv "$pkgdir"/usr/share/man/man8/{systemd-{tmpfiles,udevd},udevadm}.8 usr/share/man/man8 + mv "$pkgdir"/usr/share/man/man1/systemd-{ask-password,delta,detect-virt}.1 usr/share/man/man1 + mv "$pkgdir"/usr/share/man/man5/{binfmt,modules-load,sysctl,tmpfiles}.d.5 usr/share/man/man5 + mv "$pkgdir"/usr/share/man/man5/{hostname,{vconsole,locale}.conf}.5 usr/share/man/man5 + mv "$pkgdir"/usr/bin/systemd-{ask-password,delta,detect-virt,tmpfiles,tty-ask-password-agent} usr/bin + mv "$pkgdir"/usr/lib/systemd/systemd-{ac-power,binfmt,cryptsetup,modules-load,random-seed,remount-fs,reply-password,sysctl,timestamp,vconsole-setup} usr/lib/systemd +} + +package_systemd-sysvcompat() { + pkgdesc="sysvinit compat for systemd" + conflicts=('sysvinit' 'initscripts') + + mv "$srcdir/_sysvcompat"/* "$pkgdir" + + install -dm755 "$pkgdir/sbin" + for tool in runlevel reboot shutdown poweroff halt telinit; do + ln -s '/usr/bin/systemctl' "$pkgdir/sbin/$tool" + done + + ln -s '../usr/lib/systemd/systemd' "$pkgdir/sbin/init" + + install -Dm755 "$srcdir/locale.sh" "$pkgdir/etc/profile.d/locale.sh" +} + +package_libsystemd() { + pkgdesc="systemd client libraries" + depends=('xz') + + mv "$srcdir/_libsystemd"/* "$pkgdir" +} + +package_systemd-tools() { + pkgdesc='standalone tools from systemd' + url='http://www.freedesktop.org/wiki/Software/systemd' + depends=('acl' 'bash' 'glibc' 'glib2' 'kmod' 'hwids' 'util-linux' 'kbd') + optdepends=('cryptsetup: required for encrypted block devices') + provides=("udev=$pkgver") + conflicts=('udev') + replaces=('udev') + install='systemd-tools.install' + + mv "$srcdir/_tools/"* "$pkgdir" + + # the path to udevadm is hardcoded in some places + install -d "$pkgdir/sbin" + ln -s ../usr/bin/udevadm "$pkgdir/sbin/udevadm" + + # udevd is no longer udevd because systemd. why isn't udevadm now udevctl? + ln -s ../lib/systemd/systemd-udevd "$pkgdir/usr/bin/udevd" + + # 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 + + # add mkinitcpio hooks + install -Dm644 "$srcdir/initcpio-install-udev" "$pkgdir/usr/lib/initcpio/install/udev" + install -Dm644 "$srcdir/initcpio-hook-udev" "$pkgdir/usr/lib/initcpio/hooks/udev" + install -Dm644 "$srcdir/initcpio-install-timestamp" "$pkgdir/usr/lib/initcpio/install/timestamp" + + # XXX: kill off coredump rule until the journal can recover coredumps + # this file needs to come back as part of systemd, not systemd-tools + rm "$pkgdir/usr/lib/sysctl.d/coredump.conf" +} + +# vim: ft=sh syn=sh et diff --git a/testing/systemd/initcpio-hook-udev b/testing/systemd/initcpio-hook-udev new file mode 100644 index 000000000..75da7e4a8 --- /dev/null +++ b/testing/systemd/initcpio-hook-udev @@ -0,0 +1,20 @@ +#!/usr/bin/ash + +run_earlyhook() { + 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/testing/systemd/initcpio-install-timestamp b/testing/systemd/initcpio-install-timestamp new file mode 100644 index 000000000..259cc705b --- /dev/null +++ b/testing/systemd/initcpio-install-timestamp @@ -0,0 +1,14 @@ +#!/bin/bash + +build() { + add_binary /usr/lib/systemd/systemd-timestamp /usr/bin/systemd-timestamp +} + +help() { + cat < to /dev/0." + echo " * For security reasons, we no longer add devices to the 'storage' group. Use" + echo " udisks and friends, or add custom rules to /etc/udev.d/rules/, if you want" + echo " this functionality back." + echo " * We no longer create the static nodes on install needed for an initrd-less" + echo " boot where devtmpfs is not mounted by the kernel, this only affects fresh" + echo " installs." + fi + if [ "$(vercmp $2 175)" -lt 0 ]; then + echo " * devtmpfs support is now a hard requirement. Users of the official Arch" + echo " kernels have this enabled." + fi + if [ "$(vercmp $2 181)" -lt 0 ]; then + echo " * udev-compat has been removed, and should be uninstalled." + echo " * Framebuffers are no longer blacklisted by default." + echo " * binaries moved from /sbin to /usr/bin" + fi + if [ "$(vercmp $2 181-3)" -lt 0 ]; then + echo " * if your kernel does not provide /dev/loop-control, you need to manually" + echo " load the 'loop' module before using losetup" + fi +} diff --git a/testing/systemd/systemd.install b/testing/systemd/systemd.install new file mode 100644 index 000000000..cb82b6c8c --- /dev/null +++ b/testing/systemd/systemd.install @@ -0,0 +1,41 @@ +#!/bin/sh + +sd_booted() { + [ -e sys/fs/cgroup/systemd ] +} + +post_install() { + systemd-machine-id-setup + + # enable getty@tty1 by default, but don't track the file + systemctl enable getty@.service + + echo ":: Append 'init=/bin/systemd' to your kernel command line in your" + echo " bootloader to replace sysvinit with systemd" +} + +post_upgrade() { + systemd-machine-id-setup + + if sd_booted; then + # we moved the binary in 44-2 to /usr, so a reexec leads to a + # coredump. refuse this reexec and warn the user that they should + # reboot instead. + if [ "$(vercmp 44-2 "$2")" -eq 1 ]; then + echo "warning: refusing to reexec systemd. the system should be rebooted." + else + systemctl daemon-reload + systemctl daemon-reexec + fi + fi + + # getty@tty1.service is no longer enabled by default, but we don't want to break + # existing setups. + if [ "$(vercmp 183 "$2")" -eq 1 ]; then + # systemctl seems to be whiny on sysvinit. this will succeed unless something + # horrific happens, so just mask the error. + systemctl -q enable getty@.service || true + fi +} + +# vim:set ts=2 sw=2 et: diff --git a/testing/xz/PKGBUILD b/testing/xz/PKGBUILD new file mode 100644 index 000000000..3d2f9f76f --- /dev/null +++ b/testing/xz/PKGBUILD @@ -0,0 +1,39 @@ +# $Id: PKGBUILD 162176 2012-06-22 16:39:50Z pierre $ +# Maintainer: Pierre Schmitz +# Contributor: François Charette + +pkgname=xz +pkgver=5.0.4 +pkgrel=1 +pkgdesc='Library and command line tools for XZ and LZMA compressed files' +arch=('i686' 'x86_64') +url='http://tukaani.org/xz/' +license=('GPL' 'LGPL' 'custom') +depends=('sh') +options=('!libtool') +source=("http://tukaani.org/${pkgname}/${pkgname}-${pkgver}.tar.gz" + "http://tukaani.org/${pkgname}/${pkgname}-${pkgver}.tar.gz.sig") +md5sums=('df3df690aef18384e1e031be7ec3a964' + '6e203465ee9b8f646d85cf84755e2b32') + +build() { + cd ${srcdir}/${pkgname}-${pkgver} + + ./configure --prefix=/usr \ + --disable-rpath \ + --enable-werror + make +} + +check() { + cd ${srcdir}/${pkgname}-${pkgver} + make check +} + +package() { + cd ${srcdir}/${pkgname}-${pkgver} + make DESTDIR=${pkgdir} install + install -d -m755 ${pkgdir}/usr/share/licenses/xz/ + ln -sf /usr/share/doc/xz/COPYING ${pkgdir}/usr/share/licenses/xz/ + ln -sf /usr/share/licenses/common/GPL2/license.txt ${pkgdir}/usr/share/doc/xz/COPYING.GPLv2 +} -- cgit v1.2.3-54-g00ecf From 3b99c42eb8ca744e86e4e17197b1bf10642c6785 Mon Sep 17 00:00:00 2001 From: root Date: Mon, 25 Jun 2012 00:01:42 +0000 Subject: Mon Jun 25 00:01:41 UTC 2012 --- .../evas_generic_loaders-svn/PKGBUILD | 53 ++ community-staging/gummi/PKGBUILD | 35 ++ community-staging/gummi/gummi.install | 14 + community-staging/pdf2djvu/PKGBUILD | 33 ++ community-testing/nginx/PKGBUILD | 10 +- community-testing/nginx/nginx.install | 10 +- community-testing/nginx/rc.d | 68 +++ community-testing/nginx/service | 13 + community/python2-nautilus/PKGBUILD | 33 ++ .../01-change-filename-tags-for-directories.patch | 21 + community/rblcheck/02-fix-configure.patch | 20 + community/rblcheck/03-custom-rbl.patch | 21 + community/rblcheck/PKGBUILD | 39 ++ core/bluez/PKGBUILD | 83 +++ core/bluez/bluetooth.conf.d | 30 + core/bluez/rc.bluetooth | 93 +++ core/e2fsprogs/PKGBUILD | 6 +- core/iproute2/PKGBUILD | 10 +- core/iproute2/iproute2-fhs.patch | 97 ++-- ...code-the-path-to-modules-to-be-lib-module.patch | 18 +- core/kmod/PKGBUILD | 26 +- ...dev-systemd-udev-settle.service-fix-After.patch | 26 + ...onsole-setup-enable-utf-8-mode-explicitly.patch | 79 +++ core/systemd/PKGBUILD | 20 +- core/systemd/systemd.install | 14 +- extra/clamav/PKGBUILD | 8 +- extra/clamav/install | 4 - extra/scim/PKGBUILD | 9 +- extra/vala/PKGBUILD | 10 +- libre/linux-libre-lts/PKGBUILD | 8 +- libre/linux-libre-lts/linux-libre-lts.install | 2 +- libre/linux-libre/PKGBUILD | 4 +- multilib/wine/PKGBUILD | 6 +- staging/inkscape/PKGBUILD | 59 ++ staging/inkscape/install | 13 + staging/inkscape/libpng15.patch | 40 ++ staging/inkscape/poppler20.patch | 642 +++++++++++++++++++++ staging/poppler/PKGBUILD | 80 +++ staging/xournal/PKGBUILD | 27 + staging/xournal/install | 13 + testing/keyutils/PKGBUILD | 28 + 41 files changed, 1683 insertions(+), 142 deletions(-) create mode 100644 community-staging/evas_generic_loaders-svn/PKGBUILD create mode 100644 community-staging/gummi/PKGBUILD create mode 100644 community-staging/gummi/gummi.install create mode 100644 community-staging/pdf2djvu/PKGBUILD create mode 100644 community-testing/nginx/rc.d create mode 100644 community-testing/nginx/service create mode 100644 community/python2-nautilus/PKGBUILD create mode 100644 community/rblcheck/01-change-filename-tags-for-directories.patch create mode 100644 community/rblcheck/02-fix-configure.patch create mode 100644 community/rblcheck/03-custom-rbl.patch create mode 100644 community/rblcheck/PKGBUILD create mode 100644 core/bluez/PKGBUILD create mode 100644 core/bluez/bluetooth.conf.d create mode 100644 core/bluez/rc.bluetooth create mode 100644 core/systemd/0001-udev-systemd-udev-settle.service-fix-After.patch create mode 100644 core/systemd/0001-vconsole-setup-enable-utf-8-mode-explicitly.patch create mode 100644 staging/inkscape/PKGBUILD create mode 100644 staging/inkscape/install create mode 100644 staging/inkscape/libpng15.patch create mode 100644 staging/inkscape/poppler20.patch create mode 100644 staging/poppler/PKGBUILD create mode 100644 staging/xournal/PKGBUILD create mode 100644 staging/xournal/install create mode 100644 testing/keyutils/PKGBUILD (limited to 'testing') diff --git a/community-staging/evas_generic_loaders-svn/PKGBUILD b/community-staging/evas_generic_loaders-svn/PKGBUILD new file mode 100644 index 000000000..77382038c --- /dev/null +++ b/community-staging/evas_generic_loaders-svn/PKGBUILD @@ -0,0 +1,53 @@ +# $Id: PKGBUILD 72855 2012-06-24 02:55:40Z dwallace $ +# Maintainer: Daniel Wallace +# Contributor: Ronald van Haren + +pkgname=evas_generic_loaders-svn +pkgver=72171 +pkgrel=2 +pkgdesc="Additional generic loaders for Evas" +arch=('i686' 'x86_64') +groups=('e17-libs-svn' 'e17-svn') +url="http://www.enlightenment.org" +license=('BSD') +depends=('librsvg' 'gstreamer0.10' 'poppler' 'libraw' 'libspectre' 'eina-svn') +makedepends=('subversion') +conflicts=('evas_generic_loaders') +provides=('evas_generic_loaders') +options=('!libtool' '!emptydirs') +md5sums=() + +_svntrunk="http://svn.enlightenment.org/svn/e/trunk/evas_generic_loaders" +_svnmod="evas_generic_loaders" + +build() { + cd "$srcdir" + +msg "Connecting to $_svntrunk SVN server...." + if [ -d $_svnmod/.svn ]; then + (cd $_svnmod && svn up -r $pkgver) + else + svn co $_svntrunk --config-dir ./ -r $pkgver $_svnmod + fi + + msg "SVN checkout done or server timeout" + msg "Starting make..." + + cp -r $_svnmod $_svnmod-build + cd $_svnmod-build + + ./autogen.sh --prefix=/usr + make +} + +package() { + cd "$srcdir/$_svnmod-build" + make DESTDIR="$pkgdir" install + +# install license files + install -Dm644 "$srcdir/$_svnmod-build/COPYING" \ + "$pkgdir/usr/share/licenses/$pkgname/COPYING" + + rm -r "$srcdir/$_svnmod-build" + +} diff --git a/community-staging/gummi/PKGBUILD b/community-staging/gummi/PKGBUILD new file mode 100644 index 000000000..1a4208c06 --- /dev/null +++ b/community-staging/gummi/PKGBUILD @@ -0,0 +1,35 @@ +# $Id: PKGBUILD 72840 2012-06-23 19:39:50Z arodseth $ +# Maintainer: Alexander Rødseth +# Contributor: Thomas Dziedzic < gostrc at gmail > +# Contributor: Sergio A. Morales +# Contributor: soeren + +pkgname=gummi +pkgver=0.6.3 +pkgrel=3 +pkgdesc='Simple LaTex editor for GTK users' +arch=('x86_64' 'i686') +url='http://gummi.midnightcoding.org/' +license=('MIT') +depends=('texlive-core' 'gtkspell' 'gtksourceview2' 'poppler-glib' 'desktop-file-utils') +makedepends=('glib2' 'gtk2' 'pango' 'poppler>=0.20.0' 'intltool') +install=$pkgname.install +source=("http://dev.midnightcoding.org/projects/$pkgname/latest.tar.gz") +sha256sums=('d44196e56ed61e125bba01e5949be0928cf09919fdb80e62e6a41999a478f0ed') + +build() { + cd "$pkgname-$pkgver" + + find . -type f -exec touch {} \; + ./configure --prefix=/usr + make +} + +package() { + cd "$pkgname-$pkgver" + + make prefix="$pkgdir/usr" install + install -Dm644 COPYING "$pkgdir/usr/share/licenses/$pkgname/COPYING" +} + +# vim:set ts=2 sw=2 et: diff --git a/community-staging/gummi/gummi.install b/community-staging/gummi/gummi.install new file mode 100644 index 000000000..ef816a666 --- /dev/null +++ b/community-staging/gummi/gummi.install @@ -0,0 +1,14 @@ +post_upgrade() { + gtk-update-icon-cache -q -f -t /usr/share/icons/hicolor + update-desktop-database -q +} + +post_install() { + post_upgrade +} + +post_remove() { + post_upgrade +} + +# vim:set ts=2 sw=2 et: diff --git a/community-staging/pdf2djvu/PKGBUILD b/community-staging/pdf2djvu/PKGBUILD new file mode 100644 index 000000000..a98482600 --- /dev/null +++ b/community-staging/pdf2djvu/PKGBUILD @@ -0,0 +1,33 @@ +# $Id: PKGBUILD 72831 2012-06-23 10:55:41Z jelle $ +# Contributor: Paulo Matias +# Maintainer: Jelle van der Waa + +pkgname=pdf2djvu +pkgver=0.7.13 +pkgrel=2 +pkgdesc="Creates DjVu files from PDF files" +arch=('i686' 'x86_64') +url="http://pdf2djvu.googlecode.com" +license=('GPL') +depends=('poppler' 'djvulibre' 'libxslt' 'gcc-libs' 'graphicsmagick') +makedepends=('pstreams' 'python2-nose' 'ttf-liberation') +source=("http://pdf2djvu.googlecode.com/files/${pkgname}_${pkgver}.tar.gz") + +build() { + cd ${srcdir}/${pkgname}-${pkgver} + ./configure --prefix=/usr + make +} + +package() { + cd ${srcdir}/${pkgname}-${pkgver} + make install DESTDIR=${pkgdir} + install -Dm644 doc/${pkgname}.1 ${pkgdir}/usr/share/man/man1/${pkgname}.1 +} +check() { + + cd ${srcdir}/${pkgname}-${pkgver} + sed -i 's/nosetests/nosetests2/' tests/Makefile + make test +} +md5sums=('b5327c5949057711a8250dffb6ccfd2d') diff --git a/community-testing/nginx/PKGBUILD b/community-testing/nginx/PKGBUILD index 7d95b3070..508861959 100644 --- a/community-testing/nginx/PKGBUILD +++ b/community-testing/nginx/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 72598 2012-06-17 09:51:17Z bpiotrowski $ +# $Id: PKGBUILD 72828 2012-06-23 06:49:26Z bpiotrowski $ # Maintainer: Sergej Pupykin # Maintainer: Bartłomiej Piotrowski # Contributor: Miroslaw Szot pkgname=nginx pkgver=1.2.1 -pkgrel=4 +pkgrel=6 pkgdesc="lightweight HTTP server and IMAP/POP3 proxy server" arch=('i686' 'x86_64') depends=('pcre' 'zlib' 'openssl') @@ -25,10 +25,11 @@ backup=('etc/nginx/fastcgi.conf' 'etc/nginx/win-utf' 'etc/logrotate.d/nginx') source=(http://nginx.org/download/nginx-$pkgver.tar.gz - nginx + rc.d service nginx.logrotate) md5sums=('ceacae12d66d1f021bf3737a0269b6f4' 'f62c7c9b5a53471d4666a4c49ad363fb' + '16c6b4cbe24001a3f4f58b9d5f4e3d4c' 'b38744739022876554a0444d92e6603b') _cfgdir=/etc/nginx @@ -95,7 +96,8 @@ package() { install -d $pkgdir/usr/share/nginx mv $pkgdir/etc/nginx/html/ $pkgdir/usr/share/nginx - install -D -m755 $srcdir/nginx $pkgdir/etc/rc.d/nginx + install -D -m755 $srcdir/rc.d $pkgdir/etc/rc.d/nginx + install -Dm644 $srcdir/service $pkgdir/usr/lib/systemd/system/nginx.service install -D -m644 LICENSE $pkgdir/usr/share/licenses/nginx/LICENSE rm -rf $pkgdir/var/run } diff --git a/community-testing/nginx/nginx.install b/community-testing/nginx/nginx.install index cdad14f43..b31ee41d7 100644 --- a/community-testing/nginx/nginx.install +++ b/community-testing/nginx/nginx.install @@ -1,9 +1,11 @@ post_upgrade() { + if [[ $(vercmp $2 1.2.1-2) -le 0 ]]; then echo " >>> Since 1.2.1-2 several changes has been made in package:" - echo " - *.conf files has been moved to /etc/nginx" + echo " - *.conf files have been moved to /etc/nginx" echo " - /etc/conf.d/nginx has been removed" - echo " Main configuration files is set to /etc/nginx/nginx.conf" - echo " - access.log and error.log can be found in /var/log/nginx at default" - echo " - bundled *.html files has been moved to /usr/share/nginx/html" + echo " Main configuration file is set to /etc/nginx/nginx.conf" + echo " - access.log and error.log can be found in /var/log/nginx by default" + echo " - bundled *.html files have been moved to /usr/share/nginx/html" echo " - /etc/nginx/{html,logs} symbolic links and *.default files have been removed" + fi } diff --git a/community-testing/nginx/rc.d b/community-testing/nginx/rc.d new file mode 100644 index 000000000..eb9031e81 --- /dev/null +++ b/community-testing/nginx/rc.d @@ -0,0 +1,68 @@ +#!/bin/bash + +. /etc/rc.conf +. /etc/rc.d/functions + +function check_config { + stat_busy "Checking nginx configuration" + /usr/sbin/nginx -t -q -c /etc/nginx/nginx.conf + if [ $? -ne 0 ]; then + stat_die + else + stat_done + fi +} + +case "$1" in + start) + check_config + $0 careless_start + ;; + careless_start) + stat_busy "Starting nginx" + if [ -s /var/run/nginx.pid ]; then + stat_fail + # probably ;) + stat_busy "Nginx is already running" + stat_die + fi + /usr/sbin/nginx -c /etc/nginx/nginx.conf &>/dev/null + if [ $? -ne 0 ]; then + stat_fail + else + add_daemon nginx + stat_done + fi + ;; + stop) + stat_busy "Stopping nginx" + PID=$(cat /var/run/nginx.pid) + kill -QUIT $PID &>/dev/null + if [ $? -ne 0 ]; then + stat_fail + else + for i in {1..10}; do + [ -d /proc/$PID ] || { stat_done; rm_daemon nginx; exit 0; } + sleep 1 + done + stat_fail + fi + ;; + restart) + check_config + $0 stop + sleep 1 + $0 careless_start + ;; + reload) + check_config + if [ -s /var/run/nginx.pid ]; then + status "Reloading nginx configuration" kill -HUP $(cat /var/run/nginx.pid) + fi + ;; + check) + check_config + ;; + *) + echo "usage: $0 {start|stop|restart|reload|check|careless_start}" +esac diff --git a/community-testing/nginx/service b/community-testing/nginx/service new file mode 100644 index 000000000..78d0a492c --- /dev/null +++ b/community-testing/nginx/service @@ -0,0 +1,13 @@ +[Unit] +Description=A high performance web server and a reverse proxy server + +[Service] +Type=forking +PIDFile=/run/nginx.pid +ExecStartPre=/usr/sbin/nginx -t -q -g 'pid /run/nginx.pid; daemon on; master_process on;' +ExecStart=/usr/sbin/nginx -g 'pid /run/nginx.pid; daemon on; master_process on;' +ExecReload=/usr/sbin/nginx -g 'pid /run/nginx.pid; daemon on; master_process on;' -s reload +ExecStop=/usr/sbin/nginx -g 'pid /run/nginx.pid;' -s quit + +[Install] +WantedBy=multi-user.target diff --git a/community/python2-nautilus/PKGBUILD b/community/python2-nautilus/PKGBUILD new file mode 100644 index 000000000..4e79d732c --- /dev/null +++ b/community/python2-nautilus/PKGBUILD @@ -0,0 +1,33 @@ +# $Id: PKGBUILD 72850 2012-06-24 00:37:15Z bgyorgy $ +# Maintainer: Balló György +# Contributor: Giorgio Gilestro + +pkgname=python2-nautilus +_pkgname=nautilus-python +pkgver=1.1 +pkgrel=3 +pkgdesc="Python bindings for the Nautilus Extension API" +arch=('i686' 'x86_64') +url="http://projects.gnome.org/nautilus-python/" +license=('GPL') +depends=('nautilus' 'python2-gobject') +replaces=('python-nautilus') +provides=('python-nautilus') +options=('!libtool') +source=(http://ftp.gnome.org/pub/GNOME/sources/$_pkgname/$pkgver/$_pkgname-$pkgver.tar.xz) +sha256sums=('7825e08ada8e131f829d0e7d4144dcfac9fad7bfd7c0600bf3985349c20c496b') + +build() { + cd "$srcdir/$_pkgname-$pkgver" + + ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var \ + --disable-static \ + PYTHON=python2 + make +} + +package() { + cd "$srcdir/$_pkgname-$pkgver" + + make DESTDIR="$pkgdir/" install +} diff --git a/community/rblcheck/01-change-filename-tags-for-directories.patch b/community/rblcheck/01-change-filename-tags-for-directories.patch new file mode 100644 index 000000000..0a5674c33 --- /dev/null +++ b/community/rblcheck/01-change-filename-tags-for-directories.patch @@ -0,0 +1,21 @@ +--- a/docs/rblcheck.sgml (revision 71) ++++ b/docs/rblcheck.sgml (revision 72) +@@ -160,7 +160,7 @@ + + When you are done, you can type make install to + install the software (by default, everything will be installed in +-/usr/local. ++/usr/local. + + + +@@ -397,7 +397,8 @@ + A recent addition to the rblcheck package is the rbl + shell script, which is a simple wrapper around rblcheck, with one special + feature: it will read a global rblcheckrc (usually +-in /etc or /usr/etc), and then ++in /etc or ++/usr/etc), and then + a .rblcheckrc from the current user's home directory. + These files can contain any of the usual rblcheck + command-line arguments (see ), but are most diff --git a/community/rblcheck/02-fix-configure.patch b/community/rblcheck/02-fix-configure.patch new file mode 100644 index 000000000..dbc16342c --- /dev/null +++ b/community/rblcheck/02-fix-configure.patch @@ -0,0 +1,20 @@ +--- a/configure 2005-07-01 10:50:36.000000000 +0100 ++++ b/configure 2005-07-01 10:57:05.000000000 +0100 +@@ -1529,13 +1529,12 @@ + cat > conftest.$ac_ext < to get macro definition for res_query */ ++#include + + int main() { +-res_query() ++res_query("",0,0,"",0) + ; return 0; } + EOF + if { (eval echo configure:1542: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then diff --git a/community/rblcheck/03-custom-rbl.patch b/community/rblcheck/03-custom-rbl.patch new file mode 100644 index 000000000..fe9672a9a --- /dev/null +++ b/community/rblcheck/03-custom-rbl.patch @@ -0,0 +1,21 @@ +--- a/sites.h ++++ b/sites.h +@@ -62,3 +62,18 @@ + /* ORDB: Open Relay DataBase + http://www.ordb.org/ */ + /* SITE("relays.ordb.org") */ ++ ++ ++SITE("zen.spamhaus.org"); ++SITE("sbl.spamhaus.org"); ++SITE("xbl.spamhaus.org"); ++SITE("pbl.spamhaus.org"); ++SITE("bl.spamcop.net"); ++SITE("psbl.surriel.com"); ++SITE("dnsbl.njabl.org"); ++SITE("dul.dnsbl.sorbs.net"); ++SITE("all.spam-rbl.fr"); ++SITE("spam.spam-rbl.fr"); ++SITE("dsl.spam-rbl.fr"); ++SITE("bogon.spam-rbl.fr"); ++ diff --git a/community/rblcheck/PKGBUILD b/community/rblcheck/PKGBUILD new file mode 100644 index 000000000..d879b6c23 --- /dev/null +++ b/community/rblcheck/PKGBUILD @@ -0,0 +1,39 @@ +# $Id: PKGBUILD 72842 2012-06-23 19:47:22Z seblu $ +# Maintainer: Sébastien Luttringer + +pkgname=rblcheck +pkgver=1.5 +pkgrel=1 +pkgdesc='Tool to Query RBL Servers' +arch=('i686' 'x86_64') +url='http://rblcheck.sourceforge.net/' +license=('GPL2') +depends=('glibc' 'bash') +backup=('etc/rblcheckrc') +source=("http://downloads.sourceforge.net/rblcheck/$pkgname-$pkgver.tar.gz" + '01-change-filename-tags-for-directories.patch' + '02-fix-configure.patch' + '03-custom-rbl.patch' +) +md5sums=('fb7ee9adc0e09eee9dda195f9b9e7ca4' + '9e8ed44f4bc6abf235a14065b6aa373c' + '2db00ffd71e17753e89c0968c76d5871' + 'f9ff2de975584f71f7794550691a0272') + +build() { + cd $pkgname-$pkgver + for p in "$srcdir"/*.patch; do + msg2 "Apply patch ${p##*/}" + patch -p 1 -i "$p" + done + ./configure --prefix=/usr --sysconfdir=/etc + make +} + +package() { + cd $pkgname-$pkgver + make DESTDIR="$pkgdir" install + install -Dm 644 /dev/null "$pkgdir/etc/rblcheckrc" +} + +# vim:set ts=2 sw=2 ft=sh et: diff --git a/core/bluez/PKGBUILD b/core/bluez/PKGBUILD new file mode 100644 index 000000000..df484844c --- /dev/null +++ b/core/bluez/PKGBUILD @@ -0,0 +1,83 @@ +# $Id: PKGBUILD 162229 2012-06-24 01:03:25Z tomegun $ +# Maintainer: Tom Gundersen +# Contributor: Andrea Scarpino +# Contributor: Geoffroy Carrier + +pkgname=bluez +pkgver=4.101 +pkgrel=1 +pkgdesc="Libraries and tools for the Bluetooth protocol stack" +url="http://www.bluez.org/" +arch=('i686' 'x86_64') +license=('GPL2') +depends=('dbus-core' 'python2' 'systemd-tools') +makedepends=('gstreamer0.10-base' 'libusb-compat' 'libsndfile' 'libusbx') +optdepends=("gstreamer0.10-base: bluetooth GStreamer support" + "alsa-lib: Audio bluetooth devices support" + "dbus-python: to run bluez-simple-agent" + "pygobject: to run bluez-simple-agent" + "libusb-compat: USB adapters support" + "cups: CUPS backend") +conflicts=('bluez-libs' 'bluez-utils') +provides=('bluez-libs' 'bluez-utils') +replaces=('bluez-libs' 'bluez-utils') +options=('!libtool') +backup=(etc/bluetooth/{main,rfcomm,audio,network,input,serial}.conf + 'etc/conf.d/bluetooth' 'etc/dbus-1/system.d/bluetooth.conf') +source=("http://www.kernel.org/pub/linux/bluetooth/${pkgname}-${pkgver}.tar.bz2" + 'bluetooth.conf.d' + 'rc.bluetooth') + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + + ./configure --prefix=/usr \ + --sysconfdir=/etc \ + --localstatedir=/var \ + --libexecdir=/lib \ + --enable-gstreamer \ + --enable-alsa \ + --enable-usb \ + --enable-tools \ + --enable-bccmd \ + --enable-dfutool \ + --enable-hid2hci \ + --enable-hidd \ + --enable-pand \ + --enable-dund \ + --enable-cups \ + --enable-wiimote \ + --disable-test \ + --with-systemdunitdir=/usr/lib/systemd/system + + make +} + +package() { + cd ${srcdir}/${pkgname}-${pkgver} + make DESTDIR=${pkgdir} install + + install -Dm755 ${srcdir}/rc.bluetooth ${pkgdir}/etc/rc.d/bluetooth + + install -d ${pkgdir}/etc/bluetooth + install -m644 network/network.conf \ + input/input.conf \ + audio/audio.conf \ + serial/serial.conf \ + ${pkgdir}/etc/bluetooth/ + + install -Dm644 ${srcdir}/bluetooth.conf.d \ + ${pkgdir}/etc/conf.d/bluetooth + + # FS#27630 + install -Dm755 test/simple-agent "${pkgdir}"/usr/bin/bluez-simple-agent + install -Dm755 test/test-device "${pkgdir}"/usr/bin/bluez-test-device + install -Dm755 test/test-input "${pkgdir}"/usr/bin/bluez-test-input + sed -i 's#/usr/bin/python#/usr/bin/python2#' \ + "${pkgdir}"/usr/bin/bluez-simple-agent \ + "${pkgdir}"/usr/bin/bluez-test-device \ + "${pkgdir}"/usr/bin/bluez-test-input +} +md5sums=('902b390af95c6c5d6d1a17d94c8344ab' + '7412982b440f29fa7f76a41a87fef985' + '864cbd24e6efc3592e9284b0b5fb2cfd') diff --git a/core/bluez/bluetooth.conf.d b/core/bluez/bluetooth.conf.d new file mode 100644 index 000000000..1c1e02589 --- /dev/null +++ b/core/bluez/bluetooth.conf.d @@ -0,0 +1,30 @@ +# Bluetooth configuraton file + +# Bluetooth services (allowed values are "true" and "false") + +# Run the bluetoothd daemon (default: true) +#DAEMON_ENABLE="false" + +# Run the sdp daemon (default: false) +# If this is disabled, hcid's internal sdp daemon will be used +#SDPD_ENABLE="true" + +# Run the bluetooth HID daemon (default: false) +#HIDD_ENABLE="true" + +# Activate rfcomm ports (default: false) +#RFCOMM_ENABLE="true" + +# Run bluetooth dial-up networking daemon (default: false) +#DUND_ENABLE="true" + +# Run bluetooth PAN daemon (default: false) +#PAND_ENABLE="true" + +# rfcomm configuration file (default: /etc/bluetooth/rfcomm.conf) +#RFCOMM_CONFIG="/etc/bluetooth/rfcomm.conf" + +# Options for hidd, dund and pand (default: none) +HIDD_OPTIONS="--server" +#DUND_OPTIONS="" +#PAND_OPTIONS="" diff --git a/core/bluez/rc.bluetooth b/core/bluez/rc.bluetooth new file mode 100644 index 000000000..0feeaeab6 --- /dev/null +++ b/core/bluez/rc.bluetooth @@ -0,0 +1,93 @@ +#!/bin/bash +# +# Start/stop the Bluetooth daemons +# + +. /etc/rc.conf +. /etc/rc.d/functions + +DAEMON_NAME="bluetoothd" +HIDD_NAME="hidd" +RFCOMM_NAME="rfcomm" +PAND_NAME="pand" +DUND_NAME="dund" + +DAEMON_EXEC="/usr/sbin/bluetoothd" +HIDD_EXEC="/usr/bin/hidd" +RFCOMM_EXEC="/usr/bin/rfcomm" +PAND_EXEC="/usr/bin/pand" +DUND_EXEC="/usr/bin/dund" + +DAEMON_ENABLE="true" +HIDD_ENABLE="false" +RFCOMM_ENABLE="false" +PAND_ENABLE="false" +DUND_ENABLE="false" + +RFCOMM_CONFIG="/etc/bluetooth/rfcomm.conf" + +HIDD_OPTIONS="" +PAND_OPTIONS="" +DUND_OPTIONS="" + +[ -f /etc/conf.d/bluetooth ] && . /etc/conf.d/bluetooth + +case "$1" in + start) + stat_busy "Starting bluetooth subsystem:" + if [ "$DAEMON_ENABLE" = "true" -a -x "$DAEMON_EXEC" ] ; then + stat_append " $DAEMON_NAME" + $DAEMON_EXEC + sleep 1 + fi + if [ "$HIDD_ENABLE" = "true" -a -x "$HIDD_EXEC" ]; then + stat_append " $HIDD_NAME" + $HIDD_EXEC $HIDD_OPTIONS + fi + if [ "$RFCOMM_ENABLE" = "true" -a -x "$RFCOMM_EXEC" -a -f "$RFCOMM_CONFIG" ]; then + stat_append " $RFCOMM_NAME" + $RFCOMM_EXEC -f $RFCOMM_CONFIG bind all + fi + if [ "$PAND_ENABLE" = "true" -a -x "$PAND_EXEC" -a -n "$PAND_OPTIONS" ]; then + stat_append " $PAND_NAME" + $PAND_EXEC $PAND_OPTIONS + fi + if [ "$DUND_ENABLE" = "true" -a -x "$DUND_EXEC" -a -n "$DUND_OPTIONS" ]; then + stat_append " $DUND_NAME" + $DUND_EXEC $DUND_OPTIONS + fi + add_daemon bluetooth + stat_done + ;; + stop) + stat_busy "Stopping bluetooth subsystem:" + + stat_append " $DUND_NAME" + killall $DUND_NAME >/dev/null 2>&1 + + stat_append " $PAND_NAME" + killall $PAND_NAME >/dev/null 2>&1 + + if [ -x "$RFCOMM_EXEC" ]; then + stat_append " $RFCOMM_NAME" + $RFCOMM_EXEC release all >/dev/null 2>&1 + fi + + stat_append " $HIDD_NAME" + killall $HIDD_NAME >/dev/null 2>&1 + + stat_append " $DAEMON_NAME" + killall $DAEMON_NAME >/dev/null 2>&1 + + rm_daemon bluetooth + stat_done + ;; + restart) + $0 stop + sleep 1 + $0 start + ;; + *) + echo "usage: $0 {start|stop|restart}" +esac +exit 0 diff --git a/core/e2fsprogs/PKGBUILD b/core/e2fsprogs/PKGBUILD index 0e0790075..96afe85d7 100644 --- a/core/e2fsprogs/PKGBUILD +++ b/core/e2fsprogs/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 160235 2012-05-31 12:26:12Z allan $ +# $Id: PKGBUILD 162199 2012-06-23 12:13:06Z ronald $ # Maintainer: Ronald van Haren # Contributor: judd pkgname=e2fsprogs -pkgver=1.42.3 +pkgver=1.42.4 pkgrel=1 pkgdesc="Ext2/3/4 filesystem utilities" arch=('i686' 'x86_64') @@ -16,7 +16,7 @@ source=("http://downloads.sourceforge.net/sourceforge/${pkgname}/${pkgname}-${pk 'MIT-LICENSE') backup=('etc/mke2fs.conf') install=${pkgname}.install -sha1sums=('0da8c787604876fe23b0f608389c3854ae1a2420' +sha1sums=('944002c1f8f1f87e7d2d53263346b001962bc1f9' 'f4a0d5b0cdb980e3fedd6f5e7dde0b0ffb7bbdfb') build() { diff --git a/core/iproute2/PKGBUILD b/core/iproute2/PKGBUILD index b69865608..471b91ea9 100644 --- a/core/iproute2/PKGBUILD +++ b/core/iproute2/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 157033 2012-04-23 09:53:11Z ibiru $ +# $Id: PKGBUILD 162200 2012-06-23 12:13:11Z ronald $ # Maintainer: Ronald van Haren # Contributor: Judd Vinet pkgname=iproute2 -pkgver=3.3.0 -pkgrel=1 +pkgver=3.4.0 +pkgrel=2 pkgdesc="IP Routing Utilities" arch=('i686' 'x86_64') license=('GPL2') @@ -20,8 +20,8 @@ backup=('etc/iproute2/ematch_map' 'etc/iproute2/rt_dsfield' 'etc/iproute2/rt_pro 'etc/iproute2/rt_realms' 'etc/iproute2/rt_scopes' 'etc/iproute2/rt_tables') source=(http://www.kernel.org/pub/linux/utils/net/$pkgname/$pkgname-$pkgver.tar.xz iproute2-fhs.patch) -sha1sums=('25307c2418b9d4c6433d61a296f50b886da84b8c' - '2416b11252364d7a6c742eabb4a6924a75637a46') +sha1sums=('fcea492dea2f3ecf9d35f279e2f1a7ea6ca0d527' + '35b8cf2dc94b73eccad427235c07596146cd6f6c') build() { cd $srcdir/$pkgname-$pkgver diff --git a/core/iproute2/iproute2-fhs.patch b/core/iproute2/iproute2-fhs.patch index 2608414db..add3635ca 100644 --- a/core/iproute2/iproute2-fhs.patch +++ b/core/iproute2/iproute2-fhs.patch @@ -1,48 +1,19 @@ -diff -Naur iproute2.old/Makefile iproute2-2.6.29/Makefile ---- iproute2.old/Makefile 2009-11-11 22:05:21.251407668 +0100 -+++ iproute2-2.6.29/Makefile 2009-11-11 22:07:09.891833516 +0100 -@@ -1,11 +1,12 @@ - DESTDIR=/usr/ +diff -Naur iproute2-3.4.0/Makefile iproute2-3.4.0.new/Makefile +--- iproute2-3.4.0/Makefile 2012-05-21 23:12:19.000000000 +0200 ++++ iproute2-3.4.0.new/Makefile 2012-06-18 10:23:53.896760158 +0200 +@@ -1,7 +1,8 @@ ROOTDIR=$(DESTDIR) - LIBDIR=/usr/lib/ + PREFIX=/usr + LIBDIR=$(PREFIX)/lib -SBINDIR=/sbin +SBINDIR=/usr/sbin - CONFDIR=/etc/iproute2 --DOCDIR=/share/doc/iproute2 --MANDIR=/share/man -+DOCDIR=/usr/share/doc/iproute2 -+MANDIR=/usr/share/man - ARPDDIR=/var/lib/arpd +SHAREDIR=/usr/share - - # Path to db_185.h include - DBM_INCLUDE:=$(ROOTDIR)/usr/include -diff -Naur iproute2.old/tc/tc_util.c iproute2-2.6.29/tc/tc_util.c ---- iproute2.old/tc/tc_util.c 2009-11-11 22:05:21.298076943 +0100 -+++ iproute2-2.6.29/tc/tc_util.c 2009-11-11 22:09:32.865152646 +0100 -@@ -24,8 +24,8 @@ - #include "utils.h" - #include "tc_util.h" - --#ifndef LIBDIR --#define LIBDIR "/usr/lib/" -+#ifndef SHAREDIR -+#define SHAREDIR "/usr/share" - #endif - - const char *get_tc_lib(void) -@@ -34,7 +34,7 @@ - - lib_dir = getenv("TC_LIB_DIR"); - if (!lib_dir) -- lib_dir = LIBDIR "/tc/"; -+ lib_dir = SHAREDIR "/tc/"; - - return lib_dir; - } -diff -Naur iproute2.old/netem/Makefile iproute2-2.6.35/netem/Makefile ---- iproute2.old/netem/Makefile 2010-08-06 11:30:48.640940183 +0200 -+++ iproute2-2.6.35/netem/Makefile 2010-08-06 11:32:34.210908892 +0200 + CONFDIR=/etc/iproute2 + DATADIR=$(PREFIX)/share + DOCDIR=$(DATADIR)/doc/iproute2 +diff -Naur iproute2-3.4.0/netem/Makefile iproute2-3.4.0.new/netem/Makefile +--- iproute2-3.4.0/netem/Makefile 2012-05-21 23:12:19.000000000 +0200 ++++ iproute2-3.4.0.new/netem/Makefile 2012-06-18 10:23:53.896760158 +0200 @@ -20,9 +20,9 @@ $(HOSTCC) $(CCOPTS) -I../include -o $@ $@.c -lm @@ -55,18 +26,20 @@ diff -Naur iproute2.old/netem/Makefile iproute2-2.6.35/netem/Makefile done clean: -diff -Naur iproute2.old/tc/Makefile iproute2-2.6.35/tc/Makefile ---- iproute2.old/tc/Makefile 2010-08-06 11:48:35.607472252 +0200 -+++ iproute2-2.6.35/tc/Makefile 2010-08-06 11:49:36.977473380 +0200 -@@ -99,18 +99,11 @@ +diff -Naur iproute2-3.4.0/tc/Makefile iproute2-3.4.0.new/tc/Makefile +--- iproute2-3.4.0/tc/Makefile 2012-05-21 23:12:19.000000000 +0200 ++++ iproute2-3.4.0.new/tc/Makefile 2012-06-18 10:23:53.893426840 +0200 +@@ -105,18 +105,11 @@ $(AR) rcs $@ $(TCLIB) install: all - mkdir -p $(MODDESTDIR) -- install -m 0755 tc $(DESTDIR)$(SBINDIR) -- for i in $(TCSO); \ ++ mkdir -p $(DESTDIR)$(LIBDIR)/tc + install -m 0755 tc $(DESTDIR)$(SBINDIR) + for i in $(TCSO); \ - do install -m 755 $$i $(MODDESTDIR); \ -- done ++ do install -m 755 $$i $(DESTDIR)$(LIBDIR)/tc; \ + done - if [ ! -f $(MODDESTDIR)/m_ipt.so ]; then \ - if [ -f $(MODDESTDIR)/m_xt.so ]; \ - then ln -s m_xt.so $(MODDESTDIR)/m_ipt.so ; \ @@ -74,11 +47,29 @@ diff -Naur iproute2.old/tc/Makefile iproute2-2.6.35/tc/Makefile - then ln -s m_xt_old.so $(MODDESTDIR)/m_ipt.so ; \ - fi; \ - fi -+ mkdir -p $(DESTDIR)$(LIBDIR)/tc -+ install -m 0755 tc $(DESTDIR)$(SBINDIR) -+ for i in $(TCSO); \ -+ do install -m 755 $$i $(DESTDIR)$(LIBDIR)/tc; \ -+ done clean: rm -f $(TCOBJ) $(TCLIB) libtc.a tc *.so emp_ematch.yacc.h; \ +diff -Naur iproute2-3.4.0/tc/tc_util.c iproute2-3.4.0.new/tc/tc_util.c +--- iproute2-3.4.0/tc/tc_util.c 2012-05-21 23:12:19.000000000 +0200 ++++ iproute2-3.4.0.new/tc/tc_util.c 2012-06-18 10:23:53.893426840 +0200 +@@ -24,8 +24,8 @@ + #include "utils.h" + #include "tc_util.h" + +-#ifndef LIBDIR +-#define LIBDIR "/usr/lib" ++#ifndef SHAREDIR ++#define SHAREDIR "/usr/share" + #endif + + const char *get_tc_lib(void) +@@ -34,7 +34,7 @@ + + lib_dir = getenv("TC_LIB_DIR"); + if (!lib_dir) +- lib_dir = LIBDIR "/tc/"; ++ lib_dir = SHAREDIR "/tc/"; + + return lib_dir; + } diff --git a/core/kmod/0002-config-hardcode-the-path-to-modules-to-be-lib-module.patch b/core/kmod/0002-config-hardcode-the-path-to-modules-to-be-lib-module.patch index f39f36ace..8916689f7 100644 --- a/core/kmod/0002-config-hardcode-the-path-to-modules-to-be-lib-module.patch +++ b/core/kmod/0002-config-hardcode-the-path-to-modules-to-be-lib-module.patch @@ -13,9 +13,9 @@ all we have to do is revert this patch. Signed-off-by: Tom Gundersen --- libkmod/libkmod.c | 2 +- - tools/kmod-depmod.c | 2 +- - tools/kmod-modinfo.c | 4 ++-- - tools/kmod-modprobe.c | 4 ++-- + tools/depmod.c | 2 +- + tools/modinfo.c | 4 ++-- + tools/modprobe.c | 4 ++-- 4 files changed, 6 insertions(+), 6 deletions(-) diff --git a/libkmod/libkmod.c b/libkmod/libkmod.c @@ -33,8 +33,8 @@ index 12c1112..11edfa0 100644 { diff --git a/tools/kmod-depmod.c b/tools/kmod-depmod.c index 7bb1c5d..454d538 100644 ---- a/tools/kmod-depmod.c -+++ b/tools/kmod-depmod.c +--- a/tools/depmod.c ++++ b/tools/depmod.c @@ -2634,7 +2634,7 @@ static int do_depmod(int argc, char *argv[]) } @@ -46,8 +46,8 @@ index 7bb1c5d..454d538 100644 if (optind == argc) diff --git a/tools/kmod-modinfo.c b/tools/kmod-modinfo.c index aa5223f..b13cd4b 100644 ---- a/tools/kmod-modinfo.c -+++ b/tools/kmod-modinfo.c +--- a/tools/modinfo.c ++++ b/tools/modinfo.c @@ -339,7 +339,7 @@ static void help(const char *progname) "\t-0, --null Use \\0 instead of \\n\n" "\t-F, --field=FIELD Print only provided FIELD\n" @@ -68,8 +68,8 @@ index aa5223f..b13cd4b 100644 } diff --git a/tools/kmod-modprobe.c b/tools/kmod-modprobe.c index 4760682..ccb41d8 100644 ---- a/tools/kmod-modprobe.c -+++ b/tools/kmod-modprobe.c +--- a/tools/modprobe.c ++++ b/tools/modprobe.c @@ -128,7 +128,7 @@ static void help(const char *progname) "\t-n, --show Same as --dry-run\n" diff --git a/core/kmod/PKGBUILD b/core/kmod/PKGBUILD index 65a607ea4..3f835206a 100644 --- a/core/kmod/PKGBUILD +++ b/core/kmod/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 158851 2012-05-12 13:02:54Z dreisner $ +# $Id: PKGBUILD 162219 2012-06-23 18:29:15Z dreisner $ # Maintainer: Dave Reisner pkgname=kmod -pkgver=8 -pkgrel=2 +pkgver=9 +pkgrel=1 pkgdesc="Linux kernel module handling" arch=('i686' 'x86_64') url='http://git.kernel.org/?p=utils/kernel/kmod/kmod.git;a=summary' @@ -15,27 +15,16 @@ conflicts=('module-init-tools') replaces=('module-init-tools') source=("ftp://ftp.kernel.org/pub/linux/utils/kernel/$pkgname/$pkgname-$pkgver.tar.xz" "depmod-search.conf" - "0001-split-usr-read-configs-from-lib-depmod.d-modprobe.d.patch" - "0002-config-hardcode-the-path-to-modules-to-be-lib-module.patch" - "0001-libkmod-file-gracefully-handle-errors-from-zlib.patch" - "0002-depmod-report-failures-in-loading-symbols.patch") -md5sums=('d4e3d038b5370b1e8ff237c55666aa64' + "0002-config-hardcode-the-path-to-modules-to-be-lib-module.patch") +md5sums=('c8ae2d2694fbca2b28e238b30543a0cd' 'dd62cbf62bd8f212f51ef8c43bec9a77' - 'ba73b9e98db1abbf41274f922fcfbd55' - 'c9af56636c5667cf4ce3a31ea56e03d9' - '1a877b9863b94f91c8d3aec97c021c6b' - '1a9f132779f90556852e70279577ed22') + 'b099be8997331dcb549617188cabc6af') build() { cd "$pkgname-$pkgver" - patch -Np1 <"$srcdir"/0001-split-usr-read-configs-from-lib-depmod.d-modprobe.d.patch patch -Np1 <"$srcdir"/0002-config-hardcode-the-path-to-modules-to-be-lib-module.patch - # fix crash on corrupted zlib compression - patch -Np1 <"$srcdir"/0001-libkmod-file-gracefully-handle-errors-from-zlib.patch - patch -Np1 <"$srcdir"/0002-depmod-report-failures-in-loading-symbols.patch - ./configure \ --sysconfdir=/etc \ --with-zlib \ @@ -45,7 +34,8 @@ build() { } check() { - make -C "$pkgname-$pkgver" check + # testsuite is broken on 32-bit because of an unhandled EEXIST on mkdir_p + make -C "$pkgname-$pkgver" check || : } package() { diff --git a/core/systemd/0001-udev-systemd-udev-settle.service-fix-After.patch b/core/systemd/0001-udev-systemd-udev-settle.service-fix-After.patch new file mode 100644 index 000000000..117b0df57 --- /dev/null +++ b/core/systemd/0001-udev-systemd-udev-settle.service-fix-After.patch @@ -0,0 +1,26 @@ +From a2368a3f37ede469d4359421c1e4ad304c682a07 Mon Sep 17 00:00:00 2001 +From: Kay Sievers +Date: Wed, 6 Jun 2012 14:30:16 +0200 +Subject: [PATCH] udev: systemd-udev-settle.service fix After= + +https://bugs.freedesktop.org/show_bug.cgi?id=50779 +--- + units/systemd-udev-settle.service.in | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/units/systemd-udev-settle.service.in b/units/systemd-udev-settle.service.in +index d637700..2c4c129 100644 +--- a/units/systemd-udev-settle.service.in ++++ b/units/systemd-udev-settle.service.in +@@ -21,7 +21,7 @@ Documentation=man:udev(7) + Documentation=man:systemd-udevd(8) + DefaultDependencies=no + Wants=systemd-udev.service +-After=udev-trigger.service ++After=systemd-udev-trigger.service + Before=basic.target + ConditionCapability=CAP_MKNOD + +-- +1.7.11 + diff --git a/core/systemd/0001-vconsole-setup-enable-utf-8-mode-explicitly.patch b/core/systemd/0001-vconsole-setup-enable-utf-8-mode-explicitly.patch new file mode 100644 index 000000000..a2cdf64a7 --- /dev/null +++ b/core/systemd/0001-vconsole-setup-enable-utf-8-mode-explicitly.patch @@ -0,0 +1,79 @@ +From d305a67b46644d6360ef557109384c831ee8e018 Mon Sep 17 00:00:00 2001 +From: Tom Gundersen +Date: Sun, 10 Jun 2012 20:37:14 +0200 +Subject: [PATCH] vconsole-setup: enable utf-8 mode explicitly +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Rather than assuming the console is in utf-8 mode if nothing else is +specified, be a bit more robust and enable it explicitly. + +This fixes a regression compared with Arch's initscripts when not +using a framebuffer as the old VGA console would not be in utf-8 +mode by default. + +Furthermore, this would allow vconsole-setup to be used after boot +to change the vconsole into utf-8 mode in case it has been set to +non-utf-8 mode for whatever reason. I.e, the following would leave +the console in utf-8 mode as expected: + + # export LANG=en_US.ISO-8859-1 + # /usr/lib/systemd/systemd-vconsole-setup + # export LANG=en_US.UTF-8 + # /usr/lib/systemd/systemd-vconsole-setup + +Reported-by: Xyne +Reported-by: Thomas Bächler +Cc: Dave Reisner +--- + src/vconsole/vconsole-setup.c | 24 +++++++++++++++++++++++- + 1 file changed, 23 insertions(+), 1 deletion(-) + +diff --git a/src/vconsole/vconsole-setup.c b/src/vconsole/vconsole-setup.c +index d04fab4..aa5fa18 100644 +--- a/src/vconsole/vconsole-setup.c ++++ b/src/vconsole/vconsole-setup.c +@@ -80,6 +80,25 @@ static int disable_utf8(int fd) { + return r; + } + ++static int enable_utf8(int fd) { ++ int r = 0, k; ++ ++ if (ioctl(fd, KDSKBMODE, K_UNICODE) < 0) ++ r = -errno; ++ ++ if (loop_write(fd, "\033%G", 3, false) < 0) ++ r = -errno; ++ ++ k = write_one_line_file("/sys/module/vt/parameters/default_utf8", "1"); ++ if (k < 0) ++ r = k; ++ ++ if (r < 0) ++ log_warning("Failed to enable UTF-8: %s", strerror(-r)); ++ ++ return r; ++} ++ + static int load_keymap(const char *vc, const char *map, const char *map_toggle, bool utf8, pid_t *_pid) { + const char *args[8]; + int i = 0; +@@ -418,9 +437,12 @@ int main(int argc, char **argv) { + + r = EXIT_FAILURE; + +- if (!utf8) ++ if (utf8) ++ enable_utf8(fd); ++ else + disable_utf8(fd); + ++ + if (load_keymap(vc, vc_keymap, vc_keymap_toggle, utf8, &keymap_pid) >= 0 && + load_font(vc, vc_font, vc_font_map, vc_font_unimap, &font_pid) >= 0) + r = EXIT_SUCCESS; +-- +1.7.11 + diff --git a/core/systemd/PKGBUILD b/core/systemd/PKGBUILD index 06b3ac5f0..367b26834 100644 --- a/core/systemd/PKGBUILD +++ b/core/systemd/PKGBUILD @@ -4,7 +4,7 @@ pkgbase=systemd pkgname=('systemd' 'libsystemd' 'systemd-tools' 'systemd-sysvcompat') pkgver=185 -pkgrel=1 +pkgrel=2 arch=('i686' 'x86_64') url="http://www.freedesktop.org/wiki/Software/systemd" license=('GPL2' 'LGPL2.1' 'MIT') @@ -16,12 +16,16 @@ source=("http://www.freedesktop.org/software/$pkgname/$pkgname-$pkgver.tar.xz" 'initcpio-install-udev' 'initcpio-install-timestamp' '0001-Reinstate-TIMEOUT-handling.patch' + '0001-vconsole-setup-enable-utf-8-mode-explicitly.patch' + '0001-udev-systemd-udev-settle.service-fix-After.patch' 'locale.sh') md5sums=('a7dbbf05986eb0d2c164ec8e570eb78f' 'e99e9189aa2f6084ac28b8ddf605aeb8' '59e91c4d7a69b7bf12c86a9982e37ced' 'df69615503ad293c9ddf9d8b7755282d' '5543be25f205f853a21fa5ee68e03f0d' + '83f51149ff9c4d75ea946e2b3cc61e53' + 'b3e41e90beaff35c66ba1b4bc223430a' 'f15956945052bb911e5df81cf5e7e5dc') build() { @@ -30,6 +34,12 @@ build() { # still waiting on ipw2x00 to get fixed... patch -Np1 <"$srcdir/0001-Reinstate-TIMEOUT-handling.patch" + # upstream commit d305a67b46644d6360ef557109384c831ee8e018 + patch -Np1 <"$srcdir/0001-vconsole-setup-enable-utf-8-mode-explicitly.patch" + + # upstream commit 8e8eb8fbafcaa841fa5393e396acde27b26edf2f + patch -Np1 <"$srcdir/0001-udev-systemd-udev-settle.service-fix-After.patch" + ./configure \ --libexecdir=/usr/lib \ --localstatedir=/var \ @@ -52,7 +62,7 @@ package_systemd() { pkgdesc="system and service manager" depends=('acl' 'dbus-core' "libsystemd=$pkgver" 'kmod' 'libcap' 'pam' "systemd-tools=$pkgver" 'util-linux' 'xz') - optdepends=('dbus-python: systemd-analyze' + optdepends=('python2-dbus: systemd-analyze' 'initscripts: legacy support for hostname and vconsole setup' 'initscripts-systemd: native boot and initialization scripts' 'python2-cairo: systemd-analyze' @@ -136,7 +146,7 @@ package_systemd() { mv "$pkgdir"/usr/share/gir-1.0 usr/share mv "$pkgdir"/usr/share/gtk-doc/html/{g,lib}udev usr/share/gtk-doc/html mv "$pkgdir"/usr/share/man/man7/udev.7 usr/share/man/man7 - mv "$pkgdir"/usr/share/man/man8/{systemd-udevd,udevadm}.8 usr/share/man/man8 + mv "$pkgdir"/usr/share/man/man8/{systemd-{tmpfiles,udevd},udevadm}.8 usr/share/man/man8 mv "$pkgdir"/usr/share/man/man1/systemd-{ask-password,delta,detect-virt}.1 usr/share/man/man1 mv "$pkgdir"/usr/share/man/man5/{binfmt,modules-load,sysctl,tmpfiles}.d.5 usr/share/man/man5 mv "$pkgdir"/usr/share/man/man5/{hostname,{vconsole,locale}.conf}.5 usr/share/man/man5 @@ -185,16 +195,12 @@ package_systemd-tools() { # udevd is no longer udevd because systemd. why isn't udevadm now udevctl? ln -s ../lib/systemd/systemd-udevd "$pkgdir/usr/bin/udevd" - ln -s ../systemd/systemd-udevd "$pkgdir/usr/lib/udev/udevd" # 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 - # get rid of unneded lock directories - sed -ri '/\/run\/lock\/(subsys|lockdev)/d' "$pkgdir"/usr/lib/tmpfiles.d/legacy.conf - # add mkinitcpio hooks install -Dm644 "$srcdir/initcpio-install-udev" "$pkgdir/usr/lib/initcpio/install/udev" install -Dm644 "$srcdir/initcpio-hook-udev" "$pkgdir/usr/lib/initcpio/hooks/udev" diff --git a/core/systemd/systemd.install b/core/systemd/systemd.install index 0b10f9537..cb82b6c8c 100644 --- a/core/systemd/systemd.install +++ b/core/systemd/systemd.install @@ -5,9 +5,7 @@ sd_booted() { } post_install() { - if [ ! -f etc/machine-id ]; then - systemd-machine-id-setup - fi + systemd-machine-id-setup # enable getty@tty1 by default, but don't track the file systemctl enable getty@.service @@ -17,9 +15,7 @@ post_install() { } post_upgrade() { - if [ ! -f etc/machine-id ]; then - systemd-machine-id-setup - fi + systemd-machine-id-setup if sd_booted; then # we moved the binary in 44-2 to /usr, so a reexec leads to a @@ -42,10 +38,4 @@ post_upgrade() { fi } -post_remove() { - if getent group lock >/dev/null; then - groupdel lock - fi -} - # vim:set ts=2 sw=2 et: diff --git a/extra/clamav/PKGBUILD b/extra/clamav/PKGBUILD index 7f8c9b65b..7aa88d362 100644 --- a/extra/clamav/PKGBUILD +++ b/extra/clamav/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 162158 2012-06-22 12:58:24Z dreisner $ +# $Id: PKGBUILD 162231 2012-06-24 02:24:03Z bisson $ # Contributor: Dale Blount # Contributor: Gregor Ibic # Maintainer: Gaetan Bisson pkgname=clamav pkgver=0.97.5 -pkgrel=1 +pkgrel=2 pkgdesc='Anti-virus toolkit for Unix' url='http://www.clamav.net/' license=('GPL') @@ -61,4 +61,8 @@ package() { install -Dm644 ../logrotate "${pkgdir}"/etc/logrotate.d/clamav install -Dm644 ../conf.d "${pkgdir}"/etc/conf.d/clamav install -Dm755 ../rc.d "${pkgdir}"/etc/rc.d/clamav + + install -d -o 64 -g 64 "${pkgdir}"/run/clamav + install -d -o 64 -g 64 "${pkgdir}"/var/log/clamav + install -d -o 64 -g 64 "${pkgdir}"/var/lib/clamav } diff --git a/extra/clamav/install b/extra/clamav/install index a2092e815..896e187c7 100644 --- a/extra/clamav/install +++ b/extra/clamav/install @@ -1,10 +1,6 @@ post_install() { getent group clamav &>/dev/null || groupadd -r -g 64 clamav >/dev/null getent passwd clamav &>/dev/null || useradd -r -u 64 -g clamav -d /dev/null -s /bin/false -c "Clam AntiVirus" clamav >/dev/null - - chown -R clamav:clamav /var/lib/clamav - install -o clamav -g clamav -d /run/clamav - install -o clamav -g clamav -d /var/log/clamav } post_remove() { diff --git a/extra/scim/PKGBUILD b/extra/scim/PKGBUILD index d60ca334f..0a1eeaed2 100644 --- a/extra/scim/PKGBUILD +++ b/extra/scim/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 157786 2012-04-29 11:52:40Z bisson $ +# $Id: PKGBUILD 162185 2012-06-23 07:47:16Z bisson $ # Maintainer: Gaetan Bisson # Contributor: damir # Contributor: Gan Lu pkgname=scim -pkgver=1.4.13 +pkgver=1.4.14 pkgrel=1 pkgdesc='Input method user interface and development platform' url='http://www.scim-im.org/projects/scim' @@ -15,20 +15,17 @@ makedepends=('intltool') depends=('libltdl' 'gtk2') backup=('etc/scim/config' 'etc/scim/global') source=("http://downloads.sourceforge.net/project/${pkgname}/${pkgname}/${pkgver}/${pkgname}-${pkgver}.tar.gz") -sha1sums=('dafe08bbdd3faa0324800cb63e44926d71be2e47') +sha1sums=('73391be371dd7ef9f9af8b3a211e2bedec0cf71b') install=install build() { cd "${srcdir}/${pkgname}-${pkgver}" - export CXXFLAGS+=' -fpermissive' # so configure detects gettext with gcc-4.7 - ./configure \ --prefix=/usr \ --sysconfdir=/etc \ --disable-static \ - --with-gtk-version=2 # still a couple issues with 3 make } diff --git a/extra/vala/PKGBUILD b/extra/vala/PKGBUILD index ff6c90c87..3d0681dc7 100644 --- a/extra/vala/PKGBUILD +++ b/extra/vala/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 156996 2012-04-23 09:10:51Z ibiru $ +# $Id: PKGBUILD 162223 2012-06-23 20:04:12Z ibiru $ # Maintainer : Ionut Biru # Contributor: Timm Preetz pkgname=vala -pkgver=0.16.0 +pkgver=0.16.1 pkgrel=1 pkgdesc="Compiler for the GObject type system" arch=('i686' 'x86_64') @@ -13,15 +13,15 @@ depends=('glib2') makedepends=('libxslt') options=('!libtool') source=(http://ftp.gnome.org/pub/gnome/sources/$pkgname/${pkgver%.*}/$pkgname-$pkgver.tar.xz) -sha256sums=('3adb37aa2b35e2e2daed47552e85dbcbf752c0f7768b269d856993620073a657') +sha256sums=('8be28ff6347feecb391220ceb4e2209d32b697278e87ed7fc6c9fb1e9345e0d8') build() { - cd "$srcdir/$pkgname-$pkgver" + cd $pkgname-$pkgver ./configure --prefix=/usr --enable-vapigen make } package() { - cd "$srcdir/$pkgname-$pkgver" + cd $pkgname-$pkgver make DESTDIR="$pkgdir" install } diff --git a/libre/linux-libre-lts/PKGBUILD b/libre/linux-libre-lts/PKGBUILD index 9c2909331..6c163e5f5 100644 --- a/libre/linux-libre-lts/PKGBUILD +++ b/libre/linux-libre-lts/PKGBUILD @@ -9,9 +9,9 @@ pkgname=('linux-libre-lts' 'linux-libre-lts-headers') # Build stock -LIBRE kerne # pkgname=linux-custom # Build kernel with a different name _kernelname=-LIBRE-LTS _basekernel=3.0 -_sublevel=35 +_sublevel=36 pkgver=${_basekernel}.${_sublevel} -_lxopkgver=${_basekernel}.34 # nearly always the same as pkgver +_lxopkgver=${_basekernel}.36 # nearly always the same as pkgver pkgrel=1 arch=('i686' 'x86_64' 'mips64el') url="http://linux-libre.fsfla.org/" @@ -32,7 +32,7 @@ source=("http://linux-libre.fsfla.org/pub/linux-libre/releases/${_basekernel}-gn 'ext4-options.patch' "http://www.linux-libre.fsfla.org/pub/linux-libre/lemote/gnewsense/pool/linux-patches-${_lxopkgver}-gnu_0loongsonlibre_mipsel.tar.bz2") md5sums=('5f64180fe7df4e574dac5911b78f5067' - '7104adc7c0c6ab88820fce6d34ac595c' + '150413437fe54d4822e9e43189e37319' '9cfcf3807201ce44aa720571232a10ce' '8bb5c5aa217202c3ac3798ba7798e07d' 'c072b17032e80debc6a8626299245d46' @@ -42,7 +42,7 @@ md5sums=('5f64180fe7df4e574dac5911b78f5067' '9d3c56a4b999c8bfbd4018089a62f662' '263725f20c0b9eb9c353040792d644e5' 'f36222e7ce20c8e4dc27376f9be60f6c' - '1a107ca509aec77af60fe8e9612c9fae') + '7102cdd847f0bd7102f0ad01fa43f454') if [ "$CARCH" != "mips64el" ]; then # Don't use the Loongson-specific patches on non-mips64el arches. unset source[${#source[@]}-1] diff --git a/libre/linux-libre-lts/linux-libre-lts.install b/libre/linux-libre-lts/linux-libre-lts.install index b3426d278..4b6841658 100644 --- a/libre/linux-libre-lts/linux-libre-lts.install +++ b/libre/linux-libre-lts/linux-libre-lts.install @@ -2,7 +2,7 @@ # arg 2: the old package version KERNEL_NAME=-lts -KERNEL_VERSION=3.0.35-1-LIBRE-LTS +KERNEL_VERSION=3.0.36-1-LIBRE-LTS # set a sane PATH to ensure that critical utils like depmod will be found export PATH='/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin' diff --git a/libre/linux-libre/PKGBUILD b/libre/linux-libre/PKGBUILD index 7b228cef3..71a548e0a 100644 --- a/libre/linux-libre/PKGBUILD +++ b/libre/linux-libre/PKGBUILD @@ -14,7 +14,7 @@ _kernelname=-LIBRE _basekernel=3.4 _sublevel=4 pkgver=${_basekernel}.${_sublevel} -_lxopkgver=${_basekernel}.2 # nearly always the same as pkgver +_lxopkgver=${_basekernel}.4 # nearly always the same as pkgver pkgrel=1 arch=('i686' 'x86_64' 'mips64el') url="http://linux-libre.fsfla.org/" @@ -43,7 +43,7 @@ md5sums=('a5e128ca059cceb8b69148b41ff4ac6f' '04b21c79df0a952c22d681dd4f4562df' '9d3c56a4b999c8bfbd4018089a62f662' '263725f20c0b9eb9c353040792d644e5' - 'f959f197166bf56c19fc09e79a1bf1d3') + '86910efeadb5d1e5d5416ff1a9dacb33') if [ "$CARCH" != "mips64el" ]; then # Don't use the Loongson-specific patches on non-mips64el arches. unset source[${#source[@]}-1] diff --git a/multilib/wine/PKGBUILD b/multilib/wine/PKGBUILD index ac375eeea..57b4d1b55 100644 --- a/multilib/wine/PKGBUILD +++ b/multilib/wine/PKGBUILD @@ -1,17 +1,17 @@ -# $Id: PKGBUILD 72122 2012-06-08 22:00:53Z svenstaro $ +# $Id: PKGBUILD 72833 2012-06-23 11:37:18Z svenstaro $ # Maintainer: Sven-Hendrik Haase # Contributor: Jan "heftig" Steffens # Contributor: Eduardo Romero # Contributor: Giovanni Scafora pkgname=wine -pkgver=1.5.6 +pkgver=1.5.7 pkgrel=1 _pkgbasever=${pkgver/rc/-rc} source=(http://prdownloads.sourceforge.net/$pkgname/$pkgname-$_pkgbasever.tar.bz2) -md5sums=('83bc2532cef560a21cad7dda979cadda') +md5sums=('fde93976e0178a00dce55d2f43022e5b') pkgdesc="A compatibility layer for running Windows programs" url="http://www.winehq.com" diff --git a/staging/inkscape/PKGBUILD b/staging/inkscape/PKGBUILD new file mode 100644 index 000000000..d4c7162eb --- /dev/null +++ b/staging/inkscape/PKGBUILD @@ -0,0 +1,59 @@ +# $Id: PKGBUILD 162202 2012-06-23 12:19:01Z bisson $ +# Contributor: tobias +# Contributor: Tobias Kieslich +# Maintainer: Gaetan Bisson + +pkgname=inkscape +pkgver=0.48.3.1 +pkgrel=4 +pkgdesc='Vector graphics editor using the SVG file format' +url='http://inkscape.sourceforge.net/' +license=('GPL' 'LGPL') +arch=('i686' 'x86_64') +makedepends=('boost' 'intltool') +depends=('gc' 'gsl' 'gtkmm' 'gtkspell' 'imagemagick' 'libxslt' 'poppler-glib' 'popt' + 'python2' 'desktop-file-utils' 'hicolor-icon-theme') +optdepends=('pstoedit: latex formulas' + 'texlive-core: latex formulas' + 'python2-numpy: some extensions' + 'python2-lxml: some extensions and filters' + 'pyxml: some extensions' + 'uniconvertor: reading/writing to some proprietary formats') +options=('!libtool') +source=("http://downloads.sourceforge.net/project/${pkgname}/${pkgname}/${pkgver}/${pkgname}-${pkgver}.tar.gz" + 'poppler20.patch' + 'libpng15.patch') +sha1sums=('9a09a97d184e09c2ee7f9956bfe073b7313e919e' + '7316c2903c157781838cce289a709d100dc40fec' + 'd6512f3cb38ca8e2436dc485aa652490d17b3a52') + +install=install + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + + sed -i 's|/usr/bin/python\>|/usr/bin/python2|g' cxxtest/*.py + sed -i 's|/usr/bin/env python\>|/usr/bin/env python2|g' share/*/{test/,}*.py + sed -i 's|"python" },|"python2" },|g' src/extension/implementation/script.cpp + sed -i 's|python -c|python2 -c|g' configure share/extensions/uniconv*.py + sed -i 's|"python"|"python2"|g' src/main.cpp + + patch -p1 -i ../poppler20.patch + patch -p1 -i ../libpng15.patch + + ./configure \ + --prefix=/usr \ + --with-python \ + --with-perl \ + --enable-lcms \ + --enable-poppler-cairo \ + --disable-dependency-tracking \ + + make +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + + make DESTDIR="${pkgdir}" install +} diff --git a/staging/inkscape/install b/staging/inkscape/install new file mode 100644 index 000000000..6e803bf1d --- /dev/null +++ b/staging/inkscape/install @@ -0,0 +1,13 @@ +post_install() { + update-desktop-database -q + gtk-update-icon-cache -q -t -f usr/share/icons/hicolor +} + +post_upgrade() { + post_install +} + + +post_remove() { + post_install +} diff --git a/staging/inkscape/libpng15.patch b/staging/inkscape/libpng15.patch new file mode 100644 index 000000000..e24913ed6 --- /dev/null +++ b/staging/inkscape/libpng15.patch @@ -0,0 +1,40 @@ +--- inkscape-0.48.1/src/extension/internal/pdfinput/svg-builder.cpp ++++ inkscape-0.48.1-mod//src/extension/internal/pdfinput/svg-builder.cpp +@@ -1443,7 +1443,7 @@ + return NULL; + } + // Set error handler +- if (setjmp(png_ptr->jmpbuf)) { ++ if (setjmp(png_jmpbuf(png_ptr))) { + png_destroy_write_struct(&png_ptr, &info_ptr); + return NULL; + } +--- inkscape-0.48.1/src/helper/png-write.cpp ++++ inkscape-0.48.1-mod//src/helper/png-write.cpp +@@ -165,7 +165,7 @@ + /* Set error handling. REQUIRED if you aren't supplying your own + * error hadnling functions in the png_create_write_struct() call. + */ +- if (setjmp(png_ptr->jmpbuf)) { ++ if (setjmp(png_jmpbuf(png_ptr))) { + /* If we get here, we had a problem reading the file */ + fclose(fp); + png_destroy_write_struct(&png_ptr, &info_ptr); +--- inkscape-0.48.1/src/sp-image.cpp ++++ inkscape-0.48.1-mod//src/sp-image.cpp +@@ -386,9 +386,13 @@ + + #if defined(PNG_iCCP_SUPPORTED) + { +- char* name = 0; ++ png_charp name = 0; + int compression_type = 0; +- char* profile = 0; ++#if (PNG_LIBPNG_VER < 10500) ++ png_charp profile = 0; ++#else ++ png_bytep profile = 0; ++#endif + png_uint_32 proflen = 0; + if ( png_get_iCCP(pngPtr, infoPtr, &name, &compression_type, &profile, &proflen) ) { + // g_message("Found an iCCP chunk named [%s] with %d bytes and comp %d", name, proflen, compression_type); diff --git a/staging/inkscape/poppler20.patch b/staging/inkscape/poppler20.patch new file mode 100644 index 000000000..ecb74603f --- /dev/null +++ b/staging/inkscape/poppler20.patch @@ -0,0 +1,642 @@ +diff -Naur old/src/extension/internal/pdfinput/pdf-parser.cpp new/src/extension/internal/pdfinput/pdf-parser.cpp +--- old/src/extension/internal/pdfinput/pdf-parser.cpp 2011-07-08 20:25:09.468790000 +0200 ++++ new/src/extension/internal/pdfinput/pdf-parser.cpp 2012-05-13 21:07:11.334781215 +0200 +@@ -367,14 +367,14 @@ + for (i = 0; i < obj->arrayGetLength(); ++i) { + obj->arrayGet(i, &obj2); + if (!obj2.isStream()) { +- error(-1, const_cast("Weird page contents")); ++ error(errInternal, -1, const_cast("Weird page contents")); + obj2.free(); + return; + } + obj2.free(); + } + } else if (!obj->isStream()) { +- error(-1, const_cast("Weird page contents")); ++ error(errInternal, -1, const_cast("Weird page contents")); + return; + } + parser = new Parser(xref, new Lexer(xref, obj), gFalse); +@@ -419,7 +419,7 @@ + + // too many arguments - something is wrong + } else { +- error(getPos(), const_cast("Too many args in content stream")); ++ error(errInternal, getPos(), const_cast("Too many args in content stream")); + if (printCommands) { + printf("throwing away arg: "); + obj.print(stdout); +@@ -436,7 +436,7 @@ + + // args at end with no command + if (numArgs > 0) { +- error(getPos(), const_cast("Leftover args in content stream")); ++ error(errInternal, getPos(), const_cast("Leftover args in content stream")); + if (printCommands) { + printf("%d leftovers:", numArgs); + for (i = 0; i < numArgs; ++i) { +@@ -502,7 +502,7 @@ + name = cmd->getCmd(); + if (!(op = findOp(name))) { + if (ignoreUndef == 0) +- error(getPos(), const_cast("Unknown operator '%s'"), name); ++ error(errInternal, getPos(), const_cast("Unknown operator '%s'"), name); + return; + } + +@@ -510,26 +510,26 @@ + argPtr = args; + if (op->numArgs >= 0) { + if (numArgs < op->numArgs) { +- error(getPos(), const_cast("Too few (%d) args to '%s' operator"), numArgs, name); ++ error(errInternal, getPos(), const_cast("Too few (%d) args to '%s' operator"), numArgs, name); + return; + } + if (numArgs > op->numArgs) { + #if 0 +- error(getPos(), "Too many (%d) args to '%s' operator", numArgs, name); ++ error(errInternal, getPos(), "Too many (%d) args to '%s' operator", numArgs, name); + #endif + argPtr += numArgs - op->numArgs; + numArgs = op->numArgs; + } + } else { + if (numArgs > -op->numArgs) { +- error(getPos(), const_cast("Too many (%d) args to '%s' operator"), ++ error(errInternal, getPos(), const_cast("Too many (%d) args to '%s' operator"), + numArgs, name); + return; + } + } + for (i = 0; i < numArgs; ++i) { + if (!checkArg(&argPtr[i], op->tchk[i])) { +- error(getPos(), const_cast("Arg #%d to '%s' operator is wrong type (%s)"), ++ error(errInternal, getPos(), const_cast("Arg #%d to '%s' operator is wrong type (%s)"), + i, name, argPtr[i].getTypeName()); + return; + } +@@ -690,7 +690,7 @@ + return; + } + if (!obj1.isDict()) { +- error(getPos(), const_cast("ExtGState '%s' is wrong type"), args[0].getName()); ++ error(errInternal, getPos(), const_cast("ExtGState '%s' is wrong type"), args[0].getName()); + obj1.free(); + return; + } +@@ -705,7 +705,7 @@ + if (state->parseBlendMode(&obj2, &mode)) { + state->setBlendMode(mode); + } else { +- error(getPos(), const_cast("Invalid blend mode in ExtGState")); ++ error(errInternal, getPos(), const_cast("Invalid blend mode in ExtGState")); + } + } + obj2.free(); +@@ -764,7 +764,7 @@ + state->setTransfer(funcs); + } + } else if (!obj2.isNull()) { +- error(getPos(), const_cast("Invalid transfer function in ExtGState")); ++ error(errInternal, getPos(), const_cast("Invalid transfer function in ExtGState")); + } + obj2.free(); + +@@ -784,7 +784,7 @@ + funcs[0] = Function::parse(&obj3); + if (funcs[0]->getInputSize() != 1 || + funcs[0]->getOutputSize() != 1) { +- error(getPos(), ++ error(errInternal, getPos(), + const_cast("Invalid transfer function in soft mask in ExtGState")); + delete funcs[0]; + funcs[0] = NULL; +@@ -809,11 +809,7 @@ + blendingColorSpace = NULL; + isolated = knockout = gFalse; + if (!obj4.dictLookup(const_cast("CS"), &obj5)->isNull()) { +-#ifdef POPPLER_NEW_COLOR_SPACE_API + blendingColorSpace = GfxColorSpace::parse(&obj5, NULL); +-#else +- blendingColorSpace = GfxColorSpace::parse(&obj5); +-#endif + } + obj5.free(); + if (obj4.dictLookup(const_cast("I"), &obj5)->isBool()) { +@@ -840,15 +836,15 @@ + delete funcs[0]; + } + } else { +- error(getPos(), const_cast("Invalid soft mask in ExtGState - missing group")); ++ error(errInternal, getPos(), const_cast("Invalid soft mask in ExtGState - missing group")); + } + obj4.free(); + } else { +- error(getPos(), const_cast("Invalid soft mask in ExtGState - missing group")); ++ error(errInternal, getPos(), const_cast("Invalid soft mask in ExtGState - missing group")); + } + obj3.free(); + } else if (!obj2.isNull()) { +- error(getPos(), const_cast("Invalid soft mask in ExtGState")); ++ error(errInternal, getPos(), const_cast("Invalid soft mask in ExtGState")); + } + } + obj2.free(); +@@ -876,7 +872,7 @@ + // check form type + dict->lookup(const_cast("FormType"), &obj1); + if (!(obj1.isNull() || (obj1.isInt() && obj1.getInt() == 1))) { +- error(getPos(), const_cast("Unknown form type")); ++ error(errInternal, getPos(), const_cast("Unknown form type")); + } + obj1.free(); + +@@ -884,7 +880,7 @@ + dict->lookup(const_cast("BBox"), &obj1); + if (!obj1.isArray()) { + obj1.free(); +- error(getPos(), const_cast("Bad form bounding box")); ++ error(errInternal, getPos(), const_cast("Bad form bounding box")); + return; + } + for (i = 0; i < 4; ++i) { +@@ -1012,19 +1008,11 @@ + + state->setFillPattern(NULL); + res->lookupColorSpace(args[0].getName(), &obj); +-#ifdef POPPLER_NEW_COLOR_SPACE_API + if (obj.isNull()) { + colorSpace = GfxColorSpace::parse(&args[0], NULL); + } else { + colorSpace = GfxColorSpace::parse(&obj, NULL); + } +-#else +- if (obj.isNull()) { +- colorSpace = GfxColorSpace::parse(&args[0]); +- } else { +- colorSpace = GfxColorSpace::parse(&obj); +- } +-#endif + obj.free(); + if (colorSpace) { + state->setFillColorSpace(colorSpace); +@@ -1032,7 +1020,7 @@ + state->setFillColor(&color); + builder->updateStyle(state); + } else { +- error(getPos(), const_cast("Bad color space (fill)")); ++ error(errInternal, getPos(), const_cast("Bad color space (fill)")); + } + } + +@@ -1043,19 +1031,11 @@ + + state->setStrokePattern(NULL); + res->lookupColorSpace(args[0].getName(), &obj); +-#ifdef POPPLER_NEW_COLOR_SPACE_API + if (obj.isNull()) { + colorSpace = GfxColorSpace::parse(&args[0], NULL); + } else { + colorSpace = GfxColorSpace::parse(&obj, NULL); + } +-#else +- if (obj.isNull()) { +- colorSpace = GfxColorSpace::parse(&args[0]); +- } else { +- colorSpace = GfxColorSpace::parse(&obj); +- } +-#endif + obj.free(); + if (colorSpace) { + state->setStrokeColorSpace(colorSpace); +@@ -1063,7 +1043,7 @@ + state->setStrokeColor(&color); + builder->updateStyle(state); + } else { +- error(getPos(), const_cast("Bad color space (stroke)")); ++ error(errInternal, getPos(), const_cast("Bad color space (stroke)")); + } + } + +@@ -1072,7 +1052,7 @@ + int i; + + if (numArgs != state->getFillColorSpace()->getNComps()) { +- error(getPos(), const_cast("Incorrect number of arguments in 'sc' command")); ++ error(errInternal, getPos(), const_cast("Incorrect number of arguments in 'sc' command")); + return; + } + state->setFillPattern(NULL); +@@ -1088,7 +1068,7 @@ + int i; + + if (numArgs != state->getStrokeColorSpace()->getNComps()) { +- error(getPos(), const_cast("Incorrect number of arguments in 'SC' command")); ++ error(errInternal, getPos(), const_cast("Incorrect number of arguments in 'SC' command")); + return; + } + state->setStrokePattern(NULL); +@@ -1109,7 +1089,7 @@ + if (!((GfxPatternColorSpace *)state->getFillColorSpace())->getUnder() || + numArgs - 1 != ((GfxPatternColorSpace *)state->getFillColorSpace()) + ->getUnder()->getNComps()) { +- error(getPos(), const_cast("Incorrect number of arguments in 'scn' command")); ++ error(errInternal, getPos(), const_cast("Incorrect number of arguments in 'scn' command")); + return; + } + for (i = 0; i < numArgs - 1 && i < gfxColorMaxComps; ++i) { +@@ -1120,23 +1100,15 @@ + state->setFillColor(&color); + builder->updateStyle(state); + } +-#ifdef POPPLER_NEW_COLOR_SPACE_API + if (args[numArgs-1].isName() && + (pattern = res->lookupPattern(args[numArgs-1].getName(), NULL))) { + state->setFillPattern(pattern); + builder->updateStyle(state); + } +-#else +- if (args[numArgs-1].isName() && +- (pattern = res->lookupPattern(args[numArgs-1].getName()))) { +- state->setFillPattern(pattern); +- builder->updateStyle(state); +- } +-#endif + + } else { + if (numArgs != state->getFillColorSpace()->getNComps()) { +- error(getPos(), const_cast("Incorrect number of arguments in 'scn' command")); ++ error(errInternal, getPos(), const_cast("Incorrect number of arguments in 'scn' command")); + return; + } + state->setFillPattern(NULL); +@@ -1161,7 +1133,7 @@ + ->getUnder() || + numArgs - 1 != ((GfxPatternColorSpace *)state->getStrokeColorSpace()) + ->getUnder()->getNComps()) { +- error(getPos(), const_cast("Incorrect number of arguments in 'SCN' command")); ++ error(errInternal, getPos(), const_cast("Incorrect number of arguments in 'SCN' command")); + return; + } + for (i = 0; i < numArgs - 1 && i < gfxColorMaxComps; ++i) { +@@ -1172,23 +1144,15 @@ + state->setStrokeColor(&color); + builder->updateStyle(state); + } +-#ifdef POPPLER_NEW_COLOR_SPACE_API + if (args[numArgs-1].isName() && + (pattern = res->lookupPattern(args[numArgs-1].getName(), NULL))) { + state->setStrokePattern(pattern); + builder->updateStyle(state); + } +-#else +- if (args[numArgs-1].isName() && +- (pattern = res->lookupPattern(args[numArgs-1].getName()))) { +- state->setStrokePattern(pattern); +- builder->updateStyle(state); +- } +-#endif + + } else { + if (numArgs != state->getStrokeColorSpace()->getNComps()) { +- error(getPos(), const_cast("Incorrect number of arguments in 'SCN' command")); ++ error(errInternal, getPos(), const_cast("Incorrect number of arguments in 'SCN' command")); + return; + } + state->setStrokePattern(NULL); +@@ -1212,7 +1176,7 @@ + + void PdfParser::opLineTo(Object args[], int numArgs) { + if (!state->isCurPt()) { +- error(getPos(), const_cast("No current point in lineto")); ++ error(errInternal, getPos(), const_cast("No current point in lineto")); + return; + } + state->lineTo(args[0].getNum(), args[1].getNum()); +@@ -1222,7 +1186,7 @@ + double x1, y1, x2, y2, x3, y3; + + if (!state->isCurPt()) { +- error(getPos(), const_cast("No current point in curveto")); ++ error(errInternal, getPos(), const_cast("No current point in curveto")); + return; + } + x1 = args[0].getNum(); +@@ -1238,7 +1202,7 @@ + double x1, y1, x2, y2, x3, y3; + + if (!state->isCurPt()) { +- error(getPos(), const_cast("No current point in curveto1")); ++ error(errInternal, getPos(), const_cast("No current point in curveto1")); + return; + } + x1 = state->getCurX(); +@@ -1254,7 +1218,7 @@ + double x1, y1, x2, y2, x3, y3; + + if (!state->isCurPt()) { +- error(getPos(), const_cast("No current point in curveto2")); ++ error(errInternal, getPos(), const_cast("No current point in curveto2")); + return; + } + x1 = args[0].getNum(); +@@ -1282,7 +1246,7 @@ + + void PdfParser::opClosePath(Object args[], int numArgs) { + if (!state->isCurPt()) { +- error(getPos(), const_cast("No current point in closepath")); ++ error(errInternal, getPos(), const_cast("No current point in closepath")); + return; + } + state->closePath(); +@@ -1298,7 +1262,7 @@ + + void PdfParser::opStroke(Object args[], int numArgs) { + if (!state->isCurPt()) { +- //error(getPos(), const_cast("No path in stroke")); ++ //error(errInternal, getPos(), const_cast("No path in stroke")); + return; + } + if (state->isPath()) { +@@ -1314,7 +1278,7 @@ + + void PdfParser::opCloseStroke(Object * /*args[]*/, int /*numArgs*/) { + if (!state->isCurPt()) { +- //error(getPos(), const_cast("No path in closepath/stroke")); ++ //error(errInternal, getPos(), const_cast("No path in closepath/stroke")); + return; + } + state->closePath(); +@@ -1331,7 +1295,7 @@ + + void PdfParser::opFill(Object args[], int numArgs) { + if (!state->isCurPt()) { +- //error(getPos(), const_cast("No path in fill")); ++ //error(errInternal, getPos(), const_cast("No path in fill")); + return; + } + if (state->isPath()) { +@@ -1347,7 +1311,7 @@ + + void PdfParser::opEOFill(Object args[], int numArgs) { + if (!state->isCurPt()) { +- //error(getPos(), const_cast("No path in eofill")); ++ //error(errInternal, getPos(), const_cast("No path in eofill")); + return; + } + if (state->isPath()) { +@@ -1363,7 +1327,7 @@ + + void PdfParser::opFillStroke(Object args[], int numArgs) { + if (!state->isCurPt()) { +- //error(getPos(), const_cast("No path in fill/stroke")); ++ //error(errInternal, getPos(), const_cast("No path in fill/stroke")); + return; + } + if (state->isPath()) { +@@ -1376,7 +1340,7 @@ + + void PdfParser::opCloseFillStroke(Object args[], int numArgs) { + if (!state->isCurPt()) { +- //error(getPos(), const_cast("No path in closepath/fill/stroke")); ++ //error(errInternal, getPos(), const_cast("No path in closepath/fill/stroke")); + return; + } + if (state->isPath()) { +@@ -1388,7 +1352,7 @@ + + void PdfParser::opEOFillStroke(Object args[], int numArgs) { + if (!state->isCurPt()) { +- //error(getPos(), const_cast("No path in eofill/stroke")); ++ //error(errInternal, getPos(), const_cast("No path in eofill/stroke")); + return; + } + if (state->isPath()) { +@@ -1399,7 +1363,7 @@ + + void PdfParser::opCloseEOFillStroke(Object args[], int numArgs) { + if (!state->isCurPt()) { +- //error(getPos(), const_cast("No path in closepath/eofill/stroke")); ++ //error(errInternal, getPos(), const_cast("No path in closepath/eofill/stroke")); + return; + } + if (state->isPath()) { +@@ -1440,7 +1404,7 @@ + doShadingPatternFillFallback((GfxShadingPattern *)pattern, gFalse, eoFill); + break; + default: +- error(getPos(), const_cast("Unimplemented pattern type (%d) in fill"), ++ error(errInternal, getPos(), const_cast("Unimplemented pattern type (%d) in fill"), + pattern->getType()); + break; + } +@@ -1459,7 +1423,7 @@ + doShadingPatternFillFallback((GfxShadingPattern *)pattern, gTrue, gFalse); + break; + default: +- error(getPos(), const_cast("Unimplemented pattern type (%d) in stroke"), ++ error(errInternal, getPos(), const_cast("Unimplemented pattern type (%d) in stroke"), + pattern->getType()); + break; + } +@@ -1579,15 +1543,9 @@ + double *matrix = NULL; + GBool savedState = gFalse; + +-#ifdef POPPLER_NEW_COLOR_SPACE_API + if (!(shading = res->lookupShading(args[0].getName(), NULL))) { + return; + } +-#else +- if (!(shading = res->lookupShading(args[0].getName()))) { +- return; +- } +-#endif + + // save current graphics state + if (shading->getType() != 2 && shading->getType() != 3) { +@@ -2156,7 +2114,7 @@ + + void PdfParser::opShowText(Object args[], int numArgs) { + if (!state->getFont()) { +- error(getPos(), const_cast("No font in show")); ++ error(errInternal, getPos(), const_cast("No font in show")); + return; + } + if (fontChanged) { +@@ -2170,7 +2128,7 @@ + double tx, ty; + + if (!state->getFont()) { +- error(getPos(), const_cast("No font in move/show")); ++ error(errInternal, getPos(), const_cast("No font in move/show")); + return; + } + if (fontChanged) { +@@ -2188,7 +2146,7 @@ + double tx, ty; + + if (!state->getFont()) { +- error(getPos(), const_cast("No font in move/set/show")); ++ error(errInternal, getPos(), const_cast("No font in move/set/show")); + return; + } + if (fontChanged) { +@@ -2211,7 +2169,7 @@ + int i; + + if (!state->getFont()) { +- error(getPos(), const_cast("No font in show/space")); ++ error(errInternal, getPos(), const_cast("No font in show/space")); + return; + } + if (fontChanged) { +@@ -2236,7 +2194,7 @@ + } else if (obj.isString()) { + doShowText(obj.getString()); + } else { +- error(getPos(), const_cast("Element of show/space array must be number or string")); ++ error(errInternal, getPos(), const_cast("Element of show/space array must be number or string")); + } + obj.free(); + } +@@ -2334,7 +2292,7 @@ + if (charProc.isStream()) { + //parse(&charProc, gFalse); // TODO: parse into SVG font + } else { +- error(getPos(), const_cast("Missing or bad Type3 CharProc entry")); ++ error(errInternal, getPos(), const_cast("Missing or bad Type3 CharProc entry")); + } + //out->endType3Char(state); + if (resDict) { +@@ -2410,7 +2368,7 @@ + return; + } + if (!obj1.isStream()) { +- error(getPos(), const_cast("XObject '%s' is wrong type"), name); ++ error(errInternal, getPos(), const_cast("XObject '%s' is wrong type"), name); + obj1.free(); + return; + } +@@ -2426,9 +2384,9 @@ + /* out->psXObject(obj1.getStream(), + obj3.isStream() ? obj3.getStream() : (Stream *)NULL);*/ + } else if (obj2.isName()) { +- error(getPos(), const_cast("Unknown XObject subtype '%s'"), obj2.getName()); ++ error(errInternal, getPos(), const_cast("Unknown XObject subtype '%s'"), obj2.getName()); + } else { +- error(getPos(), const_cast("XObject subtype is missing or wrong type")); ++ error(errInternal, getPos(), const_cast("XObject subtype is missing or wrong type")); + } + obj2.free(); + obj1.free(); +@@ -2559,11 +2517,7 @@ + } + } + if (!obj1.isNull()) { +-#ifdef POPPLER_NEW_COLOR_SPACE_API + colorSpace = GfxColorSpace::parse(&obj1, NULL); +-#else +- colorSpace = GfxColorSpace::parse(&obj1); +-#endif + } else if (csMode == streamCSDeviceGray) { + colorSpace = new GfxDeviceGrayColorSpace(); + } else if (csMode == streamCSDeviceRGB) { +@@ -2648,11 +2602,7 @@ + obj2.free(); + } + } +-#ifdef POPPLER_NEW_COLOR_SPACE_API + maskColorSpace = GfxColorSpace::parse(&obj1, NULL); +-#else +- maskColorSpace = GfxColorSpace::parse(&obj1); +-#endif + obj1.free(); + if (!maskColorSpace || maskColorSpace->getMode() != csDeviceGray) { + goto err1; +@@ -2758,7 +2708,7 @@ + err2: + obj1.free(); + err1: +- error(getPos(), const_cast("Bad image parameters")); ++ error(errInternal, getPos(), const_cast("Bad image parameters")); + } + + void PdfParser::doForm(Object *str) { +@@ -2783,7 +2733,7 @@ + // check form type + dict->lookup(const_cast("FormType"), &obj1); + if (!(obj1.isNull() || (obj1.isInt() && obj1.getInt() == 1))) { +- error(getPos(), const_cast("Unknown form type")); ++ error(errInternal, getPos(), const_cast("Unknown form type")); + } + obj1.free(); + +@@ -2791,7 +2741,7 @@ + dict->lookup(const_cast("BBox"), &bboxObj); + if (!bboxObj.isArray()) { + bboxObj.free(); +- error(getPos(), const_cast("Bad form bounding box")); ++ error(errInternal, getPos(), const_cast("Bad form bounding box")); + return; + } + for (i = 0; i < 4; ++i) { +@@ -2827,11 +2777,7 @@ + if (obj1.dictLookup(const_cast("S"), &obj2)->isName(const_cast("Transparency"))) { + transpGroup = gTrue; + if (!obj1.dictLookup(const_cast("CS"), &obj3)->isNull()) { +-#ifdef POPPLER_NEW_COLOR_SPACE_API + blendingColorSpace = GfxColorSpace::parse(&obj3, NULL); +-#else +- blendingColorSpace = GfxColorSpace::parse(&obj3); +-#endif + } + obj3.free(); + if (obj1.dictLookup(const_cast("I"), &obj3)->isBool()) { +@@ -2990,7 +2936,7 @@ + parser->getObj(&obj); + while (!obj.isCmd(const_cast("ID")) && !obj.isEOF()) { + if (!obj.isName()) { +- error(getPos(), const_cast("Inline image dictionary key must be a name object")); ++ error(errInternal, getPos(), const_cast("Inline image dictionary key must be a name object")); + obj.free(); + } else { + key = copyString(obj.getName()); +@@ -3005,7 +2951,7 @@ + parser->getObj(&obj); + } + if (obj.isEOF()) { +- error(getPos(), const_cast("End of file in inline image")); ++ error(errInternal, getPos(), const_cast("End of file in inline image")); + obj.free(); + dict.free(); + return NULL; +@@ -3020,11 +2966,11 @@ + } + + void PdfParser::opImageData(Object args[], int numArgs) { +- error(getPos(), const_cast("Internal: got 'ID' operator")); ++ error(errInternal, getPos(), const_cast("Internal: got 'ID' operator")); + } + + void PdfParser::opEndImage(Object args[], int numArgs) { +- error(getPos(), const_cast("Internal: got 'EI' operator")); ++ error(errInternal, getPos(), const_cast("Internal: got 'EI' operator")); + } + + //------------------------------------------------------------------------ +diff -Naur old/src/extension/internal/pdfinput/svg-builder.cpp new/src/extension/internal/pdfinput/svg-builder.cpp +--- old/src/extension/internal/pdfinput/svg-builder.cpp 2011-07-08 20:25:09.468790000 +0200 ++++ new/src/extension/internal/pdfinput/svg-builder.cpp 2012-05-13 20:45:22.303804308 +0200 +@@ -961,9 +961,7 @@ + _font_style = sp_repr_css_attr_new(); + GfxFont *font = state->getFont(); + // Store original name +- if (font->getOrigName()) { +- _font_specification = font->getOrigName()->getCString(); +- } else if (font->getName()) { ++ if (font->getName()) { + _font_specification = font->getName()->getCString(); + } else { + _font_specification = (char*) "Arial"; diff --git a/staging/poppler/PKGBUILD b/staging/poppler/PKGBUILD new file mode 100644 index 000000000..cdf3879ba --- /dev/null +++ b/staging/poppler/PKGBUILD @@ -0,0 +1,80 @@ +# $Id: PKGBUILD 162187 2012-06-23 08:50:28Z andyrtr $ +# Maintainer: Jan de Groot + +pkgbase=poppler +pkgname=('poppler' 'poppler-glib' 'poppler-qt') +pkgver=0.20.1 +pkgrel=1 +arch=(i686 x86_64) +license=('GPL') +makedepends=('libjpeg' 'gcc-libs' 'cairo' 'fontconfig' 'openjpeg' 'gtk2' 'qt' 'pkgconfig' 'lcms' 'gobject-introspection') +options=('!libtool' '!emptydirs') +url="http://poppler.freedesktop.org/" +_testtag=0d2bfd4af4c76a3bac27ccaff793d9129df7b57a +source=(http://poppler.freedesktop.org/${pkgbase}-${pkgver}.tar.gz + http://cgit.freedesktop.org/poppler/test/snapshot/test-${_testtag}.tar.bz2) +md5sums=('a61e3b844061f5324512a16d6d16984c' + '9dc64c254a31e570507bdd4ad4ba629a') + +build() { + cd "${srcdir}/${pkgbase}-${pkgver}" + sed -i -e '/AC_PATH_XTRA/d' configure.ac + + autoreconf -fi + + ./configure --prefix=/usr --sysconfdir=/etc \ + --localstatedir=/var --disable-static \ + --enable-cairo-output \ + --enable-xpdf-headers \ + --enable-libjpeg --enable-zlib \ + --enable-poppler-qt4 \ + --enable-poppler-glib + make +} + +check() { + cd "${srcdir}" + ln -sf test-${_testtag} test + cd ${pkgbase}-${pkgver} + LANG=en_US.UTF8 make check +} + +package_poppler() { + pkgdesc="PDF rendering library based on xpdf 3.0" + depends=('libjpeg' 'gcc-libs' 'cairo' 'fontconfig' 'openjpeg' 'lcms' 'poppler-data') + conflicts=("poppler-qt3<${pkgver}") + + cd "${srcdir}/${pkgbase}-${pkgver}" + sed -e 's/^glib_subdir =.*/glib_subdir =/' \ + -e 's/^qt4_subdir =.*/qt4_subdir =/' -i Makefile + make DESTDIR="${pkgdir}" install + + rm -f "${pkgdir}"/usr/lib/pkgconfig/poppler-{glib,qt4}.pc +} + +package_poppler-glib() { + pkgdesc="Poppler glib bindings" + depends=("poppler=${pkgver}" 'glib2') + + cd "${srcdir}/${pkgbase}-${pkgver}/poppler" + make DESTDIR="${pkgdir}" install-libLTLIBRARIES + cd "${srcdir}/${pkgbase}-${pkgver}/glib" + make DESTDIR="${pkgdir}" install + install -m755 -d "${pkgdir}/usr/lib/pkgconfig" + install -m644 ../poppler-glib.pc "${pkgdir}/usr/lib/pkgconfig/" + rm -f "${pkgdir}"/usr/lib/libpoppler.* + rm -f "${pkgdir}/usr/bin/poppler-glib-demo" +} + +package_poppler-qt() { + pkgdesc="Poppler Qt bindings" + depends=("poppler=${pkgver}" 'qt') + + cd "${srcdir}/${pkgbase}-${pkgver}/poppler" + make DESTDIR="${pkgdir}" install-libLTLIBRARIES + cd "${srcdir}/${pkgbase}-${pkgver}/qt4" + make DESTDIR="${pkgdir}" install + install -m755 -d "${pkgdir}/usr/lib/pkgconfig" + install -m644 ../poppler-qt4.pc "${pkgdir}/usr/lib/pkgconfig/" + rm -f "${pkgdir}"/usr/lib/libpoppler.* +} diff --git a/staging/xournal/PKGBUILD b/staging/xournal/PKGBUILD new file mode 100644 index 000000000..aa89c0c26 --- /dev/null +++ b/staging/xournal/PKGBUILD @@ -0,0 +1,27 @@ +# $Id: PKGBUILD 162197 2012-06-23 11:44:10Z bisson $ +# Maintainer: Gaetan Bisson + +pkgname=xournal +pkgver=0.4.6 +pkgrel=2 +pkgdesc='Notetaking and sketching application' +url='http://xournal.sourceforge.net/' +license=('GPL') +arch=('i686' 'x86_64') +depends=('libgnomecanvas' 'poppler-glib' 'shared-mime-info' 'desktop-file-utils' 'hicolor-icon-theme') +optdepends=('ghostscript: import PS/PDF files as bitmap backgrounds') +source=("http://downloads.sourceforge.net/project/${pkgname}/${pkgname}/${pkgver}/${pkgname}-${pkgver}.tar.gz") +sha1sums=('4ebe79e3df7155d2a09c341537a639ac2332d4c8') + +install=install + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + ./configure --prefix=/usr LIBS='-lm -lz' + make +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + make DESTDIR="${pkgdir}" install desktop-install +} diff --git a/staging/xournal/install b/staging/xournal/install new file mode 100644 index 000000000..dfcb68374 --- /dev/null +++ b/staging/xournal/install @@ -0,0 +1,13 @@ +post_install() { + update-desktop-database -q + gtk-update-icon-cache -q -t -f usr/share/icons/hicolor + update-mime-database usr/share/mime &>/dev/null +} + +post_upgrade() { + post_install +} + +post_remove() { + post_install +} diff --git a/testing/keyutils/PKGBUILD b/testing/keyutils/PKGBUILD new file mode 100644 index 000000000..c6ab79a54 --- /dev/null +++ b/testing/keyutils/PKGBUILD @@ -0,0 +1,28 @@ +# $Id: PKGBUILD 162210 2012-06-23 16:28:17Z tpowa $ +# Maintainer: Stéphane Gaudreault +# Contributor: Tobias Powalowski +pkgname=keyutils +pkgver=1.5.5 +pkgrel=3 +pkgdesc="Linux Key Management Utilities" +arch=(i686 x86_64) +url="http://www.kernel.org" +license=('GPL2' 'LGPL2.1') +depends=('glibc' 'sh') +backup=(etc/request-key.conf) +source=(http://people.redhat.com/~dhowells/${pkgname}/${pkgname}-${pkgver}.tar.bz2) +md5sums=('d759680b2f23c99af95938f5026f25fb') + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + make CFLAGS="${CFLAGS}" LDFLAGS="${LDFLAGS}" +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + make DESTDIR="${pkgdir}" LIBDIR="/usr/lib" USRLIBDIR="/usr/lib" install + # add nfsidmap to config file #30396 + echo "# NFS idmap resolver" >> $pkgdir/etc/request-key.conf + echo "create id_resolver * * /usr/sbin/nfsidmap %k %d" \ + >> $pkgdir/etc/request-key.conf +} -- cgit v1.2.3-54-g00ecf