mirror of
https://codeberg.org/ProgramSnail/config.git
synced 2026-01-03 05:48:16 +00:00
opam roles
This commit is contained in:
parent
5daf61c46d
commit
76ce2b944b
11 changed files with 60 additions and 29 deletions
3
.gitmodules
vendored
3
.gitmodules
vendored
|
|
@ -4,3 +4,6 @@
|
||||||
[submodule "roles/gantsign.intellij"]
|
[submodule "roles/gantsign.intellij"]
|
||||||
path = roles/gantsign.intellij
|
path = roles/gantsign.intellij
|
||||||
url = https://github.com/gantsign/ansible-role-intellij
|
url = https://github.com/gantsign/ansible-role-intellij
|
||||||
|
[submodule "opam-ansible"]
|
||||||
|
path = opam-ansible
|
||||||
|
url = https://github.com/plescornet/opam-ansible
|
||||||
|
|
|
||||||
1
opam-ansible
Submodule
1
opam-ansible
Submodule
|
|
@ -0,0 +1 @@
|
||||||
|
Subproject commit dc0ebd6843daf590ee2cd372367277686e6c8ace
|
||||||
|
|
@ -13,7 +13,7 @@
|
||||||
- cli
|
- cli
|
||||||
vars_prompt:
|
vars_prompt:
|
||||||
- name: tools_in
|
- name: tools_in
|
||||||
prompt: "Specify comma separated list of required tool packages (cpp, js, haskell, ocaml, coq, txt, lang, truffle, gamedev, qt, clojure, arend)"
|
prompt: "Specify comma separated list of required tool packages (cpp, js, haskell, ocaml, ocanren, coq, txt, lang, truffle, gamedev, qt, clojure, arend)"
|
||||||
private: false
|
private: false
|
||||||
pre_tasks:
|
pre_tasks:
|
||||||
- name: Get tools list
|
- name: Get tools list
|
||||||
|
|
|
||||||
|
|
@ -9,7 +9,7 @@
|
||||||
prompt: "Specify comma separated list of required installation packages (ansible, cli, gui, host, proxy, wm, quickshell)"
|
prompt: "Specify comma separated list of required installation packages (ansible, cli, gui, host, proxy, wm, quickshell)"
|
||||||
private: false
|
private: false
|
||||||
- name: tools_in
|
- name: tools_in
|
||||||
prompt: "Specify comma separated list of required tool packages (cpp, js, haskell, ocaml, coq, txt, lang, truffle, gamedev, qt, clojure, arend)"
|
prompt: "Specify comma separated list of required tool packages (cpp, js, haskell, ocaml, ocanren, coq, txt, lang, truffle, gamedev, qt, clojure, arend)"
|
||||||
private: false
|
private: false
|
||||||
pre_tasks:
|
pre_tasks:
|
||||||
- name: Get configuration list
|
- name: Get configuration list
|
||||||
|
|
|
||||||
|
|
@ -1,2 +1 @@
|
||||||
bin_install_path: '{{ ansible_env.HOME }}/.local/bin'
|
bin_install_path: '{{ ansible_env.HOME }}/.local/bin'
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,10 +1,9 @@
|
||||||
- name: installing hlint # TODO: install by cabal (?)
|
- name: Installing hlint # TODO: install by cabal (?)
|
||||||
become: true
|
become: true
|
||||||
ansible.builtin.dnf5:
|
ansible.builtin.dnf5:
|
||||||
name:
|
name:
|
||||||
- hlint
|
- hlint
|
||||||
state: latest
|
state: latest
|
||||||
|
|
||||||
|
|
||||||
- name: Downloading ghcup bootstrap script
|
- name: Downloading ghcup bootstrap script
|
||||||
ansible.builtin.uri:
|
ansible.builtin.uri:
|
||||||
|
|
|
||||||
|
|
@ -17,6 +17,10 @@
|
||||||
ansible.builtin.import_tasks: ocaml.yml
|
ansible.builtin.import_tasks: ocaml.yml
|
||||||
when: "'ocaml' in tools"
|
when: "'ocaml' in tools"
|
||||||
|
|
||||||
|
- name: OCanren dev environment
|
||||||
|
ansible.builtin.import_tasks: ocanren.yml
|
||||||
|
when: "'ocanren' in tools"
|
||||||
|
|
||||||
- name: Coq dev environment
|
- name: Coq dev environment
|
||||||
ansible.builtin.import_tasks: coq.yml
|
ansible.builtin.import_tasks: coq.yml
|
||||||
when: "'coq' in tools"
|
when: "'coq' in tools"
|
||||||
|
|
|
||||||
|
|
@ -1,31 +1,34 @@
|
||||||
# TODO: use ansible ocaml package for install ??
|
- name: Installing opam dependencies
|
||||||
- name: Installing opam
|
|
||||||
become: true
|
become: true
|
||||||
ansible.builtin.dnf5:
|
ansible.builtin.dnf5:
|
||||||
name:
|
name:
|
||||||
- opam
|
|
||||||
- gmp-devel
|
- gmp-devel
|
||||||
state: latest
|
state: latest
|
||||||
|
|
||||||
- name: Initializing opam
|
- name: Installing ocaml
|
||||||
ansible.builtin.command:
|
ansible.builtin.import_role:
|
||||||
cmd: opam init
|
name: opam-ansible
|
||||||
changed_when: false
|
vars:
|
||||||
ignore_errors: true
|
opam_install_method: package_manager
|
||||||
|
opam_install_location: user
|
||||||
- name: Creating opam default switch (5.3.0)
|
opam_switches:
|
||||||
ansible.builtin.command:
|
- name: "default"
|
||||||
cmd: opam switch create default 5.3.0
|
compiler: "--packages=ocaml-variants.5.3.0+options,ocaml-option-flambda"
|
||||||
changed_when: false
|
packages:
|
||||||
ignore_errors: true
|
- dune
|
||||||
|
- ocaml-lsp-server
|
||||||
|
- ocamlformat
|
||||||
|
- qcheck
|
||||||
|
|
||||||
|
# NOTE: done during usage by switch eval
|
||||||
|
# ---
|
||||||
# update fish path
|
# update fish path
|
||||||
- name: Get programs list to check fish presence
|
# - name: Get programs list to check fish presence
|
||||||
ansible.builtin.package_facts:
|
# ansible.builtin.package_facts:
|
||||||
manager: auto
|
# manager: auto
|
||||||
|
|
||||||
- name: Update fish path for bun
|
# - name: Update fish path for opam
|
||||||
ansible.builtin.shell: fish_add_path -m {{ ansible_env.HOME }}/.opam/default/bin
|
# ansible.builtin.shell: fish_add_path -m {{ ansible_env.HOME }}/.opam/default/bin
|
||||||
args:
|
# args:
|
||||||
executable: /usr/bin/fish
|
# executable: /usr/bin/fish
|
||||||
changed_when: false
|
# changed_when: false
|
||||||
|
|
|
||||||
24
roles/dev/tasks/ocanren.yml
Normal file
24
roles/dev/tasks/ocanren.yml
Normal file
|
|
@ -0,0 +1,24 @@
|
||||||
|
- name: Installing ocaml
|
||||||
|
ansible.builtin.import_tasks: ocaml.yml
|
||||||
|
|
||||||
|
- name: Installing ocanren switch
|
||||||
|
ansible.builtin.import_role:
|
||||||
|
name: opam-ansible
|
||||||
|
vars:
|
||||||
|
opam_install_method: package_manager
|
||||||
|
opam_install_location: user
|
||||||
|
opam_switches:
|
||||||
|
- name: "ocanren"
|
||||||
|
compiler: "--packages=ocaml-variants.5.3.0+options,ocaml-option-flambda"
|
||||||
|
packages:
|
||||||
|
- dune
|
||||||
|
- ocaml-lsp-server
|
||||||
|
- ocamlformat
|
||||||
|
- qcheck
|
||||||
|
|
||||||
|
- camlp5
|
||||||
|
- GT
|
||||||
|
- OCanren
|
||||||
|
- OCanren-ppx
|
||||||
|
- ppx_expect_nobase
|
||||||
|
- benchmark
|
||||||
|
|
@ -1,2 +1 @@
|
||||||
bin_install_path: '{{ ansible_env.HOME }}/.local/bin'
|
bin_install_path: '{{ ansible_env.HOME }}/.local/bin'
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,2 +1 @@
|
||||||
bin_install_path: '{{ ansible_env.HOME }}/.local/bin'
|
bin_install_path: '{{ ansible_env.HOME }}/.local/bin'
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue