mirror of
https://codeberg.org/ProgramSnail/config.git
synced 2026-01-10 13:37:16 +00:00
Compare commits
5 commits
5daf61c46d
...
8466b55f19
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
8466b55f19 | ||
|
|
c1c9bb3e57 | ||
|
|
61c486bebd | ||
|
|
7ccd53b236 | ||
|
|
76ce2b944b |
17 changed files with 90 additions and 30 deletions
1
.gitignore
vendored
1
.gitignore
vendored
|
|
@ -1,3 +1,4 @@
|
|||
**.ssh
|
||||
galaxy_cache/
|
||||
.ansible/
|
||||
tmp/
|
||||
|
|
|
|||
3
.gitmodules
vendored
3
.gitmodules
vendored
|
|
@ -4,3 +4,6 @@
|
|||
[submodule "roles/gantsign.intellij"]
|
||||
path = roles/gantsign.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
|
||||
vars_prompt:
|
||||
- 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, python, arend)"
|
||||
private: false
|
||||
pre_tasks:
|
||||
- name: Get tools list
|
||||
|
|
|
|||
|
|
@ -9,7 +9,7 @@
|
|||
prompt: "Specify comma separated list of required installation packages (ansible, cli, gui, host, proxy, wm, quickshell)"
|
||||
private: false
|
||||
- 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, python, arend)"
|
||||
private: false
|
||||
pre_tasks:
|
||||
- name: Get configuration list
|
||||
|
|
|
|||
|
|
@ -1,2 +1 @@
|
|||
bin_install_path: '{{ ansible_env.HOME }}/.local/bin'
|
||||
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
# is done at the main
|
||||
# - name: Install build comon deps
|
||||
# - name: Install build common deps
|
||||
# ansible.builtin.import_tasks: build.yml
|
||||
|
||||
- name: Installing tools for cpp dev
|
||||
|
|
|
|||
|
|
@ -1,10 +1,9 @@
|
|||
- name: installing hlint # TODO: install by cabal (?)
|
||||
- name: Installing hlint # TODO: install by cabal (?)
|
||||
become: true
|
||||
ansible.builtin.dnf5:
|
||||
name:
|
||||
- hlint
|
||||
state: latest
|
||||
|
||||
|
||||
- name: Downloading ghcup bootstrap script
|
||||
ansible.builtin.uri:
|
||||
|
|
|
|||
|
|
@ -17,6 +17,10 @@
|
|||
ansible.builtin.import_tasks: ocaml.yml
|
||||
when: "'ocaml' in tools"
|
||||
|
||||
- name: OCanren dev environment
|
||||
ansible.builtin.import_tasks: ocanren.yml
|
||||
when: "'ocanren' in tools"
|
||||
|
||||
- name: Coq dev environment
|
||||
ansible.builtin.import_tasks: coq.yml
|
||||
when: "'coq' in tools"
|
||||
|
|
@ -49,6 +53,10 @@
|
|||
ansible.builtin.import_tasks: clojure.yml
|
||||
when: "'clojure' in tools"
|
||||
|
||||
- name: Python development environment
|
||||
ansible.builtin.import_tasks: python.yml
|
||||
when: "'python' in tools"
|
||||
|
||||
# TODO
|
||||
- name: Arend proof assistant development environment
|
||||
ansible.builtin.import_tasks: arend.yml
|
||||
|
|
|
|||
|
|
@ -1,31 +1,34 @@
|
|||
# TODO: use ansible ocaml package for install ??
|
||||
- name: Installing opam
|
||||
- name: Installing opam dependencies
|
||||
become: true
|
||||
ansible.builtin.dnf5:
|
||||
name:
|
||||
- opam
|
||||
- gmp-devel
|
||||
state: latest
|
||||
|
||||
- name: Initializing opam
|
||||
ansible.builtin.command:
|
||||
cmd: opam init
|
||||
changed_when: false
|
||||
ignore_errors: true
|
||||
|
||||
- name: Creating opam default switch (5.3.0)
|
||||
ansible.builtin.command:
|
||||
cmd: opam switch create default 5.3.0
|
||||
changed_when: false
|
||||
ignore_errors: true
|
||||
- name: Installing ocaml
|
||||
ansible.builtin.import_role:
|
||||
name: opam-ansible
|
||||
vars:
|
||||
opam_install_method: package_manager
|
||||
opam_install_location: user
|
||||
opam_switches:
|
||||
- name: "default"
|
||||
compiler: "--packages=ocaml-variants.5.3.0+options,ocaml-option-flambda"
|
||||
packages:
|
||||
- dune
|
||||
- ocaml-lsp-server
|
||||
- ocamlformat
|
||||
- qcheck
|
||||
|
||||
# NOTE: done during usage by switch eval
|
||||
# ---
|
||||
# update fish path
|
||||
- name: Get programs list to check fish presence
|
||||
ansible.builtin.package_facts:
|
||||
manager: auto
|
||||
# - name: Get programs list to check fish presence
|
||||
# ansible.builtin.package_facts:
|
||||
# manager: auto
|
||||
|
||||
- name: Update fish path for bun
|
||||
ansible.builtin.shell: fish_add_path -m {{ ansible_env.HOME }}/.opam/default/bin
|
||||
args:
|
||||
executable: /usr/bin/fish
|
||||
changed_when: false
|
||||
# - name: Update fish path for opam
|
||||
# ansible.builtin.shell: fish_add_path -m {{ ansible_env.HOME }}/.opam/default/bin
|
||||
# args:
|
||||
# executable: /usr/bin/fish
|
||||
# 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
|
||||
21
roles/dev/tasks/python.yml
Normal file
21
roles/dev/tasks/python.yml
Normal file
|
|
@ -0,0 +1,21 @@
|
|||
- name: Installing tools for python dev
|
||||
become: true
|
||||
ansible.builtin.dnf5:
|
||||
name:
|
||||
- python
|
||||
- pip
|
||||
- pipx
|
||||
|
||||
- uv
|
||||
state: latest
|
||||
|
||||
- name: Install ty typechecker
|
||||
ansible.builtin.command:
|
||||
cmd: "uv tool install ty@latest"
|
||||
changed_when: false
|
||||
|
||||
- name: Install ruff lineter
|
||||
ansible.builtin.command:
|
||||
cmd: "uv tool install ruff@latest"
|
||||
changed_when: false
|
||||
|
||||
|
|
@ -1,2 +1 @@
|
|||
bin_install_path: '{{ ansible_env.HOME }}/.local/bin'
|
||||
|
||||
|
|
|
|||
1
roles/dotfiles/files/.config/fish/completions/uv.fish
Normal file
1
roles/dotfiles/files/.config/fish/completions/uv.fish
Normal file
|
|
@ -0,0 +1 @@
|
|||
uv generate-shell-completion fish | source
|
||||
1
roles/dotfiles/files/.config/fish/completions/uvx.fish
Normal file
1
roles/dotfiles/files/.config/fish/completions/uvx.fish
Normal file
|
|
@ -0,0 +1 @@
|
|||
uvx --generate-shell-completion fish | source
|
||||
|
|
@ -1,2 +1 @@
|
|||
bin_install_path: '{{ ansible_env.HOME }}/.local/bin'
|
||||
|
||||
|
|
|
|||
|
|
@ -15,6 +15,7 @@
|
|||
- shellcheck
|
||||
|
||||
# edit utils
|
||||
- neovim
|
||||
- helix
|
||||
- micro
|
||||
# - nano
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue