<commit_before>---
# install the julia programming language from the ubuntu PPA on all compute nodes
# https://launchpad.net/~staticfloat/+archive/ubuntu/juliareleases
# https://launchpad.net/~staticfloat/+archive/ubuntu/julia-deps

- hosts: compute
  become: yes
  tags: julia
  gather_facts: no # set it to yes, if you need to use {{ ansible_distribution_release }} to know if it is vivid etc.

  tasks:

  - name: "julia ppa"
    apt_repository: repo='ppa:staticfloat/juliareleases'

  - name: "julia dependencies ppa"
    apt_repository: repo='ppa:staticfloat/julia-deps'

  - name: "apt-get install packages"
    apt: name={{ item }} install_recommends=yes state=latest
    with_items:
       - julia
       - julia-doc

  - name: "fix libzmq version #1 -- see build.md for what is going on here"
    apt: name=libzmq1 state=absent

  # in ubuntu xenial, that lib name or path changed
  #- name: "fix libzmq version #2"
  #  file: src=/usr/lib/x86_64-linux-gnu/libzmq.so.3 path=/usr/lib/x86_64-linux-gnu/libzmq.so state=link

  - name: "fix libzmq version #3 -- prevent apt from installing it again"
    shell: "echo 'Package: libzmq1\nPin: origin \"\"\nPin-Priority: -1' > /etc/apt/preferences"

  - name: "install some julia packages -- http://pkg.julialang.org/pulse.html"
    shell: "echo 'Pkg.add(\"{{ item }}\")' | julia"
    tags: install
    with_items:
    - PyCall # https://github.com/stevengj/PyCall.jl
    - IJulia # in jupyter notebook
    - Interact # https://github.com/JuliaLang/Interact.jl (for IJulia)
    - PyPlot # https://github.com/stevengj/PyPlot.jl
    - Bokeh  # https://github.com/JuliaLang/IJulia.jl
    - Gadfly # https://github.com/dcjones/Gadfly.jl
    - Mocha  # https://github.com/pluskid/Mocha.jl
    - DataFrames # https://github.com/JuliaStats/DataFrames.jl
    - Winston    # 2D plotting
    - Convex # https://github.com/JuliaOpt/Convex.jl (optimization)
    - Optim # https://github.com/JuliaOpt/Optim.jl
    - JuMP # https://github.com/JuliaOpt/JuMP.jl
    - ParallelAccelerator # https://github.com/IntelLabs/ParallelAccelerator.jl
    - MXNet # https://github.com/dmlc/MXNet.jl
    - Graphs # https://github.com/JuliaLang/Graphs.jl
    - Bio # https://github.com/BioJulia/Bio.jl (bioinformatics)
    - SCS # Solving optimization problems

# Nemo (right after Julia!)
- hosts: compute
  become: yes
  gather_facts: no
  tags: nemo
<commit_msg>build/ansible: forgot umask 022 for julia<commit_after>---
# install the julia programming language from the ubuntu PPA on all compute nodes
# https://launchpad.net/~staticfloat/+archive/ubuntu/juliareleases
# https://launchpad.net/~staticfloat/+archive/ubuntu/julia-deps

- hosts: compute
  become: yes
  tags: julia
  gather_facts: no # set it to yes, if you need to use {{ ansible_distribution_release }} to know if it is vivid etc.

  tasks:

  - name: "julia ppa"
    apt_repository: repo='ppa:staticfloat/juliareleases'

  - name: "julia dependencies ppa"
    apt_repository: repo='ppa:staticfloat/julia-deps'

  - name: "apt-get install packages"
    apt: name={{ item }} install_recommends=yes state=latest
    with_items:
       - julia
       - julia-doc

  - name: "fix libzmq version #1 -- see build.md for what is going on here"
    apt: name=libzmq1 state=absent

  # in ubuntu xenial, that lib name or path changed
  #- name: "fix libzmq version #2"
  #  file: src=/usr/lib/x86_64-linux-gnu/libzmq.so.3 path=/usr/lib/x86_64-linux-gnu/libzmq.so state=link

  - name: "fix libzmq version #3 -- prevent apt from installing it again"
    shell: "echo 'Package: libzmq1\nPin: origin \"\"\nPin-Priority: -1' > /etc/apt/preferences"

  - name: "install some julia packages -- http://pkg.julialang.org/pulse.html"
    shell: "umask 022; echo 'Pkg.add(\"{{ item }}\")' | julia"
    tags: install
    with_items:
    - PyCall # https://github.com/stevengj/PyCall.jl
    - IJulia # in jupyter notebook
    - Interact # https://github.com/JuliaLang/Interact.jl (for IJulia)
    - PyPlot # https://github.com/stevengj/PyPlot.jl
    - Bokeh  # https://github.com/JuliaLang/IJulia.jl
    - Gadfly # https://github.com/dcjones/Gadfly.jl
    - Mocha  # https://github.com/pluskid/Mocha.jl
    - DataFrames # https://github.com/JuliaStats/DataFrames.jl
    - Winston    # 2D plotting
    - Convex # https://github.com/JuliaOpt/Convex.jl (optimization)
    - Optim # https://github.com/JuliaOpt/Optim.jl
    - JuMP # https://github.com/JuliaOpt/JuMP.jl
    - ParallelAccelerator # https://github.com/IntelLabs/ParallelAccelerator.jl
    - MXNet # https://github.com/dmlc/MXNet.jl
    - Graphs # https://github.com/JuliaLang/Graphs.jl
    - Bio # https://github.com/BioJulia/Bio.jl (bioinformatics)
    - SCS # Solving optimization problems

# Nemo (right after Julia!)
- hosts: compute
  become: yes
  gather_facts: no
  tags: nemo

{'fraction_non_alphanumeric': 0.13597674901390908, 'fraction_numerical': 0.007888727423707702, 'mean_word_length': 3.0521446593776282, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 5, 'https://': 32, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '4806901', 'n_tokens_mistral': 1872, 'n_tokens_neox': 1709, 'n_words': 381}