summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--core/modules/beamergui/module.conf2
-rw-r--r--core/modules/busybox/module.conf2
-rw-r--r--core/modules/busybox/openslx-busybox-config2
-rw-r--r--core/modules/cowgui/module.build22
-rw-r--r--core/modules/cowgui/module.conf9
-rwxr-xr-xcore/modules/dhcpc-busybox/data/opt/openslx/scripts/udhcpc-openslx53
-rwxr-xr-xcore/modules/hardware-stats/data/opt/openslx/scripts/systemd-gather_hw_info6
-rwxr-xr-xcore/modules/hardware-stats/data/opt/openslx/scripts/systemd-hardware_report17
-rwxr-xr-xcore/modules/hardware-stats/data/opt/openslx/system-check/hooks.d/50-hardware-warnings2
-rwxr-xr-xcore/modules/idleaction/data/etc/X11/Xsession.d/95-xscreensaver4
-rw-r--r--core/modules/kernel-vanilla/module.build2
-rw-r--r--core/modules/kernel-vanilla/module.conf2
-rw-r--r--core/modules/kernel/module.build2
-rw-r--r--core/modules/kernel/module.conf.centos2
-rw-r--r--core/modules/kernel/module.conf.debian2
-rw-r--r--core/modules/kernel/module.conf.fedora2
-rw-r--r--core/modules/kernel/module.conf.opensuse2
-rw-r--r--core/modules/kernel/module.conf.ubuntu2
-rw-r--r--core/modules/kernel/module.conf.ubuntu.13.042
-rw-r--r--core/modules/kernel/module.conf.ubuntu.14.042
-rw-r--r--core/modules/kiosk-chromium/data/opt/openslx/scripts/kiosk-launch.d/00-chromium1
-rw-r--r--core/modules/lightdm-greeter-bwlp/data/etc/tmpfiles.d/cow-token.conf1
-rw-r--r--core/modules/lightdm-greeter-bwlp/module.conf2
-rwxr-xr-xcore/modules/ntfsfree/data/opt/openslx/scripts/thinpool-grow2
-rw-r--r--core/modules/pam-common-share/data/opt/openslx/scripts/pam_script_mount_common_share184
-rw-r--r--core/modules/pam-common-share/module.build12
-rw-r--r--core/modules/pam-common-share/module.conf7
l---------core/modules/pam-slx-plug/data/opt/openslx/scripts/pam_script_auth.d1
l---------core/modules/pam-slx-plug/data/opt/openslx/scripts/pam_script_ses_close.d1
l---------core/modules/pam-slx-plug/data/opt/openslx/scripts/pam_script_ses_open.d1
-rw-r--r--core/modules/pam/TODO1
l---------core/modules/pam/data/etc/pam-script/pam_script_auth1
l---------core/modules/pam/data/etc/pam-script/pam_script_ses_close1
l---------core/modules/pam/data/etc/pam-script/pam_script_ses_open1
-rw-r--r--core/modules/pam/data/etc/security/pam_env.conf73
-rwxr-xr-xcore/modules/pam/data/opt/openslx/scripts/pam_script_auth160
-rwxr-xr-xcore/modules/pam/data/opt/openslx/scripts/pam_script_ses_close27
-rwxr-xr-xcore/modules/pam/data/opt/openslx/scripts/pam_script_ses_open25
-rw-r--r--core/modules/pam/module.build14
-rw-r--r--core/modules/pam/module.conf4
-rw-r--r--core/modules/pam/module.conf.centos37
-rw-r--r--core/modules/pam/module.conf.debian1
-rw-r--r--core/modules/pam/module.conf.opensuse45
-rw-r--r--core/modules/pam/module.conf.ubuntu1
-rw-r--r--core/modules/pam/module.conf.ubuntu.1642
-rw-r--r--core/modules/pam/module.conf.ubuntu.1742
-rw-r--r--core/modules/pam/module.conf.ubuntu.1843
-rw-r--r--core/modules/printergui/data/opt/openslx/vmchooser/run-virt.d/setup_printer_lpd.inc1
-rw-r--r--core/modules/printergui/module.conf2
-rwxr-xr-xcore/modules/pvs2/data/opt/openslx/vmchooser/sessionstart.d/50-PVSclient4
-rw-r--r--core/modules/pvs2/module.conf3
-rw-r--r--core/modules/qemu/data/opt/openslx/vmchooser/plugins/qemukvm/run-virt.include5
-rw-r--r--core/modules/qemu/runvirt-plugin-qemu/pom.xml2
-rw-r--r--core/modules/qemu/runvirt-plugin-qemu/src/main/java/org/openslx/runvirt/plugin/qemu/App.java2
-rw-r--r--core/modules/qemu/runvirt-plugin-qemu/src/main/java/org/openslx/runvirt/plugin/qemu/cmdln/CommandLineArgs.java11
-rw-r--r--core/modules/rsyslogd/data/etc/rsyslog.conf84
-rw-r--r--core/modules/rsyslogd/module.build29
-rw-r--r--core/modules/rsyslogd/module.conf11
-rw-r--r--core/modules/rsyslogd/module.conf.centos4
-rw-r--r--core/modules/rsyslogd/module.conf.debian5
-rw-r--r--core/modules/rsyslogd/module.conf.fedora4
-rw-r--r--core/modules/rsyslogd/module.conf.opensuse7
-rw-r--r--core/modules/rsyslogd/module.conf.opensuse.13.210
-rw-r--r--core/modules/rsyslogd/module.conf.ubuntu5
-rwxr-xr-xcore/modules/run-virt/data/opt/openslx/scripts/vmchooser-xml_filter75
-rwxr-xr-xcore/modules/run-virt/data/opt/openslx/system-check/hooks.d/30-run-virt2
-rwxr-xr-xcore/modules/run-virt/data/opt/openslx/vmchooser/data/linux/includes/00_vars.inc7
-rw-r--r--core/modules/run-virt/data/opt/openslx/vmchooser/data/linux/includes/10_functions.inc50
-rwxr-xr-xcore/modules/run-virt/data/opt/openslx/vmchooser/data/openslx.exebin62976 -> 63488 bytes
-rw-r--r--core/modules/run-virt/data/opt/openslx/vmchooser/run-virt-includes/download_vm_metadata.inc5
-rw-r--r--core/modules/run-virt/data/opt/openslx/vmchooser/run-virt-includes/set_runvirt_hardware_variables.inc14
-rw-r--r--core/modules/run-virt/data/opt/openslx/vmchooser/run-virt-includes/setup_image_access.inc6
-rw-r--r--core/modules/run-virt/data/opt/openslx/vmchooser/run-virt-includes/vmchooser_runvirt_functions.inc29
-rw-r--r--core/modules/run-virt/data/opt/openslx/vmchooser/run-virt.d/setup_firewall.inc3
-rw-r--r--core/modules/run-virt/data/opt/openslx/vmchooser/run-virt.d/setup_network_shares.inc17
-rw-r--r--core/modules/run-virt/data/opt/openslx/vmchooser/run-virt.d/setup_sound.inc5
-rw-r--r--core/modules/run-virt/data/opt/openslx/vmchooser/run-virt.d/setup_virtual_floppy.inc8
-rwxr-xr-xcore/modules/run-virt/data/opt/openslx/vmchooser/vmchooser-run_virt28
-rw-r--r--core/modules/run-virt/winres/src/winres.c22
-rw-r--r--core/modules/samba/module.build12
-rw-r--r--core/modules/samba/module.conf25
-rw-r--r--core/modules/samba/module.conf.debian21
-rw-r--r--core/modules/samba/module.conf.opensuse25
-rw-r--r--core/modules/samba/module.conf.ubuntu21
-rw-r--r--core/modules/slxbrowser/module.conf2
-rw-r--r--core/modules/speedcheck/module.conf2
-rw-r--r--core/modules/systemd/README12
-rw-r--r--core/modules/systemd/TODO2
-rw-r--r--core/modules/systemd/data/etc/pam.d/systemd-user12
-rw-r--r--core/modules/systemd/data/etc/systemd/journald.conf41
-rw-r--r--core/modules/systemd/data/etc/systemd/logind.conf37
-rw-r--r--core/modules/systemd/data/etc/systemd/system.conf62
-rw-r--r--core/modules/systemd/data/etc/systemd/system/systemd-halt.service17
-rw-r--r--core/modules/systemd/data/etc/systemd/system/systemd-kexec.service19
-rw-r--r--core/modules/systemd/data/etc/systemd/system/systemd-poweroff.service17
-rw-r--r--core/modules/systemd/data/etc/systemd/system/systemd-reboot.service17
l---------core/modules/systemd/data/lib/systemd/system/autovt@.service1
-rw-r--r--core/modules/systemd/data/lib/systemd/system/basic.target14
-rw-r--r--core/modules/systemd/data/lib/systemd/system/bluetooth.target11
-rw-r--r--core/modules/systemd/data/lib/systemd/system/busnames.target10
l---------core/modules/systemd/data/lib/systemd/system/busnames.target.wants/org.freedesktop.login1.busname1
l---------core/modules/systemd/data/lib/systemd/system/busnames.target.wants/org.freedesktop.machine1.busname1
l---------core/modules/systemd/data/lib/systemd/system/busnames.target.wants/org.freedesktop.network1.busname1
l---------core/modules/systemd/data/lib/systemd/system/busnames.target.wants/org.freedesktop.resolve1.busname1
l---------core/modules/systemd/data/lib/systemd/system/busnames.target.wants/org.freedesktop.systemd1.busname1
-rw-r--r--core/modules/systemd/data/lib/systemd/system/console-getty.service33
-rw-r--r--core/modules/systemd/data/lib/systemd/system/console-shell.service32
l---------core/modules/systemd/data/lib/systemd/system/ctrl-alt-del.target1
l---------core/modules/systemd/data/lib/systemd/system/dbus-org.freedesktop.login1.service1
l---------core/modules/systemd/data/lib/systemd/system/dbus-org.freedesktop.machine1.service1
-rw-r--r--core/modules/systemd/data/lib/systemd/system/debug-shell.service33
l---------core/modules/systemd/data/lib/systemd/system/default.target1
-rw-r--r--core/modules/systemd/data/lib/systemd/system/dev-hugepages.mount21
-rw-r--r--core/modules/systemd/data/lib/systemd/system/dev-mqueue.mount20
-rw-r--r--core/modules/systemd/data/lib/systemd/system/emergency.service27
-rw-r--r--core/modules/systemd/data/lib/systemd/system/emergency.target13
-rw-r--r--core/modules/systemd/data/lib/systemd/system/exit.target17
-rw-r--r--core/modules/systemd/data/lib/systemd/system/final.target13
-rw-r--r--core/modules/systemd/data/lib/systemd/system/getty.target11
-rw-r--r--core/modules/systemd/data/lib/systemd/system/getty@.service50
-rw-r--r--core/modules/systemd/data/lib/systemd/system/graphical.target15
-rw-r--r--core/modules/systemd/data/lib/systemd/system/halt-local.service20
-rw-r--r--core/modules/systemd/data/lib/systemd/system/halt.target17
-rw-r--r--core/modules/systemd/data/lib/systemd/system/hibernate.target13
-rw-r--r--core/modules/systemd/data/lib/systemd/system/hybrid-sleep.target13
-rw-r--r--core/modules/systemd/data/lib/systemd/system/kexec.target17
-rw-r--r--core/modules/systemd/data/lib/systemd/system/kmod-static-nodes.service18
-rw-r--r--core/modules/systemd/data/lib/systemd/system/machine.slice11
-rw-r--r--core/modules/systemd/data/lib/systemd/system/machines.target17
l---------core/modules/systemd/data/lib/systemd/system/machines.target.wants/var-lib-machines.mount1
-rw-r--r--core/modules/systemd/data/lib/systemd/system/multi-user.target17
l---------core/modules/systemd/data/lib/systemd/system/multi-user.target.wants/getty.target1
l---------core/modules/systemd/data/lib/systemd/system/multi-user.target.wants/systemd-logind.service1
l---------core/modules/systemd/data/lib/systemd/system/multi-user.target.wants/systemd-user-sessions.service1
-rw-r--r--core/modules/systemd/data/lib/systemd/system/network-online.target12
-rw-r--r--core/modules/systemd/data/lib/systemd/system/network-pre.target12
-rw-r--r--core/modules/systemd/data/lib/systemd/system/network.target14
-rw-r--r--core/modules/systemd/data/lib/systemd/system/org.freedesktop.login1.busname16
-rw-r--r--core/modules/systemd/data/lib/systemd/system/org.freedesktop.machine1.busname15
-rw-r--r--core/modules/systemd/data/lib/systemd/system/org.freedesktop.network1.busname20
-rw-r--r--core/modules/systemd/data/lib/systemd/system/org.freedesktop.resolve1.busname21
-rw-r--r--core/modules/systemd/data/lib/systemd/system/org.freedesktop.systemd1.busname15
-rw-r--r--core/modules/systemd/data/lib/systemd/system/paths.target10
-rw-r--r--core/modules/systemd/data/lib/systemd/system/poweroff.target19
-rw-r--r--core/modules/systemd/data/lib/systemd/system/printer.target11
-rw-r--r--core/modules/systemd/data/lib/systemd/system/proc-sys-fs-binfmt_misc.automount18
-rw-r--r--core/modules/systemd/data/lib/systemd/system/proc-sys-fs-binfmt_misc.mount17
-rw-r--r--core/modules/systemd/data/lib/systemd/system/rc-local.service20
-rw-r--r--core/modules/systemd/data/lib/systemd/system/reboot.target19
-rw-r--r--core/modules/systemd/data/lib/systemd/system/remote-fs-pre.target11
-rw-r--r--core/modules/systemd/data/lib/systemd/system/remote-fs.target16
l---------core/modules/systemd/data/lib/systemd/system/remote-fs.target.wants/var-lib-machines.mount1
-rw-r--r--core/modules/systemd/data/lib/systemd/system/serial-getty@.service44
-rw-r--r--core/modules/systemd/data/lib/systemd/system/shutdown.target12
-rw-r--r--core/modules/systemd/data/lib/systemd/system/sigpwr.target10
-rw-r--r--core/modules/systemd/data/lib/systemd/system/sleep.target13
-rw-r--r--core/modules/systemd/data/lib/systemd/system/slices.target12
-rw-r--r--core/modules/systemd/data/lib/systemd/system/smartcard.target11
-rw-r--r--core/modules/systemd/data/lib/systemd/system/sockets.target10
l---------core/modules/systemd/data/lib/systemd/system/sockets.target.wants/systemd-journald-dev-log.socket1
l---------core/modules/systemd/data/lib/systemd/system/sockets.target.wants/systemd-journald.socket1
l---------core/modules/systemd/data/lib/systemd/system/sockets.target.wants/systemd-shutdownd.socket1
l---------core/modules/systemd/data/lib/systemd/system/sockets.target.wants/systemd-udevd-control.socket1
l---------core/modules/systemd/data/lib/systemd/system/sockets.target.wants/systemd-udevd-kernel.socket1
-rw-r--r--core/modules/systemd/data/lib/systemd/system/sound.target11
-rw-r--r--core/modules/systemd/data/lib/systemd/system/suspend.target13
-rw-r--r--core/modules/systemd/data/lib/systemd/system/swap.target10
-rw-r--r--core/modules/systemd/data/lib/systemd/system/sys-fs-fuse-connections.mount22
-rw-r--r--core/modules/systemd/data/lib/systemd/system/sys-kernel-config.mount21
-rw-r--r--core/modules/systemd/data/lib/systemd/system/sysinit.target13
l---------core/modules/systemd/data/lib/systemd/system/sysinit.target.wants/dev-hugepages.mount1
l---------core/modules/systemd/data/lib/systemd/system/sysinit.target.wants/dev-mqueue.mount1
l---------core/modules/systemd/data/lib/systemd/system/sysinit.target.wants/proc-sys-fs-binfmt_misc.automount1
l---------core/modules/systemd/data/lib/systemd/system/sysinit.target.wants/sys-fs-fuse-connections.mount1
l---------core/modules/systemd/data/lib/systemd/system/sysinit.target.wants/sys-kernel-config.mount1
l---------core/modules/systemd/data/lib/systemd/system/sysinit.target.wants/systemd-binfmt.service1
l---------core/modules/systemd/data/lib/systemd/system/sysinit.target.wants/systemd-journald.service1
l---------core/modules/systemd/data/lib/systemd/system/sysinit.target.wants/systemd-modules-load.service1
l---------core/modules/systemd/data/lib/systemd/system/sysinit.target.wants/systemd-sysctl.service1
l---------core/modules/systemd/data/lib/systemd/system/sysinit.target.wants/systemd-tmpfiles-setup-dev.service1
l---------core/modules/systemd/data/lib/systemd/system/sysinit.target.wants/systemd-tmpfiles-setup.service1
l---------core/modules/systemd/data/lib/systemd/system/sysinit.target.wants/systemd-udev-trigger.service1
l---------core/modules/systemd/data/lib/systemd/system/sysinit.target.wants/systemd-udevd.service1
l---------core/modules/systemd/data/lib/systemd/system/sysinit.target.wants/systemd-vconsole-setup.service1
-rw-r--r--core/modules/systemd/data/lib/systemd/system/syslog.socket40
-rw-r--r--core/modules/systemd/data/lib/systemd/system/system-update.target17
-rw-r--r--core/modules/systemd/data/lib/systemd/system/system.slice14
-rw-r--r--core/modules/systemd/data/lib/systemd/system/systemd-binfmt.service27
-rw-r--r--core/modules/systemd/data/lib/systemd/system/systemd-exit.service17
-rw-r--r--core/modules/systemd/data/lib/systemd/system/systemd-halt.service17
-rw-r--r--core/modules/systemd/data/lib/systemd/system/systemd-hibernate.service17
-rw-r--r--core/modules/systemd/data/lib/systemd/system/systemd-hybrid-sleep.service17
-rw-r--r--core/modules/systemd/data/lib/systemd/system/systemd-initctl.service16
-rw-r--r--core/modules/systemd/data/lib/systemd/system/systemd-initctl.socket17
-rw-r--r--core/modules/systemd/data/lib/systemd/system/systemd-journal-flush.service22
-rw-r--r--core/modules/systemd/data/lib/systemd/system/systemd-journald-dev-log.socket32
-rw-r--r--core/modules/systemd/data/lib/systemd/system/systemd-journald.service37
-rw-r--r--core/modules/systemd/data/lib/systemd/system/systemd-journald.socket26
-rw-r--r--core/modules/systemd/data/lib/systemd/system/systemd-kexec.service19
-rw-r--r--core/modules/systemd/data/lib/systemd/system/systemd-logind.service38
-rw-r--r--core/modules/systemd/data/lib/systemd/system/systemd-machine-id-commit.service22
-rw-r--r--core/modules/systemd/data/lib/systemd/system/systemd-machined.service29
-rw-r--r--core/modules/systemd/data/lib/systemd/system/systemd-modules-load.service27
-rw-r--r--core/modules/systemd/data/lib/systemd/system/systemd-nspawn@.service37
-rw-r--r--core/modules/systemd/data/lib/systemd/system/systemd-poweroff.service17
-rw-r--r--core/modules/systemd/data/lib/systemd/system/systemd-reboot.service17
-rw-r--r--core/modules/systemd/data/lib/systemd/system/systemd-remount-fs.service22
-rw-r--r--core/modules/systemd/data/lib/systemd/system/systemd-suspend.service17
-rw-r--r--core/modules/systemd/data/lib/systemd/system/systemd-sysctl.service21
-rw-r--r--core/modules/systemd/data/lib/systemd/system/systemd-sysusers.service21
-rw-r--r--core/modules/systemd/data/lib/systemd/system/systemd-tmpfiles-setup-dev.service20
-rw-r--r--core/modules/systemd/data/lib/systemd/system/systemd-tmpfiles-setup.service20
-rw-r--r--core/modules/systemd/data/lib/systemd/system/systemd-udev-settle.service25
-rw-r--r--core/modules/systemd/data/lib/systemd/system/systemd-udev-trigger.service20
-rw-r--r--core/modules/systemd/data/lib/systemd/system/systemd-udevd-control.socket20
-rw-r--r--core/modules/systemd/data/lib/systemd/system/systemd-udevd-kernel.socket19
-rw-r--r--core/modules/systemd/data/lib/systemd/system/systemd-udevd.service31
-rw-r--r--core/modules/systemd/data/lib/systemd/system/systemd-update-utmp-runlevel.service21
-rw-r--r--core/modules/systemd/data/lib/systemd/system/systemd-update-utmp.service21
-rw-r--r--core/modules/systemd/data/lib/systemd/system/systemd-user-sessions.service17
-rw-r--r--core/modules/systemd/data/lib/systemd/system/systemd-vconsole-setup.service20
-rw-r--r--core/modules/systemd/data/lib/systemd/system/systemd-volatile-root.service21
-rw-r--r--core/modules/systemd/data/lib/systemd/system/time-sync.target11
-rw-r--r--core/modules/systemd/data/lib/systemd/system/timers.target13
l---------core/modules/systemd/data/lib/systemd/system/timers.target.wants/systemd-tmpfiles-clean.timer1
-rw-r--r--core/modules/systemd/data/lib/systemd/system/user.slice11
-rw-r--r--core/modules/systemd/data/lib/systemd/system/user@.service21
-rw-r--r--core/modules/systemd/data/lib/udev/rules.d/70-uaccess-floppy.rules8
-rw-r--r--core/modules/systemd/data/lib/udev/rules.d/99-systemd.rules55
-rwxr-xr-xcore/modules/systemd/data/opt/openslx/scripts/tty-init23
l---------core/modules/systemd/data/sbin/halt1
l---------core/modules/systemd/data/sbin/init1
l---------core/modules/systemd/data/sbin/poweroff1
l---------core/modules/systemd/data/sbin/reboot1
l---------core/modules/systemd/data/sbin/runlevel1
l---------core/modules/systemd/data/sbin/shutdown1
l---------core/modules/systemd/data/sbin/telinit1
-rw-r--r--core/modules/systemd/module.build104
-rw-r--r--core/modules/systemd/module.conf63
-rw-r--r--core/modules/systemd/module.conf.centos12
-rw-r--r--core/modules/systemd/module.conf.debian15
-rw-r--r--core/modules/systemd/module.conf.fedora12
-rw-r--r--core/modules/systemd/module.conf.opensuse11
-rw-r--r--core/modules/systemd/module.conf.ubuntu15
-rw-r--r--core/modules/systemd/systemd-204-mtd_probe.patch10
-rw-r--r--core/modules/systemd/systemd-openslx-229.patch13
-rw-r--r--core/modules/systemd/systemd-openslx-234.patch13
-rw-r--r--core/modules/systemd/systemd-openslx.patch26
-rwxr-xr-xcore/modules/vbox-src/data/opt/openslx/vmchooser/plugins/virtualbox/includes/finalize_machine_config.inc2
-rwxr-xr-xcore/modules/vbox-src/data/opt/openslx/vmchooser/plugins/virtualbox/run-virt.include7
-rwxr-xr-xcore/modules/vmchooser2/data/opt/openslx/bin/vmchooser7
-rwxr-xr-xcore/modules/vmchooser2/data/opt/openslx/pam/hooks/session-open.d/50-move-admintoken.sh20
-rw-r--r--core/modules/vmchooser2/module.build12
-rw-r--r--core/modules/vmchooser2/module.conf2
-rw-r--r--core/modules/vmware-common/data/opt/openslx/vmchooser/plugins/vmware/includes/write_final_vmx.inc6
-rw-r--r--core/modules/vmware-common/data/opt/openslx/vmchooser/plugins/vmware/run-virt.include10
-rw-r--r--core/modules/vmware17/module.build30
-rw-r--r--core/modules/xorg/module.build2
-rw-r--r--core/modules/xscreensaver/module.conf4
-rw-r--r--core/rootfs/rootfs-stage31/data/inc/parse_kcl4
-rw-r--r--core/rootfs/rootfs-stage31/data/inc/setup_stage324
l---------core/targets/bwlp/cowgui1
l---------core/targets/stage32-headless/rsyslogd1
l---------core/targets/stage32/rsyslogd1
-rwxr-xr-xmltk1
-rw-r--r--slx-vars/SLX_ADDONS2
-rw-r--r--slx-vars/SLX_BIOS_CLOCK4
-rw-r--r--slx-vars/SLX_CRON_MAIL1
-rw-r--r--slx-vars/SLX_DNBD3_EXTRA4
-rw-r--r--slx-vars/SLX_DNBD3_WHITELIST2
-rw-r--r--slx-vars/SLX_EXAM_START2
-rw-r--r--slx-vars/SLX_NO_CONFIG_TGZ1
-rw-r--r--slx-vars/SLX_REMOTE_SSL1
273 files changed, 330 insertions, 3741 deletions
diff --git a/core/modules/beamergui/module.conf b/core/modules/beamergui/module.conf
index baf892c2..699b075c 100644
--- a/core/modules/beamergui/module.conf
+++ b/core/modules/beamergui/module.conf
@@ -3,7 +3,7 @@ REQUIRED_MODULES="
parse-edid
qt5core
"
-REQUIRED_GIT="git://git.openslx.org/openslx-ng/beamergui.git|2.0"
+REQUIRED_GIT="https://git.openslx.org/openslx-ng/beamergui.git|2.0"
REQUIRED_BINARIES="
beamergui
"
diff --git a/core/modules/busybox/module.conf b/core/modules/busybox/module.conf
index f9072efe..e3034d22 100644
--- a/core/modules/busybox/module.conf
+++ b/core/modules/busybox/module.conf
@@ -1,5 +1,5 @@
#!/bin/bash
-REQUIRED_GIT="git://git.busybox.net/busybox||1_31_1"
+REQUIRED_GIT="https://git.busybox.net/busybox||1_36_1"
REQUIRED_BINARIES="busybox"
REQUIRED_DIRECTORIES="
/
diff --git a/core/modules/busybox/openslx-busybox-config b/core/modules/busybox/openslx-busybox-config
index c6a2b8a6..ba565355 100644
--- a/core/modules/busybox/openslx-busybox-config
+++ b/core/modules/busybox/openslx-busybox-config
@@ -936,7 +936,7 @@ CONFIG_FEATURE_IP_LINK=y
CONFIG_FEATURE_IP_ROUTE=y
CONFIG_FEATURE_IP_ROUTE_DIR="/etc/iproute2"
CONFIG_FEATURE_IP_TUNNEL=y
-# CONFIG_FEATURE_IP_RULE is not set
+CONFIG_FEATURE_IP_RULE=y
CONFIG_FEATURE_IP_NEIGH=y
# CONFIG_FEATURE_IP_RARE_PROTOCOLS is not set
CONFIG_IPCALC=y
diff --git a/core/modules/cowgui/module.build b/core/modules/cowgui/module.build
new file mode 100644
index 00000000..05730c02
--- /dev/null
+++ b/core/modules/cowgui/module.build
@@ -0,0 +1,22 @@
+#!/bin/bash
+
+fetch_source() {
+ autoclone
+}
+
+build() {
+ local SRCDIR="${MODULE_WORK_DIR}/src/cowgui"
+
+ mkdir -p "${MODULE_BUILD_DIR}/${REQUIRED_PREFIX}"
+ cde "${MODULE_BUILD_DIR}/${REQUIRED_PREFIX}"
+
+ pinfo "Running cmake"
+
+ cmake "$SRCDIR" || perror "'cmake $SRCDIR' failed."
+ make || perror "'make' failed."
+}
+
+post_copy() {
+ :
+}
+
diff --git a/core/modules/cowgui/module.conf b/core/modules/cowgui/module.conf
new file mode 100644
index 00000000..92eb4b9f
--- /dev/null
+++ b/core/modules/cowgui/module.conf
@@ -0,0 +1,9 @@
+#!/bin/bash
+REQUIRED_MODULES="
+ qt5core
+"
+REQUIRED_GIT="https://git.openslx.org/openslx-ng/cowgui.git"
+REQUIRED_PREFIX="/opt/openslx/bin"
+REQUIRED_BINARIES="cowgui"
+REQUIRED_LIBRARIES="
+"
diff --git a/core/modules/dhcpc-busybox/data/opt/openslx/scripts/udhcpc-openslx b/core/modules/dhcpc-busybox/data/opt/openslx/scripts/udhcpc-openslx
index 05a08b8f..d6575aa9 100755
--- a/core/modules/dhcpc-busybox/data/opt/openslx/scripts/udhcpc-openslx
+++ b/core/modules/dhcpc-busybox/data/opt/openslx/scripts/udhcpc-openslx
@@ -122,14 +122,52 @@ case "$1" in
bound|renew)
check_env "$1"
mkdir -p "/run/dhcpc"
+ if [ "$interface" != "$primary" ]; then
+ echo 1 > /proc/sys/net/ipv4/conf/all/arp_filter
+ echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore
+ fi
# Set address on interface
- ip addr add "$ip/$( ipcalc -s -p "$ip" "$subnet" | sed 's/.*=//' )" dev "$interface"
- # Set default route, if given
- if [ -n "$router" ]; then
- # Only replace route if it's the same interface as the current default route, or we don't have any
- current="$( ip route show | awk '{ if ($1 == "default") {print $5; exit 0}}' )"
- if [ -z "$current" ] || [ "$interface" = "$current" ]; then
- ip route replace default via "$router"
+ alt_table= # Use separate routing table?
+ if [ "$interface" != "$primary" ]; then
+ pri_net="$( ip addr show dev "${primary}" | awk '$1 == "inet" {print $2; exit}' )"
+ pri_net="$( ipcalc -s -n "$pri_net" | sed 's/^.*=//' )"
+ this_net="$( ipcalc -s -n "$ip" "$subnet" | sed 's/^.*=//' )"
+ [ "$pri_net" = "$this_net" ] && alt_table=yes
+ fi
+ if [ -z "$alt_table" ]; then
+ # default table
+ ip addr add "$ip/$( ipcalc -s -p "$ip" "$subnet" | sed 's/^.*=//' )" dev "$interface"
+ # Set default route, if given
+ if [ -n "$router" ]; then
+ # Only replace route if it's the same interface as the current default route, or we don't have any
+ current="$( ip route show | awk '{ if ($1 == "default") {print $5; exit 0}}' )"
+ if [ -z "$current" ] || [ "$interface" = "$current" ]; then
+ ip route replace default via "$router"
+ fi
+ fi
+ else
+ # alt table - determine which one
+ mkdir -p /etc/iproute2
+ touch /etc/iproute2/rt_tables
+ alt_table="$( awk -v "iface=$interface" \
+ '$1 ~ /^[0-9]+$/ && $2 == iface {print $1; exit}' \
+ /etc/iproute2/rt_tables )"
+ if [ -z "$alt_table" ]; then
+ alt_table="$( awk '$1 ~ /^[0-9]+$/ { a[$1] = 1 }
+ END {
+ for (i = 0; i < 255; ++i) {
+ if (!a[i]) { print i; exit }
+ }
+ print 1
+ }' /etc/iproute2/rt_tables )"
+ echo "$alt_table $interface" >> /etc/iproute2/rt_tables
+ fi
+ ip addr add "$ip/$( ipcalc -s -p "$ip" "$subnet" | sed 's/.*=//' )" dev "$interface" noprefixroute
+ ip route add "$this_net" dev "$interface" scope link src "$ip" table "$interface"
+ ip rule add from "$ip" table "$interface"
+ # Set default route, if given
+ if [ -n "$router" ]; then
+ ip route replace default via "$router" table "$interface"
fi
fi
@@ -294,6 +332,7 @@ case "$1" in
echo 1 > "/proc/sys/net/ipv4/conf/$interface/promote_secondaries"
clientip=${ip%%:*}
ip addr del "$clientip/$(ipcalc -s -p "$clientip" "$subnet" | sed s/.*=//)" dev "$interface"
+ ip route flush table "$interface"
sed -i "/^$(escape_search "$ip")(\s|$)/d" /etc/hosts
fi
diff --git a/core/modules/hardware-stats/data/opt/openslx/scripts/systemd-gather_hw_info b/core/modules/hardware-stats/data/opt/openslx/scripts/systemd-gather_hw_info
index ae35b33a..545cb4bc 100755
--- a/core/modules/hardware-stats/data/opt/openslx/scripts/systemd-gather_hw_info
+++ b/core/modules/hardware-stats/data/opt/openslx/scripts/systemd-gather_hw_info
@@ -9,8 +9,8 @@
export LANG=C.UTF-8
export LC_ALL=C.UTF-8
-declare -rg REPORTFILE="/run/hwreport"
-declare -rg jsonfile="/run/hwreport.json"
+declare -rg REPORTFILE="/run/openslx/hwreport"
+declare -rg jsonfile="/run/openslx/hwreport.json"
# new json-based reporting, run first in background and wait at the end of script
# This is only supported by Sat3.11, released 12-2023, so keep creating the old format
@@ -292,7 +292,7 @@ echo "Created report file"
################################################################################
# Save information to local file for later use
#
-cat > "/run/hwinfo" <<HORST
+cat > "/run/openslx/hwinfo" <<HORST
HW_KVM='${VT}'
HW_ID44='${ID44}'
HW_MAC='${MAC}'
diff --git a/core/modules/hardware-stats/data/opt/openslx/scripts/systemd-hardware_report b/core/modules/hardware-stats/data/opt/openslx/scripts/systemd-hardware_report
index 64d0f090..bf1fe6ee 100755
--- a/core/modules/hardware-stats/data/opt/openslx/scripts/systemd-hardware_report
+++ b/core/modules/hardware-stats/data/opt/openslx/scripts/systemd-hardware_report
@@ -8,23 +8,21 @@ disable_remote_logging() {
}
# sends the hardware information of this machine generated by
-# systemd-hardware_stats_gather in /run/hwreport and /run/hwinfo
+# systemd-hardware_stats_gather in /run/openslx/hwreport and /run/openslx/hwinfo
report_hardware_info() {
local uptime hwreport hwinfo uuid model subnet ret runmode jsonfile
if [ -z "$SLX_REMOTE_LOG" ]; then
disable_remote_logging
return 1
fi
- hwreport="/run/hwreport"
- jsonfile="/run/hwreport.json"
+ hwreport="/run/openslx/hwreport"
+ jsonfile="/run/openslx/hwreport.json"
if ! [ -s "$hwreport" ] && ! [ -s "$jsonfile" ]; then
echo "Missing hwreport file: $hwreport AND $jsonfile"
- # TODO send data without?
- return 1
fi
# Read generated data and current uptime and send it
- hwinfo="/run/hwinfo"
+ hwinfo="/run/openslx/hwinfo"
if [ ! -s "$hwinfo" ]; then
echo "Missing hwinfo file: $hwinfo"
return 1
@@ -80,8 +78,8 @@ report_hardware_info() {
fi
echo "succeeded."
rm -f -- "$hwreport" "$jsonfile"
- START=$(( $RANDOM % 5 ))
- DELAY=$(( $RANDOM % 20 ))
+ START=$(( RANDOM % 5 ))
+ DELAY=$(( RANDOM % 20 ))
# Do not move/rename this file, we check its existence in other scripts
cat > "/etc/cron.d/usage_stats" <<-EOF
# Update usage statistics on server
@@ -90,9 +88,6 @@ report_hardware_info() {
${START}-59/5 * * * * root sleep ${DELAY}; /opt/openslx/scripts/cron-system_usage_update --full
EOF
- # TODO remove this hack one day: Sometimes, aufs doesn't update the mtime of dirs
- # when creating files, so cron would not rescan the cron directory.
- touch "/etc/cron.d"
# Trigger right now so resource usage gets updated
/opt/openslx/scripts/cron-system_usage_update --full
return 0
diff --git a/core/modules/hardware-stats/data/opt/openslx/system-check/hooks.d/50-hardware-warnings b/core/modules/hardware-stats/data/opt/openslx/system-check/hooks.d/50-hardware-warnings
index 3e8f8210..627b94fd 100755
--- a/core/modules/hardware-stats/data/opt/openslx/system-check/hooks.d/50-hardware-warnings
+++ b/core/modules/hardware-stats/data/opt/openslx/system-check/hooks.d/50-hardware-warnings
@@ -3,7 +3,7 @@
# If a first parameter is given, we write to that file instead of stdout.
. /opt/openslx/config
-. /run/hwinfo
+. /run/openslx/hwinfo
if [ -n "$1" ]; then
exec >> "$1"
diff --git a/core/modules/idleaction/data/etc/X11/Xsession.d/95-xscreensaver b/core/modules/idleaction/data/etc/X11/Xsession.d/95-xscreensaver
index 86a9995a..baef2a2a 100755
--- a/core/modules/idleaction/data/etc/X11/Xsession.d/95-xscreensaver
+++ b/core/modules/idleaction/data/etc/X11/Xsession.d/95-xscreensaver
@@ -18,8 +18,8 @@ if command -v xscreensaver; then
SBY="${SLX_SCREEN_STANDBY_TIMEOUT}"
SVR="${SLX_SCREEN_SAVER_TIMEOUT}"
if [ -n "${SLX_REMOTE_VNC}" ]; then
- # TODO Remove after 2021-07-01, variables should be set by slx-admin
- SVR=0
+ AUTOLOCK=False
+ NEVER_LOCK=True
fi
if [ -n "${SLX_EXAM}" ]; then
SLX_SCREEN_SAVER_GRACE_TIME=
diff --git a/core/modules/kernel-vanilla/module.build b/core/modules/kernel-vanilla/module.build
index ec40e649..dfbf3edb 100644
--- a/core/modules/kernel-vanilla/module.build
+++ b/core/modules/kernel-vanilla/module.build
@@ -229,7 +229,7 @@ patch_aufs() {
[ -d "${AUFS}-standalone/.git" ] && rm -rf "${AUFS}-standalone" # if already there, kill it.
# git: --depth 1 won't work here due to later "checkout origin/branch"
if [ "$KERNEL_MAJOR" = "3" ]; then
- git clone "git://aufs.git.sourceforge.net/gitroot/aufs/${AUFS}-standalone.git" || perror "Cloning ${AUFS} failed."
+ git clone "https://aufs.git.sourceforge.net/gitroot/aufs/${AUFS}-standalone.git" || perror "Cloning ${AUFS} failed."
else
git clone "https://github.com/sfjro/${AUFS}-standalone.git" || perror "Cloning ${AUFS} failed."
#git clone "https://github.com/bnied/${AUFS}-standalone.git" || perror "Cloning ${AUFS} failed."
diff --git a/core/modules/kernel-vanilla/module.conf b/core/modules/kernel-vanilla/module.conf
index 35ad746a..51d1802a 100644
--- a/core/modules/kernel-vanilla/module.conf
+++ b/core/modules/kernel-vanilla/module.conf
@@ -6,4 +6,4 @@ REQUIRED_DIRECTORIES="
/usr/bin
"
REQUIRED_KERNEL="${CONFIG_KERNEL_VERSION:-"5.15.81"}"
-REQUIRED_GIT="git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git"
+REQUIRED_GIT="https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git"
diff --git a/core/modules/kernel/module.build b/core/modules/kernel/module.build
index 6df7464f..2f270476 100644
--- a/core/modules/kernel/module.build
+++ b/core/modules/kernel/module.build
@@ -118,7 +118,7 @@ patch_aufs() {
cd "$MODULE_WORK_DIR"
[ -d "aufs3-standalone/.git" ] && rm -rf "aufs3-standalone" # if already there, kill it.
# git: --depth 1 won't work here due to later "checkout origin/branch"
- git clone "git://aufs.git.sourceforge.net/gitroot/aufs/aufs3-standalone.git" || perror "Cloning aufs3 failed."
+ git clone "https://aufs.git.sourceforge.net/gitroot/aufs/aufs3-standalone.git" || perror "Cloning aufs3 failed."
# get the needed version
[ ! -z ${SYSTEM_KERNEL_LONG} ] && local NEEDED_BRANCH=$(echo $SYSTEM_KERNEL_LONG | awk -F "." '{print $1"."$2}') \
|| perror "SYSTEM_KERNEL_LONG not set, this should not happen!"
diff --git a/core/modules/kernel/module.conf.centos b/core/modules/kernel/module.conf.centos
index e8d7c344..0896c527 100644
--- a/core/modules/kernel/module.conf.centos
+++ b/core/modules/kernel/module.conf.centos
@@ -1,4 +1,4 @@
#!/bin/bash
REQUIRED_GIT_BRANCH="v${SYSTEM_KERNEL_SHORT%.0}"
-REQUIRED_GIT="git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git"
+REQUIRED_GIT="https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git"
diff --git a/core/modules/kernel/module.conf.debian b/core/modules/kernel/module.conf.debian
index a35fbce1..94199074 100644
--- a/core/modules/kernel/module.conf.debian
+++ b/core/modules/kernel/module.conf.debian
@@ -1,3 +1,3 @@
#!/bin/bash
REQUIRED_GIT_BRANCH="master"
-REQUIRED_GIT="git://kernel.ubuntu.com/ubuntu/ubuntu-${SYS_CODENAME}.git"
+REQUIRED_GIT="https://kernel.ubuntu.com/ubuntu/ubuntu-${SYS_CODENAME}.git"
diff --git a/core/modules/kernel/module.conf.fedora b/core/modules/kernel/module.conf.fedora
index 66391bbe..5552830c 100644
--- a/core/modules/kernel/module.conf.fedora
+++ b/core/modules/kernel/module.conf.fedora
@@ -1,4 +1,4 @@
#!/bin/bash
REQUIRED_GIT_BRANCH="v${SYSTEM_KERNEL_SHORT}"
-REQUIRED_GIT="git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git"
+REQUIRED_GIT="https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git"
diff --git a/core/modules/kernel/module.conf.opensuse b/core/modules/kernel/module.conf.opensuse
index 38518d0d..1afad75e 100644
--- a/core/modules/kernel/module.conf.opensuse
+++ b/core/modules/kernel/module.conf.opensuse
@@ -1,4 +1,4 @@
#!/bin/bash
REQUIRED_GIT_BRANCH="openSUSE-${SYS_VERSION}"
-REQUIRED_GIT="git://kernel.opensuse.org/kernel.git"
+REQUIRED_GIT="https://kernel.opensuse.org/kernel.git"
diff --git a/core/modules/kernel/module.conf.ubuntu b/core/modules/kernel/module.conf.ubuntu
index a35fbce1..94199074 100644
--- a/core/modules/kernel/module.conf.ubuntu
+++ b/core/modules/kernel/module.conf.ubuntu
@@ -1,3 +1,3 @@
#!/bin/bash
REQUIRED_GIT_BRANCH="master"
-REQUIRED_GIT="git://kernel.ubuntu.com/ubuntu/ubuntu-${SYS_CODENAME}.git"
+REQUIRED_GIT="https://kernel.ubuntu.com/ubuntu/ubuntu-${SYS_CODENAME}.git"
diff --git a/core/modules/kernel/module.conf.ubuntu.13.04 b/core/modules/kernel/module.conf.ubuntu.13.04
index cce71339..2ce3584d 100644
--- a/core/modules/kernel/module.conf.ubuntu.13.04
+++ b/core/modules/kernel/module.conf.ubuntu.13.04
@@ -1,3 +1,3 @@
#!/bin/bash
REQUIRED_GIT_BRANCH="-b master"
-REQUIRED_GIT="git://kernel.ubuntu.com/ubuntu-archive/ubuntu-${SYS_CODENAME}.git $REQUIRED_GIT_BRANCH"
+REQUIRED_GIT="https://kernel.ubuntu.com/ubuntu-archive/ubuntu-${SYS_CODENAME}.git $REQUIRED_GIT_BRANCH"
diff --git a/core/modules/kernel/module.conf.ubuntu.14.04 b/core/modules/kernel/module.conf.ubuntu.14.04
index 85a1b0f8..c9b55019 100644
--- a/core/modules/kernel/module.conf.ubuntu.14.04
+++ b/core/modules/kernel/module.conf.ubuntu.14.04
@@ -1,3 +1,3 @@
#!/bin/bash
REQUIRED_GIT_BRANCH="lts-backport-vivid"
-REQUIRED_GIT="git://kernel.ubuntu.com/ubuntu/ubuntu-${SYS_CODENAME}.git"
+REQUIRED_GIT="https://kernel.ubuntu.com/ubuntu/ubuntu-${SYS_CODENAME}.git"
diff --git a/core/modules/kiosk-chromium/data/opt/openslx/scripts/kiosk-launch.d/00-chromium b/core/modules/kiosk-chromium/data/opt/openslx/scripts/kiosk-launch.d/00-chromium
index 4f5ba84e..e8c60fb4 100644
--- a/core/modules/kiosk-chromium/data/opt/openslx/scripts/kiosk-launch.d/00-chromium
+++ b/core/modules/kiosk-chromium/data/opt/openslx/scripts/kiosk-launch.d/00-chromium
@@ -66,7 +66,6 @@ EOF
chromium_args=("--noerrdialogs" "--disable-translate" "--disable-new-avatar-menu" "--disable-infobars" "--test-type" "--fast" "--fast-start")
# simulate a future build date to remove those update notification
-# TODO properly disable auto update feature when chromium supports it
chromium_args+=("--simulate-outdated-no-au=\"Tue, 31 Dec 2099 23:59:59 GMT\"")
# default to maximized on startup
diff --git a/core/modules/lightdm-greeter-bwlp/data/etc/tmpfiles.d/cow-token.conf b/core/modules/lightdm-greeter-bwlp/data/etc/tmpfiles.d/cow-token.conf
new file mode 100644
index 00000000..c6a0a98c
--- /dev/null
+++ b/core/modules/lightdm-greeter-bwlp/data/etc/tmpfiles.d/cow-token.conf
@@ -0,0 +1 @@
+d /run/openslx/lightdm 0700 lightdm lightdm
diff --git a/core/modules/lightdm-greeter-bwlp/module.conf b/core/modules/lightdm-greeter-bwlp/module.conf
index 7ceb0bc7..d9b20e88 100644
--- a/core/modules/lightdm-greeter-bwlp/module.conf
+++ b/core/modules/lightdm-greeter-bwlp/module.conf
@@ -2,7 +2,7 @@ REQUIRED_MODULEs="
lightdm
qt5core
"
-REQUIRED_GIT="git://git.openslx.org/openslx-ng/slxgreeter"
+REQUIRED_GIT="https://git.openslx.org/openslx-ng/slxgreeter.git"
REQUIRED_BINARIES="
qt-lightdm-greeter
"
diff --git a/core/modules/ntfsfree/data/opt/openslx/scripts/thinpool-grow b/core/modules/ntfsfree/data/opt/openslx/scripts/thinpool-grow
index 3dfe5758..a3fe1476 100755
--- a/core/modules/ntfsfree/data/opt/openslx/scripts/thinpool-grow
+++ b/core/modules/ntfsfree/data/opt/openslx/scripts/thinpool-grow
@@ -256,8 +256,6 @@ do_resize() {
fi
if ! dmsetup table "$DEV" > "$new_table" || ! [ -s "$new_table" ]; then
debug "Underlying data device is not a dm-device. TODO"
- # TODO: Create a linear target in place, 1:1 mapping to the old device, then
- # appending our new stuff.
return 1
fi
# We don't care too much what type of target the old data device is. Most likely linear,
diff --git a/core/modules/pam-common-share/data/opt/openslx/scripts/pam_script_mount_common_share b/core/modules/pam-common-share/data/opt/openslx/scripts/pam_script_mount_common_share
deleted file mode 100644
index d0bd8842..00000000
--- a/core/modules/pam-common-share/data/opt/openslx/scripts/pam_script_mount_common_share
+++ /dev/null
@@ -1,184 +0,0 @@
-###################################################################
-#
-# This script is a part of the pam_script_auth script
-# and is not stand-alone!
-#
-# It will try to mount the common shares specified in the
-# variables of the global slx config '/opt/openslx/config'.
-# An arbitrary number of shares may be given. Every share
-# requires following bundle of variables:
-#
-#
-# SLX_SHARE_<id>_AUTH_TYPE [guest|user|pam]
-# SLX_SHARE_<id>_AUTH_USER <username>
-# SLX_SHARE_<id>_AUTH_PASS <password>
-# SLX_SHARE_<id>_PERM [ro|rw]
-# SLX_SHARE_<id>_PATH <path_to_share>
-#
-# Note: <id> is the identifier of the share.
-#
-# Example:
-# SLX_SHARE_0_PATH='//windows.server/sharename'
-# SLX_SHARE_0_AUTH_TYPE='user'
-# SLX_SHARE_0_AUTH_USER='shareuser'
-# SLX_SHARE_0_AUTH_PASS='sharepass'
-# SLX_SHARE_0_PERM='rw'
-#
-# Note: If AUTH_TYPE is set to 'pam' or 'guest', then
-# there is no need to specify AUTH_USER or AUTH_PASS
-# as it is obviously not needed.
-#
-###################################################################
-#
-# Internal helper function to mount a share
-# usage: mount_share <auth_type> <auth_user> <auth_password> <permissions> <path> <share_number>
-mount_share() {
- # since we are (hopefully) the only one using this function, we know we need excatly 6 args
- [ $# -ne 6 ] && { slxlog "pam-share-args" "Wrong number of arguments given! Need 6, $# given."; return; }
-
- # lets check if we have our variables
- local SHARE_AUTH_TYPE="$1"
- local SHARE_AUTH_USER="$2"
- local SHARE_AUTH_PASS="$3"
- local SHARE_PERM="$4"
- local SHARE_PATH="$5"
- local SHARE_NUM="$6"
-
- # unless specified otherwise, mount the share read-only
- [ "x${SHARE_PERM}" != "xrw" ] && SHARE_PERM='ro'
-
- # all good: now we can mount depending on the type
- # supports: cifs?/nfs?
- if [ "${SHARE_PATH:0:2}" = "//" ]; then
- # '//' prefixed, assume windows share
- # prepare common mount options for either authentication type
- MOUNT_OPTS="-t cifs -o nounix,uid=${USER_UID},gid=${USER_GID},forceuid,forcegid,nobrl,noacl,$SHARE_PERM"
-
- # now construct the mount options depending on the type of the share.
- if [ "${SHARE_AUTH_TYPE}" = "guest" ]; then
- MOUNT_OPTS="${MOUNT_OPTS},guest,file_mode=0777,dir_mode=0777"
- elif [ "${SHARE_AUTH_TYPE}" = "pam" ]; then
- export USER="${PAM_USER}"
- export PASSWD="${PAM_AUTHTOK}"
- MOUNT_OPTS="${MOUNT_OPTS},sec=ntlm,file_mode=0700,dir_mode=0700"
- elif [ "${SHARE_AUTH_TYPE}" = "user" ]; then
- # check if credentials are set
- [ ! -z "${SHARE_AUTH_USER}" ] || \
- { slxlog "pam-share-noauthuser" "Share${SHARE_NUM}: No variable 'SLX_SHARE_${SHARE_NUM}_AUTH_USER' found in config!"; return; }
- # now export them to the env
- export USER="${SHARE_AUTH_USER}"
- export PASSWD="${SHARE_AUTH_PASS}"
- MOUNT_OPTS="${MOUNT_OPTS},sec=ntlm,file_mode=0700,dir_mode=0700"
- else
- slxlog "pam-share-auth" "Share${SHARE_NUM}: Auth type '${SHARE_AUTH_TYPE}' not supported."
- return;
- fi
- else
- # for now assume NFS-Share, start build options string with default options for all shares
- MOUNT_OPTS="-t nfs -o async,nolock"
-
- # TODO: here we will have to evaluate options of NFS-shares
-
- # unless specified otherwise, mount the share read-only
- [ "x${SHARE_PERM}" != "xrw" ] && SHARE_PERM='ro'
- MOUNT_OPTS="${MOUNT_OPTS},${SHARE_PERM}"
- fi
-
- ############################################################################
- #
- # Following code is independent of the type of share.
- # The variable MOUNT_OPTS should have been set correctly
- # up to this point.
- #
- ############################################################################
-
- # we just mount it to the directory with the same name as the
- # last directory in the path name of the share
- # e.g. //windows.net/lehrpool -> ${COMMON_SHARE_MOUNT_POINT}/lehrpool
- local TARGET_DIR="${COMMON_SHARE_MOUNT_POINT}/$(basename ${SHARE_PATH})"
- # it exists, so let's create ${COMMON_SHARE_MOUNT_POINT}/lehrpool_${SHARE_NUM}
- [ -d "${TARGET_DIR}" ] && TARGET_DIR="${TARGET_DIR}_${SHARE_NUM}"
-
- # at this point is TARGET_DIR pointing to the right directory.
- mkdir -p "${TARGET_DIR}" || \
- { slxlog "pam-share-mkdirfail" "Share${SHARE_NUM}: Could not create directory '${TARGET_DIR}'. Skipping share."; return; }
-
- # flag for failure
- SIGNAL=$(mktemp)
- rm -f -- "${SIGNAL}"
- # output of command
- MOUNT_OUTPUT=$(mktemp)
- # now try to mount it
- ( mount ${MOUNT_OPTS} "${SHARE_PATH}" "${TARGET_DIR}" > "${MOUNT_OUTPUT}" 2>&1 || touch "${SIGNAL}" ) &
- MOUNT_PID=$!
- for COUNTER in 1 1 2 4; do
- kill -0 "${MOUNT_PID}" 2>/dev/null || break
- sleep "${COUNTER}"
- done
-
- # check for failures
- if [ -e "${SIGNAL}" ]; then
- slxlog --delete "pam-share-mount" "Mount of '${SHARE_PATH}' to '${TARGET_DIR}' failed. (Args: '${MOUNT_OPTS}')" "${MOUNT_OUTPUT}"
- rm -f -- "${SIGNAL}"
- elif kill -9 "${MOUNT_PID}" 2>/dev/null; then
- slxlog --delete "pam-share-mount" "Mount of '${SHARE_PATH}' to '${TARGET_DIR}' timed out. (Args: '${MOUNT_OPTS}')" "${MOUNT_OUTPUT}"
- else
- rm -f -- "${MOUNT_OUTPUT}"
- fi
-
- # always unset credentials
- unset USER
- unset PASSWD
-}
-
-############################################################################
-#
-# MAIN LOGIC OVER ALL SHARES
-#
-############################################################################
-# at this point we need the slx config to do anything
-[ -e "/opt/openslx/config" ] || \
- { slxlog "pam-share-noconfig" "File '/opt/openslx/config' not found."; return; }
-
-# we have it as we should, source it
-. /opt/openslx/config || \
- { slxlog "pam-share-sourceconfig" "Could not source '/opt/openslx/config'."; return; }
-
-#
-#
-#
-# Since many shares can be specified, we need to identify how many we have first.
-# We just go over all SLX_SHARE_* variables and check for those ending in _PATH.
-# So e.g. for SLX_SHARE_0_PATH=<path> the SHARE variable would be equal to 'SLX_SHARE_0_PATH'
-# For each of those, a share was specified and we will try to mount it.
-for SHARE in $(grep -E '^SLX_SHARE_[0-9]+_PATH=.*$' /opt/openslx/config); do
- # first let's check if we have already mounted it and skip if it is
- # TODO: this should be good enough? stronger checks?
- if mount | grep -q "$(echo ${SHARE} | awk -F '=' '{print $2}' | tr -d \'\")"; then
- # already mounted, just skip
- # this should not happen anyway, since the pam_script_auth script also exits
- # if the temporary home user directory is already mounted...
- continue
- fi
- # ok so we have the full declaration command in $SHARE,
- # let's extract the number of the share.
- # i.e. SLX_SHARE_0_PATH -> share number 0
- # first just cut everything after '='
- SHARE_ID="$(echo $SHARE | awk -F '=' '{print $1}')"
- # now strip the leading SLX_SHARE_
- SHARE_ID=${SHARE_ID#SLX_SHARE_}
- # now remove the trailing _PATH
- SHARE_ID=${SHARE_ID%_PATH}
- # now it should be a number, TODO accept more than numbers? Doesn't really matter...
- # this check is mostly to be sure that the variable splitting worked as it should
- # ugly cause we need to be ash compatible ...
- if ! echo "${SHARE_ID}" | grep -q -E '^[0-9]+$'; then
- continue
- fi
-
- # now do try to mount the share using the helper function defined on the top of this script
- eval mount_share \""\$SLX_SHARE_${SHARE_ID}_AUTH_TYPE"\" \""\$SLX_SHARE_${SHARE_ID}_AUTH_USER"\" \""\$SLX_SHARE_${SHARE_ID}_AUTH_PASS"\" \""\$SLX_SHARE_${SHARE_ID}_PERM"\" \""\$SLX_SHARE_${SHARE_ID}_PATH"\" \""$SHARE_ID"\"
- ## unset USER and PASSWD just in case mount_share returned due to an error.
- unset USER
- unset PASSWD
-done
diff --git a/core/modules/pam-common-share/module.build b/core/modules/pam-common-share/module.build
deleted file mode 100644
index 241bcd5e..00000000
--- a/core/modules/pam-common-share/module.build
+++ /dev/null
@@ -1,12 +0,0 @@
-#!/bin/bash
-fetch_source() {
- :
-}
-
-build() {
- pinfo "Static module, nothing to build."
-}
-
-post_copy() {
- :
-}
diff --git a/core/modules/pam-common-share/module.conf b/core/modules/pam-common-share/module.conf
deleted file mode 100644
index f20668f6..00000000
--- a/core/modules/pam-common-share/module.conf
+++ /dev/null
@@ -1,7 +0,0 @@
-#!/bin/bash
-REQUIRED_MODULES="
- slxlog
-"
-REQUIRED_BINARIES=""
-REQUIRED_LIBRARIES=""
-REQUIRED_DIRECTORIES=""
diff --git a/core/modules/pam-slx-plug/data/opt/openslx/scripts/pam_script_auth.d b/core/modules/pam-slx-plug/data/opt/openslx/scripts/pam_script_auth.d
deleted file mode 120000
index fa58d57e..00000000
--- a/core/modules/pam-slx-plug/data/opt/openslx/scripts/pam_script_auth.d
+++ /dev/null
@@ -1 +0,0 @@
-/opt/openslx/pam/hooks/auth-slx-source.d \ No newline at end of file
diff --git a/core/modules/pam-slx-plug/data/opt/openslx/scripts/pam_script_ses_close.d b/core/modules/pam-slx-plug/data/opt/openslx/scripts/pam_script_ses_close.d
deleted file mode 120000
index db47dbe3..00000000
--- a/core/modules/pam-slx-plug/data/opt/openslx/scripts/pam_script_ses_close.d
+++ /dev/null
@@ -1 +0,0 @@
-/opt/openslx/pam/hooks/session-close.d \ No newline at end of file
diff --git a/core/modules/pam-slx-plug/data/opt/openslx/scripts/pam_script_ses_open.d b/core/modules/pam-slx-plug/data/opt/openslx/scripts/pam_script_ses_open.d
deleted file mode 120000
index 3ae27c4f..00000000
--- a/core/modules/pam-slx-plug/data/opt/openslx/scripts/pam_script_ses_open.d
+++ /dev/null
@@ -1 +0,0 @@
-/opt/openslx/pam/hooks/session-open.d \ No newline at end of file
diff --git a/core/modules/pam/TODO b/core/modules/pam/TODO
deleted file mode 100644
index 6f95e62d..00000000
--- a/core/modules/pam/TODO
+++ /dev/null
@@ -1 +0,0 @@
-suse krb5 mount home dirs
diff --git a/core/modules/pam/data/etc/pam-script/pam_script_auth b/core/modules/pam/data/etc/pam-script/pam_script_auth
deleted file mode 120000
index 319fba0e..00000000
--- a/core/modules/pam/data/etc/pam-script/pam_script_auth
+++ /dev/null
@@ -1 +0,0 @@
-/opt/openslx/scripts/pam_script_auth \ No newline at end of file
diff --git a/core/modules/pam/data/etc/pam-script/pam_script_ses_close b/core/modules/pam/data/etc/pam-script/pam_script_ses_close
deleted file mode 120000
index f3682056..00000000
--- a/core/modules/pam/data/etc/pam-script/pam_script_ses_close
+++ /dev/null
@@ -1 +0,0 @@
-/opt/openslx/scripts/pam_script_ses_close \ No newline at end of file
diff --git a/core/modules/pam/data/etc/pam-script/pam_script_ses_open b/core/modules/pam/data/etc/pam-script/pam_script_ses_open
deleted file mode 120000
index 4f5598e5..00000000
--- a/core/modules/pam/data/etc/pam-script/pam_script_ses_open
+++ /dev/null
@@ -1 +0,0 @@
-/opt/openslx/scripts/pam_script_ses_open \ No newline at end of file
diff --git a/core/modules/pam/data/etc/security/pam_env.conf b/core/modules/pam/data/etc/security/pam_env.conf
deleted file mode 100644
index d0ba35c2..00000000
--- a/core/modules/pam/data/etc/security/pam_env.conf
+++ /dev/null
@@ -1,73 +0,0 @@
-#
-# This is the configuration file for pam_env, a PAM module to load in
-# a configurable list of environment variables for a
-#
-# The original idea for this came from Andrew G. Morgan ...
-#<quote>
-# Mmm. Perhaps you might like to write a pam_env module that reads a
-# default environment from a file? I can see that as REALLY
-# useful... Note it would be an "auth" module that returns PAM_IGNORE
-# for the auth part and sets the environment returning PAM_SUCCESS in
-# the setcred function...
-#</quote>
-#
-# What I wanted was the REMOTEHOST variable set, purely for selfish
-# reasons, and AGM didn't want it added to the SimpleApps login
-# program (which is where I added the patch). So, my first concern is
-# that variable, from there there are numerous others that might/would
-# be useful to be set: NNTPSERVER, LESS, PATH, PAGER, MANPAGER .....
-#
-# Of course, these are a different kind of variable than REMOTEHOST in
-# that they are things that are likely to be configured by
-# administrators rather than set by logging in, how to treat them both
-# in the same config file?
-#
-# Here is my idea:
-#
-# Each line starts with the variable name, there are then two possible
-# options for each variable DEFAULT and OVERRIDE.
-# DEFAULT allows and administrator to set the value of the
-# variable to some default value, if none is supplied then the empty
-# string is assumed. The OVERRIDE option tells pam_env that it should
-# enter in its value (overriding the default value) if there is one
-# to use. OVERRIDE is not used, "" is assumed and no override will be
-# done.
-#
-# VARIABLE [DEFAULT=[value]] [OVERRIDE=[value]]
-#
-# (Possibly non-existent) environment variables may be used in values
-# using the ${string} syntax and (possibly non-existent) PAM_ITEMs may
-# be used in values using the @{string} syntax. Both the $ and @
-# characters can be backslash escaped to be used as literal values
-# values can be delimited with "", escaped " not supported.
-# Note that many environment variables that you would like to use
-# may not be set by the time the module is called.
-# For example, HOME is used below several times, but
-# many PAM applications don't make it available by the time you need it.
-#
-#
-# First, some special variables
-#
-# Set the REMOTEHOST variable for any hosts that are remote, default
-# to "localhost" rather than not being set at all
-#REMOTEHOST DEFAULT=localhost OVERRIDE=@{PAM_RHOST}
-#
-# Set the DISPLAY variable if it seems reasonable
-#DISPLAY DEFAULT=${REMOTEHOST}:0.0 OVERRIDE=${DISPLAY}
-#
-#
-# Now some simple variables
-#
-#PAGER DEFAULT=less
-#MANPAGER DEFAULT=less
-#LESS DEFAULT="M q e h15 z23 b80"
-#NNTPSERVER DEFAULT=localhost
-#PATH DEFAULT=${HOME}/bin:/usr/local/bin:/bin\
-#:/usr/bin:/usr/local/bin/X11:/usr/bin/X11
-#
-# silly examples of escaped variables, just to show how they work.
-#
-#DOLLAR DEFAULT=\$
-#DOLLARDOLLAR DEFAULT= OVERRIDE=\$${DOLLAR}
-#DOLLARPLUS DEFAULT=\${REMOTEHOST}${REMOTEHOST}
-#ATSIGN DEFAULT="" OVERRIDE=\@
diff --git a/core/modules/pam/data/opt/openslx/scripts/pam_script_auth b/core/modules/pam/data/opt/openslx/scripts/pam_script_auth
deleted file mode 100755
index 0e764f37..00000000
--- a/core/modules/pam/data/opt/openslx/scripts/pam_script_auth
+++ /dev/null
@@ -1,160 +0,0 @@
-#!/bin/ash
-
-# # # # # # # # # # # # # # # # # # #
-# Legacy script - present only for
-# backwards compat with old config.tgz
-# modules. Newer approach lies in
-# /opt/openslx/pam
-# # # # # # # # # # # # # # # # # # #
-
-# Needed as pam_script clears PATH
-export PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/openslx/sbin:/opt/openslx/bin"
-
-# check if the script runs as root
-[ "x$(whoami)" != "xroot" ] && exit 0
-
-USER_UID=$(id -u "$PAM_USER")
-if [ -n "$USER_UID" ]; then
- PASSWD=$(getent passwd "$USER_UID")
-else
- PASSWD=$(getent passwd "$PAM_USER")
-fi
-USER_NAME=$(echo "$PASSWD" | awk -F ':' '{print $1}')
-USER_UID=$(echo "$PASSWD" | awk -F ':' '{print $3}')
-USER_GID=$(echo "$PASSWD" | awk -F ':' '{print $4}')
-USER_HOME=$(echo "$PASSWD" | awk -F ':' '{print $6}')
-[ -n "$USER_NAME" ] && PAM_USER="$USER_NAME"
-[ -z "$USER_UID" ] && USER_UID=$(id -u "$PAM_USER")
-[ -z "$USER_GID" ] && USER_GID=$(id -g "$PAM_USER")
-[ -z "$USER_HOME" ] && USER_HOME="/home/$PAM_USER"
-if [ -z "$USER_UID" -o -z "$USER_GID" ]; then
- slxlog "pam-get-ids" "Could not determine UID or GID for user '$PAM_USER'."
- exit 1
-fi
-
-# The user's non-persistent home directory mount point, which should be their linux home
-TEMP_HOME_DIR="$USER_HOME"
-
-# check if PAM_USER is root and skip if it is the case
-[ "x${PAM_USER}" == "xroot" ] && exit 0
-
-###############################################################################
-#
-# Preparations for volatile /home/<user>
-#
-#
-# check if we already mounted the home directory
-if ! mount | grep -q -F " ${TEMP_HOME_DIR} "; then
- # no home, lets create it
- if ! mkdir -p "${TEMP_HOME_DIR}"; then
- slxlog "pam-global-mktemphome" "Could not create '${TEMP_HOME_DIR}'."
- exit 1
- fi
- # now make it a tmpfs
- if ! mount -t tmpfs -o "uid=${USER_UID},gid=${USER_GID},mode=0700,size=1024m" tmpfs "${TEMP_HOME_DIR}"; then
- slxlog "pam-global-tmpfstemphome" "Could not make a tmpfs on ${TEMP_HOME_DIR}"
- exit 1
- fi
- # mount another tmpfs into subdir so we can create files that the user cannot modify
- # but still read, while at the same time preventing any other user from reading it
- mkdir -p "${TEMP_HOME_DIR}/.openslx"
- mount -t tmpfs -o size=1m,uid=0,gid=0,mode=0755 tmpfs "${TEMP_HOME_DIR}/.openslx"
-fi
-
-###############################################################################
-#
-# Preparations for /home/<user>/PERSISTENT
-#
-#
-# Script to be sourced to mount the user's persistent home
-PERSISTENT_MOUNT_SCRIPT="/opt/openslx/scripts/pam_script_mount_persistent"
-# Script to be run in the user's context iff the persistent home could be mounted successfully
-PERSISTENT_MOUNT_USER_SCRIPT="/opt/openslx/scripts/pam_script_mount_persistent_user"
-# The user's persistent home directory mount point
-PERSISTENT_HOME_DIR="${TEMP_HOME_DIR}/PERSISTENT"
-
-# now lets see if we have a persistent directory mount script, and it's not already mounted
-if [ -e "${PERSISTENT_MOUNT_SCRIPT}" ] && ! mount | grep -q -F " ${PERSISTENT_HOME_DIR} "; then
- # seems we should try to mount...
- # create the PERSISTENT directory and give to user
- if ! mkdir -p "${PERSISTENT_HOME_DIR}"; then
- slxlog "pam-global-mkpersistent" "Could not create '${PERSISTENT_HOME_DIR}'."
- else
- # everything seems ok, call mount script
- . "${PERSISTENT_MOUNT_SCRIPT}" \
- || slxlog "pam-global-sourcepersistent" "Could not source '${PERSISTENT_MOUNT_SCRIPT}'."
- if [ -n "${REAL_ACCOUNT}" ]; then
- echo "${REAL_ACCOUNT}" > "${TEMP_HOME_DIR}/.openslx/account"
- chmod 0644 "${TEMP_HOME_DIR}/.openslx/account"
- fi
- fi
-fi # end "mount-home-script-exists"
-
-
-# Just try to delete the persistent dir. If the mount was successful, it will not work
-# If it was not successful, it will be removed so the user doesn't think he can store
-# anything in there
-rmdir "${PERSISTENT_HOME_DIR}" 2> /dev/null
-
-# Write warning message to tmpfs home
-if [ -d "${PERSISTENT_HOME_DIR}" ]; then
- # create a WARNING.txt for the user with hint to PERSISTENT
- cat > "${TEMP_HOME_DIR}/WARNING.txt" <<EOF
-ATTENTION: This is the non-persistent home directory!
-Files saved here will be lost on shutdown.
-Your real home is under ${PERSISTENT_HOME_DIR}
-Please save your files there.
-EOF
-else
- # create a WARNING.txt for the user, no PERSISTENT :-(
- cat > "${TEMP_HOME_DIR}/WARNING.txt" <<EOF
-ATTENTION: This is a non-persistent home directory!
-Files saved here will be lost on shutdown.
-Please save your files on a USB drive or upload them
-to some web service.
-EOF
-fi
-chown "${USER_UID}" "${TEMP_HOME_DIR}/WARNING.txt"
-
-###############################################################################
-#
-# Preparations for /home/<user>/SHARE
-#
-#
-# Script to be sourced to mount the common share folder
-COMMON_SHARE_MOUNT_SCRIPT="/opt/openslx/scripts/pam_script_mount_common_share"
-# User specific mount point for the common share
-COMMON_SHARE_MOUNT_POINT="${TEMP_HOME_DIR}/SHARE"
-
-# check for common share mount script, exit if we don't have one
-if [ -e "${COMMON_SHARE_MOUNT_SCRIPT}" ] && ! mount | grep -q -F " ${COMMON_SHARE_MOUNT_POINT} "; then
- # create the SHARE directory
- if ! mkdir -p "${COMMON_SHARE_MOUNT_POINT}"; then
- slxlog "pam-global-mkshare" "Could not create '${COMMON_SHARE_MOUNT_POINT}'."
- elif ! chown "${USER_UID}:${USER_GID}" "${COMMON_SHARE_MOUNT_POINT}"; then
- slxlog "pam-global-chshare" "Could not chown '${COMMON_SHARE_MOUNT_POINT}' to '${PAM_USER}'."
- else
- COMMON_SHARE_MOUNT_POINT="${COMMON_SHARE_MOUNT_POINT}" \
- PAM_USER="${PAM_USER}" \
- PAM_AUTHTOK="${PAM_AUTHTOK}" \
- USER_UID="${USER_UID}" \
- USER_GID="${USER_GID}" \
- /bin/ash "${COMMON_SHARE_MOUNT_SCRIPT}" \
- || slxlog "pam-global-sourceshare" "Could not execute '${COMMON_SHARE_MOUNT_SCRIPT}'."
- fi
-fi
-# Just try to delete the common share dir. If the mount was successful, it will not work
-rmdir "${COMMON_SHARE_MOUNT_POINT}" 2> /dev/null
-
-#
-# source the stuff in pam_script_auth.d, if it exists
-#
-if [ -d "/opt/openslx/scripts/pam_script_auth.d" ]; then
- for HOOK in $(ls "/opt/openslx/scripts/pam_script_auth.d"); do
- # source it, in case of failure do nothing since these scripts are non-critical
- ( . "/opt/openslx/scripts/pam_script_auth.d/$HOOK" ) || slxlog "pam-source-hooks" "Could not source '$HOOK'."
- done
-fi
-
-exit 0
-
diff --git a/core/modules/pam/data/opt/openslx/scripts/pam_script_ses_close b/core/modules/pam/data/opt/openslx/scripts/pam_script_ses_close
deleted file mode 100755
index 80b496d6..00000000
--- a/core/modules/pam/data/opt/openslx/scripts/pam_script_ses_close
+++ /dev/null
@@ -1,27 +0,0 @@
-#!/bin/ash
-
-# # # # # # # # # # # # # # # # # # #
-# Legacy script - present only for
-# backwards compat with old config.tgz
-# modules. Newer approach lies in
-# /opt/openslx/pam
-# # # # # # # # # # # # # # # # # # #
-
-# Needed as pam_script clears PATH
-export PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/openslx/sbin:/opt/openslx/bin"
-
-# can only work if script is run as root
-[ "x$(whoami)" = "xroot" ] || exit 0
-
-[ "x${PAM_SERVICE%greeter}" != "x${PAM_SERVICE}" ] && exit 0
-
-# source hooks if there are any
-if [ -d "/opt/openslx/scripts/pam_script_ses_close.d" ]; then
- for HOOK in $(ls "/opt/openslx/scripts/pam_script_ses_close.d"); do
- # failure is non-critical
- . "/opt/openslx/scripts/pam_script_ses_close.d/$HOOK" || slxlog "pam-sesclose-hooks" "Could not source '$HOOK'."
- done
-fi
-
-exit 0
-
diff --git a/core/modules/pam/data/opt/openslx/scripts/pam_script_ses_open b/core/modules/pam/data/opt/openslx/scripts/pam_script_ses_open
deleted file mode 100755
index 0050758c..00000000
--- a/core/modules/pam/data/opt/openslx/scripts/pam_script_ses_open
+++ /dev/null
@@ -1,25 +0,0 @@
-#!/bin/ash
-
-# # # # # # # # # # # # # # # # # # #
-# Legacy script - present only for
-# backwards compat with old config.tgz
-# modules. Newer approach lies in
-# /opt/openslx/pam
-# # # # # # # # # # # # # # # # # # #
-
-# Needed as pam_script clears PATH
-export PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/openslx/sbin:/opt/openslx/bin"
-
-# just exit for greeter sessions
-[ "x${PAM_SERVICE%greeter}" != "x${PAM_SERVICE}" ] && exit 0
-
-# source the stuff in pam_script_ses_open.d, if it exists
-if [ -d "/opt/openslx/scripts/pam_script_ses_open.d" ]; then
- for HOOK in $(ls "/opt/openslx/scripts/pam_script_ses_open.d"); do
- # source it, in case of failure do nothing since these scripts are non-critical
- . "/opt/openslx/scripts/pam_script_ses_open.d/$HOOK" || slxlog "pam-source-hooks" "Could not source '$HOOK'."
- done
-fi
-
-exit 0
-
diff --git a/core/modules/pam/module.build b/core/modules/pam/module.build
index c099bc1e..41f4f680 100644
--- a/core/modules/pam/module.build
+++ b/core/modules/pam/module.build
@@ -8,20 +8,6 @@ fetch_source() {
build() {
mkdir -p "$MODULE_BUILD_DIR/opt/openslx/bin"
gcc -o "$MODULE_BUILD_DIR/opt/openslx/bin/sslconnect" "$MODULE_DIR/sslconnect.c" -lssl -lcrypto -O3 || perror "Could not compile sslconnect.c"
-
- # build pam-script separatly since we use a source tarball
-
- # HACK: find pam_unix.so in MODULE_BUILD_DIR to see where to put pam_script
- cde "${MODULE_WORK_DIR}/src/pam_script"
- for i in 1 2 3; do # FUCK THIS BRAIN DAMAGE!
- libtoolize
- automake --add-missing
- autoreconf
- aclocal
- autoheader
- done
- ./configure --prefix=/ --sysconfdir=/etc/pam-script --libdir="$SYS_PAM_MODULES_PATH" || perror "pam-script: ./configure failed."
- make DESTDIR="${MODULE_BUILD_DIR}" install || perror "pam-script: make install to ${MODULE_BUILD_DIR} failed."
}
post_copy() {
diff --git a/core/modules/pam/module.conf b/core/modules/pam/module.conf
index 7789139d..2dcfdd84 100644
--- a/core/modules/pam/module.conf
+++ b/core/modules/pam/module.conf
@@ -18,7 +18,6 @@ REQUIRED_LIBRARIES="
nsswitch
static
libnfsidmap
- pam_script
"
REQUIRED_DIRECTORIES="
/etc/security
@@ -26,6 +25,3 @@ REQUIRED_DIRECTORIES="
REQUIRED_SYSTEM_FILES="
/etc/login.defs
"
-REQUIRED_GIT="
- https://github.com/jeroennijhof/pam_script.git
-"
diff --git a/core/modules/pam/module.conf.centos b/core/modules/pam/module.conf.centos
deleted file mode 100644
index 3a8b2dcc..00000000
--- a/core/modules/pam/module.conf.centos
+++ /dev/null
@@ -1,37 +0,0 @@
-#!/bin/bash
-# erase generic conf settings
-REQUIRED_BINARIES=""
-REQUIRED_FILES=""
-REQUIRED_INSTALLED_PACKAGES="
- pam
- pam-devel
- pam_krb5
- libnfsidmap
- nss-mdns
- openssl-devel
- nfs-utils
- glibc
-"
-REQUIRED_CONTENT_PACKAGES="
- pam
- pam-devel
- pam_krb5
- libnfsidmap
- nss-mdns
- nfs-utils
- glibc
-"
-REQUIRED_LIBRARIES+="
- libnss_compat
- libnss_db
- libnss_dns
- libnss_files
- libnss_nis
-"
-REQUIRED_DIRECTORIES+="
- /$LIB64
-"
-REQUIRED_SYSTEM_FILES+="
- $SYS_PAM_MODULES_PATH
-"
-
diff --git a/core/modules/pam/module.conf.debian b/core/modules/pam/module.conf.debian
index 470163e2..b7f19d07 100644
--- a/core/modules/pam/module.conf.debian
+++ b/core/modules/pam/module.conf.debian
@@ -8,7 +8,6 @@ REQUIRED_INSTALLED_PACKAGES="
libssl-dev
ldap-utils
nfs-common
- libpam0g-dev
cifs-utils
libtool
"
diff --git a/core/modules/pam/module.conf.opensuse b/core/modules/pam/module.conf.opensuse
deleted file mode 100644
index df07be2c..00000000
--- a/core/modules/pam/module.conf.opensuse
+++ /dev/null
@@ -1,45 +0,0 @@
-#!/bin/bash
-REQUIRED_INSTALLED_PACKAGES="
- pam
- pam_krb5
- pam-devel
- nss-pam-ldapd
- nss-mdns
- pam-modules
- libopenssl-devel
- openldap2-client
- nfsidmap
- nfs-client
- glibc
- pam-devel
-"
-REQUIRED_CONTENT_PACKAGES="
- pam
- pam_krb5
- pam-devel
- pam-modules
- nss-pam-ldapd
- nss-mdns
- openldap2-client
- nfsidmap
- nfs-client
- glibc
-"
-REQUIRED_BINARIES+="
- mkhomedir_helper
-"
-REQUIRED_LIBRARIES+="
- libnss_compat
- libnss_db
- libnss_dns
- libnss_files
- libnss_nis
-"
-REQUIRED_DIRECTORIES+="
- /$LIB64
- /usr/$LIB64
-"
-REQUIRED_SYSTEM_FILES+="
- /$LIB64/security
-"
-
diff --git a/core/modules/pam/module.conf.ubuntu b/core/modules/pam/module.conf.ubuntu
index 8e934bd3..54133526 100644
--- a/core/modules/pam/module.conf.ubuntu
+++ b/core/modules/pam/module.conf.ubuntu
@@ -9,7 +9,6 @@ REQUIRED_INSTALLED_PACKAGES="
ldap-utils
libnfsidmap2
nfs-common
- libpam0g-dev
cifs-utils
libtool
"
diff --git a/core/modules/pam/module.conf.ubuntu.16 b/core/modules/pam/module.conf.ubuntu.16
deleted file mode 100644
index 4d09bbd5..00000000
--- a/core/modules/pam/module.conf.ubuntu.16
+++ /dev/null
@@ -1,42 +0,0 @@
-#!/bin/bash
-# TODO fix and re-add ncp support !
-REQUIRED_INSTALLED_PACKAGES="
- libpam-cap
- krb5-user
- krb5-config
- libpam-krb5
- libssl-dev
- ldap-utils
- libnfsidmap2
- nfs-common
- libpam0g-dev
- cifs-utils
-"
-REQUIRED_CONTENT_PACKAGES="
- libpam0g
- libpam-modules
- libpam-modules-bin
- libpam-cap
- libldap-2.4-2
- krb5-user
- krb5-config
- libpam-krb5
- ldap-utils
- libnfsidmap2
- nfs-common
- cifs-utils
- keyutils
-"
-REQUIRED_BINARIES+="
- mount.cifs
-"
-REQUIRED_DIRECTORIES+="
- $SYS_PAM_MODULES_PATH
- /lib
- /usr/lib
-"
-REQUIRED_SYSTEM_FILES+="
- /etc/securetty
- /etc/pam.conf
- /etc/default/locale
-"
diff --git a/core/modules/pam/module.conf.ubuntu.17 b/core/modules/pam/module.conf.ubuntu.17
deleted file mode 100644
index 4d09bbd5..00000000
--- a/core/modules/pam/module.conf.ubuntu.17
+++ /dev/null
@@ -1,42 +0,0 @@
-#!/bin/bash
-# TODO fix and re-add ncp support !
-REQUIRED_INSTALLED_PACKAGES="
- libpam-cap
- krb5-user
- krb5-config
- libpam-krb5
- libssl-dev
- ldap-utils
- libnfsidmap2
- nfs-common
- libpam0g-dev
- cifs-utils
-"
-REQUIRED_CONTENT_PACKAGES="
- libpam0g
- libpam-modules
- libpam-modules-bin
- libpam-cap
- libldap-2.4-2
- krb5-user
- krb5-config
- libpam-krb5
- ldap-utils
- libnfsidmap2
- nfs-common
- cifs-utils
- keyutils
-"
-REQUIRED_BINARIES+="
- mount.cifs
-"
-REQUIRED_DIRECTORIES+="
- $SYS_PAM_MODULES_PATH
- /lib
- /usr/lib
-"
-REQUIRED_SYSTEM_FILES+="
- /etc/securetty
- /etc/pam.conf
- /etc/default/locale
-"
diff --git a/core/modules/pam/module.conf.ubuntu.18 b/core/modules/pam/module.conf.ubuntu.18
deleted file mode 100644
index 7f0fcaca..00000000
--- a/core/modules/pam/module.conf.ubuntu.18
+++ /dev/null
@@ -1,43 +0,0 @@
-#!/bin/bash
-
-REQUIRED_INSTALLED_PACKAGES="
- libpam-cap
- krb5-user
- krb5-config
- libpam-krb5
- libssl-dev
- ldap-utils
- libnfsidmap2
- nfs-common
- libpam0g-dev
- cifs-utils
- libtool
-"
-REQUIRED_CONTENT_PACKAGES="
- libpam0g
- libpam-modules
- libpam-modules-bin
- libpam-cap
- libldap-2.4-2
- krb5-user
- krb5-config
- libpam-krb5
- ldap-utils
- libnfsidmap2
- nfs-common
- cifs-utils
- keyutils
-"
-REQUIRED_BINARIES+="
- mount.cifs
-"
-REQUIRED_DIRECTORIES+="
- $SYS_PAM_MODULES_PATH
- /lib
- /usr/lib
-"
-REQUIRED_SYSTEM_FILES+="
- /etc/securetty
- /etc/pam.conf
- /etc/default/locale
-"
diff --git a/core/modules/printergui/data/opt/openslx/vmchooser/run-virt.d/setup_printer_lpd.inc b/core/modules/printergui/data/opt/openslx/vmchooser/run-virt.d/setup_printer_lpd.inc
index 639b7bca..14ee0341 100644
--- a/core/modules/printergui/data/opt/openslx/vmchooser/run-virt.d/setup_printer_lpd.inc
+++ b/core/modules/printergui/data/opt/openslx/vmchooser/run-virt.d/setup_printer_lpd.inc
@@ -26,7 +26,6 @@ setup_virtual_printer() {
fi
# Start the lpdaemon listening on the given port
- # TODO: externalize with something like runvirt.d (other parts might benefit from that too)
tcpsvd -E 192.168.101.1 5515 \
lpd "$SPOOLDIR" \
ash -c "/opt/openslx/scripts/run-virt_print '${USER}' \"${SPOOLDIR}/${QUEUE}/\$DATAFILE\"" \
diff --git a/core/modules/printergui/module.conf b/core/modules/printergui/module.conf
index 2668e076..8376c28d 100644
--- a/core/modules/printergui/module.conf
+++ b/core/modules/printergui/module.conf
@@ -2,7 +2,7 @@
REQUIRED_MODULES="
slxlog
"
-REQUIRED_GIT="git://git.openslx.org/openslx-ng/printergui.git"
+REQUIRED_GIT="https://git.openslx.org/openslx-ng/printergui.git"
REQUIRED_BINARIES="
printergui
printpwgui
diff --git a/core/modules/pvs2/data/opt/openslx/vmchooser/sessionstart.d/50-PVSclient b/core/modules/pvs2/data/opt/openslx/vmchooser/sessionstart.d/50-PVSclient
index 9f13ed4a..bc4726f4 100755
--- a/core/modules/pvs2/data/opt/openslx/vmchooser/sessionstart.d/50-PVSclient
+++ b/core/modules/pvs2/data/opt/openslx/vmchooser/sessionstart.d/50-PVSclient
@@ -9,7 +9,7 @@ if [ "$SESSION_TYPE" = "XSESSION" ]; then
PVSMGR_SESSION_CMD=
PVSMGR_XSESSION_FILE="pvs2mgr.desktop"
# the second directory should not be needed, but lets be compatible with the old crap......
- for DIR in "/usr/share/xsessions" "/opt/openslx/xsessions/"; do
+ for DIR in "/usr/share/xsessions" "/opt/openslx/xsessions"; do
if [ -f "${DIR}/${PVSMGR_XSESSION_FILE}" ]; then
# extract the exact command string
PVSMGR_SESSION_CMD="$(grep -E "^Exec=.*$" "${DIR}/${PVSMGR_XSESSION_FILE}" |cut -c 6-)"
@@ -18,7 +18,7 @@ if [ "$SESSION_TYPE" = "XSESSION" ]; then
done
if [ -n "${PVSMGR_SESSION_CMD}" ]; then
# do not start pvsclient if we are running the pvs manager session
- [ "x${SESSION_CMD}" == "x${PVSMGR_SESSION_CMD}" ] && exit 0
+ [ "${SESSION_CMD}" == "${PVSMGR_SESSION_CMD}" ] && exit 0
fi
fi
diff --git a/core/modules/pvs2/module.conf b/core/modules/pvs2/module.conf
index 7d918d60..296251ab 100644
--- a/core/modules/pvs2/module.conf
+++ b/core/modules/pvs2/module.conf
@@ -1,5 +1,5 @@
#!/bin/bash
-REQUIRED_GIT="git://git.openslx.org/pvs2.git"
+REQUIRED_GIT="https://git.openslx.org/pvs2.git"
REQUIRED_BINARIES="
pvsmgr
pvsclient
@@ -13,4 +13,3 @@ REQUIRED_MODULES="
qt5core
x11vnc
"
-# TODO add libraries
diff --git a/core/modules/qemu/data/opt/openslx/vmchooser/plugins/qemukvm/run-virt.include b/core/modules/qemu/data/opt/openslx/vmchooser/plugins/qemukvm/run-virt.include
index 391ba5a5..e522ccab 100644
--- a/core/modules/qemu/data/opt/openslx/vmchooser/plugins/qemukvm/run-virt.include
+++ b/core/modules/qemu/data/opt/openslx/vmchooser/plugins/qemukvm/run-virt.include
@@ -20,7 +20,7 @@ declare -rg QEMU_PLUGIN_DIR="$(dirname "${BASH_SOURCE[0]}")"
declare -rg QEMU_INCLUDE_DIR="${QEMU_PLUGIN_DIR}/includes"
# Define which features the QEMU plugin supports
-declare -rg PLUGIN_FEATURES="firewall printer usb slxfloppy sound netshares"
+declare -rg PLUGIN_FEATURES="firewall printer usb slxfloppy sound"
run_plugin() {
# include kernel command line utils and functions
@@ -116,6 +116,9 @@ run_plugin() {
if $DEBUG; then
VIRTCMDOPTS+=( "-xmledit" )
fi
+ if notempty DMSD_COW_SESSION; then
+ VIRTCMDOPTS+=( "-manager" )
+ fi
if [ "${SHARE_REMAP_MODE}" -gt 1 ]; then
notempty HOME_SHARE_PATH && VIRTCMDOPTS+=( "-vmfssrc0" "${HOME_SHARE_PATH}" )
diff --git a/core/modules/qemu/runvirt-plugin-qemu/pom.xml b/core/modules/qemu/runvirt-plugin-qemu/pom.xml
index a2e5c24e..1d64e065 100644
--- a/core/modules/qemu/runvirt-plugin-qemu/pom.xml
+++ b/core/modules/qemu/runvirt-plugin-qemu/pom.xml
@@ -12,7 +12,7 @@
<url>https://git.openslx.org/openslx-ng/mltk.git/</url>
<scm>
- <connection>scm:git:git://git.openslx.org/openslx-ng/mltk.git</connection>
+ <connection>scm:git:https://git.openslx.org/openslx-ng/mltk.git</connection>
</scm>
<properties>
diff --git a/core/modules/qemu/runvirt-plugin-qemu/src/main/java/org/openslx/runvirt/plugin/qemu/App.java b/core/modules/qemu/runvirt-plugin-qemu/src/main/java/org/openslx/runvirt/plugin/qemu/App.java
index 0744c9b5..6e1efa61 100644
--- a/core/modules/qemu/runvirt-plugin-qemu/src/main/java/org/openslx/runvirt/plugin/qemu/App.java
+++ b/core/modules/qemu/runvirt-plugin-qemu/src/main/java/org/openslx/runvirt/plugin/qemu/App.java
@@ -237,7 +237,7 @@ public class App
vmViewer = new ViewerLookingGlassClient( vm, hypervisor, cmdLn.isDebugEnabled() );
} else {
// viewer for non-GPU passthrough (no framebuffer access) is required
- if ( cmdLn.isDebugEnabled() ) {
+ if ( cmdLn.isDebugEnabled() || cmdLn.isManagerEnabled() ) {
// create specific Virtual Machine Manager viewer if debug mode is enabled
vmViewer = new ViewerVirtManager( vm, hypervisor );
} else {
diff --git a/core/modules/qemu/runvirt-plugin-qemu/src/main/java/org/openslx/runvirt/plugin/qemu/cmdln/CommandLineArgs.java b/core/modules/qemu/runvirt-plugin-qemu/src/main/java/org/openslx/runvirt/plugin/qemu/cmdln/CommandLineArgs.java
index 396c0d8c..1236a997 100644
--- a/core/modules/qemu/runvirt-plugin-qemu/src/main/java/org/openslx/runvirt/plugin/qemu/cmdln/CommandLineArgs.java
+++ b/core/modules/qemu/runvirt-plugin-qemu/src/main/java/org/openslx/runvirt/plugin/qemu/cmdln/CommandLineArgs.java
@@ -171,6 +171,16 @@ public class CommandLineArgs
}
/**
+ * Returns the presence of the command line option {@link CmdLnOption#MANAGER}.
+ *
+ * @return presence of the command line option {@link CmdLnOption#MANAGER}.
+ */
+ public boolean isManagerEnabled()
+ {
+ return this.cmdLn.hasOption( CmdLnOption.MANAGER.getShortOption() );
+ }
+
+ /**
* Returns the state of the command line option {@link CmdLnOption#DEBUG_PTH}.
*
* @return state of the command line option {@link CmdLnOption#DEBUG_PTH}.
@@ -526,6 +536,7 @@ public class CommandLineArgs
+ " for testing and debugging purposes"),
VM_CPU_TOPO ( '1', "cputopo", 1, "Set pairs of CPUs belonging to the same thread, semi-colon separated."
+ " Each group can contain commas or dashes to mark ranges. E.g. 0,1;2-3;4;5;6;7;8,9,10,11" ),
+ MANAGER ( '2', "manager", 0, "Force using virt-manager even if not in debug mode" ),
VM_MAC0 ( 'a', "vmmac0", 1, "MAC address for the first network interface" ),
DEBUG ( 'b', "debug", 1, "Enable or disable debug mode" ),
VM_NCPUS ( 'c', "vmncpus", 1, "Number of virtual CPUs for the virtual machine" ),
diff --git a/core/modules/rsyslogd/data/etc/rsyslog.conf b/core/modules/rsyslogd/data/etc/rsyslog.conf
deleted file mode 100644
index 1d7ae3dc..00000000
--- a/core/modules/rsyslogd/data/etc/rsyslog.conf
+++ /dev/null
@@ -1,84 +0,0 @@
-# /etc/rsyslog.conf Configuration file for rsyslogd.
-#
-# For more information see
-# /usr/share/doc/rsyslog/html/rsyslog_conf.html
-#
-# First some standard logfiles. Log by facility.
-#
-
-$ModLoad imuxsock # provides support for local system logging
-$ModLoad imklog # provides kernel logging support (previously done by rklogd)
-$ModLoad immark
-$MarkMessagePeriod 3600
-$RepeatedMsgReduction on
-
-
-if ( \
- /* kernel up to warning except of firewall */ \
- ($syslogfacility-text == 'kern') and \
- ($syslogseverity <= 4 /* warning */ ) and not \
- ($msg contains 'IN=' and $msg contains 'OUT=') \
- ) or ( \
- /* up to errors except of facility authpriv */ \
- ($syslogseverity <= 3 /* errors */ ) and not \
- ($syslogfacility-text == 'authpriv') \
- ) \
-then /dev/tty10
-
-
-
-auth,authpriv.* /var/log/auth.log
-*.*;auth,authpriv.none -/var/log/syslog
-#cron.* /var/log/cron.log
-daemon.* -/var/log/daemon.log
-kern.* -/var/log/kern.log
-lpr.* -/var/log/lpr.log
-mail.* -/var/log/mail.log
-user.* -/var/log/user.log
-#
-# Logging for the mail system. Split it up so that
-# it is easy to write scripts to parse these files.
-#
-mail.info -/var/log/mail.info
-mail.warn -/var/log/mail.warn
-mail.err /var/log/mail.err
-#
-# Logging for INN news system
-#
-news.crit /var/log/news/news.crit
-news.err /var/log/news/news.err
-news.notice -/var/log/news/news.notice
-#
-# Some `catch-all' logfiles.
-#
-*.=debug;\
- auth,authpriv.none;\
- news.none;mail.none -/var/log/debug
-*.=info;*.=notice;*.=warn;\
- auth,authpriv.none;\
- cron,daemon.none;\
- mail,news.none -/var/log/messages
-#
-# Emergencies are sent to everybody logged in.
-#
-*.emerg :omusrmsg:*
-#
-# I like to have messages displayed on the console, but only on a virtual
-# console I usually leave idle.
-#
-#daemon,mail.*;\
-# news.=crit;news.=err;news.=notice;\
-# *.=debug;*.=info;\
-# *.=notice;*.=warn /dev/tty8
-# The named pipe /dev/xconsole is for the `xconsole' utility. To use it,
-# you must invoke `xconsole' with the `-file' option:
-#
-# $ xconsole -file /dev/xconsole [...]
-#
-# NOTE: adjust the list below, or you'll go crazy if you have a reasonably
-# busy site..
-#
-daemon.*;mail.*;\
- news.err;\
- *.=debug;*.=info;\
- *.=notice;*.=warn |/dev/tty11
diff --git a/core/modules/rsyslogd/module.build b/core/modules/rsyslogd/module.build
deleted file mode 100644
index 887a9776..00000000
--- a/core/modules/rsyslogd/module.build
+++ /dev/null
@@ -1,29 +0,0 @@
-#!/bin/bash
-fetch_source() {
- :
-}
-
-build() {
- :
-}
-
-post_copy() {
- # TODO This is garbage: Assumes we use our own systemd, hard-coded path
- # Fix this or get rid of rsyslogd
- # pwd = module's build dir
- mkdir -p "${TARGET_BUILD_DIR}/var/spool/rsyslog"
-
- local RSL="$(find /usr/lib/ /lib/ -name rsyslog.service | head -1)"
- [ -z "$RSL" -o ! -e "$RSL" ] && perror "rsyslog.service not found on vorlage"
- [ ! -d "$TARGET_BUILD_DIR/etc/systemd/system" ] && mkdir -p "$TARGET_BUILD_DIR/etc/systemd/system"
- cp -L "$RSL" "$TARGET_BUILD_DIR/etc/systemd/system/"
- sed -i 's/\/bin\/systemctl/-\/usr\/bin\/systemctl/g' "${TARGET_BUILD_DIR}"/etc/systemd/system/rsyslog.service
- sed -i 's/^Before=udev/#&/' "${TARGET_BUILD_DIR}"/etc/systemd/system/rsyslog.service
-
- # activate the service
- ln -sf rsyslog.service "${TARGET_BUILD_DIR}"/etc/systemd/system/syslog.service
- [ ! -d "${TARGET_BUILD_DIR}"/etc/systemd/system/basic.target.wants ] && mkdir -p "${TARGET_BUILD_DIR}"/etc/systemd/system/basic.target.wants
- ln -sf ../syslog.service "${TARGET_BUILD_DIR}"/etc/systemd/system/basic.target.wants/syslog.service
- # TODO: more checks
- sed -i.bak '/^After\=var-run.mount/d;/^Requires\=var-run.mount/d;/^Before\=syslog.target/d' "$TARGET_BUILD_DIR/etc/systemd/system/rsyslog.service"
-}
diff --git a/core/modules/rsyslogd/module.conf b/core/modules/rsyslogd/module.conf
deleted file mode 100644
index 2718f02b..00000000
--- a/core/modules/rsyslogd/module.conf
+++ /dev/null
@@ -1,11 +0,0 @@
-#!/bin/bash
-REQUIRED_BINARIES="
- rsyslogd
-"
-REQUIRED_FILES="
- /etc/rsyslog.conf
-"
-REQUIRED_DIRECTORIES="
- /usr/$LIB64/rsyslog
- /usr/lib/x86_64-linux-gnu/rsyslog
-"
diff --git a/core/modules/rsyslogd/module.conf.centos b/core/modules/rsyslogd/module.conf.centos
deleted file mode 100644
index 0063adbf..00000000
--- a/core/modules/rsyslogd/module.conf.centos
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/bash
-REQUIRED_CONTENT_PACKAGES="
- rsyslog
-"
diff --git a/core/modules/rsyslogd/module.conf.debian b/core/modules/rsyslogd/module.conf.debian
deleted file mode 100644
index e897dee2..00000000
--- a/core/modules/rsyslogd/module.conf.debian
+++ /dev/null
@@ -1,5 +0,0 @@
-#!/bin/bash
-REQUIRED_CONTENT_PACKAGES="
- rsyslog
-"
-
diff --git a/core/modules/rsyslogd/module.conf.fedora b/core/modules/rsyslogd/module.conf.fedora
deleted file mode 100644
index 0063adbf..00000000
--- a/core/modules/rsyslogd/module.conf.fedora
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/bash
-REQUIRED_CONTENT_PACKAGES="
- rsyslog
-"
diff --git a/core/modules/rsyslogd/module.conf.opensuse b/core/modules/rsyslogd/module.conf.opensuse
deleted file mode 100644
index 773da57b..00000000
--- a/core/modules/rsyslogd/module.conf.opensuse
+++ /dev/null
@@ -1,7 +0,0 @@
-#!/bin/bash
-REQUIRED_CONTENT_PACKAGES="
- rsyslog
-"
-REQUIRED_BINARIES+="
- rsyslog-service-prepare
-"
diff --git a/core/modules/rsyslogd/module.conf.opensuse.13.2 b/core/modules/rsyslogd/module.conf.opensuse.13.2
deleted file mode 100644
index cb4570d9..00000000
--- a/core/modules/rsyslogd/module.conf.opensuse.13.2
+++ /dev/null
@@ -1,10 +0,0 @@
-#!/bin/bash
-REQUIRED_CONTENT_PACKAGES="
- rsyslog
-"
-REQUIRED_INSTALLED_PACKAGES="
- rsyslog
-"
-REQUIRED_BINARIES+="
- rsyslog-service-prepare
-"
diff --git a/core/modules/rsyslogd/module.conf.ubuntu b/core/modules/rsyslogd/module.conf.ubuntu
deleted file mode 100644
index e897dee2..00000000
--- a/core/modules/rsyslogd/module.conf.ubuntu
+++ /dev/null
@@ -1,5 +0,0 @@
-#!/bin/bash
-REQUIRED_CONTENT_PACKAGES="
- rsyslog
-"
-
diff --git a/core/modules/run-virt/data/opt/openslx/scripts/vmchooser-xml_filter b/core/modules/run-virt/data/opt/openslx/scripts/vmchooser-xml_filter
deleted file mode 100755
index 2d2df304..00000000
--- a/core/modules/run-virt/data/opt/openslx/scripts/vmchooser-xml_filter
+++ /dev/null
@@ -1,75 +0,0 @@
-#!/bin/bash
-# Probably needs bash somewhere
-# -----------------------------------------------------------------------------
-#
-# Copyright (c) 2007..2018 bwLehrpool-Projektteam
-#
-# This program/file is free software distributed under the GPL version 2.
-# See https://www.gnu.org/licenses/old-licenses/gpl-2.0-standalone.html
-#
-# If you have any feedback please consult https://bwlehrpool.de and
-# send your feedback to support@bwlehrpool.de.
-#
-# General information about bwLehrpool can be found at https://bwlehrpool.de
-#
-# -----------------------------------------------------------------------------
-# xmlfilter.sh
-# - This script is invoked by the vmchooser tool. It simply filters xml-
-# files (taking the path to these files in $1). You might modify it in any
-# way to match your needs, e.g. ask some database instead. You can re-
-# implement it in any other programming language too. You simply have to
-# return a list of proper xml files to be interpreted by the vmchooser
-# binary). Please check for vmchooser.sh too ...
-# -----------------------------------------------------------------------------
-
-# This script .
-#
-# currently:
-# - filter for slxgrp (which comes from /etc/machine-setup)
-#
-
-# include default directories
-. /opt/openslx/config
-
-if [ -f "${OPENSLX_DEFAULT_CONFDIR}/plugins/vmchooser/vmchooser.conf" ]; then
- . "${OPENSLX_DEFAULT_CONFDIR}/plugins/vmchooser/vmchooser.conf"
-fi
-
-function handlePersistentVM() {
- if grep --extended-regexp -q "<persistent param=\"(|.+:)$USER(|:.+)\"" "$1"; then
- # If this virtual machine is useable as persistent version for current
- # user we provide an additional persistent version.
- # TODO: This evil black magic needs to be rewritten some day (by someone who understands it)
- local originalImagePath=$(grep -io '<image_name param=.*"' "$1" | sed -e "s/&.*;/; /g" | awk -F '"' '{ print $2 }')
- local imageName=$(basename "$originalImagePath")
- eval export SLX_VM_PERSISTENT_PATH="${SLX_VM_PERSISTENT_PATH}" && \
- local imagePath="${SLX_VM_PERSISTENT_PATH}${imageName}"
- local persistentConfigVersionFilePath="$(mktemp --directory)/$(basename "$1")"
- local vmchooserFilePath="$(dirname "$0")/vmchooser-clc"
- if [ ! -f "$vmchooserFilePath" ]; then
- vmchooserFilePath='/opt/openslx/scripts/vmchooser-clc'
- fi
- "$vmchooserFilePath" "$1" "$persistentConfigVersionFilePath" \
- --create-persistent-config "$imagePath" && \
- echo "$persistentConfigVersionFilePath"
- fi
-}
-
-for FILE in $(find -L "$1" -iname "*.xml"); do
- # filter all xmls which aren't set active
- grep -i -q "<active param=.*true.*" "$FILE" || continue
- # HACK: filter all virtualbox images, as vbox is not ready yet
- grep -i -q "<virtualmachine param=.*virtualbox.*" "$FILE" && continue
- if [ -n "${SLX_VM_POOL_FILTER}" ]; then
- # filter all xmls with pool-param not equal to vmchooser::env
- if [ $(grep "<pools param=\"${SLX_VM_POOL_FILTER}\"" "$FILE" | wc -l) -eq 1 ]; then
- handlePersistentVM "$FILE"
- echo "$FILE"
- fi
- else
- handlePersistentVM "$FILE"
- # if there is no pool set, just take all available xmls
- echo "$FILE"
- fi
-done
-
diff --git a/core/modules/run-virt/data/opt/openslx/system-check/hooks.d/30-run-virt b/core/modules/run-virt/data/opt/openslx/system-check/hooks.d/30-run-virt
index 27d85164..61cba10b 100755
--- a/core/modules/run-virt/data/opt/openslx/system-check/hooks.d/30-run-virt
+++ b/core/modules/run-virt/data/opt/openslx/system-check/hooks.d/30-run-virt
@@ -2,7 +2,7 @@
. /opt/openslx/config
. /opt/openslx/bin/slx-tools
-. /run/hwinfo
+. /run/openslx/hwinfo
if [ -n "$1" ]; then
exec >> "$1"
diff --git a/core/modules/run-virt/data/opt/openslx/vmchooser/data/linux/includes/00_vars.inc b/core/modules/run-virt/data/opt/openslx/vmchooser/data/linux/includes/00_vars.inc
index cf6592f1..df76c93e 100755
--- a/core/modules/run-virt/data/opt/openslx/vmchooser/data/linux/includes/00_vars.inc
+++ b/core/modules/run-virt/data/opt/openslx/vmchooser/data/linux/includes/00_vars.inc
@@ -57,6 +57,13 @@ SCRIPTEXT=$(grep scriptExt "$DISKMOUNTDIR/openslx.ini" | cut -f 2 -d "=")
MUTESOUND=$(grep muteSound "$DISKMOUNTDIR/openslx.ini" | cut -f 2 -d "=")
SOUNDVOL="100%"
+# Edit mode, VM is persistent
+val=$( grep '^persistentMode=' "$SLXCONFIGFILE" | cut -d '=' -f 2)
+PERSISTENT_MODE=
+if [ -n "$val" ] && [ "$val" -ne 0 ]; then
+ PERSISTENT_MODE=1
+fi
+
##### Programs interfering with resolution setting #####
KILLRESPROGS="kscreen_backend_launcher"
diff --git a/core/modules/run-virt/data/opt/openslx/vmchooser/data/linux/includes/10_functions.inc b/core/modules/run-virt/data/opt/openslx/vmchooser/data/linux/includes/10_functions.inc
index 8b394334..85f185a3 100644
--- a/core/modules/run-virt/data/opt/openslx/vmchooser/data/linux/includes/10_functions.inc
+++ b/core/modules/run-virt/data/opt/openslx/vmchooser/data/linux/includes/10_functions.inc
@@ -121,18 +121,19 @@ function mount_share()
unset PASSWD
fi
if [ "$ERR" -eq 0 ]; then
- logger "openslx sharemapper: Linking ${SHARENAME}, if possible."
+ if [ -z "$PERSISTENT_MODE" ]; then
+ logger "openslx sharemapper: Linking ${SHARENAME}, if possible."
- if [ -n "${SHARENAME}" ]; then
- ln -s "$USERSHAREDIR" "${USERDESKTOP}"/"$SHARENAME"
- chown "$LOCALUSER" "${USERDESKTOP}"/"$SHARENAME"
- logger "openslx sharemapper: ${SHARENAME} linked."
- elif [ -n "${SHARELETTER}" ]; then
- ln -s "$USERSHAREDIR" "${USERDESKTOP}"/"$SHARELETTER"
- chown "$LOCALUSER" "${USERDESKTOP}"/"$SHARELETTER"
- logger "openslx sharemapper: No sharename found, share letter ${SHARELETTER} linked."
+ if [ -n "${SHARENAME}" ]; then
+ ln -sn "$USERSHAREDIR" "${USERDESKTOP}"/"$SHARENAME"
+ chown "$LOCALUSER" "${USERDESKTOP}"/"$SHARENAME"
+ logger "openslx sharemapper: ${SHARENAME} linked."
+ elif [ -n "${SHARELETTER}" ]; then
+ ln -sn "$USERSHAREDIR" "${USERDESKTOP}"/"$SHARELETTER"
+ chown "$LOCALUSER" "${USERDESKTOP}"/"$SHARELETTER"
+ logger "openslx sharemapper: No sharename found, share letter ${SHARELETTER} linked."
+ fi
fi
-
else
logger "openslx sharemapper: deleting previously creates share mount dir $USERSHAREDIR."
rmdir "$USERSHAREDIR" 2>/dev/null
@@ -150,21 +151,28 @@ function mount_home()
unset USER
unset PASSWD
- case $ERR in 1) logger "openslx sharemapper: could not mount home share."
+ case $ERR in
+ 1)
+ logger "openslx sharemapper: could not mount home share."
echo "Konnte Home-Laufwerk nicht einhängen!" >> "$USERLOGFILE"
;;
- 2) logger "openslx sharemapper: home share seems to be already mounted."
+ 2)
+ logger "openslx sharemapper: home share seems to be already mounted."
;;
- 0) logger "openslx sharemapper: Linking ${USERDESKTOP}/$(basename $USERHOMEDIR), if possible."
- # Changed: Link on Desktop no longer "Home-verz.", but same
- # name as last part of $USERHOMEDIR (-->PERSISTENT)
- # ln -s "$USERHOMEDIR" "${USERDESKTOP}"/"$SHARENAME"
- ln -s "$USERHOMEDIR" "${USERDESKTOP}"/$(basename "$USERHOMEDIR")
- chown "$LOCALUSER" "${USERDESKTOP}"/$(basename "$USERHOMEDIR")
- logger "openslx sharemapper: "${USERDESKTOP}"/$(basename "$USERHOMEDIR") linked."
+ 0)
+ if [ -z "$PERSISTENT_MODE" ]; then
+ logger "openslx sharemapper: Linking ${USERDESKTOP}/$(basename $USERHOMEDIR), if possible."
+ # Changed: Link on Desktop no longer "Home-verz.", but same
+ # name as last part of $USERHOMEDIR (-->PERSISTENT)
+ # ln -s "$USERHOMEDIR" "${USERDESKTOP}"/"$SHARENAME"
+ ln -sn "$USERHOMEDIR" "${USERDESKTOP}"/$(basename "$USERHOMEDIR")
+ chown "$LOCALUSER" "${USERDESKTOP}"/$(basename "$USERHOMEDIR")
+ logger "openslx sharemapper: "${USERDESKTOP}"/$(basename "$USERHOMEDIR") linked."
+ fi
+ ;;
+ *)
+ logger "openslx sharemapper: Unknown error level mounting home share."
;;
- *) logger "openslx sharemapper: Unknown error level mounting home share."
- ;;
esac
}
diff --git a/core/modules/run-virt/data/opt/openslx/vmchooser/data/openslx.exe b/core/modules/run-virt/data/opt/openslx/vmchooser/data/openslx.exe
index 7a9e5e6c..73c19530 100755
--- a/core/modules/run-virt/data/opt/openslx/vmchooser/data/openslx.exe
+++ b/core/modules/run-virt/data/opt/openslx/vmchooser/data/openslx.exe
Binary files differ
diff --git a/core/modules/run-virt/data/opt/openslx/vmchooser/run-virt-includes/download_vm_metadata.inc b/core/modules/run-virt/data/opt/openslx/vmchooser/run-virt-includes/download_vm_metadata.inc
index b18b8a66..c378cd5b 100644
--- a/core/modules/run-virt/data/opt/openslx/vmchooser/run-virt-includes/download_vm_metadata.inc
+++ b/core/modules/run-virt/data/opt/openslx/vmchooser/run-virt-includes/download_vm_metadata.inc
@@ -79,7 +79,7 @@ download_metadata_default() {
writelog "No cow token found in edit mode"
EXIT_TYPE=user EXIT_REASON="Admin-Modus aktiviert, aber kein cow-token vorgefunden." cleanexit 1
fi
- argx="?cow-user=$cow_token"
+ argx="?cow-user=$cow_token&cow-type=$VMCHOOSER_ADMIN_TYPE"
fi
# Try new unified .tar.gz way
@@ -102,6 +102,9 @@ download_metadata_default() {
writelog "Downloading metadata.tgz failed (RET=$RET, HTTP=$ERRCODE). Cannot start VM.
$( cat $WLOG )"
#
+ if [ -s "$TMPFILE" ] && grep -q --binary-files=without-match -E '[a-z]'; then
+ EXTRA_ERROR="$( cat "$TMPFILE" )"
+ fi
fi
}
diff --git a/core/modules/run-virt/data/opt/openslx/vmchooser/run-virt-includes/set_runvirt_hardware_variables.inc b/core/modules/run-virt/data/opt/openslx/vmchooser/run-virt-includes/set_runvirt_hardware_variables.inc
index 918a767f..2ae010b3 100644
--- a/core/modules/run-virt/data/opt/openslx/vmchooser/run-virt-includes/set_runvirt_hardware_variables.inc
+++ b/core/modules/run-virt/data/opt/openslx/vmchooser/run-virt-includes/set_runvirt_hardware_variables.inc
@@ -13,11 +13,11 @@
# Use: 00:FF:00 for firtual machines ;)
## Functions ##
-# Import /run/hwinfo variables
+# Import /run/openslx/hwinfo variables
import_hwinfo() {
- $(safesource "/run/hwinfo")
+ $(safesource "/run/openslx/hwinfo")
}
-# Sets the VM's hostname to the original hostname prefixed with a fixed string and its ID
+# Sets the VM's hostname to the original hostname prefixed with a fixed string and its ID
set_virt_hostname() {
declare -rg HOSTNAME="virt${VM_ID}-$(hostname)"
writelog "\tVM Hostname:\t\t$HOSTNAME"
@@ -115,10 +115,10 @@ set_virt_mac() {
# If the variables in virtualization.conf is set, "TRUE" is assigned,
# "FALSE" otherwise.
check_optical_drives() {
- # TODO This should only handle exam mode here, maybe even have one function
- # that prepares all exam mode related stuff. Then create the TRUE/FALSE
- # variables somewhere in the vmware plugin, since it's specific to that
- # plugin.
+ # TODO This should not handle exam mode here (and special cases in
+ # 100 other places), maybe have one function that prepares all exam
+ # mode related stuff. Then create the TRUE/FALSE variables somewhere
+ # in the vmware plugin, since it's specific to that plugin.
FLOPPY0="FALSE"
CDROM0="FALSE"
CDROM1="FALSE"
diff --git a/core/modules/run-virt/data/opt/openslx/vmchooser/run-virt-includes/setup_image_access.inc b/core/modules/run-virt/data/opt/openslx/vmchooser/run-virt-includes/setup_image_access.inc
index 9be00cfa..9f18d0ec 100644
--- a/core/modules/run-virt/data/opt/openslx/vmchooser/run-virt-includes/setup_image_access.inc
+++ b/core/modules/run-virt/data/opt/openslx/vmchooser/run-virt-includes/setup_image_access.inc
@@ -58,7 +58,7 @@ setup_dnbd3_cow () {
local dnbd3_diskfile=
mkdir "${TMPDIR}/cow"
- setup_dnbd3_common -L "${TMPDIR}/cow" -C "${SLX_VMCHOOSER_BASE_URL//"/vmchooser/"/"/cow/"}" --upload-uuid "$DMSD_COW_SESSION" --cow-stats-file --merge
+ setup_dnbd3_common -c "${TMPDIR}/cow" -C "${SLX_VMCHOOSER_BASE_URL//"/vmchooser/"/"/cow/"}" --upload-uuid "$DMSD_COW_SESSION" --cow-stats-file --merge
if isempty dnbd3_diskfile; then
slxlog "virt-dnbd3" "Failed to setup dnbd3-fuse with copy-on-write" "$dnbd3_tmplog"
@@ -77,8 +77,8 @@ setup_dnbd3_common () {
local TIMEOUT VM_DISKFILE_REVISION
rm -f -- "${DNBD3_EXITFLAG}"
(
- trap 'kill $dnbd3pid; exit' SIGTERM
- trap 'kill -SIGQUIT $dnbd3pid' SIGQUIT
+ trap 'writelog "[dnbd3-fuse] Received TERM"; kill $dnbd3pid; exit' SIGTERM
+ trap 'writelog "[dnbd3-fuse] Received QUIT"; kill -SIGQUIT $dnbd3pid' SIGQUIT
startup="$( date +%s )"
while [ "$( date +%s )" -lt "$(( startup + 4 ))" ]; do
dnbd3-fuse -f -o allow_other,max_readahead=262144 -h "${SLX_DNBD3_SERVERS}" -i "${SRC_IMG_RELATIVE}" "$@" "${DNBD3_MOUNT_POINT}" &> "${dnbd3_tmplog}" &
diff --git a/core/modules/run-virt/data/opt/openslx/vmchooser/run-virt-includes/vmchooser_runvirt_functions.inc b/core/modules/run-virt/data/opt/openslx/vmchooser/run-virt-includes/vmchooser_runvirt_functions.inc
index 3bfa8bb5..081c2e79 100644
--- a/core/modules/run-virt/data/opt/openslx/vmchooser/run-virt-includes/vmchooser_runvirt_functions.inc
+++ b/core/modules/run-virt/data/opt/openslx/vmchooser/run-virt-includes/vmchooser_runvirt_functions.inc
@@ -66,7 +66,7 @@ $BODY"
TITLE="ERROR"
fi
# Zenity should yield the nicest result
- # TODO the title is only set as the window name,
+ # Note: the title is only set as the window name,
# which cannot be seen without a window manager
zenity --error --title "$TITLE" --text "$BODY"
local RET=$?
@@ -151,7 +151,7 @@ cleanexit() {
done
fi
- # kill potential remaining background jobs
+ writelog "Killing remaining background jobs"
kill $(jobs -p)
# If we're not in debug mode AND got a clean exit code, remove all temporary files
@@ -276,7 +276,7 @@ safesource() {
while [ $# -gt 0 ]; do
# sanitze filename just to be sure as it is part of the eval coming later
# alphanumeric and - _ . should be enough for common file naming scheme
- if [[ ! "$1" =~ ^[a-zA-Z0-9./_-]+$ ]]; then
+ if [[ ! "$1" =~ ^[a-zA-Z0-9./_@-]+$ ]]; then
writelog "'$1' is a weird filename to source! Ignoring."
return 1
fi
@@ -330,14 +330,17 @@ call_post_source() {
# Helper called after sourcing the file via safesource. It just calls the
# functions in the same order they were registered.
run_post_source() {
- [ $# -ne 1 ] && writelog "'${FUNCNAME[0]}' expects one argument only! $# given." && return 1
+ if [ $# -ne 1 ]; then
+ writelog "'${FUNCNAME[0]}' expects one argument only! $# given."
+ EXIT_REASON="Interner Fehler in run_post_source" cleanexit 1
+ fi
local TASK RET
"$DEBUG" && writelog "Running post-source hooks for ${1}..."
for TASK in ${RUN_POST_SOURCE["${1}"]}; do
# sanity checks
if ! is_function "$TASK"; then
writelog "\tRegistered function '$TASK' is not a function!"
- return 1 # TODO maybe even cleanexit here as this seems very bad...
+ EXIT_REASON="Konnte safesource-hook nicht ausführen" cleanexit 1
fi
"$DEBUG" && writelog " - ${TASK}"
"${TASK}"
@@ -498,22 +501,6 @@ check_dep() {
isset ONEOF && return 1 || return 0
}
-# TODO: This is only used once in the whole script:
-# to cleanup the os string stored in the xml
-# Since the rework of this script, the os strings come from
-# the satellite server which already gives us a sanitized string
-# thus this function might not be needed anymore, as calling it on
-# new gen os strings effectively does nothing.
-# Removes any non-alphanumerical and non-hyphen chars
-# from the given parameters.
-clean_string() {
- if [ "$#" -ge 1 ]; then
- echo "$@" | tr 'A-Z' 'a-z' | tr -d -c 'a-z0-9\-'
- else
- tr 'A-Z' 'a-z' | tr -d -c 'a-z0-9\-'
- fi
-}
-
# Helper to detect given cpu flags.
# If more than one flag is given, assume that matching
# any of them is sufficient.
diff --git a/core/modules/run-virt/data/opt/openslx/vmchooser/run-virt.d/setup_firewall.inc b/core/modules/run-virt/data/opt/openslx/vmchooser/run-virt.d/setup_firewall.inc
index 92ff2186..097e9660 100644
--- a/core/modules/run-virt/data/opt/openslx/vmchooser/run-virt.d/setup_firewall.inc
+++ b/core/modules/run-virt/data/opt/openslx/vmchooser/run-virt.d/setup_firewall.inc
@@ -22,6 +22,5 @@ if check_dep slxfwtool; then
reg_feature_handler "firewall" "setup_firewall"
else
writelog "Could not find 'slxfwtool' in PATH: $PATH. Netrules firewall will not work!"
- error_user "Fehler" "Keine Unterstützung von veranstaltungspezifische Firewall-Regeln!"
- # TODO handle
+ error_user "Fehler" "Keine Unterstützung für veranstaltungspezifische Firewall-Regeln!"
fi
diff --git a/core/modules/run-virt/data/opt/openslx/vmchooser/run-virt.d/setup_network_shares.inc b/core/modules/run-virt/data/opt/openslx/vmchooser/run-virt.d/setup_network_shares.inc
deleted file mode 100644
index 8809b218..00000000
--- a/core/modules/run-virt/data/opt/openslx/vmchooser/run-virt.d/setup_network_shares.inc
+++ /dev/null
@@ -1,17 +0,0 @@
-#!/bin/bash
-# TODO this currently is not used.
-# This should be continued when we have a clear idea
-# how we will embed network shares in VMs
-set_network_shares() {
-
- # Add rw share for home dir
- HOME_SHARE_PATH="${HOME}/PERSISTENT"
- HOME_SHARE_NAME="home"
-
- # Add common share
- COMMON_SHARE_PATH="${HOME}/SHARE"
- COMMON_SHARE_NAME="share"
-}
-
-reg_feature_handler "netshares" "set_network_shares"
-
diff --git a/core/modules/run-virt/data/opt/openslx/vmchooser/run-virt.d/setup_sound.inc b/core/modules/run-virt/data/opt/openslx/vmchooser/run-virt.d/setup_sound.inc
index 7313ccb6..cb85f7c5 100644
--- a/core/modules/run-virt/data/opt/openslx/vmchooser/run-virt.d/setup_sound.inc
+++ b/core/modules/run-virt/data/opt/openslx/vmchooser/run-virt.d/setup_sound.inc
@@ -6,7 +6,7 @@
## Functions ##
setup_sound() {
unset VOL
- if $(safesource "/run/hwinfo") ; then
+ if $(safesource "/run/openslx/hwinfo") ; then
# On startup, the volume of Master, PCM, Speaker, etc. will be set to 100%
# Some hardware with builtin speakers might be a bit too loud then, so you can
# define an exception table here. Array key is "Manufacturer//Model"
@@ -64,8 +64,9 @@ set_sound_alsa() {
writelog --quiet "\tSound card count: $SOUND_CARD_COUNT"
# Adjust sound volume (playback)... Random mixer names we have encountered during testing
- # TODO instead of trying to set volume blindly, why not use 'amixer scontrols' to find
+ # Instead of trying to set volume blindly, why not use 'amixer scontrols' to find
# which mixer control exists and set these only?
+ # # ^ because lazy
writelog --quiet "Setting up volume to '$VOL' via amixer..."
amixer -q -c "$SOUND_CARD_INDEX" -s <<-EOF
diff --git a/core/modules/run-virt/data/opt/openslx/vmchooser/run-virt.d/setup_virtual_floppy.inc b/core/modules/run-virt/data/opt/openslx/vmchooser/run-virt.d/setup_virtual_floppy.inc
index 3b1d9f18..61c98b78 100644
--- a/core/modules/run-virt/data/opt/openslx/vmchooser/run-virt.d/setup_virtual_floppy.inc
+++ b/core/modules/run-virt/data/opt/openslx/vmchooser/run-virt.d/setup_virtual_floppy.inc
@@ -116,6 +116,13 @@ setup_virtual_floppy() {
# Enable openslx.exe debug output if we're running in debug mode
local debug=
$DEBUG && debug=1
+ local editmode=0
+ if is_on "$VMCHOOSER_ADMIN_MODE"; then
+ editmode=1
+ if [ -n "$DMSD_COW_SESSION" ]; then
+ resolution=
+ fi
+ fi
cat > "${FLOPPYDIR}/openslx.ini" <<-EOF
[openslx]
@@ -133,6 +140,7 @@ setup_virtual_floppy() {
noHomeWarn=${SHARE_NO_HOME_WARN}
runMode=${SLX_RUNMODE_MODULE}
debug=${debug}
+ persistentMode=${editmode}
[remap]
documents=${SHARE_DOCUMENTS}
diff --git a/core/modules/run-virt/data/opt/openslx/vmchooser/vmchooser-run_virt b/core/modules/run-virt/data/opt/openslx/vmchooser/vmchooser-run_virt
index dfebebe7..f2fa4a89 100755
--- a/core/modules/run-virt/data/opt/openslx/vmchooser/vmchooser-run_virt
+++ b/core/modules/run-virt/data/opt/openslx/vmchooser/vmchooser-run_virt
@@ -192,7 +192,8 @@ main() {
(
cntr=0
while true; do
- cowgui --session "$DMSD_COW_SESSION" --url "$cowurl" --pid "$DNBD3_PID" && break
+ writelog "Launching CoW-GUI"
+ cowgui --sessionid "$DMSD_COW_SESSION" --url "$cowurl" --pid "$DNBD3_PID" --status "$TMPDIR/cow/status" && break
# Unclean exit, let's see if it's worth relaunching
state="$( curl -m 3 -sS -L "$cowurl/status/$DMSD_COW_SESSION" | jq -r .state )"
[ -z "$state" ] && break
@@ -201,25 +202,40 @@ main() {
[ "$state" = "COMPLETELY_DONE" ] && break
(( cntr++ > 10 )) && break
done
- [ -n "$vmpidfile" ] && kill "$( cat "$vmpidfile" )"
+ writelog "Final cow state: $( curl -m 3 -sS -L "$cowurl/status/$DMSD_COW_SESSION" )"
+ [ -s "$vmpidfile" ] && kill "$( cat "$vmpidfile" )"
) &
cowpid=$!
fi
writelog "VM command: ${VIRTCMD} ${VIRTCMDOPTS[*]}"
+ # Prepare short config dir, needed because libvirt is stupid and likes
+ # to create very long UNIX socket names and then chokes on them.
+ cd="$( mktemp -d "/tmp/lvXXX" )"
+ if [ -z "$cd" ]; then
+ cd="/tmp/lv${UID}$(( RANDOM % 10000 ))"
+ rm -rf -- "$cd"
+ mkdir -p "$cd"
+ fi
# This will start the VM
writelog "---------- BEGIN VM command output ----------"
local retval vmpid
- "${VIRTCMD}" "${VIRTCMDOPTS[@]}" &>> "${LOGFILE}" &
+ XDG_CONFIG_HOME="$cd" "${VIRTCMD}" "${VIRTCMDOPTS[@]}" &>> "${LOGFILE}" &
vmpid=$!
[ -n "$vmpidfile" ] && echo "$vmpid" > "$vmpidfile"
wait "$vmpid"
retval=${?}
- writelog "---------- END VM command output ----------"
+ writelog "------- END VM command output ($retval) --------"
- [ -n "$DNBD3_PID" ] && kill "$DNBD3_PID"
+ if [ -n "$DNBD3_PID" ]; then
+ writelog "Killing dnbd3-fuse"
+ kill "$DNBD3_PID"
+ fi
# If cow, wait for GUI
- [ -n "$cowpid" ] && wait "$cowpid"
+ if [ -n "$cowpid" ]; then
+ writelog "Waiting for CoW-GUI"
+ wait "$cowpid"
+ fi
run_hooks "post-exec" "$PLUGIN_ID" "$IMGUUID"
diff --git a/core/modules/run-virt/winres/src/winres.c b/core/modules/run-virt/winres/src/winres.c
index e8e03947..1011e1e8 100644
--- a/core/modules/run-virt/winres/src/winres.c
+++ b/core/modules/run-virt/winres/src/winres.c
@@ -74,6 +74,7 @@ static BOOL _passCreds = FALSE;
static BOOL _noHomeWarn = FALSE;
static BOOL _deletedCredentials = FALSE;
static BOOL _scriptDone = TRUE, _mountDone = TRUE; // Will be set to false if we actually wait for something...
+static BOOL _persistentMode = FALSE; // VM being edited, don't do any changes to system (shortcuts, regedit, )
static char *shost = NULL, *sport = NULL, *suser = NULL, *spass = NULL;
#define SCRIPTFILELEN (50)
@@ -106,6 +107,9 @@ static HRESULT createFolderShortcut(wchar_t* sTargetfile, wchar_t* sLinkfile, wc
static void alog(const char *fmt, ...)
{
+ if (_persistentMode)
+ return;
+
FILE *f = _wfopen(logFile, L"a+");
if (f == NULL) return;
time_t raw = time(NULL);
@@ -124,6 +128,9 @@ static void alog(const char *fmt, ...)
static void wlog(const wchar_t *fmt, ...)
{
+ if (_persistentMode)
+ return;
+
wchar_t wbuffer[1000];
char abuffer[1000];
va_list args;
@@ -431,6 +438,9 @@ int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine
if (hUser32 == NULL) {
alog("Cannot load user32.dll");
}
+ if (GetPrivateProfileIntA("openslx", "persistentMode", 0, SETTINGS_FILE) != 0) {
+ _persistentMode = TRUE;
+ }
winVer.dwOSVersionInfoSize = sizeof(winVer);
BOOL retVer = GetVersionEx(&winVer);
CoInitializeEx(NULL, COINIT_APARTMENTTHREADED | COINIT_DISABLE_OLE1DDE);
@@ -918,6 +928,9 @@ static int setResVMware(struct resolution *res, int nres)
static int optimizeForRemote()
{
+ if (_persistentMode)
+ return;
+
LONG ret;
HKEY hKey;
@@ -1499,6 +1512,9 @@ static uint8_t* hex2bin(char *szHexString)
static HRESULT createFolderShortcut(wchar_t* targetDir, wchar_t* linkFile, wchar_t* comment)
{
+ if (_persistentMode)
+ return S_OK;
+
HRESULT hRes; /* Returned COM result code */
IShellLink* pShellLink; /* IShellLink object pointer */
IPersistFile* pPersistFile; /* IPersistFile object pointer */
@@ -1551,6 +1567,9 @@ static HRESULT createFolderShortcut(wchar_t* targetDir, wchar_t* linkFile, wchar
static BOOL patchRegPath(BOOL *patchOk, BOOL *anyMapped, HKEY hKey, wchar_t *letter, wchar_t *value, ...)
{
+ if (_persistentMode)
+ return;
+
wchar_t *folder = NULL;
wchar_t first[MAX_PATH] = {0};
wchar_t path[MAX_PATH];
@@ -1612,6 +1631,9 @@ typedef BOOL (WINAPI *P32TYPE)(HANDLE, PROCESSENTRY32W*);
static void patchUserPaths(wchar_t *letter)
{
+ if (_persistentMode)
+ return;
+
LONG ret;
HKEY hKey;
BOOL patchOk = TRUE;
diff --git a/core/modules/samba/module.build b/core/modules/samba/module.build
deleted file mode 100644
index a5cbb6b6..00000000
--- a/core/modules/samba/module.build
+++ /dev/null
@@ -1,12 +0,0 @@
-#!/bin/bash
-fetch_source() {
- :
-}
-
-build() {
- :
-}
-
-post_copy() {
- :
-}
diff --git a/core/modules/samba/module.conf b/core/modules/samba/module.conf
deleted file mode 100644
index ac4bd848..00000000
--- a/core/modules/samba/module.conf
+++ /dev/null
@@ -1,25 +0,0 @@
-#!/bin/bash
-REQUIRED_BINARIES="
- smbd
- nmbd
- smbclient
- winbindd
- smbnetfs
- fusermount
- keyctl
- request-key
- key.dns_resolver
-"
-REQUIRED_FILES="
- /etc/smbnetfs.conf
- /etc/request-key.conf
- /etc/request-key.d
-"
-# TODO dont copy all the binaries, strip the list down.
-REQUIRED_DIRECTORIES="
- /usr/bin
-"
-# TODO check if the /var/lib/samba/*.tdg can be generated by mltk.
-REQUIRED_SYSTEM_FILES="
- /var/lib/samba
-"
diff --git a/core/modules/samba/module.conf.debian b/core/modules/samba/module.conf.debian
deleted file mode 100644
index 546f3dbd..00000000
--- a/core/modules/samba/module.conf.debian
+++ /dev/null
@@ -1,21 +0,0 @@
-#!/bin/bash
-REQUIRED_INSTALLED_PACKAGES="
- samba
- smbclient
- winbind
- krb5-user
- cifs-utils
- smbnetfs
- fuse
- keyutils
-"
-REQUIRED_CONTENT_PACKAGES="
- samba
- smbclient
- winbind
- krb5-user
- cifs-utils
- smbnetfs
- fuse
- keyutils
-"
diff --git a/core/modules/samba/module.conf.opensuse b/core/modules/samba/module.conf.opensuse
deleted file mode 100644
index 8e6e1436..00000000
--- a/core/modules/samba/module.conf.opensuse
+++ /dev/null
@@ -1,25 +0,0 @@
-#!/bin/bash
-REQUIRED_INSTALLED_PACKAGES="
- samba
- samba-client
- samba-winbind
- krb5-client
- cifs-utils
- smbnetfs
- fuse
- keyutils
-"
-REQUIRED_CONTENT_PACKAGES="
- samba
- samba-client
- samba-winbind
- krb5-client
- cifs-utils
- smbnetfs
- fuse
- keyutils
-"
-
-# This is just a list for grep excludes used in samba.build opensuse branch
-# Please use pipe symbol and backslash (\|) as separator as being used in grep
-REQUIRED_PACKET_FILES_BLACKLIST="/etc/samba/smbpasswd\|/ding/dong"
diff --git a/core/modules/samba/module.conf.ubuntu b/core/modules/samba/module.conf.ubuntu
deleted file mode 100644
index 546f3dbd..00000000
--- a/core/modules/samba/module.conf.ubuntu
+++ /dev/null
@@ -1,21 +0,0 @@
-#!/bin/bash
-REQUIRED_INSTALLED_PACKAGES="
- samba
- smbclient
- winbind
- krb5-user
- cifs-utils
- smbnetfs
- fuse
- keyutils
-"
-REQUIRED_CONTENT_PACKAGES="
- samba
- smbclient
- winbind
- krb5-user
- cifs-utils
- smbnetfs
- fuse
- keyutils
-"
diff --git a/core/modules/slxbrowser/module.conf b/core/modules/slxbrowser/module.conf
index cbf2e6b1..e937fe8a 100644
--- a/core/modules/slxbrowser/module.conf
+++ b/core/modules/slxbrowser/module.conf
@@ -2,7 +2,7 @@
REQUIRED_MODULES="
qt5core
"
-REQUIRED_GIT="git://git.openslx.org/openslx-ng/slxbrowser.git"
+REQUIRED_GIT="https://git.openslx.org/openslx-ng/slxbrowser.git"
REQUIRED_PREFIX="/opt/openslx/bin"
REQUIRED_BINARIES="slxbrowser"
REQUIRED_LIBRARIES="
diff --git a/core/modules/speedcheck/module.conf b/core/modules/speedcheck/module.conf
index 69fb2428..76b2e99e 100644
--- a/core/modules/speedcheck/module.conf
+++ b/core/modules/speedcheck/module.conf
@@ -1,4 +1,4 @@
#!/bin/bash
-REQUIRED_GIT="git://git.openslx.org/openslx-ng/speedcheck.git"
+REQUIRED_GIT="https://git.openslx.org/openslx-ng/speedcheck.git"
REQUIRED_PREFIX="/opt/openslx/bin"
REQUIRED_BINARIES="speedcheck"
diff --git a/core/modules/systemd/README b/core/modules/systemd/README
deleted file mode 100644
index f84283d8..00000000
--- a/core/modules/systemd/README
+++ /dev/null
@@ -1,12 +0,0 @@
-To activate debug level, add to units under [Service] this line
-Environment=SYSTEMD_LOG_LEVEL=debug
-
-Note on systemd-versions: Some systemds below 204 (verified in
-systemd-195) seem to need libpci-dev (or the openSuse equivalent).
-
-
-Another note on our compiled systemd-udevd:
-So far it has not been possible to reach a fully functional udev
-system in view of the perceived systemd-udevd limitation about
-evaluating the variable ENV{DEVTYPE}=="usb_device" in udev rule
-scripts.
diff --git a/core/modules/systemd/TODO b/core/modules/systemd/TODO
deleted file mode 100644
index 4b17eb88..00000000
--- a/core/modules/systemd/TODO
+++ /dev/null
@@ -1,2 +0,0 @@
-libkmod: libkmod gets installed systemwide at present. This should not
- be the case.
diff --git a/core/modules/systemd/data/etc/pam.d/systemd-user b/core/modules/systemd/data/etc/pam.d/systemd-user
deleted file mode 100644
index a8d4ce36..00000000
--- a/core/modules/systemd/data/etc/pam.d/systemd-user
+++ /dev/null
@@ -1,12 +0,0 @@
-# This file is part of systemd.
-#
-# Used by systemd --user instances.
-
-@include common-account
-
-session required pam_selinux.so close
-session required pam_selinux.so nottys open
-session required pam_loginuid.so
-@include common-session-noninteractive
-session optional pam_systemd.so
-
diff --git a/core/modules/systemd/data/etc/systemd/journald.conf b/core/modules/systemd/data/etc/systemd/journald.conf
deleted file mode 100644
index 80ddb673..00000000
--- a/core/modules/systemd/data/etc/systemd/journald.conf
+++ /dev/null
@@ -1,41 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-#
-# Entries in this file show the compile time defaults.
-# You can change settings by editing this file.
-# Defaults can be restored by simply deleting this file.
-#
-# See journald.conf(5) for details.
-
-[Journal]
-#Storage=auto
-#Compress=yes
-#Seal=yes
-#SplitMode=uid
-#SyncIntervalSec=5m
-#RateLimitIntervalSec=30s
-#RateLimitBurst=1000
-#SystemMaxUse=
-#SystemKeepFree=
-#SystemMaxFileSize=
-#SystemMaxFiles=100
-RuntimeMaxUse=20M
-#RuntimeKeepFree=
-#RuntimeMaxFileSize=
-#RuntimeMaxFiles=100
-#MaxRetentionSec=
-#MaxFileSec=1month
-ForwardToSyslog=yes
-#ForwardToKMsg=no
-#ForwardToConsole=no
-#ForwardToWall=yes
-#TTYPath=/dev/console
-#MaxLevelStore=debug
-#MaxLevelSyslog=debug
-#MaxLevelKMsg=notice
-#MaxLevelConsole=info
-#MaxLevelWall=emerg
diff --git a/core/modules/systemd/data/etc/systemd/logind.conf b/core/modules/systemd/data/etc/systemd/logind.conf
deleted file mode 100644
index eda23484..00000000
--- a/core/modules/systemd/data/etc/systemd/logind.conf
+++ /dev/null
@@ -1,37 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-#
-# Entries in this file show the compile time defaults.
-# You can change settings by editing this file.
-# Defaults can be restored by simply deleting this file.
-#
-# See logind.conf(5) for details.
-
-[Login]
-#NAutoVTs=6
-#ReserveVT=6
-KillUserProcesses=yes
-#KillOnlyUsers=
-#KillExcludeUsers=root
-#InhibitDelayMaxSec=5
-HandlePowerKey=poweroff
-#HandleSuspendKey=suspend
-#HandleHibernateKey=hibernate
-#HandleLidSwitch=suspend
-#HandleLidSwitchDocked=ignore
-#PowerKeyIgnoreInhibited=no
-#SuspendKeyIgnoreInhibited=no
-#HibernateKeyIgnoreInhibited=no
-#LidSwitchIgnoreInhibited=yes
-#HoldoffTimeoutSec=30s
-IdleAction=ignore
-#IdleActionSec=30min
-RuntimeDirectorySize=5%
-#RemoveIPC=yes
-#InhibitorsMax=8192
-#SessionsMax=8192
-#UserTasksMax=33%
diff --git a/core/modules/systemd/data/etc/systemd/system.conf b/core/modules/systemd/data/etc/systemd/system.conf
deleted file mode 100644
index 7efc9b25..00000000
--- a/core/modules/systemd/data/etc/systemd/system.conf
+++ /dev/null
@@ -1,62 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-#
-# Entries in this file show the compile time defaults.
-# You can change settings by editing this file.
-# Defaults can be restored by simply deleting this file.
-#
-# See systemd-system.conf(5) for details.
-
-[Manager]
-#LogLevel=info
-#LogTarget=journal-or-kmsg
-#LogColor=yes
-#LogLocation=no
-#DumpCore=yes
-#ShowStatus=yes
-#CrashChangeVT=no
-#CrashShell=no
-#CrashReboot=no
-CtrlAltDelBurstAction=reboot-force
-#CPUAffinity=1 2
-#JoinControllers=cpu,cpuacct net_cls,net_prio
-#RuntimeWatchdogSec=0
-#ShutdownWatchdogSec=10min
-#CapabilityBoundingSet=
-#SystemCallArchitectures=
-#TimerSlackNSec=
-#DefaultTimerAccuracySec=1min
-#DefaultStandardOutput=journal
-#DefaultStandardError=inherit
-#DefaultTimeoutStartSec=90s
-#DefaultTimeoutStopSec=90s
-#DefaultRestartSec=100ms
-#DefaultStartLimitIntervalSec=10s
-#DefaultStartLimitBurst=5
-#DefaultEnvironment=
-#DefaultCPUAccounting=no
-#DefaultIOAccounting=no
-#DefaultBlockIOAccounting=no
-#DefaultMemoryAccounting=no
-#DefaultTasksAccounting=yes
-#DefaultTasksMax=15%
-#DefaultLimitCPU=
-#DefaultLimitFSIZE=
-#DefaultLimitDATA=
-#DefaultLimitSTACK=
-#DefaultLimitCORE=
-#DefaultLimitRSS=
-#DefaultLimitNOFILE=
-#DefaultLimitAS=
-#DefaultLimitNPROC=
-#DefaultLimitMEMLOCK=
-#DefaultLimitLOCKS=
-#DefaultLimitSIGPENDING=
-#DefaultLimitMSGQUEUE=
-#DefaultLimitNICE=
-#DefaultLimitRTPRIO=
-#DefaultLimitRTTIME=
diff --git a/core/modules/systemd/data/etc/systemd/system/systemd-halt.service b/core/modules/systemd/data/etc/systemd/system/systemd-halt.service
deleted file mode 100644
index a13d67c6..00000000
--- a/core/modules/systemd/data/etc/systemd/system/systemd-halt.service
+++ /dev/null
@@ -1,17 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Halt
-Documentation=man:systemd-halt.service(8)
-DefaultDependencies=no
-Requires=shutdown.target final.target
-After=shutdown.target final.target
-
-[Service]
-Type=oneshot
-ExecStart=/usr/bin/systemctl --force halt
diff --git a/core/modules/systemd/data/etc/systemd/system/systemd-kexec.service b/core/modules/systemd/data/etc/systemd/system/systemd-kexec.service
deleted file mode 100644
index a34dc9e0..00000000
--- a/core/modules/systemd/data/etc/systemd/system/systemd-kexec.service
+++ /dev/null
@@ -1,19 +0,0 @@
-# SPDX-License-Identifier: LGPL-2.1+
-#
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Reboot via kexec
-Documentation=man:systemd-halt.service(8)
-DefaultDependencies=no
-Requires=shutdown.target final.target
-After=shutdown.target final.target
-
-[Service]
-Type=oneshot
-ExecStart=/usr/bin/systemctl --force kexec
diff --git a/core/modules/systemd/data/etc/systemd/system/systemd-poweroff.service b/core/modules/systemd/data/etc/systemd/system/systemd-poweroff.service
deleted file mode 100644
index eede0eab..00000000
--- a/core/modules/systemd/data/etc/systemd/system/systemd-poweroff.service
+++ /dev/null
@@ -1,17 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Power-Off
-Documentation=man:systemd-halt.service(8)
-DefaultDependencies=no
-Requires=shutdown.target final.target
-After=shutdown.target final.target
-
-[Service]
-Type=oneshot
-ExecStart=/usr/bin/systemctl --force poweroff
diff --git a/core/modules/systemd/data/etc/systemd/system/systemd-reboot.service b/core/modules/systemd/data/etc/systemd/system/systemd-reboot.service
deleted file mode 100644
index b2d27c8e..00000000
--- a/core/modules/systemd/data/etc/systemd/system/systemd-reboot.service
+++ /dev/null
@@ -1,17 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Reboot
-Documentation=man:systemd-halt.service(8)
-DefaultDependencies=no
-Requires=shutdown.target final.target
-After=shutdown.target final.target
-
-[Service]
-Type=oneshot
-ExecStart=/usr/bin/systemctl --force reboot
diff --git a/core/modules/systemd/data/lib/systemd/system/autovt@.service b/core/modules/systemd/data/lib/systemd/system/autovt@.service
deleted file mode 120000
index fe40e8fd..00000000
--- a/core/modules/systemd/data/lib/systemd/system/autovt@.service
+++ /dev/null
@@ -1 +0,0 @@
-getty@.service \ No newline at end of file
diff --git a/core/modules/systemd/data/lib/systemd/system/basic.target b/core/modules/systemd/data/lib/systemd/system/basic.target
deleted file mode 100644
index 6b9cfe4c..00000000
--- a/core/modules/systemd/data/lib/systemd/system/basic.target
+++ /dev/null
@@ -1,14 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Basic System
-Documentation=man:systemd.special(7)
-Requires=sysinit.target
-Wants=sockets.target timers.target paths.target
-After=sysinit.target sockets.target timers.target paths.target
-RefuseManualStart=yes
diff --git a/core/modules/systemd/data/lib/systemd/system/bluetooth.target b/core/modules/systemd/data/lib/systemd/system/bluetooth.target
deleted file mode 100644
index dd4ae14c..00000000
--- a/core/modules/systemd/data/lib/systemd/system/bluetooth.target
+++ /dev/null
@@ -1,11 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Bluetooth
-Documentation=man:systemd.special(7)
-StopWhenUnneeded=yes
diff --git a/core/modules/systemd/data/lib/systemd/system/busnames.target b/core/modules/systemd/data/lib/systemd/system/busnames.target
deleted file mode 100644
index 5e866b40..00000000
--- a/core/modules/systemd/data/lib/systemd/system/busnames.target
+++ /dev/null
@@ -1,10 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Bus Names
-Documentation=man:systemd.special(7)
diff --git a/core/modules/systemd/data/lib/systemd/system/busnames.target.wants/org.freedesktop.login1.busname b/core/modules/systemd/data/lib/systemd/system/busnames.target.wants/org.freedesktop.login1.busname
deleted file mode 120000
index 9d1bd813..00000000
--- a/core/modules/systemd/data/lib/systemd/system/busnames.target.wants/org.freedesktop.login1.busname
+++ /dev/null
@@ -1 +0,0 @@
-../org.freedesktop.login1.busname \ No newline at end of file
diff --git a/core/modules/systemd/data/lib/systemd/system/busnames.target.wants/org.freedesktop.machine1.busname b/core/modules/systemd/data/lib/systemd/system/busnames.target.wants/org.freedesktop.machine1.busname
deleted file mode 120000
index 068b1676..00000000
--- a/core/modules/systemd/data/lib/systemd/system/busnames.target.wants/org.freedesktop.machine1.busname
+++ /dev/null
@@ -1 +0,0 @@
-../org.freedesktop.machine1.busname \ No newline at end of file
diff --git a/core/modules/systemd/data/lib/systemd/system/busnames.target.wants/org.freedesktop.network1.busname b/core/modules/systemd/data/lib/systemd/system/busnames.target.wants/org.freedesktop.network1.busname
deleted file mode 120000
index 13f4a8a7..00000000
--- a/core/modules/systemd/data/lib/systemd/system/busnames.target.wants/org.freedesktop.network1.busname
+++ /dev/null
@@ -1 +0,0 @@
-../org.freedesktop.network1.busname \ No newline at end of file
diff --git a/core/modules/systemd/data/lib/systemd/system/busnames.target.wants/org.freedesktop.resolve1.busname b/core/modules/systemd/data/lib/systemd/system/busnames.target.wants/org.freedesktop.resolve1.busname
deleted file mode 120000
index 1ede82df..00000000
--- a/core/modules/systemd/data/lib/systemd/system/busnames.target.wants/org.freedesktop.resolve1.busname
+++ /dev/null
@@ -1 +0,0 @@
-../org.freedesktop.resolve1.busname \ No newline at end of file
diff --git a/core/modules/systemd/data/lib/systemd/system/busnames.target.wants/org.freedesktop.systemd1.busname b/core/modules/systemd/data/lib/systemd/system/busnames.target.wants/org.freedesktop.systemd1.busname
deleted file mode 120000
index bf976b87..00000000
--- a/core/modules/systemd/data/lib/systemd/system/busnames.target.wants/org.freedesktop.systemd1.busname
+++ /dev/null
@@ -1 +0,0 @@
-../org.freedesktop.systemd1.busname \ No newline at end of file
diff --git a/core/modules/systemd/data/lib/systemd/system/console-getty.service b/core/modules/systemd/data/lib/systemd/system/console-getty.service
deleted file mode 100644
index 5c9c01c7..00000000
--- a/core/modules/systemd/data/lib/systemd/system/console-getty.service
+++ /dev/null
@@ -1,33 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Console Getty
-Documentation=man:agetty(8)
-After=systemd-user-sessions.service plymouth-quit-wait.service
-ConditionPathExists=/dev/console
-After=rc-local.service
-Before=getty.target
-
-[Service]
-# The '-o' option value tells agetty to replace 'login' arguments with an
-# option to preserve environment (-p), followed by '--' for safety, and then
-# the entered username.
-ExecStart=-/sbin/agetty -o '-p -- \\u' --noclear --keep-baud console 115200,38400,9600 $TERM
-Type=idle
-Restart=always
-RestartSec=0
-UtmpIdentifier=cons
-TTYPath=/dev/console
-TTYReset=yes
-TTYVHangup=yes
-KillMode=process
-IgnoreSIGPIPE=no
-SendSIGHUP=yes
-
-[Install]
-WantedBy=getty.target
diff --git a/core/modules/systemd/data/lib/systemd/system/console-shell.service b/core/modules/systemd/data/lib/systemd/system/console-shell.service
deleted file mode 100644
index c1548299..00000000
--- a/core/modules/systemd/data/lib/systemd/system/console-shell.service
+++ /dev/null
@@ -1,32 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Console Shell
-Documentation=man:sulogin(8)
-After=systemd-user-sessions.service plymouth-quit-wait.service
-After=rc-local.service
-Before=getty.target
-
-[Service]
-Environment=HOME=/root
-WorkingDirectory=/root
-ExecStart=-/sbin/sulogin
-ExecStopPost=-/usr/bin/systemctl poweroff
-Type=idle
-StandardInput=tty-force
-StandardOutput=inherit
-StandardError=inherit
-KillMode=process
-IgnoreSIGPIPE=no
-
-# Bash ignores SIGTERM, so we send SIGHUP instead, to ensure that bash
-# terminates cleanly.
-KillSignal=SIGHUP
-
-[Install]
-WantedBy=getty.target
diff --git a/core/modules/systemd/data/lib/systemd/system/ctrl-alt-del.target b/core/modules/systemd/data/lib/systemd/system/ctrl-alt-del.target
deleted file mode 120000
index f2fde431..00000000
--- a/core/modules/systemd/data/lib/systemd/system/ctrl-alt-del.target
+++ /dev/null
@@ -1 +0,0 @@
-reboot.target \ No newline at end of file
diff --git a/core/modules/systemd/data/lib/systemd/system/dbus-org.freedesktop.login1.service b/core/modules/systemd/data/lib/systemd/system/dbus-org.freedesktop.login1.service
deleted file mode 120000
index d87318cc..00000000
--- a/core/modules/systemd/data/lib/systemd/system/dbus-org.freedesktop.login1.service
+++ /dev/null
@@ -1 +0,0 @@
-systemd-logind.service \ No newline at end of file
diff --git a/core/modules/systemd/data/lib/systemd/system/dbus-org.freedesktop.machine1.service b/core/modules/systemd/data/lib/systemd/system/dbus-org.freedesktop.machine1.service
deleted file mode 120000
index 22692cce..00000000
--- a/core/modules/systemd/data/lib/systemd/system/dbus-org.freedesktop.machine1.service
+++ /dev/null
@@ -1 +0,0 @@
-systemd-machined.service \ No newline at end of file
diff --git a/core/modules/systemd/data/lib/systemd/system/debug-shell.service b/core/modules/systemd/data/lib/systemd/system/debug-shell.service
deleted file mode 100644
index 4220d7c2..00000000
--- a/core/modules/systemd/data/lib/systemd/system/debug-shell.service
+++ /dev/null
@@ -1,33 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Early root shell on /dev/tty9 FOR DEBUGGING ONLY
-Documentation=man:sushell(8)
-DefaultDependencies=no
-IgnoreOnIsolate=yes
-
-[Service]
-Environment=TERM=linux
-ExecStart=/bin/ash
-Restart=always
-RestartSec=0
-StandardInput=tty
-TTYPath=/dev/tty9
-TTYReset=yes
-TTYVHangup=yes
-KillMode=process
-IgnoreSIGPIPE=no
-# bash ignores SIGTERM
-KillSignal=SIGHUP
-
-# Unset locale for the console getty since the console has problems
-# displaying some internationalized messages.
-Environment=LANG= LANGUAGE= LC_CTYPE= LC_NUMERIC= LC_TIME= LC_COLLATE= LC_MONETARY= LC_MESSAGES= LC_PAPER= LC_NAME= LC_ADDRESS= LC_TELEPHONE= LC_MEASUREMENT= LC_IDENTIFICATION=
-
-[Install]
-WantedBy=sysinit.target
diff --git a/core/modules/systemd/data/lib/systemd/system/default.target b/core/modules/systemd/data/lib/systemd/system/default.target
deleted file mode 120000
index a0aae86a..00000000
--- a/core/modules/systemd/data/lib/systemd/system/default.target
+++ /dev/null
@@ -1 +0,0 @@
-graphical.target \ No newline at end of file
diff --git a/core/modules/systemd/data/lib/systemd/system/dev-hugepages.mount b/core/modules/systemd/data/lib/systemd/system/dev-hugepages.mount
deleted file mode 100644
index 86ad7ac2..00000000
--- a/core/modules/systemd/data/lib/systemd/system/dev-hugepages.mount
+++ /dev/null
@@ -1,21 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Huge Pages File System
-Documentation=https://www.kernel.org/doc/Documentation/vm/hugetlbpage.txt
-Documentation=https://www.freedesktop.org/wiki/Software/systemd/APIFileSystems
-DefaultDependencies=no
-Before=sysinit.target
-ConditionPathExists=/sys/kernel/mm/hugepages
-ConditionCapability=CAP_SYS_ADMIN
-ConditionVirtualization=!private-users
-
-[Mount]
-What=hugetlbfs
-Where=/dev/hugepages
-Type=hugetlbfs
diff --git a/core/modules/systemd/data/lib/systemd/system/dev-mqueue.mount b/core/modules/systemd/data/lib/systemd/system/dev-mqueue.mount
deleted file mode 100644
index b2adfeb8..00000000
--- a/core/modules/systemd/data/lib/systemd/system/dev-mqueue.mount
+++ /dev/null
@@ -1,20 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=POSIX Message Queue File System
-Documentation=man:mq_overview(7)
-Documentation=https://www.freedesktop.org/wiki/Software/systemd/APIFileSystems
-DefaultDependencies=no
-Before=sysinit.target
-ConditionPathExists=/proc/sys/fs/mqueue
-ConditionCapability=CAP_SYS_ADMIN
-
-[Mount]
-What=mqueue
-Where=/dev/mqueue
-Type=mqueue
diff --git a/core/modules/systemd/data/lib/systemd/system/emergency.service b/core/modules/systemd/data/lib/systemd/system/emergency.service
deleted file mode 100644
index 4a45f2a7..00000000
--- a/core/modules/systemd/data/lib/systemd/system/emergency.service
+++ /dev/null
@@ -1,27 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Emergency Shell
-Documentation=man:sulogin(8)
-DefaultDependencies=no
-Conflicts=shutdown.target
-Conflicts=rescue.service
-Conflicts=syslog.socket
-Before=shutdown.target
-
-[Service]
-Environment=HOME=/root
-WorkingDirectory=-/root
-ExecStart=-/lib/systemd/systemd-sulogin-shell emergency
-Type=idle
-StandardInput=tty-force
-StandardOutput=inherit
-StandardError=inherit
-KillMode=process
-IgnoreSIGPIPE=no
-SendSIGHUP=yes
diff --git a/core/modules/systemd/data/lib/systemd/system/emergency.target b/core/modules/systemd/data/lib/systemd/system/emergency.target
deleted file mode 100644
index 0760d66f..00000000
--- a/core/modules/systemd/data/lib/systemd/system/emergency.target
+++ /dev/null
@@ -1,13 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Emergency Mode
-Documentation=man:systemd.special(7)
-Requires=emergency.service
-After=emergency.service
-AllowIsolate=yes
diff --git a/core/modules/systemd/data/lib/systemd/system/exit.target b/core/modules/systemd/data/lib/systemd/system/exit.target
deleted file mode 100644
index f5f953d1..00000000
--- a/core/modules/systemd/data/lib/systemd/system/exit.target
+++ /dev/null
@@ -1,17 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Exit the container
-Documentation=man:systemd.special(7)
-DefaultDependencies=no
-Requires=systemd-exit.service
-After=systemd-exit.service
-AllowIsolate=yes
-
-[Install]
-Alias=ctrl-alt-del.target
diff --git a/core/modules/systemd/data/lib/systemd/system/final.target b/core/modules/systemd/data/lib/systemd/system/final.target
deleted file mode 100644
index 42819105..00000000
--- a/core/modules/systemd/data/lib/systemd/system/final.target
+++ /dev/null
@@ -1,13 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Final Step
-Documentation=man:systemd.special(7)
-DefaultDependencies=no
-RefuseManualStart=yes
-After=shutdown.target umount.target
diff --git a/core/modules/systemd/data/lib/systemd/system/getty.target b/core/modules/systemd/data/lib/systemd/system/getty.target
deleted file mode 100644
index c33d4465..00000000
--- a/core/modules/systemd/data/lib/systemd/system/getty.target
+++ /dev/null
@@ -1,11 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Login Prompts
-Documentation=man:systemd.special(7) man:systemd-getty-generator(8)
-Documentation=http://0pointer.de/blog/projects/serial-console.html
diff --git a/core/modules/systemd/data/lib/systemd/system/getty@.service b/core/modules/systemd/data/lib/systemd/system/getty@.service
deleted file mode 100644
index 5c1d1666..00000000
--- a/core/modules/systemd/data/lib/systemd/system/getty@.service
+++ /dev/null
@@ -1,50 +0,0 @@
-# This file is part of systemd.
-# Patched for OpenSLX
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Getty on %I
-Documentation=man:agetty(8) man:systemd-getty-generator(8)
-Documentation=http://0pointer.de/blog/projects/serial-console.html
-After=systemd-user-sessions.service
-After=rc-local.service
-
-# If additional gettys are spawned during boot then we should make
-# sure that this is synchronized before getty.target, even though
-# getty.target didn't actually pull it in.
-Before=getty.target
-IgnoreOnIsolate=yes
-
-# On systems without virtual consoles, don't start any getty. (Note
-# that serial gettys are covered by serial-getty@.service, not this
-# unit
-ConditionPathExists=/dev/tty0
-
-[Service]
-ExecStartPre=-/opt/openslx/bin/killall fbsplash
-ExecStartPre=-/opt/openslx/scripts/tty-init %I
-# the VT is cleared by TTYVTDisallocate
-ExecStart=-/sbin/agetty %I 38400 linux
-Type=idle
-Restart=always
-RestartSec=0
-UtmpIdentifier=%I
-TTYPath=/dev/%I
-TTYReset=yes
-TTYVHangup=yes
-TTYVTDisallocate=no
-KillMode=process
-IgnoreSIGPIPE=no
-
-# Unset locale for the console getty since the console has problems
-# displaying some internationalized messages.
-Environment=LANG= LANGUAGE= LC_CTYPE= LC_NUMERIC= LC_TIME= LC_COLLATE= LC_MONETARY= LC_MESSAGES= LC_PAPER= LC_NAME= LC_ADDRESS= LC_TELEPHONE= LC_MEASUREMENT= LC_IDENTIFICATION=
-
-# Some login implementations ignore SIGTERM, so we send SIGHUP
-# instead, to ensure that login terminates cleanly.
-KillSignal=SIGHUP
-
diff --git a/core/modules/systemd/data/lib/systemd/system/graphical.target b/core/modules/systemd/data/lib/systemd/system/graphical.target
deleted file mode 100644
index 87be97e1..00000000
--- a/core/modules/systemd/data/lib/systemd/system/graphical.target
+++ /dev/null
@@ -1,15 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Graphical Interface
-Documentation=man:systemd.special(7)
-Requires=multi-user.target
-Wants=display-manager.service
-Conflicts=rescue.service rescue.target
-After=multi-user.target rescue.service rescue.target display-manager.service
-AllowIsolate=yes
diff --git a/core/modules/systemd/data/lib/systemd/system/halt-local.service b/core/modules/systemd/data/lib/systemd/system/halt-local.service
deleted file mode 100644
index e6243eeb..00000000
--- a/core/modules/systemd/data/lib/systemd/system/halt-local.service
+++ /dev/null
@@ -1,20 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=/usr/sbin/halt.local Compatibility
-ConditionFileIsExecutable=/usr/sbin/halt.local
-DefaultDependencies=no
-After=shutdown.target
-Before=final.target
-
-[Service]
-Type=oneshot
-ExecStart=/usr/sbin/halt.local
-TimeoutSec=0
-StandardOutput=tty
-RemainAfterExit=yes
diff --git a/core/modules/systemd/data/lib/systemd/system/halt.target b/core/modules/systemd/data/lib/systemd/system/halt.target
deleted file mode 100644
index a21d984b..00000000
--- a/core/modules/systemd/data/lib/systemd/system/halt.target
+++ /dev/null
@@ -1,17 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Halt
-Documentation=man:systemd.special(7)
-DefaultDependencies=no
-Requires=systemd-halt.service
-After=systemd-halt.service
-AllowIsolate=yes
-
-[Install]
-Alias=ctrl-alt-del.target
diff --git a/core/modules/systemd/data/lib/systemd/system/hibernate.target b/core/modules/systemd/data/lib/systemd/system/hibernate.target
deleted file mode 100644
index 143eb592..00000000
--- a/core/modules/systemd/data/lib/systemd/system/hibernate.target
+++ /dev/null
@@ -1,13 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Hibernate
-Documentation=man:systemd.special(7)
-DefaultDependencies=no
-BindsTo=systemd-hibernate.service
-After=systemd-hibernate.service
diff --git a/core/modules/systemd/data/lib/systemd/system/hybrid-sleep.target b/core/modules/systemd/data/lib/systemd/system/hybrid-sleep.target
deleted file mode 100644
index d2d34092..00000000
--- a/core/modules/systemd/data/lib/systemd/system/hybrid-sleep.target
+++ /dev/null
@@ -1,13 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Hybrid Suspend+Hibernate
-Documentation=man:systemd.special(7)
-DefaultDependencies=no
-BindsTo=systemd-hybrid-sleep.service
-After=systemd-hybrid-sleep.service
diff --git a/core/modules/systemd/data/lib/systemd/system/kexec.target b/core/modules/systemd/data/lib/systemd/system/kexec.target
deleted file mode 100644
index 90795d0c..00000000
--- a/core/modules/systemd/data/lib/systemd/system/kexec.target
+++ /dev/null
@@ -1,17 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Reboot via kexec
-Documentation=man:systemd.special(7)
-DefaultDependencies=no
-Requires=systemd-kexec.service
-After=systemd-kexec.service
-AllowIsolate=yes
-
-[Install]
-Alias=ctrl-alt-del.target
diff --git a/core/modules/systemd/data/lib/systemd/system/kmod-static-nodes.service b/core/modules/systemd/data/lib/systemd/system/kmod-static-nodes.service
deleted file mode 100644
index 49c5d9bc..00000000
--- a/core/modules/systemd/data/lib/systemd/system/kmod-static-nodes.service
+++ /dev/null
@@ -1,18 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Create list of required static device nodes for the current kernel
-DefaultDependencies=no
-Before=sysinit.target systemd-tmpfiles-setup-dev.service
-ConditionCapability=CAP_SYS_MODULE
-ConditionFileNotEmpty=/lib/modules/%v/modules.devname
-
-[Service]
-Type=oneshot
-RemainAfterExit=yes
-ExecStart=/bin/kmod static-nodes --format=tmpfiles --output=/run/tmpfiles.d/kmod.conf
diff --git a/core/modules/systemd/data/lib/systemd/system/machine.slice b/core/modules/systemd/data/lib/systemd/system/machine.slice
deleted file mode 100644
index 3d40dfd7..00000000
--- a/core/modules/systemd/data/lib/systemd/system/machine.slice
+++ /dev/null
@@ -1,11 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Virtual Machine and Container Slice
-Documentation=man:systemd.special(7)
-Before=slices.target
diff --git a/core/modules/systemd/data/lib/systemd/system/machines.target b/core/modules/systemd/data/lib/systemd/system/machines.target
deleted file mode 100644
index 99618a19..00000000
--- a/core/modules/systemd/data/lib/systemd/system/machines.target
+++ /dev/null
@@ -1,17 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Containers
-Documentation=man:systemd.special(7)
-Requires=basic.target
-Conflicts=rescue.service rescue.target
-After=basic.target rescue.service rescue.target
-Before=multi-user.target
-
-[Install]
-WantedBy=multi-user.target
diff --git a/core/modules/systemd/data/lib/systemd/system/machines.target.wants/var-lib-machines.mount b/core/modules/systemd/data/lib/systemd/system/machines.target.wants/var-lib-machines.mount
deleted file mode 120000
index 94338197..00000000
--- a/core/modules/systemd/data/lib/systemd/system/machines.target.wants/var-lib-machines.mount
+++ /dev/null
@@ -1 +0,0 @@
-../var-lib-machines.mount \ No newline at end of file
diff --git a/core/modules/systemd/data/lib/systemd/system/multi-user.target b/core/modules/systemd/data/lib/systemd/system/multi-user.target
deleted file mode 100644
index 998e0460..00000000
--- a/core/modules/systemd/data/lib/systemd/system/multi-user.target
+++ /dev/null
@@ -1,17 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Multi-User System
-Documentation=man:systemd.special(7)
-Requires=basic.target
-Conflicts=rescue.service rescue.target
-After=basic.target rescue.service rescue.target
-AllowIsolate=yes
-
-[Install]
-Alias=default.target
diff --git a/core/modules/systemd/data/lib/systemd/system/multi-user.target.wants/getty.target b/core/modules/systemd/data/lib/systemd/system/multi-user.target.wants/getty.target
deleted file mode 120000
index bdba1fe4..00000000
--- a/core/modules/systemd/data/lib/systemd/system/multi-user.target.wants/getty.target
+++ /dev/null
@@ -1 +0,0 @@
-../getty.target \ No newline at end of file
diff --git a/core/modules/systemd/data/lib/systemd/system/multi-user.target.wants/systemd-logind.service b/core/modules/systemd/data/lib/systemd/system/multi-user.target.wants/systemd-logind.service
deleted file mode 120000
index 270a900e..00000000
--- a/core/modules/systemd/data/lib/systemd/system/multi-user.target.wants/systemd-logind.service
+++ /dev/null
@@ -1 +0,0 @@
-../systemd-logind.service \ No newline at end of file
diff --git a/core/modules/systemd/data/lib/systemd/system/multi-user.target.wants/systemd-user-sessions.service b/core/modules/systemd/data/lib/systemd/system/multi-user.target.wants/systemd-user-sessions.service
deleted file mode 120000
index f878b529..00000000
--- a/core/modules/systemd/data/lib/systemd/system/multi-user.target.wants/systemd-user-sessions.service
+++ /dev/null
@@ -1 +0,0 @@
-../systemd-user-sessions.service \ No newline at end of file
diff --git a/core/modules/systemd/data/lib/systemd/system/network-online.target b/core/modules/systemd/data/lib/systemd/system/network-online.target
deleted file mode 100644
index 5130d8c5..00000000
--- a/core/modules/systemd/data/lib/systemd/system/network-online.target
+++ /dev/null
@@ -1,12 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Network is Online
-Documentation=man:systemd.special(7)
-Documentation=https://www.freedesktop.org/wiki/Software/systemd/NetworkTarget
-After=network.target
diff --git a/core/modules/systemd/data/lib/systemd/system/network-pre.target b/core/modules/systemd/data/lib/systemd/system/network-pre.target
deleted file mode 100644
index 0d54a4cf..00000000
--- a/core/modules/systemd/data/lib/systemd/system/network-pre.target
+++ /dev/null
@@ -1,12 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Network (Pre)
-Documentation=man:systemd.special(7)
-Documentation=https://www.freedesktop.org/wiki/Software/systemd/NetworkTarget
-RefuseManualStart=yes
diff --git a/core/modules/systemd/data/lib/systemd/system/network.target b/core/modules/systemd/data/lib/systemd/system/network.target
deleted file mode 100644
index 4186c088..00000000
--- a/core/modules/systemd/data/lib/systemd/system/network.target
+++ /dev/null
@@ -1,14 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Network
-Documentation=man:systemd.special(7)
-Documentation=http://www.freedesktop.org/wiki/Software/systemd/NetworkTarget
-DefaultDependencies=no
-ConditionPathExists=/run/network/network-ready
-
diff --git a/core/modules/systemd/data/lib/systemd/system/org.freedesktop.login1.busname b/core/modules/systemd/data/lib/systemd/system/org.freedesktop.login1.busname
deleted file mode 100644
index b169720f..00000000
--- a/core/modules/systemd/data/lib/systemd/system/org.freedesktop.login1.busname
+++ /dev/null
@@ -1,16 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Login Service Bus Name
-Documentation=man:systemd-logind.service(8) man:logind.conf(5)
-Documentation=https://www.freedesktop.org/wiki/Software/systemd/logind
-Documentation=https://www.freedesktop.org/wiki/Software/systemd/multiseat
-
-[BusName]
-Service=systemd-logind.service
-AllowWorld=talk
diff --git a/core/modules/systemd/data/lib/systemd/system/org.freedesktop.machine1.busname b/core/modules/systemd/data/lib/systemd/system/org.freedesktop.machine1.busname
deleted file mode 100644
index a1f01547..00000000
--- a/core/modules/systemd/data/lib/systemd/system/org.freedesktop.machine1.busname
+++ /dev/null
@@ -1,15 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Virtual Machine and Container Registration Service Bus Name
-Documentation=man:systemd-machined.service(8)
-Documentation=https://www.freedesktop.org/wiki/Software/systemd/machined
-
-[BusName]
-Service=systemd-machined.service
-AllowWorld=talk
diff --git a/core/modules/systemd/data/lib/systemd/system/org.freedesktop.network1.busname b/core/modules/systemd/data/lib/systemd/system/org.freedesktop.network1.busname
deleted file mode 100644
index 3a0e1189..00000000
--- a/core/modules/systemd/data/lib/systemd/system/org.freedesktop.network1.busname
+++ /dev/null
@@ -1,20 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Network Service Bus Name
-Documentation=man:systemd-networkd.service(8)
-
-# This is pulled in by systemd-networkd.service, since it cannot run
-# without its policy set. However, let's conditionalize this unit on
-# non-kdbus system.
-ConditionPathExists=/sys/fs/kdbus/0-system/
-
-[BusName]
-Service=systemd-networkd.service
-AllowWorld=talk
-AllowUser=systemd-network own
diff --git a/core/modules/systemd/data/lib/systemd/system/org.freedesktop.resolve1.busname b/core/modules/systemd/data/lib/systemd/system/org.freedesktop.resolve1.busname
deleted file mode 100644
index 28c8f970..00000000
--- a/core/modules/systemd/data/lib/systemd/system/org.freedesktop.resolve1.busname
+++ /dev/null
@@ -1,21 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Network Name Resolution Service Bus Name
-Documentation=man:systemd-resolved.service(8)
-Documentation=https://www.freedesktop.org/wiki/Software/systemd/resolved
-
-# This is pulled in by systemd-resolved.service, since it cannot run
-# without its policy set. However, let's conditionalize this unit on
-# non-kdbus system.
-ConditionPathExists=/sys/fs/kdbus/0-system/
-
-[BusName]
-Service=systemd-resolved.service
-AllowWorld=talk
-AllowUser=systemd-resolve own
diff --git a/core/modules/systemd/data/lib/systemd/system/org.freedesktop.systemd1.busname b/core/modules/systemd/data/lib/systemd/system/org.freedesktop.systemd1.busname
deleted file mode 100644
index f9f41cba..00000000
--- a/core/modules/systemd/data/lib/systemd/system/org.freedesktop.systemd1.busname
+++ /dev/null
@@ -1,15 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=System and Service Manager Bus Name
-Documentation=man:systemd(1)
-Documentation=https://www.freedesktop.org/wiki/Software/systemd
-
-[BusName]
-Activating=no
-AllowWorld=talk
diff --git a/core/modules/systemd/data/lib/systemd/system/paths.target b/core/modules/systemd/data/lib/systemd/system/paths.target
deleted file mode 100644
index 25c7fd03..00000000
--- a/core/modules/systemd/data/lib/systemd/system/paths.target
+++ /dev/null
@@ -1,10 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Paths
-Documentation=man:systemd.special(7)
diff --git a/core/modules/systemd/data/lib/systemd/system/poweroff.target b/core/modules/systemd/data/lib/systemd/system/poweroff.target
deleted file mode 100644
index dd92d816..00000000
--- a/core/modules/systemd/data/lib/systemd/system/poweroff.target
+++ /dev/null
@@ -1,19 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Power-Off
-Documentation=man:systemd.special(7)
-DefaultDependencies=no
-Requires=systemd-poweroff.service
-After=systemd-poweroff.service
-AllowIsolate=yes
-JobTimeoutSec=30min
-JobTimeoutAction=poweroff-force
-
-[Install]
-Alias=ctrl-alt-del.target
diff --git a/core/modules/systemd/data/lib/systemd/system/printer.target b/core/modules/systemd/data/lib/systemd/system/printer.target
deleted file mode 100644
index a6b86caa..00000000
--- a/core/modules/systemd/data/lib/systemd/system/printer.target
+++ /dev/null
@@ -1,11 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Printer
-Documentation=man:systemd.special(7)
-StopWhenUnneeded=yes
diff --git a/core/modules/systemd/data/lib/systemd/system/proc-sys-fs-binfmt_misc.automount b/core/modules/systemd/data/lib/systemd/system/proc-sys-fs-binfmt_misc.automount
deleted file mode 100644
index 1067bcd8..00000000
--- a/core/modules/systemd/data/lib/systemd/system/proc-sys-fs-binfmt_misc.automount
+++ /dev/null
@@ -1,18 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Arbitrary Executable File Formats File System Automount Point
-Documentation=https://www.kernel.org/doc/html/latest/admin-guide/binfmt-misc.html
-Documentation=https://www.freedesktop.org/wiki/Software/systemd/APIFileSystems
-DefaultDependencies=no
-Before=sysinit.target
-ConditionPathExists=/proc/sys/fs/binfmt_misc/
-ConditionPathIsReadWrite=/proc/sys/
-
-[Automount]
-Where=/proc/sys/fs/binfmt_misc
diff --git a/core/modules/systemd/data/lib/systemd/system/proc-sys-fs-binfmt_misc.mount b/core/modules/systemd/data/lib/systemd/system/proc-sys-fs-binfmt_misc.mount
deleted file mode 100644
index 27773cd4..00000000
--- a/core/modules/systemd/data/lib/systemd/system/proc-sys-fs-binfmt_misc.mount
+++ /dev/null
@@ -1,17 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Arbitrary Executable File Formats File System
-Documentation=https://www.kernel.org/doc/html/latest/admin-guide/binfmt-misc.html
-Documentation=https://www.freedesktop.org/wiki/Software/systemd/APIFileSystems
-DefaultDependencies=no
-
-[Mount]
-What=binfmt_misc
-Where=/proc/sys/fs/binfmt_misc
-Type=binfmt_misc
diff --git a/core/modules/systemd/data/lib/systemd/system/rc-local.service b/core/modules/systemd/data/lib/systemd/system/rc-local.service
deleted file mode 100644
index cb9c1ba2..00000000
--- a/core/modules/systemd/data/lib/systemd/system/rc-local.service
+++ /dev/null
@@ -1,20 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-# This unit gets pulled automatically into multi-user.target by
-# systemd-rc-local-generator if /etc/rc.local is executable.
-[Unit]
-Description=/etc/rc.local Compatibility
-ConditionFileIsExecutable=/etc/rc.local
-After=network.target
-
-[Service]
-Type=forking
-ExecStart=/etc/rc.local start
-TimeoutSec=0
-RemainAfterExit=yes
-SysVStartPriority=99
diff --git a/core/modules/systemd/data/lib/systemd/system/reboot.target b/core/modules/systemd/data/lib/systemd/system/reboot.target
deleted file mode 100644
index 668b98d9..00000000
--- a/core/modules/systemd/data/lib/systemd/system/reboot.target
+++ /dev/null
@@ -1,19 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Reboot
-Documentation=man:systemd.special(7)
-DefaultDependencies=no
-Requires=systemd-reboot.service
-After=systemd-reboot.service
-AllowIsolate=yes
-JobTimeoutSec=30min
-JobTimeoutAction=reboot-force
-
-[Install]
-Alias=ctrl-alt-del.target
diff --git a/core/modules/systemd/data/lib/systemd/system/remote-fs-pre.target b/core/modules/systemd/data/lib/systemd/system/remote-fs-pre.target
deleted file mode 100644
index 36a196cf..00000000
--- a/core/modules/systemd/data/lib/systemd/system/remote-fs-pre.target
+++ /dev/null
@@ -1,11 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Remote File Systems (Pre)
-Documentation=man:systemd.special(7)
-RefuseManualStart=yes
diff --git a/core/modules/systemd/data/lib/systemd/system/remote-fs.target b/core/modules/systemd/data/lib/systemd/system/remote-fs.target
deleted file mode 100644
index 43ffa5c1..00000000
--- a/core/modules/systemd/data/lib/systemd/system/remote-fs.target
+++ /dev/null
@@ -1,16 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Remote File Systems
-Documentation=man:systemd.special(7)
-After=remote-fs-pre.target
-DefaultDependencies=no
-Conflicts=shutdown.target
-
-[Install]
-WantedBy=multi-user.target
diff --git a/core/modules/systemd/data/lib/systemd/system/remote-fs.target.wants/var-lib-machines.mount b/core/modules/systemd/data/lib/systemd/system/remote-fs.target.wants/var-lib-machines.mount
deleted file mode 120000
index 94338197..00000000
--- a/core/modules/systemd/data/lib/systemd/system/remote-fs.target.wants/var-lib-machines.mount
+++ /dev/null
@@ -1 +0,0 @@
-../var-lib-machines.mount \ No newline at end of file
diff --git a/core/modules/systemd/data/lib/systemd/system/serial-getty@.service b/core/modules/systemd/data/lib/systemd/system/serial-getty@.service
deleted file mode 100644
index fb7b6e78..00000000
--- a/core/modules/systemd/data/lib/systemd/system/serial-getty@.service
+++ /dev/null
@@ -1,44 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Serial Getty on %I
-Documentation=man:agetty(8) man:systemd-getty-generator(8)
-Documentation=http://0pointer.de/blog/projects/serial-console.html
-BindsTo=dev-%i.device
-After=dev-%i.device systemd-user-sessions.service plymouth-quit-wait.service
-After=rc-local.service
-
-# If additional gettys are spawned during boot then we should make
-# sure that this is synchronized before getty.target, even though
-# getty.target didn't actually pull it in.
-Before=getty.target
-IgnoreOnIsolate=yes
-
-# IgnoreOnIsolate causes issues with sulogin, if someone isolates
-# rescue.target or starts rescue.service from multi-user.target or
-# graphical.target.
-Conflicts=rescue.service
-Before=rescue.service
-
-[Service]
-# The '-o' option value tells agetty to replace 'login' arguments with an
-# option to preserve environment (-p), followed by '--' for safety, and then
-# the entered username.
-ExecStart=-/sbin/agetty -o '-p -- \\u' --keep-baud 115200,38400,9600 %I $TERM
-Type=idle
-Restart=always
-UtmpIdentifier=%I
-TTYPath=/dev/%I
-TTYReset=yes
-TTYVHangup=yes
-KillMode=process
-IgnoreSIGPIPE=no
-SendSIGHUP=yes
-
-[Install]
-WantedBy=getty.target
diff --git a/core/modules/systemd/data/lib/systemd/system/shutdown.target b/core/modules/systemd/data/lib/systemd/system/shutdown.target
deleted file mode 100644
index 73e302b8..00000000
--- a/core/modules/systemd/data/lib/systemd/system/shutdown.target
+++ /dev/null
@@ -1,12 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Shutdown
-Documentation=man:systemd.special(7)
-DefaultDependencies=no
-RefuseManualStart=yes
diff --git a/core/modules/systemd/data/lib/systemd/system/sigpwr.target b/core/modules/systemd/data/lib/systemd/system/sigpwr.target
deleted file mode 100644
index a52e7cff..00000000
--- a/core/modules/systemd/data/lib/systemd/system/sigpwr.target
+++ /dev/null
@@ -1,10 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Power Failure
-Documentation=man:systemd.special(7)
diff --git a/core/modules/systemd/data/lib/systemd/system/sleep.target b/core/modules/systemd/data/lib/systemd/system/sleep.target
deleted file mode 100644
index 10c7c8d5..00000000
--- a/core/modules/systemd/data/lib/systemd/system/sleep.target
+++ /dev/null
@@ -1,13 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Sleep
-Documentation=man:systemd.special(7)
-DefaultDependencies=no
-RefuseManualStart=yes
-StopWhenUnneeded=yes
diff --git a/core/modules/systemd/data/lib/systemd/system/slices.target b/core/modules/systemd/data/lib/systemd/system/slices.target
deleted file mode 100644
index a29310c0..00000000
--- a/core/modules/systemd/data/lib/systemd/system/slices.target
+++ /dev/null
@@ -1,12 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Slices
-Documentation=man:systemd.special(7)
-Wants=-.slice system.slice
-After=-.slice system.slice
diff --git a/core/modules/systemd/data/lib/systemd/system/smartcard.target b/core/modules/systemd/data/lib/systemd/system/smartcard.target
deleted file mode 100644
index 5fefe847..00000000
--- a/core/modules/systemd/data/lib/systemd/system/smartcard.target
+++ /dev/null
@@ -1,11 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Smart Card
-Documentation=man:systemd.special(7)
-StopWhenUnneeded=yes
diff --git a/core/modules/systemd/data/lib/systemd/system/sockets.target b/core/modules/systemd/data/lib/systemd/system/sockets.target
deleted file mode 100644
index 26ab065d..00000000
--- a/core/modules/systemd/data/lib/systemd/system/sockets.target
+++ /dev/null
@@ -1,10 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Sockets
-Documentation=man:systemd.special(7)
diff --git a/core/modules/systemd/data/lib/systemd/system/sockets.target.wants/systemd-journald-dev-log.socket b/core/modules/systemd/data/lib/systemd/system/sockets.target.wants/systemd-journald-dev-log.socket
deleted file mode 120000
index b7cca50f..00000000
--- a/core/modules/systemd/data/lib/systemd/system/sockets.target.wants/systemd-journald-dev-log.socket
+++ /dev/null
@@ -1 +0,0 @@
-../systemd-journald-dev-log.socket \ No newline at end of file
diff --git a/core/modules/systemd/data/lib/systemd/system/sockets.target.wants/systemd-journald.socket b/core/modules/systemd/data/lib/systemd/system/sockets.target.wants/systemd-journald.socket
deleted file mode 120000
index 07ae46c4..00000000
--- a/core/modules/systemd/data/lib/systemd/system/sockets.target.wants/systemd-journald.socket
+++ /dev/null
@@ -1 +0,0 @@
-../systemd-journald.socket \ No newline at end of file
diff --git a/core/modules/systemd/data/lib/systemd/system/sockets.target.wants/systemd-shutdownd.socket b/core/modules/systemd/data/lib/systemd/system/sockets.target.wants/systemd-shutdownd.socket
deleted file mode 120000
index aa23208d..00000000
--- a/core/modules/systemd/data/lib/systemd/system/sockets.target.wants/systemd-shutdownd.socket
+++ /dev/null
@@ -1 +0,0 @@
-../systemd-shutdownd.socket \ No newline at end of file
diff --git a/core/modules/systemd/data/lib/systemd/system/sockets.target.wants/systemd-udevd-control.socket b/core/modules/systemd/data/lib/systemd/system/sockets.target.wants/systemd-udevd-control.socket
deleted file mode 120000
index 4bc0e548..00000000
--- a/core/modules/systemd/data/lib/systemd/system/sockets.target.wants/systemd-udevd-control.socket
+++ /dev/null
@@ -1 +0,0 @@
-../systemd-udevd-control.socket \ No newline at end of file
diff --git a/core/modules/systemd/data/lib/systemd/system/sockets.target.wants/systemd-udevd-kernel.socket b/core/modules/systemd/data/lib/systemd/system/sockets.target.wants/systemd-udevd-kernel.socket
deleted file mode 120000
index fab7990a..00000000
--- a/core/modules/systemd/data/lib/systemd/system/sockets.target.wants/systemd-udevd-kernel.socket
+++ /dev/null
@@ -1 +0,0 @@
-../systemd-udevd-kernel.socket \ No newline at end of file
diff --git a/core/modules/systemd/data/lib/systemd/system/sound.target b/core/modules/systemd/data/lib/systemd/system/sound.target
deleted file mode 100644
index 6699adec..00000000
--- a/core/modules/systemd/data/lib/systemd/system/sound.target
+++ /dev/null
@@ -1,11 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Sound Card
-Documentation=man:systemd.special(7)
-StopWhenUnneeded=yes
diff --git a/core/modules/systemd/data/lib/systemd/system/suspend.target b/core/modules/systemd/data/lib/systemd/system/suspend.target
deleted file mode 100644
index f50cb226..00000000
--- a/core/modules/systemd/data/lib/systemd/system/suspend.target
+++ /dev/null
@@ -1,13 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Suspend
-Documentation=man:systemd.special(7)
-DefaultDependencies=no
-BindsTo=systemd-suspend.service
-After=systemd-suspend.service
diff --git a/core/modules/systemd/data/lib/systemd/system/swap.target b/core/modules/systemd/data/lib/systemd/system/swap.target
deleted file mode 100644
index 23a7d0dc..00000000
--- a/core/modules/systemd/data/lib/systemd/system/swap.target
+++ /dev/null
@@ -1,10 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Swap
-Documentation=man:systemd.special(7)
diff --git a/core/modules/systemd/data/lib/systemd/system/sys-fs-fuse-connections.mount b/core/modules/systemd/data/lib/systemd/system/sys-fs-fuse-connections.mount
deleted file mode 100644
index 492ceb16..00000000
--- a/core/modules/systemd/data/lib/systemd/system/sys-fs-fuse-connections.mount
+++ /dev/null
@@ -1,22 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=FUSE Control File System
-Documentation=https://www.kernel.org/doc/Documentation/filesystems/fuse.txt
-Documentation=https://www.freedesktop.org/wiki/Software/systemd/APIFileSystems
-DefaultDependencies=no
-ConditionPathExists=/sys/fs/fuse/connections
-ConditionCapability=CAP_SYS_ADMIN
-ConditionVirtualization=!private-users
-After=systemd-modules-load.service
-Before=sysinit.target
-
-[Mount]
-What=fusectl
-Where=/sys/fs/fuse/connections
-Type=fusectl
diff --git a/core/modules/systemd/data/lib/systemd/system/sys-kernel-config.mount b/core/modules/systemd/data/lib/systemd/system/sys-kernel-config.mount
deleted file mode 100644
index b585f325..00000000
--- a/core/modules/systemd/data/lib/systemd/system/sys-kernel-config.mount
+++ /dev/null
@@ -1,21 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Kernel Configuration File System
-Documentation=https://www.kernel.org/doc/Documentation/filesystems/configfs/configfs.txt
-Documentation=https://www.freedesktop.org/wiki/Software/systemd/APIFileSystems
-DefaultDependencies=no
-ConditionPathExists=/sys/kernel/config
-ConditionCapability=CAP_SYS_RAWIO
-After=systemd-modules-load.service
-Before=sysinit.target
-
-[Mount]
-What=configfs
-Where=/sys/kernel/config
-Type=configfs
diff --git a/core/modules/systemd/data/lib/systemd/system/sysinit.target b/core/modules/systemd/data/lib/systemd/system/sysinit.target
deleted file mode 100644
index ec335033..00000000
--- a/core/modules/systemd/data/lib/systemd/system/sysinit.target
+++ /dev/null
@@ -1,13 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=System Initialization
-Documentation=man:systemd.special(7)
-Conflicts=emergency.service emergency.target
-Wants=local-fs.target swap.target
-After=local-fs.target swap.target emergency.service emergency.target
diff --git a/core/modules/systemd/data/lib/systemd/system/sysinit.target.wants/dev-hugepages.mount b/core/modules/systemd/data/lib/systemd/system/sysinit.target.wants/dev-hugepages.mount
deleted file mode 120000
index 6a26137b..00000000
--- a/core/modules/systemd/data/lib/systemd/system/sysinit.target.wants/dev-hugepages.mount
+++ /dev/null
@@ -1 +0,0 @@
-../dev-hugepages.mount \ No newline at end of file
diff --git a/core/modules/systemd/data/lib/systemd/system/sysinit.target.wants/dev-mqueue.mount b/core/modules/systemd/data/lib/systemd/system/sysinit.target.wants/dev-mqueue.mount
deleted file mode 120000
index f0b9fbf4..00000000
--- a/core/modules/systemd/data/lib/systemd/system/sysinit.target.wants/dev-mqueue.mount
+++ /dev/null
@@ -1 +0,0 @@
-../dev-mqueue.mount \ No newline at end of file
diff --git a/core/modules/systemd/data/lib/systemd/system/sysinit.target.wants/proc-sys-fs-binfmt_misc.automount b/core/modules/systemd/data/lib/systemd/system/sysinit.target.wants/proc-sys-fs-binfmt_misc.automount
deleted file mode 120000
index 0b7f61f0..00000000
--- a/core/modules/systemd/data/lib/systemd/system/sysinit.target.wants/proc-sys-fs-binfmt_misc.automount
+++ /dev/null
@@ -1 +0,0 @@
-../proc-sys-fs-binfmt_misc.automount \ No newline at end of file
diff --git a/core/modules/systemd/data/lib/systemd/system/sysinit.target.wants/sys-fs-fuse-connections.mount b/core/modules/systemd/data/lib/systemd/system/sysinit.target.wants/sys-fs-fuse-connections.mount
deleted file mode 120000
index 85d20a2d..00000000
--- a/core/modules/systemd/data/lib/systemd/system/sysinit.target.wants/sys-fs-fuse-connections.mount
+++ /dev/null
@@ -1 +0,0 @@
-../sys-fs-fuse-connections.mount \ No newline at end of file
diff --git a/core/modules/systemd/data/lib/systemd/system/sysinit.target.wants/sys-kernel-config.mount b/core/modules/systemd/data/lib/systemd/system/sysinit.target.wants/sys-kernel-config.mount
deleted file mode 120000
index 831a9479..00000000
--- a/core/modules/systemd/data/lib/systemd/system/sysinit.target.wants/sys-kernel-config.mount
+++ /dev/null
@@ -1 +0,0 @@
-../sys-kernel-config.mount \ No newline at end of file
diff --git a/core/modules/systemd/data/lib/systemd/system/sysinit.target.wants/systemd-binfmt.service b/core/modules/systemd/data/lib/systemd/system/sysinit.target.wants/systemd-binfmt.service
deleted file mode 120000
index 07fbee12..00000000
--- a/core/modules/systemd/data/lib/systemd/system/sysinit.target.wants/systemd-binfmt.service
+++ /dev/null
@@ -1 +0,0 @@
-../systemd-binfmt.service \ No newline at end of file
diff --git a/core/modules/systemd/data/lib/systemd/system/sysinit.target.wants/systemd-journald.service b/core/modules/systemd/data/lib/systemd/system/sysinit.target.wants/systemd-journald.service
deleted file mode 120000
index e9057f7d..00000000
--- a/core/modules/systemd/data/lib/systemd/system/sysinit.target.wants/systemd-journald.service
+++ /dev/null
@@ -1 +0,0 @@
-../systemd-journald.service \ No newline at end of file
diff --git a/core/modules/systemd/data/lib/systemd/system/sysinit.target.wants/systemd-modules-load.service b/core/modules/systemd/data/lib/systemd/system/sysinit.target.wants/systemd-modules-load.service
deleted file mode 120000
index 79337696..00000000
--- a/core/modules/systemd/data/lib/systemd/system/sysinit.target.wants/systemd-modules-load.service
+++ /dev/null
@@ -1 +0,0 @@
-../systemd-modules-load.service \ No newline at end of file
diff --git a/core/modules/systemd/data/lib/systemd/system/sysinit.target.wants/systemd-sysctl.service b/core/modules/systemd/data/lib/systemd/system/sysinit.target.wants/systemd-sysctl.service
deleted file mode 120000
index fb5fbf0c..00000000
--- a/core/modules/systemd/data/lib/systemd/system/sysinit.target.wants/systemd-sysctl.service
+++ /dev/null
@@ -1 +0,0 @@
-../systemd-sysctl.service \ No newline at end of file
diff --git a/core/modules/systemd/data/lib/systemd/system/sysinit.target.wants/systemd-tmpfiles-setup-dev.service b/core/modules/systemd/data/lib/systemd/system/sysinit.target.wants/systemd-tmpfiles-setup-dev.service
deleted file mode 120000
index 0a5032ac..00000000
--- a/core/modules/systemd/data/lib/systemd/system/sysinit.target.wants/systemd-tmpfiles-setup-dev.service
+++ /dev/null
@@ -1 +0,0 @@
-../systemd-tmpfiles-setup-dev.service \ No newline at end of file
diff --git a/core/modules/systemd/data/lib/systemd/system/sysinit.target.wants/systemd-tmpfiles-setup.service b/core/modules/systemd/data/lib/systemd/system/sysinit.target.wants/systemd-tmpfiles-setup.service
deleted file mode 120000
index 12744a3e..00000000
--- a/core/modules/systemd/data/lib/systemd/system/sysinit.target.wants/systemd-tmpfiles-setup.service
+++ /dev/null
@@ -1 +0,0 @@
-../systemd-tmpfiles-setup.service \ No newline at end of file
diff --git a/core/modules/systemd/data/lib/systemd/system/sysinit.target.wants/systemd-udev-trigger.service b/core/modules/systemd/data/lib/systemd/system/sysinit.target.wants/systemd-udev-trigger.service
deleted file mode 120000
index ff2ab9b3..00000000
--- a/core/modules/systemd/data/lib/systemd/system/sysinit.target.wants/systemd-udev-trigger.service
+++ /dev/null
@@ -1 +0,0 @@
-../systemd-udev-trigger.service \ No newline at end of file
diff --git a/core/modules/systemd/data/lib/systemd/system/sysinit.target.wants/systemd-udevd.service b/core/modules/systemd/data/lib/systemd/system/sysinit.target.wants/systemd-udevd.service
deleted file mode 120000
index e64bac22..00000000
--- a/core/modules/systemd/data/lib/systemd/system/sysinit.target.wants/systemd-udevd.service
+++ /dev/null
@@ -1 +0,0 @@
-../systemd-udevd.service \ No newline at end of file
diff --git a/core/modules/systemd/data/lib/systemd/system/sysinit.target.wants/systemd-vconsole-setup.service b/core/modules/systemd/data/lib/systemd/system/sysinit.target.wants/systemd-vconsole-setup.service
deleted file mode 120000
index 78347c39..00000000
--- a/core/modules/systemd/data/lib/systemd/system/sysinit.target.wants/systemd-vconsole-setup.service
+++ /dev/null
@@ -1 +0,0 @@
-../systemd-vconsole-setup.service \ No newline at end of file
diff --git a/core/modules/systemd/data/lib/systemd/system/syslog.socket b/core/modules/systemd/data/lib/systemd/system/syslog.socket
deleted file mode 100644
index d3987cb9..00000000
--- a/core/modules/systemd/data/lib/systemd/system/syslog.socket
+++ /dev/null
@@ -1,40 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Syslog Socket
-Documentation=man:systemd.special(7)
-Documentation=https://www.freedesktop.org/wiki/Software/systemd/syslog
-DefaultDependencies=no
-Before=sockets.target shutdown.target
-
-# Don't allow logging until the very end
-Conflicts=shutdown.target
-
-[Socket]
-ListenDatagram=/run/systemd/journal/syslog
-SocketMode=0666
-PassCredentials=yes
-PassSecurity=yes
-ReceiveBuffer=8M
-
-# The default syslog implementation should make syslog.service a
-# symlink to itself, so that this socket activates the right actual
-# syslog service.
-#
-# Examples:
-#
-# /etc/systemd/system/syslog.service -> /lib/systemd/system/rsyslog.service
-# /etc/systemd/system/syslog.service -> /lib/systemd/system/syslog-ng.service
-#
-# Best way to achieve that is by adding this to your unit file
-# (i.e. to rsyslog.service or syslog-ng.service):
-#
-# [Install]
-# Alias=syslog.service
-#
-# See https://www.freedesktop.org/wiki/Software/systemd/syslog for details.
diff --git a/core/modules/systemd/data/lib/systemd/system/system-update.target b/core/modules/systemd/data/lib/systemd/system/system-update.target
deleted file mode 100644
index 35428797..00000000
--- a/core/modules/systemd/data/lib/systemd/system/system-update.target
+++ /dev/null
@@ -1,17 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Offline System Update
-Documentation=man:systemd.offline-updates(7)
-Documentation=man:systemd.special(7) man:systemd-system-update-generator(8)
-Requires=sysinit.target
-Conflicts=shutdown.target
-After=sysinit.target
-Before=shutdown.target
-AllowIsolate=yes
-Wants=system-update-cleanup.service
diff --git a/core/modules/systemd/data/lib/systemd/system/system.slice b/core/modules/systemd/data/lib/systemd/system/system.slice
deleted file mode 100644
index 841f049b..00000000
--- a/core/modules/systemd/data/lib/systemd/system/system.slice
+++ /dev/null
@@ -1,14 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=System Slice
-Documentation=man:systemd.special(7)
-DefaultDependencies=no
-Before=slices.target
-Requires=-.slice
-After=-.slice
diff --git a/core/modules/systemd/data/lib/systemd/system/systemd-binfmt.service b/core/modules/systemd/data/lib/systemd/system/systemd-binfmt.service
deleted file mode 100644
index b8bdaea2..00000000
--- a/core/modules/systemd/data/lib/systemd/system/systemd-binfmt.service
+++ /dev/null
@@ -1,27 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Set Up Additional Binary Formats
-Documentation=man:systemd-binfmt.service(8) man:binfmt.d(5)
-Documentation=https://www.kernel.org/doc/Documentation/binfmt_misc.txt
-DefaultDependencies=no
-Conflicts=shutdown.target
-After=proc-sys-fs-binfmt_misc.automount
-Before=sysinit.target shutdown.target
-ConditionPathIsReadWrite=/proc/sys/
-ConditionDirectoryNotEmpty=|/lib/binfmt.d
-ConditionDirectoryNotEmpty=|/usr/lib/binfmt.d
-ConditionDirectoryNotEmpty=|/usr/local/lib/binfmt.d
-ConditionDirectoryNotEmpty=|/etc/binfmt.d
-ConditionDirectoryNotEmpty=|/run/binfmt.d
-
-[Service]
-Type=oneshot
-RemainAfterExit=yes
-ExecStart=/lib/systemd/systemd-binfmt
-TimeoutSec=90s
diff --git a/core/modules/systemd/data/lib/systemd/system/systemd-exit.service b/core/modules/systemd/data/lib/systemd/system/systemd-exit.service
deleted file mode 100644
index 22bb6fbe..00000000
--- a/core/modules/systemd/data/lib/systemd/system/systemd-exit.service
+++ /dev/null
@@ -1,17 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Exit the Session
-Documentation=man:systemd.special(7)
-DefaultDependencies=no
-Requires=shutdown.target
-After=shutdown.target
-
-[Service]
-Type=oneshot
-ExecStart=/usr/bin/systemctl --force exit
diff --git a/core/modules/systemd/data/lib/systemd/system/systemd-halt.service b/core/modules/systemd/data/lib/systemd/system/systemd-halt.service
deleted file mode 100644
index 4bd1afb8..00000000
--- a/core/modules/systemd/data/lib/systemd/system/systemd-halt.service
+++ /dev/null
@@ -1,17 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Halt
-Documentation=man:systemd-halt.service(8)
-DefaultDependencies=no
-Requires=shutdown.target umount.target final.target
-After=shutdown.target umount.target final.target
-
-[Service]
-Type=oneshot
-ExecStart=/usr/bin/systemctl --force halt
diff --git a/core/modules/systemd/data/lib/systemd/system/systemd-hibernate.service b/core/modules/systemd/data/lib/systemd/system/systemd-hibernate.service
deleted file mode 100644
index 71f0a4eb..00000000
--- a/core/modules/systemd/data/lib/systemd/system/systemd-hibernate.service
+++ /dev/null
@@ -1,17 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Hibernate
-Documentation=man:systemd-suspend.service(8)
-DefaultDependencies=no
-Requires=sleep.target
-After=sleep.target
-
-[Service]
-Type=oneshot
-ExecStart=/lib/systemd/systemd-sleep hibernate
diff --git a/core/modules/systemd/data/lib/systemd/system/systemd-hybrid-sleep.service b/core/modules/systemd/data/lib/systemd/system/systemd-hybrid-sleep.service
deleted file mode 100644
index eb9f69ab..00000000
--- a/core/modules/systemd/data/lib/systemd/system/systemd-hybrid-sleep.service
+++ /dev/null
@@ -1,17 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Hybrid Suspend+Hibernate
-Documentation=man:systemd-suspend.service(8)
-DefaultDependencies=no
-Requires=sleep.target
-After=sleep.target
-
-[Service]
-Type=oneshot
-ExecStart=/lib/systemd/systemd-sleep hybrid-sleep
diff --git a/core/modules/systemd/data/lib/systemd/system/systemd-initctl.service b/core/modules/systemd/data/lib/systemd/system/systemd-initctl.service
deleted file mode 100644
index 04102700..00000000
--- a/core/modules/systemd/data/lib/systemd/system/systemd-initctl.service
+++ /dev/null
@@ -1,16 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=/dev/initctl Compatibility Daemon
-Documentation=man:systemd-initctl.service(8)
-DefaultDependencies=no
-
-[Service]
-NotifyAccess=all
-ExecStart=/lib/systemd/systemd-initctl
-SystemCallArchitectures=native
diff --git a/core/modules/systemd/data/lib/systemd/system/systemd-initctl.socket b/core/modules/systemd/data/lib/systemd/system/systemd-initctl.socket
deleted file mode 100644
index f628c2e8..00000000
--- a/core/modules/systemd/data/lib/systemd/system/systemd-initctl.socket
+++ /dev/null
@@ -1,17 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=/dev/initctl Compatibility Named Pipe
-Documentation=man:systemd-initctl.service(8)
-DefaultDependencies=no
-Before=sockets.target
-
-[Socket]
-ListenFIFO=/run/systemd/initctl/fifo
-Symlinks=/dev/initctl
-SocketMode=0600
diff --git a/core/modules/systemd/data/lib/systemd/system/systemd-journal-flush.service b/core/modules/systemd/data/lib/systemd/system/systemd-journal-flush.service
deleted file mode 100644
index 74342665..00000000
--- a/core/modules/systemd/data/lib/systemd/system/systemd-journal-flush.service
+++ /dev/null
@@ -1,22 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Flush Journal to Persistent Storage
-Documentation=man:systemd-journald.service(8) man:journald.conf(5)
-DefaultDependencies=no
-Requires=systemd-journald.service
-After=systemd-journald.service
-After=systemd-remount-fs.service
-Before=systemd-user-sessions.service systemd-tmpfiles-setup.service
-RequiresMountsFor=/var/log/journal
-
-[Service]
-ExecStart=/usr/bin/journalctl --flush
-Type=oneshot
-RemainAfterExit=yes
-TimeoutSec=90s
diff --git a/core/modules/systemd/data/lib/systemd/system/systemd-journald-dev-log.socket b/core/modules/systemd/data/lib/systemd/system/systemd-journald-dev-log.socket
deleted file mode 100644
index ffd44bb5..00000000
--- a/core/modules/systemd/data/lib/systemd/system/systemd-journald-dev-log.socket
+++ /dev/null
@@ -1,32 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Journal Socket (/dev/log)
-Documentation=man:systemd-journald.service(8) man:journald.conf(5)
-DefaultDependencies=no
-Before=sockets.target
-
-# Mount and swap units need this. If this socket unit is removed by an
-# isolate request the mount and swap units would be removed too,
-# hence let's exclude this from isolate requests.
-IgnoreOnIsolate=yes
-
-[Socket]
-Service=systemd-journald.service
-ListenDatagram=/run/systemd/journal/dev-log
-Symlinks=/dev/log
-SocketMode=0666
-PassCredentials=yes
-PassSecurity=yes
-
-# Increase both the send and receive buffer, so that things don't
-# block early. Note that journald internally uses the this socket both
-# for receiving syslog messages, and for forwarding them to any other
-# syslog, hence we bump both values.
-ReceiveBuffer=8M
-SendBuffer=8M
diff --git a/core/modules/systemd/data/lib/systemd/system/systemd-journald.service b/core/modules/systemd/data/lib/systemd/system/systemd-journald.service
deleted file mode 100644
index 2b07e27c..00000000
--- a/core/modules/systemd/data/lib/systemd/system/systemd-journald.service
+++ /dev/null
@@ -1,37 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Journal Service
-Documentation=man:systemd-journald.service(8) man:journald.conf(5)
-DefaultDependencies=no
-Requires=systemd-journald.socket
-After=systemd-journald.socket systemd-journald-dev-log.socket systemd-journald-audit.socket syslog.socket
-Before=sysinit.target
-
-[Service]
-Type=notify
-Sockets=systemd-journald.socket systemd-journald-dev-log.socket systemd-journald-audit.socket
-ExecStart=/lib/systemd/systemd-journald
-Restart=always
-RestartSec=0
-StandardOutput=null
-WatchdogSec=3min
-FileDescriptorStoreMax=1024
-CapabilityBoundingSet=CAP_SYS_ADMIN CAP_DAC_OVERRIDE CAP_SYS_PTRACE CAP_SYSLOG CAP_AUDIT_CONTROL CAP_AUDIT_READ CAP_CHOWN CAP_DAC_READ_SEARCH CAP_FOWNER CAP_SETUID CAP_SETGID CAP_MAC_OVERRIDE
-MemoryDenyWriteExecute=yes
-RestrictRealtime=yes
-RestrictNamespaces=yes
-RestrictAddressFamilies=AF_UNIX AF_NETLINK
-SystemCallFilter=~@clock @cpu-emulation @debug @keyring @module @mount @obsolete @raw-io @reboot @swap
-SystemCallArchitectures=native
-
-# Increase the default a bit in order to allow many simultaneous
-# services being run since we keep one fd open per service. Also, when
-# flushing journal files to disk, we might need a lot of fds when many
-# journal files are combined.
-LimitNOFILE=16384
diff --git a/core/modules/systemd/data/lib/systemd/system/systemd-journald.socket b/core/modules/systemd/data/lib/systemd/system/systemd-journald.socket
deleted file mode 100644
index 71737014..00000000
--- a/core/modules/systemd/data/lib/systemd/system/systemd-journald.socket
+++ /dev/null
@@ -1,26 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Journal Socket
-Documentation=man:systemd-journald.service(8) man:journald.conf(5)
-DefaultDependencies=no
-Before=sockets.target
-
-# Mount and swap units need this. If this socket unit is removed by an
-# isolate request the mount and swap units would be removed too,
-# hence let's exclude this from isolate requests.
-IgnoreOnIsolate=yes
-
-[Socket]
-ListenStream=/run/systemd/journal/stdout
-ListenDatagram=/run/systemd/journal/socket
-SocketMode=0666
-PassCredentials=yes
-PassSecurity=yes
-ReceiveBuffer=8M
-Service=systemd-journald.service
diff --git a/core/modules/systemd/data/lib/systemd/system/systemd-kexec.service b/core/modules/systemd/data/lib/systemd/system/systemd-kexec.service
deleted file mode 100644
index 91b5a58a..00000000
--- a/core/modules/systemd/data/lib/systemd/system/systemd-kexec.service
+++ /dev/null
@@ -1,19 +0,0 @@
-# SPDX-License-Identifier: LGPL-2.1+
-#
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Reboot via kexec
-Documentation=man:systemd-halt.service(8)
-DefaultDependencies=no
-Requires=shutdown.target umount.target final.target
-After=shutdown.target umount.target final.target
-
-[Service]
-Type=oneshot
-ExecStart=/bin/systemctl --force kexec
diff --git a/core/modules/systemd/data/lib/systemd/system/systemd-logind.service b/core/modules/systemd/data/lib/systemd/system/systemd-logind.service
deleted file mode 100644
index ba2b2e49..00000000
--- a/core/modules/systemd/data/lib/systemd/system/systemd-logind.service
+++ /dev/null
@@ -1,38 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Login Service
-Documentation=man:systemd-logind.service(8) man:logind.conf(5)
-Documentation=https://www.freedesktop.org/wiki/Software/systemd/logind
-Documentation=https://www.freedesktop.org/wiki/Software/systemd/multiseat
-Wants=user.slice
-After=nss-user-lookup.target user.slice
-
-# Ask for the dbus socket. If running over kdbus, the socket will
-# not be actually used.
-Wants=dbus.socket
-After=dbus.socket
-
-[Service]
-ExecStart=/lib/systemd/systemd-logind
-Restart=always
-RestartSec=0
-BusName=org.freedesktop.login1
-WatchdogSec=3min
-CapabilityBoundingSet=CAP_SYS_ADMIN CAP_MAC_ADMIN CAP_AUDIT_CONTROL CAP_CHOWN CAP_KILL CAP_DAC_READ_SEARCH CAP_DAC_OVERRIDE CAP_FOWNER CAP_SYS_TTY_CONFIG
-MemoryDenyWriteExecute=yes
-RestrictRealtime=yes
-RestrictNamespaces=yes
-RestrictAddressFamilies=AF_UNIX AF_NETLINK AF_INET AF_INET6
-SystemCallFilter=~@clock @cpu-emulation @debug @keyring @module @obsolete @raw-io @reboot @swap
-SystemCallArchitectures=native
-FileDescriptorStoreMax=512
-
-# Increase the default a bit in order to allow many simultaneous
-# logins since we keep one fd open per session.
-LimitNOFILE=16384
diff --git a/core/modules/systemd/data/lib/systemd/system/systemd-machine-id-commit.service b/core/modules/systemd/data/lib/systemd/system/systemd-machine-id-commit.service
deleted file mode 100644
index 58e7239b..00000000
--- a/core/modules/systemd/data/lib/systemd/system/systemd-machine-id-commit.service
+++ /dev/null
@@ -1,22 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Commit a transient machine-id on disk
-Documentation=man:systemd-machine-id-commit.service(8)
-DefaultDependencies=no
-Conflicts=shutdown.target
-Before=sysinit.target shutdown.target
-After=local-fs.target
-ConditionPathIsReadWrite=/etc
-ConditionPathIsMountPoint=/etc/machine-id
-
-[Service]
-Type=oneshot
-RemainAfterExit=yes
-ExecStart=/usr/bin/systemd-machine-id-setup --commit
-TimeoutSec=30s
diff --git a/core/modules/systemd/data/lib/systemd/system/systemd-machined.service b/core/modules/systemd/data/lib/systemd/system/systemd-machined.service
deleted file mode 100644
index bdd89828..00000000
--- a/core/modules/systemd/data/lib/systemd/system/systemd-machined.service
+++ /dev/null
@@ -1,29 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Virtual Machine and Container Registration Service
-Documentation=man:systemd-machined.service(8)
-Documentation=https://www.freedesktop.org/wiki/Software/systemd/machined
-Wants=machine.slice
-After=machine.slice
-RequiresMountsFor=/var/lib/machines
-
-[Service]
-ExecStart=/lib/systemd/systemd-machined
-BusName=org.freedesktop.machine1
-WatchdogSec=3min
-CapabilityBoundingSet=CAP_KILL CAP_SYS_PTRACE CAP_SYS_ADMIN CAP_SETGID CAP_SYS_CHROOT CAP_DAC_READ_SEARCH CAP_DAC_OVERRIDE CAP_CHOWN CAP_FOWNER CAP_FSETID CAP_MKNOD
-MemoryDenyWriteExecute=yes
-RestrictRealtime=yes
-RestrictAddressFamilies=AF_UNIX AF_NETLINK AF_INET AF_INET6
-SystemCallFilter=~@clock @cpu-emulation @debug @keyring @module @obsolete @raw-io @reboot @swap
-SystemCallArchitectures=native
-
-# Note that machined cannot be placed in a mount namespace, since it
-# needs access to the host's mount namespace in order to implement the
-# "machinectl bind" operation.
diff --git a/core/modules/systemd/data/lib/systemd/system/systemd-modules-load.service b/core/modules/systemd/data/lib/systemd/system/systemd-modules-load.service
deleted file mode 100644
index ad2e777f..00000000
--- a/core/modules/systemd/data/lib/systemd/system/systemd-modules-load.service
+++ /dev/null
@@ -1,27 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Load Kernel Modules
-Documentation=man:systemd-modules-load.service(8) man:modules-load.d(5)
-DefaultDependencies=no
-Conflicts=shutdown.target
-Before=sysinit.target shutdown.target
-ConditionCapability=CAP_SYS_MODULE
-ConditionDirectoryNotEmpty=|/lib/modules-load.d
-ConditionDirectoryNotEmpty=|/usr/lib/modules-load.d
-ConditionDirectoryNotEmpty=|/usr/local/lib/modules-load.d
-ConditionDirectoryNotEmpty=|/etc/modules-load.d
-ConditionDirectoryNotEmpty=|/run/modules-load.d
-ConditionKernelCommandLine=|modules-load
-ConditionKernelCommandLine=|rd.modules-load
-
-[Service]
-Type=oneshot
-RemainAfterExit=yes
-ExecStart=/lib/systemd/systemd-modules-load
-TimeoutSec=90s
diff --git a/core/modules/systemd/data/lib/systemd/system/systemd-nspawn@.service b/core/modules/systemd/data/lib/systemd/system/systemd-nspawn@.service
deleted file mode 100644
index d0dfe700..00000000
--- a/core/modules/systemd/data/lib/systemd/system/systemd-nspawn@.service
+++ /dev/null
@@ -1,37 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Container %i
-Documentation=man:systemd-nspawn(1)
-PartOf=machines.target
-Before=machines.target
-After=network.target systemd-resolved.service
-RequiresMountsFor=/var/lib/machines
-
-[Service]
-ExecStart=/usr/bin/systemd-nspawn --quiet --keep-unit --boot --link-journal=try-guest --network-veth -U --settings=override --machine=%i
-KillMode=mixed
-Type=notify
-RestartForceExitStatus=133
-SuccessExitStatus=133
-Slice=machine.slice
-Delegate=yes
-TasksMax=16384
-
-DevicePolicy=closed
-DeviceAllow=/dev/net/tun rwm
-DeviceAllow=char-pts rw
-
-# nspawn itself needs access to /dev/loop-control and /dev/loop, to
-# implement the --image= option. Add these here, too.
-DeviceAllow=/dev/loop-control rw
-DeviceAllow=block-loop rw
-DeviceAllow=block-blkext rw
-
-[Install]
-WantedBy=machines.target
diff --git a/core/modules/systemd/data/lib/systemd/system/systemd-poweroff.service b/core/modules/systemd/data/lib/systemd/system/systemd-poweroff.service
deleted file mode 100644
index 4749129d..00000000
--- a/core/modules/systemd/data/lib/systemd/system/systemd-poweroff.service
+++ /dev/null
@@ -1,17 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Power-Off
-Documentation=man:systemd-halt.service(8)
-DefaultDependencies=no
-Requires=shutdown.target umount.target final.target
-After=shutdown.target umount.target final.target
-
-[Service]
-Type=oneshot
-ExecStart=/usr/bin/systemctl --force poweroff
diff --git a/core/modules/systemd/data/lib/systemd/system/systemd-reboot.service b/core/modules/systemd/data/lib/systemd/system/systemd-reboot.service
deleted file mode 100644
index 49acabc9..00000000
--- a/core/modules/systemd/data/lib/systemd/system/systemd-reboot.service
+++ /dev/null
@@ -1,17 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Reboot
-Documentation=man:systemd-halt.service(8)
-DefaultDependencies=no
-Requires=shutdown.target umount.target final.target
-After=shutdown.target umount.target final.target
-
-[Service]
-Type=oneshot
-ExecStart=/usr/bin/systemctl --force reboot
diff --git a/core/modules/systemd/data/lib/systemd/system/systemd-remount-fs.service b/core/modules/systemd/data/lib/systemd/system/systemd-remount-fs.service
deleted file mode 100644
index f46f9639..00000000
--- a/core/modules/systemd/data/lib/systemd/system/systemd-remount-fs.service
+++ /dev/null
@@ -1,22 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Remount Root and Kernel File Systems
-Documentation=man:systemd-remount-fs.service(8)
-Documentation=https://www.freedesktop.org/wiki/Software/systemd/APIFileSystems
-DefaultDependencies=no
-Conflicts=shutdown.target
-After=systemd-fsck-root.service
-Before=local-fs-pre.target local-fs.target shutdown.target
-Wants=local-fs-pre.target
-ConditionPathExists=/etc/fstab
-
-[Service]
-Type=oneshot
-RemainAfterExit=yes
-ExecStart=/lib/systemd/systemd-remount-fs
diff --git a/core/modules/systemd/data/lib/systemd/system/systemd-suspend.service b/core/modules/systemd/data/lib/systemd/system/systemd-suspend.service
deleted file mode 100644
index 0e53e1cc..00000000
--- a/core/modules/systemd/data/lib/systemd/system/systemd-suspend.service
+++ /dev/null
@@ -1,17 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Suspend
-Documentation=man:systemd-suspend.service(8)
-DefaultDependencies=no
-Requires=sleep.target
-After=sleep.target
-
-[Service]
-Type=oneshot
-ExecStart=/lib/systemd/systemd-sleep suspend
diff --git a/core/modules/systemd/data/lib/systemd/system/systemd-sysctl.service b/core/modules/systemd/data/lib/systemd/system/systemd-sysctl.service
deleted file mode 100644
index e5cbab4b..00000000
--- a/core/modules/systemd/data/lib/systemd/system/systemd-sysctl.service
+++ /dev/null
@@ -1,21 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Apply Kernel Variables
-Documentation=man:systemd-sysctl.service(8) man:sysctl.d(5)
-DefaultDependencies=no
-Conflicts=shutdown.target
-After=systemd-modules-load.service
-Before=sysinit.target shutdown.target
-ConditionPathIsReadWrite=/proc/sys/net/
-
-[Service]
-Type=oneshot
-RemainAfterExit=yes
-ExecStart=/lib/systemd/systemd-sysctl
-TimeoutSec=90s
diff --git a/core/modules/systemd/data/lib/systemd/system/systemd-sysusers.service b/core/modules/systemd/data/lib/systemd/system/systemd-sysusers.service
deleted file mode 100644
index 1802b313..00000000
--- a/core/modules/systemd/data/lib/systemd/system/systemd-sysusers.service
+++ /dev/null
@@ -1,21 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Create System Users
-Documentation=man:sysusers.d(5) man:systemd-sysusers.service(8)
-DefaultDependencies=no
-Conflicts=shutdown.target
-After=systemd-remount-fs.service
-Before=sysinit.target shutdown.target systemd-update-done.service
-ConditionNeedsUpdate=/etc
-
-[Service]
-Type=oneshot
-RemainAfterExit=yes
-ExecStart=/usr/bin/systemd-sysusers
-TimeoutSec=90s
diff --git a/core/modules/systemd/data/lib/systemd/system/systemd-tmpfiles-setup-dev.service b/core/modules/systemd/data/lib/systemd/system/systemd-tmpfiles-setup-dev.service
deleted file mode 100644
index 761a4fc9..00000000
--- a/core/modules/systemd/data/lib/systemd/system/systemd-tmpfiles-setup-dev.service
+++ /dev/null
@@ -1,20 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Create Static Device Nodes in /dev
-Documentation=man:tmpfiles.d(5) man:systemd-tmpfiles(8)
-DefaultDependencies=no
-Conflicts=shutdown.target
-After=systemd-sysusers.service
-Before=sysinit.target local-fs-pre.target systemd-udevd.service shutdown.target
-ConditionCapability=CAP_SYS_MODULE
-
-[Service]
-Type=oneshot
-RemainAfterExit=yes
-ExecStart=/usr/bin/systemd-tmpfiles --prefix=/dev --create --boot
diff --git a/core/modules/systemd/data/lib/systemd/system/systemd-tmpfiles-setup.service b/core/modules/systemd/data/lib/systemd/system/systemd-tmpfiles-setup.service
deleted file mode 100644
index fce1c42f..00000000
--- a/core/modules/systemd/data/lib/systemd/system/systemd-tmpfiles-setup.service
+++ /dev/null
@@ -1,20 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Create Volatile Files and Directories
-Documentation=man:tmpfiles.d(5) man:systemd-tmpfiles(8)
-DefaultDependencies=no
-Conflicts=shutdown.target
-After=local-fs.target systemd-sysusers.service
-Before=sysinit.target shutdown.target
-RefuseManualStop=yes
-
-[Service]
-Type=oneshot
-RemainAfterExit=yes
-ExecStart=/usr/bin/systemd-tmpfiles --create --remove --boot --exclude-prefix=/dev
diff --git a/core/modules/systemd/data/lib/systemd/system/systemd-udev-settle.service b/core/modules/systemd/data/lib/systemd/system/systemd-udev-settle.service
deleted file mode 100644
index 20a89228..00000000
--- a/core/modules/systemd/data/lib/systemd/system/systemd-udev-settle.service
+++ /dev/null
@@ -1,25 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-# This service can dynamically be pulled-in by legacy services which
-# cannot reliably cope with dynamic device configurations, and wrongfully
-# expect a populated /dev during bootup.
-
-[Unit]
-Description=udev Wait for Complete Device Initialization
-Documentation=man:udev(7) man:systemd-udevd.service(8)
-DefaultDependencies=no
-Wants=systemd-udevd.service
-After=systemd-udev-trigger.service
-Before=sysinit.target
-ConditionPathIsReadWrite=/sys
-
-[Service]
-Type=oneshot
-TimeoutSec=180
-RemainAfterExit=yes
-ExecStart=/usr/bin/udevadm settle
diff --git a/core/modules/systemd/data/lib/systemd/system/systemd-udev-trigger.service b/core/modules/systemd/data/lib/systemd/system/systemd-udev-trigger.service
deleted file mode 100644
index fbc52694..00000000
--- a/core/modules/systemd/data/lib/systemd/system/systemd-udev-trigger.service
+++ /dev/null
@@ -1,20 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=udev Coldplug all Devices
-Documentation=man:udev(7) man:systemd-udevd.service(8)
-DefaultDependencies=no
-Wants=systemd-udevd.service
-After=systemd-udevd-kernel.socket systemd-udevd-control.socket systemd-hwdb-update.service
-Before=sysinit.target
-ConditionPathIsReadWrite=/sys
-
-[Service]
-Type=oneshot
-RemainAfterExit=yes
-ExecStart=/usr/bin/udevadm trigger --type=subsystems --action=add ; /usr/bin/udevadm trigger --type=devices --action=add
diff --git a/core/modules/systemd/data/lib/systemd/system/systemd-udevd-control.socket b/core/modules/systemd/data/lib/systemd/system/systemd-udevd-control.socket
deleted file mode 100644
index 46f704ed..00000000
--- a/core/modules/systemd/data/lib/systemd/system/systemd-udevd-control.socket
+++ /dev/null
@@ -1,20 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=udev Control Socket
-Documentation=man:systemd-udevd.service(8) man:udev(7)
-DefaultDependencies=no
-Before=sockets.target
-ConditionPathIsReadWrite=/sys
-
-[Socket]
-Service=systemd-udevd.service
-ListenSequentialPacket=/run/udev/control
-SocketMode=0600
-PassCredentials=yes
-RemoveOnStop=yes
diff --git a/core/modules/systemd/data/lib/systemd/system/systemd-udevd-kernel.socket b/core/modules/systemd/data/lib/systemd/system/systemd-udevd-kernel.socket
deleted file mode 100644
index 1a162069..00000000
--- a/core/modules/systemd/data/lib/systemd/system/systemd-udevd-kernel.socket
+++ /dev/null
@@ -1,19 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=udev Kernel Socket
-Documentation=man:systemd-udevd.service(8) man:udev(7)
-DefaultDependencies=no
-Before=sockets.target
-ConditionPathIsReadWrite=/sys
-
-[Socket]
-Service=systemd-udevd.service
-ReceiveBuffer=128M
-ListenNetlink=kobject-uevent 1
-PassCredentials=yes
diff --git a/core/modules/systemd/data/lib/systemd/system/systemd-udevd.service b/core/modules/systemd/data/lib/systemd/system/systemd-udevd.service
deleted file mode 100644
index 0f476d00..00000000
--- a/core/modules/systemd/data/lib/systemd/system/systemd-udevd.service
+++ /dev/null
@@ -1,31 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=udev Kernel Device Manager
-Documentation=man:systemd-udevd.service(8) man:udev(7)
-DefaultDependencies=no
-Wants=systemd-udevd-control.socket systemd-udevd-kernel.socket
-After=systemd-udevd-control.socket systemd-udevd-kernel.socket systemd-sysusers.service
-Before=sysinit.target
-ConditionPathIsReadWrite=/sys
-
-[Service]
-Type=notify
-OOMScoreAdjust=-1000
-Sockets=systemd-udevd-control.socket systemd-udevd-kernel.socket
-Restart=always
-RestartSec=0
-ExecStart=/lib/systemd/systemd-udevd
-KillMode=mixed
-WatchdogSec=3min
-TasksMax=infinity
-MountFlags=slave
-MemoryDenyWriteExecute=yes
-RestrictRealtime=yes
-RestrictAddressFamilies=AF_UNIX AF_NETLINK AF_INET AF_INET6
-SystemCallArchitectures=native
diff --git a/core/modules/systemd/data/lib/systemd/system/systemd-update-utmp-runlevel.service b/core/modules/systemd/data/lib/systemd/system/systemd-update-utmp-runlevel.service
deleted file mode 100644
index 6a58b9d0..00000000
--- a/core/modules/systemd/data/lib/systemd/system/systemd-update-utmp-runlevel.service
+++ /dev/null
@@ -1,21 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Update UTMP about System Runlevel Changes
-Documentation=man:systemd-update-utmp.service(8) man:utmp(5)
-DefaultDependencies=no
-RequiresMountsFor=/var/log/wtmp
-Conflicts=shutdown.target
-Requisite=systemd-update-utmp.service
-After=systemd-update-utmp.service
-After=runlevel1.target runlevel2.target runlevel3.target runlevel4.target runlevel5.target
-Before=shutdown.target
-
-[Service]
-Type=oneshot
-ExecStart=/lib/systemd/systemd-update-utmp runlevel
diff --git a/core/modules/systemd/data/lib/systemd/system/systemd-update-utmp.service b/core/modules/systemd/data/lib/systemd/system/systemd-update-utmp.service
deleted file mode 100644
index 82e2c053..00000000
--- a/core/modules/systemd/data/lib/systemd/system/systemd-update-utmp.service
+++ /dev/null
@@ -1,21 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Update UTMP about System Boot/Shutdown
-Documentation=man:systemd-update-utmp.service(8) man:utmp(5)
-DefaultDependencies=no
-RequiresMountsFor=/var/log/wtmp
-Conflicts=shutdown.target
-After=systemd-remount-fs.service systemd-tmpfiles-setup.service auditd.service
-Before=sysinit.target shutdown.target
-
-[Service]
-Type=oneshot
-RemainAfterExit=yes
-ExecStart=/lib/systemd/systemd-update-utmp reboot
-ExecStop=/lib/systemd/systemd-update-utmp shutdown
diff --git a/core/modules/systemd/data/lib/systemd/system/systemd-user-sessions.service b/core/modules/systemd/data/lib/systemd/system/systemd-user-sessions.service
deleted file mode 100644
index e97e0eba..00000000
--- a/core/modules/systemd/data/lib/systemd/system/systemd-user-sessions.service
+++ /dev/null
@@ -1,17 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Permit User Sessions
-Documentation=man:systemd-user-sessions.service(8)
-After=remote-fs.target nss-user-lookup.target network.target
-
-[Service]
-Type=oneshot
-RemainAfterExit=yes
-ExecStart=/lib/systemd/systemd-user-sessions start
-ExecStop=/lib/systemd/systemd-user-sessions stop
diff --git a/core/modules/systemd/data/lib/systemd/system/systemd-vconsole-setup.service b/core/modules/systemd/data/lib/systemd/system/systemd-vconsole-setup.service
deleted file mode 100644
index 90c4e21e..00000000
--- a/core/modules/systemd/data/lib/systemd/system/systemd-vconsole-setup.service
+++ /dev/null
@@ -1,20 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Setup Virtual Console
-Documentation=man:systemd-vconsole-setup.service(8) man:vconsole.conf(5)
-DefaultDependencies=no
-Conflicts=shutdown.target
-After=
-Before=sysinit.target shutdown.target
-ConditionPathExists=/dev/tty0
-
-[Service]
-Type=oneshot
-RemainAfterExit=yes
-ExecStart=/lib/systemd/systemd-vconsole-setup
diff --git a/core/modules/systemd/data/lib/systemd/system/systemd-volatile-root.service b/core/modules/systemd/data/lib/systemd/system/systemd-volatile-root.service
deleted file mode 100644
index 8fedb740..00000000
--- a/core/modules/systemd/data/lib/systemd/system/systemd-volatile-root.service
+++ /dev/null
@@ -1,21 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Enforce Volatile Root File Systems
-Documentation=man:systemd-volatile-root.service(8)
-DefaultDependencies=no
-Conflicts=shutdown.target
-After=sysroot.mount
-Before=initrd-root-fs.target shutdown.target
-Conflicts=shutdown.target
-AssertPathExists=/etc/initrd-release
-
-[Service]
-Type=oneshot
-RemainAfterExit=yes
-ExecStart=/lib/systemd/systemd-volatile-root yes /sysroot
diff --git a/core/modules/systemd/data/lib/systemd/system/time-sync.target b/core/modules/systemd/data/lib/systemd/system/time-sync.target
deleted file mode 100644
index debee741..00000000
--- a/core/modules/systemd/data/lib/systemd/system/time-sync.target
+++ /dev/null
@@ -1,11 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=System Time Synchronized
-Documentation=man:systemd.special(7)
-RefuseManualStart=yes
diff --git a/core/modules/systemd/data/lib/systemd/system/timers.target b/core/modules/systemd/data/lib/systemd/system/timers.target
deleted file mode 100644
index 251fa680..00000000
--- a/core/modules/systemd/data/lib/systemd/system/timers.target
+++ /dev/null
@@ -1,13 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=Timers
-Documentation=man:systemd.special(7)
-
-DefaultDependencies=no
-Conflicts=shutdown.target
diff --git a/core/modules/systemd/data/lib/systemd/system/timers.target.wants/systemd-tmpfiles-clean.timer b/core/modules/systemd/data/lib/systemd/system/timers.target.wants/systemd-tmpfiles-clean.timer
deleted file mode 120000
index ea23a64d..00000000
--- a/core/modules/systemd/data/lib/systemd/system/timers.target.wants/systemd-tmpfiles-clean.timer
+++ /dev/null
@@ -1 +0,0 @@
-../systemd-tmpfiles-clean.timer \ No newline at end of file
diff --git a/core/modules/systemd/data/lib/systemd/system/user.slice b/core/modules/systemd/data/lib/systemd/system/user.slice
deleted file mode 100644
index 9fa6284c..00000000
--- a/core/modules/systemd/data/lib/systemd/system/user.slice
+++ /dev/null
@@ -1,11 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=User and Session Slice
-Documentation=man:systemd.special(7)
-Before=slices.target
diff --git a/core/modules/systemd/data/lib/systemd/system/user@.service b/core/modules/systemd/data/lib/systemd/system/user@.service
deleted file mode 100644
index 4c9d9cd1..00000000
--- a/core/modules/systemd/data/lib/systemd/system/user@.service
+++ /dev/null
@@ -1,21 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-[Unit]
-Description=User Manager for UID %i
-After=systemd-user-sessions.service
-
-[Service]
-User=%i
-PAMName=systemd-user
-Type=notify
-ExecStart=-/lib/systemd/systemd --user
-Slice=user-%i.slice
-KillMode=mixed
-Delegate=yes
-TasksMax=infinity
-TimeoutStopSec=120s
diff --git a/core/modules/systemd/data/lib/udev/rules.d/70-uaccess-floppy.rules b/core/modules/systemd/data/lib/udev/rules.d/70-uaccess-floppy.rules
deleted file mode 100644
index 113d288a..00000000
--- a/core/modules/systemd/data/lib/udev/rules.d/70-uaccess-floppy.rules
+++ /dev/null
@@ -1,8 +0,0 @@
-ACTION=="remove", GOTO="floppy_extra_end"
-ENV{MAJOR}=="", GOTO="floppy_extra_end"
-
-# floppy devices
-SUBSYSTEM=="block", KERNEL=="fd[0-9]*", TAG+="uaccess"
-
-LABEL="floppy_extra_end"
-
diff --git a/core/modules/systemd/data/lib/udev/rules.d/99-systemd.rules b/core/modules/systemd/data/lib/udev/rules.d/99-systemd.rules
deleted file mode 100644
index 37c649d4..00000000
--- a/core/modules/systemd/data/lib/udev/rules.d/99-systemd.rules
+++ /dev/null
@@ -1,55 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-
-ACTION=="remove", GOTO="systemd_end"
-
-SUBSYSTEM=="tty", KERNEL=="tty[0-9]|tty1[0-2]", TAG+="systemd"
-SUBSYSTEM=="tty", KERNEL=="tty[a-zA-Z]*|hvc*|xvc*|hvsi*", TAG+="systemd"
-
-KERNEL=="vport*", TAG+="systemd"
-
-SUBSYSTEM=="block", KERNEL!="ram*|loop*", TAG+="systemd"
-SUBSYSTEM=="block", KERNEL!="ram*|loop*", ENV{DM_UDEV_DISABLE_OTHER_RULES_FLAG}=="1", ENV{SYSTEMD_READY}="0"
-
-# Ignore encrypted devices with no identified superblock on it, since
-# we are probably still calling mke2fs or mkswap on it.
-
-SUBSYSTEM=="block", KERNEL!="ram*|loop*", ENV{DM_UUID}=="CRYPT-*", ENV{ID_PART_TABLE_TYPE}=="", ENV{ID_FS_USAGE}=="", ENV{SYSTEMD_READY}="0"
-
-# We need a hardware independent way to identify network devices. We
-# use the /sys/subsystem path for this. Current vanilla kernels don't
-# actually support that hierarchy right now, however upcoming kernels
-# will. HAL and udev internally support /sys/subsystem already, hence
-# it should be safe to use this here, too. This is mostly just an
-# identification string for systemd, so whether the path actually is
-# accessible or not does not matter as long as it is unique and in the
-# filesystem namespace.
-#
-# http://git.kernel.org/?p=linux/hotplug/udev.git;a=blob;f=libudev/libudev-enumerate.c;h=da831449dcaf5e936a14409e8e68ab12d30a98e2;hb=HEAD#l742
-
-SUBSYSTEM=="net", KERNEL=="eth*", TAG=="openslxignore", GOTO="systemd_end"
-
-SUBSYSTEM=="bluetooth", TAG+="systemd", ENV{SYSTEMD_ALIAS}="/sys/subsystem/bluetooth/devices/%k"
-
-SUBSYSTEM=="bluetooth", TAG+="systemd", ENV{SYSTEMD_WANTS}="bluetooth.target"
-ENV{ID_SMARTCARD_READER}=="*?", TAG+="systemd", ENV{SYSTEMD_WANTS}="smartcard.target"
-SUBSYSTEM=="sound", KERNEL=="card*", TAG+="systemd", ENV{SYSTEMD_WANTS}="sound.target"
-
-SUBSYSTEM=="printer", TAG+="systemd", ENV{SYSTEMD_WANTS}="printer.target"
-SUBSYSTEM=="usb", KERNEL=="lp*", TAG+="systemd", ENV{SYSTEMD_WANTS}="printer.target"
-SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", ENV{ID_USB_INTERFACES}=="*:0701??:*", TAG+="systemd", ENV{SYSTEMD_WANTS}="printer.target"
-
-# Apply sysctl variables to network devices (and only to those) as they appear.
-SUBSYSTEM=="net", KERNEL=="eth*", RUN+="/lib/systemd/systemd-sysctl --prefix=/proc/sys/net/ipv4/conf/$name --prefix=/proc/sys/net/ipv4/neigh/$name --prefix=/proc/sys/net/ipv6/conf/$name --prefix=/proc/sys/net/ipv6/neigh/$name"
-
-# Asynchronously mount file systems implemented by these modules as
-# soon as they are loaded.
-
-SUBSYSTEM=="module", KERNEL=="fuse", ACTION=="add", TAG+="systemd", ENV{SYSTEMD_WANTS}="sys-fs-fuse-connections.mount"
-SUBSYSTEM=="module", KERNEL=="configfs", ACTION=="add", TAG+="systemd", ENV{SYSTEMD_WANTS}="sys-kernel-config.mount"
-
-LABEL="systemd_end"
diff --git a/core/modules/systemd/data/opt/openslx/scripts/tty-init b/core/modules/systemd/data/opt/openslx/scripts/tty-init
deleted file mode 100755
index a157854d..00000000
--- a/core/modules/systemd/data/opt/openslx/scripts/tty-init
+++ /dev/null
@@ -1,23 +0,0 @@
-#!/bin/ash
-
-[ -c "/dev/$1" ] || exit 0
-
-exec > "/dev/$1"
-echo -en "\e]P0232323" #black
-echo -en "\e]P82B2B2B" #darkgrey
-echo -en "\e]P1D75F5F" #darkred
-echo -en "\e]P9E33636" #red
-echo -en "\e]P287AF5F" #darkgreen
-echo -en "\e]PA98E34D" #green
-echo -en "\e]P3D7AF87" #brown
-echo -en "\e]PBFFD75F" #yellow
-echo -en "\e]P48787AF" #darkblue
-echo -en "\e]PC7373C9" #blue
-echo -en "\e]P5BD53A5" #darkmagenta
-echo -en "\e]PDD633B2" #magenta
-echo -en "\e]P65FAFAF" #darkcyan
-echo -en "\e]PE44C9C9" #cyan
-echo -en "\e]P7E5E5E5" #lightgrey
-echo -en "\e]PFFFFFFF" #white
-echo -en '\033c' #clear
-
diff --git a/core/modules/systemd/data/sbin/halt b/core/modules/systemd/data/sbin/halt
deleted file mode 120000
index 5d9faf5d..00000000
--- a/core/modules/systemd/data/sbin/halt
+++ /dev/null
@@ -1 +0,0 @@
-/usr/bin/systemctl \ No newline at end of file
diff --git a/core/modules/systemd/data/sbin/init b/core/modules/systemd/data/sbin/init
deleted file mode 120000
index 60baf528..00000000
--- a/core/modules/systemd/data/sbin/init
+++ /dev/null
@@ -1 +0,0 @@
-/usr/lib/systemd/systemd \ No newline at end of file
diff --git a/core/modules/systemd/data/sbin/poweroff b/core/modules/systemd/data/sbin/poweroff
deleted file mode 120000
index 5d9faf5d..00000000
--- a/core/modules/systemd/data/sbin/poweroff
+++ /dev/null
@@ -1 +0,0 @@
-/usr/bin/systemctl \ No newline at end of file
diff --git a/core/modules/systemd/data/sbin/reboot b/core/modules/systemd/data/sbin/reboot
deleted file mode 120000
index 5d9faf5d..00000000
--- a/core/modules/systemd/data/sbin/reboot
+++ /dev/null
@@ -1 +0,0 @@
-/usr/bin/systemctl \ No newline at end of file
diff --git a/core/modules/systemd/data/sbin/runlevel b/core/modules/systemd/data/sbin/runlevel
deleted file mode 120000
index 5d9faf5d..00000000
--- a/core/modules/systemd/data/sbin/runlevel
+++ /dev/null
@@ -1 +0,0 @@
-/usr/bin/systemctl \ No newline at end of file
diff --git a/core/modules/systemd/data/sbin/shutdown b/core/modules/systemd/data/sbin/shutdown
deleted file mode 120000
index 5d9faf5d..00000000
--- a/core/modules/systemd/data/sbin/shutdown
+++ /dev/null
@@ -1 +0,0 @@
-/usr/bin/systemctl \ No newline at end of file
diff --git a/core/modules/systemd/data/sbin/telinit b/core/modules/systemd/data/sbin/telinit
deleted file mode 120000
index 5d9faf5d..00000000
--- a/core/modules/systemd/data/sbin/telinit
+++ /dev/null
@@ -1 +0,0 @@
-/usr/bin/systemctl \ No newline at end of file
diff --git a/core/modules/systemd/module.build b/core/modules/systemd/module.build
deleted file mode 100644
index ff0311e3..00000000
--- a/core/modules/systemd/module.build
+++ /dev/null
@@ -1,104 +0,0 @@
-#!/bin/bash
-#tool/distro specific functions for fetching, building and installing dependencies
-
-fetch_source () {
- # systemd
- download_untar "$REQUIRED_URL" "src/"
-
- sed -i '2 a #undef HAVE_DECL_MEMFD_CREATE\n#define HAVE_DECL_MEMFD_CREATE 1\n#include <sys/mman.h>' \
- "src/systemd-$REQUIRED_VERSION/src/basic/missing_syscall.h" || perror "Could not patch syscall memfd"
-
- # now check if the a fix needs to be applied
- if [ -e "${MODULE_DIR}/systemd-openslx-${REQUIRED_VERSION#systemd-}.patch" ]; then
- patch -p0 src/systemd-*/src/basic/path-util.h < "${MODULE_DIR}/systemd-openslx-${REQUIRED_VERSION#systemd-}.patch" || perror "Failed to apply openslx systemd patch."
- else
- # TODO use the above hint for setting environmenet through /etc/systemd/system.conf
- pwarning "OpenSLX patch for systemd missing..."
- fi
-
- # libkmod
- download_untar "$REQUIRED_LIBKMOD_URL" "src/"
-}
-
-build () {
- #build libkmod
- pinfo "Building libkmod"
- cd "${MODULE_WORK_DIR}/src/$REQUIRED_LIBKMOD_VERSION"
- ./configure || perror "./configure kmod failed."
- make || perror "kmod make failed."
- DESTDIR="${MODULE_BUILD_DIR}" make install || perror "kmod make install failed."
- cd - &> /dev/null
-
- #build systemd
- pinfo "Building systemd"
- cd "${MODULE_WORK_DIR}/src/systemd-$REQUIRED_VERSION"
- pinfo "calling configure in ${MODULE_WORK_DIR}/src/systemd-$REQUIRED_VERSION"
-
- # Save potentially pre-used paths/flages
- OLDLDFLAGS="$LDFLAGS"
- OLDCPPFLAGS="$CPPFLAGS"
- OLDPKG_CONFIG_PATH="$PKG_CONFIG_PATH"
- OLDLD_LIBRARY_PATH="$LD_LIBRARY_PATH"
-
- export LDFLAGS="$LDFLAGS -L${MODULE_BUILD_DIR}/usr/lib"
- export CPPFLAGS="-I${MODULE_BUILD_DIR}/usr/include"
- export PKG_CONFIG_PATH="${MODULE_BUILD_DIR}/usr/lib64/pkgconfig:${MODULE_BUILD_DIR}/usr/lib/pkgconfig"
- export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:${MODULE_BUILD_DIR}/usr/lib:${MODULE_BUILD_DIR}/usr/lib64"
-
- [ ! -e "./configure" ] && ./autogen.sh
-
- ./configure \
- --exec-prefix=/ \
- --disable-manpages \
- --enable-split-usr \
- --sysconfdir="/etc" \
- --runstatedir="/run" \
- --enable-gtk-doc-html=no \
- --disable-nls \
- --disable-microhttpd \
- --disable-bootchart \
- --disable-quotacheck \
- --disable-hostnamed \
- --disable-timedated \
- --disable-localed \
- --disable-coredump \
- --disable-keymap \
- --disable-hwdb \
- --disable-ldconfig \
- --disable-networkd \
- --disable-resolved \
- --disable-timesyncd \
- --disable-importd \
- --disable-rfkill \
- --disable-backlight \
- --disable-firstboot \
- --disable-nss-systemd \
- --without-python \
- --enable-blkid \
- --enable-acl \
- --enable-pam \
- --enable-kmod \
- --with-pamlibdir="$SYS_PAM_MODULES_PATH" \
- || perror "configure failed."
-
- pinfo "calling make"
- make || perror "make failed."
- pinfo "calling make install"
- DESTDIR="${MODULE_BUILD_DIR}" make install || perror "make install failed."
- cd - &> /dev/null
- # Nonsense in our env
- rm -f -- "${MODULE_BUILD_DIR}/usr/lib/tmpfiles.d/etc.conf"
- rm -f -- "${MODULE_BUILD_DIR}/usr/lib/tmpfiles.d/systemd-remote.conf"
-
- # Restore used flags/paths:
- export LDFLAGS="$OLDLDFLAGS"
- export CPPFLAGS="$OLDCPPFLAGS"
- export PKG_CONFIG_PATH="$OLDPKG_CONFIG_PATH"
- export LD_LIBRARY_PATH="$OLDLD_LIBRARY_PATH"
-}
-
-post_copy() {
- useradd --system --no-create-home "kvm"
- useradd --system --no-create-home "systemd-journal-upload"
-}
-
diff --git a/core/modules/systemd/module.conf b/core/modules/systemd/module.conf
deleted file mode 100644
index ef64043e..00000000
--- a/core/modules/systemd/module.conf
+++ /dev/null
@@ -1,63 +0,0 @@
-#!/bin/bash
-REQUIRED_VERSION="234"
-REQUIRED_URL="https://github.com/systemd/systemd/archive/v${REQUIRED_VERSION}.tar.gz"
-REQUIRED_LIBKMOD_VERSION="kmod-15"
-REQUIRED_LIBKMOD_URL="http://www.kernel.org/pub/linux/utils/kernel/kmod/${REQUIRED_LIBKMOD_VERSION}.tar.gz"
-REQUIRED_BINARIES="
- journalctl
- loginctl
- systemctl
- systemd-analyze
- systemd-ask-password
- systemd-cat
- systemd-cgls
- systemd-cgtop
- systemd-delta
- systemd-detect-virt
- systemd-inhibit
- systemd-machine-id-setup
- systemd-notify
- systemd-nspawn
- systemd-stdio-bridge
- systemd-tmpfiles
- systemd-tty-ask-password-agent
- udevadm
- systemd
- systemd-ac-power
- systemd-binfmt
- systemd-cgroups-agent
- systemd-fsck
- systemd-initctl
- systemd-journald
- systemd-logind
- systemd-modules-load
- systemd-random-seed
- systemd-remount-fs
- systemd-reply-password
- systemd-shutdown
- systemd-sleep
- systemd-sysctl
- systemd-udevd
- systemd-update-utmp
- systemd-user-sessions
- systemd-vconsole-setup
- systemd-fstab-generator
- systemd-getty-generator
- systemd-rc-local-generator
- systemd-system-update-generator
- ata_id
- cdrom_id
- collect
- mtd_probe
- scsi_id
- v4l_id"
-REQUIRED_DIRECTORIES="
- $SYS_PAM_MODULES_PATH
- /etc
- /usr/include
- /usr/share/dbus-1
- /usr/share/polkit-1
- /lib/udev
- /usr/lib/tmpfiles.d
- /lib/systemd/user
-"
diff --git a/core/modules/systemd/module.conf.centos b/core/modules/systemd/module.conf.centos
deleted file mode 100644
index ecaab604..00000000
--- a/core/modules/systemd/module.conf.centos
+++ /dev/null
@@ -1,12 +0,0 @@
-#!/bin/bash
-REQUIRED_INSTALLED_PACKAGES="
- intltool
- gperf
- libcap-devel
- libudev-devel
- dbus-devel
- libxslt
- libblkid-devel
- libacl-devel
- glib2-devel
-"
diff --git a/core/modules/systemd/module.conf.debian b/core/modules/systemd/module.conf.debian
deleted file mode 100644
index c1d329c6..00000000
--- a/core/modules/systemd/module.conf.debian
+++ /dev/null
@@ -1,15 +0,0 @@
-#!/bin/bash
-REQUIRED_INSTALLED_PACKAGES="
- intltool
- libtool
- gperf
- dbus
- libcap-dev
- libudev-dev
- libdbus-1-dev
- xsltproc
- libblkid-dev
- libacl1-dev
- libpam-dev
- libmount-dev
-"
diff --git a/core/modules/systemd/module.conf.fedora b/core/modules/systemd/module.conf.fedora
deleted file mode 100644
index ecaab604..00000000
--- a/core/modules/systemd/module.conf.fedora
+++ /dev/null
@@ -1,12 +0,0 @@
-#!/bin/bash
-REQUIRED_INSTALLED_PACKAGES="
- intltool
- gperf
- libcap-devel
- libudev-devel
- dbus-devel
- libxslt
- libblkid-devel
- libacl-devel
- glib2-devel
-"
diff --git a/core/modules/systemd/module.conf.opensuse b/core/modules/systemd/module.conf.opensuse
deleted file mode 100644
index 2db101a2..00000000
--- a/core/modules/systemd/module.conf.opensuse
+++ /dev/null
@@ -1,11 +0,0 @@
-#!/bin/bash
-REQUIRED_INSTALLED_PACKAGES="
- intltool
- gperf
- libcap-devel
- libudev-devel
- dbus-1-devel
- libxslt-tools
- libblkid-devel
- libacl-devel
-"
diff --git a/core/modules/systemd/module.conf.ubuntu b/core/modules/systemd/module.conf.ubuntu
deleted file mode 100644
index c1d329c6..00000000
--- a/core/modules/systemd/module.conf.ubuntu
+++ /dev/null
@@ -1,15 +0,0 @@
-#!/bin/bash
-REQUIRED_INSTALLED_PACKAGES="
- intltool
- libtool
- gperf
- dbus
- libcap-dev
- libudev-dev
- libdbus-1-dev
- xsltproc
- libblkid-dev
- libacl1-dev
- libpam-dev
- libmount-dev
-"
diff --git a/core/modules/systemd/systemd-204-mtd_probe.patch b/core/modules/systemd/systemd-204-mtd_probe.patch
deleted file mode 100644
index 5486da66..00000000
--- a/core/modules/systemd/systemd-204-mtd_probe.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- udev/mtd_probe/mtd_probe.h.pre 2017-11-30 10:22:58.370237301 +0100
-+++ udev/mtd_probe/mtd_probe.h 2017-11-23 17:23:44.437540620 +0100
-@@ -18,6 +18,7 @@
- */
-
- #include <mtd/mtd-user.h>
-+#include <stdint.h>
-
- /* Full oob structure as written on the flash */
- struct sm_oob {
diff --git a/core/modules/systemd/systemd-openslx-229.patch b/core/modules/systemd/systemd-openslx-229.patch
deleted file mode 100644
index 7e7d4bb9..00000000
--- a/core/modules/systemd/systemd-openslx-229.patch
+++ /dev/null
@@ -1,13 +0,0 @@
---- src/basic/path-util.h.orig 2018-08-31 13:09:43.340073158 +0200
-+++ src/basic/path-util.h 2018-08-31 13:04:18.351554545 +0200
-@@ -27,8 +27,8 @@
- #include "macro.h"
- #include "time-util.h"
-
--#define DEFAULT_PATH_NORMAL "/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin"
--#define DEFAULT_PATH_SPLIT_USR DEFAULT_PATH_NORMAL ":/sbin:/bin"
-+#define DEFAULT_PATH_NORMAL "/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/opt/openslx/sbin:/opt/openslx/bin"
-+#define DEFAULT_PATH_SPLIT_USR "/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/openslx/sbin:/opt/openslx/bin"
-
- #ifdef HAVE_SPLIT_USR
- # define DEFAULT_PATH DEFAULT_PATH_SPLIT_USR
diff --git a/core/modules/systemd/systemd-openslx-234.patch b/core/modules/systemd/systemd-openslx-234.patch
deleted file mode 100644
index 35d1e273..00000000
--- a/core/modules/systemd/systemd-openslx-234.patch
+++ /dev/null
@@ -1,13 +0,0 @@
---- src/basic/path-util.h.orig 2018-08-31 13:09:43.340073158 +0200
-+++ src/basic/path-util.h 2018-08-31 13:04:18.351554545 +0200
-@@ -27,8 +27,8 @@
- #include "string-util.h"
- #include "time-util.h"
-
--#define DEFAULT_PATH_NORMAL "/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin"
--#define DEFAULT_PATH_SPLIT_USR DEFAULT_PATH_NORMAL ":/sbin:/bin"
-+#define DEFAULT_PATH_NORMAL "/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/opt/openslx/sbin:/opt/openslx/bin"
-+#define DEFAULT_PATH_SPLIT_USR "/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/openslx/sbin:/opt/openslx/bin"
-
- #ifdef HAVE_SPLIT_USR
- # define DEFAULT_PATH DEFAULT_PATH_SPLIT_USR
diff --git a/core/modules/systemd/systemd-openslx.patch b/core/modules/systemd/systemd-openslx.patch
deleted file mode 100644
index ef6cb542..00000000
--- a/core/modules/systemd/systemd-openslx.patch
+++ /dev/null
@@ -1,26 +0,0 @@
---- core/main.c 2013-05-09 15:45:50.000000000 +0200
-+++ core/main.c 2013-12-19 14:46:03.020362993 +0100
-@@ -1477,9 +1477,9 @@
- /* Set up PATH unless it is already set */
- setenv("PATH",
- #ifdef HAVE_SPLIT_USR
-- "/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
-+ "/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" ":/opt/openslx/sbin:/opt/openslx/bin",
- #else
-- "/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin",
-+ "/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin" ":/opt/openslx/sbin:/opt/openslx/bin",
- #endif
- arg_running_as == SYSTEMD_SYSTEM);
-
-@@ -1513,6 +1513,11 @@
- unsetenv("LISTEN_FDS");
- unsetenv("LISTEN_PID");
-
-+ /* OpenSLX: "Fix" libc/nss/nss_ldap deadlock
-+ * when not using nscd */
-+ setenv("HOME", "/", 1);
-+ setenv("USER", "root", 1);
-+
- /* All other variables are left as is, so that clients
- * can still read them via /proc/1/environ */
- }
diff --git a/core/modules/vbox-src/data/opt/openslx/vmchooser/plugins/virtualbox/includes/finalize_machine_config.inc b/core/modules/vbox-src/data/opt/openslx/vmchooser/plugins/virtualbox/includes/finalize_machine_config.inc
index 65c0b300..59f6ccc5 100755
--- a/core/modules/vbox-src/data/opt/openslx/vmchooser/plugins/virtualbox/includes/finalize_machine_config.inc
+++ b/core/modules/vbox-src/data/opt/openslx/vmchooser/plugins/virtualbox/includes/finalize_machine_config.inc
@@ -141,7 +141,7 @@ setup_cpu_ram() {
local nested="false"
local cores="1"
local ioapic="false"
- if source /run/hwinfo && [ "${HW_KVM}" = "ENABLED" ]; then
+ if source /run/openslx/hwinfo && [ "${HW_KVM}" = "ENABLED" ]; then
ioapic="true"
kvm="true"
cores="$CPU_CORES"
diff --git a/core/modules/vbox-src/data/opt/openslx/vmchooser/plugins/virtualbox/run-virt.include b/core/modules/vbox-src/data/opt/openslx/vmchooser/plugins/virtualbox/run-virt.include
index adda65e3..1e7a2e44 100755
--- a/core/modules/vbox-src/data/opt/openslx/vmchooser/plugins/virtualbox/run-virt.include
+++ b/core/modules/vbox-src/data/opt/openslx/vmchooser/plugins/virtualbox/run-virt.include
@@ -19,7 +19,7 @@ declare -rg VBOX_PLUGIN_DIR="$(dirname "${BASH_SOURCE[0]}")"
declare -rg VBOX_INCLUDE_DIR="${VBOX_PLUGIN_DIR}/includes"
declare -rg VBOX_BASE_DIR="/usr/lib/virtualbox"
-declare -rg PLUGIN_FEATURES="firewall printer usb slxfloppy sound netshares"
+declare -rg PLUGIN_FEATURES="firewall printer usb slxfloppy sound"
run_plugin() {
# declaration of default variables and some sanity checks
@@ -42,7 +42,10 @@ run_plugin() {
# set the variables appropriately (several interfaces with different names)
declare -rg VIRTCMD="${VBOX_BASE_DIR}/VirtualBoxVM"
- VIRTCMDOPTS+=( "--startvm" "${MACHINE_UUID}" "--start-running" "--fullscreen" )
+ VIRTCMDOPTS+=( "--startvm" "${MACHINE_UUID}" "--start-running" )
+ if [ -z "$DMSD_COW_SESSION" ]; then
+ VIRTCMDOPTS+=( "--fullscreen" )
+ fi
# set headless mode (-v off to disable vrdp) XXX currently not supported/used
#declare -rg VIRTCMDHL="${VBOX_BASE_DIR}/VBoxHeadless"
diff --git a/core/modules/vmchooser2/data/opt/openslx/bin/vmchooser b/core/modules/vmchooser2/data/opt/openslx/bin/vmchooser
index a0048f39..e433b095 100755
--- a/core/modules/vmchooser2/data/opt/openslx/bin/vmchooser
+++ b/core/modules/vmchooser2/data/opt/openslx/bin/vmchooser
@@ -26,7 +26,7 @@ if [ -s "$URLS_CONF" ]; then
[ -n "$url_help" ] && EXTRA+=( "--url-help" "$url_help" )
fi
-[ -s "/run/hwinfo" ] && . "/run/hwinfo"
+[ -s "/run/openslx/hwinfo" ] && . "/run/openslx/hwinfo"
if [ -z "$HW_MBRAM" ]; then
MEM=$(grep -m1 '^MemTotal:' /proc/meminfo | awk '{print $2}')
HW_MBRAM=$(( MEM / 1024 ))
@@ -93,5 +93,10 @@ if [ -n "$SLX_SCREEN_SAVER_TIMEOUT" ]; then
EXTRA+=( "--allow-screensaver-disable" )
fi
+if [ -s "/run/user/$(id -u)/cow-token" ]; then
+ EXTRA+=( "--cow-token" "$( cat "/run/user/$(id -u)/cow-token" )" )
+fi
+
+set +x
exec vmchooser.real "$@" --url "$URL" --fullscreen --tab "$TAB" --start-uuid "$SLX_EXAM_START" "${EXTRA[@]}"
diff --git a/core/modules/vmchooser2/data/opt/openslx/pam/hooks/session-open.d/50-move-admintoken.sh b/core/modules/vmchooser2/data/opt/openslx/pam/hooks/session-open.d/50-move-admintoken.sh
new file mode 100755
index 00000000..578b1046
--- /dev/null
+++ b/core/modules/vmchooser2/data/opt/openslx/pam/hooks/session-open.d/50-move-admintoken.sh
@@ -0,0 +1,20 @@
+#!/bin/ash
+# ^ actually sourced
+
+if [ "$PAM_SERVICE" != "su" ] && [ "$PAM_SERVICE" != "sudo" ]; then
+ md5=$( printf "%s" "$PAM_USER" | md5sum )
+ file="/run/openslx/lightdm/${md5:0:32}"
+ if [ -s "$file" ]; then
+ getent="$( getent passwd "$PAM_USER" )"
+ USER_UID="$( printf "%s" "$getent" | awk -F: '{print $3; exit}' )"
+ udir="/run/user/$USER_UID"
+ if ! [ -d "$udir" ]; then
+ USER_GID="$( printf "%s" "$getent" | awk -F: '{print $4; exit}' )"
+ mkdir -p "$udir"
+ chmod 0700 "$udir"
+ chown "${USER_UID}:${USER_GID}" "$udir"
+ fi
+ mv -f "$file" "$udir/cow-token"
+ chown "$USER_UID" "$udir/cow-token"
+ fi
+fi
diff --git a/core/modules/vmchooser2/module.build b/core/modules/vmchooser2/module.build
index 29bd4aeb..82c1c6c9 100644
--- a/core/modules/vmchooser2/module.build
+++ b/core/modules/vmchooser2/module.build
@@ -10,18 +10,6 @@ build() {
[ ! -d "${MODULE_BUILD_DIR}/${REQUIRED_PREFIX}" ] && mkdir -p "${MODULE_BUILD_DIR}/${REQUIRED_PREFIX}"
cd "${MODULE_BUILD_DIR}/${REQUIRED_PREFIX}"
- # patch globals.cpp and globals.h to use standardised paths /opt/openslx/...
- if ! grep -q VMCHOOSER_SCRIPTS_PATH "$SRCDIR/src/globals.h"; then
- sed -i 's/^#define VMCHOOSER_ETC_BASE_PATH.*/#define VMCHOOSER_ETC_BASE_PATH "\/opt\/openslx\/vmchooser\/config"/g' "${SRCDIR}/src/globals.h"
- sed -i 's/^#define VMCHOOSER_BIN_PATH.*/#define VMCHOOSER_BIN_PATH "\/opt\/openslx\/bin"\n#define VMCHOOSER_SCRIPTS_PATH "\/opt\/openslx\/scripts"/g' "${SRCDIR}/src/globals.h"
- sed -i 's/^#define VMCHOOSER_THEME_BASE.*/#define VMCHOOSER_THEME_BASE "\/opt\/openslx\/vmchooser\/themes"/g' "${SRCDIR}/src/globals.h"
-
- sed -i 's/^QString binPath(VMCHOOSER_BIN_PATH);/QString binPath(VMCHOOSER_BIN_PATH);\nQString scriptsPath(VMCHOOSER_SCRIPTS_PATH);/g' "${SRCDIR}/src/globals.cpp"
- sed -i 's/^QString runVmScript(binPath + "\/run-virt.sh");/QString runVmScript(scriptsPath + "\/vmchooser-run_virt");/g' "${SRCDIR}/src/globals.cpp"
- sed -i 's/^QString filterScript(binPath + "\/xmlfilter.sh");/QString filterScript(scriptsPath + "\/vmchooser-xml_filter");/g' "${SRCDIR}/src/globals.cpp"
- sed -i 's/^#define VMCHOOSER_VMPATH.*/#define VMCHOOSER_VMPATH "\/mnt\/vmstore"/g' "${SRCDIR}/src/globals.h"
- fi
-
pinfo "Running cmake"
cmake "$SRCDIR" || perror "'cmake $SRCDIR' failed."
make || perror "'make' failed."
diff --git a/core/modules/vmchooser2/module.conf b/core/modules/vmchooser2/module.conf
index c62a84c9..60772084 100644
--- a/core/modules/vmchooser2/module.conf
+++ b/core/modules/vmchooser2/module.conf
@@ -2,6 +2,6 @@
REQUIRED_MODULES="
qt5core
"
-REQUIRED_GIT="git://git.openslx.org/openslx-ng/vmchooser2.git"
+REQUIRED_GIT="https://git.openslx.org/openslx-ng/vmchooser2.git"
REQUIRED_PREFIX="/opt/openslx/bin"
REQUIRED_BINARIES="vmchooser.real"
diff --git a/core/modules/vmware-common/data/opt/openslx/vmchooser/plugins/vmware/includes/write_final_vmx.inc b/core/modules/vmware-common/data/opt/openslx/vmchooser/plugins/vmware/includes/write_final_vmx.inc
index 052c11fa..40675524 100644
--- a/core/modules/vmware-common/data/opt/openslx/vmchooser/plugins/vmware/includes/write_final_vmx.inc
+++ b/core/modules/vmware-common/data/opt/openslx/vmchooser/plugins/vmware/includes/write_final_vmx.inc
@@ -15,6 +15,8 @@ replace_placeholders() {
sed -i 's#%VM_DISK_MODE%#'"independent-nonpersistent"'#g' "${TMPCONFIG}"
fi
sed -i 's#%VM_DISK_REDOLOGDIR%#'"$VM_REDO_DIR"'#g' "${TMPCONFIG}"
+ # Need this for CoW to work in dnbd3-fuse mount dir
+ echo 'disk.locking = "FALSE"' >> "$TMPCONFIG"
}
# Ethernet: All we do is entering a generated MAC, as we do not want to interfere
@@ -288,10 +290,10 @@ setup_graphics() {
finalize_hardware() {
# Enable nested virtualization if not specified in remote vmx
- if [ -e "/run/hwinfo" ] && ! grep -qi '^vhv\.enable' "${TMPCONFIG}" \
+ if [ -e "/run/openslx/hwinfo" ] && ! grep -qi '^vhv\.enable' "${TMPCONFIG}" \
&& detect_cpu_flag "ept" "npt" \
&& [ "$VM_HW_VERSION" -ge "9" ]; then
- . "/run/hwinfo"
+ . "/run/openslx/hwinfo"
[ "${HW_KVM}" = "ENABLED" ] && echo 'vhv.enable = "TRUE"' >> "${TMPCONFIG}"
fi
diff --git a/core/modules/vmware-common/data/opt/openslx/vmchooser/plugins/vmware/run-virt.include b/core/modules/vmware-common/data/opt/openslx/vmchooser/plugins/vmware/run-virt.include
index 24debedd..57b5ee6c 100644
--- a/core/modules/vmware-common/data/opt/openslx/vmchooser/plugins/vmware/run-virt.include
+++ b/core/modules/vmware-common/data/opt/openslx/vmchooser/plugins/vmware/run-virt.include
@@ -21,7 +21,7 @@ declare -rg VMWARE_INCLUDE_DIR="${VMWARE_PLUGIN_DIR}/includes"
# TODO make this part of the metadata coming from the server
# Define which features the VMware plugin supports
-declare -rg PLUGIN_FEATURES="firewall printer usb slxfloppy sound netshares"
+declare -rg PLUGIN_FEATURES="firewall printer usb slxfloppy sound"
run_plugin() {
# declaration of default functions and variables for vmware
@@ -64,6 +64,10 @@ run_plugin() {
# HACK: using the modified version of the wrapper script
declare -rg VIRTCMD="/opt/openslx/bin/vmplayer"
- # -X for fullscreen, plus VMX file
- VIRTCMDOPTS+=( "-X" "${VM_RUN_FILE}" )
+ # -X for fullscreen, plus VMX file - run windowed in CoW mode, so we can see the cowgui
+ if is_on "$VMCHOOSER_ADMIN_MODE" && isset DMSD_COW_SESSION; then
+ VIRTCMDOPTS+=( "${VM_RUN_FILE}" )
+ else
+ VIRTCMDOPTS+=( "-X" "${VM_RUN_FILE}" )
+ fi
}
diff --git a/core/modules/vmware17/module.build b/core/modules/vmware17/module.build
index bbc0a971..b2c5f4bb 100644
--- a/core/modules/vmware17/module.build
+++ b/core/modules/vmware17/module.build
@@ -22,7 +22,7 @@ fetch_source() {
# Get directory listing of where final archive resides
wget -O "index.html" "$LIST_URL" || perror "Could not download vmware build type core dir index"
- VMWARE_BUNDLE_FILE=$(grep -E -o -i -m 1 "href=\"VMware-$REQUIRED_TYPE-[^\"]+[\._\-]$ARCHREGEX[\._\-][^\"]+\"" "index.html" | awk -F '"' '{printf $2}')
+ VMWARE_BUNDLE_FILE=$(grep -E -o -i -m 1 "href=\"VMware-$REQUIRED_TYPE-[^\"]+[\._\-]${ARCHREGEX}[\._\-][^\"]+\"" "index.html" | awk -F '"' '{printf $2}')
[ -z "$VMWARE_BUNDLE_FILE" ] && perror "Could not determine vmware $REQUIRED_TYPE bundle file for current arch from $MODULE_WORK_DIR/src/index.html"
# Download file
@@ -32,12 +32,10 @@ fetch_source() {
unlink "$VMWARE_BUNDLE_FILE"
VMWARE_BUNDLE_FILE="${VMWARE_BUNDLE_FILE%.tar}"
fi
-
- cd - >/dev/null
}
build() {
- local KMOD SHORT PATCH MIN_KERN MAX_KERN
+ local KMOD SHORT PATCH MIN_KERN MAX_KERN vers
[ -z "$VMWARE_BUNDLE_FILE" ] && VMWARE_BUNDLE_FILE=$(basename "$(find "${MODULE_WORK_DIR}/src" -iname "vmware-*" | head -n 1)")
local DELETE_FILES=$(for LINE in $REQUIRED_VMWARE_DELETIONS;do echo "rm -rf -- $LINE"; done)
@@ -53,14 +51,23 @@ build() {
cp "${MODULE_WORK_DIR}/src/$VMWARE_BUNDLE_FILE" "${MODULE_BUILD_DIR}/$VMWARE_BUNDLE_FILE"
local KVER2=$TARGET_KERNEL_SHORT
[ ${#KVER2} -gt 4 ] && KVER2=${KVER2%.*}
- git clone --depth 1 -b "workstation-${OFFICIAL_VERSION}" "https://github.com/mkubecek/vmware-host-modules.git" "${MODULE_BUILD_DIR}/prepatched" \
- && pinfo "Have prepatched kernel modules"
+ # Try next-lower minor as fallback
+ for vers in "$OFFICIAL_VERSION" "${OFFICIAL_VERSION:0:-1}$(( ${OFFICIAL_VERSION:"-1"} - 1 ))"; do
+ git clone --depth 1 -b "workstation-${vers}" \
+ "https://github.com/mkubecek/vmware-host-modules.git" \
+ "${MODULE_BUILD_DIR}/prepatched" || continue
+ pinfo "Have prepatched kernel modules ($vers)"
+ break
+ done
if ! [ -d "${MODULE_BUILD_DIR}/prepatched" ]; then
# copy required patches
mkdir -p "${MODULE_BUILD_DIR}/patches"
- for PATCH in $(find "${MODULE_DIR}/patches/" -name "*__*__*.patch"); do
+ for PATCH in "${MODULE_DIR}/patches/"*__*__*.patch; do
+ [ -s "$PATCH" ] || continue
parse_patch_name "$PATCH"
- [ -z "${MIN_KERN}" -o -z "${MAX_KERN}" ] && perror "Could not parse patch filename"
+ if [ -z "${MIN_KERN}" ] || [ -z "${MAX_KERN}" ]; then
+ perror "Could not parse patch filename"
+ fi
if version_lt "$TARGET_KERNEL_SHORT" "$MIN_KERN" || version_gt "$TARGET_KERNEL_SHORT" "$MAX_KERN"; then
pinfo "*NOT* applying $PATCH (min=$MIN_KERN max=$MAX_KERN cmp=$TARGET_KERNEL_SHORT)"
continue # Not suitable for our kernel
@@ -76,7 +83,9 @@ build() {
fi
# sanity check to see if KERNEL_HEADERS_DIR is set and exists
- [ -z "${KERNEL_HEADERS_DIR}" -o ! -e "${KERNEL_HEADERS_DIR}" ] && perror "KERNEL_HEADERS_DIR ('"${KERNEL_HEADERS_DIR}"') not found. Was the kernel module built?"
+ if [ -z "${KERNEL_HEADERS_DIR}" ] || ! [ -e "${KERNEL_HEADERS_DIR}" ]; then
+ perror "KERNEL_HEADERS_DIR ('${KERNEL_HEADERS_DIR}') not found. Was the kernel module built?"
+ fi
# build in two steps, to be able to use mltk function while patching modules
mkdir -p "${MODULE_BUILD_DIR}/usr/local/bin"
@@ -211,11 +220,12 @@ post_copy() {
}
+# Output info encoded in filename via KMOD, MIN/MAX_KERN and MIN/MAX_VMWARE
parse_patch_name() {
[ $# -ne 1 ] && perror "parse_patch_name: Wrong parameter count."
local PATCH="$1"
# Module
- SHORT=$(echo "$PATCH" | sed -r 's/^([^_]+)__.*$/\1/g')
+ local SHORT=$(echo "$PATCH" | sed -r 's/^([^_]+)__.*$/\1/g')
KMOD="${SHORT}.tar"
# Kernel restriction
MIN_KERN=$(echo "$PATCH" | sed -r 's/^[^_]+__([0-9\.]+)-[0-9\.]+__[^_]+\.patch$/\1/g')
diff --git a/core/modules/xorg/module.build b/core/modules/xorg/module.build
index e720451a..38ed0228 100644
--- a/core/modules/xorg/module.build
+++ b/core/modules/xorg/module.build
@@ -8,7 +8,7 @@ fetch_source() {
for drv in $REQUIRED_XORG_DRIVERS; do
drv=${drv%//*}
[ -d "${drv}/.git" ] && continue
- git clone "git://anongit.freedesktop.org/xorg/driver/${drv}" "${drv}" || perror "Could not clone $drv"
+ git clone "https://anongit.freedesktop.org/xorg/driver/${drv}.git" "${drv}" || perror "Could not clone $drv"
done
cd -
fi
diff --git a/core/modules/xscreensaver/module.conf b/core/modules/xscreensaver/module.conf
index 18a96089..ae196281 100644
--- a/core/modules/xscreensaver/module.conf
+++ b/core/modules/xscreensaver/module.conf
@@ -4,8 +4,8 @@ REQUIRED_MODULES="
"
# Switch back to branch "openslx" once 6.x is fixed
REQUIRED_GIT="
- git://git.openslx.org/openslx-ng/xscreensaver.git|openslx-5.x
- git://git.openslx.org/openslx-ng/bwlp-screensaver.git
+ https://git.openslx.org/openslx-ng/xscreensaver.git|openslx-5.x
+ https://git.openslx.org/openslx-ng/bwlp-screensaver.git
"
REQUIRED_PREFIX="/opt/openslx/bin"
REQUIRED_BINARIES="
diff --git a/core/rootfs/rootfs-stage31/data/inc/parse_kcl b/core/rootfs/rootfs-stage31/data/inc/parse_kcl
index ba2fea8f..2eb722a6 100644
--- a/core/rootfs/rootfs-stage31/data/inc/parse_kcl
+++ b/core/rootfs/rootfs-stage31/data/inc/parse_kcl
@@ -40,10 +40,8 @@ for opts in ${KCL}; do
ip=*)
# process IP info
parse_ip ${opts#ip=} ;;
- nfs=*) # TODO: Still working? Still needed? Also see related code in setup_stage32
+ nfs=*)
NFS=${opts#nfs=}
- NFSPATH=${NFS#*:}
- NFSSERVER=${NFS%:/*}
;;
BOOTIF=*)
MAC="$( echo "$opts" | cut -b 11- | tr '-' ':' | tr '[A-Z]' '[a-z]' )" ;; # make mac lowercase for udev (see setup_network)
diff --git a/core/rootfs/rootfs-stage31/data/inc/setup_stage32 b/core/rootfs/rootfs-stage31/data/inc/setup_stage32
index 81a3da16..bab1cda1 100644
--- a/core/rootfs/rootfs-stage31/data/inc/setup_stage32
+++ b/core/rootfs/rootfs-stage31/data/inc/setup_stage32
@@ -12,8 +12,8 @@
#
if [ -n "$NFS" ]; then
echo "Mounting stage 3.2 as NFS..."
- busybox mount -n -t nfs -o ro,async,nolock ${NFSSERVER}:${NFSPATH} /rorootfs \
- || drop_shell "Problem mounting NFS-Directory from ${NFSSERVER}:${NFSPATH}." \
+ busybox mount -n -t nfs -o ro,async,nolock "${NFS}" /rorootfs \
+ || drop_shell "Problem mounting NFS-Directory from ${NFS}." \
|| return 1
return 0
fi
diff --git a/core/targets/bwlp/cowgui b/core/targets/bwlp/cowgui
new file mode 120000
index 00000000..1ee037e9
--- /dev/null
+++ b/core/targets/bwlp/cowgui
@@ -0,0 +1 @@
+../../modules/cowgui \ No newline at end of file
diff --git a/core/targets/stage32-headless/rsyslogd b/core/targets/stage32-headless/rsyslogd
deleted file mode 120000
index 339d02f8..00000000
--- a/core/targets/stage32-headless/rsyslogd
+++ /dev/null
@@ -1 +0,0 @@
-../../modules/rsyslogd \ No newline at end of file
diff --git a/core/targets/stage32/rsyslogd b/core/targets/stage32/rsyslogd
deleted file mode 120000
index 339d02f8..00000000
--- a/core/targets/stage32/rsyslogd
+++ /dev/null
@@ -1 +0,0 @@
-../../modules/rsyslogd \ No newline at end of file
diff --git a/mltk b/mltk
index e6a2338f..2c334650 100755
--- a/mltk
+++ b/mltk
@@ -129,7 +129,6 @@ check_devtools() {
pinfo "apt install build-essential m4 pkg-config cmake automake autoconf binutils lsb-release wget rsync diffutils lsof zstd"
pinfo "to install missing development tools."
;;
- # FIXME: Don't know how precise this filter works so we might want to have a better matching ...
opensuse)
pinfo "zypper install gcc gcc-c++ make m4 binutils git module-init-tools patch pkg-config cmake lsb-release wget rsync diffutils lsof zstd"
pinfo "to install missing development tools."
diff --git a/slx-vars/SLX_ADDONS b/slx-vars/SLX_ADDONS
new file mode 100644
index 00000000..f037f546
--- /dev/null
+++ b/slx-vars/SLX_ADDONS
@@ -0,0 +1,2 @@
+Deprecated.
+Only used by MiniLinux to determine which squashfs addons to load (e.g. vmare, virtualbox, ...). Since stage4 is streamed in MaxiLinux, there is no benefit in splitting up the file system.
diff --git a/slx-vars/SLX_BIOS_CLOCK b/slx-vars/SLX_BIOS_CLOCK
new file mode 100644
index 00000000..90accdc6
--- /dev/null
+++ b/slx-vars/SLX_BIOS_CLOCK
@@ -0,0 +1,4 @@
+Tells the system in which way to interpret and write back the BIOS clock.
+Either "local" for local timezone, including DST,
+or "utc" for UTC.
+Any other value means the BIOS clock is ignored and will not be adjusted according to the time acquired by NTP either.
diff --git a/slx-vars/SLX_CRON_MAIL b/slx-vars/SLX_CRON_MAIL
new file mode 100644
index 00000000..b1402928
--- /dev/null
+++ b/slx-vars/SLX_CRON_MAIL
@@ -0,0 +1 @@
+Currently unused.
diff --git a/slx-vars/SLX_DNBD3_EXTRA b/slx-vars/SLX_DNBD3_EXTRA
new file mode 100644
index 00000000..91b96af9
--- /dev/null
+++ b/slx-vars/SLX_DNBD3_EXTRA
@@ -0,0 +1,4 @@
+Override dnbd3-server settings in the .ini file in proxy-mode.
+
+This is a space separated list of settings, where each entry has the format
+section.key=value
diff --git a/slx-vars/SLX_DNBD3_WHITELIST b/slx-vars/SLX_DNBD3_WHITELIST
new file mode 100644
index 00000000..0090387a
--- /dev/null
+++ b/slx-vars/SLX_DNBD3_WHITELIST
@@ -0,0 +1,2 @@
+If not empty, the dnbd3-proxy on the client will only accept connections from the given addresses. This is done via iptables entries, so any format it accepts for -s will be accepted here.
+The list, as usual, is space separated.
diff --git a/slx-vars/SLX_EXAM_START b/slx-vars/SLX_EXAM_START
new file mode 100644
index 00000000..b2631cab
--- /dev/null
+++ b/slx-vars/SLX_EXAM_START
@@ -0,0 +1,2 @@
+UUID of lecture to start in exam mode. This takes precedence over SLX_AUTOSTART_UUID.
+Why the exam mode module doesn't just override the latter, I have no idea.
diff --git a/slx-vars/SLX_NO_CONFIG_TGZ b/slx-vars/SLX_NO_CONFIG_TGZ
new file mode 100644
index 00000000..5bc6b395
--- /dev/null
+++ b/slx-vars/SLX_NO_CONFIG_TGZ
@@ -0,0 +1 @@
+If not empty, the client will not download the config.tgz file during startup.
diff --git a/slx-vars/SLX_REMOTE_SSL b/slx-vars/SLX_REMOTE_SSL
new file mode 100644
index 00000000..bb1f64b7
--- /dev/null
+++ b/slx-vars/SLX_REMOTE_SSL
@@ -0,0 +1 @@
+If enabled, use https to talk to the boot server after stage3. The self-signed certificate should be supplied via config.tgz.