diff options
author | Robin H. Johnson <robbat2@gentoo.org> | 2015-08-08 13:49:04 -0700 |
---|---|---|
committer | Robin H. Johnson <robbat2@gentoo.org> | 2015-08-08 17:38:18 -0700 |
commit | 56bd759df1d0c750a065b8c845e93d5dfa6b549d (patch) | |
tree | 3f91093cdb475e565ae857f1c5a7fd339e2d781e /sci-misc/boinc | |
download | gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.gz gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.bz2 gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.zip |
proj/gentoo: Initial commit
This commit represents a new era for Gentoo:
Storing the gentoo-x86 tree in Git, as converted from CVS.
This commit is the start of the NEW history.
Any historical data is intended to be grafted onto this point.
Creation process:
1. Take final CVS checkout snapshot
2. Remove ALL ChangeLog* files
3. Transform all Manifests to thin
4. Remove empty Manifests
5. Convert all stale $Header$/$Id$ CVS keywords to non-expanded Git $Id$
5.1. Do not touch files with -kb/-ko keyword flags.
Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
X-Thanks: Alec Warner <antarus@gentoo.org> - did the GSoC 2006 migration tests
X-Thanks: Robin H. Johnson <robbat2@gentoo.org> - infra guy, herding this project
X-Thanks: Nguyen Thai Ngoc Duy <pclouds@gentoo.org> - Former Gentoo developer, wrote Git features for the migration
X-Thanks: Brian Harring <ferringb@gentoo.org> - wrote much python to improve cvs2svn
X-Thanks: Rich Freeman <rich0@gentoo.org> - validation scripts
X-Thanks: Patrick Lauer <patrick@gentoo.org> - Gentoo dev, running new 2014 work in migration
X-Thanks: Michał Górny <mgorny@gentoo.org> - scripts, QA, nagging
X-Thanks: All of other Gentoo developers - many ideas and lots of paint on the bikeshed
Diffstat (limited to 'sci-misc/boinc')
-rw-r--r-- | sci-misc/boinc/Manifest | 2 | ||||
-rw-r--r-- | sci-misc/boinc/boinc-7.2.0-r1.ebuild | 147 | ||||
-rw-r--r-- | sci-misc/boinc/boinc-7.2.0.ebuild | 146 | ||||
-rw-r--r-- | sci-misc/boinc/boinc-7.4.42.ebuild | 141 | ||||
-rw-r--r-- | sci-misc/boinc/files/boinc-7.2.0-fix_subdirs.patch | 69 | ||||
-rw-r--r-- | sci-misc/boinc/files/boinc.conf | 17 | ||||
-rw-r--r-- | sci-misc/boinc/files/boinc.init | 103 | ||||
-rw-r--r-- | sci-misc/boinc/files/boinc.service | 11 | ||||
-rw-r--r-- | sci-misc/boinc/files/generate_tarball.sh | 103 | ||||
-rw-r--r-- | sci-misc/boinc/metadata.xml | 19 |
10 files changed, 758 insertions, 0 deletions
diff --git a/sci-misc/boinc/Manifest b/sci-misc/boinc/Manifest new file mode 100644 index 000000000000..a064a6ba6649 --- /dev/null +++ b/sci-misc/boinc/Manifest @@ -0,0 +1,2 @@ +DIST boinc-7.2.0.tar.xz 25138432 SHA256 714ac3a10bec41afc224e8343f5bc221a488eefca4592dbc9ce4eea2c10cad5e SHA512 4ee360c14117cf4bbc26dfb48682462cdd15ca04b16f40b76562c0f5fa1a4531775762a1ce1f59960b4d0166a5d429af1279199f5140d3e112c72361ad01c46e WHIRLPOOL 3d41bf1f80d04aa9ec576da18bbb6a8078c98060bd6167dcf6a75fa34619fb95831695fb145a8f4400ec0d99a743f42539751667fcbc505fba7c747c0e0bedfd +DIST boinc-7.4.42.tar.gz 44075908 SHA256 2656727628cae8b15c39e48e08e0521aae345dd1cf4674c6730150500b30145f SHA512 6eabb130d38c55b551ce216afcb8b4a27d9755c4a20dfc30e7ab0c7e8ba5ab5af6995348ec5fee6b9711aa85f7fdbcef78b05894873d8780f20c9e29e17c8ad1 WHIRLPOOL 3b61de0a5a443d457ceda3c01bf824fa5d9a72c7e5d8e8da1bf35f1510a7d3fb72dbbf8ce329b2f8ca18c82afc16852df0cd047d4870b06537ddff473277d655 diff --git a/sci-misc/boinc/boinc-7.2.0-r1.ebuild b/sci-misc/boinc/boinc-7.2.0-r1.ebuild new file mode 100644 index 000000000000..8330ab3336d6 --- /dev/null +++ b/sci-misc/boinc/boinc-7.2.0-r1.ebuild @@ -0,0 +1,147 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +#WANT_AUTOMAKE="1.11" + +AUTOTOOLS_AUTORECONF=true + +inherit autotools-utils flag-o-matic eutils wxwidgets user systemd + +DESCRIPTION="The Berkeley Open Infrastructure for Network Computing" +HOMEPAGE="http://boinc.ssl.berkeley.edu/" +SRC_URI="http://dev.gentoo.org/~jlec/distfiles/${P}.tar.xz" + +LICENSE="LGPL-2.1" +SLOT="0" +KEYWORDS="~amd64 ~ia64 ~ppc ~ppc64 ~sparc ~x86" +IUSE="X cuda static-libs" + +RDEPEND=" + !sci-misc/boinc-bin + !app-admin/quickswitch + >=app-misc/ca-certificates-20080809 + dev-libs/openssl:0= + net-misc/curl[ssl,-gnutls(-),-nss(-),curl_ssl_openssl(+)] + sys-apps/util-linux + sys-libs/zlib + cuda? ( + >=dev-util/nvidia-cuda-toolkit-2.1 + >=x11-drivers/nvidia-drivers-180.22 + ) + X? ( + dev-db/sqlite:3 + media-libs/freeglut + sys-libs/glibc:2.2 + virtual/jpeg:0= + x11-libs/gtk+:2 + >=x11-libs/libnotify-0.7 + x11-libs/wxGTK:2.8[X,opengl] + ) +" +DEPEND="${RDEPEND} + sys-devel/gettext + app-text/docbook-xml-dtd:4.4 + app-text/docbook2X +" + +PATCHES=( + "${FILESDIR}"/${P}-fix_subdirs.patch +) + +AUTOTOOLS_IN_SOURCE_BUILD=1 + +src_prepare() { + # prevent bad changes in compile flags, bug 286701 + sed -i -e "s:BOINC_SET_COMPILE_FLAGS::" configure.ac || die "sed failed" + + autotools-utils_src_prepare +} + +src_configure() { + local wxconf="" + + # add gtk includes + append-flags "$(pkg-config --cflags gtk+-2.0)" + + # look for wxGTK + if use X; then + WX_GTK_VER="2.8" + need-wxwidgets unicode + wxconf+=" --with-wx-config=${WX_CONFIG}" + else + wxconf+=" --without-wxdir" + fi + + local myeconfargs=( + --disable-server + --enable-client + --enable-dynamic-client-linkage + --disable-static + --enable-unicode + --with-ssl + $(use_with X x) + $(use_enable X manager) + ${wxconf} + ) + autotools-utils_src_configure +} + +src_install() { + autotools-utils_src_install + + dodir /var/lib/${PN}/ + keepdir /var/lib/${PN}/ + + if use X; then + newicon "${S}"/packages/generic/sea/${PN}mgr.48x48.png ${PN}.png || die + make_desktop_entry boincmgr "${PN}" "${PN}" "Math;Science" "Path=/var/lib/${PN}" + fi + + # cleanup cruft + rm -rf "${ED}"/etc/ + + newinitd "${FILESDIR}"/${PN}.init ${PN} + newconfd "${FILESDIR}"/${PN}.conf ${PN} + systemd_dounit "${FILESDIR}"/${PN}.service +} + +pkg_preinst() { + enewgroup ${PN} + # note this works only for first install so we have to + # elog user about the need of being in video group + if use cuda; then + enewuser ${PN} -1 -1 /var/lib/${PN} "${PN},video" + else + enewuser ${PN} -1 -1 /var/lib/${PN} "${PN}" + fi +} + +pkg_postinst() { + echo + elog "You are using the source compiled version of ${PN}." + use X && elog "The graphical manager can be found at /usr/bin/${PN}mgr" + elog + elog "You need to attach to a project to do anything useful with ${PN}." + elog "You can do this by running /etc/init.d/${PN} attach" + elog "The howto for configuration is located at:" + elog "http://boinc.berkeley.edu/wiki/Anonymous_platform" + elog + # Add warning about the new password for the client, bug 121896. + if use X; then + elog "If you need to use the graphical manager the password is in:" + elog "/var/lib/${PN}/gui_rpc_auth.cfg" + elog "Where /var/lib/ is default RUNTIMEDIR, that can be changed in:" + elog "/etc/conf.d/${PN}" + elog "You should change this password to something more memorable (can be even blank)." + elog "Remember to launch init script before using manager. Or changing the password." + elog + fi + if use cuda; then + elog "To be able to use CUDA you should add boinc user to video group." + elog "Run as root:" + elog "gpasswd -a boinc video" + fi +} diff --git a/sci-misc/boinc/boinc-7.2.0.ebuild b/sci-misc/boinc/boinc-7.2.0.ebuild new file mode 100644 index 000000000000..c162cf1d311c --- /dev/null +++ b/sci-misc/boinc/boinc-7.2.0.ebuild @@ -0,0 +1,146 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +#WANT_AUTOMAKE="1.11" + +AUTOTOOLS_AUTORECONF=true + +inherit autotools-utils flag-o-matic eutils wxwidgets user + +DESCRIPTION="The Berkeley Open Infrastructure for Network Computing" +HOMEPAGE="http://boinc.ssl.berkeley.edu/" +SRC_URI="http://dev.gentoo.org/~jlec/distfiles/${P}.tar.xz" + +LICENSE="LGPL-2.1" +SLOT="0" +KEYWORDS="~amd64 ~ia64 ~ppc ~ppc64 ~sparc ~x86" +IUSE="X cuda static-libs" + +RDEPEND=" + !sci-misc/boinc-bin + !app-admin/quickswitch + >=app-misc/ca-certificates-20080809 + dev-libs/openssl:0= + net-misc/curl[ssl,-gnutls(-),-nss(-),curl_ssl_openssl(+)] + sys-apps/util-linux + sys-libs/zlib + cuda? ( + >=dev-util/nvidia-cuda-toolkit-2.1 + >=x11-drivers/nvidia-drivers-180.22 + ) + X? ( + dev-db/sqlite:3 + media-libs/freeglut + sys-libs/glibc:2.2 + virtual/jpeg:0= + x11-libs/gtk+:2 + >=x11-libs/libnotify-0.7 + x11-libs/wxGTK:2.8[X,opengl] + ) +" +DEPEND="${RDEPEND} + sys-devel/gettext + app-text/docbook-xml-dtd:4.4 + app-text/docbook2X +" + +PATCHES=( + "${FILESDIR}"/${P}-fix_subdirs.patch +) + +AUTOTOOLS_IN_SOURCE_BUILD=1 + +src_prepare() { + # prevent bad changes in compile flags, bug 286701 + sed -i -e "s:BOINC_SET_COMPILE_FLAGS::" configure.ac || die "sed failed" + + autotools-utils_src_prepare +} + +src_configure() { + local wxconf="" + + # add gtk includes + append-flags "$(pkg-config --cflags gtk+-2.0)" + + # look for wxGTK + if use X; then + WX_GTK_VER="2.8" + need-wxwidgets unicode + wxconf+=" --with-wx-config=${WX_CONFIG}" + else + wxconf+=" --without-wxdir" + fi + + local myeconfargs=( + --disable-server + --enable-client + --enable-dynamic-client-linkage + --disable-static + --enable-unicode + --with-ssl + $(use_with X x) + $(use_enable X manager) + ${wxconf} + ) + autotools-utils_src_configure +} + +src_install() { + autotools-utils_src_install + + dodir /var/lib/${PN}/ + keepdir /var/lib/${PN}/ + + if use X; then + newicon "${S}"/packages/generic/sea/${PN}mgr.48x48.png ${PN}.png || die + make_desktop_entry boincmgr "${PN}" "${PN}" "Math;Science" "Path=/var/lib/${PN}" + fi + + # cleanup cruft + rm -rf "${ED}"/etc/ + + newinitd "${FILESDIR}"/${PN}.init ${PN} + newconfd "${FILESDIR}"/${PN}.conf ${PN} +} + +pkg_preinst() { + enewgroup ${PN} + # note this works only for first install so we have to + # elog user about the need of being in video group + if use cuda; then + enewuser ${PN} -1 -1 /var/lib/${PN} "${PN},video" + else + enewuser ${PN} -1 -1 /var/lib/${PN} "${PN}" + fi +} + +pkg_postinst() { + echo + elog "You are using the source compiled version of ${PN}." + use X && elog "The graphical manager can be found at /usr/bin/${PN}mgr" + elog + elog "You need to attach to a project to do anything useful with ${PN}." + elog "You can do this by running /etc/init.d/${PN} attach" + elog "The howto for configuration is located at:" + elog "http://boinc.berkeley.edu/wiki/Anonymous_platform" + elog + # Add warning about the new password for the client, bug 121896. + if use X; then + elog "If you need to use the graphical manager the password is in:" + elog "/var/lib/${PN}/gui_rpc_auth.cfg" + elog "Where /var/lib/ is default RUNTIMEDIR, that can be changed in:" + elog "/etc/conf.d/${PN}" + elog "You should change this password to something more memorable (can be even blank)." + elog "Remember to launch init script before using manager. Or changing the password." + elog + fi + if use cuda; then + elog "To be able to use CUDA you should add boinc user to video group." + elog "Run as root:" + elog "gpasswd -a boinc video" + fi +} diff --git a/sci-misc/boinc/boinc-7.4.42.ebuild b/sci-misc/boinc/boinc-7.4.42.ebuild new file mode 100644 index 000000000000..2cfff07888ef --- /dev/null +++ b/sci-misc/boinc/boinc-7.4.42.ebuild @@ -0,0 +1,141 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +#WANT_AUTOMAKE="1.11" + +AUTOTOOLS_AUTORECONF=true + +inherit autotools-utils eutils flag-o-matic systemd user versionator wxwidgets + +MY_PV=$(get_version_component_range 1-2) + +DESCRIPTION="The Berkeley Open Infrastructure for Network Computing" +HOMEPAGE="http://boinc.ssl.berkeley.edu/" +SRC_URI="https://github.com/BOINC/boinc/archive/client_release/${MY_PV}/${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="LGPL-2.1" +SLOT="0" +KEYWORDS="~amd64 ~ia64 ~ppc ~ppc64 ~sparc ~x86" +IUSE="X cuda static-libs" + +RDEPEND=" + !sci-misc/boinc-bin + !app-admin/quickswitch + >=app-misc/ca-certificates-20080809 + dev-libs/openssl:0= + net-misc/curl[ssl,-gnutls(-),-nss(-),curl_ssl_openssl(+)] + sys-apps/util-linux + sys-libs/zlib + cuda? ( + >=dev-util/nvidia-cuda-toolkit-2.1 + >=x11-drivers/nvidia-drivers-180.22 + ) + X? ( + dev-db/sqlite:3 + media-libs/freeglut + sys-libs/glibc:2.2 + virtual/jpeg:0= + x11-libs/gtk+:2 + >=x11-libs/libnotify-0.7 + x11-libs/wxGTK:2.8[X,opengl] + ) +" +DEPEND="${RDEPEND} + sys-devel/gettext + app-text/docbook-xml-dtd:4.4 + app-text/docbook2X +" + +S="${WORKDIR}/${PN}-client_release-${MY_PV}-${PV}" + +AUTOTOOLS_IN_SOURCE_BUILD=1 + +src_prepare() { + # prevent bad changes in compile flags, bug 286701 + sed -i -e "s:BOINC_SET_COMPILE_FLAGS::" configure.ac || die "sed failed" + + autotools-utils_src_prepare +} + +src_configure() { + local myeconfargs=( + --disable-server + --enable-client + --enable-dynamic-client-linkage + --disable-static + --enable-unicode + --with-ssl + $(use_with X x) + $(use_enable X manager) + ) + + # look for wxGTK + if use X; then + WX_GTK_VER="2.8" + need-wxwidgets unicode + myeconfargs+=(--with-wx-config="${WX_CONFIG}") + else + myeconfargs+=(--without-wxdir) + fi + + autotools-utils_src_configure +} + +src_install() { + autotools-utils_src_install + + keepdir /var/lib/${PN} + + if use X; then + newicon "${S}"/packages/generic/sea/${PN}mgr.48x48.png ${PN}.png + make_desktop_entry boincmgr "${PN}" "${PN}" "Math;Science" "Path=/var/lib/${PN}" + fi + + # cleanup cruft + rm -rf "${ED}"/etc + + newinitd "${FILESDIR}"/${PN}.init ${PN} + newconfd "${FILESDIR}"/${PN}.conf ${PN} + systemd_dounit "${FILESDIR}"/${PN}.service +} + +pkg_preinst() { + enewgroup ${PN} + # note this works only for first install so we have to + # elog user about the need of being in video group + local groups="${PN}" + if use cuda; then + group+=",video" + fi + enewuser ${PN} -1 -1 /var/lib/${PN} "${groups}" +} + +pkg_postinst() { + echo + elog "You are using the source compiled version of boinc." + use X && elog "The graphical manager can be found at /usr/bin/boincmgr" + elog + elog "You need to attach to a project to do anything useful with boinc." + elog "You can do this by running /etc/init.d/boinc attach" + elog "The howto for configuration is located at:" + elog "http://boinc.berkeley.edu/wiki/Anonymous_platform" + elog + # Add warning about the new password for the client, bug 121896. + if use X; then + elog "If you need to use the graphical manager the password is in:" + elog "/var/lib/boinc/gui_rpc_auth.cfg" + elog "Where /var/lib/ is default RUNTIMEDIR, that can be changed in:" + elog "/etc/conf.d/boinc" + elog "You should change this password to something more memorable (can be even blank)." + elog "Remember to launch init script before using manager. Or changing the password." + elog + fi + if use cuda; then + elog "To be able to use CUDA you should add boinc user to video group." + elog "Run as root:" + elog "gpasswd -a boinc video" + fi +} diff --git a/sci-misc/boinc/files/boinc-7.2.0-fix_subdirs.patch b/sci-misc/boinc/files/boinc-7.2.0-fix_subdirs.patch new file mode 100644 index 000000000000..be0a02c30cfd --- /dev/null +++ b/sci-misc/boinc/files/boinc-7.2.0-fix_subdirs.patch @@ -0,0 +1,69 @@ + Makefile.am | 14 +++++++------- + configure.ac | 5 ----- + 2 files changed, 7 insertions(+), 12 deletions(-) + +diff --git a/Makefile.am b/Makefile.am +index 6322db1..45d8b67 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -10,13 +10,13 @@ ACLOCAL_AMFLAGS = -I m4 + + if ENABLE_LIBRARIES + API_SUBDIRS = api lib +-if ENABLE_SERVER +- API_SUBDIRS += zip +-endif ++#if ENABLE_SERVER ++# API_SUBDIRS += zip ++#endif + endif + + if ENABLE_SERVER +- SERVER_SUBDIRS = db test py sched apps tools vda html ++ SERVER_SUBDIRS = db test py sched apps tools vda + ## once contained samples/example_app which breaks out-of-source-tree builds + endif + +@@ -26,9 +26,9 @@ endif + + if ENABLE_MANAGER + CLIENTGUI_SUBDIRS = clientgui locale +-if BUILD_X11_SCREENSAVER +- CLIENTGUI_SUBDIRS += clientscr +-endif ++#if BUILD_X11_SCREENSAVER ++# CLIENTGUI_SUBDIRS += clientscr ++#endif + endif + + # ORDER MATTERS below. One must build dependencies FIRST, then things +diff --git a/configure.ac b/configure.ac +index 2bef437..5a9e104 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -955,7 +955,6 @@ AC_CONFIG_FILES([ + apps/Makefile + clientgui/Makefile + clientgui/res/Makefile +- clientscr/Makefile + client/Makefile + client/win/boinc_path_config.py:py/boinc_path_config.py.in + client/scripts/Makefile +@@ -963,7 +962,6 @@ AC_CONFIG_FILES([ + db/Makefile + doc/Makefile + doc/manpages/Makefile +- html/Makefile + lib/Makefile + locale/Makefile + Makefile +@@ -993,9 +991,6 @@ AC_CONFIG_FILES([ + tools/boinc_path_config.py:py/boinc_path_config.py.in + tools/Makefile + vda/Makefile +- zip/Makefile +- zip/zip/Makefile +- zip/unzip/Makefile + m4/Makefile + ]) + diff --git a/sci-misc/boinc/files/boinc.conf b/sci-misc/boinc/files/boinc.conf new file mode 100644 index 000000000000..0fef6ae58e37 --- /dev/null +++ b/sci-misc/boinc/files/boinc.conf @@ -0,0 +1,17 @@ +# Config file for /etc/init.d/boinc + +# Owner of BOINC process (must be existing) +USER="boinc" +GROUP="boinc" + +# Directory with runtime data: Work units, project binaries, user info etc. +RUNTIMEDIR="/var/lib/boinc" + +# Location of the boinc command line binary +BOINCBIN="/usr/bin/boinc_client" + +# Allow remote gui RPC yes or no +ALLOW_REMOTE_RPC="no" + +# nice level +NICELEVEL="19" diff --git a/sci-misc/boinc/files/boinc.init b/sci-misc/boinc/files/boinc.init new file mode 100644 index 000000000000..a350e3efd7c4 --- /dev/null +++ b/sci-misc/boinc/files/boinc.init @@ -0,0 +1,103 @@ +#!/sbin/runscript + +extra_started_commands="attach" + +depend() { + # we can use dns and net, but we can also in most cases live without them + use dns net ntp-client ntpd +} + +create_work_directory() { + if [ ! -d "${RUNTIMEDIR}" ]; then + einfo "Directory ${RUNTIMEDIR} not existing, creating now." + mkdir "${RUNTIMEDIR}" + if [ ! -d "${RUNTIMEDIR}" ]; then + eeror "Directory ${RUNTIMEDIR} could not be created!" + return 1 + fi + fi + if [ ! -e "${RUNTIMEDIR}"/ca-bundle.crt ] ; then + ln -s /etc/ssl/certs/ca-certificates.crt "${RUNTIMEDIR}"/ca-bundle.crt + fi +} + +cuda_check() { + if [ -f /opt/cuda/lib/libcudart.so ]; then + # symlink wont harm :] + ln -snf /opt/cuda/lib/libcudart.so "${RUNTIMEDIR}"/libcudart.so + fi +} + +check_baselayout() { + if [ "${RC_VERSION:-0}" = "0" ]; then + eerror "This script cannot be used for baselayout-1." + return 1 + fi +} + +start() { + check_baselayout || return 1 + create_work_directory || return 1 + cuda_check + + # always ensure proper ownership + chown -R "${USER}:${GROUP}" "${RUNTIMEDIR}" + + if [ ! -f "${RUNTIMEDIR}/lockfile" ]; then + einfo "File \"${RUNTIMEDIR}/lockfile\" does not exist, assuming first run." + einfo "You need to setup an account on the BOINC project homepage beforehand!" + einfo "Go to http://boinc.berkeley.edu/ and locate your project." + einfo "Then either run /etc/init.d/boinc attach or connect with a gui client" + einfo "and attach to a project with that." + echo + ewarn "Note that for attaching to some project you need your network up and running." + ewarn "network is needed only for jobs fetching afterwards" + fi + + if [ "${ALLOW_REMOTE_RPC}" = "yes" ]; then + ARGS="${ARGS} --allow_remote_gui_rpc" + fi + + ebegin "Starting ${SVCNAME}" + su -m ${USER} -c "nice -n ${NICELEVEL} \"${BOINCBIN}\" ${ARGS} --daemon --dir \"${RUNTIMEDIR}\" --redirectio" + eend $? +} + +attach() { + local password url key + + einfo "If you cant find your account key just try to obtain it by using:" + einfo " boinccmd --passwd PASSWORD_FROM_GUI_RPC_AUTH --lookup_account URL EMAIL PASSWORD" + + printf " Enter the Project URL: " + read url + printf " Enter your Account Key: " + read key + + if ! service_started; then + "${RC_SERVICE}" start + fi + + password=$(cat "${RUNTIMEDIR}/gui_rpc_auth.cfg") + + ebegin "${SVCNAME}: Attaching to project" + su -m ${USER} -c "boinccmd --passwd \"${password}\" --project_attach ${url} ${key}" + eend $? + + unset password url key + + sleep 10 + tail "${RUNTIMEDIR}/stdoutdae.txt" +} + +stop() { + local password + + password=$(cat "${RUNTIMEDIR}/gui_rpc_auth.cfg") + + ebegin "Stopping ${SVCNAME}" + su -m ${USER} -c "boinccmd --passwd \"${password}\" --quit" + eend $? + + unset password +} diff --git a/sci-misc/boinc/files/boinc.service b/sci-misc/boinc/files/boinc.service new file mode 100644 index 000000000000..af8edf4d5041 --- /dev/null +++ b/sci-misc/boinc/files/boinc.service @@ -0,0 +1,11 @@ +[Unit] +Description=BOINC Daemon + +[Service] +User=boinc +Group=boinc +Nice=19 +ExecStart=/usr/bin/boinc_client --dir /var/lib/boinc --redirectio + +[Install] +WantedBy=multi-user.target diff --git a/sci-misc/boinc/files/generate_tarball.sh b/sci-misc/boinc/files/generate_tarball.sh new file mode 100644 index 000000000000..eb98b46c39ff --- /dev/null +++ b/sci-misc/boinc/files/generate_tarball.sh @@ -0,0 +1,103 @@ +#!/usr/bin/env bash +## $Id$ +## Modified by scarabeus 2008-10-23 +############################################################################### +# functions +############################################################################### +# print out help function +help() { + echo "Welcome to Boinc tarball generator" + echo + echo "For correct usage set VERSION argument" + echo "Example:" + echo "$0 -v 6.1.1" + exit 0 +} +############################################################################### +# argument passing +############################################################################### +if [[ $1 == "--help" ]]; then + help +fi +while getopts v: arg ; do + case $arg in + v) VERSION=${OPTARG};; + *) help;; + esac +done +if [ -z "${VERSION}" ]; then + help +fi +############################################################################### +# variable definition +############################################################################### +GIT_URI="git://boinc.berkeley.edu/boinc-v2.git" +PACKAGE="boinc-${VERSION}" +BUNDLE_PREFIX="boinc-dist" +LOG=linux.log +############################################################################### +# prepare enviroment +############################################################################### +mkdir ${BUNDLE_PREFIX} -p +rm -rf "${BUNDLE_PREFIX}"/* # CLEANUP +cd "${BUNDLE_PREFIX}" +touch "${LOG}" +echo "" > "${LOG}" # LOG CLEANUP +############################################################################### +# get data from GIT +############################################################################### +echo "<Downloading files from GIT repository>" +echo "<******************************>" +# No direct archive possible +git clone ${GIT_URI} ${PACKAGE} >> "${LOG}" +pushd "${PACKAGE}" > /dev/null +git checkout -b gentoo client_release/${VERSION%.*}/${VERSION} || exit 0 +popd > /dev/null +############################################################################### +# cleanup files we fetched +############################################################################### +echo "<Cleaning up data we fetched>" +echo "<******************************>" +pushd "${PACKAGE}" > /dev/null + +# First remove NON Linux stuff we will not use +rm -rf mac_installer/ # mac installer scripts +rm -rf clientgui/mac/ # mac windows +rm -rf clientscr/ # windows screensaver +rm -rf clienttray/ # windows systray +rm -rf win_build/ # windows build stuff +rm -rf clientlib/ # only windows stuff +rm -rf client/os2/ # OS2 stuff +rm -rf client/win/ # windows stuff +rm -rf mac_build/ # mac build scripts +rm -rf RSAEuro/ # empty folder +rm -rf html/ # webpages WTF? + + +# BUNDLED STUFF NEEDED REMOVAL +rm -rf coprocs/ # CUDA +rm -rf curl/ +#rm -rf locale/*/*.mo # translations should be generated on user machines +# Actualy they dont generate them +rm -rf zlib/ +rm -rf zip/ +rm -rf openssl/ + +git commit -a -m "Cleaned" + +popd > /dev/null + +############################################################################### +# create tbz +############################################################################### +git archive --prefix=${PACKAGE}/ --remote=${PACKAGE} gentoo -o ${PACKAGE}.tar +xz -ve9 "${PACKAGE}".tar | tee -a "${LOG}" +find ./ -maxdepth 1 -type f -name \*.tar.xz -print | while read FILE ; do + echo "FILE: ${FILE}" + echo " SIZE: $(`which du` -h ${FILE} |`which awk` -F' ' '{print $1}')" + echo " MD5SUM: $(`which md5sum` ${FILE} |`which awk` -F' ' '{print $1}')" + echo " SHA1SUM: $(`which sha1sum` ${FILE} |`which awk` -F' ' '{print $1}')" + echo +done +echo "<<<All done>>>" +############################################################################### diff --git a/sci-misc/boinc/metadata.xml b/sci-misc/boinc/metadata.xml new file mode 100644 index 000000000000..587dfa1190b9 --- /dev/null +++ b/sci-misc/boinc/metadata.xml @@ -0,0 +1,19 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <herd>sci</herd> + <longdescription lang="en"> + BOINC (Berkeley Open Infrastructure for Network Computing) is a software + platform for distributed computing using volunteered computer resources. +</longdescription> + <use> + <flag name="cuda"> + Use nvidia cuda toolkit for speeding up computations. + NOTE: works only for subset of nvidia graphic cards so make sure your card + is supported before opening bug about it. + </flag> + </use> + <upstream> + <remote-id type="github">BOINC/boinc</remote-id> + </upstream> +</pkgmetadata> |