diff --git a/tasks/workstation/linux/software/zeroclaw.yml b/tasks/workstation/linux/software/llm.yml similarity index 84% rename from tasks/workstation/linux/software/zeroclaw.yml rename to tasks/workstation/linux/software/llm.yml index 77d7eb0..adffd46 100644 --- a/tasks/workstation/linux/software/zeroclaw.yml +++ b/tasks/workstation/linux/software/llm.yml @@ -23,10 +23,10 @@ # - https://docs.ollama.com # Currently only testing this on Arch based distros (pacman). -- name: Workstation | Linux | Software | ZeroClaw +- name: Workstation | Linux | Software | LLMs block: - - name: Workstation | Linux | Software | ZeroClaw | Facts 01 + - name: Workstation | Linux | Software | LLMs | Facts 01 ansible.builtin.set_fact: ollama: ollama zeroclaw: zeroclaw @@ -46,14 +46,14 @@ # Take the GB of RAM and use it as the MB of context. llm_context: "{{ ansible_memtotal_mb | int }}" - - name: Workstation | Linux | Software | ZeroClaw | Facts 02 + - name: Workstation | Linux | Software | LLMs | Facts 02 ansible.builtin.set_fact: ollama_runit_dir: "{{ runit_script_dir }}/{{ ollama }}" ollama_runit_log_dest: "{{ global_log }}/{{ ollama }}" zeroclaw_runit_dir: "{{ runit_script_dir }}/{{ zeroclaw }}" zeroclaw_runit_log_dest: "{{ global_log }}/{{ zeroclaw }}" - - name: Workstation | Linux | Software | ZeroClaw | Facts 03 + - name: Workstation | Linux | Software | LLMs | Facts 03 ansible.builtin.set_fact: ollama_runit_script: "{{ ollama_runit_dir }}/{{ runit_service_script }}" ollama_runit_log_dir: "{{ ollama_runit_dir }}/{{ runit_log_dir }}" @@ -62,12 +62,12 @@ zeroclaw_runit_log_dir: "{{ zeroclaw_runit_dir }}/{{ runit_log_dir }}" zeroclaw_runit_log_config: "{{ zeroclaw_runit_log_dest }}/{{ global_log_config }}" - - name: Workstation | Linux | Software | ZeroClaw | Facts 04 + - name: Workstation | Linux | Software | LLMs | Facts 04 ansible.builtin.set_fact: ollama_runit_log_script: "{{ ollama_runit_log_dir }}/{{ runit_log_script }}" zeroclaw_runit_log_script: "{{ zeroclaw_runit_log_dir }}/{{ runit_log_script }}" - - name: Workstation | Linux | Software | ZeroClaw | Facts | LLMs + - name: Workstation | Linux | Software | LLMs | Facts | LLMs ansible.builtin.set_fact: llm_installs: [] llm_removals: @@ -118,14 +118,14 @@ #- deepseek-r1:1.5b #- deepseek-r1:7b - - name: Workstation | Linux | Software | ZeroClaw | Facts | Choices | Sort + - name: Workstation | Linux | Software | LLMs | Facts | Choices | Sort ansible.builtin.set_fact: llm_installs: >- {{ llm_choices | selectattr('size_mb', 'le', ansible_memtotal_mb) | list }} llm_removals: >- {{ llm_choices | selectattr('size_mb', 'gt', ansible_memtotal_mb) | list }} - - name: Workstation | Linux | Software | ZeroClaw | Facts | Merge | Print + - name: Workstation | Linux | Software | LLMs | Facts | Merge | Print ansible.builtin.debug: var: "{{ item }}" loop: @@ -136,7 +136,7 @@ - llm_installs - llm_removals - - name: Workstation | Linux | Software | ZeroClaw | Install + - name: Workstation | Linux | Software | LLMs | Install ansible.builtin.package: name: - "{{ zeroclaw }}" @@ -145,31 +145,31 @@ - "{{ qwen_code }}" state: present - - name: Workstation | Linux | Software | ZeroClaw | runit + - name: Workstation | Linux | Software | LLMs | runit block: - - name: Workstation | Linux | Software | ZeroClaw | runit | ollama | Dir | Run + - name: Workstation | Linux | Software | LLMs | runit | ollama | Dir | Run ansible.builtin.file: name: "{{ ollama_runit_dir }}" state: directory owner: root mode: "0755" - - name: Workstation | Linux | Software | ZeroClaw | runit | ollama | Dir | Log Run + - name: Workstation | Linux | Software | LLMs | runit | ollama | Dir | Log Run ansible.builtin.file: name: "{{ ollama_runit_log_dir }}" state: directory owner: root mode: "0755" - - name: Workstation | Linux | Software | ZeroClaw | runit | ollama | Dir | Log Config + - name: Workstation | Linux | Software | LLMs | runit | ollama | Dir | Log Config ansible.builtin.file: name: "{{ ollama_runit_log_dest }}" state: directory owner: "{{ user }}" mode: "0755" - - name: Workstation | Linux | Software | ZeroClaw | runit | ollama | Script | Run + - name: Workstation | Linux | Software | LLMs | runit | ollama | Script | Run ansible.builtin.copy: content: | #!/bin/sh -e @@ -189,7 +189,7 @@ dest: "{{ ollama_runit_script }}" mode: "0755" - - name: Workstation | Linux | Software | ZeroClaw | runit | ollama | Script | Log + - name: Workstation | Linux | Software | LLMs | runit | ollama | Script | Log ansible.builtin.copy: content: | #!/bin/sh -e @@ -197,7 +197,7 @@ dest: "{{ ollama_runit_log_script }}" mode: "0755" - - name: Workstation | Linux | Software | ZeroClaw | runit | ollama | Script | Log Config + - name: Workstation | Linux | Software | LLMs | runit | ollama | Script | Log Config ansible.builtin.copy: content: | s10000000 # rotate at 10 MB @@ -206,28 +206,28 @@ owner: "{{ user }}" mode: "0755" - - name: Workstation | Linux | Software | ZeroClaw | runit | zeroclaw | Dir | Run + - name: Workstation | Linux | Software | LLMs | runit | zeroclaw | Dir | Run ansible.builtin.file: name: "{{ zeroclaw_runit_dir }}" state: directory owner: root mode: "0755" - - name: Workstation | Linux | Software | ZeroClaw | runit | zeroclaw | Dir | Log + - name: Workstation | Linux | Software | LLMs | runit | zeroclaw | Dir | Log ansible.builtin.file: name: "{{ zeroclaw_runit_log_dir }}" state: directory owner: root mode: "0755" - - name: Workstation | Linux | Software | ZeroClaw | runit | zeroclaw | Dir | Log Config + - name: Workstation | Linux | Software | LLMs | runit | zeroclaw | Dir | Log Config ansible.builtin.file: name: "{{ zeroclaw_runit_log_dest }}" state: directory owner: "{{ user }}" mode: "0755" - - name: Workstation | Linux | Software | ZeroClaw | runit | zeroclaw | Script | File + - name: Workstation | Linux | Software | LLMs | runit | zeroclaw | Script | File ansible.builtin.copy: content: | #!/bin/sh -e @@ -239,7 +239,7 @@ dest: "{{ zeroclaw_runit_script }}" mode: "0755" - - name: Workstation | Linux | Software | ZeroClaw | runit | zeroclaw | Script | Log + - name: Workstation | Linux | Software | LLMs | runit | zeroclaw | Script | Log ansible.builtin.copy: content: | #!/bin/sh -e @@ -247,7 +247,7 @@ dest: "{{ zeroclaw_runit_log_script }}" mode: "0755" - - name: Workstation | Linux | Software | ZeroClaw | runit | zeroclaw | Script | Log Config + - name: Workstation | Linux | Software | LLMs | runit | zeroclaw | Script | Log Config ansible.builtin.copy: content: | s1000000 # rotate at 1 MB @@ -257,7 +257,7 @@ when: ansible_service_mgr == "runit" - - name: Workstation | Linux | Software | ZeroClaw | Enable + - name: Workstation | Linux | Software | LLMs | Enable ansible.builtin.service: name: "{{ item }}" state: started @@ -266,7 +266,7 @@ - "{{ ollama }}" - "{{ zeroclaw }}" - - name: Workstation | Linux | Software | ZeroClaw | Verify + - name: Workstation | Linux | Software | LLMs | Verify ansible.builtin.uri: url: "{{ item }}" status_code: 200 @@ -279,7 +279,7 @@ - http://127.0.0.1:11434/ - http://127.0.0.1:42617/health - #- name: Workstation | Linux | Software | ZeroClaw | Config | zeroclaw | Root + #- name: Workstation | Linux | Software | LLMs | Config | zeroclaw | Root # ansible.builtin.blockinfile: # path: "{{ user_user.home }}/.zeroclaw/config.toml" # marker: "# {mark} ANSIBLE MANAGED BLOCK | zeroclaw | Defaults" @@ -292,7 +292,7 @@ # create: false # backup: true - #- name: Workstation | Linux | Software | ZeroClaw | Config | zeroclaw | Channels | header + #- name: Workstation | Linux | Software | LLMs | Config | zeroclaw | Channels | header # ansible.builtin.lineinfile: # path: "{{ user_user.home }}/.zeroclaw/config.toml" # insertbefore: '(?m)^[channels]' @@ -302,7 +302,7 @@ # create: false # backup: true - #- name: Workstation | Linux | Software | ZeroClaw | Config | zeroclaw | Channels + #- name: Workstation | Linux | Software | LLMs | Config | zeroclaw | Channels # ansible.builtin.blockinfile: # path: "{{ user_user.home }}/.zeroclaw/config.toml" # marker: "# {mark} ANSIBLE MANAGED BLOCK | zeroclaw | Channels" @@ -313,7 +313,7 @@ # create: false # backup: true - - name: Workstation | Linux | Software | ZeroClaw | Models | ollama | Install + - name: Workstation | Linux | Software | LLMs | Models | ollama | Install ansible.builtin.shell: | set -o pipefail item='{{ item.model }}' @@ -334,7 +334,7 @@ become_user: "{{ user }}" when: llm_installs | length > 0 - - name: Workstation | Linux | Software | ZeroClaw | Models | ollama | Remove + - name: Workstation | Linux | Software | LLMs | Models | ollama | Remove ansible.builtin.shell: | set -o pipefail item='{{ item.model }}' @@ -356,7 +356,7 @@ when: llm_removals | length > 0 # Cheat Sheet: https://docs.zeroclaw.com/master/en/providers/configuration.html - - name: Workstation | Linux | Software | ZeroClaw | Models | zeroclaw | Add Providers + - name: Workstation | Linux | Software | LLMs | Models | zeroclaw | Add Providers ansible.builtin.blockinfile: path: "{{ user_user.home }}/.zeroclaw/config.toml" marker: "# {mark} ANSIBLE MANAGED BLOCK | zeroclaw | Providers"