Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # Maintainer: Olivier Médoc <o_medoc@yahoo.fr>
- pkgname=vmware-patch
- pkgver=3.4
- pkgrel=2
- pkgdesc="Several scripts to apply patches to vmware modules (tested for vmware-player and vmware-workstation)"
- arch=('i686' 'x86_64')
- url="http://www.vmware.com"
- license=('GPL')
- depends=('linux-headers' 'kmod>=5-2')
- source=(vmware-patch vmware-unpatch vmware-rc
- vmmon-2.6.35.diff vsock-2.6.35.diff
- vmmon-2.6.36.diff
- vmci-2.6.37.diff vmmon-2.6.37.diff vmnet-2.6.37.diff vsock-2.6.37.diff
- vmblock-2.6.39.diff vmci-2.6.39.diff vmmon-2.6.39.diff vmnet-2.6.39.diff vsock-2.6.39.diff
- vmblock-3.0.diff vmci-3.0.diff vmmon-3.0.diff vmnet-3.0.diff vsock-3.0.diff
- vmnet-3.1.0.diff
- vmnet-3.1.1.diff
- vmmon-8.0.1-4.0.1-3.2.0.diff vmnet-8.0.1-4.0.1-3.2.0.diff
- vmnet-8.0.2-4.0.2-3.2.1.diff
- vmblock-7.1.5-0.0.0-3.2.1.diff vmnet-7.1.5-0.0.0-3.2.1.diff vmci-7.1.5-0.0.0-3.2.1.diff vsock-7.1.5-0.0.0-3.2.1.diff vmmon-7.1.5-0.0.0-3.2.1.diff
- vmblock-8.0.3-4.0.3-3.4.diff)
- install=${pkgname}.install
- fix_mod_symlink() {
- BINARY_NAME=$1
- echo "Checking if it is necessary to create symlink for ${BINARY_NAME}"
- # Vmware Player fixes
- mkdir -p "${pkgdir}/sbin"
- if [ -h "/sbin/${BINARY_NAME}" ] ; then
- # If lsmod is own by a pacman packet (probably ours)
- unset NOT_IN_PACMAN
- pacman -Qo "/sbin/${BINARY_NAME}" || NOT_IN_PACMAN=True
- if [ -n "$NOT_IN_PACMAN" ] ; then
- echo "Symlink has been created manually... Not creating /sbin/$BINARY_NAME symlink"
- else
- unset IN_VMWARE_PATCH
- IN_VMWARE_PATCH=`pacman -Qo "/sbin/${BINARY_NAME}" | grep vmware-patch`
- if [ -n "$IN_VMWARE_PATCH" ] ; then
- echo "/sbin/${BINARY_NAME} is owned by vmware-patch... recreating symlink"
- ln -s "/usr/bin/${BINARY_NAME}" "${pkgdir}/sbin/${BINARY_NAME}"
- else
- echo "/sbin/${BINARY_NAME} is owned by an unknown package. Not creating symlink"
- fi
- fi
- else
- ln -s "/usr/bin/${BINARY_NAME}" "${pkgdir}/sbin/${BINARY_NAME}"
- fi
- }
- package() {
- install -D -m755 vmware-patch "${pkgdir}/usr/bin/vmware-patch"
- install -D -m755 vmware-unpatch "${pkgdir}/usr/bin/vmware-unpatch"
- mkdir -p "${pkgdir}/usr/lib/vmware/patches"
- cp *.diff "${pkgdir}/usr/lib/vmware/patches"
- fix_mod_symlink insmod
- fix_mod_symlink lsmod
- fix_mod_symlink rmmod
- fix_mod_symlink modinfo
- # rc.d
- install -D -m755 vmware-rc "${pkgdir}/etc/rc.d/vmwared"
- # Creating links for future kernel version
- cd "${pkgdir}/usr/lib/vmware/patches"
- # For linux 3.1.1 until 3.1.10
- for i in {2..10};
- do
- ln -s vmnet-3.1.1.diff vmnet-3.1.${i}.diff
- done
- # For Linux 3.2.0 until 3.2.15 (workstation 8.0.1)
- for i in {1..15};
- do
- ln -s vmnet-8.0.1-4.0.1-3.2.0.diff vmnet-8.0.1-4.0.1-3.2.${i}.diff
- ln -s vmmon-8.0.1-4.0.1-3.2.0.diff vmmon-8.0.1-4.0.1-3.2.${i}.diff
- done
- # For Linux 3.2.2 until 3.2.15 (workstation 8.0.2)
- for i in {2..15};
- do
- ln -s vmnet-8.0.2-4.0.2-3.2.1.diff vmnet-8.0.2-4.0.2-3.2.${i}.diff
- done
- # For Linux 3.3 (workstation 8.0.2)
- ln -s vmnet-8.0.2-4.0.2-3.2.1.diff vmnet-8.0.2-4.0.2-3.3.diff
- # For Linux 3.3.1 until 3.3.15 (workstation 8.0.2 and 8.0.3)
- for i in {0..15};
- do
- ln -s vmnet-8.0.2-4.0.2-3.2.1.diff vmnet-8.0.2-4.0.2-3.3.${i}.diff
- ln -s vmnet-8.0.2-4.0.2-3.2.1.diff vmnet-8.0.3-4.0.3-3.3.${i}.diff
- done
- # For Linux 3.4 (workstation 8.0.2 and 8.0.3)
- ln -s vmnet-8.0.2-4.0.2-3.2.1.diff vmnet-8.0.2-4.0.3-3.4.diff
- ln -s vmnet-8.0.2-4.0.2-3.2.1.diff vmnet-8.0.3-4.0.3-3.4.diff
- # For Linux 3.4.0 until 3.4.15 (workstation 8.0.2 and 8.0.3)
- for i in {0..15};
- do
- ln -s vmnet-8.0.2-4.0.2-3.2.1.diff vmnet-8.0.2-4.0.3-3.4.${i}.diff
- ln -s vmnet-8.0.2-4.0.2-3.2.1.diff vmnet-8.0.3-4.0.3-3.4.${i}.diff
- ln -s vmblock-8.0.3-4.0.3-3.4.diff vmblock-8.0.2-4.0.3-3.4.${i}.diff
- ln -s vmblock-8.0.3-4.0.3-3.4.diff vmblock-8.0.3-4.0.3-3.4.${i}.diff
- done
- # For VMWare 7.1.5
- for code in vmblock vmnet vmci vsock vmmon ; do
- for i in {2..20} ; do
- ln -s "${code}-7.1.5-0.0.0-3.2.1.diff" "${code}-7.1.5-0.0.0-3.2.${i}.diff"
- ln -s "${code}-7.1.5-0.0.0-3.2.1.diff" "${code}-7.1.5-0.0.0-3.3.${i}.diff"
- done
- done
- }
- md5sums=('4e778e16df7f8f3fc7bfabe31d1d0c2f'
- '0a76ebe17bf692bddce7607ed103e063'
- '771c0901c44a93090348ebc10a17874e'
- 'f91cf3f46e5220a64b1cfdb07aa3257e'
- '78740f2ae60d84d7e81ef128cf10eb5d'
- 'f0a138dcfb01a12b54bd4268f23fcc2b'
- '289fe3df6aa21e53f0071079800e5754'
- 'a4d7bcc5a23382b0c6dd5040723b4d0b'
- 'f07e53526dd47a248dec7eacd54121a8'
- '0bbfdfe33dd5e14d96b9719456b0b49c'
- '0c317d09aaed3b10de4a35a97c605f8d'
- 'e3efe95c6f90e87bb8fe78ccceb7c4c4'
- '4b11a8f484f89ebea72b8d9ebfc1d23c'
- 'f2cc9e4042c43f6075207f3612d72f21'
- 'a2a45aa9e9ebd311ecfd6e96f19ad674'
- 'd1c9773adc7ec14392f2ac7e7610afec'
- 'e3efe95c6f90e87bb8fe78ccceb7c4c4'
- '2e24ef4fa122afd023685d521d533ffc'
- 'f2cc9e4042c43f6075207f3612d72f21'
- 'adb689206fe85cc0e19ac4b3e50cd656'
- '827b32cec681045a3d2ef761631aa2b2'
- '827b32cec681045a3d2ef761631aa2b2'
- 'c913e13035815cfc4cda3bd07d057666'
- 'e74c231c297833f55e1108327089a34d'
- 'edea711dca63399b7f47b53e50444c09'
- '09a021a9dce9dccd32184bba06086022'
- 'b16f5e552d364419b6671ae76c6054f3'
- 'ac83544cc198455ce7d5ff367134f20d'
- 'b15bb2a426a5a5be701ab265b5bcfe51'
- 'b8d90cee99489b8b4c9ab5d0f86fd618'
- 'a8d9b98570344514eda185a8115b2c32')
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement