add new libs
git-svn-id: https://svn.disconnected-by-peer.at/svn/linamh/trunk/vmware@2787 6952d904-891a-0410-993b-d76249ca496b
This commit is contained in:
@@ -0,0 +1,31 @@
|
||||
--- vmware-distrib/bin/vmware-config.pl.ori 2005-11-09 01:45:08.000000000 +0000
|
||||
+++ vmware-distrib/bin/vmware-config.pl 2005-11-09 01:48:21.000000000 +0000
|
||||
@@ -8433,7 +8433,7 @@
|
||||
error('Please shut down any running VMs and run this script again.' .
|
||||
"\n\n");
|
||||
} else {
|
||||
- if (system(shell_string(db_get_answer('INITSCRIPTSDIR') . '/vmware')
|
||||
+ if (system(shell_string('/etc/init.d' . '/vmware')
|
||||
. ' stop')) {
|
||||
error('Unable to stop services for ' . vmware_product_name() .
|
||||
"\n\n");
|
||||
@@ -8463,8 +8463,8 @@
|
||||
}
|
||||
if (vmware_product() ne 'server') {
|
||||
configure_gtk2();
|
||||
- createMimePackageFile();
|
||||
- configureDesktopFiles();
|
||||
+# createMimePackageFile();
|
||||
+# configureDesktopFiles();
|
||||
configure_mon();
|
||||
configure_pp();
|
||||
configure_net();
|
||||
@@ -8532,7 +8532,7 @@
|
||||
db_save();
|
||||
# Then start VMware's services
|
||||
if (!$gOption{'skipstopstart'}) {
|
||||
- system(shell_string(db_get_answer('INITSCRIPTSDIR') . '/vmware') . ' start');
|
||||
+ system(shell_string('/etc/init.d' . '/vmware') . ' start');
|
||||
print "\n";
|
||||
}
|
||||
|
||||
@@ -0,0 +1,15 @@
|
||||
diff -urN vmware-distrib.orig/bin/vmware-config.pl vmware-distrib/bin/vmware-config.pl
|
||||
--- vmware-distrib.orig/bin/vmware-config.pl 2005-12-16 00:51:03.000000000 -0500
|
||||
+++ vmware-distrib/bin/vmware-config.pl 2005-12-21 14:34:03.000000000 -0500
|
||||
@@ -7327,7 +7327,10 @@
|
||||
error('Unable to write configuration file "' . $name . '".' . "\n\n");
|
||||
}
|
||||
db_add_file($name, 0x1);
|
||||
- safe_chmod(0644, $name);
|
||||
+ safe_chmod(0664, $name);
|
||||
+ my $gid = (getgrnam('vmware'))[2];
|
||||
+ my $uid = (stat($name))[4];
|
||||
+ safe_chown($uid,$gid,$name);
|
||||
|
||||
# Append the promotional configuration if it exists
|
||||
$promoconfig = $libdir . '/configurator/PROMOCONFIG';
|
||||
@@ -0,0 +1,15 @@
|
||||
diff -ur vmware-distrib.orig/bin/vmware-config.pl vmware-distrib/bin/vmware-config.pl
|
||||
--- vmware-distrib.orig/bin/vmware-config.pl 2006-03-24 23:13:05.000000000 +0100
|
||||
+++ vmware-distrib/bin/vmware-config.pl 2006-03-24 23:26:40.000000000 +0100
|
||||
@@ -2015,9 +2015,9 @@
|
||||
. shell_string($pattern));
|
||||
chomp($header_page_offset);
|
||||
# Ignore PAGE_OFFSET if we cannot parse it.
|
||||
- if ($header_page_offset =~ /^$pattern \(?0x([0-9a-fA-F]{8,})/) {
|
||||
+ if ($header_page_offset =~ /^$pattern \(?(\([^)]*\))?\)?0x([0-9a-fA-F]{8,}).*$/) {
|
||||
# We found a valid page offset
|
||||
- $header_page_offset = $1;
|
||||
+ $header_page_offset = $2;
|
||||
if (defined($gSystem{'page_offset'}) and
|
||||
not (lc($header_page_offset) eq lc($gSystem{'page_offset'}))) {
|
||||
if ($source eq 'user') {
|
||||
@@ -0,0 +1,17 @@
|
||||
diff -uNr vmware-server-distrib.orig/bin/vmware-config.pl vmware-server-distrib/bin/vmware-config.pl
|
||||
--- vmware-server-distrib.orig/bin/vmware-config.pl 2006-02-18 18:12:26.000000000 +0000
|
||||
+++ vmware-server-distrib/bin/vmware-config.pl 2006-02-18 18:14:17.000000000 +0000
|
||||
@@ -8571,10 +8571,10 @@
|
||||
configure_gtk2();
|
||||
# createMimePackageFile();
|
||||
# configureDesktopFiles();
|
||||
- configure_mon();
|
||||
- configure_pp();
|
||||
+# configure_mon();
|
||||
+# configure_pp();
|
||||
configure_net();
|
||||
- build_vmnet();
|
||||
+# build_vmnet();
|
||||
}
|
||||
|
||||
# Create the directory for the UNIX domain sockets
|
||||
@@ -0,0 +1,12 @@
|
||||
diff -uNr vmware-server-distrib/installer/services.sh vmware-server-distrib.new/installer/services.sh
|
||||
--- vmware-server-distrib/installer/services.sh 2006-02-05 00:21:25.000000000 +0000
|
||||
+++ vmware-server-distrib.new/installer/services.sh 2006-02-20 23:48:07.000000000 +0000
|
||||
@@ -538,7 +538,7 @@
|
||||
}
|
||||
|
||||
vmware_load_module() {
|
||||
- /sbin/insmod -s -f "/lib/modules/`uname -r`/misc/$1.o" || exit 1
|
||||
+ /sbin/modprobe -s "$1" || exit 1
|
||||
exit 0
|
||||
}
|
||||
|
||||
@@ -0,0 +1,19 @@
|
||||
diff -uNr vmware-server-distrib.orig/installer/services.sh vmware-server-distrib/installer/services.sh
|
||||
--- vmware-server-distrib.orig/installer/services.sh 2006-07-01 03:14:16.000000000 +0000
|
||||
+++ vmware-server-distrib/installer/services.sh 2006-07-14 11:59:28.000000000 +0000
|
||||
@@ -606,8 +606,13 @@
|
||||
start)
|
||||
if [ -e "$vmware_etc_dir"/not_configured ]; then
|
||||
echo "`vmware_product_name`"' is installed, but it has not been (correctly) configured'
|
||||
- echo 'for the running kernel. To (re-)configure it, invoke the'
|
||||
- echo 'following command: '"$vmdb_answer_BINDIR"'/vmware-config.pl.'
|
||||
+ echo 'for the running kernel.'
|
||||
+ echo
|
||||
+ echo 'Please ensure that the modules have been compiled for this kernel:'
|
||||
+ echo ' emerge --oneshot vmware-modules'
|
||||
+ echo
|
||||
+ echo 'Also ensure '"`vmware_product_name`"' has been configured:'
|
||||
+ echo ' '"$vmdb_answer_BINDIR"'/vmware-config.pl'
|
||||
echo
|
||||
|
||||
exit 1
|
||||
@@ -0,0 +1,14 @@
|
||||
diff --git a/vmware-player-extras.py b/vmware-player-extras.py
|
||||
index 21595b1..e8adf08 100644
|
||||
--- a/vmware-player-extras.py
|
||||
+++ b/vmware-player-extras.py
|
||||
@@ -6,7 +6,8 @@ VMware Player Extras component installer.
|
||||
|
||||
DEST = LIBDIR/'vmware'
|
||||
SETTINGS = { 'vmware.fullpath': BINDIR/'vmware', }
|
||||
-CONF = DEST/'setup/vmware-config'
|
||||
+import os
|
||||
+CONF = path(os.environ['WORKDIR'])/'vmware-config.sh'
|
||||
|
||||
|
||||
class PlayerExtras(Installer):
|
||||
@@ -0,0 +1,64 @@
|
||||
diff --git a/vmware-player.py b/vmware-player.py
|
||||
index bee22df..d06cca9 100644
|
||||
--- a/vmware-player.py
|
||||
+++ b/vmware-player.py
|
||||
@@ -6,7 +6,8 @@ VMware Player component installer.
|
||||
|
||||
GCONF_DEFAULTS = 'xml:readwrite:/etc/gconf/gconf.xml.defaults'
|
||||
DEST = LIBDIR/'vmware'
|
||||
-CONFIG = DEST/'setup/vmware-config'
|
||||
+import os
|
||||
+CONFIG = path(os.environ['WORKDIR'])/'vmware-config.sh'
|
||||
CUPSLIBDIR = LIBDIR/'cups'
|
||||
# XXX: LIBDIR should be properly calculated, to make this cleaner
|
||||
if (PREFIX/'lib64/cups').exists():
|
||||
@@ -84,12 +85,12 @@ class Player(Installer):
|
||||
ret, kvers = output('uname', '-r')
|
||||
kvers = kvers.strip()
|
||||
modules = ('vmmon', 'vmnet', 'vmblock', 'vmci', 'vsock')
|
||||
- base = path('/lib/modules/%s/misc' % kvers)
|
||||
+ base = path('/this/path/doesnt/exist/lib/modules/%s/misc' % kvers)
|
||||
|
||||
for module in modules:
|
||||
for ext in ('o', 'ko'):
|
||||
mod = '%s.%s' % (module, ext)
|
||||
- (base/mod).remove(ignore_errors=True)
|
||||
+ # (base/mod).remove(ignore_errors=True)
|
||||
|
||||
def PreUninstall(self, old, new, upgrade):
|
||||
script = INITSCRIPTDIR/'vmware'
|
||||
@@ -156,8 +157,8 @@ class Player(Installer):
|
||||
def PostTransactionInstall(self, old, new, upgrade):
|
||||
if ENV.get('VMWARE_SKIP_MODULES'):
|
||||
log.info('Skipping kernel module installation')
|
||||
- elif run(BINDIR/'vmware-modconfig', '--console', '--install-all') == 0:
|
||||
- log.info('Successfully installed kernel modules')
|
||||
+ # elif run(BINDIR/'vmware-modconfig', '--console', '--install-all') == 0:
|
||||
+ # log.info('Successfully installed kernel modules')
|
||||
else:
|
||||
log.info('Unable to install kernel modules')
|
||||
|
||||
@@ -189,8 +190,8 @@ class Player(Installer):
|
||||
for handler in ('vm', 'vms'):
|
||||
for gconfType, key, value in settings:
|
||||
key = key % handler
|
||||
- run('gconftool-2', '--direct', '--config-source', GCONF_DEFAULTS,
|
||||
- '--type', gconfType, '--set', key, value)
|
||||
+ # run('gconftool-2', '--direct', '--config-source', GCONF_DEFAULTS,
|
||||
+ # '--type', gconfType, '--set', key, value)
|
||||
|
||||
# Instruct all gconfd daemons to reload.
|
||||
run('killall', '-HUP', 'gconfd-2')
|
||||
@@ -200,9 +201,9 @@ class Player(Installer):
|
||||
def _deconfigureVMStreamingHandlers(self):
|
||||
""" Deconfigures the handlers for vm:// and vms:// used for VM streaming"""
|
||||
def deconfigureGConf():
|
||||
- for handler in ('vm', 'vms'):
|
||||
- run('gconftool-2', '--direct', '--config-source', GCONF_DEFAULTS,
|
||||
- '--recursive-unset', '/desktop/gnome/url-handlers/%s' % handler)
|
||||
+ # for handler in ('vm', 'vms'):
|
||||
+ # run('gconftool-2', '--direct', '--config-source', GCONF_DEFAULTS,
|
||||
+ # '--recursive-unset', '/desktop/gnome/url-handlers/%s' % handler)
|
||||
|
||||
# Instruct all gconfd daemons to reload.
|
||||
run('killall', '-HUP', 'gconfd-2')
|
||||
@@ -0,0 +1,70 @@
|
||||
Submitted By: Mario Fetka (geos_one) (mario dot fetka at gmail dot com)
|
||||
Date: 2009-12-25
|
||||
Initial Package Version: 2.5.3
|
||||
Origin: gentoo
|
||||
Upstream Status: never accepted
|
||||
Description: patch in the modified install sources
|
||||
|
||||
diff -Naur 3.0.0.orig/vmware-player-app.py 3.0.0/vmware-player-app.py
|
||||
--- 3.0.0.orig/vmware-player-app.py 2009-12-25 10:31:40.605560643 +0000
|
||||
+++ 3.0.0/vmware-player-app.py 2009-12-25 10:39:48.550559786 +0000
|
||||
@@ -6,7 +6,8 @@
|
||||
|
||||
GCONF_DEFAULTS = 'xml:readwrite:/etc/gconf/gconf.xml.defaults'
|
||||
DEST = LIBDIR/'vmware'
|
||||
-CONFIG = DEST/'setup/vmware-config'
|
||||
+import os
|
||||
+CONFIG = path(os.environ['WORKDIR'])/'vmware-config.sh'
|
||||
CUPSLIBDIR = LIBDIR/'cups'
|
||||
SETTINGS = \
|
||||
{ 'libdir': DEST,
|
||||
@@ -166,12 +167,12 @@
|
||||
ret, kvers, _ = self.RunCommand('uname', '-r')
|
||||
kvers = kvers.strip()
|
||||
modules = ('vmmon', 'vmnet', 'vmblock', 'vmci', 'vsock')
|
||||
- base = path('/lib/modules/%s/misc' % kvers)
|
||||
+ base = path('/this/path/doesnt/exist/lib/modules/%s/misc' % kvers)
|
||||
|
||||
for module in modules:
|
||||
for ext in ('o', 'ko'):
|
||||
mod = '%s.%s' % (module, ext)
|
||||
- (base/mod).remove(ignore_errors=True)
|
||||
+ # (base/mod).remove(ignore_errors=True)
|
||||
|
||||
# Make sure we kill all processes that should not be running!
|
||||
self._killVMwareProcesses()
|
||||
@@ -329,8 +330,8 @@
|
||||
def PostTransactionInstall(self, old, new, upgrade):
|
||||
if ENV.get('VMWARE_SKIP_MODULES'):
|
||||
log.Info('Skipping kernel module installation')
|
||||
- elif self.RunCommand(BINDIR/'vmware-modconfig', '--console', '--install-all').retCode == 0:
|
||||
- log.Info('Successfully installed kernel modules')
|
||||
+ # elif self.RunCommand(BINDIR/'vmware-modconfig', '--console', '--install-all').retCode == 0:
|
||||
+ # log.Info('Successfully installed kernel modules')
|
||||
else:
|
||||
log.Info('Unable to install kernel modules')
|
||||
|
||||
@@ -359,8 +360,8 @@
|
||||
for handler in ('vm', 'vms'):
|
||||
for gconfType, key, value in settings:
|
||||
key = key % handler
|
||||
- self.RunCommand('gconftool-2', '--direct', '--config-source', GCONF_DEFAULTS,
|
||||
- '--type', gconfType, '--set', key, value)
|
||||
+ # self.RunCommand('gconftool-2', '--direct', '--config-source', GCONF_DEFAULTS,
|
||||
+ # '--type', gconfType, '--set', key, value)
|
||||
|
||||
# Instruct all gconfd daemons to reload.
|
||||
self.RunCommand('killall', '-HUP', 'gconfd-2')
|
||||
@@ -370,9 +371,9 @@
|
||||
def _deconfigureVMStreamingHandlers(self):
|
||||
""" Deconfigures the handlers for vm:// and vms:// used for VM streaming"""
|
||||
def deconfigureGConf():
|
||||
- for handler in ('vm', 'vms'):
|
||||
- self.RunCommand('gconftool-2', '--direct', '--config-source', GCONF_DEFAULTS,
|
||||
- '--recursive-unset', '/desktop/gnome/url-handlers/%s' % handler)
|
||||
+ # for handler in ('vm', 'vms'):
|
||||
+ # self.RunCommand('gconftool-2', '--direct', '--config-source', GCONF_DEFAULTS,
|
||||
+ # '--recursive-unset', '/desktop/gnome/url-handlers/%s' % handler)
|
||||
|
||||
# Instruct all gconfd daemons to reload.
|
||||
self.RunCommand('killall', '-HUP', 'gconfd-2')
|
||||
8
app-emulation/vmware-player/files/helpers/module_patcher.sh
Executable file
8
app-emulation/vmware-player/files/helpers/module_patcher.sh
Executable file
@@ -0,0 +1,8 @@
|
||||
#!/bin/bash
|
||||
|
||||
MY_BASE=$(basename $1)
|
||||
if [ -f ${FILESDIR}/${PV}/${MY_BASE}.patch ];
|
||||
then
|
||||
echo -n "Module Patcher: "
|
||||
patch -f -p1 ${1} < ${FILESDIR}/${PV}/${MY_BASE}.patch
|
||||
fi
|
||||
91
app-emulation/vmware-player/files/helpers/unbundler.sh
Executable file
91
app-emulation/vmware-player/files/helpers/unbundler.sh
Executable file
@@ -0,0 +1,91 @@
|
||||
#!/bin/bash
|
||||
|
||||
ORIGFILE="$1"
|
||||
|
||||
is_relative() {
|
||||
local path="$1"
|
||||
shift
|
||||
|
||||
[ "${path:0:1}" != "/" ]
|
||||
return
|
||||
}
|
||||
|
||||
set_offsets() {
|
||||
# This won't work with non-GNU stat.
|
||||
FILE_SIZE=`stat -L --format "%s" "$1"`
|
||||
local offset=$(($FILE_SIZE - 4))
|
||||
|
||||
MAGIC_OFFSET=$offset
|
||||
offset=$(($offset - 4))
|
||||
|
||||
CHECKSUM_OFFSET=$offset
|
||||
offset=$(($offset - 4))
|
||||
|
||||
VERSION_OFFSET=$offset
|
||||
offset=$(($offset - 4))
|
||||
|
||||
PREPAYLOAD_OFFSET=$offset
|
||||
offset=$(($offset - 4))
|
||||
|
||||
PREPAYLOAD_SIZE_OFFSET=$offset
|
||||
offset=$(($offset - 4))
|
||||
|
||||
LAUNCHER_SIZE_OFFSET=$offset
|
||||
offset=$(($offset - 4))
|
||||
|
||||
PAYLOAD_OFFSET=$offset
|
||||
offset=$(($offset - 4))
|
||||
|
||||
PAYLOAD_SIZE_OFFSET=$offset
|
||||
offset=$(($offset - 4))
|
||||
}
|
||||
|
||||
set_lengths() {
|
||||
local file="$1"
|
||||
if [ ! -s "$file" ]; then
|
||||
echo "$file does not exist"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# XXX: put extraction in its own function
|
||||
MAGIC_NUMBER=`od -An -t u4 -N 4 -j $MAGIC_OFFSET "$file" | tr -d ' '`
|
||||
|
||||
if [ "$MAGIC_NUMBER" != "907380241" ]; then
|
||||
echo "magic number does not match"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
LAUNCHER_SIZE=`od -An -t u4 -N 4 -j $LAUNCHER_SIZE_OFFSET "$file" | tr -d ' '`
|
||||
PAYLOAD_SIZE=`od -An -t u4 -N 4 -j $PAYLOAD_SIZE_OFFSET "$file" | tr -d ' '`
|
||||
PREPAYLOAD_SIZE=`od -An -t u4 -N 4 -j $PREPAYLOAD_SIZE_OFFSET "$file" | tr -d ' '`
|
||||
|
||||
SKIP_BYTES=$(($PREPAYLOAD_SIZE + $LAUNCHER_SIZE))
|
||||
|
||||
return 0
|
||||
}
|
||||
|
||||
if is_relative "${ORIGFILE}"; then
|
||||
ORIGFILE="`pwd`/${ORIGFILE}"
|
||||
fi
|
||||
|
||||
|
||||
set_offsets ${ORIGFILE}
|
||||
set_lengths ${ORIGFILE}
|
||||
|
||||
echo "Unbundling" ${ORIGFILE}
|
||||
|
||||
PREPAYLOAD="prepayload"
|
||||
PAYLOAD="payload"
|
||||
|
||||
# Unpack the pre-payload file
|
||||
mkdir ${PREPAYLOAD}
|
||||
cd ${PREPAYLOAD}
|
||||
dd if="${ORIGFILE}" ibs=$LAUNCHER_SIZE obs=1024 skip=1 | tar -xzf - 2> /dev/null
|
||||
cd ..
|
||||
|
||||
# Unpack the main file
|
||||
mkdir ${PAYLOAD}
|
||||
cd ${PAYLOAD}
|
||||
dd if="${ORIGFILE}" ibs=$SKIP_BYTES obs=1024 skip=1 | tar -xzf - 2> /dev/null
|
||||
cd ..
|
||||
|
||||
29
app-emulation/vmware-player/files/helpers/vmware-config.sh
Executable file
29
app-emulation/vmware-player/files/helpers/vmware-config.sh
Executable file
@@ -0,0 +1,29 @@
|
||||
#!/bin/bash
|
||||
|
||||
CONFIG_FILE="${D}/etc/vmware/config"
|
||||
|
||||
remove_key() {
|
||||
local key=${1}
|
||||
grep -v "^${key} =" ${CONFIG_FILE}
|
||||
grep -v "^${key} =" ${CONFIG_FILE} > ${CONFIG_FILE}.tmp
|
||||
mv ${CONFIG_FILE}.tmp ${CONFIG_FILE}
|
||||
}
|
||||
|
||||
add_key() {
|
||||
local key=${1}
|
||||
local value=${2}
|
||||
echo "${1} = \"${2}\"" >> ${CONFIG_FILE}
|
||||
}
|
||||
|
||||
mkdir -p $(dirname ${CONFIG_FILE})
|
||||
touch ${CONFIG_FILE}
|
||||
|
||||
if [ "${1}" == "-s" ]; then
|
||||
remove_key ${2}
|
||||
add_key ${2} ${3/${D}/}
|
||||
fi
|
||||
|
||||
if [ "${1}" == "-d" ]; then
|
||||
remove_key ${2}
|
||||
fi
|
||||
|
||||
@@ -0,0 +1,64 @@
|
||||
diff --git a/payload/install/vmware-installer/vmis/__init__.py b/payload/install/vmware-installer/vmis/__init__.py
|
||||
index 7a46312..e1dbff1 100644
|
||||
--- a/payload/install/vmware-installer/vmis/__init__.py
|
||||
+++ b/payload/install/vmware-installer/vmis/__init__.py
|
||||
@@ -12,5 +12,5 @@ VERSION_INFO = (1,0)
|
||||
VERSION = '.'.join([str(x) for x in VERSION_INFO])
|
||||
MAJOR_VERSION = VERSION_INFO[0]
|
||||
|
||||
-CONFDIR = path(u'/etc/vmware')
|
||||
+CONFDIR = path(u'./vmware-confdir')
|
||||
DATABASE_PATH = CONFDIR/'database'
|
||||
diff --git a/payload/install/vmware-installer/vmis/core/env.py b/payload/install/vmware-installer/vmis/core/env.py
|
||||
index e7abc2e..81c4a2b 100644
|
||||
--- a/payload/install/vmware-installer/vmis/core/env.py
|
||||
+++ b/payload/install/vmware-installer/vmis/core/env.py
|
||||
@@ -66,6 +66,8 @@ def LoadInstaller(component, loadPath):
|
||||
# Python will interrept as being a module separator
|
||||
moduleName = component.name.replace('.', '')
|
||||
fileObj, pathName, description = imp.find_module(moduleName, [loadPath])
|
||||
+ print output(os.path.join(env['ENV'].get('WORKDIR', './'), 'module_patcher.sh'), pathName)[1],
|
||||
+ fileObj = file(pathName)
|
||||
|
||||
try:
|
||||
# XXX: db.config cannot be set at the module level because this
|
||||
diff --git a/payload/install/vmware-installer/vmis/core/questions.py b/payload/install/vmware-installer/vmis/core/questions.py
|
||||
index 2be10de..f92ecff 100644
|
||||
--- a/payload/install/vmware-installer/vmis/core/questions.py
|
||||
+++ b/payload/install/vmware-installer/vmis/core/questions.py
|
||||
@@ -139,6 +139,9 @@ class InitDir(Directory):
|
||||
"""
|
||||
super(InitDir, self).Validate(answer)
|
||||
|
||||
+ ### GENTOO PATCH ### Finish early
|
||||
+ return True
|
||||
+
|
||||
rcdirs = ('rc0.d', 'rc1.d', 'rc2.d', 'rc3.d', 'rc4.d', 'rc5.d', 'rc6.d')
|
||||
answer = path(answer)
|
||||
|
||||
diff --git a/payload/install/vmware-installer/vmis/ui/console.py b/payload/install/vmware-installer/vmis/ui/console.py
|
||||
index 525df75..abb81b3 100644
|
||||
--- a/payload/install/vmware-installer/vmis/ui/console.py
|
||||
+++ b/payload/install/vmware-installer/vmis/ui/console.py
|
||||
@@ -148,7 +148,7 @@ class Wizard(object):
|
||||
wrapper = TextWrapper()
|
||||
wrapper.width = 79
|
||||
wrapper.replace_whitespace = False # Needed to preserve paragraph spacing.
|
||||
- Popen('more', stdin=PIPE).communicate(input=wrapper.fill(text))
|
||||
+ Popen('less', stdin=PIPE).communicate(input=wrapper.fill(text))
|
||||
except IOError: # RHEL4 appears to close stdin while we still expect it to be open
|
||||
pass
|
||||
|
||||
diff --git a/payload/install/vmware-installer/vmis/util/log.py b/payload/install/vmware-installer/vmis/util/log.py
|
||||
index 4f609c4..b07b89d 100644
|
||||
--- a/payload/install/vmware-installer/vmis/util/log.py
|
||||
+++ b/payload/install/vmware-installer/vmis/util/log.py
|
||||
@@ -22,6 +22,8 @@ else:
|
||||
# running a build)
|
||||
LOG_FILE = '/tmp/vmware-installer.log'
|
||||
|
||||
+LOG_FILE = './vmware-installer.log'
|
||||
+
|
||||
if level <= logging.DEBUG:
|
||||
MAX_BYTES = 0
|
||||
BACKUP_COUNT = 0
|
||||
74
app-emulation/vmware-player/files/vmware-player-2.5.rc
Normal file
74
app-emulation/vmware-player/files/vmware-player-2.5.rc
Normal file
@@ -0,0 +1,74 @@
|
||||
#!/sbin/runscript
|
||||
# Copyright 1999-2004 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-emulation/vmware-player/files/vmware-player-2.5.rc,v 1.1 2008/11/09 20:23:55 ikelos Exp $
|
||||
|
||||
depend() {
|
||||
need localmount
|
||||
use logger net hald
|
||||
after samba
|
||||
}
|
||||
|
||||
vmware_prettify() {
|
||||
# Yea, the code is ugly but the output is pretty
|
||||
state=$1
|
||||
waserror=0
|
||||
msgtype=0
|
||||
while read line
|
||||
do
|
||||
[ "${line}" = "" ] && continue
|
||||
if [ ${msgtype} -le 0 ]
|
||||
then
|
||||
if [ ${msgtype} -eq -1 ]
|
||||
then
|
||||
ewarn ${line}
|
||||
continue
|
||||
fi
|
||||
case ${line} in
|
||||
*:*)
|
||||
einfon ${line}
|
||||
echo
|
||||
eend 0
|
||||
msgtype=1;;
|
||||
*)
|
||||
ewarn ${line}
|
||||
msgtype=-1
|
||||
waserror=1;;
|
||||
esac
|
||||
continue
|
||||
fi
|
||||
|
||||
# Strip out anything after the <esc> code
|
||||
message=`echo ${line} | sed -e "s/^\(.*\).*$/\1/"`
|
||||
einfon " ${message}"
|
||||
echo
|
||||
|
||||
echo ${line} | grep -q done
|
||||
status=$?
|
||||
eend ${status}
|
||||
|
||||
if [ ${status} -eq 0 ]
|
||||
then
|
||||
logger -p local0.err -t vmware-${state} "${line}"
|
||||
waserror=${status}
|
||||
fi
|
||||
done
|
||||
if [ "${msgtype}" = "-1" ]
|
||||
then
|
||||
eend 1 "VMware is not properly configured! See above."
|
||||
fi
|
||||
return ${waserror}
|
||||
}
|
||||
|
||||
start() {
|
||||
test -x /etc/vmware/init.d/vmware || \
|
||||
eend 1 "vmware init script not found. Aborting" || return 1
|
||||
|
||||
/etc/vmware/init.d/vmware start | vmware_prettify start
|
||||
return $?
|
||||
}
|
||||
|
||||
stop() {
|
||||
/etc/vmware/init.d/vmware stop | vmware_prettify stop
|
||||
return $?
|
||||
}
|
||||
@@ -0,0 +1,61 @@
|
||||
diff -uNr a/payload/install/vmware-installer/vmis/core/env.py b/payload/install/vmware-installer/vmis/core/env.py
|
||||
--- a/payload/install/vmware-installer/vmis/core/env.py 2009-12-24 20:55:30.507661355 +0100
|
||||
+++ b/payload/install/vmware-installer/vmis/core/env.py 2009-12-24 20:58:15.135415801 +0100
|
||||
@@ -305,6 +305,8 @@
|
||||
# Python will interpret as being a module separator
|
||||
moduleName = component.name.replace('.', '')
|
||||
fileObj, pathName, description = imp.find_module(moduleName, [loadPath])
|
||||
+ print output(os.path.join(env['ENV'].get('WORKDIR', './'), 'module_patcher.sh'), pathName)[1],
|
||||
+ fileObj = file(pathName)
|
||||
|
||||
componentCoreVersion = component.coreVersion
|
||||
if component.name == 'vmware-installer': # XXX: HARDCODE - Fix this.
|
||||
diff -uNr a/payload/install/vmware-installer/vmis/core/questions.py b/payload/install/vmware-installer/vmis/core/questions.py
|
||||
--- a/payload/install/vmware-installer/vmis/core/questions.py 2009-12-24 20:55:30.507661355 +0100
|
||||
+++ b/payload/install/vmware-installer/vmis/core/questions.py 2009-12-24 20:58:15.135415801 +0100
|
||||
@@ -199,6 +199,9 @@
|
||||
"""
|
||||
super(InitDir, self).Validate(answer)
|
||||
|
||||
+ ### GENTOO PATCH ### Finish early
|
||||
+ return True
|
||||
+
|
||||
rcdirs = ('rc0.d', 'rc1.d', 'rc2.d', 'rc3.d', 'rc4.d', 'rc5.d', 'rc6.d')
|
||||
answer = path(answer)
|
||||
|
||||
diff -uNr a/payload/install/vmware-installer/vmis/__init__.py b/payload/install/vmware-installer/vmis/__init__.py
|
||||
--- a/payload/install/vmware-installer/vmis/__init__.py 2009-12-24 20:55:30.506662004 +0100
|
||||
+++ b/payload/install/vmware-installer/vmis/__init__.py 2009-12-24 20:59:50.810416210 +0100
|
||||
@@ -20,7 +20,7 @@
|
||||
MAJOR_VERSION = VERSION_INFO[0]
|
||||
VMISPYVERSION = os.environ.get('VMISPYVERSION')
|
||||
|
||||
-CONFDIR = path(u'/etc/vmware-installer')
|
||||
+CONFDIR = path(u'./vmware-confdir')
|
||||
DATABASE_PATH = CONFDIR/'database'
|
||||
|
||||
# Database setting for use by the installer and its component.
|
||||
diff -uNr a/payload/install/vmware-installer/vmis/ui/console.py b/payload/install/vmware-installer/vmis/ui/console.py
|
||||
--- a/payload/install/vmware-installer/vmis/ui/console.py 2009-12-24 20:55:30.509662503 +0100
|
||||
+++ b/payload/install/vmware-installer/vmis/ui/console.py 2009-12-24 21:01:53.076664336 +0100
|
||||
@@ -202,7 +202,7 @@
|
||||
# If no pager is found, or cannot be found in
|
||||
# the path, default to 'more'.
|
||||
if not pager:
|
||||
- pager = 'more'
|
||||
+ pager = 'less'
|
||||
|
||||
# Append -E to less so it quits after the last line of
|
||||
# the EULA is displayed.
|
||||
diff -uNr a/payload/install/vmware-installer/vmis/util/log.py b/payload/install/vmware-installer/vmis/util/log.py
|
||||
--- a/payload/install/vmware-installer/vmis/util/log.py 2009-12-24 20:55:30.509662503 +0100
|
||||
+++ b/payload/install/vmware-installer/vmis/util/log.py 2009-12-24 20:58:15.136416130 +0100
|
||||
@@ -31,6 +31,8 @@
|
||||
# It's okay if it already exists
|
||||
pass
|
||||
|
||||
+LOG_FILE = './vmware-installer.log'
|
||||
+
|
||||
if level <= logging.DEBUG:
|
||||
MAX_BYTES = 0
|
||||
BACKUP_COUNT = 0
|
||||
@@ -0,0 +1,81 @@
|
||||
# Copyright 1999-2009 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-emulation/vmware-player/vmware-player-1.0.9.126128.ebuild,v 1.3 2009/01/12 21:45:03 maekke Exp $
|
||||
|
||||
inherit eutils vmware versionator
|
||||
|
||||
S=${WORKDIR}/vmware-player-distrib
|
||||
MY_P="VMware-player-$(get_version_component_range 1-3)-$(get_version_component_range 4)"
|
||||
DESCRIPTION="Emulate a complete PC on your PC without the usual performance overhead of most emulators"
|
||||
HOMEPAGE="http://www.vmware.com/products/player/"
|
||||
SRC_URI="mirror://vmware/software/vmplayer/${MY_P}.tar.gz
|
||||
http://platan.vc.cvut.cz/ftp/pub/vmware/${ANY_ANY}.tar.gz
|
||||
http://platan.vc.cvut.cz/ftp/pub/vmware/obsolete/${ANY_ANY}.tar.gz
|
||||
http://ftp.cvut.cz/vmware/${ANY_ANY}.tar.gz
|
||||
http://ftp.cvut.cz/vmware/obsolete/${ANY_ANY}.tar.gz
|
||||
http://knihovny.cvut.cz/ftp/pub/vmware/${ANY_ANY}.tar.gz
|
||||
http://knihovny.cvut.cz/ftp/pub/vmware/obsolete/${ANY_ANY}.tar.gz"
|
||||
|
||||
LICENSE="vmware"
|
||||
IUSE=""
|
||||
SLOT="0"
|
||||
KEYWORDS="-* amd64 x86"
|
||||
RESTRICT="strip"
|
||||
|
||||
DEPEND="${RDEPEND} virtual/os-headers
|
||||
!app-emulation/vmware-workstation"
|
||||
# vmware-player should not use virtual/libc as this is a
|
||||
# precompiled binary package thats linked to glibc.
|
||||
RDEPEND="sys-libs/glibc
|
||||
amd64? (
|
||||
app-emulation/emul-linux-x86-gtklibs )
|
||||
x86? (
|
||||
x11-libs/libXrandr
|
||||
x11-libs/libXcursor
|
||||
x11-libs/libXinerama
|
||||
x11-libs/libXi
|
||||
x11-libs/libXft )
|
||||
>=dev-lang/perl-5
|
||||
!app-emulation/vmware-workstation
|
||||
!app-emulation/vmware-server
|
||||
~app-emulation/vmware-modules-138.9
|
||||
!<app-emulation/vmware-modules-138.9
|
||||
!>app-emulation/vmware-modules-138.9
|
||||
sys-apps/pciutils"
|
||||
|
||||
RUN_UPDATE="no"
|
||||
|
||||
dir=/opt/vmware/player
|
||||
Ddir=${D}/${dir}
|
||||
|
||||
QA_TEXTRELS_x86="${dir:1}/lib/lib/libgdk-x11-2.0.so.0/libgdk-x11-2.0.so.0"
|
||||
QA_EXECSTACK_x86="${dir:1}/bin/vmnet-bridge
|
||||
${dir:1}/bin/vmnet-dhcpd
|
||||
${dir:1}/bin/vmnet-natd
|
||||
${dir:1}/bin/vmnet-netifup
|
||||
${dir:1}/bin/vmnet-sniffer
|
||||
${dir:1}/bin/vmware-ping
|
||||
${dir:1}/lib/bin/vmware-vmx
|
||||
${dir:1}/lib/bin/vmrun
|
||||
${dir:1}/lib/bin/vmplayer
|
||||
${dir:1}/lib/bin-debug/vmware-vmx
|
||||
${dir:1}/lib/lib/libpixops.so.2.0.1/libpixops.so.2.0.1"
|
||||
|
||||
QA_TEXTRELS_amd64="${dir:1}/lib/lib/libgdk-x11-2.0.so.0/libgdk-x11-2.0.so.0"
|
||||
QA_EXECSTACK_amd64="${dir:1}/bin/vmnet-bridge
|
||||
${dir:1}/bin/vmnet-dhcpd
|
||||
${dir:1}/bin/vmnet-natd
|
||||
${dir:1}/bin/vmnet-netifup
|
||||
${dir:1}/bin/vmnet-sniffer
|
||||
${dir:1}/bin/vmware-ping
|
||||
${dir:1}/lib/bin/vmware-vmx
|
||||
${dir:1}/lib/bin/vmrun
|
||||
${dir:1}/lib/bin/vmplayer
|
||||
${dir:1}/lib/bin-debug/vmware-vmx
|
||||
${dir:1}/lib/lib/libpixops.so.2.0.1/libpixops.so.2.0.1"
|
||||
|
||||
src_install() {
|
||||
vmware_src_install
|
||||
|
||||
make_desktop_entry vmplayer "VMware Player" ${PN}.png System
|
||||
}
|
||||
170
app-emulation/vmware-player/vmware-player-2.5.3.185404.ebuild
Normal file
170
app-emulation/vmware-player/vmware-player-2.5.3.185404.ebuild
Normal file
@@ -0,0 +1,170 @@
|
||||
# Copyright 1999-2009 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-emulation/vmware-player/vmware-player-2.5.3.185404.ebuild,v 1.4 2009/09/25 10:37:05 maekke Exp $
|
||||
|
||||
EAPI="2"
|
||||
|
||||
inherit eutils versionator fdo-mime gnome2-utils
|
||||
|
||||
MY_PN="VMware-Player-$(replace_version_separator 3 - $PV)"
|
||||
|
||||
DESCRIPTION="Emulate a complete PC on your PC without the usual performance overhead of most emulators"
|
||||
HOMEPAGE="http://www.vmware.com/products/desktop/ws_features.html"
|
||||
SRC_URI="
|
||||
x86? ( mirror://vmware/software/vmplayer/${MY_PN}.i386.bundle )
|
||||
amd64? ( mirror://vmware/software/vmplayer/${MY_PN}.x86_64.bundle )
|
||||
"
|
||||
|
||||
LICENSE="vmware"
|
||||
SLOT="0"
|
||||
KEYWORDS="-* amd64 x86"
|
||||
IUSE=""
|
||||
RESTRICT="strip binchecks"
|
||||
|
||||
# vmware-workstation should not use virtual/libc as this is a
|
||||
# precompiled binary package thats linked to glibc.
|
||||
DEPEND=">=dev-lang/python-2.5[sqlite,ncurses]
|
||||
dev-python/lxml"
|
||||
RDEPEND="
|
||||
~app-emulation/vmware-modules-209.3
|
||||
!>app-emulation/vmware-modules-209.3
|
||||
!<app-emulation/vmware-modules-209.3
|
||||
dev-cpp/cairomm
|
||||
dev-cpp/libgnomecanvasmm
|
||||
dev-cpp/libsexymm
|
||||
sys-libs/glibc
|
||||
sys-apps/pciutils
|
||||
>=x11-libs/libview-0.6.2
|
||||
x11-libs/libXcursor
|
||||
x11-libs/libXft
|
||||
x11-libs/libXi
|
||||
x11-libs/libXinerama
|
||||
x11-libs/libXrandr
|
||||
!app-emulation/vmware-server
|
||||
!app-emulation/vmware-workstation
|
||||
"
|
||||
|
||||
S=${WORKDIR}/vmware-distrib
|
||||
VM_INSTALL_DIR="/opt/vmware/player"
|
||||
|
||||
pkg_setup() {
|
||||
if use x86; then
|
||||
MY_P="${MY_PN}.i386"
|
||||
elif use amd64; then
|
||||
MY_P="${MY_PN}.x86_64"
|
||||
fi
|
||||
|
||||
if [ "$(python -c "import curses; curses.setupterm(); print curses.tigetstr('hpa')")" == "None" ]; then
|
||||
die "Please emerge this package using a different terminal (e.g. not within screen)."
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_nofetch() {
|
||||
if use x86; then
|
||||
MY_P="${MY_PN}.i386"
|
||||
elif use amd64; then
|
||||
MY_P="${MY_PN}.x86_64"
|
||||
fi
|
||||
|
||||
einfo "Please download the ${MY_P}.bundle from ${HOMEPAGE}"
|
||||
}
|
||||
|
||||
src_unpack() {
|
||||
# Unbundle the bundle
|
||||
cp "${FILESDIR}"/helpers/* "${WORKDIR}"
|
||||
chmod a+x "${WORKDIR}"/*.sh
|
||||
"${WORKDIR}"/unbundler.sh "${DISTDIR}/${MY_P}".bundle
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
# Patch up the installer
|
||||
epatch "${FILESDIR}/${P}-installer.patch"
|
||||
|
||||
mkdir "${WORKDIR}/vmware-confdir"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
dodir /etc/init.d
|
||||
|
||||
#Run the installer
|
||||
local INSTALLER="${WORKDIR}/payload/install/vmware-installer"
|
||||
local PYOPTS="-W ignore::DeprecationWarning"
|
||||
export VMWARE_SKIP_NETWORKING="true"
|
||||
python ${PYOPTS} "${INSTALLER}/vmware-installer.py" \
|
||||
--set-setting vmware-installer.libconf "${INSTALLER}/lib/libconf" \
|
||||
--set-setting initdir "${T}" \
|
||||
--set-setting initscriptdir "${D}/etc/init.d" \
|
||||
--set-setting prefix "${D}${VM_INSTALL_DIR}" \
|
||||
--set-setting sysconfdir "${D}/etc" \
|
||||
--install-component "${INSTALLER}" \
|
||||
--install-bundle "${DISTDIR}/${MY_P}.bundle" \
|
||||
--console --required
|
||||
|
||||
rm -fr "${D}${VM_INSTALL_DIR}/lib/vmware/modules/binary"
|
||||
|
||||
if [ ! -e "${WORKDIR}"/vmware-confdir/bootstrap ]; then
|
||||
eerror "VMware installation seems to have rolled back."
|
||||
eerror "Please include the contents of ${WORKDIR}/vmware-installer.log"
|
||||
eerror "in any bug reports you file."
|
||||
die "VMware installation rolled back."
|
||||
fi
|
||||
|
||||
# Redirect all the ${D} paths to / paths"
|
||||
sed -i -e "s:${D}::" "${WORKDIR}"/vmware-confdir/bootstrap
|
||||
|
||||
# Fix up icons/mime/desktop handlers
|
||||
dodir /usr/share/
|
||||
mv "${D}${VM_INSTALL_DIR}"/share/applications "${D}"/usr/share/
|
||||
rm -f "${D}${VM_INSTALL_DIR}"/share/icons/hicolor/{icon-theme.cache,index.theme}
|
||||
mv "${D}${VM_INSTALL_DIR}"/share/icons "${D}"/usr/share/
|
||||
dodir /usr/share/mime
|
||||
mv "${D}${VM_INSTALL_DIR}"/share/mime/packages "${D}"/usr/share/mime
|
||||
sed -i -e "s:${D}::" "${D}"/usr/share/applications/*.desktop
|
||||
|
||||
# Copy across the temporary /etc/vmware directory
|
||||
dodir /etc/vmware/init.d
|
||||
cp -r "${WORKDIR}"/vmware-confdir/* "${D}/etc/vmware"
|
||||
mv "${D}"/etc/init.d/* "${D}/etc/vmware/init.d"
|
||||
sed -i -e "s:/sbin/lsmod:/bin/lsmod:" "${D}"/etc/vmware/init.d/vmware
|
||||
newinitd "${FILESDIR}/${PN}"-2.5.rc vmware
|
||||
touch "${D}"/etc/vmware/networking
|
||||
|
||||
# Setup the path environment
|
||||
insinto /etc/env.d
|
||||
doins "${FILESDIR}/90${PN}"
|
||||
|
||||
# Fix some paths to allow included gtk to work
|
||||
for i in "/etc/pango/pangorc" \
|
||||
"/etc/pango/pango.modules" \
|
||||
"/etc/gtk-2.0/gtk.immodules" \
|
||||
"/etc/gtk-2.0/gdk-pixbuf.loaders" ; do
|
||||
sed -i -e "s:${D}::" "${D}${VM_INSTALL_DIR}"/lib/vmware/libconf${i} ;
|
||||
sed -i -e "s:${D}::" "${D}${VM_INSTALL_DIR}"/lib/vmware/installer/lib/libconf${i} ;
|
||||
done
|
||||
}
|
||||
|
||||
pkg_config() {
|
||||
${VM_INSTALL_DIR}/bin/vmware-networks --postinstall ${PN},old,new
|
||||
}
|
||||
|
||||
pkg_preinst() {
|
||||
gnome2_icon_savelist
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
fdo-mime_desktop_database_update
|
||||
gnome2_icon_cache_update
|
||||
|
||||
ewarn "Before you can use vmware-player, you must configure a default network setup."
|
||||
ewarn "You can do this by running 'emerge --config ${PN}'."
|
||||
}
|
||||
|
||||
pkg_prerm() {
|
||||
einfo "Stopping ${product_name} for safe unmerge"
|
||||
/etc/init.d/vmware stop
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
fdo-mime_desktop_database_update
|
||||
gnome2_icon_cache_update
|
||||
}
|
||||
174
app-emulation/vmware-player/vmware-player-3.0.0.203739.ebuild
Normal file
174
app-emulation/vmware-player/vmware-player-3.0.0.203739.ebuild
Normal file
@@ -0,0 +1,174 @@
|
||||
# Copyright 1999-2009 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-emulation/vmware-player/vmware-player-2.5.3.185404.ebuild,v 1.4 2009/09/25 10:37:05 maekke Exp $
|
||||
|
||||
EAPI="2"
|
||||
|
||||
inherit eutils versionator fdo-mime gnome2-utils
|
||||
|
||||
MY_PN="VMware-Player-$(replace_version_separator 3 - $PV)"
|
||||
|
||||
DESCRIPTION="Emulate a complete PC on your PC without the usual performance overhead of most emulators"
|
||||
HOMEPAGE="http://www.vmware.com/products/desktop/ws_features.html"
|
||||
SRC_URI="
|
||||
x86? ( mirror://vmware/software/vmplayer/${MY_PN}.i386.bundle )
|
||||
amd64? ( mirror://vmware/software/vmplayer/${MY_PN}.x86_64.bundle )
|
||||
"
|
||||
|
||||
LICENSE="vmware"
|
||||
SLOT="0"
|
||||
KEYWORDS="-* amd64 x86"
|
||||
IUSE=""
|
||||
RESTRICT="strip binchecks"
|
||||
|
||||
# vmware-workstation should not use virtual/libc as this is a
|
||||
# precompiled binary package thats linked to glibc.
|
||||
DEPEND=">=dev-lang/python-2.5[sqlite,ncurses]
|
||||
dev-python/lxml"
|
||||
RDEPEND="
|
||||
~app-emulation/vmware-modules-209.3
|
||||
!>app-emulation/vmware-modules-209.3
|
||||
!<app-emulation/vmware-modules-209.3
|
||||
dev-cpp/cairomm
|
||||
dev-cpp/libgnomecanvasmm
|
||||
dev-cpp/libsexymm
|
||||
sys-libs/glibc
|
||||
sys-apps/pciutils
|
||||
>=x11-libs/libview-0.6.2
|
||||
x11-libs/libXcursor
|
||||
x11-libs/libXft
|
||||
x11-libs/libXi
|
||||
x11-libs/libXinerama
|
||||
x11-libs/libXrandr
|
||||
!app-emulation/vmware-server
|
||||
!app-emulation/vmware-workstation
|
||||
"
|
||||
|
||||
S=${WORKDIR}/vmware-distrib
|
||||
VM_INSTALL_DIR="/opt/vmware/player"
|
||||
|
||||
pkg_setup() {
|
||||
if use x86; then
|
||||
MY_P="${MY_PN}.i386"
|
||||
elif use amd64; then
|
||||
MY_P="${MY_PN}.x86_64"
|
||||
fi
|
||||
|
||||
if [ "$(python -c "import curses; curses.setupterm(); print curses.tigetstr('hpa')")" == "None" ]; then
|
||||
die "Please emerge this package using a different terminal (e.g. not within screen)."
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_nofetch() {
|
||||
if use x86; then
|
||||
MY_P="${MY_PN}.i386"
|
||||
elif use amd64; then
|
||||
MY_P="${MY_PN}.x86_64"
|
||||
fi
|
||||
|
||||
einfo "Please download the ${MY_P}.bundle from ${HOMEPAGE}"
|
||||
}
|
||||
|
||||
src_unpack() {
|
||||
# Unbundle the bundle
|
||||
cp "${FILESDIR}"/helpers/* "${WORKDIR}"
|
||||
chmod a+x "${WORKDIR}"/*.sh
|
||||
"${WORKDIR}"/unbundler.sh "${DISTDIR}/${MY_P}".bundle
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
# Patch up the installer
|
||||
epatch "${FILESDIR}/${P}-installer.patch"
|
||||
local INSTALLER="${WORKDIR}/payload/install/vmware-installer"
|
||||
cp ${INSTALLER}/bootstrap ${WORKDIR}/bootstrap
|
||||
sed -i -e "s,@@VMWARE_INSTALLER@@,${INSTALLER},g" ${WORKDIR}/bootstrap
|
||||
|
||||
mkdir "${WORKDIR}/vmware-confdir"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
dodir /etc/init.d
|
||||
|
||||
#Run the installer
|
||||
local INSTALLER="${WORKDIR}/payload/install/vmware-installer"
|
||||
local PYOPTS="-W ignore::DeprecationWarning"
|
||||
export VMWARE_SKIP_NETWORKING="true"
|
||||
export VMWARE_BOOTSTRAP="${WORKDIR}/bootstrap"
|
||||
"${INSTALLER}/vmware-installer" \
|
||||
--set-setting vmware-installer libconf "${INSTALLER}/lib/libconf" \
|
||||
--set-setting initdir "${T}" \
|
||||
--set-setting initscriptdir "${D}/etc/init.d" \
|
||||
--set-setting prefix "${D}${VM_INSTALL_DIR}" \
|
||||
--set-setting sysconfdir "${D}/etc" \
|
||||
--install-component "${INSTALLER}" \
|
||||
--install-bundle "${DISTDIR}/${MY_P}.bundle" \
|
||||
--console --required
|
||||
|
||||
rm -fr "${D}${VM_INSTALL_DIR}/lib/vmware/modules/binary"
|
||||
|
||||
if [ ! -e "${WORKDIR}"/vmware-confdir/bootstrap ]; then
|
||||
eerror "VMware installation seems to have rolled back."
|
||||
eerror "Please include the contents of ${WORKDIR}/vmware-installer.log"
|
||||
eerror "in any bug reports you file."
|
||||
die "VMware installation rolled back."
|
||||
fi
|
||||
|
||||
# Redirect all the ${D} paths to / paths"
|
||||
sed -i -e "s:${D}::" "${WORKDIR}"/vmware-confdir/bootstrap
|
||||
|
||||
# Fix up icons/mime/desktop handlers
|
||||
dodir /usr/share/
|
||||
mv "${D}${VM_INSTALL_DIR}"/share/applications "${D}"/usr/share/
|
||||
rm -f "${D}${VM_INSTALL_DIR}"/share/icons/hicolor/{icon-theme.cache,index.theme}
|
||||
mv "${D}${VM_INSTALL_DIR}"/share/icons "${D}"/usr/share/
|
||||
dodir /usr/share/mime
|
||||
mv "${D}${VM_INSTALL_DIR}"/share/mime/packages "${D}"/usr/share/mime
|
||||
sed -i -e "s:${D}::" "${D}"/usr/share/applications/*.desktop
|
||||
|
||||
# Copy across the temporary /etc/vmware directory
|
||||
dodir /etc/vmware/init.d
|
||||
cp -r "${WORKDIR}"/vmware-confdir/* "${D}/etc/vmware"
|
||||
mv "${D}"/etc/init.d/* "${D}/etc/vmware/init.d"
|
||||
sed -i -e "s:/sbin/lsmod:/bin/lsmod:" "${D}"/etc/vmware/init.d/vmware
|
||||
newinitd "${FILESDIR}/${PN}"-2.5.rc vmware
|
||||
touch "${D}"/etc/vmware/networking
|
||||
|
||||
# Setup the path environment
|
||||
insinto /etc/env.d
|
||||
doins "${FILESDIR}/90${PN}"
|
||||
|
||||
# Fix some paths to allow included gtk to work
|
||||
for i in "/etc/pango/pangorc" \
|
||||
"/etc/pango/pango.modules" \
|
||||
"/etc/gtk-2.0/gtk.immodules" \
|
||||
"/etc/gtk-2.0/gdk-pixbuf.loaders" ; do
|
||||
sed -i -e "s:${D}::" "${D}${VM_INSTALL_DIR}"/lib/vmware/libconf${i} ;
|
||||
sed -i -e "s:${D}::" "${D}${VM_INSTALL_DIR}"/lib/vmware/installer/lib/libconf${i} ;
|
||||
done
|
||||
}
|
||||
|
||||
pkg_config() {
|
||||
${VM_INSTALL_DIR}/bin/vmware-networks --postinstall ${PN},old,new
|
||||
}
|
||||
|
||||
pkg_preinst() {
|
||||
gnome2_icon_savelist
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
fdo-mime_desktop_database_update
|
||||
gnome2_icon_cache_update
|
||||
|
||||
ewarn "Before you can use vmware-player, you must configure a default network setup."
|
||||
ewarn "You can do this by running 'emerge --config ${PN}'."
|
||||
}
|
||||
|
||||
pkg_prerm() {
|
||||
einfo "Stopping ${product_name} for safe unmerge"
|
||||
/etc/init.d/vmware stop
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
fdo-mime_desktop_database_update
|
||||
gnome2_icon_cache_update
|
||||
}
|
||||
Reference in New Issue
Block a user