README.md 2.95 KB
Newer Older
Valentin Reis's avatar
Valentin Reis committed
1 2
### `argonix`

Valentin Reis's avatar
Valentin Reis committed
3 4 5 6 7 8 9
wrapper around various nix tools to override sources and provision
dependencies for argo. supports remote target machines.

#### Install

'stable' (the one tracked by argopkgs/master and used in CI):

Valentin Reis's avatar
Valentin Reis committed
10 11 12
``` {.bash}
nix-env -f argopkgs="https://xgitlab.cels.anl.gov/argo/argopkgs/-/archive/master/argopkgs-master.tar.gz" -iA argonix
```
Valentin Reis's avatar
Valentin Reis committed
13 14 15

bleeding:

Valentin Reis's avatar
Valentin Reis committed
16 17 18
``` {.bash}
nix-env -I argopkgs="https://xgitlab.cels.anl.gov/argo/argopkgs/-/archive/master/argopkgs-master.tar.gz" -f "https://xgitlab.cels.anl.gov/argo/argonix/-/archive/master/argonix-master.tar.gz" -iA argonix
```
Valentin Reis's avatar
Valentin Reis committed
19 20 21 22 23 24 25 26

#### Usage

``` {.bash}
argonix --help
```

``` {.txt}
Valentin Reis's avatar
Valentin Reis committed
27
Usage: argonix COMMAND
Valentin Reis's avatar
Valentin Reis committed
28 29

Available options:
Valentin Reis's avatar
Valentin Reis committed
30
  COMMAND                  Type of operation to run.
Valentin Reis's avatar
Valentin Reis committed
31
  -h,--help                Show this help text
Valentin Reis's avatar
Valentin Reis committed
32 33 34

Available commands:
  build                    Run an argo-compatible nix-build.
Valentin Reis's avatar
Valentin Reis committed
35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75
  shell                    Enter an argo-compatible nix-shell
```

``` {.bash}
argonix shell --help
```

``` {.txt}
Usage: argonix shell TARGET [--argopkgs ARGOPKGS] [-v|--verbose]
                     [-a|--provision_apps] [-r|--remote_build]
                     [--retreive RELATIVE_PATH] [--retreiveAs LOCAL_PATH]
                     [--target_machine USER@HOST] [--aml PATH] [--libnrm PATH]
                     [--nrm PATH] [--containers PATH] [--argotk PATH]
                     [--amg PATH] [--lammps PATH] [--qmcpack PATH]
                     [--stream PATH] [--openmc PATH] [--run COMMAND]
  Enter an argo-compatible nix-shell

Available options:
  TARGET                   The build target.
  --argopkgs ARGOPKGS      Nix expression that produces the argopkgs source
                           path. (default: "<argopkgs>")
  -v,--verbose             Enable verbose mode
  -a,--provision_apps      Build and provision applications.
  -r,--remote_build        Build on the remote rather than locally.
  --retreive RELATIVE_PATH File/Folder to retreive from the remote machine.
  --retreiveAs LOCAL_PATH  File/Folder to save retreived data as (locally).
  --target_machine USER@HOST
                           Target machine. defaults to localhost via forking.
  --aml PATH               aml source folder override.
  --libnrm PATH            libnrm source folder override.
  --nrm PATH               nrm source folder override.
  --containers PATH        containers source folder override.
  --argotk PATH            argotk source folder override.
  --amg PATH               amg source folder override.
  --lammps PATH            lammps source folder override.
  --qmcpack PATH           qmcpack source folder override.
  --stream PATH            stream source folder override.
  --openmc PATH            openmc source folder override.
  --run COMMAND            Command to run the environment instead of an
                           interactive shell
  -h,--help                Show this help text
Valentin Reis's avatar
Valentin Reis committed
76 77 78 79
```

### Hacking

Valentin Reis's avatar
Valentin Reis committed
80
-   `nix-shell` provides cabal-build, ghcid, hlint
Valentin Reis's avatar
Valentin Reis committed
81

Valentin Reis's avatar
Valentin Reis committed
82
-   edit `.README.md` in place of README.md, run ./shake.hs to generate.