]> git.pld-linux.org Git - packages/VirtualBox.git/blame - VirtualBox.spec
- move udev rules to a file
[packages/VirtualBox.git] / VirtualBox.spec
CommitLineData
48363591 1#
2# TODO:
74268e47 3# - Find how to compile with PLD CFLAGS/CXXFLAGS/LDFLAGS.
74268e47 4# - Package SDK.
09c79ddb 5# - Package utils (and write initscripts ?) for Guest OS.
ffb38bb6 6# - Check License of VBoxGuestAdditions_*.iso, it's probably not GPL v2.
5f8b0a92 7# If so check if it is distributable.
48363591 8#
9# Conditional build:
10%bcond_without dist_kernel # without distribution kernel
d1c4ec5b 11%bcond_without kernel # don't build kernel module
d1c4ec5b 12%bcond_without userspace # don't build userspace package
cc9d49be 13%bcond_with force_userspace # force userspace build (useful if alt_kernel is set)
b29bcb41 14%bcond_with verbose
05f1b1f5 15
8833bce1 16%if %{without kernel}
17%undefine with_dist_kernel
18%endif
bd3faca3 19%if "%{_alt_kernel}" != "%{nil}"
20%undefine with_userspace
21%endif
cc9d49be
AG
22%if %{with force_userspace}
23%define with_userspace 1
24%endif
05f9288a
ER
25%if %{without userspace}
26# nothing to be placed to debuginfo package
27%define _enable_debug_packages 0
28%endif
bd3faca3 29
c9d8654a
JR
30%define rel 1
31%define pname VirtualBox
32
93ccc0e8
ER
33Summary: VirtualBox OSE - x86 hardware virtualizer
34Summary(pl.UTF-8): VirtualBox OSE - wirtualizator sprzętu x86
bd3faca3 35Name: %{pname}%{_alt_kernel}
3613936b 36Version: 3.2.6
fe3d1798 37Release: %{rel}
48363591 38License: GPL v2
39Group: Applications/Emulators
0b0842e2 40Source0: http://download.virtualbox.org/virtualbox/%{version}/%{pname}-%{version}-OSE.tar.bz2
3613936b 41# Source0-md5: 65b822ab3c08ff882d9621101996dc14
0b0842e2 42Source1: http://download.virtualbox.org/virtualbox/%{version}/UserManual.pdf
3613936b 43# Source1-md5: 8891557360f816f7604d26aac7503489
0b0842e2 44Source2: http://download.virtualbox.org/virtualbox/%{version}/VBoxGuestAdditions_%{version}.iso
3613936b 45# Source2-md5: 9542cf2fb93e1921a860930ac2a1d0de
67ad4c40 46Source3: %{pname}-vboxdrv.init
dc0a2786 47Source4: %{pname}-vboxguest.init
11848f5b 48Source5: %{pname}-vboxnetflt.init
b06d932c 49Source6: %{pname}-vboxsf.init
c1cd3b9a 50Source7: %{pname}-vboxnetadp.init
11848f5b 51Source8: %{pname}.sh
4f09a416 52Source9: mount.vdi
80ec693d 53Source10: udev.rules
bd3faca3 54Patch0: %{pname}-configure.patch
006342ee 55Patch1: %{pname}-configure-spaces.patch
67a4f3c1 56Patch2: %{pname}-export_modules.patch
8473a80d 57Patch3: %{pname}-VBoxSysInfo.patch
3613936b 58Patch4: %{pname}-warning_workaround.patch
48363591 59URL: http://www.virtualbox.org/
d0471f70 60BuildRequires: rpmbuild(macros) >= 1.535
83ffcfa8 61%if %{with userspace}
ce9843cd
ER
62%ifarch %{x8664}
63BuildRequires: gcc-multilib
64BuildRequires: glibc-devel(i686)
65BuildRequires: libstdc++-multilib-devel
4fff279a 66BuildRequires: libstdc++-multilib-static
ce9843cd 67%endif
ce9843cd
ER
68%if "%{pld_release}" == "ac"
69BuildRequires: XFree86-devel
70%else
71BuildRequires: xorg-lib-libXcursor-devel
72BuildRequires: xorg-lib-libXmu-devel
73%endif
00149140 74BuildRequires: OpenGL-GLU-devel
523e7409 75BuildRequires: OpenGL-devel
cef75615 76BuildRequires: QtGui-devel
2d17bb72 77BuildRequires: QtNetwork-devel
dd64a424 78BuildRequires: QtOpenGL-devel
c574efad 79BuildRequires: SDL-devel >= 1.2.7
9a1cb119 80BuildRequires: acpica
ba702945 81BuildRequires: alsa-lib-devel >= 1.0.6
e5aaadde 82BuildRequires: bash
48363591 83BuildRequires: bcc
84BuildRequires: bin86
07ef7f06 85BuildRequires: curl-devel
eba4b2aa 86BuildRequires: gcc >= 5:3.2.3
48363591 87BuildRequires: libIDL-devel
fa974331 88BuildRequires: libcap-static
ff01a704 89BuildRequires: libpng-devel >= 1.2.5
d22f0a53 90BuildRequires: libstdc++-devel >= 5:3.2.3
4fff279a 91BuildRequires: libstdc++-static >= 5:3.2.3
48363591 92BuildRequires: libuuid-devel
ba702945 93BuildRequires: libxml2-devel >= 2.6.26
76ea5ecb 94BuildRequires: libxslt-devel >= 1.1.17
ba702945 95BuildRequires: libxslt-progs >= 1.1.17
3613936b 96BuildRequires: pam-devel
0bf43862 97BuildRequires: pkgconfig
ba702945 98BuildRequires: pulseaudio-devel >= 0.9.0
523e7409 99BuildRequires: python-devel
6055e733 100BuildRequires: python-modules
250583d4 101BuildRequires: qt4-build >= 4.2.0
2700662b 102BuildRequires: qt4-linguist
1e840a77 103BuildRequires: sed >= 4.0
0bf43862 104BuildRequires: which
e5aaadde 105BuildRequires: xalan-c-devel >= 1.10.0
e5aaadde 106BuildRequires: xerces-c-devel >= 2.6.0
107BuildRequires: zlib-devel >= 1.2.1
23d9d34e 108%endif
ce9843cd
ER
109%if %{with dist_kernel}
110BuildRequires: kernel%{_alt_kernel}-module-build >= 3:2.6.20
83ffcfa8 111%endif
0afa64ad 112Requires(post,preun): /sbin/chkconfig
5f1cec1f
ER
113Requires(postun): /usr/sbin/groupdel
114Requires(pre): /usr/bin/getgid
115Requires(pre): /usr/sbin/groupadd
8aaa5dec 116Requires: QtCore >= 4.6.1
fb661e50 117Suggests: gxmessage
5f1cec1f 118Provides: group(vbox)
eba4b2aa 119ExclusiveArch: %{ix86} %{x8664}
48363591 120BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
121
eba4b2aa 122%ifarch %{x8664}
dd3487fc 123%define vbox_platform linux.amd64
5088674d 124%else
dd3487fc 125%define vbox_platform linux.x86
5088674d 126%endif
27a1aef6 127%define outdir out/%{vbox_platform}/release/bin
fa974331 128%define _sbindir /sbin
5088674d 129
48363591 130%description
3613936b 131Oracle VirtualBox OSE is a general-purpose full virtualizer for x86
48363591 132hardware. Targeted at server, desktop and embedded use, it is now the
133only professional-quality virtualization solution that is also Open
134Source Software.
135
93ccc0e8 136Some of the features of VirtualBox OSE are:
48363591 137
93ccc0e8 138Modularity: VirtualBox OSE has an extremely modular design with
48363591 139well-defined internal programming interfaces and a client/server
140design. This makes it easy to control it from several interfaces at
141once: for example, you can start a virtual machine in a typical
142virtual machine GUI and then control that machine from the command
2df47f85 143line. VirtualBox OSE also comes with a full Software Development Kit:
144even though it is Open Source Software, you don't have to hack the
145source to write a new interface for VirtualBox OSE.
48363591 146
147Virtual machine descriptions in XML: the configuration settings of
148virtual machines are stored entirely in XML and are independent of the
149local machines. Virtual machine definitions can therefore easily be
150ported to other computers.
151
1067d08d
ER
152You should install this package in your Host OS.
153
fd8fc899 154%description -l pl.UTF-8
3613936b 155Oracle VirtualBox OSE jest emulatorem sprzętu x86. Kierowany do
fd8fc899
JR
156zastosowań serwerowych, desktopowych oraz wbudowanych jest obecnie
157jedynym wysokiej jakości rozwiązaniem wirtualizacyjnym dostępnym
158również jako Otwarte Oprogramowanie.
48363591 159
fd8fc899 160Przykładowe cechy VirtualBoksa:
48363591 161
93ccc0e8 162Modularność: VirtualBox OSE jest wysoce zmodularyzowanym produktem z
fd8fc899
JR
163dobrze zaprojektowanym wewnętrznym interfejsem programowym typu
164klient/serwer. Dzięki temu można łatwo kontrolować go za pomocą
165różnych interfejsów. Można na przykład uruchomić maszynę wirtualną z
166poziomu interfejsu graficznego, a później kontrolować ją z linii
2df47f85 167poleceń. VirtualBox OSE dostarcza również pełny pakiet deweloperski,
168co pozwala stworzyć dowolny inny interfejs zarządzania maszyną
169wirtualną.
48363591 170
fd8fc899
JR
171Opisy maszyn wirtualnych w XML-u: konfiguracje poszczególnych maszyn
172wirtualnych są w całości przechowywane w XML-u i są niezależne od
173lokalnej maszyny. Dzięki temu można szybko i łatwo przenieść
174konfigurację maszyny wirtualnej na inny komputer.
48363591 175
abb636b9 176%package udev
93ccc0e8 177Summary: udev rules for VirtualBox OSE kernel modules
da083e45 178Summary(pl.UTF-8): Reguły udev dla modułów jądra Linuksa dla VirtualBoksa
8512deca 179Release: %{rel}
abb636b9 180Group: Base/Kernel
93bf3da1 181Requires: udev-core
abb636b9 182
183%description udev
2df47f85 184udev rules for VirtualBox OSE kernel modules.
abb636b9 185
1067d08d
ER
186You should install this package in your Host OS.
187
abb636b9 188%description udev -l pl.UTF-8
2df47f85 189Reguły udev dla modułów jądra Linuksa dla VirtualBoksa.
abb636b9 190
ffb38bb6
ER
191%package additions
192Summary: VirtualBox Guest Additions
193Group: Base
194Requires: %{name} = %{version}-%{release}
195
00a4a7ca 196%description additions
ffb38bb6
ER
197VirtualBox Guest Additions.
198
199This package contains ISO9660 image with drivers for Guest OS.
200
1067d08d
ER
201You should install this package in your Host OS.
202
203%package guest
204Summary: VirtualBox Guest Additions
205Group: Base
206Requires: kernel%{_alt_kernel}-misc-vboxsf = %{version}-%{release}
207Requires: kernel%{_alt_kernel}-misc-vboxvideo = %{version}-%{release}
208Requires: xorg-driver-input-vboxmouse = %{version}-%{release}
209Requires: xorg-driver-video-vboxvideo = %{version}-%{release}
210
211%description guest
212Tools that utilize kernel modules for supporting integration with the
213Host, including file sharing and tracking of mouse pointer movement
214and X.org X11 video and mouse driver.
215
216You should install this package in your Guest OS.
217
3613936b
JR
218%package -n pam-pam_vbox
219Summary: PAM module to perform automated guest logons
220Group: Base
221
222%description -n pam-pam_vbox
3ee6b9d9
ER
223PAM module (Pluggable Authentication Module) which can be used to
224perform automated guest logons.
3613936b 225
fbea1005
ER
226%package -n xorg-driver-input-vboxmouse
227Summary: X.org mouse driver for VirtualBox OSE guest OS
228Summary(pl.UTF-8): Sterownik myszy dla systemu gościa w VirtualBoksie OSE
229Group: X11/Applications
230Requires: xorg-xserver-server >= 1.0.99.901
231%if "%{pld_release}" == "ti"
232Requires: xorg-xserver-server(xinput-abi) <= 7.0
233%else
234Requires: xorg-xserver-server(xinput-abi) <= 9.0
235%endif
236Requires: xorg-xserver-server(xinput-abi) >= 4.0
237
238%description -n xorg-driver-input-vboxmouse
239X.org mouse driver for VirtualBox OSE guest OS.
240
241%description -n xorg-driver-input-vboxmouse -l pl.UTF-8
242Sterownik myszy dla systemu gościa w VirtualBoksie.
243
244%package -n xorg-driver-video-vboxvideo
245Summary: X.org video driver for VirtualBox OSE guest OS
246Summary(pl.UTF-8): Sterownik grafiki dla systemu gościa w VirtualBoksie OSE
247Group: X11/Applications
248Requires: xorg-xserver-libdri >= 1.7.4
249Requires: xorg-xserver-server >= 1.0.99.901
250%if "%{pld_release}" == "ti"
251Requires: xorg-xserver-server(videodrv-abi) <= 6.0
252%else
253Requires: xorg-xserver-server(videodrv-abi) <= 7.0
254%endif
255Requires: xorg-xserver-server(videodrv-abi) >= 2.0
256
257%description -n xorg-driver-video-vboxvideo
258X.org video driver for VirtualBox OSE guest OS.
259
260%description -n xorg-driver-video-vboxvideo -l pl.UTF-8
261Sterownik grafiki dla systemu gościa w VirtualBoksie OSE.
262
dc0a2786 263%package -n kernel%{_alt_kernel}-misc-vboxguest
b0444796 264Summary: VirtualBox OSE Guest Additions for Linux Module
ea074a55 265Summary(pl.UTF-8): Moduł jądra Linuksa dla VirtualBoksa OSE
fe3d1798 266Release: %{rel}@%{_kernel_ver_str}
74268e47 267Group: Base/Kernel
268Requires(post,postun): /sbin/depmod
269Requires: dev >= 2.9.0-7
270%if %{with dist_kernel}
271%requires_releq_kernel
ca8701ad 272Requires(postun): %releq_kernel
74268e47 273%endif
dc0a2786
AG
274Provides: kernel(vboxguest) = %{version}-%{rel}
275Obsoletes: kernel%{_alt_kernel}-misc-vboxadd
f7de19b3 276Conflicts: kernel%{_alt_kernel}-misc-vboxdrv
74268e47 277
dc0a2786 278%description -n kernel%{_alt_kernel}-misc-vboxguest
b0444796 279VirtualBox OSE Guest Additions for Linux Module.
74268e47 280
dc0a2786 281%description -n kernel%{_alt_kernel}-misc-vboxguest -l pl.UTF-8
9dda6415
ER
282Moduł jądra Linuksa vboxguest dla VirtualBoksa OSE - dodatki dla
283systemu gościa.
74268e47 284
48363591 285%package -n kernel%{_alt_kernel}-misc-vboxdrv
b0444796 286Summary: VirtualBox OSE Support Driver
ea074a55 287Summary(pl.UTF-8): Moduł jądra Linuksa dla VirtualBoksa OSE
fe3d1798 288Release: %{rel}@%{_kernel_ver_str}
48363591 289Group: Base/Kernel
290Requires(post,postun): /sbin/depmod
291Requires: dev >= 2.9.0-7
292%if %{with dist_kernel}
d6f0c54e 293%requires_releq_kernel
294Requires(postun): %releq_kernel
48363591 295%endif
fe3d1798 296Provides: kernel(vboxdrv) = %{version}-%{rel}
48363591 297
298%description -n kernel%{_alt_kernel}-misc-vboxdrv
b0444796 299VirtualBox OSE Support Driver.
48363591 300
fd8fc899 301%description -n kernel%{_alt_kernel}-misc-vboxdrv -l pl.UTF-8
ea074a55 302Moduł jądra Linuksa dla VirtualBoksa OSE - sterownik wsparcia dla
303systemu głównego.
48363591 304
d2a7514f 305%package -n kernel%{_alt_kernel}-misc-vboxnetadp
9dda6415 306Summary: VirtualBox OSE Network Adapter Driver
d2a7514f
ŁK
307Summary(pl.UTF-8): Moduł jądra Linuksa dla VirtualBoksa OSE
308Release: %{rel}@%{_kernel_ver_str}
309Group: Base/Kernel
310Requires(post,postun): /sbin/depmod
311Requires: dev >= 2.9.0-7
312Requires: kernel%{_alt_kernel}-misc-vboxdrv
313%if %{with dist_kernel}
314%requires_releq_kernel
315Requires(postun): %releq_kernel
316%endif
317Provides: kernel(vboxnetflt) = %{version}-%{rel}
318
319%description -n kernel%{_alt_kernel}-misc-vboxnetadp
320VirtualBox OSE Network Adapter Driver.
321
322%description -n kernel%{_alt_kernel}-misc-vboxnetadp -l pl.UTF-8
9dda6415
ER
323Moduł jądra Linuksa dla VirtualBoksa OSE - sterownik witrualnej karty
324sieciowej.
d2a7514f 325
1dda2f69 326%package -n kernel%{_alt_kernel}-misc-vboxnetflt
9dda6415 327Summary: VirtualBox OSE Network Filter Driver
ea074a55 328Summary(pl.UTF-8): Moduł jądra Linuksa dla VirtualBoksa OSE
1dda2f69 329Release: %{rel}@%{_kernel_ver_str}
330Group: Base/Kernel
331Requires(post,postun): /sbin/depmod
332Requires: dev >= 2.9.0-7
333Requires: kernel%{_alt_kernel}-misc-vboxdrv
334%if %{with dist_kernel}
335%requires_releq_kernel
336Requires(postun): %releq_kernel
337%endif
338Provides: kernel(vboxnetflt) = %{version}-%{rel}
339
340%description -n kernel%{_alt_kernel}-misc-vboxnetflt
ea074a55 341VirtualBox OSE Network Filter Driver.
1dda2f69 342
343%description -n kernel%{_alt_kernel}-misc-vboxnetflt -l pl.UTF-8
4f09a416
ER
344Moduł jądra Linuksa dla VirtualBoksa OSE - sterownik filtrowania sieci
345dla systemu głównego.
1dda2f69 346
ecfe25a3
PS
347%package -n kernel%{_alt_kernel}-misc-vboxsf
348Summary: Host file system access (Shared Folders) for VirtualBox OSE
ea074a55 349Summary(pl.UTF-8): Moduł jądra Linuksa dla VirtualBoksa OSE
fe3d1798 350Release: %{rel}@%{_kernel_ver_str}
74268e47 351Group: Base/Kernel
352Requires(post,postun): /sbin/depmod
353Requires: dev >= 2.9.0-7
dc0a2786 354Requires: kernel%{_alt_kernel}-misc-vboxguest
74268e47 355%if %{with dist_kernel}
356%requires_releq_kernel
357Requires(postun): %releq_kernel
358%endif
ecfe25a3
PS
359Provides: kernel(vboxsf) = %{version}-%{rel}
360Obsoletes: kernel%{_alt_kernel}-misc-vboxvfs
74268e47 361
ecfe25a3
PS
362%description -n kernel%{_alt_kernel}-misc-vboxsf
363Host file system access (Shared Folders) for VirtualBox OSE.
74268e47 364
ecfe25a3 365%description -n kernel%{_alt_kernel}-misc-vboxsf -l pl.UTF-8
4f09a416
ER
366Moduł jądra Linuksa dla VirtualBoksa OSE - dostęp do plików systemu
367głównego z poziomu systemu gościa.
74268e47 368
67a4f3c1 369%package -n kernel%{_alt_kernel}-misc-vboxvideo
370Summary: DRM support for VirtualBox OSE
371Summary(pl.UTF-8): Moduł jądra Linuksa dla VirtualBoksa OSE
372Release: %{rel}@%{_kernel_ver_str}
373Group: Base/Kernel
374Requires(post,postun): /sbin/depmod
375Requires: dev >= 2.9.0-7
376%if %{with dist_kernel}
377%requires_releq_kernel
d0471f70 378%if "%{rpm_build_macros}" >= "1.531"
d14fba96 379%requires_releq_kernel -n drm
d0471f70 380%endif
67a4f3c1 381Requires(postun): %releq_kernel
382%endif
383Provides: kernel(vboxvideo) = %{version}-%{rel}
384
385%description -n kernel%{_alt_kernel}-misc-vboxvideo
386DRM support for VirtualBox OSE.
387
388%description -n kernel%{_alt_kernel}-misc-vboxvideo -l pl.UTF-8
389Moduł jądra Linuksa dla VirtualBoksa OSE - sterownik obsługi DRM.
390
48363591 391%prep
506ebac4 392%setup -q -n %{pname}-%{version}_OSE
e709ce6b 393%patch0 -p1
006342ee
AM
394%patch1 -p1
395%patch2 -p1
8473a80d 396%patch3 -p1
dced50c1 397%patch4 -p1
fddcb741 398
0b6de2b7
ER
399%{__sed} -i -e 's,$VBOX_DOC_PATH,%{_docdir}/%{name}-%{version},' src/VBox/Installer/linux/virtualbox.desktop
400%{__sed} -i -e 's/Categories=.*/Categories=Utility;Emulator;/' src/VBox/Installer/linux/virtualbox.desktop
401
0b6de2b7 402cp -a %{SOURCE1} .
11848f5b 403sed 's#@LIBDIR@#%{_libdir}#' < %{SOURCE8} > VirtualBox-wrapper.sh
fa19f650 404
83ffcfa8 405rm -rf PLD-MODULE-BUILD && mkdir PLD-MODULE-BUILD && cd PLD-MODULE-BUILD
406../src/VBox/Additions/linux/export_modules modules.tar.gz
407 tar -zxf modules.tar.gz && rm -f modules.tar.gz
f2dd3ab3 408../src/VBox/HostDrivers/linux/export_modules modules.tar.gz --without-hardening && \
83ffcfa8 409 tar -zxf modules.tar.gz && rm -f modules.tar.gz
05f1b1f5 410
fddcb741 411%build
83ffcfa8 412%if %{with userspace}
106d8451 413./configure \
ae1bbc88 414 --with-gcc="%{__cc}" \
415 --with-g++="%{__cxx}" \
5a497466 416 --disable-hardening \
655754f2 417 --disable-kmods
48363591 418
0864aefd 419. ./env.sh && \
006342ee 420kmk -j1 %{?with_verbose:KBUILD_VERBOSE=3} USER=$(id -un)
48363591 421%endif
74268e47 422
423%if %{with kernel}
83ffcfa8 424cd PLD-MODULE-BUILD
dc0a2786 425%build_kernel_modules -m vboxguest -C vboxguest
3613936b
JR
426%build_kernel_modules -m vboxdrv -C .vbox_modules/vboxdrv
427%build_kernel_modules -m vboxnetadp -C .vbox_modules/vboxnetadp
428%build_kernel_modules -m vboxnetflt -C .vbox_modules/vboxnetflt
ecfe25a3
PS
429cp -a vboxguest/Module.symvers vboxsf
430%build_kernel_modules -m vboxsf -C vboxsf -c
67a4f3c1 431%build_kernel_modules -m vboxvideo -C vboxvideo_drm
74268e47 432cd ..
50863744 433%{__cc} %{rpmcflags} %{rpmldflags} -Wall -Werror src/VBox/Additions/linux/sharedfolders/mount.vboxsf.c -o mount.vboxsf
d1c4ec5b 434%endif
48363591 435
436%install
437rm -rf $RPM_BUILD_ROOT
438
d1c4ec5b 439%if %{with userspace}
48363591 440install -d \
dca6c443
ER
441 $RPM_BUILD_ROOT{%{_bindir},%{_sbindir},%{_libdir},%{_pixmapsdir},%{_desktopdir}} \
442 $RPM_BUILD_ROOT%{_libdir}/xorg/modules/{drivers,dri,input}
a70507fb 443
dca6c443
ER
444# test if we can hardlink -- %{_builddir} and $RPM_BUILD_ROOT on same partition
445if cp -al VBox.png $RPM_BUILD_ROOT/Vbox.png 2>/dev/null; then
446 l=l
447 rm -f $RPM_BUILD_ROOT/VBox.png
448fi
449
450cp -a$l %{outdir} $RPM_BUILD_ROOT%{_libdir}/%{pname}
451
452cp -a %{SOURCE2} $RPM_BUILD_ROOT%{_libdir}/VirtualBox/additions/VBoxGuestAdditions.iso
50863744 453install -p %{SOURCE9} $RPM_BUILD_ROOT%{_sbindir}/mount.vdi
dca6c443 454install -p VirtualBox-wrapper.sh $RPM_BUILD_ROOT%{_libdir}/%{pname}
5b399826 455for f in {VBox{BFE,Headless,Manage,SDL,SVC,Tunctl,XPCOMIPCD},VirtualBox}; do
dca6c443 456 ln -s %{_libdir}/%{pname}/VirtualBox-wrapper.sh $RPM_BUILD_ROOT%{_bindir}/$f
05f1b1f5 457done
458
dca6c443 459mv $RPM_BUILD_ROOT{%{_libdir}/%{pname},%{_pixmapsdir}}/VBox.png
7bb1ab10 460mv $RPM_BUILD_ROOT{%{_libdir}/%{pname},%{_desktopdir}}/virtualbox.desktop
48363591 461
55f3f0a2 462%if "%{pld_release}" == "ti"
463mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions/vboxmouse_drv_17.so,%{_libdir}/xorg/modules/input/vboxmouse_drv.so}
464mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions/vboxvideo_drv_17.so,%{_libdir}/xorg/modules/drivers/vboxvideo_drv.so}
465%else
d0471f70
ER
466mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions/vboxmouse_drv_18.so,%{_libdir}/xorg/modules/input/vboxmouse_drv.so}
467mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions/vboxvideo_drv_18.so,%{_libdir}/xorg/modules/drivers/vboxvideo_drv.so}
55f3f0a2 468%endif
dca6c443
ER
469mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions/VBoxOGL.so,%{_libdir}/xorg/modules/dri/vboxvideo_dri.so}
470# xorg other driver versions
d0471f70
ER
471rm -vf $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/vboxmouse_drv*.{o,so}
472rm -vf $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/vboxvideo_drv*.{o,so}
916ab34d 473
27a1aef6 474# XXX: where else to install them that vboxvideo_dri.so finds them? patch with rpath?
1067d08d 475mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLarrayspu.so
dca6c443 476mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLcrutil.so
dca6c443
ER
477mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLerrorspu.so
478mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLfeedbackspu.so
1067d08d 479mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLpackspu.so
dca6c443 480mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLpassthroughspu.so
d1c4ec5b 481
33233365 482install -d $RPM_BUILD_ROOT/etc/udev/rules.d
80ec693d 483cp -a %{SOURCE10} $RPM_BUILD_ROOT/etc/udev/rules.d/virtualbox.rules
dca6c443 484
3613936b
JR
485install -d $RPM_BUILD_ROOT/%{_lib}/security
486mv $RPM_BUILD_ROOT{%{_libdir}/VirtualBox/additions,/%{_lib}/security}/pam_vbox.so
487
dca6c443
ER
488# cleanup unpackaged
489rm -r $RPM_BUILD_ROOT%{_libdir}/%{pname}/{src,sdk,testcase}
490rm -r $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/src
3613936b 491rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/vboxkeyboard.tar.bz2
dca6c443
ER
492rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/tst*
493
1067d08d
ER
494# IPRT Testcase / Tool - Source Code Massager.
495rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/scm
496
497# Guest Only Tools
498mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_bindir}}/VBoxService
499
dca6c443 500# unknown - checkme
1067d08d 501%if 1
dca6c443
ER
502rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/SUPInstall
503rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/SUPLoggerCtl
504rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/SUPUninstall
505rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/VBox.sh
dca6c443
ER
506rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/VBoxClient
507rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/VBoxControl
dca6c443
ER
508rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/vboxshell.py
509rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/xpidl
1067d08d 510%endif
dca6c443
ER
511
512# packaged by kernel part
513rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/mount.vboxsf
da083e45 514%endif
33233365 515
da083e45 516%if %{with kernel}
50863744 517install -d $RPM_BUILD_ROOT{/etc/{rc.d/init.d,modprobe.d},%{_sbindir}}
70ce4861 518install -p %{SOURCE3} $RPM_BUILD_ROOT/etc/rc.d/init.d/vboxdrv
dc0a2786 519install -p %{SOURCE4} $RPM_BUILD_ROOT/etc/rc.d/init.d/vboxguest
70ce4861 520install -p %{SOURCE5} $RPM_BUILD_ROOT/etc/rc.d/init.d/vboxnetflt
b06d932c 521install -p %{SOURCE6} $RPM_BUILD_ROOT/etc/rc.d/init.d/vboxsf
c1cd3b9a 522install -p %{SOURCE7} $RPM_BUILD_ROOT/etc/rc.d/init.d/vboxnetadp
3613936b 523%install_kernel_modules -m PLD-MODULE-BUILD/.vbox_modules/vboxdrv/vboxdrv -d misc
dc0a2786 524%install_kernel_modules -m PLD-MODULE-BUILD/vboxguest/vboxguest -d misc
3613936b
JR
525%install_kernel_modules -m PLD-MODULE-BUILD/.vbox_modules/vboxnetadp/vboxnetadp -d misc
526%install_kernel_modules -m PLD-MODULE-BUILD/.vbox_modules/vboxnetflt/vboxnetflt -d misc
ecfe25a3 527%install_kernel_modules -m PLD-MODULE-BUILD/vboxsf/vboxsf -d misc
67a4f3c1 528%install_kernel_modules -m PLD-MODULE-BUILD/vboxvideo_drm/vboxvideo -d misc
fa974331 529
50863744
ER
530install -p mount.vboxsf $RPM_BUILD_ROOT%{_sbindir}/mount.vboxsf
531
d1c4ec5b 532%endif
05f1b1f5 533
48363591 534%clean
535rm -rf $RPM_BUILD_ROOT
536
3b63d3e8 537%pre
538%groupadd -g 221 -r -f vbox
539
14561782 540%post
d8ed80f4 541cat << 'EOF'
3ee6b9d9 542You must install vboxdrv kernel module for this software to work:
7841ddfd
ER
543 kernel-misc-vboxdrv-%{version}-%{rel}@%{_kernel_ver_str}
544
545Additionally you might want to install:
d2a7514f 546 kernel-misc-vboxnetadp-%{version}-%{rel}@%{_kernel_ver_str}
05f12a30
ER
547 kernel-misc-vboxnetflt-%{version}-%{rel}@%{_kernel_ver_str}
548
fa974331 549On Guest Linux system you might want to install:
dc0a2786 550 kernel-misc-vboxguest-%{version}-%{rel}@%{_kernel_ver_str}
ecfe25a3 551 kernel-misc-vboxsf-%{version}-%{rel}@%{_kernel_ver_str}
67a4f3c1 552 kernel-misc-vboxvideo-%{version}-%{rel}@%{_kernel_ver_str}
7841ddfd 553
d8ed80f4 554EOF
555
3b63d3e8 556%postun
557if [ "$1" = "0" ]; then
558 %groupremove vbox
559fi
560
dc0a2786 561%post -n kernel%{_alt_kernel}-misc-vboxguest
74268e47 562%depmod %{_kernel_ver}
dc0a2786
AG
563/sbin/chkconfig --add vboxguest
564%service vboxguest restart "VirtualBox OSE Guest additions driver"
74268e47 565
dc0a2786 566%postun -n kernel%{_alt_kernel}-misc-vboxguest
74268e47 567%depmod %{_kernel_ver}
568
dc0a2786 569%preun -n kernel%{_alt_kernel}-misc-vboxguest
270f67bc 570if [ "$1" = "0" ]; then
dc0a2786
AG
571 %service vboxguest stop
572 /sbin/chkconfig --del vboxguest
270f67bc 573fi
574
48363591 575%post -n kernel%{_alt_kernel}-misc-vboxdrv
576%depmod %{_kernel_ver}
270f67bc 577/sbin/chkconfig --add vboxdrv
ffb38bb6 578%service vboxdrv restart "VirtualBox OSE Support Driver"
48363591 579
580%postun -n kernel%{_alt_kernel}-misc-vboxdrv
581%depmod %{_kernel_ver}
582
270f67bc 583%preun -n kernel%{_alt_kernel}-misc-vboxdrv
584if [ "$1" = "0" ]; then
585 %service vboxdrv stop
586 /sbin/chkconfig --del vboxdrv
587fi
588
d2a7514f
ŁK
589%post -n kernel%{_alt_kernel}-misc-vboxnetadp
590%depmod %{_kernel_ver}
c1cd3b9a 591/sbin/chkconfig --add vboxnetadp
592%service vboxnetadp restart "VirtualBox OSE Network HostOnly driver"
d2a7514f
ŁK
593
594%postun -n kernel%{_alt_kernel}-misc-vboxnetadp
595%depmod %{_kernel_ver}
596
c1cd3b9a 597%preun -n kernel%{_alt_kernel}-misc-vboxnetadp
598if [ "$1" = "0" ]; then
599 %service vboxnetadp stop
600 /sbin/chkconfig --del vboxnetadp
601fi
602
1dda2f69 603%post -n kernel%{_alt_kernel}-misc-vboxnetflt
604%depmod %{_kernel_ver}
11848f5b 605/sbin/chkconfig --add vboxnetflt
fd488e66 606%service vboxnetflt restart "VirtualBox OSE Network Filter driver"
1dda2f69 607
608%postun -n kernel%{_alt_kernel}-misc-vboxnetflt
609%depmod %{_kernel_ver}
610
11848f5b 611%preun -n kernel%{_alt_kernel}-misc-vboxnetflt
612if [ "$1" = "0" ]; then
613 %service vboxnetflt stop
614 /sbin/chkconfig --del vboxnetflt
615fi
616
ecfe25a3 617%post -n kernel%{_alt_kernel}-misc-vboxsf
74268e47 618%depmod %{_kernel_ver}
ecfe25a3
PS
619/sbin/chkconfig --add vboxsf
620%service vboxsf restart "VirtualBox OSE Host file system access (Shared Folders)"
74268e47 621
ecfe25a3 622%postun -n kernel%{_alt_kernel}-misc-vboxsf
74268e47 623%depmod %{_kernel_ver}
624
ecfe25a3 625%preun -n kernel%{_alt_kernel}-misc-vboxsf
ca8701ad 626if [ "$1" = "0" ]; then
ecfe25a3
PS
627 %service vboxsf stop
628 /sbin/chkconfig --del vboxsf
ca8701ad 629fi
630
67a4f3c1 631%post -n kernel%{_alt_kernel}-misc-vboxvideo
632%depmod %{_kernel_ver}
633
634%postun -n kernel%{_alt_kernel}-misc-vboxvideo
635%depmod %{_kernel_ver}
636
d1c4ec5b 637%if %{with userspace}
48363591 638%files
639%defattr(644,root,root,755)
7d1c0a63 640%doc UserManual.pdf
8833bce1 641%dir %{_libdir}/VirtualBox
916ab34d 642%dir %{_libdir}/VirtualBox/additions
8833bce1 643%dir %{_libdir}/VirtualBox/components
644%dir %{_libdir}/VirtualBox/nls
85b005e2 645%attr(755,root,root) %{_bindir}/VBoxBFE
646%attr(755,root,root) %{_bindir}/VBoxHeadless
647%attr(755,root,root) %{_bindir}/VBoxManage
648%attr(755,root,root) %{_bindir}/VBoxSDL
649%attr(755,root,root) %{_bindir}/VBoxSVC
650%attr(755,root,root) %{_bindir}/VBoxTunctl
651%attr(755,root,root) %{_bindir}/VBoxXPCOMIPCD
48363591 652%attr(755,root,root) %{_bindir}/VirtualBox
3ee6b9d9 653%attr(755,root,root) %{_sbindir}/mount.vdi
05f1b1f5 654%attr(755,root,root) %{_libdir}/VirtualBox/VBoxSVC
655%attr(755,root,root) %{_libdir}/VirtualBox/VBoxBFE
8bb99fd5 656%attr(755,root,root) %{_libdir}/VirtualBox/VBoxHeadless
05f1b1f5 657%attr(755,root,root) %{_libdir}/VirtualBox/VBoxManage
658%attr(755,root,root) %{_libdir}/VirtualBox/VBoxSDL
5b399826 659%attr(755,root,root) %{_libdir}/VirtualBox/VBoxTestOGL
8bb99fd5 660%attr(755,root,root) %{_libdir}/VirtualBox/VBoxTunctl
05f1b1f5 661%attr(755,root,root) %{_libdir}/VirtualBox/VBoxXPCOMIPCD
85b005e2 662%attr(755,root,root) %{_libdir}/VirtualBox/VBoxDD.so
663%attr(755,root,root) %{_libdir}/VirtualBox/VBoxDD2.so
664%attr(755,root,root) %{_libdir}/VirtualBox/VBoxDDU.so
3613936b 665%attr(755,root,root) %{_libdir}/VirtualBox/VBoxGuestControlSvc.so
85b005e2 666%attr(755,root,root) %{_libdir}/VirtualBox/VBoxGuestPropSvc.so
667%attr(755,root,root) %{_libdir}/VirtualBox/VBoxKeyboard.so
5b399826
MM
668%attr(755,root,root) %{_libdir}/VirtualBox/VBoxNetAdpCtl
669%attr(755,root,root) %{_libdir}/VirtualBox/VBoxNetDHCP
85b005e2 670%attr(755,root,root) %{_libdir}/VirtualBox/VBoxOGLhostcrutil.so
671%attr(755,root,root) %{_libdir}/VirtualBox/VBoxOGLhosterrorspu.so
672%attr(755,root,root) %{_libdir}/VirtualBox/VBoxOGLrenderspu.so
6935b837 673%attr(755,root,root) %{_libdir}/VirtualBox/VBoxPython*.so
85b005e2 674%attr(755,root,root) %{_libdir}/VirtualBox/VBoxREM.so
f701b529 675%ifarch %{ix86}
5b399826
MM
676%attr(755,root,root) %{_libdir}/VirtualBox/VBoxREM32.so
677%attr(755,root,root) %{_libdir}/VirtualBox/VBoxREM64.so
f701b529 678%endif
85b005e2 679%attr(755,root,root) %{_libdir}/VirtualBox/VBoxRT.so
85b005e2 680%attr(755,root,root) %{_libdir}/VirtualBox/VBoxSharedClipboard.so
681%attr(755,root,root) %{_libdir}/VirtualBox/VBoxSharedCrOpenGL.so
682%attr(755,root,root) %{_libdir}/VirtualBox/VBoxSharedFolders.so
683%attr(755,root,root) %{_libdir}/VirtualBox/VBoxVMM.so
684%attr(755,root,root) %{_libdir}/VirtualBox/VBoxXPCOM.so
685%attr(755,root,root) %{_libdir}/VirtualBox/VBoxXPCOMC.so
fdd1c725 686%attr(755,root,root) %{_libdir}/VirtualBox/VirtualBox
687%attr(755,root,root) %{_libdir}/VirtualBox/VirtualBox-wrapper.sh
2a9de9cd 688%attr(755,root,root) %{_libdir}/VirtualBox/VBoxSysInfo.sh
85b005e2 689%{_libdir}/VirtualBox/VBoxDD2GC.gc
690%{_libdir}/VirtualBox/VBoxDDGC.gc
691%{_libdir}/VirtualBox/VMMGC.gc
692%{_libdir}/VirtualBox/VBoxDD2R0.r0
693%{_libdir}/VirtualBox/VBoxDDR0.r0
694%{_libdir}/VirtualBox/VMMR0.r0
1067d08d
ER
695%{_libdir}/VirtualBox/EfiThunk
696%{_libdir}/VirtualBox/VBoxEFI32.fd
697%{_libdir}/VirtualBox/VBoxEFI64.fd
85b005e2 698%{_libdir}/VirtualBox/components/VBoxXPCOMBase.xpt
85b005e2 699%{_libdir}/VirtualBox/components/VirtualBox_XPCOM.xpt
dca6c443
ER
700%attr(755,root,root) %{_libdir}/VirtualBox/components/VBoxC.so
701%attr(755,root,root) %{_libdir}/VirtualBox/components/VBoxSVCM.so
702%attr(755,root,root) %{_libdir}/VirtualBox/components/VBoxXPCOMIPCC.so
89ce7412 703%lang(ar) %{_libdir}/VirtualBox/nls/*_ar.qm
c5e10a4d 704%lang(bg) %{_libdir}/VirtualBox/nls/*_bg.qm
72d5ea57 705%lang(ca) %{_libdir}/VirtualBox/nls/*_ca.qm
3613936b 706%lang(ca_VA) %{_libdir}/VirtualBox/nls/*_ca_VA.qm
89ce7412 707%lang(cs) %{_libdir}/VirtualBox/nls/*_cs.qm
dc0a2786 708%lang(da) %{_libdir}/VirtualBox/nls/*_da.qm
89ce7412 709%lang(de) %{_libdir}/VirtualBox/nls/*_de.qm
11de52da 710%lang(el) %{_libdir}/VirtualBox/nls/*_el.qm
3613936b 711%lang(en) %{_libdir}/VirtualBox/nls/*_en.qm
89ce7412 712%lang(es) %{_libdir}/VirtualBox/nls/*_es.qm
713%lang(eu) %{_libdir}/VirtualBox/nls/*_eu.qm
714%lang(fi) %{_libdir}/VirtualBox/nls/*_fi.qm
715%lang(fr) %{_libdir}/VirtualBox/nls/*_fr.qm
3613936b 716%lang(gl_ES) %{_libdir}/VirtualBox/nls/*_gl_ES.qm
89ce7412 717%lang(hu) %{_libdir}/VirtualBox/nls/*_hu.qm
72d5ea57 718%lang(id) %{_libdir}/VirtualBox/nls/*_id.qm
89ce7412 719%lang(it) %{_libdir}/VirtualBox/nls/*_it.qm
720%lang(ja) %{_libdir}/VirtualBox/nls/*_ja.qm
c5e10a4d 721%lang(km_KH) %{_libdir}/VirtualBox/nls/*_km_KH.qm
89ce7412 722%lang(ko) %{_libdir}/VirtualBox/nls/*_ko.qm
72d5ea57 723%lang(nl) %{_libdir}/VirtualBox/nls/*_nl.qm
89ce7412 724%lang(pl) %{_libdir}/VirtualBox/nls/*_pl.qm
52b59a1b 725%lang(pt) %{_libdir}/VirtualBox/nls/*_pt.qm
89ce7412 726%lang(pt_BR) %{_libdir}/VirtualBox/nls/*_pt_BR.qm
89ce7412 727%lang(ro) %{_libdir}/VirtualBox/nls/*_ro.qm
728%lang(ru) %{_libdir}/VirtualBox/nls/*_ru.qm
729%lang(sk) %{_libdir}/VirtualBox/nls/*_sk.qm
72d5ea57 730%lang(sr) %{_libdir}/VirtualBox/nls/*_sr.qm
89ce7412 731%lang(sv) %{_libdir}/VirtualBox/nls/*_sv.qm
72d5ea57 732%lang(tr) %{_libdir}/VirtualBox/nls/*_tr.qm
85b005e2 733%lang(uk) %{_libdir}/VirtualBox/nls/*_uk.qm
89ce7412 734%lang(zh_CN) %{_libdir}/VirtualBox/nls/*_zh_CN.qm
735%lang(zh_TW) %{_libdir}/VirtualBox/nls/*_zh_TW.qm
d89980c7 736%{_pixmapsdir}/VBox.png
dca6c443 737%{_desktopdir}/*.desktop
09c79ddb 738
ffb38bb6 739%files additions
9dda6415 740%defattr(644,root,root,755)
ffb38bb6
ER
741%{_libdir}/VirtualBox/additions/VBoxGuestAdditions.iso
742
1067d08d
ER
743%files guest
744%defattr(644,root,root,755)
745%attr(755,root,root) %{_bindir}/VBoxService
746
3613936b
JR
747%files -n pam-pam_vbox
748%defattr(644,root,root,755)
3ee6b9d9 749%attr(755,root,root) /%{_lib}/security/pam_vbox.so
3613936b 750
abb636b9 751%files udev
752%defattr(644,root,root,755)
753%config(noreplace) %verify(not md5 mtime size) /etc/udev/rules.d/virtualbox.rules
754
09c79ddb 755%files -n xorg-driver-input-vboxmouse
756%defattr(644,root,root,755)
757%attr(755,root,root) %{_libdir}/xorg/modules/input/vboxmouse_drv.so
758
759%files -n xorg-driver-video-vboxvideo
760%defattr(644,root,root,755)
761%attr(755,root,root) %{_libdir}/xorg/modules/drivers/vboxvideo_drv.so
27a1aef6
ER
762%attr(755,root,root) %{_libdir}/xorg/modules/dri/vboxvideo_dri.so
763# vboxvideo_dri.so deps
1067d08d 764%attr(755,root,root) %{_libdir}/VBoxOGLarrayspu.so
27a1aef6
ER
765%attr(755,root,root) %{_libdir}/VBoxOGLcrutil.so
766%attr(755,root,root) %{_libdir}/VBoxOGLerrorspu.so
767%attr(755,root,root) %{_libdir}/VBoxOGLfeedbackspu.so
768%attr(755,root,root) %{_libdir}/VBoxOGLpackspu.so
769%attr(755,root,root) %{_libdir}/VBoxOGLpassthroughspu.so
d1c4ec5b 770%endif
48363591 771
d1c4ec5b 772%if %{with kernel}
dc0a2786 773%files -n kernel%{_alt_kernel}-misc-vboxguest
74268e47 774%defattr(644,root,root,755)
dc0a2786
AG
775%attr(754,root,root) /etc/rc.d/init.d/vboxguest
776/lib/modules/%{_kernel_ver}/misc/vboxguest.ko*
74268e47 777
d1c4ec5b 778%files -n kernel%{_alt_kernel}-misc-vboxdrv
48363591 779%defattr(644,root,root,755)
67ad4c40 780%attr(754,root,root) /etc/rc.d/init.d/vboxdrv
d1c4ec5b 781/lib/modules/%{_kernel_ver}/misc/vboxdrv.ko*
74268e47 782
d2a7514f
ŁK
783%files -n kernel%{_alt_kernel}-misc-vboxnetadp
784%defattr(644,root,root,755)
c1cd3b9a 785%attr(754,root,root) /etc/rc.d/init.d/vboxnetadp
d2a7514f
ŁK
786/lib/modules/%{_kernel_ver}/misc/vboxnetadp.ko*
787
1dda2f69 788%files -n kernel%{_alt_kernel}-misc-vboxnetflt
789%defattr(644,root,root,755)
11848f5b 790%attr(754,root,root) /etc/rc.d/init.d/vboxnetflt
1dda2f69 791/lib/modules/%{_kernel_ver}/misc/vboxnetflt.ko*
792
ecfe25a3 793%files -n kernel%{_alt_kernel}-misc-vboxsf
74268e47 794%defattr(644,root,root,755)
b06d932c 795%attr(754,root,root) /etc/rc.d/init.d/vboxsf
50863744 796%attr(755,root,root) %{_sbindir}/mount.vboxsf
ecfe25a3 797/lib/modules/%{_kernel_ver}/misc/vboxsf.ko*
67a4f3c1 798
799%files -n kernel%{_alt_kernel}-misc-vboxvideo
800%defattr(644,root,root,755)
801/lib/modules/%{_kernel_ver}/misc/vboxvideo.ko*
802%endif
This page took 0.310521 seconds and 4 git commands to generate.