This repository contains my scripts and notebooks to manage folding@home data. Use them as you wish but beware of bugs! Please let me know if you find some bug or problem and please share your improvements to the code!
fah-progress.ipynb
: this notebook will download the leveldb of the workserver and help-you study the state of your data.environment.yml
: this will install with conda the necessary libraries to run the code of this repository.environment-mac.yml
: this will install with conda necessary libraries for MacOS X systems except for theplyvel
library
You must also install leveldb to use the fah-progress.ipynb.
conda env create -f environment.yml
conda activate fah-leveldb
ipython kernel install --user --name=fah-leveldb
MacOS X - by Sukrit Singh ([email protected])
To actually install the environment, first do:
conda env create -f environment-mac.yml
conda activate fah-leveldb
ipython kernel install --user --name=fah-leveldb
However, you must do a manual installation of the plyvel
library due to differences in the Darwin OS.
Next, download the plyvel
library manually from the github page.
Unzip and navigate into the plyvel
package:
unzip plyvel-master.zip
cd plyvel-master
Next, in plyvel-master/setup.py
, replace Line 17 with an updated version:
extra_compile_args = ['-Wall', '-g', '-x', 'c++', '-std=c++11', '-fno-rtti']
Save the updated setup.py
.
Next we will install leveldb:
It turns out that the plyvel
repo already has the scripts you need to setup leveldb
. Simply go to plyvel-master/scripts
and run the following scripts - Run them in the following order (note that you need cmake
):
./cibuildwheel-before-build.sh
./install-leveldb.sh
./install-snappy.sh
One alternative approach : To install leveldb on MacOS, you can use Homebrew
brew install leveldb
Note that homebrew installation can be a bit tricky on MacOS Big Sur
Once you leveldb installed:
Run the following commands in the same directory where setup.py
is:
make
python setup.py install
Test whether plyvel works using python -c 'import plyvel'
- this should return no output if everything worked!
Now feel free to use fah-progress.ipynb
for anything you want!