Alexander Belkov: 2 testing/at: new aport testing/at: new aport 14 files changed, 314 insertions(+), 0 deletions(-)
09.02.2016 20:44, Leonardo Arena пишет:
Sorry to bother you directly, but I seem to have made the alpine-aports mailing list a bit messy :/ Mea culpa: I didn't check in time that 'at' aport has already been accepted, sent patches for both of my local commits and annotated them as "new aport". I don't feel it's right to address the committer (Nataniel Copa) since you first noted my package request (#5030) and gave me some useful hints. Please accept my most recent patch for the 'at' (http://lists.alpinelinux.org/alpine-aports/2385.html) with an annotation of your own - if I try to do it myself, I'm at risk to accidentally DOS the mailing list... Not planning to bother you more right now :) Thank you so much and glorious prospectives to you! Alexander Belkov On 09.02.2016 20:44, Leonardo Arena wrote:
Copy & paste the following snippet into your terminal to import this patchset into git:
curl -s https://lists.alpinelinux.org/~alpine/aports/patches/2244/mbox | git am -3Learn more about email & git
http://packages.qa.debian.org/a/at.html AT and batch delayed command scheduling utility and daemon --- testing/at/10-Makefile.in-1.patch | 11 ++++++ testing/at/10-parsetime.l-1.patch | 11 ++++++ testing/at/10-parsetime.y-1.patch | 12 ++++++ testing/at/APKBUILD | 79 +++++++++++++++++++++++++++++++++++++++ testing/at/at.allow | 1 + testing/at/at.initd | 27 +++++++++++++ testing/at/at.pre-install | 16 ++++++++ 7 files changed, 157 insertions(+) create mode 100644 testing/at/10-Makefile.in-1.patch create mode 100644 testing/at/10-parsetime.l-1.patch create mode 100644 testing/at/10-parsetime.y-1.patch create mode 100644 testing/at/APKBUILD create mode 100644 testing/at/at.allow create mode 100644 testing/at/at.initd create mode 100644 testing/at/at.pre-install diff --git a/testing/at/10-Makefile.in-1.patch b/testing/at/10-Makefile.in-1.patch new file mode 100644 index 0000000..efe662a --- /dev/null +++ b/testing/at/10-Makefile.in-1.patch @@ -0,0 +1,11 @@ +--- at-3.1.16/Makefile.in.orig ++++ at-3.1.16/Makefile.in +@@ -12,7 +12,7 @@ + man1dir = $(mandir)/man1 + man5dir = $(mandir)/man5 + man8dir = $(mandir)/man8 +-docdir = $(prefix)/doc ++docdir = $(prefix)/share/doc + atdocdir = $(docdir)/at + etcdir = @ETCDIR@ + systemdsystemunitdir = @systemdsystemunitdir@ diff --git a/testing/at/10-parsetime.l-1.patch b/testing/at/10-parsetime.l-1.patch new file mode 100644 index 0000000..30fda69 --- /dev/null +++ b/testing/at/10-parsetime.l-1.patch @@ -0,0 +1,11 @@ +--- at-3.1.16/parsetime.l.orig ++++ at-3.1.16/parsetime.l +@@ -32,6 +32,8 @@ + } while(0) + %} + ++%option noyywrap ++ + %% + + now { COPY_TOK ; return NOW; } diff --git a/testing/at/10-parsetime.y-1.patch b/testing/at/10-parsetime.y-1.patch new file mode 100644 index 0000000..33e3da2 --- /dev/null +++ b/testing/at/10-parsetime.y-1.patch @@ -0,0 +1,12 @@ +--- at-3.1.16/parsetime.orig.y ++++ at-3.1.16/parsetime.y +@@ -17,6 +17,9 @@ + extern int yylex(); + + int add_date(int number, int period); ++#ifndef __isleap ++#define __isleap(year) ((year) % 4 == 0 && ((year) % 100 != 0 || (year) % 400 == 0)) ++#endif + %} + + %union { diff --git a/testing/at/APKBUILD b/testing/at/APKBUILD new file mode 100644 index 0000000..3152a3e --- /dev/null +++ b/testing/at/APKBUILD @@ -0,0 +1,79 @@ +# Contributor: Alexander Belkov <msun00@yandex.ru> +# Maintainer: +pkgname=at +pkgver=3.1.16 +pkgrel=2 +pkgdesc="AT and batch delayed command scheduling utility and daemon" +url="http://packages.qa.debian.org/a/at.html" +arch="all" +license="GPL" +makedepends="ssmtp flex-dev byacc" +depends_dev="" +install="${pkgname}.pre-install" +options=suid +subpackages="at-doc" +source="http://http.debian.net/debian/pool/main/a/at/at_$pkgver.orig.tar.gz + 10-parsetime.l-1.patch + 10-parsetime.y-1.patch + 10-Makefile.in-1.patch + at.allow + at.initd + $install
Leonardo Arena <rnalrd@gmail.com>$install files should not go into $source
+ " + +_builddir="${srcdir}/at-${pkgver}" +prepare() { + local i + cd "$_builddir" + for i in $source; do + case $i in + *.patch) msg $i; patch -p1 -i "$srcdir"/$i || return 1;; + esac + done +} + +build() { + cd "$_builddir" + LEXLIB=-lfl \ + ./configure --prefix=/usr \ + --sbindir=/usr/sbin \ + --with-daemon_username=at \ + --with-daemon_groupname=at \ + --with-jobdir=/var/spool/atd \ + --with-atspool=/var/spool/atd || return 1 + make || return 1 +} + +package() { + cd "$_builddir" + + /usr/bin/install -D -o root -g at -m 640 "$srcdir"/at.allow \ + "$pkgdir"/etc/at.allow || return 1 + + make IROOT="$pkgdir" install || return 1 + + /usr/bin/install -m 755 -D "$srcdir"/at.initd \ + "$pkgdir"/etc/init.d/at || return 1 +} + +md5sums="d05da75d9b75d93917ffb16ab48b1e19 at_3.1.16.orig.tar.gz +abb292896ed30e1f248dfebf4c4a6fb8 10-parsetime.l-1.patch +39823f4034d2b5b2000ca717938f930f 10-parsetime.y-1.patch +519f72f88e58b5ce79aff376ec90fcc9 10-Makefile.in-1.patch +74cc1c60799e0a786ac7094b532f01b1 at.allow +1fdebfd6f648bcc0ea6a8f65acca483b at.initd +3d32764a34e2d36d8ea9788bb15302d5 at.pre-install" +sha256sums="cb9af59c6a54edce9536ba629841055409d1f89d8ae26494727a97141fb4d5c1 at_3.1.16.orig.tar.gz +0f2bc8e5dbbc55d2b45a1d1bd5bb753180539d37e298d062daf090b055e84494 10-parsetime.l-1.patch +baad966d910912a2c516fcb13f6f09b032e3ed4f677158e943c99f35cd31d9d8 10-parsetime.y-1.patch +9ef0710b066f02665819d03ac85c161398b8eef3558a4645481c1e926cb41f79 10-Makefile.in-1.patch +53175bcc0524f37b47062fafdda28e3f8eb91d519ca0a184ca71bbebe72f969a at.allow +8d2ff3dd363c951c808138b49b37156197822003f6ddf7a96838d543a906e7c2 at.initd +e08e691f914686cd17b3066e19e985b8f2eb84b668f011b1f0d43b7a2f3ff470 at.pre-install" +sha512sums="d63132536d01153c4b38499b316c8a7980cd47a75b00fb5edc6e41f24345f97b55b20e5801d50f1bde2f337acc7bdb7e318456c241415e7b7bddee7e51e68ad5 at_3.1.16.orig.tar.gz +5a8b180075be604e70d7ef311da9f143425a5e669c8fc5e58b43177fdbb0108e3ad4c5d1edea68c9b013fd92fbbad7f9dd1ea0da51ffb1e745ff9ffa244f3401 10-parsetime.l-1.patch +130e1cf3c309516d7c3eed2af24a208f82db2367df7c594001695943e8408f77d6b33597e16e128b5c4a9732f3b8c2d5225e7c3b0265512b2b1a92b24b83fcbc 10-parsetime.y-1.patch +40bdb7726b904a82125ce68971d995a623ee2fad42f7092ade227c08ba1bc07a50e184677b66c8b9375aa97370ef9dcd6f583a4f857962630e8cf51bdb7a9ef4 10-Makefile.in-1.patch +21e1bc024bd76c76b68e04614c6def5b03fd4b658e59bfde065b464b520f463711b795455e3a5c81a8a1946b2bca2f83d6c19300a4d3326ce17959a7cbc0846a at.allow +4c0a9854acabe1226306b776e315c119775f026f699364d1a20a90e454576bf411ac2c55c9899bd1a5630be2618d692d80250fe3a124e1dcc4fd557302191881 at.initd +e2ef43a9265f5e3a2d876de5f751d7011424e6b6c0948da29b268c16e67240802b948e6f1bd6a79e989282b27fe5ff0873a8deca1896288b6b93780d86cde82f at.pre-install" diff --git a/testing/at/at.allow b/testing/at/at.allow new file mode 100644 index 0000000..d8649da --- /dev/null +++ b/testing/at/at.allow @@ -0,0 +1 @@ +root diff --git a/testing/at/at.initd b/testing/at/at.initd new file mode 100644 index 0000000..dcaa6cf --- /dev/null +++ b/testing/at/at.initd @@ -0,0 +1,27 @@ +#!/sbin/openrc-run + +# Sample init.d file for alpine linux. + +name=atd +daemon=/usr/sbin/$name +
Leonardo Arena <rnalrd@gmail.com>By convention we use "command" which points to full path binary. Also, OpenRC has built-in "$SVCNAME" which is the basename of the init script.
+depend() { + after localmount +} + +start() { + ebegin "Starting command schedulng daemon ${name}" + start-stop-daemon --start --quiet \ + --pidfile /var/run/${name}.pid \ + --exec ${daemon} + eend $? +} + +stop() { + ebegin "Stopping command schedulng daemon ${name}" + start-stop-daemon --stop --quiet \ + --pidfile /var/run/$name.pid \ + --exec ${daemon} + eend $? +} +
Leonardo Arena <rnalrd@gmail.com>There are typos in "ebegin" lines. Thanks! - leo
diff --git a/testing/at/at.pre-install b/testing/at/at.pre-install new file mode 100644 index 0000000..058a9d0 --- /dev/null +++ b/testing/at/at.pre-install @@ -0,0 +1,16 @@ +#!/bin/sh + +if ! getent group at >/dev/null; then + addgroup -S at 2>/dev/null +fi + +if ! getent passwd at >/dev/null; then + adduser -H -s /bin/false -D at 2>/dev/null +fi + +if [ -z `echo " $(groups at) " | grep ' at '`] ; then + addgroup at at 2>/dev/null +fi + +exit 0 + -- 2.6.4 --- Unsubscribe: alpine-aports+unsubscribe@lists.alpinelinux.org Help: alpine-aports+help@lists.alpinelinux.org ---
Leonardo Arena <rnalrd@gmail.com>Thank you! Could you please see comments below? The first comment address something to be fixed. The other are just cosmetic bugs. On gio, 2016-02-04 at 10:38 +0000, Alexander Belkov wrote:
http://packages.qa.debian.org/a/at.html AT and batch delayed command scheduling utility and daemon This is original version of the new aport. Corrections suggested by Leonardo Arena (gratefully accepted) follow in the successive patch in session. Failed to put everything in a single patch - not a git-profi so far :/ --- testing/at/10-Makefile.in-1.patch | 11 ++++++ testing/at/10-parsetime.l-1.patch | 11 ++++++ testing/at/10-parsetime.y-1.patch | 12 ++++++ testing/at/APKBUILD | 79 +++++++++++++++++++++++++++++++++++++++ testing/at/at.allow | 1 + testing/at/at.initd | 27 +++++++++++++ testing/at/at.pre-install | 16 ++++++++ 7 files changed, 157 insertions(+) create mode 100644 testing/at/10-Makefile.in-1.patch create mode 100644 testing/at/10-parsetime.l-1.patch create mode 100644 testing/at/10-parsetime.y-1.patch create mode 100644 testing/at/APKBUILD create mode 100644 testing/at/at.allow create mode 100644 testing/at/at.initd create mode 100644 testing/at/at.pre-install diff --git a/testing/at/10-Makefile.in-1.patch b/testing/at/10-Makefile.in-1.patch new file mode 100644 index 0000000..efe662a --- /dev/null +++ b/testing/at/10-Makefile.in-1.patch @@ -0,0 +1,11 @@ +--- at-3.1.16/Makefile.in.orig ++++ at-3.1.16/Makefile.in +@@ -12,7 +12,7 @@ + man1dir = $(mandir)/man1 + man5dir = $(mandir)/man5 + man8dir = $(mandir)/man8 +-docdir = $(prefix)/doc ++docdir = $(prefix)/share/doc + atdocdir = $(docdir)/at + etcdir = @ETCDIR@ + systemdsystemunitdir = @systemdsystemunitdir@ diff --git a/testing/at/10-parsetime.l-1.patch b/testing/at/10-parsetime.l-1.patch new file mode 100644 index 0000000..30fda69 --- /dev/null +++ b/testing/at/10-parsetime.l-1.patch @@ -0,0 +1,11 @@ +--- at-3.1.16/parsetime.l.orig ++++ at-3.1.16/parsetime.l +@@ -32,6 +32,8 @@ + } while(0) + %} + ++%option noyywrap ++ + %% + + now { COPY_TOK ; return NOW; } diff --git a/testing/at/10-parsetime.y-1.patch b/testing/at/10-parsetime.y-1.patch new file mode 100644 index 0000000..33e3da2 --- /dev/null +++ b/testing/at/10-parsetime.y-1.patch @@ -0,0 +1,12 @@ +--- at-3.1.16/parsetime.orig.y ++++ at-3.1.16/parsetime.y +@@ -17,6 +17,9 @@ + extern int yylex(); + + int add_date(int number, int period); ++#ifndef __isleap ++#define __isleap(year) ((year) % 4 == 0 && ((year) % 100 != 0 || (year) % 400 == 0)) ++#endif + %} + + %union { diff --git a/testing/at/APKBUILD b/testing/at/APKBUILD new file mode 100644 index 0000000..3152a3e --- /dev/null +++ b/testing/at/APKBUILD @@ -0,0 +1,79 @@ +# Contributor: Alexander Belkov <msun00@yandex.ru> +# Maintainer: +pkgname=at +pkgver=3.1.16 +pkgrel=2 +pkgdesc="AT and batch delayed command scheduling utility and daemon" +url="http://packages.qa.debian.org/a/at.html" +arch="all" +license="GPL" +makedepends="ssmtp flex-dev byacc" +depends_dev="" +install="${pkgname}.pre-install" +options=suid +subpackages="at-doc" +source="http://http.debian.net/debian/pool/main/a/at/at_$pkgver.orig.tar.gz + 10-parsetime.l-1.patch + 10-parsetime.y-1.patch + 10-Makefile.in-1.patch + at.allow + at.initd + $install + " + +_builddir="${srcdir}/at-${pkgver}" +prepare() { + local i + cd "$_builddir" + for i in $source; do + case $i in + *.patch) msg $i; patch -p1 -i "$srcdir"/$i || return 1;; + esac + done +} + +build() { + cd "$_builddir" + LEXLIB=-lfl \ + ./configure --prefix=/usr \ + --sbindir=/usr/sbin \ + --with-daemon_username=at \ + --with-daemon_groupname=at \ + --with-jobdir=/var/spool/atd \ + --with-atspool=/var/spool/atd || return 1 + make || return 1 +} + +package() { + cd "$_builddir" + + /usr/bin/install -D -o root -g at -m 640 "$srcdir"/at.allow \ + "$pkgdir"/etc/at.allow || return 1 + + make IROOT="$pkgdir" install || return 1 + + /usr/bin/install -m 755 -D "$srcdir"/at.initd \ + "$pkgdir"/etc/init.d/at || return 1 +} + +md5sums="d05da75d9b75d93917ffb16ab48b1e19 at_3.1.16.orig.tar.gz +abb292896ed30e1f248dfebf4c4a6fb8 10-parsetime.l-1.patch +39823f4034d2b5b2000ca717938f930f 10-parsetime.y-1.patch +519f72f88e58b5ce79aff376ec90fcc9 10-Makefile.in-1.patch +74cc1c60799e0a786ac7094b532f01b1 at.allow +1fdebfd6f648bcc0ea6a8f65acca483b at.initd +3d32764a34e2d36d8ea9788bb15302d5 at.pre-install" +sha256sums="cb9af59c6a54edce9536ba629841055409d1f89d8ae26494727a97141fb4d5c1 at_3.1.16.orig.tar.gz +0f2bc8e5dbbc55d2b45a1d1bd5bb753180539d37e298d062daf090b055e84494 10-parsetime.l-1.patch +baad966d910912a2c516fcb13f6f09b032e3ed4f677158e943c99f35cd31d9d8 10-parsetime.y-1.patch +9ef0710b066f02665819d03ac85c161398b8eef3558a4645481c1e926cb41f79 10-Makefile.in-1.patch +53175bcc0524f37b47062fafdda28e3f8eb91d519ca0a184ca71bbebe72f969a at.allow +8d2ff3dd363c951c808138b49b37156197822003f6ddf7a96838d543a906e7c2 at.initd +e08e691f914686cd17b3066e19e985b8f2eb84b668f011b1f0d43b7a2f3ff470 at.pre-install" +sha512sums="d63132536d01153c4b38499b316c8a7980cd47a75b00fb5edc6e41f24345f97b55b20e5801d50f1bde2f337acc7bdb7e318456c241415e7b7bddee7e51e68ad5 at_3.1.16.orig.tar.gz +5a8b180075be604e70d7ef311da9f143425a5e669c8fc5e58b43177fdbb0108e3ad4c5d1edea68c9b013fd92fbbad7f9dd1ea0da51ffb1e745ff9ffa244f3401 10-parsetime.l-1.patch +130e1cf3c309516d7c3eed2af24a208f82db2367df7c594001695943e8408f77d6b33597e16e128b5c4a9732f3b8c2d5225e7c3b0265512b2b1a92b24b83fcbc 10-parsetime.y-1.patch +40bdb7726b904a82125ce68971d995a623ee2fad42f7092ade227c08ba1bc07a50e184677b66c8b9375aa97370ef9dcd6f583a4f857962630e8cf51bdb7a9ef4 10-Makefile.in-1.patch +21e1bc024bd76c76b68e04614c6def5b03fd4b658e59bfde065b464b520f463711b795455e3a5c81a8a1946b2bca2f83d6c19300a4d3326ce17959a7cbc0846a at.allow +4c0a9854acabe1226306b776e315c119775f026f699364d1a20a90e454576bf411ac2c55c9899bd1a5630be2618d692d80250fe3a124e1dcc4fd557302191881 at.initd +e2ef43a9265f5e3a2d876de5f751d7011424e6b6c0948da29b268c16e67240802b948e6f1bd6a79e989282b27fe5ff0873a8deca1896288b6b93780d86cde82f at.pre-install" diff --git a/testing/at/at.allow b/testing/at/at.allow new file mode 100644 index 0000000..d8649da --- /dev/null +++ b/testing/at/at.allow @@ -0,0 +1 @@ +root diff --git a/testing/at/at.initd b/testing/at/at.initd new file mode 100644 index 0000000..dcaa6cf --- /dev/null +++ b/testing/at/at.initd @@ -0,0 +1,27 @@ +#!/sbin/openrc-run + +# Sample init.d file for alpine linux. + +name=atd +daemon=/usr/sbin/$name + +depend() { + after localmount +} + +start() { + ebegin "Starting command schedulng daemon ${name}" + start-stop-daemon --start --quiet \ + --pidfile /var/run/${name}.pid \ + --exec ${daemon} + eend $? +} + +stop() { + ebegin "Stopping command schedulng daemon ${name}" + start-stop-daemon --stop --quiet \ + --pidfile /var/run/$name.pid \ + --exec ${daemon} + eend $? +} + diff --git a/testing/at/at.pre-install b/testing/at/at.pre-install new file mode 100644 index 0000000..058a9d0 --- /dev/null +++ b/testing/at/at.pre-install @@ -0,0 +1,16 @@ +#!/bin/sh + +if ! getent group at >/dev/null; then + addgroup -S at 2>/dev/null +fi + +if ! getent passwd at >/dev/null; then + adduser -H -s /bin/false -D at 2>/dev/null +fi + +if [ -z `echo " $(groups at) " | grep ' at '`] ; then + addgroup at at 2>/dev/null +fi + +exit 0 + -- 2.6.4 --- Unsubscribe: alpine-aports+unsubscribe@lists.alpinelinux.org Help: alpine-aports+help@lists.alpinelinux.org ---