From c2fd7b7006ed64fda292bd50bfd64717cd5bde62 Mon Sep 17 00:00:00 2001 From: Timothy Redaelli Date: Fri, 20 Jan 2012 04:00:45 +0000 Subject: [PATCH] updated on Fri Jan 20 04:00:45 UTC 2012 --- cufflinks/PKGBUILD | 24 ++ linux-pae/PKGBUILD | 16 +- linux-pae/i915-gpu-finish.patch | 55 ++++ linux-pae/linux-pae.install | 3 +- nerolinux/PKGBUILD | 4 +- notify-osd-customizable/PKGBUILD | 4 +- perl-dbd-oracle/PKGBUILD | 6 +- samtools/PKGBUILD | 16 +- tophat/PKGBUILD | 26 ++ xasteroids/01_legacy.patch | 571 +++++++++++++++++++++++++++++++++++++++ xasteroids/02_xast.patch | 94 +++++++ xasteroids/COPYING | 5 + xasteroids/PKGBUILD | 33 +++ xbmc-eden-git/PKGBUILD | 2 +- 14 files changed, 843 insertions(+), 16 deletions(-) create mode 100755 cufflinks/PKGBUILD create mode 100644 linux-pae/i915-gpu-finish.patch create mode 100755 tophat/PKGBUILD create mode 100644 xasteroids/01_legacy.patch create mode 100644 xasteroids/02_xast.patch create mode 100644 xasteroids/COPYING create mode 100644 xasteroids/PKGBUILD diff --git a/cufflinks/PKGBUILD b/cufflinks/PKGBUILD new file mode 100755 index 000000000..5b38f05d0 --- /dev/null +++ b/cufflinks/PKGBUILD @@ -0,0 +1,24 @@ +# Maintainer: Thiago Yukio Kikuchi Oliveira + +pkgname=cufflinks +pkgver=1.3.0 +pkgrel=1 +pkgdesc="Cufflinks assembles transcripts, estimates their abundances, and tests for differential expression and regulation in RNA-Seq samples.." +arch=("x86_64") +url="http://cufflinks.cbcb.umd.edu" +license=('Artistic') +depends=('boost' 'python2' 'samtools' 'perl') +source=(http://cufflinks.cbcb.umd.edu/downloads/$pkgname-$pkgver.tar.gz) +md5sums=('6914059cf8c8f22eb388e1fde44deabe') + +build() { + cd $srcdir/$pkgname-$pkgver + + # cufflinks use python2 but archlinux uses python3 as default python + perl -i -pne '$_ =~ s/python/python2/ if $_ =~ /^#!\/usr/' src/cuffmerge + + ./configure --prefix="$pkgdir/usr" + make + make install + +} diff --git a/linux-pae/PKGBUILD b/linux-pae/PKGBUILD index d902de5d5..b8aa90695 100644 --- a/linux-pae/PKGBUILD +++ b/linux-pae/PKGBUILD @@ -7,8 +7,8 @@ pkgbase=linux-pae pkgname=('linux-pae' 'linux-pae-headers') _kernelname=${pkgname#linux} _basekernel=3.1 -pkgver=${_basekernel}.8 -pkgrel=1 +pkgver=${_basekernel}.9 +pkgrel=2 arch=('i686') url="http://www.kernel.org/" license=('GPL2') @@ -21,14 +21,16 @@ source=("http://www.kernel.org/pub/linux/kernel/v3.x/linux-3.1.tar.xz" "${pkgname}.preset" 'change-default-console-loglevel.patch' 'i915-fix-ghost-tv-output.patch' - 'i915-fix-incorrect-error-message.patch') + 'i915-fix-incorrect-error-message.patch' + 'i915-gpu-finish.patch') md5sums=('edbdc798f23ae0f8045c82f6fa22c536' - '503acb7689ec96446f5774d6c86c1207' + '61494c09959f4185f703bfd68c7fb970' '0dd90df28a7de890cad6d76c9a79e662' 'c734be95555d4662cbe91fb9daa8679a' '9d3c56a4b999c8bfbd4018089a62f662' '263725f20c0b9eb9c353040792d644e5' - 'a50c9076012cb2dda49952dc6ec3e9c1') + 'a50c9076012cb2dda49952dc6ec3e9c1' + '4cd79aa147825837dc8bc9f6b736c0a0') build() { cd "${srcdir}/linux-${_basekernel}" @@ -39,6 +41,10 @@ build() { # add latest fixes from stable queue, if needed # http://git.kernel.org/?p=linux/kernel/git/stable/stable-queue.git + # fix FS#27883 + # drm/i915: Only clear the GPU domains upon a successful finish + patch -Np1 -i "${srcdir}/i915-gpu-finish.patch" + # Some chips detect a ghost TV output # mailing list discussion: http://lists.freedesktop.org/archives/intel-gfx/2011-April/010371.html # Arch Linux bug report: FS#19234 diff --git a/linux-pae/i915-gpu-finish.patch b/linux-pae/i915-gpu-finish.patch new file mode 100644 index 000000000..5840c9181 --- /dev/null +++ b/linux-pae/i915-gpu-finish.patch @@ -0,0 +1,55 @@ +commit 389a55581e30607af0fcde6cdb4e54f189cf46cf +Author: Chris Wilson +Date: Tue Nov 29 15:12:16 2011 +0000 + + drm/i915: Only clear the GPU domains upon a successful finish + + By clearing the GPU read domains before waiting upon the buffer, we run + the risk of the wait being interrupted and the domains prematurely + cleared. The next time we attempt to wait upon the buffer (after + userspace handles the signal), we believe that the buffer is idle and so + skip the wait. + + There are a number of bugs across all generations which show signs of an + overly haste reuse of active buffers. + + Such as: + + https://bugs.freedesktop.org/show_bug.cgi?id=29046 + https://bugs.freedesktop.org/show_bug.cgi?id=35863 + https://bugs.freedesktop.org/show_bug.cgi?id=38952 + https://bugs.freedesktop.org/show_bug.cgi?id=40282 + https://bugs.freedesktop.org/show_bug.cgi?id=41098 + https://bugs.freedesktop.org/show_bug.cgi?id=41102 + https://bugs.freedesktop.org/show_bug.cgi?id=41284 + https://bugs.freedesktop.org/show_bug.cgi?id=42141 + + A couple of those pre-date i915_gem_object_finish_gpu(), so may be + unrelated (such as a wild write from a userspace command buffer), but + this does look like a convincing cause for most of those bugs. + + Signed-off-by: Chris Wilson + Cc: stable@kernel.org + Reviewed-by: Daniel Vetter + Reviewed-by: Eugeni Dodonov + +diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c +index d560175..036bc58 100644 +--- a/drivers/gpu/drm/i915/i915_gem.c ++++ b/drivers/gpu/drm/i915/i915_gem.c +@@ -3087,10 +3087,13 @@ i915_gem_object_finish_gpu(struct drm_i915_gem_object *obj) + return ret; + } + ++ ret = i915_gem_object_wait_rendering(obj); ++ if (ret) ++ return ret; ++ + /* Ensure that we invalidate the GPU's caches and TLBs. */ + obj->base.read_domains &= ~I915_GEM_GPU_DOMAINS; +- +- return i915_gem_object_wait_rendering(obj); ++ return 0; + } + + /** diff --git a/linux-pae/linux-pae.install b/linux-pae/linux-pae.install index 7b8e3e57c..74022c402 100644 --- a/linux-pae/linux-pae.install +++ b/linux-pae/linux-pae.install @@ -2,7 +2,7 @@ # arg 2: the old package version KERNEL_NAME=-pae -KERNEL_VERSION=3.1.8-1-pae +KERNEL_VERSION=3.1.9-2-pae post_install () { # updating module dependencies @@ -46,7 +46,6 @@ post_upgrade() { if findmnt --fstab -uno SOURCE /boot &>/dev/null && ! mountpoint -q /boot; then echo "WARNING: /boot appears to be a separate partition but is not mounted." - echo " You probably just broke your system. Congratulations." fi # updating module dependencies diff --git a/nerolinux/PKGBUILD b/nerolinux/PKGBUILD index 5b2e64e18..8c1eee99b 100644 --- a/nerolinux/PKGBUILD +++ b/nerolinux/PKGBUILD @@ -10,11 +10,11 @@ license=('custom') depends=('gtk2') makedepends=('rpmextract') arch=('i686' 'x86_64') -source=(http://dl.dropbox.com/u/979844/$pkgname-$pkgver$_subver-x86.rpm) +source=(http://www.archlinuxcn.org/download/$pkgname-$pkgver$_subver-x86.rpm) md5sums=('f49f49c588729c2afdbecb546d9b6041') install=nerolinux.install -[ "$CARCH" = "x86_64" ] && source=(http://dl.dropbox.com/u/979844/$pkgname-$pkgver$_subver-x86_64.rpm) +[ "$CARCH" = "x86_64" ] && source=(http://www.archlinuxcn.org/download/$pkgname-$pkgver$_subver-x86_64.rpm) [ "$CARCH" = "x86_64" ] && md5sums=('f5b307c37e5623231e0a042ee43e018c') package() { diff --git a/notify-osd-customizable/PKGBUILD b/notify-osd-customizable/PKGBUILD index d145201f2..cc12bb624 100644 --- a/notify-osd-customizable/PKGBUILD +++ b/notify-osd-customizable/PKGBUILD @@ -3,14 +3,14 @@ pkgname=notify-osd-customizable _realname=notify-osd pkgver=0.9.32 -pkgrel=3 +pkgrel=4 pkgdesc="daemon that displays passive pop-up notifications, with leolik patch added" arch=(i686 x86_64) url="https://launchpad.net/notify-osd" license=('GPL') groups=() depends=('libwnck3' 'libnotify>=0.7.0' 'dbus-glib>=0.76' 'dconf' 'gsettings-desktop-schemas') -optdepends=('notifyconf:gui to customize notifies appearence') +optdepends=('notifyconf: gui to customize notifies appearence') makedepends=('pkgconfig' 'libnotify' 'gnome-common') provides=('notification-daemon' 'notify-osd') conflicts=('notification-daemon' 'notify-osd') diff --git a/perl-dbd-oracle/PKGBUILD b/perl-dbd-oracle/PKGBUILD index f86dd4f74..fd38b6d56 100644 --- a/perl-dbd-oracle/PKGBUILD +++ b/perl-dbd-oracle/PKGBUILD @@ -1,7 +1,7 @@ # Contributor: Jason St. John # Contributor: Georg Grabler (STiAT) pkgname=perl-dbd-oracle -pkgver=1.36 +pkgver=1.38 pkgrel=1 pkgdesc="DBD::Oracle - Oracle database driver for the DBI module" arch=('i686' 'x86_64') @@ -12,7 +12,7 @@ depends=('instantclient-basic' 'perl-dbi') makedepends=('instantclient-sdk' 'perl-extutils-makemaker') options=('!emptydirs') source=(http://search.cpan.org/CPAN/authors/id/P/PY/PYTHIAN/DBD-Oracle-$pkgver.tar.gz) -sha512sums=('0b82ec0f81f1ed2c2eebed2b4c36fc229e43a9ae4b4a199038d9377635e129aab8eef59e87a5740b9b5913e1ea40e86815a586555efa9a33b73db036f0df4bcd') +sha512sums=('62704ebe6752041b8df9ae0f14cea43193c1732c2f607c3edffe1c8dfd6feb833ef19b51deedecc88a3f482ca49263182d474887fbdab7c024a8a6ade9f395ac') build() { cd "$srcdir/DBD-Oracle-$pkgver" @@ -38,7 +38,7 @@ build() { } package() { - cd "$srcdir/DBD-Oracle-1.36" + cd "$srcdir/DBD-Oracle-$pkgver" make DESTDIR="$pkgdir" install find "$pkgdir" -name '.packlist' -delete diff --git a/samtools/PKGBUILD b/samtools/PKGBUILD index 17cf3bb57..69c7fc388 100755 --- a/samtools/PKGBUILD +++ b/samtools/PKGBUILD @@ -3,7 +3,7 @@ pkgname=samtools pkgver=0.1.18 -pkgrel=1 +pkgrel=2 pkgdesc="Efficient utilities on manipulating alignments in the SAM format." arch=("x86_64") url="http://samtools.sourceforge.net/" @@ -29,4 +29,18 @@ build() { install -m755 "$f" "$pkgdir/usr/bin" fi done + + cd $srcdir/$pkgname-$pkgver + # Install libbam.a in /usr/local/lib (needed by tophat) + install -d "$pkgdir/usr/local/lib" + install libbam.a "$pkgdir/usr/local/lib" + + + # Install headers in /usr/local/include/bam (needed by tophat) + install -d "$pkgdir/usr/local/include/bam" + for f in *.h + do + install "$f" "$pkgdir/usr/local/include/bam" + done + } diff --git a/tophat/PKGBUILD b/tophat/PKGBUILD new file mode 100755 index 000000000..005784525 --- /dev/null +++ b/tophat/PKGBUILD @@ -0,0 +1,26 @@ +# Maintainer: Thiago Yukio Kikuchi Oliveira + +pkgname=tophat +pkgver=1.4.0 +pkgrel=1 +pkgdesc="TopHat is a fast splice junction mapper for RNA-Seq reads." +arch=("x86_64") +url="http://tophat.cbcb.umd.edu" +license=('Artistic') +depends=('python2' 'samtools' 'bowtie' 'perl') +source=(http://tophat.cbcb.umd.edu/downloads/$pkgname-$pkgver.tar.gz) +md5sums=('65d437628e8caa1df6804fd2a8cfbeaf') + +build() { + cd $srcdir/$pkgname-$pkgver + + # Tophat use python2 but archlinux uses python3 as default python + perl -i -pne '$_ =~ s/python/python2/ if $_ =~ /^#!\/usr/' src/tophat + perl -i -pne '$_ =~ s/python/python2/ if $_ =~ /^#!\/usr/' src/bed_to_juncs + + + ./configure --prefix="$pkgdir/usr" + make + make install + +} diff --git a/xasteroids/01_legacy.patch b/xasteroids/01_legacy.patch new file mode 100644 index 000000000..b291b621a --- /dev/null +++ b/xasteroids/01_legacy.patch @@ -0,0 +1,571 @@ +--- xasteroids-5.0.orig/xast.c ++++ xasteroids-5.0/xast.c +@@ -3,6 +3,13 @@ + goetz@cs.buffalo.EDU + Version 5, 9 Feb 93 + ++ Changes after version 5.0: ++ ++ Improved cursor-hiding. ++ Arrow keys. ++ ANSI-C cleanups. ++ Use usleep() instead of a delay loop, when available. ++ + Changes from version 4.3: + + High score script. +@@ -27,16 +34,29 @@ + Pat Ryan + Craig Smith + Doug Merritt ++ Stephen McCamant + Makefile by James Berg + Hi score script by Chris Moore + Man page by David Partain + */ + #include /* For NULL */ ++#include /* For malloc(), rand() etc */ ++#include /* For time() */ + #include + #include +-#include /* For erasing cursor - not important */ ++#include + #include + ++#ifdef HAS_USLEEP ++#include ++#endif ++ ++#ifndef __STDC__ ++define void ++#endif ++ ++#define rand(rndint) rand() /* ??? */ ++ + /* Indexes for 1st dimension of obj */ + /* The order they are in is important */ + #define AST 0 +@@ -68,10 +88,10 @@ + #define M_BULLET 0.1 + + /* Keys */ +-#define FIRE 'p' +-#define PAUSE 27 /* escape */ +-#define SHIELD '`' +-#define THRUST 'o' ++#define FIRE XK_p ++#define PAUSE XK_Escape /* escape */ ++#define SHIELD XK_grave /* ` */ ++#define THRUST XK_o + + #define BMAX 300 /* Max particles in a "boom" + 1 */ + #define letheight 20 /* height of font */ +@@ -121,6 +141,7 @@ + shapesize[LASTSHAPE+1] = {44, 21, 10, 2, 1, SHIPSIZE+1, 35, 20}, + shield_on; + ++void + initasts() + { int i; + extern Objtype obj[SHIP+1]; +@@ -143,6 +164,7 @@ + obj[i].mass = M_BULLET; + } } + ++void + makeasts() + { int i; + extern Objtype obj[SHIP+1]; +@@ -163,7 +185,7 @@ + if (a > 63) + obj[i].y = (double) a; + else obj[i].y = (double) height - a; +- a = rand(rndint); a = 4 - a>>5; ++ a = rand(rndint); a = 4 - (a>>5); + obj[i].rot = (double) a; + a = rand(rndint); + obj[i].rotvel = ((double) a)/2048; +@@ -177,6 +199,7 @@ + numasts = i; + } + ++void + makeenemy() /* Start an enemy ship */ + { extern Objtype obj[SHIP+1]; + extern int height, level, rndint; +@@ -258,6 +281,7 @@ + return 0; + } + ++void + blastpair(i, j) /* Generate random velocity vector v. */ + int i, j ; /* Add v to i, -v to j. */ + { extern int rndint; +@@ -266,7 +290,7 @@ + double vx, vy; + c = rand(rndint); + /* c = 4 - c>>5; if you need angles from -3 to 4 */ +- c>>2; /* possibly save some time on sin/cos */ ++ c >>= 2; /* possibly save some time on sin/cos */ + vx = cos((double) c); vy = sin((double) c); + obj[i].xvel = obj[i].xvel + vx; + obj[i].yvel = obj[i].yvel + vy; +@@ -282,6 +306,7 @@ + #define rotinert(i) (double) (obj[i].mass*shapesize[obj[i].shape]*shapesize[obj[i].shape]) + + /* cause two objects to collide elastically */ ++void + bounce(i, j) + int i,j; + { +@@ -345,6 +370,7 @@ + obj[j].rotvel = temp; + } + ++void + botline(disp, window, gc) /* Print status line text */ + Display *disp; + Drawable window; +@@ -357,6 +383,7 @@ + text, strlen(text)); + } + ++void + printss(disp, window, gc) /* Print ships and score */ + Display *disp; + Drawable window; +@@ -389,6 +416,7 @@ + XClearArea(disp, window, 340+(energy>>1), height+8, 8, 10, False); + } + ++void + upscore(killer, up) /* Only award score for things the player shot */ + int killer, up; + { extern int score; +@@ -397,6 +425,7 @@ + } + + /* boom, movebooms, drawbooms all by Peter Phillips */ ++void + boom(ob, particles, duration) + int ob; + int particles; +@@ -429,6 +458,7 @@ + } + + /* move the various booms that are active */ ++void + movebooms() + { + int i; +@@ -461,6 +491,7 @@ + } + + /* Draw the various booms */ ++void + drawbooms(disp, window, gc) + Display *disp; + Drawable window; +@@ -481,6 +512,7 @@ + } + } + ++void + deletebooms() /* delete all booms */ + { Boom b; + +@@ -490,11 +522,12 @@ + b = b->next; + } } + ++void + killast(killer, i) + int killer, i; /* i = Asteroid # to kill */ + { extern Objtype obj[SHIP+1]; + extern int numasts; +- int k, na, oldna; ++ int k, na = 0, oldna; + + if (obj[i].shape == ASTSHAPE1) + { na = nextast(); /* Could put 6 lines in a sub */ +@@ -543,6 +576,8 @@ + { boom(i, 9, 7); + obj[i].alive = 0; upscore(killer, 500);} + } ++ ++void + moveobjs(crash) + int *crash; + { extern Objtype obj[SHIP+1]; +@@ -585,6 +620,7 @@ + } + } + ++void + fire() + { extern Objtype obj[SHIP+1]; + extern int width, nextbul; +@@ -603,6 +639,7 @@ + nextbul++; if (nextbul == LASTBUL+1) nextbul = FBUL; + } + ++void + hyper() + { extern Objtype obj[SHIP+1]; + extern int width, height, rndint; +@@ -617,6 +654,7 @@ + obj[SHIP].y = (double) i; + } + ++void + vdraw(disp, window, gc, shape, x, y, rot) + Display *disp; + Drawable window; +@@ -639,6 +677,7 @@ + XDrawLines (disp, window, gc, figure, numpairs[shape], CoordModePrevious); + } + ++int + main(argc, argv) + int argc; + char **argv; +@@ -663,8 +702,8 @@ + extern int level, numasts, rndint, ships, score, oldscore; + extern Objtype obj[SHIP+1]; + unsigned char c; /* for rand */ +- double *temp, dx, dy, dist; +- int crashed, flashon, len, pause = 0, delay = 64, ++ double dx, dy, dist; ++ int crashed, flashon, pause = 0, delay = 64, + enemycount, counter, counterstart = 1, + i, /* index for drawing objs, counting bullets */ + r; /* radius of shield circle */ +@@ -704,11 +743,30 @@ + KeyPressMask | KeyReleaseMask | StructureNotifyMask); + XMapRaised (disp, window); + +- /* Erase cursor. Just delete next 5 lines if any error. */ ++ /* Make cursor invisible. Just delete chunk if any error. */ + cmap = XDefaultColormap(disp, screen); + XAllocNamedColor(disp, cmap, "Black", &exact, &black); ++#if 0 /* Easy way, but can leave a black spot */ ++#include + cursor = XCreateFontCursor(disp, XC_dot); + XRecolorCursor(disp, cursor, &black, &black); ++#else /* Hard, good way */ ++ { unsigned wd, ht; ++ Pixmap pm, maskpm; ++ GC cleargc; ++ XQueryBestCursor(disp, window, 1, 1, &wd, &ht); ++ pm = XCreatePixmap(disp, window, wd, ht, 1); ++ maskpm = XCreatePixmap(disp, window, wd, ht, 1); ++ cleargc = XCreateGC(disp, pm, 0, 0); ++ XFillRectangle(disp, pm, cleargc, 0, 0, wd, ht); ++ XFillRectangle(disp, maskpm, cleargc, 0, 0, wd, ht); ++ cursor = XCreatePixmapCursor(disp, pm, maskpm, ++ &black, &black, 1, 1); ++ XFreePixmap(disp, pm); ++ XFreePixmap(disp, maskpm); ++ XFreeGC(disp, cleargc); ++ } ++#endif + XDefineCursor(disp, window, cursor); + + XFillRectangle (disp, pixmap, pmgc, 0, 0, width, height); +@@ -746,7 +804,7 @@ + { XNextEvent(disp, &event); + switch (event.type) + { case MappingNotify: +- XRefreshKeyboardMapping (&event); ++ XRefreshKeyboardMapping ((XMappingEvent *)&event); + break; + case ConfigureNotify: + width = event.xconfigure.width; +@@ -757,28 +815,29 @@ + botline(disp, window, gc); + break; + case KeyPress: +- len = XLookupString (&event, text, 10, &key, 0); +- if (len == 1 && !shield_on) switch (text[0]) +- { case 'e': ++ key = XLookupKeysym ((XKeyEvent *)&event, 0); ++ if (!shield_on) switch (key) ++ { case XK_Left: case XK_e: + obj[SHIP].rotvel = obj[SHIP].rotvel - .1; break; +- case 'r': ++ case XK_Right: case XK_r: + obj[SHIP].rotvel = obj[SHIP].rotvel + .1; break; +- case 'w': ++ case XK_w: + obj[SHIP].rot -= pi/4; break; +- case 't': ++ case XK_t: + obj[SHIP].rot += pi/4; break; +- case 'd': ++ case XK_d: + obj[SHIP].rotvel = obj[SHIP].rotvel - .02; break; +- case 'f': ++ case XK_f: + obj[SHIP].rotvel = obj[SHIP].rotvel + .02; break; +- case THRUST: ++ case XK_Up: case THRUST: + obj[SHIP].xvel += cos(obj[SHIP].rot); + obj[SHIP].yvel += sin(obj[SHIP].rot); + obj[SHIP].shape = SHIPTHRSHAPE; + break; ++ case XK_Control_L: case XK_Control_R: + case FIRE: + if (obj[SHIP].alive) fire(); break; +- case ' ': ++ case XK_space: + if (obj[SHIP].alive) + { hyper(); flashon = 1; + /* NOT XSetForeground (disp, gc, bg); +@@ -787,35 +846,37 @@ + XFillRectangle (disp, pixmap, pmgc, 0, 0, width, height); + } + break; +- case SHIELD: ++ case XK_Down: case SHIELD: + if (energy) + { shield_on = 1; + obj[SHIP].shape = SHIPSHAPE;} + break; +- case '.': /* decrease delay */ ++ case XK_period: /* decrease delay */ + if (delay > 1) delay >>=1; break; +- case ',': /* increase delay */ ++ case XK_comma: /* increase delay */ + delay <<=1; break; +- case 'm': /* decrease drawscale - may go negative */ ++ case XK_m: /* decrease drawscale - may go negative */ + drawscale -= .1; break; +- case 'n': /* increase drawscale */ ++ case XK_n: /* increase drawscale */ + drawscale += .1; break; +- case '2': /* increase speedscale */ ++ case XK_2: /* increase speedscale */ + speedscale += .1; break; +- case '1': /* decrease speedscale */ ++ case XK_1: /* decrease speedscale */ + speedscale -= .1; break; +- case 'b': /* increase moves/update */ ++ case XK_b: /* increase moves/update */ + counterstart++; break; +- case 'v': /* decrease moves/update */ ++ case XK_v: /* decrease moves/update */ + if (counterstart > 1) counterstart--; + break; + case PAUSE: /* pause */ + pause = 1 - pause; break; +- case '+': /* cheat */ ++ case XK_plus: /* cheat */ + ships++; botline(disp, window, gc); break; +- case 'Q': /* quit */ +- goto End; +- case 's': /* start new ship */ ++ case XK_q: /* quit */ ++ if (event.xkey.state & ShiftMask) ++ goto End; ++ break; ++ case XK_s: /* start new ship */ + if (!obj[SHIP].alive) + if (ships < 1) goto Newgame; + else goto Newship; +@@ -823,16 +884,16 @@ + } + break; + case KeyRelease: +- len = XLookupString(&event, text, 10, &key, 0); +- if (len == 1) switch (text[0]) +- { case 'e': ++ key = XLookupKeysym((XKeyEvent *)&event, 0); ++ switch (key) ++ { case XK_Left: case XK_e: + obj[SHIP].rotvel = 0; break; +- case 'r': ++ case XK_Right: case XK_r: + obj[SHIP].rotvel = 0; break; +- case THRUST: ++ case XK_Up: case THRUST: + obj[SHIP].shape = SHIPSHAPE; + break; +- case SHIELD: ++ case XK_Down: case SHIELD: + shield_on = 0; break; + } + /* break; */ +@@ -850,7 +911,7 @@ + botline(disp, window, gc); + } + /* Write copyright notice */ +- if (!ships && blist == NULL) ++ if (!ships) + { sprintf(text, "Xasteroids"); + XDrawImageString (disp, pixmap, gc, + width/2-50, height/2-2*letheight, +@@ -917,7 +978,11 @@ + } + else obj[ENEMYBUL].alive = 0; + } ++#ifdef HAS_USLEEP ++ usleep(delay); ++#else + for (i = 0; i < delay; i++); ++#endif + } + } + } +--- xasteroids-5.0.orig/xast.docs ++++ xasteroids-5.0/xast.docs +@@ -4,16 +4,16 @@ + + Keypress Command + -------- ------- +- e Rotate counterclockwise ("left") +- r Rotate clockwise ("right") ++ e / <- Rotate counterclockwise ("left") ++ r / -> Rotate clockwise ("right") + w Rotate 45 degrees counterclockwise + t Rotate 45 degrees clockwise + d Increase counterclockwise rotational velocity + f Increase clockwise rotational velocity +- o Thrust +- p Fire ++ o / Up Arrow Thrust ++ p / Control Fire + space Hyperspace +- ` Shields ++ ` / Down Arrow Shields + s Start new ship in center of playing field + (Also used to start a new game) + esc Pause +@@ -42,6 +42,3 @@ + + Resize the window with your window manager + at any time for a different playing field. +- +-Use the command-line option -s on the xasteroids script +-to see the high score list. +--- xasteroids-5.0.orig/xast.man ++++ xasteroids-5.0/xast.man +@@ -1,9 +1,9 @@ +-.TH xasteroids n ++.TH xasteroids 6 + .SH NAME + xasteroids - X windows based asteroids style arcade game + .SH SYNOPSIS +-.ta 8n +-\fBxasteroids\fP ++.ta 6 ++\fBxasteroids\fP [-s] + .br + .SH DESCRIPTION + Make big rocks into little ones. +@@ -11,60 +11,70 @@ + .SH COMMANDS + .I xasteroids + +- e Rotate counterclockwise ("left") +- r Rotate clockwise ("right") +- w Rotate 45 degrees counterclockwise +- t Rotate 45 degrees clockwise +- d Increase counterclockwise rotational velocity +- f Increase clockwise rotational velocity +- o Thrust +- p Fire +- ` Shields +- space Hyperspace +- s Start new ship in center of playing field +- (Also used to start a new game) +- esc Pause +- Q Quit ++.ft CW ++ e Left Arrow Rotate counterclockwise ("left") ++ r Right Arrow Rotate clockwise ("right") ++ w Rotate 45 degrees counterclockwise ++ t Rotate 45 degrees clockwise ++ d Increase CCWise rotational velocity ++ f Increase clockwise rotational velocity ++ o Up Arrow Thrust ++ p Control Fire ++ ` Down Arrow Shields ++ space Hyperspace ++ s Start new ship in center of playing field ++ (Also used to start a new game) ++ esc Pause ++ Q Quit ++.ft R + + Speed commands: Key associated with faster speed is to the right of its +- corresponding key associated with slower speed. ++corresponding key associated with slower speed. + +- . Decrease delay: Speed game up +- , Increase delay: Slow the game down +- m Decrease size ("Minimize") +- n Increase size +- b Increase # of moves/frame +- v Decrease # of moves/frame +- 2 Increase scale of movement +- 1 Decrease scale of movement ++.ft CW ++ . Decrease delay: Speed game up ++ , Increase delay: Slow the game down ++ m Decrease size ("Minimize") ++ n Increase size ++ b Increase # of moves/frame ++ v Decrease # of moves/frame ++ 2 Increase scale of movement ++ 1 Decrease scale of movement + + Object Score + +- Big asteroid 25, or 2000*level if it is the last asteroid remaining +- Medium asteroid 50, or 500*level if it is the last asteroid remaining ++ Big asteroid 25, or ++ 2000*level if last asteroid remaining ++ Medium asteroid 50, or ++ 500*level if last asteroid remaining + Little asteroid 100 + Enemy spaceship 500 + Enemy bullet 500 ++.ft R + + Commands can only be entered when the mouse pointer is in the + asteroids window. + + Resize the window with your window manager + at any time for a different playing field. +- +-.SH OPTIONS +-.I xasteroids [-s] +--s Display high scores without running game. + .PP + .SH AUTHOR + Phil Goetz + .br + goetz@cs.Buffalo.EDU + .SH CONTRIBUTORS +-Peter Phillips pphillip@cs.ubc.ca +-Pat Ryan pat@jaameri.gsfc.nasa.gov +-Craig Smith csmith@cscs.UUCP +-Doug Merritt doug@netcom.com +-James Berg berg@plains (makefile) +-Chris Moore moore@src.bae.co.uk (hi score script) +-David Partain dlp@ida.liu.se (original man page) ++Peter Phillips ++.br ++Pat Ryan ++.br ++Craig Smith ++.br ++Doug Merritt ++.br ++Stephen McCamant ++.br ++James Berg (makefile) ++.br ++Chris Moore (hi score script) ++.br ++David Partain (original man page) diff --git a/xasteroids/02_xast.patch b/xasteroids/02_xast.patch new file mode 100644 index 000000000..6eabd95ad --- /dev/null +++ b/xasteroids/02_xast.patch @@ -0,0 +1,94 @@ +--- Makefile 2011-10-23 14:50:19.549756075 +0600 ++++ Makefile.new 2011-10-23 14:50:07.673089811 +0600 +@@ -6,7 +6,7 @@ + #LDFLAGS = -s -L/usr/local/lib + LDFLAGS = -s -L/util/X11/lib + LIBS = -lm -lX11 +-TARGET = xast.exe ++TARGET = xast + SRCS = xast.c + OBJS = xast.o + ALL = README xasteroids xast.docs xast.man Makefile $(SRCS) +--- xast.c 2011-10-23 15:16:38.859702325 +0600 ++++ xast.c.new 2011-10-23 15:19:39.573029507 +0600 +@@ -9,6 +9,8 @@ + Arrow keys. + ANSI-C cleanups. + Use usleep() instead of a delay loop, when available. ++ Changed default window size and speed (2011). ++ Disabled timer penalty because of problems with its speed (2011). + + Changes from version 4.3: + +@@ -46,10 +48,7 @@ + #include + #include + #include +- +-#ifdef HAS_USLEEP + #include +-#endif + + #ifndef __STDC__ + define void +@@ -130,7 +129,7 @@ + {{0,0}, {pi,20},{7*pi/4,28},{pi/4,28},{pi,20}} + }; + Boom blist = NULL; +-double drawscale = 1, speedscale = 1; ++double drawscale = 1, speedscale = 0.2; + int width, height, + energy, /* # of turns shield is good for */ + highscore = 0, level, +@@ -716,7 +715,7 @@ + screen = DefaultScreen(disp); + bg = BlackPixel(disp, screen); + fg = WhitePixel(disp, screen); +- hint.x = 150; hint.y = 200; hint.width = 550; hint.height = 550; ++ hint.x = 50; hint.y = 50; hint.width = 1024; hint.height = 768; + hint.flags = PPosition | PSize; + width = hint.width; height = hint.height-letheight-1; + depth = DefaultDepth (disp, screen); +@@ -818,17 +817,17 @@ + key = XLookupKeysym ((XKeyEvent *)&event, 0); + if (!shield_on) switch (key) + { case XK_Left: case XK_e: +- obj[SHIP].rotvel = obj[SHIP].rotvel - .1; break; ++ obj[SHIP].rotvel = obj[SHIP].rotvel - .02; break; + case XK_Right: case XK_r: +- obj[SHIP].rotvel = obj[SHIP].rotvel + .1; break; ++ obj[SHIP].rotvel = obj[SHIP].rotvel + .02; break; + case XK_w: + obj[SHIP].rot -= pi/4; break; + case XK_t: + obj[SHIP].rot += pi/4; break; + case XK_d: +- obj[SHIP].rotvel = obj[SHIP].rotvel - .02; break; ++ obj[SHIP].rotvel = obj[SHIP].rotvel - .005; break; + case XK_f: +- obj[SHIP].rotvel = obj[SHIP].rotvel + .02; break; ++ obj[SHIP].rotvel = obj[SHIP].rotvel + .005; break; + case XK_Up: case THRUST: + obj[SHIP].xvel += cos(obj[SHIP].rot); + obj[SHIP].yvel += sin(obj[SHIP].rot); +@@ -900,7 +899,6 @@ + } } + if (!pause) + { moveobjs(&crashed); +- if (ships) score--; /* timer effect */ + if (!counter) + { counter = counterstart; /* Restart counter */ + if (crashed == 2) +@@ -978,11 +976,7 @@ + } + else obj[ENEMYBUL].alive = 0; + } +-#ifdef HAS_USLEEP +- usleep(delay); +-#else +- for (i = 0; i < delay; i++); +-#endif ++ usleep(2000); + } + } + } diff --git a/xasteroids/COPYING b/xasteroids/COPYING new file mode 100644 index 000000000..91e7780a9 --- /dev/null +++ b/xasteroids/COPYING @@ -0,0 +1,5 @@ +If you modify the game, feel free to post your version, PROVIDED that +you retain my copyright notice, the credits, and note which version yours +was derived from and its release date, what changes you made, and your +release date. I do not intend to release any more versions myself. +I wash my hands of it. diff --git a/xasteroids/PKGBUILD b/xasteroids/PKGBUILD new file mode 100644 index 000000000..76ab4c781 --- /dev/null +++ b/xasteroids/PKGBUILD @@ -0,0 +1,33 @@ +# Maintainer: Anton Bazhenov + +pkgname=xasteroids +pkgver=5 +pkgrel=1 +pkgdesc="Classical asteroids game for X11" +arch=('i686' 'x86_64') +url="http://packages.debian.org/en/source/squeeze/xasteroids" +license=('custom') +depends=('libx11') +source=("http://www.ibiblio.org/pub/Linux/games/arcade/asteroids/${pkgname}.tgz" + "01_legacy.patch" + "02_xast.patch" + "COPYING") +md5sums=('71a7a4c0abc9e9fec646e9c8f2433d79' + 'ddadc870143e131dcdcc994b15519432' + '828d50583f394807a58ff8434b4eacb3' + 'c3358fb85f157269c78e689ec71e8da3') + +build() { + cd "${srcdir}/${pkgname}" + patch -p1 -i ../01_legacy.patch + patch -p0 -i ../02_xast.patch + make || return 1 +} + +package() { + cd "${srcdir}/${pkgname}" + install -Dm755 xast "${pkgdir}/usr/bin/${pkgname}" + install -Dm644 xast.man "${pkgdir}/usr/share/man/man6/${pkgname}.6" + install -Dm644 README "${pkgdir}/usr/share/doc/${pkgname}/README" + install -Dm644 ../COPYING "${pkgdir}/usr/share/licenses/${pkgname}/COPYING" +} diff --git a/xbmc-eden-git/PKGBUILD b/xbmc-eden-git/PKGBUILD index 7ab4dd34d..0bd0d7d24 100644 --- a/xbmc-eden-git/PKGBUILD +++ b/xbmc-eden-git/PKGBUILD @@ -5,7 +5,7 @@ # for his xbmc-vdpau-vdr PKGBUILD at https://archvdr.svn.sourceforge.net/svnroot/archvdr/trunk/archvdr/xbmc-vdpau-vdr/PKGBUILD pkgname=xbmc-eden-git -pkgver=20120104 +pkgver=20120120 pkgrel=1 pkgdesc="XBMC Media Center git Eden branch" provides=('xbmc') -- 2.11.4.GIT