diff --git a/games/icebreaker/README b/games/icebreaker/README index 6b85aa885e..11a7c5b304 100644 --- a/games/icebreaker/README +++ b/games/icebreaker/README @@ -4,5 +4,7 @@ So, uh, there's a bunch of penguins on an iceberg in Antarctica. You have been selected to catch them so they can be shipped to Finland, where they are essential to a secret plot for world domination. -The binary is installed setgid games: not a serious security risk, but -something to be aware of, if you're paranoid. +Note: if you're upgrading from icebreaker 1.9.x to 2.x, be aware that +there's no longer a system-wide high score file. Instead, high scores +are saved in each user's home directory. This also means the binary is +no longer installed setgid games. diff --git a/games/icebreaker/icebreaker.SlackBuild b/games/icebreaker/icebreaker.SlackBuild index 89a0c94db4..c9c939155b 100644 --- a/games/icebreaker/icebreaker.SlackBuild +++ b/games/icebreaker/icebreaker.SlackBuild @@ -6,6 +6,9 @@ # Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details. +# 20230107 bkw: Updated for v2.2.1! After 20+ years, the author came +# back to this game and released a new version. + # 20170703 bkw: Updated for v1.9.7, the last beta, with theme support. # Development on this game stopped in 2002, so there will never be a 2.0 # release. If anyone finds bugs in 1.9.7, let me know. @@ -19,8 +22,8 @@ cd $(dirname $0) ; CWD=$(pwd) PRGNAM=icebreaker -VERSION=${VERSION:-1.9.7} -BUILD=${BUILD:-3} +VERSION=${VERSION:-2.2.1} +BUILD=${BUILD:-1} TAG=${TAG:-_SBo} PKGTYPE=${PKGTYPE:-tgz} @@ -61,41 +64,57 @@ rm -rf $PKG mkdir -p $TMP $PKG $OUTPUT cd $TMP rm -rf $PRGNAM-$VERSION -tar xvf $CWD/$PRGNAM-$VERSION.tgz +tar xvf $CWD/$PRGNAM-$VERSION.tar.xz cd $PRGNAM-$VERSION chown -R root:root . find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+ +# 20230107 bkw: on Slackware 15.0, -Werror doesn't hurt anything, but +# get rid of it anyway for future-proofing. +sed -i 's,-Werror,,' Makefile + +# 20230107 bkw: 2.x has no system-wide high scores (it's per-user only) +# but the man page hasn't been updated to tell us that. +sed -i -e 's,$HIGHSCOREDIR,~/.icebreaker/,' \ + -e 's,system-wide,per-user,' \ + $PRGNAM.man.in + +# 20230107 bkw: need this to allow the game to create the high score +# file if it doesn't already exist. Also give it sane permissions. +sed -i 's/O_RDWR/O_RDWR|O_CREAT,0644/' lock.c + make \ prefix=/usr \ mandir=/usr/man \ bindir=/usr/games \ - highscoredir=/var/games/$PRGNAM \ OPTIMIZE="$SLKCFLAGS" strip $PRGNAM + make -j1 install \ prefix=$PKG/usr \ mandir=$PKG/usr/man \ - bindir=$PKG/usr/games \ - highscoredir=$PKG/var/games/$PRGNAM + bindir=$PKG/usr/games gzip -9 $PKG/usr/man/man6/$PRGNAM.6 -mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION -cp ChangeLog LICENSE README README.themes TODO $PKG/usr/doc/$PRGNAM-$VERSION -cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild +PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION +mkdir -p $PKGDOC +cp -a ChangeLog LICENSE README README.themes TODO $PKGDOC +cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild +# 20230107 bkw: 2.2.1 source includes a .desktop file, but it has issues +# (e.g. no Categories), so keep using our own. mkdir -p $PKG/usr/share/applications -cp $CWD/$PRGNAM.desktop $PKG/usr/share/applications +cat $CWD/$PRGNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop -for i in 16 32 48; do +for i in 16 22 32 48 64 96 128; do px=$( basename $i | cut -d. -f1 ) size=${px}x${px} dir=$PKG/usr/share/icons/hicolor/$size/apps mkdir -p $dir - convert -resize $size ${PRGNAM}_48.bmp $dir/$PRGNAM.png + convert -resize $size ${PRGNAM}_128.png $dir/$PRGNAM.png done mkdir -p $PKG/usr/share/pixmaps diff --git a/games/icebreaker/icebreaker.desktop b/games/icebreaker/icebreaker.desktop index bbdc6de6da..116f82fd11 100644 --- a/games/icebreaker/icebreaker.desktop +++ b/games/icebreaker/icebreaker.desktop @@ -1,7 +1,9 @@ [Desktop Entry] Name=IceBreaker -Exec=/usr/games/icebreaker Type=Application +Comment=addictive action-puzzle game involving bouncing penguins +Exec=/usr/games/icebreaker Icon=icebreaker -GenericName=IceBreaker +Terminal=false +Keywords=puzzle;game;penguins;ice; Categories=Game;ArcadeGame; diff --git a/games/icebreaker/icebreaker.info b/games/icebreaker/icebreaker.info index e044e207af..2899fdee0a 100644 --- a/games/icebreaker/icebreaker.info +++ b/games/icebreaker/icebreaker.info @@ -1,8 +1,8 @@ PRGNAM="icebreaker" -VERSION="1.9.7" +VERSION="2.2.1" HOMEPAGE="https://mattdm.org/icebreaker/" -DOWNLOAD="https://mattdm.org/icebreaker/1.9.x/icebreaker-1.9.7.tgz" -MD5SUM="3568ff7e516522182ae9176045d1d125" +DOWNLOAD="https://mattdm.org/icebreaker/2.2.x/icebreaker-2.2.1.tar.xz" +MD5SUM="f920c6440ca47b254a4c18b4740dd526" DOWNLOAD_x86_64="" MD5SUM_x86_64="" REQUIRES=""