diff options
Diffstat (limited to 'sci-biology')
-rw-r--r-- | sci-biology/foldingathome/Manifest | 1 | ||||
-rw-r--r-- | sci-biology/foldingathome/foldingathome-7.6.21.ebuild | 138 |
2 files changed, 139 insertions, 0 deletions
diff --git a/sci-biology/foldingathome/Manifest b/sci-biology/foldingathome/Manifest index 590546fddbfe..cfd020a01a88 100644 --- a/sci-biology/foldingathome/Manifest +++ b/sci-biology/foldingathome/Manifest @@ -1 +1,2 @@ DIST fahclient_7.6.13-64bit-release.tar.bz2 3951134 BLAKE2B 2748b7c1987d166bdda08caf5ff2f331523ff519e24768cd7e111c6d3a93f54c10c88d8adbf733230b6c51547360135dbcb272e5d43fd06d01918481601382a1 SHA512 f39f2990d78d075e1061ceaff9453b703a000770a3422965b7b8a91d1814f8804837628d8a34be5afd914228ef787f699f2488523baad295a8d9c1e3bb4f35cf +DIST fahclient_7.6.21-64bit-release.tar.bz2 4081015 BLAKE2B b47f99bb2c568ee78dfb8998f6faa6c19aa78492a7882d128917596fa51ca7fb9f02dc0a822b6859ee4b333812f961cbcba504b9b188a3a16e7c5c9489cbfbdb SHA512 b52d97c0169eea8686ac3e52a713bb8513ae2b33a853fbf88a0311569aee22681e9ac87bcc01acdaf31d5af5c3641bd5611d34fcbdbb6c1f0ebbb3fc1efeabdb diff --git a/sci-biology/foldingathome/foldingathome-7.6.21.ebuild b/sci-biology/foldingathome/foldingathome-7.6.21.ebuild new file mode 100644 index 000000000000..04b1ff468a1e --- /dev/null +++ b/sci-biology/foldingathome/foldingathome-7.6.21.ebuild @@ -0,0 +1,138 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit systemd + +DESCRIPTION="Folding@Home is a distributed computing project for protein folding" +HOMEPAGE="https://foldingathome.org/" +SRC_URI="https://download.foldingathome.org/releases/public/release/fahclient/centos-6.7-64bit/v$(ver_cut 1-2)/fahclient_${PV}-64bit-release.tar.bz2" +S="${WORKDIR}/fahclient_${PV}-64bit-release" + +LICENSE="FAH-EULA-2014 FAH-special-permission" +SLOT="0" +KEYWORDS="~amd64" +RESTRICT="mirror bindist strip" + +# Expressly listing all deps, as this is a binpkg and it is doubtful whether +# i.e. uclibc or clang can provide what is necessary at runtime +DEPEND="dev-util/patchelf" +RDEPEND=" + acct-group/foldingathome + acct-group/video + acct-user/foldingathome + app-arch/bzip2 + || ( + dev-libs/openssl-compat:1.0.0 + =dev-libs/openssl-1.0*:* + ) + sys-devel/gcc + sys-libs/glibc + sys-libs/zlib +" + +QA_PREBUILT="opt/foldingathome/*" + +pkg_setup() { + elog "" + elog "Special permission is hereby granted to the Gentoo project to provide an" + elog "automated installer package which downloads and installs the Folding@home client" + elog "software. Permission is also granted for future Gentoo installer packages on the" + elog "condition that they continue to adhere to all of the terms of the accompanying" + elog "Folding@home license agreements and display this notice." + elog "-- Vijay S. Pande, Stanford University, 07 May 2013" + elog "" + elog "(ref: http://foldingforum.org/viewtopic.php?f=16&t=22524&p=241992#p241992 )" + elog "" +} + +src_install() { + patchelf --set-rpath "${EPREFIX}/opt/foldingathome" FAHClient || die + patchelf --set-rpath "${EPREFIX}/opt/foldingathome" FAHCoreWrapper || die + + dosym "../../usr/$(get_libdir)/libssl.so.1.0.0" /opt/foldingathome/libssl.so.10 + dosym "../../usr/$(get_libdir)/libcrypto.so.1.0.0" /opt/foldingathome/libcrypto.so.10 + + exeinto /opt/foldingathome + doexe {FAHClient,FAHCoreWrapper} + + insinto /opt/foldingathome + doins sample-config.xml + + newconfd "${FILESDIR}"/7.3/folding-conf.d foldingathome + cat <<EOF >"${T}"/fah-init || die +#!/sbin/openrc-run +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +start_stop_daemon_args="--chdir \"${EPREFIX}/opt/foldingathome\"" +command="${EPREFIX}/opt/foldingathome/FAHClient" +command_args="\${FOLD_OPTS}" +command_user=foldingathome +command_background=1 +pidfile="\${PIDFILE}" +EOF + newinitd "${T}"/fah-init foldingathome + + cat <<EOF >"${T}"/fah-init.service || die +[Unit] +Description=Folding@Home V7 Client +Documentation=https://foldingathome.org + +[Service] +Type=simple +User=foldingathome +Group=foldingathome +Nice=19 +WorkingDirectory=${EPREFIX}/opt/foldingathome +ExecStart=${EPREFIX}/opt/foldingathome/FAHClient --fork=false --pid=false --respawn=false --service=false +NoNewPrivileges=yes +PrivateTmp=yes +ProtectControlGroups=yes +ProtectSystem=full +RestrictRealtime=true +ProtectControlGroups=yes + +[Install] +WantedBy=multi-user.target +EOF + systemd_newunit "${T}"/fah-init.service foldingathome.service + + fowners -R foldingathome:foldingathome /opt/foldingathome +} + +pkg_postinst() { + elog "To run Folding@home in the background at boot:" + elog "(openrc)\trc-update add foldingathome default" + elog "(systemd)\tsystemctl enable foldingathome" + elog "" + if [ ! -e "${EPREFIX}"/opt/foldingathome/config.xml ]; then + elog "No config.xml file found -- please run" + elog "emerge --config ${P} to configure your client, or specify" + elog "all necessary runtime options in FOLD_OPTS within" + elog "${EPREFIX}/etc/conf.d/foldingathome" + elog "" + fi + if [[ -n ${REPLACING_VERSIONS} ]]; then + elog "NOTE, the 'initfolding' helper script has been dropped, please" + elog "use emerge --config ${P} or run FAHClient --configure directly" + elog "and adjust file permissions and ownership yourself" + elog "" + fi + elog "Please see ${EPREFIX}/opt/foldingathome/FAHClient --help for more details." + einfo "" + einfo "The original package maintainer encourages you to acquire a username and join team 36480." + einfo "http://folding.stanford.edu/English/Download#ntoc2" + einfo "" +} + +pkg_postrm() { + elog "Folding@home data files were not removed." + elog "Remove them manually from ${EPREFIX}/opt/foldingathome" +} + +pkg_config() { + cd "${EPREFIX}"/opt/foldingathome || die + su foldingathome -s /bin/sh -c "./FAHClient --configure" || die +} |