diff options
author | Mateusz Piotrowski <0mp@FreeBSD.org> | 2020-03-21 23:03:05 +0000 |
---|---|---|
committer | Mateusz Piotrowski <0mp@FreeBSD.org> | 2020-03-21 23:03:05 +0000 |
commit | 28f362fae3196d15840c54d6a04ddd8f239e610c (patch) | |
tree | 6458745f1a42df3effdc3a309184cb63ef686c2c /biology/linux-foldingathome | |
parent | 53f1ebfc0011004c13e3da8bfc1e917d28d4e047 (diff) | |
download | ports-28f362fae3196d15840c54d6a04ddd8f239e610c.tar.gz ports-28f362fae3196d15840c54d6a04ddd8f239e610c.zip |
Resurrect biology/linux-foldingathome
Special thanks to netchild for inspiring bringing back this piece software
to ports!
Reviewed by: netchild, pi, salvadore
Differential Revision: https://reviews.freebsd.org/D24127
Notes
Notes:
svn path=/head/; revision=528886
Diffstat (limited to 'biology/linux-foldingathome')
-rw-r--r-- | biology/linux-foldingathome/Makefile | 66 | ||||
-rw-r--r-- | biology/linux-foldingathome/distinfo | 3 | ||||
-rw-r--r-- | biology/linux-foldingathome/files/fahclient.in | 66 | ||||
-rw-r--r-- | biology/linux-foldingathome/files/pkg-message.in | 56 | ||||
-rw-r--r-- | biology/linux-foldingathome/pkg-descr | 17 | ||||
-rw-r--r-- | biology/linux-foldingathome/pkg-plist | 5 |
6 files changed, 213 insertions, 0 deletions
diff --git a/biology/linux-foldingathome/Makefile b/biology/linux-foldingathome/Makefile new file mode 100644 index 000000000000..18bab56bbfba --- /dev/null +++ b/biology/linux-foldingathome/Makefile @@ -0,0 +1,66 @@ +# Created by: Yonatan <onatan@gmail.com> +# $FreeBSD$ + +PORTNAME= foldingathome +DISTVERSION= 7.5.1-1 +CATEGORIES= biology linux +MASTER_SITES= https://download.foldingathome.org/releases/public/release/fahclient/centos-6.7-64bit/v${DISTVERSION:R}/ +PKGNAMEPREFIX= linux- +DISTNAME= fahclient-${DISTVERSION} +EXTRACT_SUFX= .x86_64.rpm + +MAINTAINER= 0mp@FreeBSD.org +COMMENT= Folding@home Client + +LICENSE= FAHSL +LICENSE_NAME= Folding@home Software License +LICENSE_FILE= ${WRKSRC}/usr/share/doc/fahclient/copyright +LICENSE_PERMS= no-dist-mirror no-dist-sell no-pkg-mirror no-pkg-sell \ + auto-accept + +LEGAL_TEXT= Distribution without permission is prohibited + +ONLY_FOR_ARCHS= amd64 +ONLY_FOR_ARCHS_REASON= The i386 client has not been ported + +USES= dos2unix linux +DOS2UNIX_FILES= usr/share/doc/fahclient/* +USE_RC_SUBR= fahclient + +ETCDIR= ${PREFIX}/etc/fahclient +DOCSDIR= ${PREFIX}/share/doc/fahclient +NO_BUILD= yes + +SUB_FILES= pkg-message +SUB_LIST= FAHCLIENT_CONFIG_XML=${_FAHCLIENT_CONFIG_XML} \ + FAHCLIENT_PROGRAM=${_FAHCLIENT_PROGRAM} \ + FAHCLIENT_WORK_DIR=${_FAHCLIENT_WORK_DIR} +NO_WRKSUBDIR= yes + +USERS= fahclient +GROUPS= fahclient + +PLIST_SUB= FAHCLIENT_WORK_DIR=${_FAHCLIENT_WORK_DIR} + +PORTDOCS= CHANGELOG.md README.md + +OPTIONS_DEFINE= DOCS + +_FAHCLIENT_CONFIG_XML= ${ETCDIR}/config.xml +_FAHCLIENT_WORK_DIR= /var/db/fahclient +_FAHCLIENT_PROGRAM= ${PREFIX}/bin/FAHClient + +do-install: + ${INSTALL_PROGRAM} ${WRKSRC}/usr/bin/FAHClient ${STAGEDIR}${PREFIX}/bin/ + ${INSTALL_PROGRAM} ${WRKSRC}/usr/bin/FAHCoreWrapper ${STAGEDIR}${PREFIX}/bin/ + @${MKDIR} ${STAGEDIR}${ETCDIR} + ${INSTALL_DATA} ${WRKSRC}/usr/share/doc/fahclient/sample-config.xml \ + ${STAGEDIR}${_FAHCLIENT_CONFIG_XML}.sample + @${MKDIR} ${STAGEDIR}${_FAHCLIENT_WORK_DIR} + +post-install-DOCS-on: + @${MKDIR} ${STAGEDIR}${DOCSDIR} + ${INSTALL_MAN} ${PORTDOCS:S|^|${WRKSRC}/usr/share/doc/fahclient/|} \ + ${STAGEDIR}${DOCSDIR} + +.include <bsd.port.mk> diff --git a/biology/linux-foldingathome/distinfo b/biology/linux-foldingathome/distinfo new file mode 100644 index 000000000000..73cf9ee968a2 --- /dev/null +++ b/biology/linux-foldingathome/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1584818074 +SHA256 (fahclient-7.5.1-1.x86_64.rpm) = da579fa02df66fc6fb48dc2bc81c4b6f46fe4f6696afe20d70b9bd5e5941837f +SIZE (fahclient-7.5.1-1.x86_64.rpm) = 3025708 diff --git a/biology/linux-foldingathome/files/fahclient.in b/biology/linux-foldingathome/files/fahclient.in new file mode 100644 index 000000000000..4bc7c90e9ef1 --- /dev/null +++ b/biology/linux-foldingathome/files/fahclient.in @@ -0,0 +1,66 @@ +#! /bin/sh - +# +# $FreeBSD$ +# +# SPDX-License-Identifier: BSD-2-Clause +# +# Copyright (c) 2020 Mateusz Piotrowski <0mp@FreeBSD.org> +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are met: +# +# 1. Redistributions of source code must retain the above copyright notice, +# this list of conditions and the following disclaimer. +# 2. Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE +# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +# POSSIBILITY OF SUCH DAMAGE. + +# PROVIDE: fahclient +# REQUIRE: DAEMON LOGIN NETWORKING linux + +. /etc/rc.subr + +name='fahclient' +rcvar='fahclient_enable' + +load_rc_config 'fahclient' + +# Default settings. +: "${fahclient_enable:=NO}" +: "${fahclient_user:=fahclient}" +: "${fahclient_chdir:=%%FAHCLIENT_WORK_DIR%%}" + +: "${fahclient_pidfile:=%%FAHCLIENT_WORK_DIR%%/fahclient.pid}" +: "${fahclient_config:=%%ETCDIR%%/config.xml}" +: "${fahclient_logfile:=%%FAHCLIENT_WORK_DIR%%/log.txt}" + +pidfile="${fahclient_pidfile}" +command='%%FAHCLIENT_PROGRAM%%' +# Some notes on the specified options: +# - --config is necessary to point the program to the correct configuration +# file. +# - --chdir is used to switch to a desired work directory. The program is going +# to create a lot of files in its current working directory so should not be +# just any directory on the system. +# - --pid-file specifies the location for the PID file. +# - --daemon is to detach the program from the terminal and run it +# in the background. +command_args="--config ${fahclient_config} --chdir ${fahclient_chdir}" +command_args="${command_args} --pid-file ${pidfile} --daemon" +extra_commands="log" +log_cmd="tail -F -- ${fahclient_logfile}" +required_modules='linprocfs linsysfs linuxcommon' + +run_rc_command "$1" diff --git a/biology/linux-foldingathome/files/pkg-message.in b/biology/linux-foldingathome/files/pkg-message.in new file mode 100644 index 000000000000..33c55d3ac5ea --- /dev/null +++ b/biology/linux-foldingathome/files/pkg-message.in @@ -0,0 +1,56 @@ +[ +{ type: install + message: <<EOM +Quick start +=========== + +Here is a list of steps to quickly get started with Folding@home on FreeBSD: + +1. Mount linprocfs(5) in /compat/linux/proc. + +2. Mount linsysfs(5) in /compat/linux/sys. + +3. Enable the fahclient service: + + sysrc fahclient_enable="YES" + +4. Start the service: + + service fahclient start + +At this point, the daemon should be up and folding. + +Additional notes +================ + +- The current status of folding can be inspected by running + the following command: + + service fahclient log + +- The default working directory for fahclient is %%FAHCLIENT_WORK_DIR%%. + In order to function properly, fahclient requires its working directory + to be on a partition/dataset with execute permissions on. For example + if /var/db is on a ZFS dataset with exec=off, then %%FAHCLIENT_WORK_DIR%% + needs to have exec=on. + + Note, that usually the permissions are on unless the system + configuration was modified by the administrator. + +- The ID of the FreeBSD team is 11743. In order to join + the team add the following line to %%FAHCLIENT_CONFIG_XML%%: + + <team value="11743"/> + + The service has to be restarted to pick up the change. + + Statistics for the FreeBSD team can be viewed here: + https://apps.foldingathome.org/teamstats/team11743.html + +- More information about configuring and running the Folding@home + software is available on those websites: + - https://foldingforum.org/ + - https://foldingathome.org/support/faq/ +EOM +} +] diff --git a/biology/linux-foldingathome/pkg-descr b/biology/linux-foldingathome/pkg-descr new file mode 100644 index 000000000000..ab1b775dd16a --- /dev/null +++ b/biology/linux-foldingathome/pkg-descr @@ -0,0 +1,17 @@ +Folding@home is a distributed computing project -- people from throughout +the world download and run software to band together to make one of the +largest supercomputers in the world. Every computer takes the project +closer to our goals. + +Folding@home uses novel computational methods coupled to distributed +computing, to simulate problems millions of times more challenging than +previously achieved. + +Protein folding is linked to disease, such as Alzheimer's, ALS, +Huntington's, Parkinson's disease, and many Cancers. Moreover, when +proteins do not fold correctly (i.e. "misfold"), there can be serious +consequences, including many well known diseases, such as Alzheimer's, +Mad Cow (BSE), CJD, ALS, Huntington's, Parkinson's disease, and many +cancers and cancer-related syndromes. + +WWW: http://folding.stanford.edu/ diff --git a/biology/linux-foldingathome/pkg-plist b/biology/linux-foldingathome/pkg-plist new file mode 100644 index 000000000000..be21039da1c9 --- /dev/null +++ b/biology/linux-foldingathome/pkg-plist @@ -0,0 +1,5 @@ +bin/FAHClient +bin/FAHCoreWrapper +@dir(fahclient,fahclient,) %%ETCDIR%% +@sample(fahclient,fahclient,) %%ETCDIR%%/config.xml.sample +@dir(fahclient,fahclient,) %%FAHCLIENT_WORK_DIR%% |