# NeSI Software Install
# Easybuild
In home set an enivronment variable for local easybuild files. Directory only needs to be made once.
```
export MY_EB_PATH=/home/matt.bixley/Mahuika
# mkdir -p $MY_EB_PATH
cd $MY_EB_PATH
```
Pull the working directory from `opt/nesi/` and make new build locally to test
```
#darcs init
darcs pull /opt/nesi/nesi-apps-admin/Mahuika
cd easyconfigs
# create new .eb file, eg:
cp sratoolkit-2.11.3.eb sratoolkit-3.0.2.eb
nano sratoolkit-3.0.2.eb
```
In your new `.eb` file update the relevant features
```
easyblock = 'PackedBinary'
name = 'sratoolkit'
version = '2.11.3'
homepage = 'https://trace.ncbi.nlm.nih.gov/Traces/sra/sra.cgi?view=software'
description = """The SRA Toolkit, and the source-code SRA System Development
Kit (SDK), will allow you to programmatically access data housed within SRA
and convert it from the SRA format"""
toolchain = SYSTEM
sources = ['sratoolkit.%(version)s-centos_linux64.tar.gz']
source_urls = ['https://ftp-trace.ncbi.nlm.nih.gov/sra/sdk/%(version)s/']
sanity_check_paths = {
'files': ['bin/abi-load', 'bin/fastq-dump', 'bin/sff-load', 'bin/vdb-dump'],
'dirs': []
}
moduleclass = 'bio'
```
### Testing
```
export NESI_EASYBUILD_PROJECT_ID=nesi99999
module load nesi_eb
eb NEWFILE.eb # builds the module
module use ~/easybuildinstall/modules/all
module load NEWFILE
eg module load sratoolkit/3.0.2
$ sra-stat --version
sra-stat : 3.0.2
```
### INSTALLING
add your new .eb file to darcs after testing
```
darcs add NEWFILE.eb
darcs record # or postpone until you have tested...
```
then transfer to public
```
sudo -iu nesi-apps-admin
export MY_EB_PATH=/home/matt.bixley/Mahuika
cd Mahuika
darcs pull --dont-allow-conflicts $MY_EB_PATH
cd easyconfigs
module load nesi_eb
eb NEWFILE.eb
exit
```
### DELETING
to delete a locally built environment for further development and testing
```
rm -rf /nesi/project/nesi99999/matt.bixley/easybuildinstall/*/*
```