summaryrefslogtreecommitdiffstats
path: root/core
diff options
context:
space:
mode:
authorSimon Rettberg2021-07-16 11:38:51 +0200
committerSimon Rettberg2021-07-16 11:38:51 +0200
commitd5ee66fecc5a577dfe8af5c67fe271cef6ec446a (patch)
tree4c041a82115a02aad3fdd09ff0173bf841c1adde /core
parent[nvidia-libs/nvidia-kernel] Add module_init hook, rename load hook (diff)
downloadmltk-d5ee66fecc5a577dfe8af5c67fe271cef6ec446a.tar.gz
mltk-d5ee66fecc5a577dfe8af5c67fe271cef6ec446a.tar.xz
mltk-d5ee66fecc5a577dfe8af5c67fe271cef6ec446a.zip
[libvirt/libvirt-users] Move libvirt-qemu user to main module
Diffstat (limited to 'core')
-rw-r--r--core/modules/libvirt-users/module.build43
-rw-r--r--core/modules/libvirt-users/module.conf5
-rw-r--r--core/modules/libvirt/module.build14
-rw-r--r--core/modules/libvirt/module.conf4
l---------core/targets/qemu/libvirt-users1
5 files changed, 14 insertions, 53 deletions
diff --git a/core/modules/libvirt-users/module.build b/core/modules/libvirt-users/module.build
deleted file mode 100644
index cab41b98..00000000
--- a/core/modules/libvirt-users/module.build
+++ /dev/null
@@ -1,43 +0,0 @@
-#!/bin/bash
-fetch_source() {
- :
-}
-
-build() {
- :
-}
-
-post_copy() {
- # Create libvirt users before installing libvirt packages since the
- # libvirt DEB package hook script will create system users with an
- # UID/GID greater or equal than 1000. Those default libvirt UIDs/GIDs
- # are not allowed since they will collide with LDAP UIDs/GIDs.
-
- # add system groups to run libvirt
- if ! getent group libvirt-qemu >/dev/null; then
- addgroup --quiet --system libvirt-qemu
- fi
-
- if ! getent group kvm >/dev/null; then
- addgroup --quiet --system kvm
- fi
-
- # add system user libvirt runs qemu/kvm instances with
- if ! getent passwd libvirt-qemu >/dev/null; then
- adduser --quiet \
- --system \
- --ingroup kvm \
- --quiet \
- --disabled-login \
- --disabled-password \
- --home /var/lib/libvirt \
- --no-create-home \
- --gecos "Libvirt Qemu" \
- libvirt-qemu
- fi
-
- # add libvirt system user to the libvirt system group
- if ! getent group libvirt-qemu >/dev/null; then
- adduser --quiet libvirt-qemu libvirt-qemu
- fi
-}
diff --git a/core/modules/libvirt-users/module.conf b/core/modules/libvirt-users/module.conf
deleted file mode 100644
index 668ddf88..00000000
--- a/core/modules/libvirt-users/module.conf
+++ /dev/null
@@ -1,5 +0,0 @@
-#!/bin/bash
-
-REQUIRED_BINARIES=""
-REQUIRED_LIBRARIES=""
-REQUIRED_DIRECTORIES=""
diff --git a/core/modules/libvirt/module.build b/core/modules/libvirt/module.build
index 730af022..3672b4c2 100644
--- a/core/modules/libvirt/module.build
+++ b/core/modules/libvirt/module.build
@@ -1,4 +1,16 @@
#!/bin/bash
+
+module_init() {
+ local uid gid
+ # TODO theye functions suck, make thin wrappers around useradd et al.
+ gid="$( add_system_group "kvm" )"
+ uid="$( USER="libvirt-qemu" \
+ GROUPID="$gid" \
+ add_system_user )"
+ [ -z "$uid" ] && perror "Could not create libvirt-qemu user"
+ (( uid >= 1000 )) && perror "libvirt-qemu user has uid >= 1000"
+}
+
fetch_source() {
:
}
@@ -9,6 +21,8 @@ build() {
post_copy() {
# remove default network configuration
+ # TODO: Some REQUIRED_DELETIONS var that handles this? This would not
+ # do the right thing in MiniLinux mode.
rm "/etc/libvirt/qemu/networks/default.xml"
rm "/etc/libvirt/qemu/networks/autostart/default.xml"
}
diff --git a/core/modules/libvirt/module.conf b/core/modules/libvirt/module.conf
index d67344f7..668ddf88 100644
--- a/core/modules/libvirt/module.conf
+++ b/core/modules/libvirt/module.conf
@@ -1,9 +1,5 @@
#!/bin/bash
-REQUIRED_MODULES="
- libvirt-users
-"
-
REQUIRED_BINARIES=""
REQUIRED_LIBRARIES=""
REQUIRED_DIRECTORIES=""
diff --git a/core/targets/qemu/libvirt-users b/core/targets/qemu/libvirt-users
deleted file mode 120000
index 6f799d72..00000000
--- a/core/targets/qemu/libvirt-users
+++ /dev/null
@@ -1 +0,0 @@
-../../modules/libvirt-users \ No newline at end of file