Index: GIDs =================================================================== --- GIDs +++ GIDs @@ -186,7 +186,7 @@ ot-recorder:*:243: mastodon:*:244: routinator:*:245: -# free: 246 +fahclient:*:246:fahclient fcron:*:247: # free: 248 # free: 249 Index: UIDs =================================================================== --- UIDs +++ UIDs @@ -191,7 +191,7 @@ ot-recorder:*:243:243::0:0:OwnTracks Recorder:/nonexistent:/usr/sbin/nologin mastodon:*:244:244::0:0:Mastodon User:/usr/local/www/mastodon:/bin/sh routinator:*:245:245::0:0:Routinator 3000 Pseudo User:/nonexistent:/usr/sbin/nologin -# free: 246 +fahclient:*:246:246::0:0:Folding@home Desktop Client:/var/db/fahclient:/usr/sbin/nologin fcron:*:247:247::0:0:fcron pseudo-user:/nonexistent:/usr/sbin/nologin # free: 248 # free: 249 Index: science/Makefile =================================================================== --- science/Makefile +++ science/Makefile @@ -76,6 +76,7 @@ SUBDIR += erkale SUBDIR += erkale-pseudopotentials SUBDIR += esys-particle + SUBDIR += fahclient SUBDIR += fastcap SUBDIR += fasthenry SUBDIR += fisicalab Index: science/fahclient/Makefile =================================================================== --- /dev/null +++ science/fahclient/Makefile @@ -0,0 +1,58 @@ +# $FreeBSD$ + +PORTNAME= fahclient +DISTVERSION= 7.5.1-1 +CATEGORIES= science linux +MASTER_SITES= https://download.foldingathome.org/releases/public/release/fahclient/centos-6.7-64bit/v${DISTVERSION:R}/ +EXTRACT_SUFX= .x86_64.rpm + +MAINTAINER= 0mp@FreeBSD.org +COMMENT= Folding@home Desktop Client + +LICENSE= FAHSL +LICENSE_NAME= Folding@home Software License +LICENSE_FILE= ${WRKSRC}/usr/share/doc/fahclient/copyright +LICENSE_PERMS= auto-accept + +ONLY_FOR_ARCHS= amd64 +ONLY_FOR_ARCHS_REASON= The i386 client has not been ported + +USES= linux +USE_RC_SUBR= ${PORTNAME} + +NO_BUILD= yes + +SUB_FILES= pkg-message +SUB_LIST= FAHCLIENT_CONFIG_XML=${_FAHCLIENT_CONFIG_XML} \ + FAHCLIENT_HOME=${_FAHCLIENT_HOME} \ + FAHCLIENT_PROGRAM=${_FAHCLIENT_PROGRAM} +NO_WRKSUBDIR= yes + +USERS= fahclient +GROUPS= fahclient + +PLIST_SUB= FAHCLIENT_HOME=${_FAHCLIENT_HOME} + +# Keep in sync with the UIDs and GIDs files. +_FAHCLIENT_CONFIG_XML= ${ETCDIR}/config.xml +_FAHCLIENT_HOME= /var/db/fahclient +_FAHCLIENT_PROGRAM= ${PREFIX}/bin/FAHClient + +do-install: + ${INSTALL_PROGRAM} ${WRKSRC}/usr/bin/FAHClient \ + ${STAGEDIR}${_FAHCLIENT_PROGRAM} + ${INSTALL_PROGRAM} ${WRKSRC}/usr/bin/FAHCoreWrapper \ + ${STAGEDIR}${PREFIX}/bin/ + ${INSTALL_DATA} ${WRKSRC}/usr/share/pixmaps/* \ + ${STAGEDIR}${PREFIX}/share/pixmaps/ + ${INSTALL_DATA} ${WRKSRC}/usr/share/applications/FAHWebControl.desktop \ + ${STAGEDIR}${DESKTOPDIR} + @${MKDIR} ${STAGEDIR}${DOCSDIR} + (cd ${WRKSRC}/usr/share/doc/fahclient && \ + ${COPYTREE_SHARE} . ${STAGEDIR}${DOCSDIR}) + @${MKDIR} ${STAGEDIR}${ETCDIR} + ${INSTALL_DATA} ${STAGEDIR}${DOCSDIR}/sample-config.xml \ + ${STAGEDIR}${_FAHCLIENT_CONFIG_XML}.sample + @${MKDIR} ${STAGEDIR}/var/db/${PORTNAME} + +.include Index: science/fahclient/distinfo =================================================================== --- /dev/null +++ science/fahclient/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1584651753 +SHA256 (fahclient-7.5.1-1.x86_64.rpm) = da579fa02df66fc6fb48dc2bc81c4b6f46fe4f6696afe20d70b9bd5e5941837f +SIZE (fahclient-7.5.1-1.x86_64.rpm) = 3025708 Index: science/fahclient/files/fahclient.in =================================================================== --- /dev/null +++ science/fahclient/files/fahclient.in @@ -0,0 +1,61 @@ +#! /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_chdir:=%%FAHCLIENT_HOME%%}" +: "${fahclient_user:=fahclient}" +: "${fahclient_pidfile:=/var/run/fahclient.pid}" +: "${fahclient_config:=%%ETCDIR%%/config.xml}" + +pidfile="${fahclient_pidfile}" + +procname='%%FAHCLIENT_PROGRAM%%' +command="/usr/sbin/daemon" +command_args="-T ${name} -p ${pidfile} ${procname} ${fahclient_config}" + +start_precmd="fahclient_prestart" + +required_modules='linprocfs linsysfs linuxcommon' + +fahclient_prestart() { + touch "${pidfile}" && chown "${fahclient_user}" "${pidfile}" +} + +run_rc_command "$1" Index: science/fahclient/files/pkg-message.in =================================================================== --- /dev/null +++ science/fahclient/files/pkg-message.in @@ -0,0 +1,16 @@ +[ +{ type: install + message: <