---
# System prepended metadata

title: NeSI Software Install

---

# 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/*/*
```
