updated on Mon Jan 16 20:00:43 UTC 2012
[aur-mirror.git] / jazz-jackrabbit-2 / PKGBUILD
blobf7314bed276c1f7a428cd510c11101edcd28430e
1 # Contributor: Mark Coolen <mark.coolen@gmail.com>
3 pkgname="jazz-jackrabbit-2"
4 pkgver="1.0"
5 pkgrel=2
6 pkgdesc="A classic platform scroller from Abandonia, played in Wine."
7 url='http://www.abandonia.com/en/games/294/Jazz+Jackrabbit+2.html'
8 arch=('any')
9 license=('custom-freeware' 'Abandonware')
10 install='jazz2.install'
11 depends=('wine' 'unionfs-fuse')
12 optdepends=('abandonia-menu')
13 source=('Jazz_Jackrabbit_2.zip::http://files.abandonia.com/download.php?game=Jazz+Jackrabbit+2&secure=ce95c11a306aa2eeaadff7b0e973e3fa&td=1304618652')
14 md5sums=('df245a8185fc2c0f8278b88d2ed9ee7a')
15 _pkgabbrev="Jazz2"
16 _exe="Jazz2.exe"
17 _icon=/opt/abandonia/$_pkgabbrev/HTML/jazz.gif
19 build() {
20         mkdir -p -m755 "$pkgdir/opt/" 
21         mkdir -p -m755 "$pkgdir/opt/abandonia" 
22         mkdir -p -m755 "$pkgdir/opt/abandonia/$_pkgabbrev"
24         #remove wineprefix files from previous incarnation of Jazz2
25         if [ -d $pkgdir/opt/abandonia/$_pkgabbrev/drive_c ];then
26                 rm -rf $pkgdir/opt/abandonia/$_pkgabbrev/drive_c
27                 rm -rf $pkgdir/opt/abandonia/$_pkgabbrev/dosdevices
28         fi
30         cp -ar $srcdir/$_pkgabbrev/* $pkgdir/opt/abandonia/$_pkgabbrev
33 package() {
35         #ok, let's use a script to start the game
36         #script also includes unionfs mount in order to allow multi-user playing of this game from a single install.
38         mkdir -p -m755 /$pkgdir/usr/bin/ 
40         printf "#!${SHELL}
41 mkdir -p ~/.abandonia/$_pkgabbrev/Game
43 #copy old game files into new game directory... if they exist
44 if [ -d ~/.abandonia/$_pkgabbrev/persistent/drive_c/Programs/Jazz2 ];then
45         cp -ar ~/.abandonia/$_pkgabbrev/persistent/drive_c/Programs/Jazz2/* ~/.abandonia/$_pkgabbrev/Game/
46         #clean up leftover unionfs files from previous incarnation of Jazz2
47         rm -rf ~/.abandonia/$_pkgabbrev/persistent
50 #Make sure ~/.abandonia/$_pkgabbrev/temp is empty to avoid errors
51 rm -rf ~/.abandonia/$_pkgabbrev/temp
52 mkdir -p ~/.abandonia/$_pkgabbrev/temp
54 #Set up unionfs mount for game folder
55 unionfs -o cow -o umask=000 ~/.abandonia/$_pkgabbrev/Game=RW:/opt/abandonia/$_pkgabbrev=RO ~/.abandonia/$_pkgabbrev/temp
56 #cd ~/.abandonia/$_pkgabbrev/temp
57 " >> /$pkgdir/usr/bin/$_pkgabbrev.sh 
59 #Different wine commandline for diffent arch's
60 if [ "$CARCH" = "x86_64" ] ; then
61         printf  "WINEARCH=win32 WINEPREFIX=~/.abandonia/$_pkgabbrev wine ~/.abandonia/$_pkgabbrev/temp/$_exe" >> /$pkgdir/usr/bin/$_pkgabbrev.sh 
62 else
63         printf  "WINEPREFIX=~/.abandonia/$_pkgabbrev wine ~/.abandonia/$_pkgabbrev/temp/$_exe" >> /$pkgdir/usr/bin/$_pkgabbrev.sh 
66 printf "
67 #cd ~/
68 #Wait for a few seconds and then unmount the unionfs mountpoint
69 sleep 7 && fusermount -u ~/.abandonia/$_pkgabbrev/temp
70 " >> /$pkgdir/usr/bin/$_pkgabbrev.sh 
72         chmod +x /$pkgdir/usr/bin/$_pkgabbrev.sh 
73         ln -s $_pkgabbrev.sh /$pkgdir/usr/bin/$_pkgabbrev 
75         # Automatic generation of a .desktop file
77         mkdir -p -m644 "$pkgdir/usr/share/" 
78         mkdir -p -m644 "$pkgdir/usr/share/applications/" 
80         printf "[Desktop Entry]
81 Version=$pkgver
82 Type=Application
83 Name=$pkgname
84 Comment=$pkgdesc
85 Exec=/usr/bin/$_pkgabbrev
86 Icon=$_icon
87 Categories=Game;Abandonia;
88 Terminal=false
89 StartupNotify=false" >> /$pkgdir/usr/share/applications/$_pkgabbrev.desktop