User Tools

Site Tools


opam-software

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

opam-software [2014/12/02 09:49] (current)
joguya created
Line 1: Line 1:
 +====== Opam ======
 +OPAM is a source-based package manager for OCaml. It supports multiple simultaneous compiler installations,​ flexible package constraints,​ and a Git-friendly development workflow.
  
 +==== v1.2.0 ====
 +  * Version: 1.2.0
 +  * Added: November, 2014
 +  * Link: https://​opam.ocaml.org/​
 +
 +=== Usage ===
 +  * Show all available versions of opam<​code>​module avail opam</​code>​
 +  * Load opam module: <​code>​module load opam/​1.2.0</​code>​
 +  * get quick help:<​code>​man opam</​code>​
 +
 +
 +=== Installation ===
 +  * Clone opam git repo, compile & install it to /​export/​apps/<​code>​
 +git clone https://​github.com/​ocaml/​opam.git
 +cd opam
 +sudo mkdir -p /​export/​apps/​opam/​1.2.0/​
 +sudo chown -R joguya:​joguya /​export/​apps/​opam/​1.2.0/​
 +git checkout rebuild
 +./configure --prefix=/​export/​apps/​opam/​1.2.0/​
 +make lib-ext
 +make
 +make install
 +sudo chown -R root:root /​export/​apps/​opam/​1.2.0/</​code>​
 +  * opam module file<​code>#​%Module1.0
 +#####################################################################​
 +##
 +## Opam Modulefile
 +## By James Oguya, j.oguya@cgiar.org
 +## November, 2014
 +##
 +
 +set appname ​        opam
 +set version ​        1.2.0
 +set prefix ​         /​export/​apps/​${appname}/​${version}
 +set exec_prefix ​    ​${prefix}/​bin
 +set url "​https://​opam.ocaml.org/"​
 +set msg "OPAM is a source-based package manager for OCaml. It supports multiple simultaneous compiler installations,​ flexible package constraints,​ and a Git-friendly development workflow.\nOpam Official Site: $url\n"​
 +
 +module-whatis $msg
 +
 +proc ModulesHelp { } {
 +    puts stderr "​$msg"​
 +}
 +
 +conflict ​       opam
 +
 +prepend-path ​   PATH    ${exec_prefix}
 +
 +# opam depends on ocaml module
 +if { ![is-loaded ocaml] } {
 +    module load ocaml
 +}</​code>​
 +  * deploy the new module using ansible<​code>​ansible-playbook site.yml -u joguya -K -s --limit=compute --tags=module</​code>​
opam-software.txt · Last modified: 2014/12/02 09:49 by joguya