From a0ea10542d69889df2e39f83dc2d302bf8e6248b Mon Sep 17 00:00:00 2001 From: Marty Oehme Date: Fri, 7 Mar 2025 21:37:30 +0100 Subject: [PATCH 1/4] ref(base): Change initramfs created filename Since void defaults to building an 'initramfs-.img' file when running the update hook, I think it is just correct if we follow their example. This will make it harder to distinguish between kernels if you have many others in the boot dir (e.g. Arch, or LTS) but that seems only an edge case. --- roles/base/vars/main.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/roles/base/vars/main.yaml b/roles/base/vars/main.yaml index 01f3915..a75088a 100644 --- a/roles/base/vars/main.yaml +++ b/roles/base/vars/main.yaml @@ -1,5 +1,5 @@ --- -booster_initramfs_name: /boot/booster-void +booster_initramfs_name: /boot/initramfs host_name: voider timezone: Europe/Berlin locales_enabled: From 5dd160727a038078e1da6b8c47917005919b4b35 Mon Sep 17 00:00:00 2001 From: Marty Oehme Date: Fri, 7 Mar 2025 21:37:30 +0100 Subject: [PATCH 2/4] fix(roles): Default to root as user name Always default to 'root' as a user_name if no variable has been set. This can easily happen as not every role sets the variable and instead we only set it once in the user role. Another way to possibly go about it in the future would be to inject the 'user_name' into each role that needs it as one of that role's default variables. If it is specified by the user somewhere it _should_ override those defaults, though I have to read up on the exact variable precedence. --- roles/base/tasks/main.yaml | 2 +- roles/gnupg/tasks/main.yaml | 2 +- roles/pipewire/tasks/main.yaml | 2 +- roles/power/tasks/main.yaml | 2 +- roles/user/tasks/main.yaml | 4 ++-- 5 files changed, 6 insertions(+), 6 deletions(-) diff --git a/roles/base/tasks/main.yaml b/roles/base/tasks/main.yaml index b51f445..28f99d0 100644 --- a/roles/base/tasks/main.yaml +++ b/roles/base/tasks/main.yaml @@ -138,6 +138,6 @@ - name: Put user in socklog group ansible.builtin.user: - name: "{{ user_name }}" + name: "{{ user_name | default('root') }}" groups: [socklog] append: true diff --git a/roles/gnupg/tasks/main.yaml b/roles/gnupg/tasks/main.yaml index 98b5a2b..e1bec46 100644 --- a/roles/gnupg/tasks/main.yaml +++ b/roles/gnupg/tasks/main.yaml @@ -14,6 +14,6 @@ - name: Put user in plugdev group ansible.builtin.user: - name: "{{ user_name }}" + name: "{{ user_name | default('root') }}" groups: [plugdev] append: true diff --git a/roles/pipewire/tasks/main.yaml b/roles/pipewire/tasks/main.yaml index b2ce769..e60fe20 100644 --- a/roles/pipewire/tasks/main.yaml +++ b/roles/pipewire/tasks/main.yaml @@ -6,7 +6,7 @@ - name: Put user in audio group ansible.builtin.user: - name: "{{ user_name }}" + name: "{{ user_name | default('root') }}" groups: "{{ audio_groups }}" append: true diff --git a/roles/power/tasks/main.yaml b/roles/power/tasks/main.yaml index d55f4a5..b6f1c15 100644 --- a/roles/power/tasks/main.yaml +++ b/roles/power/tasks/main.yaml @@ -6,7 +6,7 @@ - name: Put user in power group ansible.builtin.user: - name: "{{ user_name }}" + name: "{{ user_name | default('root') }}" groups: [power] append: true diff --git a/roles/user/tasks/main.yaml b/roles/user/tasks/main.yaml index bcba9bb..3f8e48e 100644 --- a/roles/user/tasks/main.yaml +++ b/roles/user/tasks/main.yaml @@ -16,11 +16,11 @@ - name: Add primary user ansible.builtin.user: - name: "{{ user_name }}" + name: "{{ user_name | default('root') }}" password: "{{ user_pass | password_hash('sha512', '{{ user_pass_salt}}') }}" create_home: true shell: "/bin/{{ user_shell }}" - group: "{{ user_name }}" + group: "{{ user_name | default('root') }}" groups: "{{ user_groups }}" generate_ssh_key: true tags: From 5cd967b6e594b35edd29c1189ab67a57825ff5bc Mon Sep 17 00:00:00 2001 From: Marty Oehme Date: Sun, 16 Mar 2025 15:56:12 +0100 Subject: [PATCH 3/4] packages: Add python3-adblock for qutebrowser --- group_vars/desktop.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/group_vars/desktop.yaml b/group_vars/desktop.yaml index 260f336..0e19c90 100644 --- a/group_vars/desktop.yaml +++ b/group_vars/desktop.yaml @@ -15,5 +15,6 @@ packages_de: packages_gui: - gimp - qutebrowser + - python3-adblock # dependency for qutebrowser adblocking - sioyek - wdisplays From db562158f7c1a7607c28f83860fd9f0902052ae1 Mon Sep 17 00:00:00 2001 From: Marty Oehme Date: Wed, 5 Mar 2025 16:10:30 +0100 Subject: [PATCH 4/4] feat(packages): Add personal repository Add my own package repository and let users define additional custom repositories to install. Enable installation of packages from my repository. --- group_vars/headless.yaml | 7 +++++++ roles/packages/defaults/main.yaml | 2 ++ roles/packages/tasks/main.yaml | 9 +++++++++ roles/packages/templates/custom-repos.conf.j2 | 3 +++ 4 files changed, 21 insertions(+) create mode 100644 roles/packages/defaults/main.yaml create mode 100644 roles/packages/templates/custom-repos.conf.j2 diff --git a/group_vars/headless.yaml b/group_vars/headless.yaml index 7b938dc..c4272cf 100644 --- a/group_vars/headless.yaml +++ b/group_vars/headless.yaml @@ -70,3 +70,10 @@ packages_terminal: - zoxide - zr # zsh plugin manager - zsh + +packages_custom: + - bemoji + - dotter + - filtile-bin + - localsend-go + - ripgrep-all diff --git a/roles/packages/defaults/main.yaml b/roles/packages/defaults/main.yaml new file mode 100644 index 0000000..f6c640f --- /dev/null +++ b/roles/packages/defaults/main.yaml @@ -0,0 +1,2 @@ +custom_repositories: + - https://marty-oehme.github.io/void-templates diff --git a/roles/packages/tasks/main.yaml b/roles/packages/tasks/main.yaml index d74b51e..75784cc 100644 --- a/roles/packages/tasks/main.yaml +++ b/roles/packages/tasks/main.yaml @@ -1,3 +1,12 @@ +--- +- name: Add custom repositories + ansible.builtin.template: + src: custom-repos.conf.j2 + dest: /etc/xbps.d/20-custom-repositories.conf + tags: + - repositories + - custom_packages + - name: Install all my used void packages community.general.xbps: name: "{{ lookup('community.general.merge_variables', '^packages_.*') }}" diff --git a/roles/packages/templates/custom-repos.conf.j2 b/roles/packages/templates/custom-repos.conf.j2 new file mode 100644 index 0000000..702648e --- /dev/null +++ b/roles/packages/templates/custom-repos.conf.j2 @@ -0,0 +1,3 @@ +{% for item in custom_repositories %} +repository={{ item }} +{% endfor %}