Skip to content

Commit

Permalink
sci-misc/boinc: New ebuild for series 7.8 client version 7.8.1
Browse files Browse the repository at this point in the history
Package-Manager: Portage-2.3.8, Repoman-2.3.3
  • Loading branch information
Yamakuzure authored and mgorny committed Aug 19, 2017
1 parent dabdb0a commit 192b9a6
Show file tree
Hide file tree
Showing 2 changed files with 182 additions and 0 deletions.
1 change: 1 addition & 0 deletions sci-misc/boinc/Manifest
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
DIST boinc-7.2.47.tar.gz 45121609 SHA256 f48a7d8387d2809b438d844d239b39e705d5b39d1bf03f4a5be41e30e7d41137 SHA512 0865c0462fac94d03447442a37896f61af58d8ab83331d8bede0fda8dbca0b94b583abe20938b54096be2a5553ab39467f9381e855e326ff9b289ed74bd78431 WHIRLPOOL bb842e8f2c91bee882ee650cb06f21570f88bd05b38a9f57ff2b55b34f6fb546bdec698023df9fa4169250c39b46ea9d8c3ddf3e6ec6ba6e33ff636162203289
DIST boinc-7.4.52.tar.gz 44146174 SHA256 ac27154ad28d9d0a63ba7153ebb7bcbbd0586744c763c91deeb0325d56530192 SHA512 32623552e091bf388e85e5f118a8cd035b677091620d2b171513299428e4b53b94f7bfd75e8d4e9f46de3a7cadd8b498434acc3b9aeffbd3667aa18d65c0bc78 WHIRLPOOL e1035ba513a3adced4d5576e856fc43213cca923f3d016aa86c19784a4efcbaa7e599a2728568e14121a63aa89365b1ae00b99af588824f17371836f9494266e
DIST boinc-7.6.33.tar.gz 43569544 SHA256 c4b1c29b9655013e0ac61dddf47ad7f30f38c46159f02a9d9dc8ab854e99aa6d SHA512 c1a98d1a489835abdac72b300c0c8ce82eec9a677ff891c57da4df9875a9bbdd4b45dd9d5ae6ddc2926a0e47ae281fb94ff87815b8aeab0786e15062465e2c20 WHIRLPOOL 118578c4058b3f19fab61982a2f2007379790f37cd077f80f7e4c6a7bed30016142c3236af6274553c19ac1a662b4022ddf6323e22c7dc697ea30ca0bccfbaeb
DIST boinc-7.8.1.tar.gz 52054963 SHA256 5393c54aa40f4513d1d0603a0f450036c5fe07dba134cfb31289a62d85f46933 SHA512 208431e87cc47bfcd255049d113a0d0ad9e9648644b8611ab149d0621e5cf731086e2cbe8944950b4f5d12aefdd73353e540938e580cb98663861923cb049e31 WHIRLPOOL 79fc632cdae976f99d7859c91b110b659c394f396e1f1f427d83606d04674cf8399d38e38584f9ace300b874611792586348b46946a1950420586d7b9939ff3f
DIST boinc.tif 288208 SHA256 5c14c65a7531e1dc3f7f7c18ef86eb0e27726527cb835967aed8b0d003eb564a SHA512 548e19b87fd70dbeb05687320b86aad39981c161b5b5b7e02fc3ce886d4c464c9bb763d5652d9895dd505ce247c7ff4490caa3d407e28f54ce889ffbab22d046 WHIRLPOOL 6a6cace44c8483000cda787da39006db521fd9408539f8abca2c2ab913371405b97719af0518acd2f5239451a9605d0f6d67a40fdb14cb49a03a42a7a44a4c86
181 changes: 181 additions & 0 deletions sci-misc/boinc/boinc-7.8.1.ebuild
Original file line number Diff line number Diff line change
@@ -0,0 +1,181 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2

EAPI=6

WX_GTK_VER=3.0

inherit autotools eutils linux-info 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
X? ( http://boinc.berkeley.edu/logo/boinc_glossy2_512_F.tif -> ${PN}.tif )"
RESTRICT="mirror"

LICENSE="LGPL-2.1"
SLOT="0"
KEYWORDS="~amd64 ~ia64 ~ppc ~ppc64 ~sparc ~x86"
IUSE="X cuda curl_ssl_gnutls curl_ssl_libressl +curl_ssl_openssl static-libs"

REQUIRED_USE="^^ ( curl_ssl_gnutls curl_ssl_libressl curl_ssl_openssl ) "

# libcurl must not be using an ssl backend boinc does not support.
# If the libcurl ssl backend changes, boinc should be recompiled.
RDEPEND="
!sci-misc/boinc-bin
!app-admin/quickswitch
>=app-misc/ca-certificates-20080809
net-misc/curl[curl_ssl_gnutls(-)=,curl_ssl_libressl(-)=,-curl_ssl_nss(-),curl_ssl_openssl(-)=,-curl_ssl_axtls(-),-curl_ssl_cyassl(-)]
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:${WX_GTK_VER}[X,opengl,webkit]
)
"
DEPEND="${RDEPEND}
sys-devel/gettext
app-text/docbook-xml-dtd:4.4
app-text/docbook2X
X? ( virtual/imagemagick-tools[png,tiff] )
"

PATCHES=(
# >=x11-libs/wxGTK-3.0.2.0-r3 has webview removed, bug 587462
"${FILESDIR}"/fix_webview.patch
)

S="${WORKDIR}/${PN}-client_release-${MY_PV}-${PV}"

pkg_setup() {
# Bug 578750
if use kernel_linux; then
linux-info_pkg_setup
if ! linux_config_exists; then
ewarn "Can't check the linux kernel configuration."
ewarn "You might be missing vsyscall support."
elif kernel_is -ge 4 4 \
&& linux_chkconfig_present LEGACY_VSYSCALL_NONE; then
ewarn "You do not have vsyscall emulation enabled."
ewarn "This will prevent some boinc projects from running."
ewarn "Please enable vsyscall emulation:"
ewarn " CONFIG_LEGACY_VSYSCALL_EMULATE=y"
ewarn "in /usr/src/linux/.config, to be found at"
ewarn " Processor type and features --->"
ewarn " vsyscall table for legacy applications (None) --->"
ewarn " (X) Emulate"
ewarn "Alternatively, you can enable CONFIG_LEGACY_VSYSCALL_NATIVE."
ewarn "However, this has security implications and is not recommended."
fi
fi
}

src_prepare() {
default

# prevent bad changes in compile flags, bug 286701
sed -i -e "s:BOINC_SET_COMPILE_FLAGS::" configure.ac || die "sed failed"

eautoreconf

use X && need-wxwidgets unicode
}

src_configure() {
econf --disable-server \
--enable-client \
--enable-dynamic-client-linkage \
--disable-static \
--enable-unicode \
--with-ssl \
$(use_with X x) \
$(use_enable X manager) \
$(usex X --with-wx-config="${WX_CONFIG}" --without-wxdir)
}

src_install() {
default

keepdir /var/lib/${PN}

if use X; then
# Create new icons. bug 593362
local s SIZES=(16 22 24 32 36 48 64 72 96 128 192 256)
for s in "${SIZES[@]}"; do
convert "${DISTDIR}"/${PN}.tif -resize ${s}x${s} "${WORKDIR}"/boinc_${s}.png || die
newicon -s $s "${WORKDIR}"/boinc_${s}.png boinc.png
done
make_desktop_entry boincmgr "${PN}" "${PN}" "Math;Science" "Path=/var/lib/${PN}"

# Rename the desktop file to boincmgr.desktop to (hot)fix bug 599910
mv "${ED%/}"/usr/share/applications/boincmgr{-${PN},}.desktop || \
die "Failed to rename desktop file"
fi

# cleanup cruft
rm -rf "${ED%/}"/etc || die "rm failed"

sed -e "s/@libdir@/$(get_libdir)/" "${FILESDIR}"/${PN}.init.in > ${PN}.init || die
newinitd ${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
groups+=",video"
fi
enewuser ${PN} -1 -1 /var/lib/${PN} "${groups}"
}

pkg_postinst() {
elog
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"
elog
fi
# Add information about BOINC supporting OpenCL
elog "BOINC supports OpenCL. To use it you have to eselect"
if use cuda; then
elog "nvidia as the OpenCL implementation, as you are using CUDA."
else
elog "the correct OpenCL implementation for your graphic card."
fi
elog
}

0 comments on commit 192b9a6

Please sign in to comment.