Date: Wednesday, February 8, 2012 @ 16:50:56 Author: ronald Revision: 149637
archrelease: copy trunk to extra-i686, extra-x86_64 Added: fuse/repos/extra-i686/PKGBUILD (from rev 149636, fuse/trunk/PKGBUILD) fuse/repos/extra-i686/fuse.conf (from rev 149636, fuse/trunk/fuse.conf) fuse/repos/extra-i686/fuse.install (from rev 149636, fuse/trunk/fuse.install) fuse/repos/extra-i686/fuse.rc.d (from rev 149636, fuse/trunk/fuse.rc.d) fuse/repos/extra-x86_64/PKGBUILD (from rev 149636, fuse/trunk/PKGBUILD) fuse/repos/extra-x86_64/fuse.conf (from rev 149636, fuse/trunk/fuse.conf) fuse/repos/extra-x86_64/fuse.install (from rev 149636, fuse/trunk/fuse.install) fuse/repos/extra-x86_64/fuse.rc.d (from rev 149636, fuse/trunk/fuse.rc.d) Deleted: fuse/repos/extra-i686/PKGBUILD fuse/repos/extra-i686/fuse.conf fuse/repos/extra-i686/fuse.install fuse/repos/extra-i686/fuse.rc.d fuse/repos/extra-x86_64/PKGBUILD fuse/repos/extra-x86_64/fuse.conf fuse/repos/extra-x86_64/fuse.install fuse/repos/extra-x86_64/fuse.rc.d ---------------------------+ extra-i686/PKGBUILD | 124 ++++++++++++++++++++++---------------------- extra-i686/fuse.conf | 18 +++--- extra-i686/fuse.install | 20 +++---- extra-i686/fuse.rc.d | 98 +++++++++++++++++----------------- extra-x86_64/PKGBUILD | 124 ++++++++++++++++++++++---------------------- extra-x86_64/fuse.conf | 18 +++--- extra-x86_64/fuse.install | 20 +++---- extra-x86_64/fuse.rc.d | 98 +++++++++++++++++----------------- 8 files changed, 262 insertions(+), 258 deletions(-) Deleted: extra-i686/PKGBUILD =================================================================== --- extra-i686/PKGBUILD 2012-02-08 21:50:11 UTC (rev 149636) +++ extra-i686/PKGBUILD 2012-02-08 21:50:56 UTC (rev 149637) @@ -1,61 +0,0 @@ -# $Id$ -# Maintainer: Ronald van Haren <ronald.archlinux.org> -# Contributor: Mark Rosenstand <m...@archlinux.org> - -pkgname=fuse -pkgver=2.8.6 -pkgrel=1 -pkgdesc="A library that makes it possible to implement a filesystem in a userspace program." -arch=('i686' 'x86_64') -url="http://fuse.sourceforge.net/" -license="GPL2" -depends=('glibc') -makedepends=('pkg-config') -backup=(etc/fuse.conf) -install=fuse.install -source=(http://downloads.sourceforge.net/$pkgname/$pkgname-$pkgver.tar.gz - 'fuse.conf') -options=(!libtool) -sha1sums=('c2c0f9fff8bfee217da200888123e5abb5b498f2' - '3b42e37a741d4651099225987dc40e7f02a716ad') -build() { - cd ${srcdir}/${pkgname}-${pkgver} - - # fix building with glibc-2.14 - sed -i '1i#define _GNU_SOURCE' util/fusermount.c - - ./configure --prefix=/usr --enable-lib \ - --enable-util --bindir=/bin - make -} - -package() { - cd ${srcdir}/${pkgname}-${pkgver} - - make DESTDIR=${pkgdir} install - - # static device nodes will cause collision. - rm -rf ${pkgdir}/dev - - # Remove init script in wrong path - # Don't add our own for now, as fusectl fs oopses on 2.6.18 - rm -rf ${pkgdir}/etc/init.d - #install -D -m755 ${srcdir}/fuse.rc.d ${pkgdir}/etc/rc.d/fuse - - install -d ${pkgdir}/lib - mv ${pkgdir}/usr/lib/libfuse.so.${pkgver} ${pkgdir}/lib/ - ln -s ../../lib/libfuse.so.${pkgver} ${pkgdir}/usr/lib/libfuse.so.${pkgver} - ln -s libfuse.so.${pkgver} ${pkgdir}/lib/libfuse.so.2 - mv ${pkgdir}/usr/lib/libulockmgr.so.1.0.1 ${pkgdir}/lib/ - ln -s ../../lib/libulockmgr.so.1.0.1 ${pkgdir}/usr/lib/libulockmgr.so.1.0.1 - ln -s libulockmgr.so.1.0.1 ${pkgdir}/lib/libulockmgr.so.1 - - # install sample config file - install -Dm644 ${srcdir}/fuse.conf ${pkgdir}/etc/fuse.conf - # Fix udev rule location - install -d -m755 "${pkgdir}/lib" - mv "${pkgdir}/etc/udev" "${pkgdir}/lib/" - - # remove udev rules (should already be in udev package} - rm -f ${pkgdir}/lib/udev/rules.d/99-fuse.rules -} Copied: fuse/repos/extra-i686/PKGBUILD (from rev 149636, fuse/trunk/PKGBUILD) =================================================================== --- extra-i686/PKGBUILD (rev 0) +++ extra-i686/PKGBUILD 2012-02-08 21:50:56 UTC (rev 149637) @@ -0,0 +1,63 @@ +# $Id$ +# Maintainer: Ronald van Haren <ronald.archlinux.org> +# Contributor: Mark Rosenstand <m...@archlinux.org> + +pkgname=fuse +pkgver=2.8.7 +pkgrel=1 +pkgdesc="A library that makes it possible to implement a filesystem in a userspace program." +arch=('i686' 'x86_64') +url="http://fuse.sourceforge.net/" +license="GPL2" +depends=('glibc') +makedepends=('pkg-config') +backup=(etc/fuse.conf) +install=fuse.install +source=(http://downloads.sourceforge.net/$pkgname/$pkgname-$pkgver.tar.gz + 'fuse.conf') +options=(!libtool) +sha1sums=('284f22401131ec148bd04362dc86f7b0e94fb5f4' + '3b42e37a741d4651099225987dc40e7f02a716ad') + +build() { + cd ${srcdir}/${pkgname}-${pkgver} + + # fix building with glibc-2.14 + sed -i '1i#define _GNU_SOURCE' util/fusermount.c + + ./configure --prefix=/usr --enable-lib \ + --enable-util --bindir=/bin + make +} + +package() { + cd ${srcdir}/${pkgname}-${pkgver} + + make DESTDIR=${pkgdir} install + + # static device nodes will cause collision. + rm -rf ${pkgdir}/dev + + # Remove init script in wrong path + # Don't add our own for now, as fusectl fs oopses on 2.6.18 + rm -rf ${pkgdir}/etc/init.d + #install -D -m755 ${srcdir}/fuse.rc.d ${pkgdir}/etc/rc.d/fuse + + install -d ${pkgdir}/lib + mv ${pkgdir}/usr/lib/libfuse.so.${pkgver} ${pkgdir}/lib/ + ln -s ../../lib/libfuse.so.${pkgver} ${pkgdir}/usr/lib/libfuse.so.${pkgver} + ln -s libfuse.so.${pkgver} ${pkgdir}/lib/libfuse.so.2 + mv ${pkgdir}/usr/lib/libulockmgr.so.1.0.1 ${pkgdir}/lib/ + ln -s ../../lib/libulockmgr.so.1.0.1 ${pkgdir}/usr/lib/libulockmgr.so.1.0.1 + ln -s libulockmgr.so.1.0.1 ${pkgdir}/lib/libulockmgr.so.1 + + # install sample config file + install -Dm644 ${srcdir}/fuse.conf ${pkgdir}/etc/fuse.conf + + # Fix udev rule location + install -d -m755 "${pkgdir}/lib" + mv "${pkgdir}/etc/udev" "${pkgdir}/lib/" + + # remove udev rules (should already be in udev package} + rm -f ${pkgdir}/lib/udev/rules.d/99-fuse.rules +} Deleted: extra-i686/fuse.conf =================================================================== --- extra-i686/fuse.conf 2012-02-08 21:50:11 UTC (rev 149636) +++ extra-i686/fuse.conf 2012-02-08 21:50:56 UTC (rev 149637) @@ -1,9 +0,0 @@ -# Set the maximum number of FUSE mounts allowed to non-root users. -# The default is 1000. -# -#mount_max = 1000 - -# Allow non-root users to specify the 'allow_other' or 'allow_root' -# mount options. -# -#user_allow_other Copied: fuse/repos/extra-i686/fuse.conf (from rev 149636, fuse/trunk/fuse.conf) =================================================================== --- extra-i686/fuse.conf (rev 0) +++ extra-i686/fuse.conf 2012-02-08 21:50:56 UTC (rev 149637) @@ -0,0 +1,9 @@ +# Set the maximum number of FUSE mounts allowed to non-root users. +# The default is 1000. +# +#mount_max = 1000 + +# Allow non-root users to specify the 'allow_other' or 'allow_root' +# mount options. +# +#user_allow_other Deleted: extra-i686/fuse.install =================================================================== --- extra-i686/fuse.install 2012-02-08 21:50:11 UTC (rev 149636) +++ extra-i686/fuse.install 2012-02-08 21:50:56 UTC (rev 149637) @@ -1,10 +0,0 @@ -post_install() { - cat << 'EOM' -==> You must load the fuse kernel module to use FUSE. - -> Run 'modprobe fuse' to load the module now. - -> Add fuse to $MODULES in /etc/rc.conf to load on every boot. -==> You will need a /dev/fuse device node to use FUSE. - -> If you use udev, nothing needs to be done - -> For a static /dev, run: mknod /dev/fuse -m 0666 c 10 229 -EOM -} Copied: fuse/repos/extra-i686/fuse.install (from rev 149636, fuse/trunk/fuse.install) =================================================================== --- extra-i686/fuse.install (rev 0) +++ extra-i686/fuse.install 2012-02-08 21:50:56 UTC (rev 149637) @@ -0,0 +1,10 @@ +post_install() { + cat << 'EOM' +==> You must load the fuse kernel module to use FUSE. + -> Run 'modprobe fuse' to load the module now. + -> Add fuse to $MODULES in /etc/rc.conf to load on every boot. +==> You will need a /dev/fuse device node to use FUSE. + -> If you use udev, nothing needs to be done + -> For a static /dev, run: mknod /dev/fuse -m 0666 c 10 229 +EOM +} Deleted: extra-i686/fuse.rc.d =================================================================== --- extra-i686/fuse.rc.d 2012-02-08 21:50:11 UTC (rev 149636) +++ extra-i686/fuse.rc.d 2012-02-08 21:50:56 UTC (rev 149637) @@ -1,49 +0,0 @@ -#!/bin/bash -# -# fuse Init script for Filesystem in Userspace -# Based on the script by Miklos Szeredi <mik...@szeredi.hu> - -. /etc/rc.conf -. /etc/rc.d/functions -FUSECTL=/sys/fs/fuse/connections - -case "$1" in - start) - stat_busy "Starting fuse" - if ! grep -qw fuse /proc/filesystems; then - modprobe fuse >/dev/null 2>&1 - if [ $? -gt 0 ]; then - stat_fail - exit 1 - fi - fi - if grep -qw fusectl /proc/filesystems && ! grep -qw $FUSECTL /proc/mounts; then - mount -t fusectl none $FUSECTL >/dev/null 2>&1 - if [ $? -gt 0 ]; then - stat_fail - exit 1 - fi - fi - add_daemon fuse - stat_done - ;; - stop) - stat_busy "Stopping fuse" - umount $FUSECTL >/dev/null 2>&1 - rmmod fuse >/dev/null 2>&1 - if [ $? -gt 0 ]; then - stat_fail - else - rm_daemon fuse - stat_done - fi - ;; - restart) - $0 stop - sleep 1 - $0 start - ;; - *) - echo "usage: $0 {start|stop|restart}" -esac -exit 0 Copied: fuse/repos/extra-i686/fuse.rc.d (from rev 149636, fuse/trunk/fuse.rc.d) =================================================================== --- extra-i686/fuse.rc.d (rev 0) +++ extra-i686/fuse.rc.d 2012-02-08 21:50:56 UTC (rev 149637) @@ -0,0 +1,49 @@ +#!/bin/bash +# +# fuse Init script for Filesystem in Userspace +# Based on the script by Miklos Szeredi <mik...@szeredi.hu> + +. /etc/rc.conf +. /etc/rc.d/functions +FUSECTL=/sys/fs/fuse/connections + +case "$1" in + start) + stat_busy "Starting fuse" + if ! grep -qw fuse /proc/filesystems; then + modprobe fuse >/dev/null 2>&1 + if [ $? -gt 0 ]; then + stat_fail + exit 1 + fi + fi + if grep -qw fusectl /proc/filesystems && ! grep -qw $FUSECTL /proc/mounts; then + mount -t fusectl none $FUSECTL >/dev/null 2>&1 + if [ $? -gt 0 ]; then + stat_fail + exit 1 + fi + fi + add_daemon fuse + stat_done + ;; + stop) + stat_busy "Stopping fuse" + umount $FUSECTL >/dev/null 2>&1 + rmmod fuse >/dev/null 2>&1 + if [ $? -gt 0 ]; then + stat_fail + else + rm_daemon fuse + stat_done + fi + ;; + restart) + $0 stop + sleep 1 + $0 start + ;; + *) + echo "usage: $0 {start|stop|restart}" +esac +exit 0 Deleted: extra-x86_64/PKGBUILD =================================================================== --- extra-x86_64/PKGBUILD 2012-02-08 21:50:11 UTC (rev 149636) +++ extra-x86_64/PKGBUILD 2012-02-08 21:50:56 UTC (rev 149637) @@ -1,61 +0,0 @@ -# $Id$ -# Maintainer: Ronald van Haren <ronald.archlinux.org> -# Contributor: Mark Rosenstand <m...@archlinux.org> - -pkgname=fuse -pkgver=2.8.6 -pkgrel=1 -pkgdesc="A library that makes it possible to implement a filesystem in a userspace program." -arch=('i686' 'x86_64') -url="http://fuse.sourceforge.net/" -license="GPL2" -depends=('glibc') -makedepends=('pkg-config') -backup=(etc/fuse.conf) -install=fuse.install -source=(http://downloads.sourceforge.net/$pkgname/$pkgname-$pkgver.tar.gz - 'fuse.conf') -options=(!libtool) -sha1sums=('c2c0f9fff8bfee217da200888123e5abb5b498f2' - '3b42e37a741d4651099225987dc40e7f02a716ad') -build() { - cd ${srcdir}/${pkgname}-${pkgver} - - # fix building with glibc-2.14 - sed -i '1i#define _GNU_SOURCE' util/fusermount.c - - ./configure --prefix=/usr --enable-lib \ - --enable-util --bindir=/bin - make -} - -package() { - cd ${srcdir}/${pkgname}-${pkgver} - - make DESTDIR=${pkgdir} install - - # static device nodes will cause collision. - rm -rf ${pkgdir}/dev - - # Remove init script in wrong path - # Don't add our own for now, as fusectl fs oopses on 2.6.18 - rm -rf ${pkgdir}/etc/init.d - #install -D -m755 ${srcdir}/fuse.rc.d ${pkgdir}/etc/rc.d/fuse - - install -d ${pkgdir}/lib - mv ${pkgdir}/usr/lib/libfuse.so.${pkgver} ${pkgdir}/lib/ - ln -s ../../lib/libfuse.so.${pkgver} ${pkgdir}/usr/lib/libfuse.so.${pkgver} - ln -s libfuse.so.${pkgver} ${pkgdir}/lib/libfuse.so.2 - mv ${pkgdir}/usr/lib/libulockmgr.so.1.0.1 ${pkgdir}/lib/ - ln -s ../../lib/libulockmgr.so.1.0.1 ${pkgdir}/usr/lib/libulockmgr.so.1.0.1 - ln -s libulockmgr.so.1.0.1 ${pkgdir}/lib/libulockmgr.so.1 - - # install sample config file - install -Dm644 ${srcdir}/fuse.conf ${pkgdir}/etc/fuse.conf - # Fix udev rule location - install -d -m755 "${pkgdir}/lib" - mv "${pkgdir}/etc/udev" "${pkgdir}/lib/" - - # remove udev rules (should already be in udev package} - rm -f ${pkgdir}/lib/udev/rules.d/99-fuse.rules -} Copied: fuse/repos/extra-x86_64/PKGBUILD (from rev 149636, fuse/trunk/PKGBUILD) =================================================================== --- extra-x86_64/PKGBUILD (rev 0) +++ extra-x86_64/PKGBUILD 2012-02-08 21:50:56 UTC (rev 149637) @@ -0,0 +1,63 @@ +# $Id$ +# Maintainer: Ronald van Haren <ronald.archlinux.org> +# Contributor: Mark Rosenstand <m...@archlinux.org> + +pkgname=fuse +pkgver=2.8.7 +pkgrel=1 +pkgdesc="A library that makes it possible to implement a filesystem in a userspace program." +arch=('i686' 'x86_64') +url="http://fuse.sourceforge.net/" +license="GPL2" +depends=('glibc') +makedepends=('pkg-config') +backup=(etc/fuse.conf) +install=fuse.install +source=(http://downloads.sourceforge.net/$pkgname/$pkgname-$pkgver.tar.gz + 'fuse.conf') +options=(!libtool) +sha1sums=('284f22401131ec148bd04362dc86f7b0e94fb5f4' + '3b42e37a741d4651099225987dc40e7f02a716ad') + +build() { + cd ${srcdir}/${pkgname}-${pkgver} + + # fix building with glibc-2.14 + sed -i '1i#define _GNU_SOURCE' util/fusermount.c + + ./configure --prefix=/usr --enable-lib \ + --enable-util --bindir=/bin + make +} + +package() { + cd ${srcdir}/${pkgname}-${pkgver} + + make DESTDIR=${pkgdir} install + + # static device nodes will cause collision. + rm -rf ${pkgdir}/dev + + # Remove init script in wrong path + # Don't add our own for now, as fusectl fs oopses on 2.6.18 + rm -rf ${pkgdir}/etc/init.d + #install -D -m755 ${srcdir}/fuse.rc.d ${pkgdir}/etc/rc.d/fuse + + install -d ${pkgdir}/lib + mv ${pkgdir}/usr/lib/libfuse.so.${pkgver} ${pkgdir}/lib/ + ln -s ../../lib/libfuse.so.${pkgver} ${pkgdir}/usr/lib/libfuse.so.${pkgver} + ln -s libfuse.so.${pkgver} ${pkgdir}/lib/libfuse.so.2 + mv ${pkgdir}/usr/lib/libulockmgr.so.1.0.1 ${pkgdir}/lib/ + ln -s ../../lib/libulockmgr.so.1.0.1 ${pkgdir}/usr/lib/libulockmgr.so.1.0.1 + ln -s libulockmgr.so.1.0.1 ${pkgdir}/lib/libulockmgr.so.1 + + # install sample config file + install -Dm644 ${srcdir}/fuse.conf ${pkgdir}/etc/fuse.conf + + # Fix udev rule location + install -d -m755 "${pkgdir}/lib" + mv "${pkgdir}/etc/udev" "${pkgdir}/lib/" + + # remove udev rules (should already be in udev package} + rm -f ${pkgdir}/lib/udev/rules.d/99-fuse.rules +} Deleted: extra-x86_64/fuse.conf =================================================================== --- extra-x86_64/fuse.conf 2012-02-08 21:50:11 UTC (rev 149636) +++ extra-x86_64/fuse.conf 2012-02-08 21:50:56 UTC (rev 149637) @@ -1,9 +0,0 @@ -# Set the maximum number of FUSE mounts allowed to non-root users. -# The default is 1000. -# -#mount_max = 1000 - -# Allow non-root users to specify the 'allow_other' or 'allow_root' -# mount options. -# -#user_allow_other Copied: fuse/repos/extra-x86_64/fuse.conf (from rev 149636, fuse/trunk/fuse.conf) =================================================================== --- extra-x86_64/fuse.conf (rev 0) +++ extra-x86_64/fuse.conf 2012-02-08 21:50:56 UTC (rev 149637) @@ -0,0 +1,9 @@ +# Set the maximum number of FUSE mounts allowed to non-root users. +# The default is 1000. +# +#mount_max = 1000 + +# Allow non-root users to specify the 'allow_other' or 'allow_root' +# mount options. +# +#user_allow_other Deleted: extra-x86_64/fuse.install =================================================================== --- extra-x86_64/fuse.install 2012-02-08 21:50:11 UTC (rev 149636) +++ extra-x86_64/fuse.install 2012-02-08 21:50:56 UTC (rev 149637) @@ -1,10 +0,0 @@ -post_install() { - cat << 'EOM' -==> You must load the fuse kernel module to use FUSE. - -> Run 'modprobe fuse' to load the module now. - -> Add fuse to $MODULES in /etc/rc.conf to load on every boot. -==> You will need a /dev/fuse device node to use FUSE. - -> If you use udev, nothing needs to be done - -> For a static /dev, run: mknod /dev/fuse -m 0666 c 10 229 -EOM -} Copied: fuse/repos/extra-x86_64/fuse.install (from rev 149636, fuse/trunk/fuse.install) =================================================================== --- extra-x86_64/fuse.install (rev 0) +++ extra-x86_64/fuse.install 2012-02-08 21:50:56 UTC (rev 149637) @@ -0,0 +1,10 @@ +post_install() { + cat << 'EOM' +==> You must load the fuse kernel module to use FUSE. + -> Run 'modprobe fuse' to load the module now. + -> Add fuse to $MODULES in /etc/rc.conf to load on every boot. +==> You will need a /dev/fuse device node to use FUSE. + -> If you use udev, nothing needs to be done + -> For a static /dev, run: mknod /dev/fuse -m 0666 c 10 229 +EOM +} Deleted: extra-x86_64/fuse.rc.d =================================================================== --- extra-x86_64/fuse.rc.d 2012-02-08 21:50:11 UTC (rev 149636) +++ extra-x86_64/fuse.rc.d 2012-02-08 21:50:56 UTC (rev 149637) @@ -1,49 +0,0 @@ -#!/bin/bash -# -# fuse Init script for Filesystem in Userspace -# Based on the script by Miklos Szeredi <mik...@szeredi.hu> - -. /etc/rc.conf -. /etc/rc.d/functions -FUSECTL=/sys/fs/fuse/connections - -case "$1" in - start) - stat_busy "Starting fuse" - if ! grep -qw fuse /proc/filesystems; then - modprobe fuse >/dev/null 2>&1 - if [ $? -gt 0 ]; then - stat_fail - exit 1 - fi - fi - if grep -qw fusectl /proc/filesystems && ! grep -qw $FUSECTL /proc/mounts; then - mount -t fusectl none $FUSECTL >/dev/null 2>&1 - if [ $? -gt 0 ]; then - stat_fail - exit 1 - fi - fi - add_daemon fuse - stat_done - ;; - stop) - stat_busy "Stopping fuse" - umount $FUSECTL >/dev/null 2>&1 - rmmod fuse >/dev/null 2>&1 - if [ $? -gt 0 ]; then - stat_fail - else - rm_daemon fuse - stat_done - fi - ;; - restart) - $0 stop - sleep 1 - $0 start - ;; - *) - echo "usage: $0 {start|stop|restart}" -esac -exit 0 Copied: fuse/repos/extra-x86_64/fuse.rc.d (from rev 149636, fuse/trunk/fuse.rc.d) =================================================================== --- extra-x86_64/fuse.rc.d (rev 0) +++ extra-x86_64/fuse.rc.d 2012-02-08 21:50:56 UTC (rev 149637) @@ -0,0 +1,49 @@ +#!/bin/bash +# +# fuse Init script for Filesystem in Userspace +# Based on the script by Miklos Szeredi <mik...@szeredi.hu> + +. /etc/rc.conf +. /etc/rc.d/functions +FUSECTL=/sys/fs/fuse/connections + +case "$1" in + start) + stat_busy "Starting fuse" + if ! grep -qw fuse /proc/filesystems; then + modprobe fuse >/dev/null 2>&1 + if [ $? -gt 0 ]; then + stat_fail + exit 1 + fi + fi + if grep -qw fusectl /proc/filesystems && ! grep -qw $FUSECTL /proc/mounts; then + mount -t fusectl none $FUSECTL >/dev/null 2>&1 + if [ $? -gt 0 ]; then + stat_fail + exit 1 + fi + fi + add_daemon fuse + stat_done + ;; + stop) + stat_busy "Stopping fuse" + umount $FUSECTL >/dev/null 2>&1 + rmmod fuse >/dev/null 2>&1 + if [ $? -gt 0 ]; then + stat_fail + else + rm_daemon fuse + stat_done + fi + ;; + restart) + $0 stop + sleep 1 + $0 start + ;; + *) + echo "usage: $0 {start|stop|restart}" +esac +exit 0