--- rpms/smeserver-virtualbox/contribs10/smeserver-virtualbox.spec 2022/10/18 09:20:00 1.2 +++ rpms/smeserver-virtualbox/contribs10/smeserver-virtualbox.spec 2023/03/10 00:33:00 1.6 @@ -1,6 +1,6 @@ %define name smeserver-virtualbox %define version 5.2 -%define release 1 +%define release 4 %define rpmver 5.2 Summary: smserver rpm to install VirtualBox Name: %{name} @@ -19,12 +19,27 @@ Requires: VirtualBox-5.2 Requires: kernel-devel Requires: gcc AutoReqProv: no +Patch0: smeserver-virtualbox-5.2-move_vbox_dir.patch +Patch1: smeserver-virtualbox-5.2-multiple_changes.patch %description smserver rpm to install VirtualBox-5.2 %changelog -* Tue Oct 11 2022 Trevor Batley 5.2-0 +* Fri Mar 10 2023 Trevor Batley 5.2-4.sme +- change log directory to /var/log/virtualbox and give correct permissions +- add password generation and storage for vboxweb runtime user (for use by phpvirtualbox) +- template /etc/default/virtualbox.conf +- add 50koozali.conf for vboxweb-service +- include migrate fragment for vbox user password + +* Thu Oct 20 2022 Trevor Batley 5.2-3.sme +- remove storage of vbox password + +* Wed Oct 19 2022 Trevor Batley 5.2-2.sme +- change vbox user to system user and change the home directory + +* Tue Oct 11 2022 Trevor Batley 5.2-1.sme - first import to sme10 - requires VirtualBox-5.2 - create vbox user and run vboxweb-service as vbox user @@ -54,6 +69,8 @@ smserver rpm to install VirtualBox-5.2 %prep %setup +%patch0 -p1 +%patch1 -p1 %build perl createlinks @@ -62,7 +79,10 @@ perl createlinks rm -rf $RPM_BUILD_ROOT (cd root ; find . -depth -print | cpio -dump $RPM_BUILD_ROOT) rm -f %{name}-%{version}-filelist -/sbin/e-smith/genfilelist $RPM_BUILD_ROOT > %{name}-%{version}-filelist +/sbin/e-smith/genfilelist $RPM_BUILD_ROOT \ +--dir /var/log/virtualbox 'attr(755,vbox,vboxusers)' \ +--file /usr/lib/virtualbox/fix_vboxdrv_kernel_module.sh 'attr(755,root,root)' \ +> %{name}-%{version}-filelist echo "%doc COPYING" >> %{name}-%{version}-filelist %clean @@ -70,19 +90,10 @@ cd .. rm -rf %{name}-%{version} %pre -/usr/lib/virtualbox/vboxdrv.sh stop >/dev/null 2>&1 -if /sbin/e-smith/db accounts get vbox >/dev/null +if ! id "vbox" then - echo "the vbox user already exists - we'll use this" -else - /sbin/e-smith/db accounts set vbox user PasswordSet yes - /sbin/e-smith/signal-event user-create vbox - usermod -s /bin/bash vbox - /sbin/e-smith/db accounts set vboxusers group Description "VBox users" Members "admin,vbox" - /sbin/e-smith/signal-event group-create vboxusers - mkdir /home/e-smith/files/users/vbox/.virtualbox - cat /dev/urandom | tr -dc 'a-zA-Z0-9' | head -c 32 > /home/e-smith/files/users/vbox/.virtualbox/vbox.passwd - cat /home/e-smith/files/users/vbox/.virtualbox/vbox.passwd | passwd --stdin vbox +echo "Adding VBoxWeb runtime user (vbox)" +/usr/sbin/useradd -c "VBoxWeb runtime user" -m -N -s /bin/bash -g vboxusers vbox >/dev/null fi %preun @@ -90,12 +101,10 @@ fi /sbin/e-smith/systemctl stop vboxdrv %post -/usr/lib/virtualbox/vboxdrv.sh start >/dev/null 2>&1 -/usr/bin/vboxmanage setproperty websrvauthlibrary null +/sbin/e-smith/systemctl start vboxdrv %postun #uninstall %files -f %{name}-%{version}-filelist %defattr(-,root,root) -%attr(755,root,root) /usr/lib/virtualbox/fix_vboxdrv_kernel_module.sh