aboutsummaryrefslogtreecommitdiff
path: root/games/icebreaker
diff options
context:
space:
mode:
authorB. Watson <urchlay@slackware.uk>2023-01-07 15:04:44 -0500
committerWilly Sudiarto Raharjo <willysr@slackbuilds.org>2023-01-14 08:50:17 +0700
commit341af9a1338e7ebe3f6a48e89c4ce3874a7b8a5c (patch)
tree76f7f33857fc1028a47dcd0f08da12316290ef63 /games/icebreaker
parentfc974592d714e178fb3711e34c4023b293149544 (diff)
games/icebreaker: Updated for version 2.2.1.
Signed-off-by: B. Watson <urchlay@slackware.uk> Signed-off-by: Willy Sudiarto Raharjo <willysr@slackbuilds.org>
Diffstat (limited to 'games/icebreaker')
-rw-r--r--games/icebreaker/README6
-rw-r--r--games/icebreaker/icebreaker.SlackBuild43
-rw-r--r--games/icebreaker/icebreaker.desktop6
-rw-r--r--games/icebreaker/icebreaker.info6
4 files changed, 42 insertions, 19 deletions
diff --git a/games/icebreaker/README b/games/icebreaker/README
index 6b85aa885eae1..11a7c5b304920 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 89a0c94db4ef6..c9c939155b8e3 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 bbdc6de6da868..116f82fd11d28 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 e044e207af72d..2899fdee0a68a 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=""