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

3
wrapper around nix tools to override sources and provision
Valentin Reis's avatar
Valentin Reis committed
4 5 6 7 8 9
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
``` {.bash}
Valentin Reis's avatar
Valentin Reis committed
11
nix-env -f "https://xgitlab.cels.anl.gov/argo/argopkgs/-/archive/master/argopkgs-master.tar.gz" -iA argonix
Valentin Reis's avatar
Valentin Reis committed
12
```
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
  shell                    Enter an argo-compatible nix-shell
Valentin Reis's avatar
Valentin Reis committed
36 37
  remote-shell             Enter an argo-compatible nix-shell on a remote
                           machine with nix enabled
Valentin Reis's avatar
Valentin Reis committed
38 39 40 41 42 43 44
```

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

``` {.txt}
Valentin Reis's avatar
Valentin Reis committed
45
Usage: argonix shell TARGET [--argopkgs ARGOPKGS] [-v|--verbose]
Valentin Reis's avatar
Valentin Reis committed
46 47 48 49 50 51
                     [-s|--sandboxing] [-g|--grafting] [--experiments PATH]
                     [--aml PATH] [--libnrm PATH] [--numabench PATH]
                     [--repoquality PATH] [--excit PATH] [--nrm PATH]
                     [--containers PATH] [--argotk PATH] [--amg PATH]
                     [--lammps PATH] [--qmcpack PATH] [--stream PATH]
                     [--openmc PATH] [--argonix PATH] [--run COMMAND]
Valentin Reis's avatar
Valentin Reis committed
52 53 54
  Enter an argo-compatible nix-shell

Available options:
Valentin Reis's avatar
Valentin Reis committed
55 56 57 58 59 60
  TARGET                   The build target, in aml libnrm numabench repoquality
                           excit nrm containers argotk amg lammps qmcpack stream
                           openmc argonix numabench-check excit-check powerexpe
                           test report testHello testListen testListen testHello
                           testListen testPerfwrapper testPower testSTREAM
                           testAMG testOpenMC testLAMMPS testQMCPack testAll
Valentin Reis's avatar
Valentin Reis committed
61 62 63
  --argopkgs ARGOPKGS      Nix expression that produces the argopkgs source
                           path. (default: "<argopkgs>")
  -v,--verbose             Enable verbose mode
Valentin Reis's avatar
Valentin Reis committed
64 65 66
  -s,--sandboxing          Enable nix sandboxing.
  -g,--grafting            Enable libnrm grafting to avoid rebuilding
                           applications.
Valentin Reis's avatar
Valentin Reis committed
67
  --experiments PATH       experiments source folder override.
Valentin Reis's avatar
Valentin Reis committed
68 69
  --aml PATH               aml source folder override.
  --libnrm PATH            libnrm source folder override.
Valentin Reis's avatar
Valentin Reis committed
70 71 72
  --numabench PATH         numabench source folder override.
  --repoquality PATH       repoquality source folder override.
  --excit PATH             excit source folder override.
Valentin Reis's avatar
Valentin Reis committed
73 74 75 76 77 78 79 80
  --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.
Valentin Reis's avatar
Valentin Reis committed
81
  --argonix PATH           argonix source folder override.
Valentin Reis's avatar
Valentin Reis committed
82 83 84
  --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
85 86 87 88
```

### Hacking

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

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