Page MenuHomeFreeBSD

D59826.id187214.diff
No OneTemporary

D59826.id187214.diff

Index: biology/Makefile
===================================================================
--- biology/Makefile
+++ biology/Makefile
@@ -52,6 +52,7 @@
SUBDIR += erminej
SUBDIR += exonerate
SUBDIR += fasda
+ SUBDIR += foldingathome
SUBDIR += fasda-utils
SUBDIR += fasta
SUBDIR += fasta3
Index: biology/foldingathome/Makefile
===================================================================
--- /dev/null
+++ biology/foldingathome/Makefile
@@ -0,0 +1,73 @@
+PORTNAME= foldingathome
+DISTVERSIONPREFIX= v
+DISTVERSION= 8.5.6
+CATEGORIES= biology
+
+MAINTAINER= 0mp@FreeBSD.org
+COMMENT= Folding@home client for distributed simulation of protein folding
+WWW= https://foldingathome.org/
+
+LICENSE= GPLv3+
+LICENSE_FILE= ${WRKSRC}/LICENSE
+
+BUILD_DEPENDS= boost-libs>0:devel/boost-libs
+LIB_DEPENDS= libcbang0.so:devel/cbang \
+ libevent.so:devel/libevent \
+ libevent_pthreads.so:devel/libevent \
+ libexpat.so:textproc/expat2 \
+ libleveldb.so:databases/leveldb \
+ liblz4.so:archivers/liblz4 \
+ libre2.so:devel/re2 \
+ libsnappy.so:archivers/snappy \
+ libsysinfo.so:devel/libsysinfo \
+ libxxhash.so:devel/xxhash \
+ libyaml.so:textproc/libyaml \
+ libzstd.so:archivers/zstd
+
+USES= compiler:c++17-lang localbase scons sqlite
+
+USE_GITHUB= yes
+GH_ACCOUNT= FoldingAtHome
+GH_PROJECT= fah-client-bastet
+USE_RC_SUBR= fahclient
+
+MAKE_ARGS= cc="${CC}" \
+ ccflags="${CCFLAGS}" \
+ compiler="${CHOSEN_COMPILER_TYPE:C/gcc/gnu/}" \
+ cxx="${CXX}" \
+ cxxflags="${CXXFLAGS}" \
+ cxxstd="c++17" \
+ ldflags="${LDFLAGS}" \
+ libpath="/lib" \
+ prefix="${STAGEDIR}${PREFIX}" \
+ sharedlib=1
+MAKE_ENV= CBANG_HOME=${_CBANG_HOME}
+
+ETCDIR= ${PREFIX}/etc/fahclient
+DOCSDIR= ${PREFIX}/share/doc/fahclient
+
+SUB_FILES= fahclient.8 pkg-message
+SUB_LIST= FAHCLIENT_CONFIG_XML=${_FAHCLIENT_CONFIG_XML} \
+ FAHCLIENT_PROGRAM=${_FAHCLIENT_PROGRAM} \
+ FAHCLIENT_WORK_DIR=${_FAHCLIENT_WORK_DIR}
+
+USERS= fahclient
+GROUPS= fahclient
+
+PLIST_SUB= FAHCLIENT_WORK_DIR=${_FAHCLIENT_WORK_DIR}
+
+_CBANG_HOME= ${LOCALBASE}/libexec/cbang
+
+_FAHCLIENT_CONFIG_XML= ${ETCDIR}/config.xml
+_FAHCLIENT_WORK_DIR= /var/db/fahclient
+_FAHCLIENT_PROGRAM= ${PREFIX}/bin/fah-client
+
+do-install:
+ ${INSTALL_PROGRAM} ${WRKSRC}/fah-client ${STAGEDIR}${PREFIX}/bin/
+ @${MKDIR} ${STAGEDIR}${ETCDIR}
+ ${INSTALL_DATA} ${FILESDIR}/config.xml.sample \
+ ${STAGEDIR}${_FAHCLIENT_CONFIG_XML}.sample
+ @${MKDIR} ${STAGEDIR}${_FAHCLIENT_WORK_DIR}
+ ${INSTALL_MAN} ${WRKDIR}/fahclient.8 ${STAGEDIR}${PREFIX}/share/man/man8
+
+.include <bsd.port.mk>
Index: biology/foldingathome/distinfo
===================================================================
--- /dev/null
+++ biology/foldingathome/distinfo
@@ -0,0 +1,5 @@
+TIMESTAMP = 1789767643
+SHA256 (FoldingAtHome-fah-client-bastet-v8.5.6_GH0.tar.gz) = 5c2fe001960e8f67528317e9860e2f236001f9ca5373ea027a4c52fce433c2f4
+SIZE (FoldingAtHome-fah-client-bastet-v8.5.6_GH0.tar.gz) = 927932
+SHA256 (CauldronDevelopmentLLC-cbang-bastet-v8.5.6_GH0.tar.gz) = 00323f2faa00af708760b7d6006f1cf4f759c3ca04d4b5f2e33d7042d8bc0286
+SIZE (CauldronDevelopmentLLC-cbang-bastet-v8.5.6_GH0.tar.gz) = 5640640
Index: biology/foldingathome/files/config.xml.sample
===================================================================
--- /dev/null
+++ biology/foldingathome/files/config.xml.sample
@@ -0,0 +1,64 @@
+<config>
+ <!--
+ This is a sample XML configuration file for the Folding@home
+ console client. This configuration file format is explained
+ in detail in the Client User's Guide.
+
+ Copy this file to 'config.xml' and edit.
+
+ To set your user name, team and passkey just edit the text
+ in quotes below.
+ -->
+
+ <!-- User Information -->
+ <user value="anonymous"/> <!-- Enter your user name here -->
+ <team value="0"/> <!-- Your team number -->
+ <passkey value=""/> <!-- 32 hexadecimal characters if provided -->
+
+ <power value="light"/>
+ <gpu value="false"/> <!-- If true, attempt to autoconfigure GPUs -->
+ <fold-anon value="false"/>
+
+ <!-- Folding Slots
+ No folding slot configuration is necessary. The client will
+ automaticlaly choose a good configuration for you. However, here
+ are some examples:
+
+ <slot id="0" type="CPU"/>
+
+ or
+
+ <slot id="0" type="CPU"/>
+ <slot id="1" type="GPU"/>
+
+ All slots in a configuration MUST have unique ids.
+ -->
+
+ <!-- Granting Remote FAHControl Access
+ To grant remote access to FAHControl and the remote command server add
+ the following:
+
+ <allow>127.0.0.1 x.x.x.x</allow>
+ <password>PASS</password>
+
+ Where x.x.x.x is the IP address of the computer which should be granted
+ remote access and PASS is you choose to further secure the connection.
+ -->
+
+ <!-- Granting Remote Web Access
+ If you would like to grant remote Web access then you need these two
+ configuration lines:
+
+ <allow>127.0.0.1 x.x.x.x</allow>
+ <web-allow>127.0.0.1 x.x.x.x</web-allow>
+
+ Where x.x.x.x is the IP address of the computer which should be granted
+ remote access. You may also need to open port 7396 on your firewall.
+
+ You can then access the Web interface remotely by going to this address:
+
+ http://y.y.y.y:7396/
+
+ Where y.y.y.y is the IP address of this computer.
+ -->
+</config>
Index: biology/foldingathome/files/fahclient.8.in
===================================================================
--- /dev/null
+++ biology/foldingathome/files/fahclient.8.in
@@ -0,0 +1,181 @@
+.\"
+.\" SPDX-License-Identifier: BSD-2-Clause
+.\"
+.\" Copyright (c) 2020-2026 Mateusz Piotrowski <0mp@FreeBSD.org>
+.\"
+.Dd June 9, 2026
+.Dt FAHCLIENT 8
+.Os
+.Sh NAME
+.Nm fahclient
+.Nd service daemon for the Folding@home Client
+.Sh SYNOPSIS
+.Nm
+.Ar command Op Ar args ...
+.Nm
+.Cm log
+.Nm
+.Cm showconfig
+.Sh DESCRIPTION
+.Nm
+is an
+.Xr rc 8
+daemon for the Folding@home Client.
+.Pp
+Configure
+.Nm
+with the following
+.Xr rc.conf 5
+variables:
+.Bl -tag -width fahclient_extra_flags -offset 2n
+.It Va fahclient_enable
+Toggle to enable
+.Nm .
+Default:
+.Dq NO .
+.It Va fahclient_chdir
+Working directory of
+.Nm .
+Default:
+.Dq Pa %%FAHCLIENT_WORK_DIR%% .
+.It Va fahclient_config
+Configuration file.
+Default:
+.Dq Pa %%ETCDIR%%/config.xml .
+.It Va fahclient_donor
+Donor to attribute work units to.
+Settings in the configuration file take precedence.
+Default:
+.Dq Anonymous .
+.It Va fahclient_extra_flags
+Extra flags passed to the Folding@home Client after other flags.
+Default: empty.
+.It Va fahclient_flags
+Extra flags passed to
+.Xr daemon 8
+before any other flags.
+Default: empty.
+.It Va fahclient_logfile
+Log file.
+Takes precedence over settings in the configuration file.
+Default:
+.Dq Pa %%FAHCLIENT_WORK_DIR%%/log.txt .
+.It Va fahclient_team
+Folding@home team to join and attribute work units to.
+Settings in the configuration file take precedence.
+Default:
+.Ql 11743 ,
+Team
+.Fx .
+.It Va fahclient_pidfile
+PID file.
+Default:
+.Dq Pa %%FAHCLIENT_WORK_DIR%%/fahclient.pid .
+.It Va fahclient_user
+System user to run
+.Nm fahclient
+as.
+Default:
+.Ql fahclient .
+.El
+.Pp
+.Nm
+supports the following extra commands:
+.Bl -tag -width showconfig -offset 2n
+.It Cm log
+View
+.Nm Ap s
+folding logs.
+.It Cm showconfig
+Show the final configuration of
+.Nm
+after all configuration files and command-line flags are processed.
+.El
+.Pp
+The Web Dashboard is available at
+.Lk https://v8-4.foldingathome.org/
+and
+.Lk http://localhost:7396/
+when
+.Nm
+is running.
+Visit the Web Dashboard to connect
+.Nm
+to a Folding@home Account and manage folding work.
+.Pp
+Link
+.Nm
+to an existing account with an Account Token.
+Generate it on the Web Dashboard.
+Add the Account Token to either the configuration file
+or specify it a command-line argument to
+.Nm :
+.Dl sysrc fahclient_extra_flags+=" --account-token=<Account-Token>"
+.Pp
+Refer to the Folding@home Client's help message for more usage
+information:
+.Dl %%FAHCLIENT_PROGRAM%% --help
+.Sh FILES
+.Bl -tag -width "%%FAHCLIENT_PROGRAM%%"
+.It Pa %%FAHCLIENT_PROGRAM%%
+Folding@home Client program invoked by the
+.Nm
+daemon.
+.Sh EXAMPLES
+.Ss Example 1: Quick Start
+Start
+.Nm
+by executing the following steps:
+.Bd -literal -offset indent
+# Mount linprocfs(5) at /compat/linux/proc:
+mount -t linprocfs linprocfs /compat/linux/proc
+# Mount linsysfs(5) at /compat/linux/proc:
+mount -t linsysfs linsysfs /compat/linux/sys
+# Enable fahclient:
+service fahclient enable
+# Optionally, set the desired donor name:
+sysrc fahclient_donor="Anonymous"
+# Start fahclient:
+service fahclient start
+.Ed
+.Pp
+Open the Folding@home Web Dashboard to finish the setup.
+.Pp
+Add
+.Xr linprocfs 5
+and
+.Xr linsysfs 5
+entries to
+.Xr fstab 5
+to make the setup persistent across reboots.
+.Sh SEE ALSO
+.Lk https://foldingathome.org/guides/v8-4-client-guide/ "Folding@home v8.4 Client Guide"
+.Pp
+.Lk https://foldingathome.org/faq/ "Folding@home FAQ"
+.Pp
+.Lk https://foldingforum.org/ "Folding Forum"
+.Pp
+.Lk https://stats.foldingathome.org/team/11743 "Team FreeBSD Statistics"
+.Sh HISTORY
+Team
+.Fx
+was founded by
+.An Frank Mayhar .
+.Sh AUTHORS
+The
+.Nm
+manual page was written by
+.An Mateusz Piotrowski Aq Mt 0mp@FreeBSD.org .
+.Sh CAVEATS
+The working directory of
+.Nm
+must have the execute permissions enabled to function properly.
+For example, on a
+.Xr zfs 4
+dataset where
+.Pa %%FAHCLIENT_WORK_DIR%%
+is located the
+.Ql exec
+property
+must be set to
+.Ql on .
Index: biology/foldingathome/files/fahclient.in
===================================================================
--- /dev/null
+++ biology/foldingathome/files/fahclient.in
@@ -0,0 +1,66 @@
+#! /bin/sh -
+
+# SPDX-License-Identifier: BSD-2-Clause
+#
+# Copyright (c) 2020-2026 Mateusz Piotrowski <0mp@FreeBSD.org>
+#
+
+# PROVIDE: fahclient
+# REQUIRE: DAEMON LOGIN NETWORKING linux
+
+#
+# Refer to to the fahclient(8) manual page for the configuration instructions.
+#
+
+. /etc/rc.subr
+
+name='fahclient'
+rcvar='fahclient_enable'
+
+load_rc_config 'fahclient'
+
+# Default settings.
+: "${fahclient_enable:=NO}"
+: "${fahclient_user:=fahclient}"
+# The program is going to create a lot of files in its working directory,
+# so make sure that they all land in a sensible place.
+: "${fahclient_chdir:=%%FAHCLIENT_WORK_DIR%%}"
+: "${fahclient_svcj_options:=net_basic}"
+
+: "${fahclient_donor=Anonymous}"
+: "${fahclient_team=11743}"
+
+: "${fahclient_pidfile:=%%FAHCLIENT_WORK_DIR%%/fahclient.pid}"
+: "${fahclient_config:=%%ETCDIR%%/config.xml}"
+: "${fahclient_logfile:=%%FAHCLIENT_WORK_DIR%%/log.txt}"
+
+pidfile="${fahclient_pidfile}"
+procname="%%FAHCLIENT_PROGRAM%%"
+command="/usr/sbin/daemon"
+command_args="-p ${pidfile} -- ${procname}"
+# Some notes on the specified options:
+# - --user sets the donor work units are attributed to (config file takes
+# precedence).
+# - --team sets the team work units are attributed to (cfg file takes
+# precedence).
+# - --config is necessary to point the program to the correct configuration
+# file.
+# - fahclient_extra_flags are passed in after all other options.
+_fahclient_command_args=
+_fahclient_command_args="${_fahclient_command_args} ${fahclient_donor:+--user=${fahclient_donor}}"
+_fahclient_command_args="${_fahclient_command_args} ${fahclient_team:+--team=${fahclient_team}}"
+_fahclient_command_args="${_fahclient_command_args} --config=${fahclient_config}"
+_fahclient_command_args="${_fahclient_command_args} --log=${fahclient_logfile}"
+_fahclient_command_args="${_fahclient_command_args} --log-rotate-dir=$(dirname "${fahclient_logfile}")"
+_fahclient_command_args="${_fahclient_command_args} --log-to-screen=false"
+_fahclient_command_args="${_fahclient_command_args} ${fahclient_extra_flags}"
+command_args="${command_args} ${_fahclient_command_args}"
+extra_commands="log showconfig"
+log_cmd="tail -F -- ${fahclient_logfile}"
+showconfig_cmd="${procname} ${_fahclient_command_args} --log-to-screen=true --print"
+if [ -n "$fahclient_user" ]; then
+ showconfig_cmd="su -m $fahclient_user -c 'sh -c \"$showconfig_cmd\"'"
+fi
+required_modules='linprocfs linsysfs linux64:linux64elf'
+
+run_rc_command "$1"
Index: biology/foldingathome/files/patch-SConstruct
===================================================================
--- /dev/null
+++ biology/foldingathome/files/patch-SConstruct
@@ -0,0 +1,20 @@
+--- SConstruct.orig 2026-09-18 23:24:25 UTC
++++ SConstruct
+@@ -1,5 +1,6 @@ import os
+ # Setup
+ import os
++import sys
+ import json
+ env = Environment(ENV = os.environ)
+ try:
+@@ -52,6 +53,10 @@ if not env.GetOption('clean'):
+ env.AppendUnique(LINKFLAGS = flags)
+
+ env.Append(PREFER_DYNAMIC = 'z lz4 systemd m'.split())
++
++ if sys.platform.startswith('freebsd'):
++ conf.CBRequireLib('event_pthreads')
++ #env.Append(LIBS = ['event_pthreads'])
+
+ conf.Finish()
+
Index: biology/foldingathome/files/patch-src_client.scons
===================================================================
--- /dev/null
+++ biology/foldingathome/files/patch-src_client.scons
@@ -0,0 +1,16 @@
+--- src/client.scons.orig 2026-09-18 23:22:56 UTC
++++ src/client.scons
+@@ -1,4 +1,5 @@ import glob
+ import glob
++import sys
+
+ Import('*')
+
+@@ -24,6 +25,7 @@ elif env['PLATFORM'] == 'darwin': src += Glob('fah/cli
+ src += Glob('fah/client/win/*.cpp')
+
+ elif env['PLATFORM'] == 'darwin': src += Glob('fah/client/osx/*.cpp')
++elif env['PLATFORM'] == 'posix' and sys.platform.startswith('freebsd'): src += Glob('fah/client/freebsd/*.cpp')
+ else: src += Glob('fah/client/lin/*.cpp')
+
+ # Build Info
Index: biology/foldingathome/files/patch-src_fah_client_OS.cpp
===================================================================
--- /dev/null
+++ biology/foldingathome/files/patch-src_fah_client_OS.cpp
@@ -0,0 +1,21 @@
+--- src/fah/client/OS.cpp.orig 2026-09-18 23:20:20 UTC
++++ src/fah/client/OS.cpp
+@@ -35,6 +35,8 @@
+ #include "win/WinOSImpl.h"
+ #elif defined(__APPLE__)
+ #include "osx/OSXOSImpl.h"
++#elif defined(__FreeBSD__)
++#include "freebsd/FreeBSDOSImpl.h"
+ #else
+ #include "lin/LinOSImpl.h"
+ #endif
+@@ -62,6 +64,9 @@ SmartPointer<OS> OS::create(App &app) {
+
+ #elif defined(__APPLE__)
+ return new OSXOSImpl(app);
++
++#elif defined(__FreeBSD__)
++ return new FreeBSDOSImpl(app);
+
+ #else
+ return new LinOSImpl(app);
Index: biology/foldingathome/files/patch-src_fah_client_freebsd_FreeBSDOSImpl.h
===================================================================
--- /dev/null
+++ biology/foldingathome/files/patch-src_fah_client_freebsd_FreeBSDOSImpl.h
@@ -0,0 +1,56 @@
+--- src/fah/client/freebsd/FreeBSDOSImpl.h.orig 2026-09-18 23:19:28 UTC
++++ src/fah/client/freebsd/FreeBSDOSImpl.h
+@@ -0,0 +1,53 @@
++/******************************************************************************\
++
++ This file is part of the Folding@home Client.
++
++ The fah-client runs Folding@home protein folding simulations.
++ Copyright (c) 2001-2024, foldingathome.org
++ All rights reserved.
++
++ This program is free software; you can redistribute it and/or modify
++ it under the terms of the GNU General Public License as published by
++ the Free Software Foundation; either version 3 of the License, or
++ (at your option) any later version.
++
++ This program is distributed in the hope that it will be useful,
++ but WITHOUT ANY WARRANTY; without even the implied warranty of
++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++ GNU General Public License for more details.
++
++ You should have received a copy of the GNU General Public License along
++ with this program; if not, write to the Free Software Foundation, Inc.,
++ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
++
++ For information regarding this software email:
++ Joseph Coffland
++ joseph@cauldrondevelopment.com
++
++\******************************************************************************/
++
++#pragma once
++
++#include <fah/client/OS.h>
++
++
++namespace FAH {
++ namespace Client {
++ class FreeBSDOSImpl : public OS {
++ int sock = -1;
++ cb::SmartPointer<cb::Event::Event> event;
++
++ public:
++ FreeBSDOSImpl(App &app);
++ ~FreeBSDOSImpl();
++
++ // From OS
++ const char *getName() const override;
++ const char *getCPU() const override;
++ bool isSystemIdle() const override;
++
++ private:
++ void ueventMsg();
++ };
++ }
++}
Index: biology/foldingathome/files/patch-src_fah_client_freebsd_FreeBSDOSImpl.cpp
===================================================================
--- /dev/null
+++ biology/foldingathome/files/patch-src_fah_client_freebsd_FreeBSDOSImpl.cpp
@@ -0,0 +1,122 @@
+--- src/fah/client/freebsd/FreeBSDOSImpl.cpp.orig 2026-09-18 23:19:24 UTC
++++ src/fah/client/freebsd/FreeBSDOSImpl.cpp
+@@ -0,0 +1,119 @@
++/******************************************************************************\
++
++ This file is part of the Folding@home Client.
++
++ The fah-client runs Folding@home protein folding simulations.
++ Copyright (c) 2001-2024, foldingathome.org
++ All rights reserved.
++
++ This program is free software; you can redistribute it and/or modify
++ it under the terms of the GNU General Public License as published by
++ the Free Software Foundation; either version 3 of the License, or
++ (at your option) any later version.
++
++ This program is distributed in the hope that it will be useful,
++ but WITHOUT ANY WARRANTY; without even the implied warranty of
++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++ GNU General Public License for more details.
++
++ You should have received a copy of the GNU General Public License along
++ with this program; if not, write to the Free Software Foundation, Inc.,
++ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
++
++ For information regarding this software email:
++ Joseph Coffland
++ joseph@cauldrondevelopment.com
++
++\******************************************************************************/
++
++#include "FreeBSDOSImpl.h"
++
++#include <fah/client/App.h>
++
++#include <cbang/os/PowerManagement.h>
++#include <cbang/log/Logger.h>
++
++#include <array>
++#include <cstdio>
++
++#include <sys/socket.h>
++#include <netlink/netlink.h>
++#include <netlink/netlink_route.h>
++#include <unistd.h>
++#include <sys/utsname.h>
++
++using namespace FAH::Client;
++using namespace std;
++using namespace cb;
++
++
++namespace {
++ int open_uevent_netlink() {
++ sockaddr_nl sa {};
++ sa.nl_family = AF_NETLINK;
++ sa.nl_pid = getpid();
++ sa.nl_groups = -1; // receive all broadcasted uevents
++
++ int sock = socket(AF_NETLINK, SOCK_RAW, NETLINK_KOBJECT_UEVENT);
++ if (sock < 0) return -1;
++ if (::bind(sock, (sockaddr *)&sa, sizeof(sa)) < 0) {
++ close(sock);
++ return -1;
++ }
++
++ return sock;
++ }
++}
++
++
++FreeBSDOSImpl::FreeBSDOSImpl(App &app) : OS(app), sock(open_uevent_netlink()) {
++ if (sock == -1) LOG_WARNING("Failed to open udev netlink socket, "
++ "may not be able to detect GPUs");
++ else {
++ auto flags = Event::EventFlag::EVENT_READ | Event::EventFlag::EVENT_PERSIST;
++ event = app.getEventBase().newEvent
++ (sock, this, &FreeBSDOSImpl::ueventMsg, flags);
++ event->add();
++ }
++}
++
++
++FreeBSDOSImpl::~FreeBSDOSImpl() {
++ if (sock != -1) close(sock);
++}
++
++
++const char *FreeBSDOSImpl::getName() const {return "freebsd";}
++
++
++const char *FreeBSDOSImpl::getCPU() const {
++ struct utsname name;
++
++ uname(&name);
++ string machine(name.machine);
++
++ if (machine.find("x86_64") != string::npos) return "amd64";
++ if (machine == "arch64" || machine == "arm64") return "arm64";
++
++ return OS::getCPU();
++}
++
++
++bool FreeBSDOSImpl::isSystemIdle() const {
++ return 15 < PowerManagement::instance().getIdleSeconds();
++}
++
++
++void FreeBSDOSImpl::ueventMsg() {
++ array<char, 4096> buf {};
++ auto len = recv(sock, buf.data(), buf.size() - 1, 0);
++ if (len < 0) return;
++
++ string msg(buf.data(), len);
++ LOG_DEBUG(4, "UEVENT: " << String::escapeC(msg));
++
++ // Only interested in DRM "add" events
++ if (msg.find("ACTION=add") != string::npos &&
++ msg.find("SUBSYSTEM=drm") != string::npos)
++ gpuAdded();
++}
Index: biology/foldingathome/files/pkg-message.in
===================================================================
--- /dev/null
+++ biology/foldingathome/files/pkg-message.in
@@ -0,0 +1,8 @@
+[
+{ type: install
+ message: <<EOM
+Refer to the fahclient(8) manual page for instructions
+on how to get started with Folding@home on FreeBSD.
+EOM
+}
+]
Index: biology/foldingathome/pkg-descr
===================================================================
--- /dev/null
+++ biology/foldingathome/pkg-descr
@@ -0,0 +1,15 @@
+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.
Index: biology/foldingathome/pkg-plist
===================================================================
--- /dev/null
+++ biology/foldingathome/pkg-plist
@@ -0,0 +1,5 @@
+bin/fah-client
+share/man/man8/fahclient.8.gz
+@dir(fahclient,fahclient,) %%ETCDIR%%
+@sample(fahclient,fahclient,) %%ETCDIR%%/config.xml.sample
+@dir(fahclient,fahclient,) %%FAHCLIENT_WORK_DIR%%

File Metadata

Mime Type
text/plain
Expires
Fri, Oct 2, 5:11 AM (1 h, 56 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
40061881
Default Alt Text
D59826.id187214.diff (22 KB)

Event Timeline