Upgrade to Debian 12, with minor updates
- Upgraded project to Debian 12 - .vscode added to .gitignore - LICENSE formatting updated - Copyright refreshed for 2023 - Added Libvirt settings - Refactored packages to inventory-specific - Committed missing autostart-scripts
This commit is contained in:
parent
8228b78c4c
commit
b3e232451c
1
.gitignore
vendored
1
.gitignore
vendored
@ -1 +1,2 @@
|
|||||||
.vagrant
|
.vagrant
|
||||||
|
.vscode
|
||||||
|
13
LICENSE
13
LICENSE
@ -1,5 +1,12 @@
|
|||||||
Copyright (C) 2021 by Kris Lamoureux <kris@lamoureux.io>
|
Copyright (C) 2021, 2023 by Kris Lamoureux <kris@lamoureux.io>
|
||||||
|
|
||||||
Permission to use, copy, modify, and/or distribute this software for any purpose with or without fee is hereby granted.
|
Permission to use, copy, modify, and/or distribute this software for
|
||||||
|
any purpose with or without fee is hereby granted.
|
||||||
|
|
||||||
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
THE SOFTWARE IS PROVIDED “AS IS” AND THE AUTHOR DISCLAIMS ALL
|
||||||
|
WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES
|
||||||
|
OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE
|
||||||
|
FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY
|
||||||
|
DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN
|
||||||
|
AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT
|
||||||
|
OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||||
|
@ -4,6 +4,6 @@ An Ansible project for provisioning and managing a Debian GNU/Linux productivity
|
|||||||
- The vagrant user's password is: `password`
|
- The vagrant user's password is: `password`
|
||||||
|
|
||||||
#### Copyrights and Licenses
|
#### Copyrights and Licenses
|
||||||
Copyright 2021 Kris Lamoureux
|
Copyright 2021, 2023 Kris Lamoureux
|
||||||
|
|
||||||
This project is licensed under the 0BSD license, a public-domain-equivalent license. Please refer to the LICENSE file contained in the repository.
|
This project is licensed under the 0BSD license, a public-domain-equivalent license. Please refer to the LICENSE file contained in the repository.
|
||||||
|
8
Vagrantfile
vendored
8
Vagrantfile
vendored
@ -1,8 +1,14 @@
|
|||||||
Vagrant.configure("2") do |config|
|
Vagrant.configure("2") do |config|
|
||||||
config.vm.box = "debian/bullseye64"
|
config.vm.box = "debian/bookworm64"
|
||||||
config.vm.network "private_network", type: "dhcp"
|
config.vm.network "private_network", type: "dhcp"
|
||||||
config.vm.synced_folder ".", "/vagrant", disabled: true
|
config.vm.synced_folder ".", "/vagrant", disabled: true
|
||||||
|
|
||||||
|
# Libvrit settings
|
||||||
|
config.vm.provider :libvirt do |domain|
|
||||||
|
domain.memory = 4096
|
||||||
|
domain.cpus = 2
|
||||||
|
end
|
||||||
|
|
||||||
# Boot with a GUI in VirtualBox
|
# Boot with a GUI in VirtualBox
|
||||||
config.vm.provider "virtualbox" do |vbox|
|
config.vm.provider "virtualbox" do |vbox|
|
||||||
vbox.customize ["modifyvm", :id, "--vram", "128",
|
vbox.customize ["modifyvm", :id, "--vram", "128",
|
||||||
|
@ -1,11 +1,28 @@
|
|||||||
# Settings convenient for development in vagrant
|
# Settings convenient for development in vagrant
|
||||||
development: true
|
development: true
|
||||||
|
|
||||||
|
packages:
|
||||||
|
# GUI applications
|
||||||
|
- firefox-esr
|
||||||
|
- terminator
|
||||||
|
- remmina
|
||||||
|
|
||||||
|
# Virtualization
|
||||||
|
- qemu-system
|
||||||
|
- vagrant-libvirt
|
||||||
|
- libvirt-daemon-system
|
||||||
|
|
||||||
users:
|
users:
|
||||||
- name: vagrant
|
- name: vagrant
|
||||||
|
groups:
|
||||||
|
- libvirt
|
||||||
|
|
||||||
favorites:
|
favorites:
|
||||||
- firefox-esr.desktop
|
- firefox-esr.desktop
|
||||||
- terminator.desktop
|
- terminator.desktop
|
||||||
- org.kde.dolphin.desktop
|
- org.kde.dolphin.desktop
|
||||||
- org.remmina.Remmina.desktop
|
- org.remmina.Remmina.desktop
|
||||||
|
|
||||||
|
pinned:
|
||||||
|
- firefox-esr.desktop
|
||||||
|
- terminator.desktop
|
||||||
|
@ -1,8 +1,9 @@
|
|||||||
homedir: "/home/{{ item.name }}"
|
homedir: "/home/{{ item.name }}"
|
||||||
|
|
||||||
# Follows homelab package list:
|
# Follows homelab package list:
|
||||||
# https://github.com/krislamo/moxie/blob/master/roles/base/defaults/main.yml
|
# https://github.com/krislamo/homelab/blob/main/roles/base/defaults/main.yml#L5
|
||||||
moxie_packages:
|
homelab_packages:
|
||||||
|
- apache2-utils
|
||||||
- cryptsetup
|
- cryptsetup
|
||||||
- curl
|
- curl
|
||||||
- dnsutils
|
- dnsutils
|
||||||
@ -19,8 +20,4 @@ moxie_packages:
|
|||||||
- wget
|
- wget
|
||||||
|
|
||||||
packages:
|
packages:
|
||||||
- "{{ moxie_packages }}"
|
- "{{ homelab_packages }}"
|
||||||
- firefox-esr
|
|
||||||
- meld
|
|
||||||
- remmina
|
|
||||||
- terminator
|
|
||||||
|
@ -1,24 +1,6 @@
|
|||||||
- name: Set vagrant user password
|
- name: Set vagrant user password
|
||||||
user:
|
ansible.builtin.user:
|
||||||
name: vagrant
|
name: vagrant
|
||||||
password: "$6$xu0I8bbf.Nva7uCo$OHz5/64u0SjHa1jn0EwCLSNw7Zoj5ejhL\
|
password: "$6$xu0I8bbf.Nva7uCo$OHz5/64u0SjHa1jn0EwCLSNw7Zoj5ejhL\
|
||||||
6NtaXYY6zlC0CQa0J4kZIxAp2Ls4lMdLmuo7oMQX/vlDucR9BbcA."
|
6NtaXYY6zlC0CQa0J4kZIxAp2Ls4lMdLmuo7oMQX/vlDucR9BbcA."
|
||||||
|
|
||||||
- name: Install fasttrack archive keyring
|
|
||||||
apt:
|
|
||||||
name: fasttrack-archive-keyring
|
|
||||||
state: present
|
|
||||||
update_cache: true
|
|
||||||
|
|
||||||
- name: Enable fasttrack
|
|
||||||
copy:
|
|
||||||
dest: /etc/apt/sources.list.d/fasttrack.list
|
|
||||||
content: |
|
|
||||||
deb https://fasttrack.debian.net/debian-fasttrack/ bullseye-fasttrack main contrib
|
|
||||||
deb https://fasttrack.debian.net/debian-fasttrack/ bullseye-backports-staging main contrib
|
|
||||||
|
|
||||||
- name: Install guest additions
|
|
||||||
apt:
|
|
||||||
name: virtualbox-guest-x11
|
|
||||||
state: present
|
|
||||||
update_cache: true
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
- name: Install KDE
|
- name: Install KDE
|
||||||
apt:
|
ansible.builtin.apt:
|
||||||
name: kde-standard
|
name: kde-standard
|
||||||
state: present
|
state: present
|
||||||
update_cache: true
|
update_cache: true
|
||||||
@ -24,18 +24,33 @@
|
|||||||
loop: "{{ users }}"
|
loop: "{{ users }}"
|
||||||
|
|
||||||
- name: Install packages
|
- name: Install packages
|
||||||
apt:
|
ansible.builtin.apt:
|
||||||
name: "{{ item }}"
|
name: "{{ item }}"
|
||||||
loop: "{{ packages }}"
|
loop: "{{ packages }}"
|
||||||
|
|
||||||
- name: Install sqlite3
|
- name: Install sqlite3
|
||||||
apt:
|
ansible.builtin.apt:
|
||||||
name: sqlite3
|
name: sqlite3
|
||||||
state: present
|
state: present
|
||||||
|
|
||||||
- name: Change favorites menu
|
- name: Change favorites menu
|
||||||
template:
|
ansible.builtin.template:
|
||||||
src: favorites.sh.j2
|
src: favorites.sh.j2
|
||||||
dest: "{{ homedir }}/.config/autostart-scripts/favorites.sh"
|
dest: "{{ homedir }}/.config/autostart-scripts/favorites.sh"
|
||||||
mode: a+x
|
mode: a+x
|
||||||
loop: "{{ users }}"
|
loop: "{{ users }}"
|
||||||
|
|
||||||
|
- name: Change task manager pinned apps
|
||||||
|
ansible.builtin.template:
|
||||||
|
src: pinnedapps.sh.j2
|
||||||
|
dest: "{{ homedir }}/.config/autostart-scripts/pinnedapps.sh"
|
||||||
|
mode: a+x
|
||||||
|
loop: "{{ users }}"
|
||||||
|
|
||||||
|
- name: Ensure we have our own comment added to /etc/services
|
||||||
|
ansible.builtin.lineinfile:
|
||||||
|
path: "{{ homedir }}/.config/autostart-scripts/pinnedapps.sh"
|
||||||
|
regexp: '^# port for http'
|
||||||
|
insertbefore: '^www.*80/tcp'
|
||||||
|
line: '# port for http by default'
|
||||||
|
loop: "{{ users }}"
|
||||||
|
@ -1,6 +1,12 @@
|
|||||||
- import_tasks: development.yml
|
- name: Import development vagrant tasks
|
||||||
|
ansible.builtin.import_tasks: development.yml
|
||||||
tags: development
|
tags: development
|
||||||
when: development
|
when: development
|
||||||
|
|
||||||
- import_tasks: gui.yml
|
- name: Import system tasks
|
||||||
|
ansible.builtin.import_tasks: system.yml
|
||||||
|
tags: system
|
||||||
|
|
||||||
|
- name: Import GUI tasks
|
||||||
|
ansible.builtin.import_tasks: gui.yml
|
||||||
tags: gui
|
tags: gui
|
||||||
|
23
roles/common/tasks/system.yml
Normal file
23
roles/common/tasks/system.yml
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
- name: Install software
|
||||||
|
ansible.builtin.apt:
|
||||||
|
name: "{{ packages }}"
|
||||||
|
state: present
|
||||||
|
update_cache: true
|
||||||
|
|
||||||
|
- name: Create system users
|
||||||
|
ansible.builtin.user:
|
||||||
|
name: "{{ item.name }}"
|
||||||
|
state: present
|
||||||
|
groups: "{{ item.groups }}"
|
||||||
|
append: yes
|
||||||
|
shell: "{{ item.shell | default('/bin/bash') }}"
|
||||||
|
create_home: "{{ item.home | default(false) }}"
|
||||||
|
loop: "{{ users }}"
|
||||||
|
when: users is defined
|
||||||
|
|
||||||
|
- name: Change favorites menu
|
||||||
|
ansible.builtin.template:
|
||||||
|
src: favorites.sh.j2
|
||||||
|
dest: "{{ homedir }}/.config/autostart-scripts/favorites.sh"
|
||||||
|
mode: a+x
|
||||||
|
loop: "{{ users }}"
|
11
roles/common/templates/pinnedapps.sh.j2
Normal file
11
roles/common/templates/pinnedapps.sh.j2
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
PINNED="{% for item in pinned %}{{ item }}{{ ',' if not loop.last else '' }}{% endfor %}"
|
||||||
|
FILE="~/.config/plasma-org.kde.plasma.desktop-appletsrc"
|
||||||
|
HEADER="[Containments][2][Applets][5][Configuration][General]"
|
||||||
|
SECTIONUNDER="[Containments][2][Applets][6]"
|
||||||
|
if [ -f "$FILE" ]; then
|
||||||
|
if ! grep -q "$PINNED" "$FILE"; then
|
||||||
|
sed -i "/^$HEADER\nlaunchers=.*/i\n\n$SECTIONUNDER" "$FILE"
|
||||||
|
fi
|
||||||
|
fi
|
Loading…
Reference in New Issue
Block a user