milis/talimatname/genel/v/vmware/talimat

235 lines
7.7 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Tanım: Vmware sanal makine uygulaması
# URL: https://www.vmware.com/products/workstation-for-linux.html
# Paketçi: milisarge
# Gerekler: sqlite3 xorg-app
# Grup: sistem
isim=vmware
surum=14.1.1
devir=1
_derlemeno=7528167
_surum=${surum}_${_derlemeno}
kaynak=(https://download3.vmware.com/software/wkst/file/VMware-Workstation-Full-${_surum/_/-}.x86_64.bundle
vmware-vix-bootstrap
config
bootstrap
pam.d-vmware-authd
vmware-environment.sh
config.xml
datastores.xml
environments.xml
proxy.xml
Makefile
vmmon.patch
vmnet.patch)
derle() {
extracted_dir="$SRC/extracted"
[[ -d "$extracted_dir" ]] && rm -r "$extracted_dir"
bash $(readlink -f "$SRC/VMware-Workstation-Full-${_surum/_/-}.x86_64.bundle") --extract "$extracted_dir"
local vmware_installer_version=$(cat "$SRC/extracted/vmware-installer/manifest.xml" | grep -oPm1 "(?<=<version>)[^<]+")
mkdir -p \
"$PKG/etc"/{cups,pam.d,modprobe.d,profile.d,thnuclnt,vmware} \
"$PKG/usr"/{share,bin} \
"$PKG/usr/include/vmware-vix" \
"$PKG/usr/lib"/{vmware/{setup,lib/libvmware-vim-cmd.so},vmware-vix,vmware-ovftool,vmware-installer/"$vmware_installer_version",cups/filter,modules-load.d} \
"$PKG/usr/share"/{doc/vmware-vix,licenses/"$isim"} \
"$PKG/var/lib/vmware/Shared VMs"
cd "$SRC/extracted"
cp -r \
vmware-workstation/share/* \
vmware-workstation/man \
vmware-network-editor-ui/share/* \
vmware-player-app/share/* \
"$PKG/usr/share"
cp -r \
vmware-workstation/bin/* \
vmware-vmx/{,s}bin/* \
vmware-vix-core/bin/* \
vmware-vprobe/bin/* \
vmware-workstation-server/{vmware-hostd,vmware-vim-cmd,vmware-wssc-adminTool} \
vmware-network-editor-ui/bin/* \
vmware-player-app/bin/* \
"$PKG/usr/bin"
cp -r \
vmware-workstation/lib/* \
vmware-player-app/lib/* \
vmware-vmx/{lib/*,roms} \
vmware-vprobe/lib/* \
vmware-workstation-server/{bin,lib,hostd} \
vmware-usbarbitrator/bin \
vmware-network-editor/lib \
"$PKG/usr/lib/vmware"
cp -r \
vmware-player-setup/vmware-config \
"$PKG/usr/lib/vmware/setup"
cp -rL \
vmware-workstation-server/config/etc/vmware/* \
vmware-workstation-server/etc/vmware/* \
"$SRC"/{bootstrap,config} \
"$PKG/etc/vmware"
cp -r \
vmware-vix-lib-Workstation1400/lib/Workstation-14.0.0 \
vmware-vix-core/{lib/*,vixwrapper-config.txt} \
"$PKG/usr/lib/vmware-vix"
cp vmware-vix-core/vix-perl.tar.nogz "$PKG/usr/lib/vmware-vix/vix-perl.tar.gz"
cp -r \
vmware-vix-core/doc/* \
"$PKG/usr/share/doc/vmware-vix"
cp -r \
vmware-ovftool/* \
"$PKG/usr/lib/vmware-ovftool"
cp -r \
vmware-installer/{python,sopython,vmis,vmis-launcher,vmware-installer,vmware-installer.py} \
"$PKG/usr/lib/vmware-installer/$vmware_installer_version"
cp -r \
vmware-player-app/etc/cups/* \
"$PKG/etc/cups"
cp -r \
vmware-player-app/extras/.thnumod \
"$PKG/etc/thnuclnt"
cp -r \
vmware-player-app/extras/thnucups \
"$PKG/usr/lib/cups/filter"
cp -r \
vmware-vix-core/include/* \
"$PKG/usr/include/vmware-vix"
install -Dm 644 "vmware-workstation/doc/EULA" "$PKG/usr/share/licenses/$isim/VMware Workstation - EULA.txt"
install -Dm 644 "vmware-workstation/doc"/*open_source_licenses.txt "$PKG/usr/share/licenses/$isim"
mv "$PKG/usr/lib/vmware-ovftool/vmware.eula" "$PKG/usr/share/licenses/$isim/VMware OVF Tool component for Linux - EULA.txt"
rm "$PKG/usr/lib/vmware-ovftool"/{vmware-eula.rtf,open_source_licenses.txt,manifest.xml}
install -Dm 644 "vmware-vmx/etc/modprobe.d/modprobe-vmware-fuse.conf" "$PKG/etc/modprobe.d/vmware-fuse.conf"
install -Dm 644 vmware-player-app/lib/isoimages/tools-key.pub "$PKG/usr/lib/vmware/isoimages/tools-key.pub"
install -Dm 644 vmware-vmx/extra/modules.xml "$PKG/usr/lib/vmware/modules/modules.xml"
install -Dm 644 vmware-installer/bootstrap "$PKG/etc/vmware-installer/bootstrap"
install -Dm 644 "$SRC/vmware-vix-bootstrap" "$PKG/etc/vmware-vix/bootstrap"
for hostd_file in config datastores environments proxy; do
install -Dm 644 "$SRC/$hostd_file.xml" "$PKG/etc/vmware/hostd/$hostd_file.xml"
done
install -Dm 644 "$SRC/pam.d-vmware-authd" "$PKG/etc/pam.d/vmware-authd"
echo -e "vmw_vmci\nvmmon" > "$PKG/usr/lib/modules-load.d/vmware.conf"
chmod +x \
"$PKG/usr/bin"/* \
"$PKG/usr/lib/vmware/bin"/* \
"$PKG/usr/lib/vmware/setup"/* \
"$PKG/usr/lib/vmware/lib"/libvmware-gksu.so/gksu-run-helper \
"$PKG/usr/lib/vmware-ovftool"/{ovftool,ovftool.bin} \
"$PKG/usr/lib/vmware-installer/$vmware_installer_version"/{vmware-installer,vmis-launcher} \
"$PKG/usr/lib/cups/filter"/* \
"$PKG/usr/lib/vmware-vix/setup"/* \
"$PKG/etc/thnuclnt/.thnumod"
chmod -R 600 "$PKG/etc/vmware/ssl"
chmod +s \
"$PKG/usr/bin"/vmware-authd \
"$PKG/usr/lib/vmware/bin"/{vmware-vmx,vmware-vmx-debug,vmware-vmx-stats}
# Add symlinks the installer would create.
for link in \
licenseTool \
vmplayer \
vmware \
vmware-app-control \
vmware-enter-serial \
vmware-fuseUI \
vmware-gksu \
vmware-hostd \
vmware-modconfig \
vmware-modconfig-console \
vmware-mount \
vmware-netcfg \
vmware-tray \
vmware-vim-cmd \
vmware-vmblock-fuse \
vmware-vprobe \
vmware-wssc-adminTool \
vmware-zenity
do
ln -s /usr/lib/vmware/bin/appLoader "$PKG/usr/lib/vmware/bin/$link"
done
for link in \
vmware-mount \
vmware-usbarbitrator
do
ln -s /usr/lib/vmware/bin/$link "$PKG/usr/bin/$link"
done
ln -s /usr/lib/vmware/icu "$PKG/etc/vmware/icu"
ln -s /usr/lib/vmware/lib/diskLibWrapper.so/diskLibWrapper.so "$PKG/usr/lib/diskLibWrapper.so"
ln -s /usr/lib/vmware/lib/libvmware-hostd.so/libvmware-hostd.so "$PKG/usr/lib/vmware/lib/libvmware-vim-cmd.so/libvmware-vim-cmd.so"
ln -s /usr/lib/vmware-ovftool/ovftool "$PKG/usr/bin/ovftool"
ln -s /usr/lib/vmware-vix/libvixAllProducts.so "$PKG/usr/lib/libvixAllProducts.so"
# Replace placeholder "variables" with real paths.
for file in \
gtk-3.0/gdk-pixbuf.loaders
do
sed -i 's,@@LIBCONF_DIR@@,/usr/lib/vmware/libconf,g' "$PKG/usr/lib/vmware/libconf/etc/$file"
done
sed -i 's,@@BINARY@@,/usr/bin/vmware,' "$PKG/usr/share/applications/vmware-workstation.desktop"
sed -i 's,@@BINARY@@,/usr/bin/vmplayer,' "$PKG/usr/share/applications/vmware-player.desktop"
sed -i 's,@@BINARY@@,/usr/bin/vmware-netcfg,' "$PKG/usr/share/applications/vmware-netcfg.desktop"
sed -i 's,@@AUTHD_PORT@@,902,' "$PKG/usr/lib/vmware/hostd/docroot/client/clients.xml"
sed \
-e "s/@@VERSION@@/$vmware_installer_version/" \
-e "s,@@VMWARE_INSTALLER@@,/usr/lib/vmware-installer/$vmware_installer_version," \
-i "$PKG/etc/vmware-installer/bootstrap"
# Patch up the VMware kernel sources
dkms_dir="$PKG/usr/src/$isim-$_surum"
install -Dm 644 "$SRC/Makefile" "$dkms_dir/Makefile"
for module in vmmon vmnet; do # vmblock vmci vsock
tar -xf "vmware-vmx/lib/modules/source/$module.tar" -C "$dkms_dir"
patch -p2 --read-only=ignore --directory="$dkms_dir/$module-only" < "$SRC/$module.patch"
done
rm -r "$PKG/usr/lib/vmware/modules/source"
local database_filename="$PKG/etc/vmware-installer/database"
echo -n "" > "$database_filename"
sqlite3 "$database_filename" "CREATE TABLE settings(key VARCHAR PRIMARY KEY, value VARCHAR NOT NULL, component_name VARCHAR NOT NULL);"
sqlite3 "$database_filename" "INSERT INTO settings(key,value,component_name) VALUES('db.schemaVersion','2','vmware-installer');"
sqlite3 "$database_filename" "CREATE TABLE components(id INTEGER PRIMARY KEY, name VARCHAR NOT NULL, version VARCHAR NOT NULL, buildNumber INTEGER NOT NULL, component_core_id INTEGER NOT NULL, longName VARCHAR NOT NULL, description VARCHAR, type INTEGER NOT NULL);"
# Define some environment variables for VMware and remove the tests about kernel modules
install -Dm 644 "$SRC/vmware-environment.sh" "$PKG/etc/conf.d/vmware"
for program in vmware vmplayer vmware-netcfg vmware-tray; do
sed -e '/export PRODUCT_NAME/asource /etc/conf.d/vmware' \
-e 's/if "$BINDIR"\/vmware-modconfig --appname=.*/if true ||/' \
-i "$PKG/usr/bin/$program"
done
}