Merge branch 'main' of https://code.smolnet.org/micke/datta
commit
b527591834
@ -0,0 +1,7 @@
|
||||
# Install mickes datta
|
||||
```
|
||||
# apt install git ansible
|
||||
$ git clone https://code.smolnet.org/micke/datta.git
|
||||
$ cd datta
|
||||
$ ansible-playbook --ask-become-pass setup.yaml
|
||||
```
|
After Width: | Height: | Size: 2.4 MiB |
@ -0,0 +1,48 @@
|
||||
---
|
||||
- name: Install packages
|
||||
hosts: localhost
|
||||
connection: local
|
||||
become: false
|
||||
tasks:
|
||||
- name: Install apt packages
|
||||
become: true
|
||||
ansible.builtin.apt:
|
||||
autoclean: true
|
||||
autoremove: true
|
||||
install_recommends: true
|
||||
pkg:
|
||||
- ansible
|
||||
- curl
|
||||
- fcitx5
|
||||
- foot
|
||||
- git
|
||||
- grimshot
|
||||
- lxpolkit
|
||||
- network-manager-gnome
|
||||
- nextcloud-desktop
|
||||
- npm
|
||||
- pass
|
||||
- pipx
|
||||
- python3-yamlfix
|
||||
- sway
|
||||
- sway-backgrounds
|
||||
- sway-notification-center
|
||||
- swayidle
|
||||
- swaylock
|
||||
- waybar
|
||||
- wget
|
||||
- wl-clipboard
|
||||
- wofi
|
||||
- yq
|
||||
- zsh
|
||||
state: latest
|
||||
update_cache: true
|
||||
- name: Remove apt packages
|
||||
become: true
|
||||
ansible.builtin.apt:
|
||||
autoclean: true
|
||||
autoremove: true
|
||||
install_recommends: true
|
||||
pkg: [nano]
|
||||
state: absent
|
||||
update_cache: true
|
@ -0,0 +1,93 @@
|
||||
---
|
||||
- name: Set nvim/lvim
|
||||
hosts: localhost
|
||||
vars:
|
||||
uid: "{{ lookup('env','USER') }}"
|
||||
LV_BRANCH: release-1.3/neovim-0.9
|
||||
tabby_password: "{{ lookup('ansible.builtin.pipe','pass show tabby-lab.sunet.se/tabby') }}"
|
||||
connection: local
|
||||
become: false
|
||||
tasks:
|
||||
- name: Have nvim allready installed
|
||||
stat:
|
||||
path: /usr/local/bin/nvim
|
||||
register: have_nvim
|
||||
- name: Get neovim
|
||||
ansible.builtin.command:
|
||||
chdir: /tmp
|
||||
cmd: wget https://github.com/neovim/neovim/releases/latest/download/nvim-linux64.tar.gz
|
||||
creates: /tmp/nvim-linux64.tar.gz
|
||||
when: not have_nvim.stat.exists
|
||||
- name: Unpack neovim
|
||||
ansible.builtin.command:
|
||||
chdir: /tmp
|
||||
cmd: tar xf nvim-linux64.tar.gz
|
||||
creates: /tmp/nvim-linux64
|
||||
when: not have_nvim.stat.exists
|
||||
- name: Install neovim
|
||||
become: true
|
||||
ansible.builtin.command:
|
||||
chdir: /tmp/nvim-linux64
|
||||
cmd: cp -a bin/ lib/ share/ /usr/local/
|
||||
creates: [/usr/local/bin/nvim]
|
||||
when: not have_nvim.stat.exists
|
||||
- name: Install neovim man pages
|
||||
become: true
|
||||
ansible.builtin.command:
|
||||
chdir: /tmp/nvim-linux64
|
||||
cmd: cp -a man/ /usr/local/share/
|
||||
creates: [/usr/local/share/man/man1/nvim.1]
|
||||
when: not have_nvim.stat.exists
|
||||
- name: Remove neovim tar ball
|
||||
ansible.builtin.command:
|
||||
chdir: /tmp
|
||||
cmd: rm nvim-linux64.tar.gz
|
||||
removes: /tmp/nvim-linux64.tar.gz
|
||||
when: not have_nvim.stat.exists
|
||||
- name: Remove neovim install files
|
||||
ansible.builtin.command:
|
||||
chdir: /tmp
|
||||
cmd: rm -rf nvim-linux64/
|
||||
removes: /tmp/nvim-linux64
|
||||
when: not have_nvim.stat.exists
|
||||
- name: Get lunarvim
|
||||
ansible.builtin.command:
|
||||
chdir: /tmp
|
||||
cmd: wget https://raw.githubusercontent.com/LunarVim/LunarVim/release-1.3/neovim-0.9/utils/installer/install.sh
|
||||
creates: /tmp/install.sh
|
||||
when: not have_nvim.stat.exists
|
||||
- name: Install lunarvim
|
||||
ansible.builtin.command:
|
||||
cmd: bash /tmp/install.sh
|
||||
creates: /home/{{ uid }}/.local/bin/lvim
|
||||
when: not have_nvim.stat.exists
|
||||
- name: Remove lunarvim install script
|
||||
ansible.builtin.command:
|
||||
cmd: rm /tmp/install.sh
|
||||
removes: /tmp/install.sh
|
||||
when: not have_nvim.stat.exists
|
||||
- name: Make my lvim real vim
|
||||
become: true
|
||||
ansible.builtin.file:
|
||||
src: /home/{{ uid }}/.local/bin/lvim
|
||||
dest: /usr/local/bin/vim
|
||||
state: link
|
||||
when: not have_nvim.stat.exists
|
||||
- name: Install lunarvim config
|
||||
ansible.builtin.template:
|
||||
src: ../templates/config.lua.j2
|
||||
dest: /home/{{ uid }}/.config/lvim/config.lua
|
||||
owner: '{{ uid }}'
|
||||
group: '{{ uid }}'
|
||||
mode: '0644'
|
||||
- name: Create sources dir
|
||||
ansible.builtin.file:
|
||||
dest: /home/{{ uid }}/sources
|
||||
state: directory
|
||||
when: not have_nvim.stat.exists
|
||||
- name: Get tabby plugin
|
||||
ansible.builtin.command:
|
||||
chdir: /home/{{ uid }}/sources/
|
||||
cmd: git clone https://github.com/TabbyML/tabby.git
|
||||
creates: /home/{{ uid }}/sources/tabby
|
||||
when: not have_nvim.stat.exists
|
@ -0,0 +1,19 @@
|
||||
---
|
||||
- name: Set up ssh
|
||||
vars:
|
||||
uid: "{{ lookup('env','USER') }}"
|
||||
hosts: localhost
|
||||
connection: local
|
||||
become: false
|
||||
tasks:
|
||||
- name: Create ssh dir
|
||||
ansible.builtin.file:
|
||||
dest: /home/{{ uid }}/.ssh
|
||||
state: directory
|
||||
- name: Install authorized keys
|
||||
ansible.builtin.template:
|
||||
src: ../templates/authorized_keys.j2
|
||||
dest: /home/{{ uid }}/.ssh/authorized_keys
|
||||
owner: '{{ uid }}'
|
||||
group: '{{ uid }}'
|
||||
mode: '0600'
|
@ -0,0 +1,52 @@
|
||||
---
|
||||
- name: Set up sway
|
||||
vars:
|
||||
uid: "{{ lookup('env','USER') }}"
|
||||
wallpaper_path: /home/{{ uid }}/.config/wallpaper/savannah-landscape-with-acacia-trees.jpeg
|
||||
hosts: localhost
|
||||
connection: local
|
||||
become: false
|
||||
tasks:
|
||||
- name: Install autotiling
|
||||
ansible.builtin.command:
|
||||
cmd: pipx install autotiling
|
||||
creates: /home/{{ uid }}/.local/bin/autotiling
|
||||
- name: Create sway dir
|
||||
ansible.builtin.file:
|
||||
dest: /home/{{ uid }}/.config/sway
|
||||
state: directory
|
||||
- name: Install sway config
|
||||
ansible.builtin.template:
|
||||
src: ../templates/sway_config.j2
|
||||
dest: /home/{{ uid }}/.config/sway/config
|
||||
owner: '{{ uid }}'
|
||||
group: '{{ uid }}'
|
||||
mode: '0640'
|
||||
notify: Reload sway
|
||||
- name: Create waybar dir
|
||||
ansible.builtin.file:
|
||||
dest: /home/{{ uid }}/.config/waybar
|
||||
state: directory
|
||||
- name: Install waybar config
|
||||
ansible.builtin.template:
|
||||
src: ../templates/waybar_config.j2
|
||||
dest: /home/{{ uid }}/.config/waybar/config
|
||||
owner: '{{ uid }}'
|
||||
group: '{{ uid }}'
|
||||
mode: '0640'
|
||||
notify: Reload sway
|
||||
- name: Create wallpaper dir
|
||||
ansible.builtin.file:
|
||||
dest: /home/{{ uid }}/.config/wallpaper
|
||||
state: directory
|
||||
# Image by upklyak on Freepik
|
||||
# https://www.freepik.com/free-vector/savannah-landscape-with-acacia-trees-night-vector-cartoon-illustration-african-savanna-with-full-moon-stars-dark-sky-concept-safari-vacation-trip-travel_25694514.htm
|
||||
- name: Setup wall paper
|
||||
ansible.builtin.copy:
|
||||
dest: '{{ wallpaper_path }}'
|
||||
src: ../data/savannah-landscape-with-acacia-trees.jpeg
|
||||
notify: Reload sway
|
||||
handlers:
|
||||
- name: Reload sway
|
||||
ansible.builtin.command:
|
||||
cmd: swaymsg reload
|
@ -0,0 +1,40 @@
|
||||
---
|
||||
- name: Install zsh
|
||||
hosts: localhost
|
||||
connection: local
|
||||
become: false
|
||||
vars:
|
||||
uid: "{{ lookup('env','USER') }}"
|
||||
tasks:
|
||||
- name: Have zsh installed allready
|
||||
stat:
|
||||
path: /home/{{ uid }}/.oh-my-zsh
|
||||
register: ohmyzsh
|
||||
- name: Set zsh as default shell
|
||||
become: true
|
||||
ansible.builtin.command:
|
||||
cmd: chsh -s /usr/bin/zsh {{ uid }}
|
||||
when: not ohmyzsh.stat.exists
|
||||
- name: Get Oh my zsh
|
||||
ansible.builtin.command:
|
||||
chdir: /tmp
|
||||
cmd: wget https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh
|
||||
creates: /tmp/install.sh
|
||||
when: not ohmyzsh.stat.exists
|
||||
- name: Install Oh my zsh
|
||||
ansible.builtin.command:
|
||||
cmd: bash /tmp/install.sh
|
||||
creates: /home/{{ uid }}/.oh-my-zsh
|
||||
when: not ohmyzsh.stat.exists
|
||||
- name: Remove Oh my zsh install script
|
||||
ansible.builtin.command:
|
||||
cmd: rm /tmp/install.sh
|
||||
removes: /tmp/install.sh
|
||||
when: not ohmyzsh.stat.exists
|
||||
- name: Install zshrc
|
||||
ansible.builtin.template:
|
||||
src: ../templates/zshrc.j2
|
||||
dest: /home/{{ uid }}/.zshrc
|
||||
owner: '{{ uid }}'
|
||||
group: '{{ uid }}'
|
||||
mode: '0644'
|
@ -0,0 +1,16 @@
|
||||
{
|
||||
"layer": "top",
|
||||
"modules-left": ["sway/workspaces", "sway/mode"],
|
||||
"modules-center": ["sway/window"],
|
||||
"modules-right": ["battery", "clock", "tray"],
|
||||
"sway/window": {
|
||||
"max-length": 50
|
||||
},
|
||||
"battery": {
|
||||
"format": "{capacity}% {icon}",
|
||||
"format-icons": ["", "", "", "", ""]
|
||||
},
|
||||
"clock": {
|
||||
"format-alt": "{:%a, %d. %b %H:%M}"
|
||||
}
|
||||
}
|
Loading…
Reference in new issue