Optimized virtualbox draft

This commit is contained in:
Kevin Veen-Birkenbach 2025-07-23 21:18:09 +02:00
parent 0472fecd64
commit f5213fd59c
No known key found for this signature in database
GPG Key ID: 44D8F11FD62F878E
5 changed files with 65 additions and 0 deletions

View File

@ -0,0 +1,9 @@
# pc-virtual-box
```bash
sudo pacman -S virtualbox "$(pacman -Qsq "^linux" | grep "^linux[0-9]*[-rt]*$" | awk '{print $1"-virtualbox-host-modules"}' ORS=' ')" &&
sudo vboxreload &&
pamac build virtualbox-ext-oracle &&
sudo gpasswd -a "$USER" vboxusers || exit 1
echo "Keep in mind to install the guest additions in the virtualized system. See https://wiki.manjaro.org/index.php?title=VirtualBox"
```

View File

@ -0,0 +1,4 @@
---
- name: reload virtualbox kernel modules
become: true
command: vboxreload

View File

@ -0,0 +1,23 @@
---
galaxy_info:
author: "Kevin Veen-Birchenbach"
description: "Installs and configures VirtualBox and its kernel modules on Pacman-based systems, including extension packs and user group setup."
license: "CyMaIS NonCommercial License (CNCL)"
license_url: "https://s.veen.world/cncl"
company: |
Kevin Veen-Birkenbach
Consulting & Coaching Solutions
https://www.veen.world
galaxy_tags:
- virtualbox
- virtualization
- kernel-modules
repository: "https://github.com/kevinveenbirkenbach/cymais"
issue_tracker_url: "https://github.com/kevinveenbirkenbach/cymais/issues"
documentation: "https://github.com/kevinveenbirkenbach/cymais/tree/main/roles/desk-virtual-box"
min_ansible_version: "2.9"
platforms:
- name: Archlinux
versions:
- all
dependencies: []

View File

@ -0,0 +1,28 @@
---
- name: Install VirtualBox and kernel modules
become: true
pacman:
name: >-
virtualbox
{{ lookup('pipe', "pacman -Qsq '^linux' | grep '^linux[0-9]*[-rt]*$' | awk '{print $1 \"-virtualbox-host-modules\"}' ORS=' '") }}
state: present
update_cache: true
- name: Load vbox kernel modules
become: true
command: vboxreload
register: vboxreload_output
failed_when: vboxreload_output.rc != 0 and '"vboxdrv"' not in vboxreload_output.stderr
- name: Build and install Oracle VirtualBox extension pack
become: true
command: pamac build --no-confirm virtualbox-ext-oracle
args:
creates: /usr/lib/virtualbox/ExtensionPacks/Oracle_VM_VirtualBox_Extension_Pack
- name: Add current user to vboxusers group
become: true
user:
name: "{{ lookup('env','USER') }}"
groups: vboxusers
append: yes

View File

@ -0,0 +1 @@
application_id: desk-virtualbox