Skip to content

PSAppDeployToolkit deployment package for system installs of the Folding@home client

License

Notifications You must be signed in to change notification settings

ladewig/psadt-foldingathome-client

Repository files navigation

psadt-foldingathome-client

Deployment package for system install of the Folding@home (FAH) client for Windows built using PowerShell App Deployment Toolkit (PSADT)

This deployment package is intended for deploying the client in an organization or enterprise using a standard configuration. The FAH client EULA states that "You may use this software on a computer system only if you own the system or have the written permission of the owner." Please only use this package in accordance with those terms.

The package will install and configure the client to run either as a service or a scheduled task. The client is unable to use the GPU for folding when it runs as a service. If a supported GPU is found, the client will run as a scheduled task, otherwise the client will run as a service. The FAHClient data directory is stored in a central location under C:\ProgramData (aka %ProgramData%).

Manifest

  • AppDeployToolkit\ - Core files of PSADT. The only file that has been customized is AppDeployToolkitExtensions.ps1 which contains the following custom functions:
    • New-FAHScheduledTask - Creates a scheduled task to run the FAH client as LocalService by default, starting at boot and also hourly (in case the client stops for any reason).
    • Remove-FAHScheduledTask - Removes the scheduled task for the client. Used when the package is uninstalled.
    • Get-FAHUsername - (optional) Returns a username to be used based on the department the machine belongs to. At my university, the department number is part of the computer name, and that is used to return a standardized department username based on an included departments.csv file. If a username is specified in defaults.txt, this function is not used. Adapt or replace with your own function as necessary.
  • Files\ - Download the FAH client installer and save to this folder. Current version is 7.6.13.
  • SupportFiles\ - Contains supporting files.
    • defaults.txt - Package obtains configuration options from this file and configures the client during the installation. Options are specified, one per line, in format: option=value Replace contents with your options; do not use as is.
    • departments.csv - (optional) Sample file containing department data used by Get-FAHUsername function for setting a unique username by department.
    • FAHoptions.txt - List of FAH client configuration options. Included as a convenience. Generated by running FAHClient.exe --help. Current as of 7.6.13 client.
  • DeployApplication.exe - (optional) Executable that can be used to launch the Deploy-Application.ps1 script without opening a PowerShell console window. Supports passing command-line parameters to the script.
  • Deploy-Application.ps1 - Installs/uninstalls the FAH client.
  • Deploy-Application.exe.config - Application configuration file.

Instructions

  1. Download deployment package

  2. Download FAH client installer fah-installer_7.6.13_x86.exe and save to Files\ folder.

  3. If you downloaded a different version of the installer than 7.6.13, make sure you update the variable declaration for $appVersion in DeployApplication.ps1 to match the version you are using.

  4. Edit defaults.txt in SupportFiles\ to specify your configuration options. At a minimum, specify user, team, and passkey (optional but recommended). If you don't have a passkey, request one at https://apps.foldingathome.org/getpasskey. If you want to use different user names, do not set user here and continue to next step.

  5. (optional) If you plan to use different user names and are not setting user in defaults.txt, modify the Get-FAHUsername custom function as needed to meet your requirements.

  6. Deploy the client using your method of choice. Commands to install/uninstall are:

    • Deploy client
      powershell.exe -ExecutionPolicy bypass -NoLogo -NoProfile .\Deploy-Application.ps1 or
      Deploy-Application.exe

    • Deploy client in silent mode
      powershell.exe -ExecutionPolicy bypass -NoLogo -NoProfile .\Deploy-Application.ps1 -DeployMode "silent" or
      Deploy-Application.exe silent

    • Uninstall client
      powershell.exe -ExecutionPolicy bypass -NoLogo -NoProfile .\Deploy-Application.ps1 -DeploymentType "Uninstall" or
      Deploy-Application.exe Uninstall

    • Uninstall client in silent mode
      powershell.exe -ExecutionPolicy bypass -NoLogo -NoProfile .\Deploy-Application.ps1 -DeploymentType "Uninstall" -DeployMode "silent" or
      Deploy-Application.exe Uninstall Silent

About

PSAppDeployToolkit deployment package for system installs of the Folding@home client

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published