X-Git-Url: https://git.pld-linux.org/?a=blobdiff_plain;ds=inline;f=VMware-server.spec;h=810cdb8ef298d9eca75e16523f11020607e57f31;hb=HEAD;hp=d8f8e4c9813767d3f06ab42a4947a585170833bf;hpb=77376fa10cf1d5ed67e3f5baeb8d416f0731d70e;p=packages%2FVMware-server.git diff --git a/VMware-server.spec b/VMware-server.spec index d8f8e4c..810cdb8 100644 --- a/VMware-server.spec +++ b/VMware-server.spec @@ -1,44 +1,32 @@ -# TODO -# - make vmware-config.pl work -# - put things back to subpackages -# - use system java, tomcat, etc packages -# - make use rc-inetd style config -# - switch to proper %{_libdir} when done for 64bit arch -# - sane permissions -# -# This doesn't work at all yet. I don't know if the management interface is needed -# (bundling apache seems like a sooooooooo great idea). Maybe it is possible to -# setup the server part by hand. The perl module in perl/control.tar needs to -# be packaged (vmware-cmd requires that). Something needs to be done with -# the authd (inetd integration is needed I guess). # -# The modules from any-any upgrade are too old (I used the ones comming with VMw-S). +# STATUS: +# - 2.0.2.203138-0.2 works fine th-x86_64 # -# It builds on amd64, I have changed the networking package not to require the main package -# so it can be installed outside 32bit chroot. +# NOTE: +# - direct download links seem to no longer work, you may need to get them +# on your own. # -# But hey, it's at least free ;-) -# -# I probably won't have time to work on this, switching to vmware-player. -# TODO: -# problem with libsexy/libsexymm: -# ln -s /usr/lib/libsexy.so.2 /usr/lib/libsexy.so.1 -# ln -s /usr/lib/libsexymm.so.2 /usr/lib/libsexymm.so.1 +# TODO +# - make vmware-config.pl work +# - sane permissions +# - switch to proper %{_libdir} when done for 64bit arch +# - use system java, tomcat, etc packages +# - package webAccess elsewhere, seems noarch mostly (but if using system pkgs for java/tomcat leave it still huge) +# - put things back to subpackages (if makes sense) # # Conditional build: %bcond_without dist_kernel # without distribution kernel %bcond_without kernel # don't build kernel modules %bcond_without userspace # don't build userspace utilities %bcond_without internal_libs # internal libs stuff -%bcond_without doc # package huge docs +%bcond_without doc # package huge docs %bcond_with verbose # verbose build (V=1) # -%include /usr/lib/rpm/macros.perl # -%define ver 2.0 -%define subver 84186 -%define rel 0.1 -%define urel 116 +%define ver 2.0.2 +%define vixver 1.6.2 +%define subver 203138 +%define rel 0.2 %{expand:%%global ccver %(%{__cc} -dumpversion)} # Summary: VMware Server @@ -48,42 +36,42 @@ Version: %{ver}.%{subver} Release: %{rel} License: custom, non-distributable Group: Applications/Emulators -# http://www.vmware.com/beta/server/download.html -Source0: http://download3.vmware.com/software/vmserver/%{name}-e.x.p-%{subver}.i386.tar.gz -# NoSource0-md5: 30f20c55a76ba46543df0e80bd21affc -Source1: http://download3.vmware.com/software/vmserver/%{name}-e.x.p-%{subver}.x86_64.tar.gz -# NoSource1-md5: 31dcec2889bcac228f76f0914e89469b -Source2: http://download3.vmware.com/software/vmserver/VMware-vix-e.x.p-%{subver}.i386.tar.gz -# NoSource2-md5: d81db3079785a7454902aed222e611ad -Source3: http://download3.vmware.com/software/vmserver/VMware-vix-e.x.p-%{subver}.x86_64.tar.gz -# NoSource3-md5: bc7bdf81d14887861b4f5413e78fd539 -Source4: http://uruz.org/files/vmware-any-any-update-%{urel}.tgz -# NoSource4-md5: 3a2e2cb8c3d662190198c77c4a656dbb -Source5: %{name}.init -Source6: %{name}-vmnet.conf -Source7: %{name}.png -Source8: %{name}.desktop -Source9: %{name}-nat.conf -Source10: %{name}-dhcpd.conf +# http://www.vmware.com/download/server/ +Source0: http://download2.vmware.com/software/server/%{name}-%{ver}-%{subver}.i386.tar.gz +# NoSource0-md5: 6eb844d1ab4aed6128438e5f587d10bb +Source1: http://download2.vmware.com/software/server/%{name}-%{ver}-%{subver}.x86_64.tar.gz +# NoSource1-md5: cc7aef813008eeb7150c21547d431b39 +Source2: http://download2.vmware.com/software/server/VMware-vix-%{vixver}-%{subver}.i386.tar.gz +# NoSource2-md5: 08daeafe41e2927d80dab143cf21e63c +Source3: http://download2.vmware.com/software/server/VMware-vix-%{vixver}-%{subver}.x86_64.tar.gz +# NoSource3-md5: 95ddea5a0579a35887bd15b083ffea20 +Source4: %{name}.png +Source5: %{name}.desktop +Source6: %{name}-authd.rc-inetd +Source7: %{name}-nat.conf +Source8: %{name}-dhcpd.conf +Source9: %{name}-dhcpd-hostonly.conf +Source10: %{name}-parse-locations.pl Source11: %{name}-libs -Source12: %{name}-authd.rc-inetd -Patch0: %{name}-Makefile.patch -Patch1: %{name}-run_script.patch -Patch2: %{name}-init_pl.patch -Patch3: %{name}-config-rc-inetd.patch -Patch4: %{name}-config-kernel.patch -Patch5: %{name}-initscript.patch +Source12: %{name}-locations +#Patch0: %{name}-config-rc-inetd.patch +Patch1: %{name}-config-kernel.patch +Patch2: %{name}-vmware-config-skip-pam.d-vmware-authd-install.patch +Patch3: %{name}-initscript.patch +Patch4: %{name}-linux-2.6.30.patch +Patch5: %{name}-linux-2.6.31.patch NoSource: 0 NoSource: 1 NoSource: 2 NoSource: 3 -NoSource: 4 URL: http://www.vmware.com/ %{?with_dist_kernel:BuildRequires: kernel%{_alt_kernel}-module-build >= 3:2.6.16} BuildRequires: libstdc++-devel BuildRequires: rpm-perlprov +BuildRequires: rpm-pythonprov BuildRequires: rpmbuild(macros) >= 1.449 BuildRequires: sed >= 4.0 +Requires: %{name}-isoimages = %{version} #Requires: libgnomecanvasmm #Requires: libsexy #Requires: libsexymm @@ -189,8 +177,8 @@ VMware SMB utilities. Narzędzia VMware do SMB. %package -n kernel%{_alt_kernel}-misc-vmci -Summary: Kernel module for VMware Server -Summary(pl.UTF-8): Moduł jądra dla VMware Server +Summary: VMware Virtual Machine Communication Interface (VMCI) +Summary(pl.UTF-8): VMCI (Virtual Machine Communication Interface) - interfejs komunikacyjny VMware Release: %{rel}@%{_kernel_ver_str} Group: Base/Kernel Requires(post,postun): /sbin/depmod @@ -201,14 +189,16 @@ Requires(postun): %releq_kernel %endif %description -n kernel%{_alt_kernel}-misc-vmci -Kernel modules for VMware Server - vmci. +Linux kernel module acting as VMware Virtual Machine Communication +Interface (VMCI). %description -n kernel%{_alt_kernel}-misc-vmci -l pl.UTF-8 -Moduły jądra dla VMware Server - vmci. +Moduł jądra Linuksa będący interfejsem komunikacyjnym VMware (VMCI - +Virtual Machine Communication Interface). %package -n kernel%{_alt_kernel}-misc-vmmon -Summary: Kernel module for VMware Server -Summary(pl.UTF-8): Moduł jądra dla VMware Server +Summary: VMware Virtual Machine Monitor +Summary(pl.UTF-8): Virtual Machine Monitor - monitor maszyny wirtualnej VMware Release: %{rel}@%{_kernel_ver_str} Group: Base/Kernel Requires(post,postun): /sbin/depmod @@ -219,14 +209,15 @@ Requires(postun): %releq_kernel %endif %description -n kernel%{_alt_kernel}-misc-vmmon -Kernel modules for VMware Server - vmmon. +Linux kernel module acting as VMware Virtual Machine Monitor. %description -n kernel%{_alt_kernel}-misc-vmmon -l pl.UTF-8 -Moduły jądra dla VMware Server - vmmon. +Moduł jądra Linuksa będący monitorem maszyny wirtualnej VMware +(Virtual Machine Monitor). %package -n kernel%{_alt_kernel}-misc-vmnet -Summary: Kernel module for VMware Server -Summary(pl.UTF-8): Moduł jądra dla VMware Server +Summary: VMware Virtual Networking Driver +Summary(pl.UTF-8): Virtual Networking Driver - sterownik wirtualnej sieci VMware Release: %{rel}@%{_kernel_ver_str} Group: Base/Kernel Requires(post,postun): /sbin/depmod @@ -237,14 +228,15 @@ Requires(postun): %releq_kernel %endif %description -n kernel%{_alt_kernel}-misc-vmnet -Kernel modules for VMware Server - vmnet. +Linux kernel module acting as VMware Virtual Networking Driver. %description -n kernel%{_alt_kernel}-misc-vmnet -l pl.UTF-8 -Moduły jądra dla VMware Server - vmnet. +Moduł jądra Linuksa będący sterownikiem wirtualnej sieci VMware +(Virtual Networking Driver). %package -n kernel%{_alt_kernel}-misc-vsock -Summary: Kernel module for VMware Server -Summary(pl.UTF-8): Moduł jądra dla VMware Server +Summary: VMware Virtual Socket Family support +Summary(pl.UTF-8): Obsługa Virtual Socket Family - rodziny gniazd wirtualnych VMware Release: %{rel}@%{_kernel_ver_str} Group: Base/Kernel Requires(post,postun): /sbin/depmod @@ -253,14 +245,14 @@ Requires: dev >= 2.9.0-7 %requires_releq_kernel Requires(postun): %releq_kernel %endif -Requires: kernel%{_alt_kernel}-misc-vmci = %{version}-%{rel} +Requires: kernel%{_alt_kernel}-misc-vmci = %{version}-%{rel}@%{_kernel_ver_str} %description -n kernel%{_alt_kernel}-misc-vsock -Kernel modules for VMware Server - vsock. +Linux kernel module supporting VMware Virtual Socket Family. %description -n kernel%{_alt_kernel}-misc-vsock -l pl.UTF-8 -Moduły jądra dla VMware Server - vsock. - +Moduł jądra Linuksa obsługujący rodzinę gniazd wirtualnych VMware +(Virtual Socket Family). %prep %ifarch %{ix86} @@ -270,15 +262,20 @@ Moduły jądra dla VMware Server - vsock. %setup -q -T -n vmware-server-distrib -b1 %{?with_userspace:-a3} %endif +rm -rf lib/isoimages # packaged by %{name}-isoimages.spec + +#%patch0 -p1 +%patch1 -p1 +%patch2 -p1 %patch3 -p1 -#%patch4 -p1 -#%patch5 -p1 cd lib/modules %{__tar} xf source/vmci.tar %{__tar} xf source/vmmon.tar %{__tar} xf source/vmnet.tar %{__tar} xf source/vsock.tar +%patch4 -p1 +%patch5 -p1 mv vmmon-only/linux/driver.c{,.dist} mv vmnet-only/hub.c{,.dist} mv vmnet-only/driver.c{,.dist} @@ -287,51 +284,9 @@ cd - %{__gzip} -d man/man1/vmware.1.gz -%if 0 -tar zxf vmware-mui-distrib/console-distrib/%{name}-console-%{ver}-%{subver}.tar.gz -cp vmware-any-any-update%{urel}/{vmmon,vmnet}.tar lib/modules/source/ -cd lib/modules/source -tar xf vmmon.tar -tar xf vmnet.tar -#%patch0 -p0 -cp -a vmmon-only{,.clean} -cp -a vmnet-only{,.clean} -cd - -%patch1 -p1 -%patch2 -p0 -tar xf lib/perl/control.tar -%endif +find '(' -name '*~' -o -name '*.orig' ')' -print0 | xargs -0 -r -l512 rm -f %build - -%if 0 -cd vmware-any-any-update%{urel} -chmod u+w ../lib/bin/vmware-vmx ../lib/bin-debug/vmware-vmx ../bin/vmnet-bridge -%endif - -%if 0 -rm -f update -%{__cc} %{rpmldflags} %{rpmcflags} -o update update.c -./update vmx ../lib/bin/vmware-vmx -./update vmxdebug ../lib/bin-debug/vmware-vmx -./update bridge ../bin/vmnet-bridge -cd - -%endif - -%if %{with userspace} -%if 0 - cd control-only - perl Makefile.PL - sed -i "s:^INSTALLSITEARCH.*$:INSTALLSITEARCH = %{perl_vendorarch}:" Makefile - sed -i "s:^INSTALLSITELIB.*$:INSTALLSITELIB = %{perl_vendorlib}:" Makefile - sed -i "s:^INSTALLSITEMAN1DIR.*$:INSTALLSITEMAN1DIR = %{_mandir}/man1:" Makefile - sed -i "s:^INSTALLSITEMAN3DIR.*$:INSTALLSITEMAN3DIR = %{_mandir}/man3:" Makefile - - %{__make} - cd .. -%endif -%endif - %if %{with kernel} cd lib/modules @@ -361,62 +316,41 @@ EOF cp -a vmci-only/Module.symvers vsock-only %build_kernel_modules -C vsock-only -m vsock SRCROOT=$PWD VM_KBUILD=26 VM_CCVER=%{ccver} -c - %endif %install rm -rf $RPM_BUILD_ROOT +%if %{with kernel} +%install_kernel_modules -m lib/modules/vmci-only/vmci -d misc +%install_kernel_modules -m lib/modules/vmmon-only/vmmon -d misc +%install_kernel_modules -m lib/modules/vmnet-only/vmnet -d misc +%install_kernel_modules -m lib/modules/vsock-only/vsock -d misc +%endif %if %{with userspace} install -d \ - $RPM_BUILD_ROOT%{_sysconfdir}/vmware{,-server-console} \ - $RPM_BUILD_ROOT%{_sysconfdir}/vmware/vmnet8/{nat,dhcpd} \ + $RPM_BUILD_ROOT%{_sysconfdir}/vmware/vmnet{1,8}/{nat,dhcpd} \ $RPM_BUILD_ROOT%{_sysconfdir}/vmware/state \ $RPM_BUILD_ROOT%{_bindir} \ $RPM_BUILD_ROOT%{_sbindir} \ - $RPM_BUILD_ROOT%{_libdir}/vmware{,-server-console}/bin \ + $RPM_BUILD_ROOT%{_libdir}/vmware/bin \ $RPM_BUILD_ROOT%{_mandir} \ $RPM_BUILD_ROOT%{_pixmapsdir} \ $RPM_BUILD_ROOT%{_desktopdir} \ - $RPM_BUILD_ROOT/etc/rc.d/init.d \ - $RPM_BUILD_ROOT/var/{log,run}/vmware - -%if 0 - cd control-only - %{__make} install \ - DESTDIR=$RPM_BUILD_ROOT - cd .. -%endif - -%if 0 - # copy other required perl modules - cp -a lib/perl5/site_perl/5.005/VMware $RPM_BUILD_ROOT%{perl_vendorarch} - cp -a lib/perl5/site_perl/5.005/i386-linux/VMware/VmdbPerl $RPM_BUILD_ROOT%{perl_vendorarch}/VMware - cp -a lib/perl5/site_perl/5.005/i386-linux/VMware/{HConfig,VmdbPerl}.pm $RPM_BUILD_ROOT%{perl_vendorarch}/VMware - cp -a lib/perl5/site_perl/5.005/i386-linux/auto/VMware/{HConfig,VmdbPerl} $RPM_BUILD_ROOT%{perl_vendorarch}/auto/VMware - - # remove unecessary files - rm -f $RPM_BUILD_ROOT%{perl_vendorarch}/auto/VMware/{HConfig,VmdbPerl,VmPerl}/.{exists,packlist} -%endif -%endif + $RPM_BUILD_ROOT/etc/{pam.d,rc.d/init.d} \ + $RPM_BUILD_ROOT/var/{log,run}/vmware \ + $RPM_BUILD_ROOT/var/lib/vmware/{hostd,"Virtual Machines"} -%if %{with kernel} -%install_kernel_modules -m lib/modules/vmci-only/vmci -d misc -%install_kernel_modules -m lib/modules/vmmon-only/vmmon -d misc -%install_kernel_modules -m lib/modules/vmnet-only/vmnet -d misc -%install_kernel_modules -m lib/modules/vsock-only/vsock -d misc -%endif +install %{SOURCE4} $RPM_BUILD_ROOT%{_pixmapsdir} +install %{SOURCE5} $RPM_BUILD_ROOT%{_desktopdir} +install %{SOURCE7} $RPM_BUILD_ROOT%{_sysconfdir}/vmware/vmnet8/nat/nat.conf +install %{SOURCE8} $RPM_BUILD_ROOT%{_sysconfdir}/vmware/vmnet8/dhcpd/dhcpd.conf +install %{SOURCE9} $RPM_BUILD_ROOT%{_sysconfdir}/vmware/vmnet1/dhcpd/dhcpd.conf +install %{SOURCE10} $RPM_BUILD_ROOT%{_sysconfdir}/vmware/parse-locations.pl +cp -a %{SOURCE12} $RPM_BUILD_ROOT%{_sysconfdir}/vmware/locations -%if %{with userspace} -install %{SOURCE5} $RPM_BUILD_ROOT/etc/rc.d/init.d/vmnet -install %{SOURCE6} $RPM_BUILD_ROOT%{_sysconfdir}/vmware/vmnet.conf -install %{SOURCE7} $RPM_BUILD_ROOT%{_pixmapsdir} -install %{SOURCE8} $RPM_BUILD_ROOT%{_desktopdir} -install %{SOURCE9} $RPM_BUILD_ROOT%{_sysconfdir}/vmware/vmnet8/nat/nat.conf -install %{SOURCE10} $RPM_BUILD_ROOT%{_sysconfdir}/vmware/vmnet8/dhcpd/dhcpd.conf - -touch $RPM_BUILD_ROOT%{_sysconfdir}/vmware/vmnet8/dhcpd/dhcpd.leases -touch $RPM_BUILD_ROOT%{_sysconfdir}/vmware/vmnet8/dhcpd/dhcpd.leases~ +touch $RPM_BUILD_ROOT%{_sysconfdir}/vmware/vmnet{1,8}/dhcpd/dhcpd.leases +touch $RPM_BUILD_ROOT%{_sysconfdir}/vmware/vmnet{1,8}/dhcpd/dhcpd.leases~ install bin/*-* $RPM_BUILD_ROOT%{_bindir} install sbin/*-* $RPM_BUILD_ROOT%{_sbindir} @@ -426,13 +360,13 @@ cp -a lib/hostd $RPM_BUILD_ROOT%{_libdir}/vmware cp -a vmware-vix $RPM_BUILD_ROOT%{_libdir}/vmware cp -a lib/vmacore $RPM_BUILD_ROOT%{_libdir}/vmware cp -a lib/net-services.sh $RPM_BUILD_ROOT%{_libdir}/vmware -cp -a lib/modules $RPM_BUILD_ROOT%{_libdir}/vmware -rm -rf $RPM_BUILD_ROOT%{_libdir}/vmware/modules/*-only cp -a lib/configurator $RPM_BUILD_ROOT%{_libdir}/vmware -cp -a %{SOURCE12} $RPM_BUILD_ROOT%{_libdir}/vmware/configurator/authd-rc-inetd.conf +cp -a %{SOURCE6} $RPM_BUILD_ROOT%{_libdir}/vmware/configurator/authd-rc-inetd.conf +install -d $RPM_BUILD_ROOT/etc/sysconfig/rc-inetd +sed -e 's,%port%,902,;s,%authd%,%{_sbindir}/vmware-authd,' %{SOURCE6} > $RPM_BUILD_ROOT/etc/sysconfig/rc-inetd/vmware-authd cp -a etc/hostd $RPM_BUILD_ROOT/etc/vmware/hostd cp -a etc/installer.sh $RPM_BUILD_ROOT/etc/vmware -cp -a etc/pam.d $RPM_BUILD_ROOT/etc/vmware +cp -a etc/pam.d/vmware-authd $RPM_BUILD_ROOT/etc/pam.d cp -a etc/service $RPM_BUILD_ROOT/etc/vmware install -d $RPM_BUILD_ROOT%{_docdir} @@ -445,75 +379,21 @@ install installer/services.sh $RPM_BUILD_ROOT/etc/rc.d/init.d/vmware ln -s vmware $RPM_BUILD_ROOT/etc/rc.d/init.d/vmware-autostart ln -s vmware $RPM_BUILD_ROOT/etc/rc.d/init.d/vmware-core ln -s vmware $RPM_BUILD_ROOT/etc/rc.d/init.d/vmware-mgmt -cat > $RPM_BUILD_ROOT%{_sysconfdir}/vmware/locations <<'EOF' -file /etc/vmware/locations -directory /etc/vmware/state -answer BINDIR /usr/bin -answer SBINDIR /usr/sbin -answer LIBDIR /usr/lib/vmware -answer DOCDIR /usr/share/doc/vmware -answer MANDIR /usr/share/man -answer INITDIR /etc/rc.d -answer INITSCRIPTSDIR /etc/rc.d/init.d -file /etc/vmware/not_configured 1205422799 -file /etc/rc.d/init.d/vmware 1205422799 -answer INSTALL_CYCLE yes -file /etc/rc.d/init.d/vmware-mgmt -file /etc/rc.d/init.d/vmware-core -file /etc/rc.d/init.d/vmware-autostart -EOF rm $RPM_BUILD_ROOT/usr/bin/vmware-uninstall.pl -rm $RPM_BUILD_ROOT/usr/bin/vmware-vimdump +#rm $RPM_BUILD_ROOT/usr/bin/vmware-vimdump rm $RPM_BUILD_ROOT/usr/share/applications/VMware-server.desktop rm $RPM_BUILD_ROOT/usr/share/pixmaps/VMware-server.png -%if 0 -sed -e ' -s@%sitearch%@%{perl_sitearch}@g; -s@%sitelib%@%{perl_sitelib}@g; -s@%vendorarch%@%{perl_vendorarch}@g; -s@%vendorlib%@%{perl_vendorlib}@g; -s@%archlib%@%{perl_archlib}@g; -s@%privlib%@%{perl_privlib}@g;' < lib/serverd/init.pl.default > $RPM_BUILD_ROOT%{_libdir}/vmware/serverd/init.pl -%endif - -cp -a lib/{config,help,isoimages,licenses,messages,share,xkeymap} \ +cp -a lib/{config,help,licenses,messages,share,xkeymap} \ $RPM_BUILD_ROOT%{_libdir}/vmware -%if 0 -cp -a vmware-server-console-distrib/lib/{bin-debug,config,help*,messages,share,xkeymap} \ - $RPM_BUILD_ROOT%{_libdir}/vmware-server-console - -install vmware-server-console-distrib/lib/bin/vmware-remotemks $RPM_BUILD_ROOT%{_libdir}/vmware-server-console/bin - -cp -a vmware-server-console-distrib/man/* man/* $RPM_BUILD_ROOT%{_mandir} -gunzip $RPM_BUILD_ROOT%{_mandir}/man?/*.gz -%endif - -cat > $RPM_BUILD_ROOT%{_sysconfdir}/vmware-server-console/locations <