summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlexander Shursha2018-12-07 14:02:12 +0300
committerAlexander Shursha2018-12-07 14:02:12 +0300
commit409e0d26f2c9d1d46922131da91b5c1365f4cbef (patch)
tree5c118955f3bd0221d9c5818a0855435f74b61b92
downloadaur-vmware-openrc.tar.gz
Initial import
-rw-r--r--.SRCINFO17
-rw-r--r--PKGBUILD34
-rwxr-xr-xvmware.initd85
3 files changed, 136 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..c7bed0a31dca
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,17 @@
+pkgbase = vmware-openrc
+ pkgdesc = OpenRC vmware init script
+ pkgver = 20181207
+ pkgrel = 0
+ url = https://github.com/artix-linux/packages-galaxy
+ arch = any
+ groups = openrc-galaxy
+ license = GPL2
+ depends = openrc
+ depends = vmware-workstation
+ provides = openrc-vmware
+ conflicts = systemd-sysvcompat
+ source = vmware.initd
+ md5sums = fc873a8f04cc9c67813f370484df0b21
+
+pkgname = vmware-openrc
+
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..b94c9745a38f
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,34 @@
+# Maintainer: Rafli Akmal <rafliakmaltejakusuma@gmail.com>
+# Contributor: artoo <artoo@artixlinux.org>
+# Contributor: Oscar Campos <damnwidget@artixlinux.org>
+
+pkgname=vmware-openrc
+pkgver=20181207
+pkgrel=0
+pkgdesc="OpenRC vmware init script"
+arch=('any')
+url="https://github.com/artix-linux/packages-galaxy"
+license=('GPL2')
+groups=('openrc-galaxy')
+provides=('openrc-vmware')
+depends=('openrc' 'vmware-workstation')
+conflicts=('systemd-sysvcompat')
+source=("vmware.initd")
+md5sums=('fc873a8f04cc9c67813f370484df0b21')
+
+# pkgver() {
+# date +%Y%m%d
+# }
+
+_inst_initd(){
+ install -Dm755 ${srcdir}/$1.initd ${pkgdir}/etc/init.d/$1
+
+ sed -e 's|#!/sbin/openrc-run|#!/usr/bin/openrc-run|g' \
+ -e 's|/var/run|/run|g' \
+ -e 's|/usr/sbin|/usr/bin|g' \
+ -i ${pkgdir}/etc/init.d/$1
+}
+
+package() {
+ _inst_initd 'vmware'
+}
diff --git a/vmware.initd b/vmware.initd
new file mode 100755
index 000000000000..ac46f8a10d7a
--- /dev/null
+++ b/vmware.initd
@@ -0,0 +1,85 @@
+#!/sbin/openrc-run
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+depend() {
+ need localmount
+ use net
+}
+
+start() {
+ #start-stop-daemon --start --exec @@BINDIR@@/vmware-usbarbitrator
+ /usr/bin/vmware-usbarbitrator
+
+ # vmci might be:
+ # 1) built as external kernel module
+ # 2) built as internal kernel module (with name vmw_vmci)
+ # 3) embedded in the kernel
+ for mod in /lib/modules/$(uname -r)/misc/vmci.ko \
+ /lib/modules/$(uname -r)/kernel/drivers/misc/vmw_vmci/vmw_vmci.ko ;
+ do
+ if [[ -f "${mod}" ]] ; then
+ modprobe -v $(basename "${mod}" .ko)
+ eend $?
+ break
+ fi
+ done
+
+ # vsock might be:
+ # 1) built as external kernel module
+ # 2) built as internal kernel module (with name vmw_vsock_vmci_transport)
+ # 3) embedded in the kernel
+ for mod in /lib/modules/$(uname -r)/misc/vsock.ko \
+ /lib/modules/$(uname -r)/kernel/net/vmw_vsock/vmw_vsock_vmci_transport.ko ;
+ do
+ if [[ -f "${mod}" ]] ; then
+ modprobe -v $(basename "${mod}" .ko)
+ eend $?
+ break
+ fi
+ done
+
+ # vmci or vsock were already loaded by the previous modprobe,
+ # no need to do it here
+ modprobe -av vmmon vmnet
+ /usr/bin/vmware-networks --start
+}
+
+stop() {
+ #start-stop-daemon --stop --exec @@BINDIR@@/vmware-usbarbitrator
+ killall --wait /usr/bin/vmware-usbarbitrator
+ eend $?
+ /usr/bin/vmware-networks --stop
+ eend $?
+ ebegin Stopping VMware services
+ modprobe -rv vmmon vmnet
+
+ # vsock might be:
+ # 1) built as external kernel module
+ # 2) built as internal kernel module (with name vmw_vsock_vmci_transport)
+ # 3) embedded in the kernel
+ for mod in /lib/modules/$(uname -r)/misc/vsock.ko \
+ /lib/modules/$(uname -r)/kernel/net/vmw_vsock/vmw_vsock_vmci_transport.ko ;
+ do
+ if [[ -f "${mod}" ]] ; then
+ modprobe -rv $(basename "${mod}" .ko)
+ eend $?
+ break
+ fi
+ done
+
+ # vmci might be:
+ # 1) built as external kernel module
+ # 2) built as internal kernel module (with name vmw_vmci)
+ # 3) embedded in the kernel
+ for mod in /lib/modules/$(uname -r)/misc/vmci.ko \
+ /lib/modules/$(uname -r)/kernel/drivers/misc/vmw_vmci/vmw_vmci.ko ;
+ do
+ if [[ -f "${mod}" ]] ; then
+ modprobe -rv $(basename "${mod}" .ko)
+ eend $?
+ break
+ fi
+ done
+}
+