Date: Friday, May 16, 2014 @ 12:02:52 Author: arcanis Revision: 111307
archrelease: copy trunk to community-staging-i686, community-staging-x86_64 Added: sage-mathematics/repos/community-staging-i686/ sage-mathematics/repos/community-staging-i686/PKGBUILD (from rev 111306, sage-mathematics/trunk/PKGBUILD) sage-mathematics/repos/community-staging-i686/gf2x-sse2-i686.patch (from rev 111306, sage-mathematics/trunk/gf2x-sse2-i686.patch) sage-mathematics/repos/community-staging-i686/python-readline.patch (from rev 111306, sage-mathematics/trunk/python-readline.patch) sage-mathematics/repos/community-staging-i686/sage-mathematics.install (from rev 111306, sage-mathematics/trunk/sage-mathematics.install) sage-mathematics/repos/community-staging-i686/sage.service (from rev 111306, sage-mathematics/trunk/sage.service) sage-mathematics/repos/community-staging-x86_64/ sage-mathematics/repos/community-staging-x86_64/PKGBUILD (from rev 111306, sage-mathematics/trunk/PKGBUILD) sage-mathematics/repos/community-staging-x86_64/gf2x-sse2-i686.patch (from rev 111306, sage-mathematics/trunk/gf2x-sse2-i686.patch) sage-mathematics/repos/community-staging-x86_64/python-readline.patch (from rev 111306, sage-mathematics/trunk/python-readline.patch) sage-mathematics/repos/community-staging-x86_64/sage-mathematics.install (from rev 111306, sage-mathematics/trunk/sage-mathematics.install) sage-mathematics/repos/community-staging-x86_64/sage.service (from rev 111306, sage-mathematics/trunk/sage.service) ---------------------------------------------------+ community-staging-i686/PKGBUILD | 130 ++++++++++++++++++++ community-staging-i686/gf2x-sse2-i686.patch | 10 + community-staging-i686/python-readline.patch | 27 ++++ community-staging-i686/sage-mathematics.install | 56 ++++++++ community-staging-i686/sage.service | 8 + community-staging-x86_64/PKGBUILD | 130 ++++++++++++++++++++ community-staging-x86_64/gf2x-sse2-i686.patch | 10 + community-staging-x86_64/python-readline.patch | 27 ++++ community-staging-x86_64/sage-mathematics.install | 56 ++++++++ community-staging-x86_64/sage.service | 8 + 10 files changed, 462 insertions(+) Copied: sage-mathematics/repos/community-staging-i686/PKGBUILD (from rev 111306, sage-mathematics/trunk/PKGBUILD) =================================================================== --- community-staging-i686/PKGBUILD (rev 0) +++ community-staging-i686/PKGBUILD 2014-05-16 10:02:52 UTC (rev 111307) @@ -0,0 +1,130 @@ +# $Id$ +# Maintainer: Evgeniy Alekseev <arcanis.arch at gmail dot com> +# Contributor: Daniel Wallace <danielwallace at gtmanfred dot com> +# Contributor: Antonio Rojas <nqn1976 at gmail dot com> +# Contributor: Thomas Dziedzic <gostrc at gmail dot com> +# Contributor: Osman Ugus <ugus11 at yahoo dot com> +# Contributor: Stefan Husmann <stefan-husmann at t-online dot de> +# Special thanks to Nareto for moving the compile from the .install to the PKGBUILD + +pkgname=sage-mathematics +pkgver=6.2 +pkgrel=2 +pkgdesc="Open Source Mathematics Software, free alternative to Magma, Maple, Mathematica, and Matlab" +arch=('i686' 'x86_64') +url="http://www.sagemath.org" +license=('GPL') +#depends=('desktop-file-utils' 'java-environment=7' 'libjpeg-turbo' 'libtiff' 'libxmu' 'sqlite' 'xz') +depends=('freetype2' 'libatomic_ops') +makedepends=('desktop-file-utils' 'gcc-fortran' 'gendesk') +optdepends=('imagemagick: some plotting functionality benefits from it' + 'texlive-core: some plotting functionality benefits from it, also to use SageTeX' + 'openssh: to use the notebook in secure mode' + 'ffmpeg: to show animations' + 'cairo: R plots') +source=("http://sage.math.washington.edu/home/release/sage-${pkgver}/sage-${pkgver}.tar" + "sage.service" + "gf2x-sse2-i686.patch" + "python-readline.patch") +install="${pkgname}.install" +md5sums=('71aa49875797c001ce0a31409f5a1762' + '985da1c1d1dcdc3ea9aa73035cb7996b' + 'f9d7aba4f758f4605164eb84b9e1e3ba' + '9b27884ba756eb7990728baedf162665') + +prepare() { + # create *.desktop file + gendesk -f -n \ + --pkgname="sage-notebook" \ + --pkgdesc="Sage notebook" \ + --name="Sage" \ + --exec="/opt/sage/sage -notebook" \ + --terminal=true \ + --categories="Education;Science;Math" \ + --custom="X-DCOP-ServiceType= +X-KDE-SubstituteUID=false +X-KDE-Username=" + + # create DOT_SAGE directory + if [[ -d ${srcdir}/build ]]; then + rm -rf "${srcdir}/build" + fi + mkdir "${srcdir}/build" + + # according to FS#34769 + sed -e 's/FREETYPE/#FREETYPE/' -i "${srcdir}/sage-${pkgver}/build/install" + # according to FS#39533 + cp "${srcdir}/python-readline.patch" "${srcdir}/sage-${pkgver}/build/pkgs/python/patches/readline.patch" + sed -e 's/READLINE/#READLINE/' -i "${srcdir}/sage-${pkgver}/build/install" + # disable building gf2x with sse2 for i686 + if [ "${CARCH}" == "i686" ]; then + cp "${srcdir}/gf2x-sse2-i686.patch" "${srcdir}/sage-${pkgver}/build/pkgs/gf2x/patches/sse2.patch" + fi +} + +build() { + cd "sage-${pkgver}" + + # disable default makepkg flags (needed for singular and libgap) + unset CFLAGS + unset CXXFLAGS + unset LDFLAGS + ## flags + # do not build own gcc + export SAGE_INSTALL_GCC='no' + # disable debug + export SAGE_DEBUG='no' + # enable fat binaries + export SAGE_FAT_BINARY='yes' + # can't write to root in a clean chroot + export DOT_SAGE="${srcdir}/build" + # singular is broken + export CPP='/usr/bin/cpp' + + make +} + +<< COMMENT +check() { + cd "sage-${pkgver}" + + make test + #make ptestlong +} +COMMENT + +package() { + cd "${srcdir}/sage-${pkgver}/" + # remove build logs + rm -f *.log + rm -rf "${srcdir}/sage-${pkgver}/"{logs,upstream} + # do NOT remove build directory! + + # cp because make install is experimental and will corrupt the install + install -dm755 "${pkgdir}/opt/sage" + cp -r * "${pkgdir}/opt/sage/" + + # move SageTeX files to more appropriate directory + install -dm755 "${pkgdir}/usr/share" + mv "${pkgdir}/opt/sage/local/share/texmf" "${pkgdir}/usr/share" + + # according to FS#37090 + # install scripts + install -dm755 "${pkgdir}/usr/bin" + ./sage -c "install_scripts('${pkgdir}/usr/bin', ignore_existing=True)" + # rename scripts to avoid conflicts + for ITEM in $(ls "${pkgdir}/usr/bin"); do + mv "${pkgdir}/usr/bin/${ITEM}" "${pkgdir}/usr/bin/sage-${ITEM}" + done + ln -s "/opt/sage/sage" "${pkgdir}/usr/bin/sage" + + # install a systemd user unit + install -Dm644 "${srcdir}/sage.service" "${pkgdir}/usr/lib/systemd/user/sage.service" + # install *.desktop and icon files + install -Dm644 "${srcdir}/sage-notebook.desktop" \ + "${pkgdir}/usr/share/applications/sage-notebook.desktop" + install -Dm644 "${pkgdir}/opt/sage/local/lib/python2.7/site-packages/sagenb-0.10.8.2-py2.7.egg/sagenb/data/sage/images/icon48x48.png" \ + "${pkgdir}/usr/share/pixmaps/sage-notebook.png" +} + +# vim :set ts=2 sw=2 et: Copied: sage-mathematics/repos/community-staging-i686/gf2x-sse2-i686.patch (from rev 111306, sage-mathematics/trunk/gf2x-sse2-i686.patch) =================================================================== --- community-staging-i686/gf2x-sse2-i686.patch (rev 0) +++ community-staging-i686/gf2x-sse2-i686.patch 2014-05-16 10:02:52 UTC (rev 111307) @@ -0,0 +1,10 @@ +--- a/configure 2012-06-01 00:54:00.000000000 +0400 ++++ b/configure 2014-05-11 19:02:27.035606966 +0400 +@@ -1184,6 +1184,7 @@ + esac + done + ++enable_sse2="no" + if test -n "$ac_prev"; then + ac_option=--`echo $ac_prev | sed 's/_/-/g'` + as_fn_error $? "missing argument to $ac_option" Copied: sage-mathematics/repos/community-staging-i686/python-readline.patch (from rev 111306, sage-mathematics/trunk/python-readline.patch) =================================================================== --- community-staging-i686/python-readline.patch (rev 0) +++ community-staging-i686/python-readline.patch 2014-05-16 10:02:52 UTC (rev 111307) @@ -0,0 +1,27 @@ +--- a/Modules/readline.c 2013-05-12 07:32:51.000000000 +0400 ++++ b/Modules/readline.c 2014-03-19 16:06:05.663684577 +0400 +@@ -850,7 +850,7 @@ + * before calling the normal completer */ + + static char ** +-flex_complete(char *text, int start, int end) ++flex_complete(const char *text, int start, int end) + { + #ifdef HAVE_RL_COMPLETION_APPEND_CHARACTER + rl_completion_append_character ='\0'; +@@ -898,12 +898,12 @@ + rl_bind_key_in_map ('\t', rl_complete, emacs_meta_keymap); + rl_bind_key_in_map ('\033', rl_complete, emacs_meta_keymap); + /* Set our hook functions */ +- rl_startup_hook = (Function *)on_startup_hook; ++ rl_startup_hook = on_startup_hook; + #ifdef HAVE_RL_PRE_INPUT_HOOK +- rl_pre_input_hook = (Function *)on_pre_input_hook; ++ rl_pre_input_hook = on_pre_input_hook; + #endif + /* Set our completion function */ +- rl_attempted_completion_function = (CPPFunction *)flex_complete; ++ rl_attempted_completion_function = flex_complete; + /* Set Python word break characters */ + completer_word_break_characters = + rl_completer_word_break_characters = Copied: sage-mathematics/repos/community-staging-i686/sage-mathematics.install (from rev 111306, sage-mathematics/trunk/sage-mathematics.install) =================================================================== --- community-staging-i686/sage-mathematics.install (rev 0) +++ community-staging-i686/sage-mathematics.install 2014-05-16 10:02:52 UTC (rev 111307) @@ -0,0 +1,56 @@ +post_install() { + cd /opt/sage + update-desktop-database -q + + # add sagemath user for the daemon + useradd -r -c 'Sage daemon' -d /opt/sage -s /bin/false sagemath + + # Update LaTeX db to point to SageTeX + if [ -f /usr/bin/texhash ]; then + /usr/bin/texhash /usr/share/texmf + else + echo 'Warning: could not find /usr/bin/texhash' + echo 'SageTeX has been installed but you need to run:' + echo '# texhash /usr/share/texmf' + echo 'So that LaTeX will be able to find it.' + fi + +echo ' + ___ +/ (_) o | +\__ _ _ __ | +/ / |/ | | / \_| | | +\___/ | |_/|/\__/ \_/|/o + /| /| + \| \| + ________________________________ +< sage-mathematics, I mean, MOO! > + -------------------------------- + \ ^__^ + \ (oo)\_______ + (__)\ )\/\ + ||----w | + || || +' + +} + +post_upgrade() { + post_install $1 + echo "There is now a user session unit included to run a sage notebook as your user." + echo "The wiki includes a guide on starting systemd user sessions" +} + +post_remove() { + # Update LaTeX db to remove SageTeX entries + update-desktop-database -q + if [ -f /usr/bin/texhash ]; then + /usr/bin/texhash /usr/share/texmf + fi + + # remove the sagemath daemon user + userdel sagemath + + # clean up left overs + rm -rf /opt/sage +} Copied: sage-mathematics/repos/community-staging-i686/sage.service (from rev 111306, sage-mathematics/trunk/sage.service) =================================================================== --- community-staging-i686/sage.service (rev 0) +++ community-staging-i686/sage.service 2014-05-16 10:02:52 UTC (rev 111307) @@ -0,0 +1,8 @@ +[Unit] +Description=A free open-source mathematics software system + +[Service] +ExecStart=/opt/sage/sage -n + +[Install] +WantedBy=default.target Copied: sage-mathematics/repos/community-staging-x86_64/PKGBUILD (from rev 111306, sage-mathematics/trunk/PKGBUILD) =================================================================== --- community-staging-x86_64/PKGBUILD (rev 0) +++ community-staging-x86_64/PKGBUILD 2014-05-16 10:02:52 UTC (rev 111307) @@ -0,0 +1,130 @@ +# $Id$ +# Maintainer: Evgeniy Alekseev <arcanis.arch at gmail dot com> +# Contributor: Daniel Wallace <danielwallace at gtmanfred dot com> +# Contributor: Antonio Rojas <nqn1976 at gmail dot com> +# Contributor: Thomas Dziedzic <gostrc at gmail dot com> +# Contributor: Osman Ugus <ugus11 at yahoo dot com> +# Contributor: Stefan Husmann <stefan-husmann at t-online dot de> +# Special thanks to Nareto for moving the compile from the .install to the PKGBUILD + +pkgname=sage-mathematics +pkgver=6.2 +pkgrel=2 +pkgdesc="Open Source Mathematics Software, free alternative to Magma, Maple, Mathematica, and Matlab" +arch=('i686' 'x86_64') +url="http://www.sagemath.org" +license=('GPL') +#depends=('desktop-file-utils' 'java-environment=7' 'libjpeg-turbo' 'libtiff' 'libxmu' 'sqlite' 'xz') +depends=('freetype2' 'libatomic_ops') +makedepends=('desktop-file-utils' 'gcc-fortran' 'gendesk') +optdepends=('imagemagick: some plotting functionality benefits from it' + 'texlive-core: some plotting functionality benefits from it, also to use SageTeX' + 'openssh: to use the notebook in secure mode' + 'ffmpeg: to show animations' + 'cairo: R plots') +source=("http://sage.math.washington.edu/home/release/sage-${pkgver}/sage-${pkgver}.tar" + "sage.service" + "gf2x-sse2-i686.patch" + "python-readline.patch") +install="${pkgname}.install" +md5sums=('71aa49875797c001ce0a31409f5a1762' + '985da1c1d1dcdc3ea9aa73035cb7996b' + 'f9d7aba4f758f4605164eb84b9e1e3ba' + '9b27884ba756eb7990728baedf162665') + +prepare() { + # create *.desktop file + gendesk -f -n \ + --pkgname="sage-notebook" \ + --pkgdesc="Sage notebook" \ + --name="Sage" \ + --exec="/opt/sage/sage -notebook" \ + --terminal=true \ + --categories="Education;Science;Math" \ + --custom="X-DCOP-ServiceType= +X-KDE-SubstituteUID=false +X-KDE-Username=" + + # create DOT_SAGE directory + if [[ -d ${srcdir}/build ]]; then + rm -rf "${srcdir}/build" + fi + mkdir "${srcdir}/build" + + # according to FS#34769 + sed -e 's/FREETYPE/#FREETYPE/' -i "${srcdir}/sage-${pkgver}/build/install" + # according to FS#39533 + cp "${srcdir}/python-readline.patch" "${srcdir}/sage-${pkgver}/build/pkgs/python/patches/readline.patch" + sed -e 's/READLINE/#READLINE/' -i "${srcdir}/sage-${pkgver}/build/install" + # disable building gf2x with sse2 for i686 + if [ "${CARCH}" == "i686" ]; then + cp "${srcdir}/gf2x-sse2-i686.patch" "${srcdir}/sage-${pkgver}/build/pkgs/gf2x/patches/sse2.patch" + fi +} + +build() { + cd "sage-${pkgver}" + + # disable default makepkg flags (needed for singular and libgap) + unset CFLAGS + unset CXXFLAGS + unset LDFLAGS + ## flags + # do not build own gcc + export SAGE_INSTALL_GCC='no' + # disable debug + export SAGE_DEBUG='no' + # enable fat binaries + export SAGE_FAT_BINARY='yes' + # can't write to root in a clean chroot + export DOT_SAGE="${srcdir}/build" + # singular is broken + export CPP='/usr/bin/cpp' + + make +} + +<< COMMENT +check() { + cd "sage-${pkgver}" + + make test + #make ptestlong +} +COMMENT + +package() { + cd "${srcdir}/sage-${pkgver}/" + # remove build logs + rm -f *.log + rm -rf "${srcdir}/sage-${pkgver}/"{logs,upstream} + # do NOT remove build directory! + + # cp because make install is experimental and will corrupt the install + install -dm755 "${pkgdir}/opt/sage" + cp -r * "${pkgdir}/opt/sage/" + + # move SageTeX files to more appropriate directory + install -dm755 "${pkgdir}/usr/share" + mv "${pkgdir}/opt/sage/local/share/texmf" "${pkgdir}/usr/share" + + # according to FS#37090 + # install scripts + install -dm755 "${pkgdir}/usr/bin" + ./sage -c "install_scripts('${pkgdir}/usr/bin', ignore_existing=True)" + # rename scripts to avoid conflicts + for ITEM in $(ls "${pkgdir}/usr/bin"); do + mv "${pkgdir}/usr/bin/${ITEM}" "${pkgdir}/usr/bin/sage-${ITEM}" + done + ln -s "/opt/sage/sage" "${pkgdir}/usr/bin/sage" + + # install a systemd user unit + install -Dm644 "${srcdir}/sage.service" "${pkgdir}/usr/lib/systemd/user/sage.service" + # install *.desktop and icon files + install -Dm644 "${srcdir}/sage-notebook.desktop" \ + "${pkgdir}/usr/share/applications/sage-notebook.desktop" + install -Dm644 "${pkgdir}/opt/sage/local/lib/python2.7/site-packages/sagenb-0.10.8.2-py2.7.egg/sagenb/data/sage/images/icon48x48.png" \ + "${pkgdir}/usr/share/pixmaps/sage-notebook.png" +} + +# vim :set ts=2 sw=2 et: Copied: sage-mathematics/repos/community-staging-x86_64/gf2x-sse2-i686.patch (from rev 111306, sage-mathematics/trunk/gf2x-sse2-i686.patch) =================================================================== --- community-staging-x86_64/gf2x-sse2-i686.patch (rev 0) +++ community-staging-x86_64/gf2x-sse2-i686.patch 2014-05-16 10:02:52 UTC (rev 111307) @@ -0,0 +1,10 @@ +--- a/configure 2012-06-01 00:54:00.000000000 +0400 ++++ b/configure 2014-05-11 19:02:27.035606966 +0400 +@@ -1184,6 +1184,7 @@ + esac + done + ++enable_sse2="no" + if test -n "$ac_prev"; then + ac_option=--`echo $ac_prev | sed 's/_/-/g'` + as_fn_error $? "missing argument to $ac_option" Copied: sage-mathematics/repos/community-staging-x86_64/python-readline.patch (from rev 111306, sage-mathematics/trunk/python-readline.patch) =================================================================== --- community-staging-x86_64/python-readline.patch (rev 0) +++ community-staging-x86_64/python-readline.patch 2014-05-16 10:02:52 UTC (rev 111307) @@ -0,0 +1,27 @@ +--- a/Modules/readline.c 2013-05-12 07:32:51.000000000 +0400 ++++ b/Modules/readline.c 2014-03-19 16:06:05.663684577 +0400 +@@ -850,7 +850,7 @@ + * before calling the normal completer */ + + static char ** +-flex_complete(char *text, int start, int end) ++flex_complete(const char *text, int start, int end) + { + #ifdef HAVE_RL_COMPLETION_APPEND_CHARACTER + rl_completion_append_character ='\0'; +@@ -898,12 +898,12 @@ + rl_bind_key_in_map ('\t', rl_complete, emacs_meta_keymap); + rl_bind_key_in_map ('\033', rl_complete, emacs_meta_keymap); + /* Set our hook functions */ +- rl_startup_hook = (Function *)on_startup_hook; ++ rl_startup_hook = on_startup_hook; + #ifdef HAVE_RL_PRE_INPUT_HOOK +- rl_pre_input_hook = (Function *)on_pre_input_hook; ++ rl_pre_input_hook = on_pre_input_hook; + #endif + /* Set our completion function */ +- rl_attempted_completion_function = (CPPFunction *)flex_complete; ++ rl_attempted_completion_function = flex_complete; + /* Set Python word break characters */ + completer_word_break_characters = + rl_completer_word_break_characters = Copied: sage-mathematics/repos/community-staging-x86_64/sage-mathematics.install (from rev 111306, sage-mathematics/trunk/sage-mathematics.install) =================================================================== --- community-staging-x86_64/sage-mathematics.install (rev 0) +++ community-staging-x86_64/sage-mathematics.install 2014-05-16 10:02:52 UTC (rev 111307) @@ -0,0 +1,56 @@ +post_install() { + cd /opt/sage + update-desktop-database -q + + # add sagemath user for the daemon + useradd -r -c 'Sage daemon' -d /opt/sage -s /bin/false sagemath + + # Update LaTeX db to point to SageTeX + if [ -f /usr/bin/texhash ]; then + /usr/bin/texhash /usr/share/texmf + else + echo 'Warning: could not find /usr/bin/texhash' + echo 'SageTeX has been installed but you need to run:' + echo '# texhash /usr/share/texmf' + echo 'So that LaTeX will be able to find it.' + fi + +echo ' + ___ +/ (_) o | +\__ _ _ __ | +/ / |/ | | / \_| | | +\___/ | |_/|/\__/ \_/|/o + /| /| + \| \| + ________________________________ +< sage-mathematics, I mean, MOO! > + -------------------------------- + \ ^__^ + \ (oo)\_______ + (__)\ )\/\ + ||----w | + || || +' + +} + +post_upgrade() { + post_install $1 + echo "There is now a user session unit included to run a sage notebook as your user." + echo "The wiki includes a guide on starting systemd user sessions" +} + +post_remove() { + # Update LaTeX db to remove SageTeX entries + update-desktop-database -q + if [ -f /usr/bin/texhash ]; then + /usr/bin/texhash /usr/share/texmf + fi + + # remove the sagemath daemon user + userdel sagemath + + # clean up left overs + rm -rf /opt/sage +} Copied: sage-mathematics/repos/community-staging-x86_64/sage.service (from rev 111306, sage-mathematics/trunk/sage.service) =================================================================== --- community-staging-x86_64/sage.service (rev 0) +++ community-staging-x86_64/sage.service 2014-05-16 10:02:52 UTC (rev 111307) @@ -0,0 +1,8 @@ +[Unit] +Description=A free open-source mathematics software system + +[Service] +ExecStart=/opt/sage/sage -n + +[Install] +WantedBy=default.target