move ansible to submodule

This commit is contained in:
DeveloperDurp 2024-08-31 06:56:21 -05:00
parent dd6d398060
commit 42df133903
27 changed files with 5 additions and 561 deletions

View file

@ -1,6 +1,4 @@
[
"io.gitlab.librewolf-community",
"com.system76.CosmicFiles",
"kitty",
"com.system76.CosmicSettings",
]

3
.gitmodules vendored Normal file
View file

@ -0,0 +1,3 @@
[submodule "DesktopAnsible"]
path = DesktopAnsible
url = git@gitlab.com:developerdurp/DesktopAnsible.git

1
DesktopAnsible Submodule

@ -0,0 +1 @@
Subproject commit 35cad5fc467f7f373d52c3089ce1b5a91ab325b7

View file

@ -2,4 +2,4 @@ include .env
export
run:
ansible-playbook ./ansible/local.yml -K
ansible-playbook ./DesktopAnsible/local.yml -K

View file

@ -1,10 +0,0 @@
- hosts: localhost
connection: local
become: true
vars:
GITLAB_TOKEN: "{{ lookup('env', 'GITLAB_TOKEN') }}"
# vars_prompt:
roles:
- packages
- customize

View file

@ -1,2 +0,0 @@
ansible-galaxy collection install community.general
pip install psutil

View file

@ -1,36 +0,0 @@
- name: install fonts
include_tasks: "./scripts/install_fonts.yml"
- name: generate ssh keys
include_tasks: "./scripts/configure_ssh.yml"
#- name: Configure Gitlab SSH
# become_user: user
# ansible.builtin.command: pwsh -f ./scripts/configure_gitlab.ps1 "{{ GITLAB_TOKEN }}"
- user:
name: "user"
shell: /usr/bin/zsh
- name: Create bin folder
become_user: user
ansible.builtin.file:
path: ~/.local/bin
owner: "user"
group: "user"
mode: '0770'
state: directory
- name: run stow
become_user: user
shell: "stow --adopt ."
args:
chdir: ~/.dotfiles
- name: set gnome config
become_user: user
dconf:
key: "{{ item.key }}"
value: "{{ item.value }}"
with_items: "{{ dconf }}"
when: dconf is defined

View file

@ -1,11 +0,0 @@
- name: Load a variable file
include_vars: "{{ item }}"
with_first_found:
- "vars/{{ ansible_distribution }}-{{ ansible_distribution_version }}.yml"
- "vars/{{ ansible_distribution }}.yml"
- "vars/{{ ansible_os_family }}.yml"
- "vars/defaults.yml"
- name:
include_tasks: "defaults.yml"

View file

@ -1,3 +0,0 @@
fonts:
- {name: 'GoMonoNerd', url: "https://github.com/ryanoasis/nerd-fonts/releases/download/v3.2.1/Go-Mono.zip"}
- {name: 'FiraCodeNerd', url: "https://github.com/ryanoasis/nerd-fonts/releases/download/v3.2.1/FiraCode.zip"}

View file

@ -1,11 +0,0 @@
dconf:
- {key: '/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings', value: "['/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom1/']"}
- {key: '/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom1/binding', value: "'<Super>t'"}
- {key: '/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom1/command', value: "'terminator'"}
- {key: '/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom1/name', value: "'Terminator'"}
- {key: '/org/gnome/desktop/background/picture-uri', value: "'file://${HOME}/.config/configfiles/wallpaper.png'"}
- {key: '/org/gnome/desktop/background/picture-uri-dark', value: "'file://${HOME}/.config/configfiles/wallpaper.png'"}
fonts:
- {name: 'GoMonoNerd', url: "https://github.com/ryanoasis/nerd-fonts/releases/download/v3.2.1/Go-Mono.zip"}
- {name: 'FiraCodeNerd', url: "https://github.com/ryanoasis/nerd-fonts/releases/download/v3.2.1/FiraCode.zip"}

View file

@ -1,3 +0,0 @@
fonts:
- {name: 'GoMonoNerd', url: "https://github.com/ryanoasis/nerd-fonts/releases/download/v3.2.1/Go-Mono.zip"}
- {name: 'FiraCodeNerd', url: "https://github.com/ryanoasis/nerd-fonts/releases/download/v3.2.1/FiraCode.zip"}

View file

@ -1,20 +0,0 @@
- name: install apt
include_tasks: "./scripts/install_apt.yml"
- name: install brew
include_tasks: "./scripts/install_brew.yml"
- name: install pacman
include_tasks: "./scripts/install_pacman.yml"
- name: install go apps
include_tasks: "./scripts/install_goapps.yml"
- name: install flatpak
include_tasks: "./scripts/install_flatpak.yml"
- name: configure systemd
include_tasks: "./scripts/configure_systemd.yml"
- name: configure qemu
include_tasks: "./scripts/configure_qemu.yml"

View file

@ -1,11 +0,0 @@
- name: Load a variable file
include_vars: "{{ item }}"
with_first_found:
- "vars/{{ ansible_distribution }}-{{ ansible_distribution_version }}.yml"
- "vars/{{ ansible_distribution }}.yml"
- "vars/{{ ansible_os_family }}.yml"
- "vars/defaults.yml"
- name:
include_tasks: "defaults.yml"

View file

@ -1,89 +0,0 @@
required_packages_pacman:
- sway
- waybar
- stow
- lazygit
- tmux
- fzf
- zoxide
- bitwarden-cli
- glab
- go
- neovim
- ffmpeg
- ttyd
- wl-clipboard
- xsel
- pavucontrol
- wofi
- swaybg
- swayidle
- swaylock
- swayimg
- swaync
- pipewire
- pipewire-pulse
- openssh
- xorg-xwayland
- wayland
- kanshi
- xdg-desktop-portal-gtk
- nautilus
- eza
- bat
- wget
- curl
- nmap
- kubectl
- terraform
- podman
- grim
- slurp
- helm
- networkmanager-openvpn
- openresolv
- xsettingsd
- vivid
- lxappearance
- qt5ct
- gnome-calculator
- powertop
- iptables
- gnome-disk-utility
- ranger
- qemu-base
- virt-manager
- virt-viewer
- dnsmasq
- vde2
- bridge-utils
- openbsd-netcat
- dmidecode
- libguestfs
- polkit-kde-agent
- libusb
- qemu-hw-usb-host
- flatpak
- ly
- seahorse
- kitty
flatpak_remote:
- {name: 'flathub', url: "https://dl.flathub.org/repo/flathub.flatpakrepo"}
required_packages_flatpak:
- com.discordapp.Discord
- io.gitlab.librewolf-community
- org.gtk.Gtk3theme.Pop-dark
- com.github.tchx84.Flatseal
- com.vscodium.codium
systemd_service:
- ly.service
- libvirtd.service
go_apps:
- github.com/jorgerojas26/lazysql@latest
- github.com/charmbracelet/vhs@latest
- github.com/charmbracelet/glow@latest
- github.com/swaggo/swag/cmd/swag@latest

View file

@ -1,53 +0,0 @@
install_homebrew_if_missing: true
required_packages_brew:
- lazygit
- fzf
- glab
- go
- neovim
- oh-my-posh
- tpm
- terraform
- kubernetes-cli
- zsh-autosuggestions
- bitwarden-cli
- hashicorp/tap/vault
- ffmpeg
- ttyd
- bat
- eza
- fastfetch
- vivid
- yazi
apt_keys:
- https://packages.microsoft.com/keys/microsoft.asc
apt_repo:
- deb [arch=amd64] https://packages.microsoft.com/ubuntu/22.04/prod jammy main
required_packages_apt:
- powershell
- curl
- wofi
- swaybg
- swayidle
- swaylock
- swayimg
- kanshi
- waybar
#- sway-notification-center
- grim
- slurp
- openresolv
- podman
- brightnessctl
- pavucontrol
- kitty
flatpak_remote:
- {name: 'flathub', url: "https://dl.flathub.org/repo/flathub.flatpakrepo"}
required_packages_flatpak:
- VSCodium

View file

@ -1,100 +0,0 @@
install_homebrew_if_missing: true
required_packages_brew:
- lazygit
- fzf
- glab
- go
- neovim
- oh-my-posh
- tpm
- terraform
- kubernetes-cli
- zsh-autosuggestions
- bitwarden-cli
- "hashicorp/tap/vault"
- ffmpeg
- ttyd
- bat
- eza
- fastfetch
- vivid
- yazi
- ansible
- zsh-history-substring-search
- opentofu
- helm
#apt_keys:
# - https://packages.microsoft.com/keys/microsoft.asc
#apt_repo:
# - deb [arch=amd64] https://packages.microsoft.com/ubuntu/24.04/prod noble main
required_packages_apt:
# - powershell
- sway
- htop
- stow
- zsh
- curl
- wofi
- swaybg
- swayidle
- swaylock
- swayimg
- kanshi
- waybar
- sway-notification-center
- grim
- slurp
- xsel
# - openresolv
- wl-clipboard
- podman
- brightnessctl
- pavucontrol
- kitty
- wget
- apt-transport-https
- software-properties-common
- wdisplays
- eza
- bat
- ripgrep
- fzf
- zoxide
- flameshot
- qemu-kvm
- qemu-system
- qemu-utils
- python3
- python3-pip
- libvirt-clients
- libvirt-daemon-system
- bridge-utils
- virtinst
- libvirt-daemon
- virt-manager
- nautilus
- vlc
flatpak_remote:
- {name: 'flathub', url: "https://dl.flathub.org/repo/flathub.flatpakrepo"}
required_packages_flatpak:
- io.gitlab.librewolf-community
- org.gnome.eog
- me.proton.Pass
- me.proton.Mail
- com.protonvpn.www
- org.remmina.Remmina
- org.gnome.Calculator
go_apps:
- github.com/charmbracelet/vhs@latest
- github.com/charmbracelet/glow@latest
- github.com/swaggo/swag/cmd/swag@latest
- github.com/air-verse/air@latest
systemd_service:
- libvirtd.service

View file

@ -1,32 +0,0 @@
param ($GITLAB_TOKEN)
if (!$GITLAB_TOKEN){
Write-Output "Please unlock Bitwarden"
break
}
#Gitlab set ssh key
$header = @{
"PRIVATE-TOKEN"=$GITLAB_TOKEN
}
$GitlabAPI = "https://gitlab.com/api/v4"
$publickey = Get-Content ~/.ssh/id_ed25519.pub
$body = @{
title = "Ansible Script"
key = "$publickey"
} | ConvertTo-Json
Try{
Invoke-RestMethod -Headers $header -Uri $GitlabAPI/user/keys -Body $body -Method Post -ContentType application/json -ErrorVariable gitlabkey | Out-Null
}Catch{
if($gitlabkey -like "*Token is expired*"){
Write-Error "Token Has Expired"
exit -1
}
if($gitlabkey -notlike "*has already been taken*"){
Write-Error "Failed to upload key"
exit -1
}
}

View file

@ -1,11 +0,0 @@
- name: set default network
shell: "{{ item }}"
with_items:
- "virsh net-start default"
- "virsh net-autostart default"
ignore_errors: yes
- name: add user to libvirt
user:
name: user
groups: libvirt,libvirt-qemu,kvm,input,disk

View file

@ -1,14 +0,0 @@
- name: Create ssh folder
become_user: user
ansible.builtin.file:
path: ~/.ssh
owner: "user"
group: "user"
mode: '0700'
state: directory
- name: Generate an OpenSSH keypair
become_user: user
community.crypto.openssh_keypair:
path: ~/.ssh/id_ed25519
type: ed25519

View file

@ -1,7 +0,0 @@
- name: Enable Systemd Services
ansible.builtin.systemd_service:
name: "{{ item }}"
state: started
enabled: true
with_items: "{{ systemd_service }}"
when: systemd_service is defined

View file

@ -1,28 +0,0 @@
- name: add apt repository key
apt_key:
url: "{{ item }}"
with_items: "{{ apt_keys }}"
become: yes
when: apt_keys is defined
- name: add apt repository
apt_repository:
repo: "{{ item }}"
with_items: "{{ apt_repo }}"
become: yes
when: apt_repo is defined
- name: Upgrade Packages
package:
update_cache: yes
upgrade: safe
become: yes
when: required_packages_apt is defined
- name: Install Packages
apt:
state: latest
update_cache: yes
pkg: "{{ required_packages_apt }}"
become: yes
when: required_packages_apt is defined

View file

@ -1,49 +0,0 @@
- name: Ensuring Homebrew Is Installed
stat:
path: /home/linuxbrew/.linuxbrew/bin/
register: homebrew_check
when: required_packages_brew is defined
- name: Fail If Homebrew Is Not Installed and install_homebrew_if_missing Is False
fail:
msg: Homebrew is missing, install from http://brew.sh
when:
- required_packages_brew is defined
- not homebrew_check.stat.exists
- not install_homebrew_if_missing
- name: Installing Homebrew
become_user: user
shell: /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
when:
- required_packages_brew is defined
- not homebrew_check.stat.exists
- install_homebrew_if_missing
- name: Load Brew shellenv
become_user: user
shell: eval "$(/home/linuxbrew/.linuxbrew/bin brew shellenv)"
when:
- required_packages_brew is defined
- not homebrew_check.stat.exists
- install_homebrew_if_missing
- name: Install Brew Taps
become_user: user
community.general.homebrew_tap:
name: "{{ item }}"
with_items: "{{ required_taps }}"
when: required_taps is defined
- name: Install Brew Casks
become_user: user
community.general.homebrew_cask:
name: "{{ item }}"
with_items: "{{ required_packages_casks }}"
when: required_packages_casks is defined
- name: Install Brew Packages
become_user: user
community.general.homebrew:
name: "{{ required_packages_brew }}"
when: required_packages_brew is defined

View file

@ -1,22 +0,0 @@
- name: configure flatpak
community.general.flatpak_remote:
name: "{{ item.name }}"
state: present
flatpakrepo_url: "{{ item.url }}"
method: system
with_items: "{{ flatpak_remote }}"
when: flatpak_remote is defined
- name: update flatpaks
become_user: user
shell:
cmd: flatpak update --noninteractive
when: required_packages_flatpak is defined
- name: install flatpak
become_user: user
community.general.flatpak:
name: "{{ item }}"
with_items: "{{ required_packages_flatpak }}"
when: required_packages_flatpak is defined
ignore_errors: yes

View file

@ -1,23 +0,0 @@
- name: ensure fonts directory
become_user: user
file:
path: "~/.fonts"
state: directory
when: fonts is defined
- name: Ensuring Fonts Exists
become_user: user
shell: "ls ~/.fonts/*{{ item.name }}*"
register: fonts_exist
ignore_errors: yes
with_items: "{{ fonts }}"
when: fonts is defined
- name: Download Fonts
when: fonts_exist is failed
become_user: user
ansible.builtin.unarchive:
src: "{{ item.url }}"
dest: "~/.fonts/"
remote_src: yes
with_items: "{{ fonts }}"

View file

@ -1,5 +0,0 @@
- name: Installing Go apps
become_user: user
shell: "go install {{ item }}"
with_items: "{{ go_apps }}"
when: go_apps is defined

View file

@ -1,14 +0,0 @@
- name: Upgrade Packages
community.general.pacman:
state: latest
update_cache: yes
become: yes
when: required_packages_pacman is defined
- name: Install Packages
community.general.pacman:
state: present
update_cache: yes
name: "{{ required_packages_pacman }}"
become: yes
when: required_packages_pacman is defined

View file

@ -1,4 +0,0 @@
- name: Install tmux TPM
become_user: user
shell: "git clone https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm"
ignore_errors: yes