mirror of
https://codeberg.org/ProgramSnail/config.git
synced 2026-01-08 12:45:07 +00:00
Compare commits
14 commits
147bf7b5d6
...
4293f662e7
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
4293f662e7 | ||
|
|
28a5aa09af | ||
|
|
646b6508eb | ||
|
|
14f7bf69be | ||
|
|
ce3dad5b22 | ||
|
|
758f19c61e | ||
|
|
1a0e99f8f6 | ||
|
|
68ecd7ab03 | ||
|
|
525f2fa554 | ||
|
|
eac77aca5a | ||
|
|
710ac7e69a | ||
|
|
30142464c5 | ||
|
|
1947c8e0e4 | ||
|
|
2eb5a886f8 |
19 changed files with 195 additions and 11 deletions
|
|
@ -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)"
|
||||
prompt: "Specify comma separated list of required tool packages (cpp, js, haskell, ocaml, coq, txt, lang, truffle, gamedev, qt)"
|
||||
private: false
|
||||
pre_tasks:
|
||||
- name: Get tools list
|
||||
|
|
|
|||
30
playbooks/manual.yml
Normal file
30
playbooks/manual.yml
Normal file
|
|
@ -0,0 +1,30 @@
|
|||
- name: Configure system manually
|
||||
hosts: localhost
|
||||
connection: local
|
||||
vars_prompt:
|
||||
- name: configure_in
|
||||
prompt: "Specify comma separated list of required dotfile packages (bash, scripts, cli, git, ssh, gui, de, quickshell, wm)"
|
||||
private: false
|
||||
- name: apps_in
|
||||
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)"
|
||||
private: false
|
||||
pre_tasks:
|
||||
- name: Get configuration list
|
||||
ansible.builtin.set_fact:
|
||||
configure: "{{ configure_in.split(',') }}"
|
||||
- name: Get apps list
|
||||
ansible.builtin.set_fact:
|
||||
apps: "{{ apps_in.split(',') }}"
|
||||
- name: Get tools list
|
||||
ansible.builtin.set_fact:
|
||||
tools: "{{ tools_in.split(',') }}"
|
||||
roles:
|
||||
# install apps
|
||||
- role: installs
|
||||
# link and copy dotfiles
|
||||
- role: dotfiles
|
||||
# install and setup dev tools
|
||||
- role: dev
|
||||
|
|
@ -1,3 +1,6 @@
|
|||
- name: Installing opengl libs
|
||||
ansible.builtin.import_tasks: opengl.yml
|
||||
|
||||
- name: Getting programs list to check fish presence
|
||||
ansible.builtin.package_facts:
|
||||
manager: auto
|
||||
|
|
@ -7,12 +10,6 @@
|
|||
become: true
|
||||
ansible.builtin.dnf5:
|
||||
name:
|
||||
- glew-devel
|
||||
- SDL2-devel
|
||||
- SDL2_image-devel
|
||||
- glm-devel
|
||||
- freetype-devel
|
||||
- mesa-libGLU
|
||||
- openal-soft
|
||||
- java-21-openjdk
|
||||
state: latest
|
||||
|
|
@ -55,7 +52,8 @@
|
|||
become: true
|
||||
ansible.builtin.unarchive:
|
||||
remote_src: true
|
||||
src: "https://github.com/LuaLS/lua-language-server/releases/download/{{ lua_lsp_version.tag }}/lua-language-server-{{ lua_lsp_version.tag }}-linux-x64.tar.gz"
|
||||
src:
|
||||
"https://github.com/LuaLS/lua-language-server/releases/download/{{ lua_lsp_version.tag }}/lua-language-server-{{ lua_lsp_version.tag }}-linux-x64.tar.gz"
|
||||
dest: "{{ ansible_env.HOME }}/.lua_lsp"
|
||||
keep_newer: true
|
||||
mode: a
|
||||
|
|
|
|||
|
|
@ -33,6 +33,14 @@
|
|||
ansible.builtin.import_tasks: truffle.yml
|
||||
when: "'truffle' in tools"
|
||||
|
||||
# - name: Truffle development environment
|
||||
# ansible.builtin.import_tasks: opengl.yml
|
||||
# when: "'opengl' in tools"
|
||||
|
||||
- name: Truffle development environment
|
||||
ansible.builtin.import_tasks: gamedev.yml
|
||||
when: "'gamedev' in tools"
|
||||
|
||||
- name: Truffle development environment
|
||||
ansible.builtin.import_tasks: qt.yml
|
||||
when: "'qt' in tools"
|
||||
|
|
|
|||
11
roles/dev/tasks/opengl.yml
Normal file
11
roles/dev/tasks/opengl.yml
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
- name: Installing opengl libs
|
||||
become: true
|
||||
ansible.builtin.dnf5:
|
||||
name:
|
||||
- glew-devel
|
||||
- SDL2-devel
|
||||
- SDL2_image-devel
|
||||
- glm-devel
|
||||
- freetype-devel
|
||||
- mesa-libGLU
|
||||
state: latest
|
||||
26
roles/dev/tasks/qt.yml
Normal file
26
roles/dev/tasks/qt.yml
Normal file
|
|
@ -0,0 +1,26 @@
|
|||
- name: Installing opengl libs
|
||||
ansible.builtin.import_tasks: opengl.yml
|
||||
|
||||
- name: Installing cpp
|
||||
ansible.builtin.import_tasks: cpp.yml
|
||||
|
||||
- name: Installing qt devel libs
|
||||
become: true
|
||||
ansible.builtin.dnf5:
|
||||
name:
|
||||
- qt6-qtdeclarative-devel
|
||||
- qt6-qtbase-devel
|
||||
- qt6-qtsvg
|
||||
- qt6-qtimageformats
|
||||
- qt6-qtmultimedia
|
||||
- qt6-qt5compat
|
||||
- qt6-qtmultimedia-devel
|
||||
- qt6-qt5compat-devel
|
||||
state: latest
|
||||
|
||||
# - name: Installing qt creator
|
||||
# become: true
|
||||
# ansible.builtin.dnf5:
|
||||
# name:
|
||||
# - qt6-creator
|
||||
# state: latest
|
||||
|
|
@ -46,6 +46,7 @@
|
|||
ansible.builtin.file:
|
||||
path: "{{ ansible_env.HOME }}/idea"
|
||||
state: directory
|
||||
mode: a
|
||||
- name: Installing intellij idea
|
||||
ansible.builtin.unarchive:
|
||||
remote_src: true
|
||||
|
|
|
|||
0
roles/dotfiles/files/.config/fish/completions/empty
Normal file
0
roles/dotfiles/files/.config/fish/completions/empty
Normal file
0
roles/dotfiles/files/.config/fish/conf.d/empty
Normal file
0
roles/dotfiles/files/.config/fish/conf.d/empty
Normal file
0
roles/dotfiles/files/.config/quickshell/MyShell/empty
Normal file
0
roles/dotfiles/files/.config/quickshell/MyShell/empty
Normal file
0
roles/dotfiles/files/.config/quickshell/empty
Normal file
0
roles/dotfiles/files/.config/quickshell/empty
Normal file
|
|
@ -41,6 +41,7 @@
|
|||
src: '{{ role_path }}/files/.config/fish/fish_variables'
|
||||
dest: '{{ ansible_env.HOME }}/.config/fish/fish_variables'
|
||||
force: false
|
||||
mode: a
|
||||
|
||||
# apps
|
||||
- name: Linking tmux configuration
|
||||
|
|
|
|||
|
|
@ -28,6 +28,14 @@
|
|||
ansible.builtin.import_tasks: gui.yml
|
||||
when: "'gui' in configure"
|
||||
|
||||
- name: Desctop envionment config
|
||||
- name: Desktop envionment config
|
||||
ansible.builtin.import_tasks: de.yml
|
||||
when: "'de' in configure"
|
||||
|
||||
- name: Quickshell config
|
||||
ansible.builtin.import_tasks: quickshell.yml
|
||||
when: "'quickshell' in configure"
|
||||
|
||||
- name: WMs config
|
||||
ansible.builtin.import_tasks: wm.yml
|
||||
when: "'wm' in configure"
|
||||
|
|
|
|||
6
roles/dotfiles/tasks/quickshell.yml
Normal file
6
roles/dotfiles/tasks/quickshell.yml
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
- name: Linking quickshell configuration
|
||||
ansible.builtin.file:
|
||||
src: '{{ role_path }}/files/.config/quickshell'
|
||||
dest: '{{ ansible_env.HOME }}/.config/quickshell'
|
||||
state: link
|
||||
force: true
|
||||
8
roles/dotfiles/tasks/wm.yml
Normal file
8
roles/dotfiles/tasks/wm.yml
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
- name: Linking niri configuration
|
||||
ansible.builtin.file:
|
||||
src: '{{ role_path }}/files/niri'
|
||||
dest: '{{ ansible_env.HOME }}/niri'
|
||||
state: link
|
||||
force: true
|
||||
|
||||
# TODO: hyprland
|
||||
|
|
@ -7,4 +7,3 @@
|
|||
- python3-github3py
|
||||
- python3-rpm
|
||||
state: latest
|
||||
|
||||
|
|
|
|||
|
|
@ -10,10 +10,18 @@
|
|||
ansible.builtin.import_tasks: gui.yml
|
||||
when: "'gui' in apps"
|
||||
|
||||
- name: Installing pps for host
|
||||
- name: Installing apps for host
|
||||
ansible.builtin.import_tasks: host.yml
|
||||
when: "'host' in apps"
|
||||
|
||||
- name: Installing proxies
|
||||
ansible.builtin.import_tasks: proxy.yml
|
||||
when: "'proxy' in apps"
|
||||
|
||||
- name: Installing wm
|
||||
ansible.builtin.import_tasks: wm.yml
|
||||
when: "'wm' in apps"
|
||||
|
||||
- name: Installing quickshell
|
||||
ansible.builtin.import_tasks: quickshell.yml
|
||||
when: "'quickshell' in apps"
|
||||
|
|
|
|||
67
roles/installs/tasks/quickshell.yml
Normal file
67
roles/installs/tasks/quickshell.yml
Normal file
|
|
@ -0,0 +1,67 @@
|
|||
- name: Enabling quickshell fedora copr
|
||||
become: true
|
||||
community.general.copr:
|
||||
host: copr.fedorainfracloud.org
|
||||
state: enabled
|
||||
name: errornointernet/quickshell
|
||||
|
||||
- name: Installing quickshell
|
||||
become: true
|
||||
ansible.builtin.dnf5:
|
||||
name:
|
||||
- quickshell
|
||||
state: latest
|
||||
|
||||
- name: Installing common deps
|
||||
become: true
|
||||
ansible.builtin.dnf5:
|
||||
name:
|
||||
- rsms-inter-fonts
|
||||
- fira-code-fonts
|
||||
state: latest
|
||||
|
||||
- name: Creating fonts dir
|
||||
ansible.builtin.file:
|
||||
path: "{{ ansible_env.HOME }}/.local/share/fonts"
|
||||
state: directory
|
||||
mode: a
|
||||
|
||||
- name: Downloading material design icons font
|
||||
ansible.builtin.get_url:
|
||||
url: "https://github.com/google/material-design-icons/raw/master/variablefont/MaterialSymbolsRounded%5BFILL%2CGRAD%2Copsz%2Cwght%5D.ttf"
|
||||
dest: "{{ ansible_env.HOME }}/.local/share/fonts/MaterialSymbolsRounded.ttf"
|
||||
mode: a
|
||||
force: false
|
||||
|
||||
- name: Updating fonts cache
|
||||
ansible.builtin.command:
|
||||
cmd: fc-cache -f
|
||||
changed_when: true
|
||||
|
||||
- name: Installing matugen (material you themes gen) v2.4.1 (fixed)
|
||||
become: true
|
||||
ansible.builtin.unarchive:
|
||||
remote_src: true
|
||||
src: "https://github.com/InioX/matugen/releases/download/v2.4.1/matugen-2.4.1-x86_64.tar.gz"
|
||||
dest: "/usr/bin/" # TODO: user local install (?)
|
||||
mode: a+x
|
||||
keep_newer: true
|
||||
extra_opts:
|
||||
- --strip=1
|
||||
- --no-anchored
|
||||
- matugen
|
||||
|
||||
- name: Get latest dgop (sensors data utility) version
|
||||
community.general.github_release:
|
||||
user: AvengeMedia
|
||||
repo: dgop
|
||||
action: latest_release
|
||||
register: dgop_version
|
||||
|
||||
- name: Installing dgop (sensors data utility) {{ dgop_version.tag }}
|
||||
become: true
|
||||
ansible.builtin.get_url:
|
||||
url: "https://github.com/AvengeMedia/dgop/releases/download/{{ dgop_version.tag }}/dgop-{{ dgop_version.tag }}-linux-amd64"
|
||||
dest: "/usr/bin/dgop" # TODO: user local install (?)
|
||||
mode: a+x
|
||||
force: true
|
||||
13
roles/installs/tasks/wm.yml
Normal file
13
roles/installs/tasks/wm.yml
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
- name: Installing niri
|
||||
become: true
|
||||
ansible.builtin.dnf5:
|
||||
name:
|
||||
- niri
|
||||
state: latest
|
||||
|
||||
- name: Installing hyprland
|
||||
become: true
|
||||
ansible.builtin.dnf5:
|
||||
name:
|
||||
- hyprland
|
||||
state: latest
|
||||
Loading…
Add table
Add a link
Reference in a new issue