Compare commits

...
5 Commits
4 changed files with 134 additions and 97 deletions

No files matched your search

+46 -18
View File
@@ -14,8 +14,10 @@
- name: Main | Lock - name: Main | Lock
block: block:
- ansible.builtin.include_tasks: tasks/general/tests/lock_check.yml - name: Main | Lock | Check
- ansible.builtin.include_tasks: tasks/general/tests/lock_create.yml ansible.builtin.include_tasks: tasks/general/tests/lock_check.yml
- name: Main | Lock | Create
ansible.builtin.include_tasks: tasks/general/tests/lock_create.yml
####### Gather ####### ####### Gather #######
@@ -23,22 +25,30 @@
- name: Main | Gather - name: Main | Gather
block: block:
- ansible.builtin.include_tasks: facts/general/gather.yml - name: Main | Gather | Facts
- ansible.builtin.include_tasks: tasks/general/acct_mgmt/provision_config.yml ansible.builtin.include_tasks: facts/general/gather.yml
- name: Main | Gather | Account Management
ansible.builtin.include_tasks: tasks/general/acct_mgmt/provision_config.yml
- ansible.builtin.include_tasks: facts/general/system.yml - name: Main | Gather | System
- ansible.builtin.include_tasks: facts/general/package.yml ansible.builtin.include_tasks: facts/general/system.yml
- ansible.builtin.include_tasks: facts/general/service.yml - name: Main | Gather | Package
- ansible.builtin.include_tasks: facts/general/user.yml ansible.builtin.include_tasks: facts/general/package.yml
- name: Main | Gather | Service
ansible.builtin.include_tasks: facts/general/service.yml
- name: Main | Gather | User
ansible.builtin.include_tasks: facts/general/user.yml
- ansible.builtin.include_tasks: tasks/general/tests/internet_check.yml - name: Main | Gather | Internet Check
ansible.builtin.include_tasks: tasks/general/tests/internet_check.yml
####### Start ####### ####### Start #######
- name: Main | Start - name: Main | Start
block: block:
- ansible.builtin.include_tasks: tasks/general/acct_mgmt/notify.yml - name: Main | Start | Notify
ansible.builtin.include_tasks: tasks/general/acct_mgmt/notify.yml
vars: vars:
notify_message: "Provisioning Started" notify_message: "Provisioning Started"
@@ -49,11 +59,13 @@
- name: Main | NixOS Setup - name: Main | NixOS Setup
block: block:
- ansible.builtin.include_tasks: tasks/general/software/nixos.yml - name: Main | NixOS Setup | NixOS
ansible.builtin.include_tasks: tasks/general/software/nixos.yml
# TBD if we are going to use this many, then just have IF statements # TBD if we are going to use this many, then just have IF statements
# and use blocks within the General area for NixOS vs not-NixOS. # and use blocks within the General area for NixOS vs not-NixOS.
- ansible.builtin.include_tasks: tasks/general/software/swap.yml - name: Main | NixOS Setup | Swap
ansible.builtin.include_tasks: tasks/general/software/swap.yml
- ansible.builtin.include_tasks: tasks/general/acct_mgmt/groups.yml - ansible.builtin.include_tasks: tasks/general/acct_mgmt/groups.yml
- ansible.builtin.include_tasks: tasks/general/acct_mgmt/users.yml - ansible.builtin.include_tasks: tasks/general/acct_mgmt/users.yml
@@ -166,10 +178,12 @@
- name: Main | Workstation | Fancy Desktop Environments - name: Main | Workstation | Fancy Desktop Environments
block: block:
- ansible.builtin.include_tasks: tasks/workstation/linux/software/gnome.yml - ansible.builtin.include_tasks: tasks/workstation/linux/software/gnome.yml
when: ansible_service_mgr == "systemd" when: ansible_service_mgr == "systemd"
- ansible.builtin.include_tasks: tasks/workstation/linux/software/cinnamon.yml - ansible.builtin.include_tasks: tasks/workstation/linux/software/cinnamon.yml
- ansible.builtin.include_tasks: tasks/workstation/linux/software/lxqt.yml - ansible.builtin.include_tasks: tasks/workstation/linux/software/lxqt.yml
when: ansible_system == "Linux" when: ansible_system == "Linux"
and internet and internet
# TBD: Implement this: and extra_desktops # TBD: Implement this: and extra_desktops
@@ -178,6 +192,7 @@
- name: Main | Workstation Setup | Linux - name: Main | Workstation Setup | Linux
block: block:
- ansible.builtin.include_tasks: tasks/workstation/linux/software/packages.yml - ansible.builtin.include_tasks: tasks/workstation/linux/software/packages.yml
- ansible.builtin.include_tasks: tasks/workstation/linux/software/tlp.yml - ansible.builtin.include_tasks: tasks/workstation/linux/software/tlp.yml
- ansible.builtin.include_tasks: tasks/workstation/linux/software/lutris.yml - ansible.builtin.include_tasks: tasks/workstation/linux/software/lutris.yml
@@ -187,6 +202,7 @@
- ansible.builtin.include_tasks: tasks/workstation/linux/software/hugo.yml - ansible.builtin.include_tasks: tasks/workstation/linux/software/hugo.yml
- ansible.builtin.include_tasks: tasks/workstation/linux/software/brave.yml - ansible.builtin.include_tasks: tasks/workstation/linux/software/brave.yml
when: ansible_pkg_mgr in ("apt", "dnf", "zypper") and not mobile when: ansible_pkg_mgr in ("apt", "dnf", "zypper") and not mobile
when: ansible_system == "Linux" when: ansible_system == "Linux"
and internet and internet
@@ -201,12 +217,14 @@
## Configuration Tasks ## ## Configuration Tasks ##
- name: Main | Workstation Setup | Configuration - name: Main | Workstation Setup | Configuration
block: block:
- ansible.builtin.include_tasks: tasks/workstation/shared/settings/gnome.yml - ansible.builtin.include_tasks: tasks/workstation/shared/settings/gnome.yml
- ansible.builtin.include_tasks: tasks/workstation/shared/settings/cinnamon.yml - ansible.builtin.include_tasks: tasks/workstation/shared/settings/cinnamon.yml
- ansible.builtin.include_tasks: tasks/workstation/shared/settings/xdg_autostart.yml - ansible.builtin.include_tasks: tasks/workstation/shared/settings/xdg_autostart.yml
- ansible.builtin.include_tasks: tasks/workstation/linux/cron/ansible.yml - ansible.builtin.include_tasks: tasks/workstation/linux/cron/ansible.yml
when: ansible_system == "Linux" when: ansible_system == "Linux"
when: not mobile when: not mobile
- ansible.builtin.include_tasks: tasks/workstation/shared/settings/nfs.yml - ansible.builtin.include_tasks: tasks/workstation/shared/settings/nfs.yml
@@ -223,12 +241,14 @@
## Final Tasks (SLOW) ## ## Final Tasks (SLOW) ##
- name: Main | Workstation Setup | Linux [Slow] - name: Main | Workstation Setup | Linux [Slow]
block: block:
- ansible.builtin.include_tasks: tasks/workstation/linux/software/flatpaks.yml - ansible.builtin.include_tasks: tasks/workstation/linux/software/flatpaks.yml
when: flatpak_distro when: flatpak_distro
- ansible.builtin.include_tasks: tasks/workstation/linux/software/java.yml - ansible.builtin.include_tasks: tasks/workstation/linux/software/java.yml
- ansible.builtin.include_tasks: tasks/workstation/linux/software/flutter.yml - ansible.builtin.include_tasks: tasks/workstation/linux/software/flutter.yml
- ansible.builtin.include_tasks: tasks/workstation/linux/software/android.yml - ansible.builtin.include_tasks: tasks/workstation/linux/software/android.yml
- ansible.builtin.include_tasks: tasks/workstation/linux/software/llm.yml - ansible.builtin.include_tasks: tasks/workstation/linux/software/llm.yml
when: ansible_system == "Linux" when: ansible_system == "Linux"
and internet and internet
@@ -281,15 +301,21 @@
- name: Main | Server Setup - name: Main | Server Setup
block: block:
- ansible.builtin.include_tasks: tasks/server/software/services.yml - name: Main | Server Setup | Services
ansible.builtin.include_tasks: tasks/server/software/services.yml
- block: - block:
- ansible.builtin.include_tasks: tasks/server/software/certbot.yml
- ansible.builtin.include_tasks: tasks/server/cron/certbot.yml - name: Main | Server Setup | Certbot
when: certbot ansible.builtin.include_tasks: tasks/server/software/certbot.yml
- name: Main | Server Setup | Certbot Cron
ansible.builtin.include_tasks: tasks/server/cron/certbot.yml
when: certbot
- block: - block:
- ansible.builtin.include_tasks: tasks/server/software/onlyoffice.yml
- name: Main | Server Setup | OnlyOffice
ansible.builtin.include_tasks: tasks/server/software/onlyoffice.yml
when: onlyoffice when: onlyoffice
- ansible.builtin.include_tasks: tasks/server/software/influxdb1.yml - ansible.builtin.include_tasks: tasks/server/software/influxdb1.yml
when: influxdb1 when: influxdb1
@@ -297,6 +323,7 @@
when: influxdb2 when: influxdb2
- ansible.builtin.include_tasks: tasks/server/software/grafana.yml - ansible.builtin.include_tasks: tasks/server/software/grafana.yml
when: grafana when: grafana
when: ansible_pkg_mgr == "apt" when: ansible_pkg_mgr == "apt"
- ansible.builtin.include_tasks: tasks/server/software/hugo.yml - ansible.builtin.include_tasks: tasks/server/software/hugo.yml
@@ -322,7 +349,8 @@
- name: Main | Finish - name: Main | Finish
block: block:
- ansible.builtin.include_tasks: tasks/general/acct_mgmt/notify.yml - name: Main | Finish | Notify
ansible.builtin.include_tasks: tasks/general/acct_mgmt/notify.yml
vars: vars:
notify_message: "Provisioning Finished" notify_message: "Provisioning Finished"
+8
View File
@@ -434,6 +434,14 @@
defaultCompletionOptions: defaultCompletionOptions:
contextLength: {{ llm_context }} contextLength: {{ llm_context }}
maxTokens: {{ llm_context }} maxTokens: {{ llm_context }}
- name: {{ llm.provider }}-auto
provider: ollama
model: {{ llm.model }}
defaultCompletionOptions:
contextLength: {{ llm_context }}
maxTokens: {{ llm_context }}
roles:
- autocomplete
{% endfor %} {% endfor %}
mode: "0644" mode: "0644"
+32 -32
View File
@@ -7,41 +7,41 @@
- name: Workstation | Software | NodeJS - name: Workstation | Software | NodeJS
block: block:
- name: Workstation | Software | NodeJS | apt - name: Workstation | Software | NodeJS | apt
block: block:
- name: Workstation | Software | NodeJS | apt | Facts - name: Workstation | Software | NodeJS | apt | Facts
ansible.builtin.set_fact: ansible.builtin.set_fact:
node_version: node_24.x node_version: node_24.x
- name: Workstation | Software | NodeJS | apt | Old | Remove - name: Workstation | Software | NodeJS | apt | Old | Remove
ansible.builtin.package:
name: npm
state: absent
- name: Workstation | Software | NodeJS | apt | extrepo | Install
ansible.builtin.package:
name: extrepo
state: present
- name: Workstation | Software | NodeJS | apt | extrepo | Enable
ansible.builtin.shell: "extrepo enable {{ node_version }}"
register: shell_check
changed_when: shell_check.rc == 0
- name: Workstation | Software | NodeJS | apt | Install
ansible.builtin.package:
name: nodejs
state: present
when: ansible_pkg_mgr == "apt"
- name: Workstation | Software | NodeJS | All Others | Install
ansible.builtin.package: ansible.builtin.package:
name: npm name:
state: absent - nodejs
- npm
- name: Workstation | Software | NodeJS | apt | extrepo | Install
ansible.builtin.package:
name: extrepo
state: present state: present
update_cache: true when: ansible_pkg_mgr != "apt"
- name: Workstation | Software | NodeJS | apt | extrepo | Enable
ansible.builtin.shell: "extrepo enable {{ node_version }}"
- name: Workstation | Software | NodeJS | apt | Install
ansible.builtin.package:
name: nodejs
state: latest
update_cache: true
when: ansible_pkg_mgr == "apt"
- name: Workstation | Software | NodeJS | All Others | Install
ansible.builtin.package:
name:
- nodejs
- npm
state: present
when: ansible_pkg_mgr != "apt"
when: coding when: coding
+48 -47
View File
@@ -4,35 +4,35 @@
- name: Workstation | Software | VPN | Mullvad - name: Workstation | Software | VPN | Mullvad
block: block:
# https://mullvad.net/en/help/install-mullvad-app-linux # https://mullvad.net/en/help/install-mullvad-app-linux
- name: Workstation | Software | VPN | Mullvad | Add Repo [apt] - name: Workstation | Software | VPN | Mullvad | Add Repo [apt]
ansible.builtin.shell: "{{ item }}" ansible.builtin.shell: "{{ item }}"
loop: loop:
- sudo curl -fsSLo /usr/share/keyrings/mullvad-keyring.asc https://repository.mullvad.net/deb/mullvad-keyring.asc - sudo curl -fsSLo /usr/share/keyrings/mullvad-keyring.asc https://repository.mullvad.net/deb/mullvad-keyring.asc
- echo "deb [signed-by=/usr/share/keyrings/mullvad-keyring.asc arch=$( dpkg --print-architecture )] https://repository.mullvad.net/deb/stable $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/mullvad.list - echo "deb [signed-by=/usr/share/keyrings/mullvad-keyring.asc arch=$( dpkg --print-architecture )] https://repository.mullvad.net/deb/stable $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/mullvad.list
- apt update - apt update
when: ansible_pkg_mgr == "apt" when: ansible_pkg_mgr == "apt"
- name: Workstation | Software | VPN | Mullvad | Add Repo [dnf] - name: Workstation | Software | VPN | Mullvad | Add Repo [dnf]
ansible.builtin.shell: "{{ item }}" ansible.builtin.shell: "{{ item }}"
loop: loop:
- sudo dnf config-manager --add-repo https://repository.mullvad.net/rpm/stable/mullvad.repo - sudo dnf config-manager --add-repo https://repository.mullvad.net/rpm/stable/mullvad.repo
when: ansible_pkg_mgr == "dnf" when: ansible_pkg_mgr == "dnf"
- name: Workstation | Software | VPN | Install - name: Workstation | Software | VPN | Install
ansible.builtin.package: ansible.builtin.package:
name: name:
- mullvad-vpn - mullvad-vpn
state: present state: present
- name: Workstation | Software | VPN | Install (Artix, runit) - name: Workstation | Software | VPN | Install (Artix, runit)
ansible.builtin.package: ansible.builtin.package:
name: name:
- mullvad-vpn-runit - mullvad-vpn-runit
state: present state: present
when: ansible_pkg_mgr == "pacman" when: ansible_pkg_mgr == "pacman"
and ansible_service_mgr == "runit" and ansible_service_mgr == "runit"
when: ansible_distribution in ("Debian", "Ubuntu") when: ansible_distribution in ("Debian", "Ubuntu")
or ansible_pkg_mgr in ("pacman", "dnf") or ansible_pkg_mgr in ("pacman", "dnf")
@@ -42,31 +42,31 @@
- name: Workstation | Software | VPN | Mullvad | Devuan (runit) - name: Workstation | Software | VPN | Mullvad | Devuan (runit)
block: block:
- name: Workstation | Software | VPN | Mullvad | Devuan | Facts 01 - name: Workstation | Software | VPN | Mullvad | Devuan | Facts 01
ansible.builtin.set_fact: ansible.builtin.set_fact:
devuan_mullvad_dir: "{{ global_src }}/mullvad-installer" devuan_mullvad_dir: "{{ global_src }}/mullvad-installer"
mullvad_deb_url: https://mullvad.net/en/download/app/deb/latest mullvad_deb_url: https://mullvad.net/en/download/app/deb/latest
mullvad_repack_url: https://github.com/sys-fs/mullvad-repack mullvad_repack_url: https://github.com/sys-fs/mullvad-repack
- name: Workstation | Software | VPN | Mullvad | Devuan | Facts 02 - name: Workstation | Software | VPN | Mullvad | Devuan | Facts 02
ansible.builtin.set_fact: ansible.builtin.set_fact:
mullvad_repack_dir: "{{ devuan_mullvad_dir }}/mullvad_repack" mullvad_repack_dir: "{{ devuan_mullvad_dir }}/mullvad_repack"
- name: Workstation | Software | VPN | Mullvad | Devuan | Check - name: Workstation | Software | VPN | Mullvad | Devuan | Check
ansible.builtin.stat: ansible.builtin.stat:
path: '/opt/Mullvad VPN' path: '/opt/Mullvad VPN'
register: mullvad_installed register: mullvad_installed
- name: Workstation | Software | VPN | Mullvad | Devuan | Install - name: Workstation | Software | VPN | Mullvad | Devuan | Install
ansible.builtin.shell: "{{ item }}" ansible.builtin.shell: "{{ item }}"
loop: loop:
- "mkdir -pv {{ devuan_mullvad_dir }}" - "mkdir -pv {{ devuan_mullvad_dir }}"
- "curl -L -o {{ devuan_mullvad_dir }}/Mullvad.deb {{ mullvad_deb_url }}" - "curl -L -o {{ devuan_mullvad_dir }}/Mullvad.deb {{ mullvad_deb_url }}"
- "rm -rfv {{ mullvad_repack_dir }}" - "rm -rfv {{ mullvad_repack_dir }}"
- "git clone {{ mullvad_repack_url }} {{ mullvad_repack_dir }}" - "git clone {{ mullvad_repack_url }} {{ mullvad_repack_dir }}"
- "cd {{ mullvad_repack_dir }} && ./repack.sh ../Mullvad.deb" - "cd {{ mullvad_repack_dir }} && ./repack.sh ../Mullvad.deb"
- "apt-get install -y --reinstall {{ devuan_mullvad_dir }}/Mullvad_repack.deb" - "apt-get install -y --reinstall {{ devuan_mullvad_dir }}/Mullvad_repack.deb"
when: not mullvad_installed.stat.exists when: not mullvad_installed.stat.exists
when: ansible_pkg_mgr == "apt" when: ansible_pkg_mgr == "apt"
and ansible_service_mgr != "systemd" and ansible_service_mgr != "systemd"
@@ -119,4 +119,5 @@
- mullvad auto-connect set on - mullvad auto-connect set on
- mullvad lockdown-mode set on - mullvad lockdown-mode set on
- mullvad beta-program set off - mullvad beta-program set off
become: true
become_user: "{{ user }}" become_user: "{{ user }}"