summaryrefslogtreecommitdiffstats
path: root/games/xroar
diff options
context:
space:
mode:
Diffstat (limited to 'games/xroar')
-rw-r--r--games/xroar/ChangeLog.old24
-rw-r--r--games/xroar/README9
-rw-r--r--games/xroar/README_SBo.txt32
-rw-r--r--games/xroar/doinst.sh10
-rw-r--r--games/xroar/douninst.sh16
-rw-r--r--games/xroar/icons/128.pngbin0 -> 6643 bytes
-rw-r--r--games/xroar/icons/16.pngbin0 -> 284 bytes
-rw-r--r--games/xroar/icons/22.pngbin0 -> 1534 bytes
-rw-r--r--games/xroar/icons/32.pngbin0 -> 368 bytes
-rw-r--r--games/xroar/icons/48.pngbin0 -> 1528 bytes
-rw-r--r--games/xroar/icons/64.pngbin0 -> 3866 bytes
-rw-r--r--games/xroar/slack-desc6
-rw-r--r--games/xroar/xroar.SlackBuild82
-rw-r--r--games/xroar/xroar.info10
-rw-r--r--games/xroar/xroar_coco_ntsc.desktop2
-rw-r--r--games/xroar/xroar_coco_pal.desktop2
-rw-r--r--games/xroar/xroar_d32.desktop2
-rw-r--r--games/xroar/xroar_d64.desktop2
18 files changed, 132 insertions, 65 deletions
diff --git a/games/xroar/ChangeLog.old b/games/xroar/ChangeLog.old
index 8a18244fb1..b4384cc024 100644
--- a/games/xroar/ChangeLog.old
+++ b/games/xroar/ChangeLog.old
@@ -1,3 +1,27 @@
+# 20191130 bkw:
+# - update for 0.35.4
+# - restore the SDL1 build, now that it builds again
+# - remove the possibility of including ROMs in the package, because:
+# - make xroar-roms a required dependency
+
+# 20181201 bkw: update for 0.35.2
+
+# 20180828 bkw:
+# - update for 0.35
+# - build with --without-oss by default, add OSS=yes option
+# - get rid of alsa_first.diff (doesn't apply any more anyway)
+# - add PULSE=no option
+# - move cruft out of here & into ChangeLog.old
+# - SDL 1.x build broke in 0.35, so remove SDL2=no and add SDL2
+# to REQUIRES.
+
+# 20170822 bkw:
+# - update for 0.34.8
+# - add SDL2=no and GTKGLEXT=no options, mostly for my own testing
+# - record build options in slack-desc
+
+# 20170122 bkw: update for 0.34.7
+
# 20161016 bkw:
# - update for 0.34.5
# - move binary to /usr/games
diff --git a/games/xroar/README b/games/xroar/README
index 66ac73893d..35880e4f6a 100644
--- a/games/xroar/README
+++ b/games/xroar/README
@@ -1,13 +1,12 @@
xroar (emulator for 6809-based systems)
-XRoar is a Dragon emulator for Linux, Unix, Mac OS X, GP32, Nintendo
-DS and Windows. Due to hardware similarities, XRoar also emulates the
-Tandy Colour Computer (CoCo) models 1 & 2. For more information on the
-Dragon and CoCo computers, see:
+XRoar emulates the Dragon 32/64; Tandy Colour Computers 1, 2 and 3;
+the Tandy MC-10; and some other similar machines or clones. It runs
+on a wide variety of platforms. For more information on the Dragon and
+CoCo computers, see:
http://en.wikipedia.org/wiki/TRS-80_Color_Computer
http://archive.worldofdragon.org/index.php?title=Main_Page
http://archive.worldofdragon.org/archive/index.php
For optional dependencies and build options, see README_SBo.txt.
-
diff --git a/games/xroar/README_SBo.txt b/games/xroar/README_SBo.txt
index c7ccc12db3..0f685f6196 100644
--- a/games/xroar/README_SBo.txt
+++ b/games/xroar/README_SBo.txt
@@ -1,22 +1,31 @@
+xroar supports multiple audio systems and has two user interfaces,
+gtk2 (using gtkglext) and sdl2 (very bare-bones; no menus). By
+default, both UIs are built, as is support for PulseAudio and plain
+ALSA audio. For most users, these defaults are just fine. If you have
+different needs, read on.
+
Optional Dependencies
=====================
-SDL2 - If this is installed, xroar's alternate "bare-bones" SDL2
- user inteface will be available via the "-ui sdl" option.
-
-jack - if you want to use JACK for audio output, install jack and set
+jack - If you want to use JACK for audio output, install jack and set
JACK=yes in the environment before building xroar. If JACK audio has
x-runs, try 'setcap cap_ipc_lock,cap_sys_nice=ep /usr/games/xroar'.
+ If you don't know what jack is, or why you might want to use it, then
+ you don't want it.
Environment Variables
=====================
+JACK - see above. Default: no.
+
GTKGLEXT - If you have gtkglext installed, but don't want to build
- xroar with it, export GTKGLEXT=no [1] [2].
+ xroar with it, export GTKGLEXT=no [1] [2]. Default: yes.
-SDL2 - If you have SDL2 installed, but don't want to build xroar with
- it, export SDL2=no [2].
+SDL2 - If you don't want to build xroar with SDL2, export SDL2=no [2].
+ This will remove the "-ui sdl" option, which is probably
+ of no consequence since the SDL user interface isn't very
+ featureful. Default: yes.
OSS - use OSS for audio? Default is "no", export OSS="yes" to enable.
Most users won't need this.
@@ -28,9 +37,12 @@ Notes
=====
[1]: Yes, gtkglext is optional, despite being listed in REQUIRES in
- the .info file. There's no "either-or" syntax for REQUIRES, so
- I had to list either gtkglext or SDL2, and the gtkglext UI
- is a lot nicer so it's what most people will want.
+ the .info file. I made it a hard dependency because the SDL user
+ interface has no real GUI features, while the gtkglext UI acts
+ like a proper GUI application. Users who just take the defaults
+ will end up with the usable UI. If you're reading this, you're
+ welcome to ignore the REQUIRES="gtkglext" and build with SDL2
+ only, if you have a reason to want to.
[2]: At least one of SDL2 or gtkglext is required, so you can't build
with SDL2=no GTKGLEXT=no. If you want to be super-pedantic, yes,
diff --git a/games/xroar/doinst.sh b/games/xroar/doinst.sh
index 5fb28930db..2b1fcc9774 100644
--- a/games/xroar/doinst.sh
+++ b/games/xroar/doinst.sh
@@ -1,3 +1,13 @@
if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
+
+if [ -x /usr/bin/install-info ]; then
+ /usr/bin/install-info usr/info/xroar.info.gz usr/info/dir
+fi
diff --git a/games/xroar/douninst.sh b/games/xroar/douninst.sh
new file mode 100644
index 0000000000..bd5d05ef99
--- /dev/null
+++ b/games/xroar/douninst.sh
@@ -0,0 +1,16 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
+
+if [ -x /usr/bin/install-info -a -d usr/info ]; then
+ ( cd usr/info
+ rm -f dir
+ for i in *.info*; do /usr/bin/install-info $i dir 2>/dev/null; done
+ )
+fi
diff --git a/games/xroar/icons/128.png b/games/xroar/icons/128.png
new file mode 100644
index 0000000000..6887dc3e1c
--- /dev/null
+++ b/games/xroar/icons/128.png
Binary files differ
diff --git a/games/xroar/icons/16.png b/games/xroar/icons/16.png
new file mode 100644
index 0000000000..0160623dae
--- /dev/null
+++ b/games/xroar/icons/16.png
Binary files differ
diff --git a/games/xroar/icons/22.png b/games/xroar/icons/22.png
new file mode 100644
index 0000000000..051b55aa8e
--- /dev/null
+++ b/games/xroar/icons/22.png
Binary files differ
diff --git a/games/xroar/icons/32.png b/games/xroar/icons/32.png
new file mode 100644
index 0000000000..e3a866a6e2
--- /dev/null
+++ b/games/xroar/icons/32.png
Binary files differ
diff --git a/games/xroar/icons/48.png b/games/xroar/icons/48.png
new file mode 100644
index 0000000000..b61f8529fe
--- /dev/null
+++ b/games/xroar/icons/48.png
Binary files differ
diff --git a/games/xroar/icons/64.png b/games/xroar/icons/64.png
new file mode 100644
index 0000000000..fae6a8aecd
--- /dev/null
+++ b/games/xroar/icons/64.png
Binary files differ
diff --git a/games/xroar/slack-desc b/games/xroar/slack-desc
index 4a27a9c5ab..4b844ed3a6 100644
--- a/games/xroar/slack-desc
+++ b/games/xroar/slack-desc
@@ -8,9 +8,9 @@
|-----handy-ruler------------------------------------------------------|
xroar: xroar (emulator for 6809-based systems)
xroar:
-xroar: XRoar is a Dragon emulator for Linux, Unix, Mac OS X, GP32, Nintendo
-xroar: DS and Windows. Due to hardware similarities, XRoar also emulates
-xroar: the Tandy Colour Computer (CoCo) models 1 & 2.
+xroar: XRoar emulates the Dragon 32/64; Tandy Colour Computers 1, 2 and 3;
+xroar: the Tandy MC-10; and some other similar machines or clones. It runs
+xroar: on a wide variety of platforms.
xroar:
xroar: This package is built with:
xroar: GtkGLExt: @GTKGLEXT@ | SDL2: @SDL2@ |
diff --git a/games/xroar/xroar.SlackBuild b/games/xroar/xroar.SlackBuild
index d7500948db..422b078b3d 100644
--- a/games/xroar/xroar.SlackBuild
+++ b/games/xroar/xroar.SlackBuild
@@ -2,10 +2,26 @@
# Slackware build script for xroar
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20240314 bkw: update for 1.5.4
+# 20240216 bkw: update for 1.5.3
+# 20230907 bkw: update for 1.4.2
+# - add 22x22 and 64x64 icons.
+# - reword README and slack-desc (use text from the man page).
+
+# 20230308 bkw: BUILD=2, de-uglify douninst.sh.
+# 20230214 bkw: update for 1.3.1
+# 20230109 bkw: update for 1.3
+
+# 20211015 bkw:
+# - update for 0.37.1
+# - new-style icons
+# - doinst.sh installs info file in info dir
+# - douninst.sh removes info file from info dir
+
# 20201025 bkw:
# - update for 0.36.2
# - the SDL 1.x UI is gone. One or the other of SDL2, gtkglext is
@@ -13,34 +29,10 @@
# in which case you get an xroar that has no display at all! Added
# code to the script to prevent this from happening.
-# 20191130 bkw:
-# - update for 0.35.4
-# - restore the SDL1 build, now that it builds again
-# - remove the possibility of including ROMs in the package, because:
-# - make xroar-roms a required dependency
-
-# 20181201 bkw: update for 0.35.2
-
-# 20180828 bkw:
-# - update for 0.35
-# - build with --without-oss by default, add OSS=yes option
-# - get rid of alsa_first.diff (doesn't apply any more anyway)
-# - add PULSE=no option
-# - move cruft out of here & into ChangeLog.old
-# - SDL 1.x build broke in 0.35, so remove SDL2=no and add SDL2
-# to REQUIRES.
-
-# 20170822 bkw:
-# - update for 0.34.8
-# - add SDL2=no and GTKGLEXT=no options, mostly for my own testing
-# - record build options in slack-desc
-
-# 20170122 bkw: update for 0.34.7
-
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=xroar
-VERSION=${VERSION:-0.36.2}
+VERSION=${VERSION:-1.5.4}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -53,9 +45,6 @@ if [ -z "$ARCH" ]; then
esac
fi
-# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
-# the name of the created package would be, and then exit. This information
-# could be useful to other scripts.
if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
exit 0
@@ -137,6 +126,7 @@ CXXFLAGS="$SLKCFLAGS" \
--localstatedir=/var \
--mandir=/usr/man \
--docdir=/usr/doc/$PRGNAM-$VERSION \
+ --infodir=/usr/info \
--build=$ARCH-slackware-linux
make
@@ -146,7 +136,10 @@ strip $PKG/usr/games/$PRGNAM
# reset these for use in the slack-desc
SDL2=no; JACK=no; GTKGLEXT=no; PULSE=no; OSS=no
-# actually examine the binary to figure out build options.
+# actually examine the binary to figure out build options. this may
+# seem like overkill, but it's very handy when updating to new xroar
+# versions (if the slack-desc doesn't match the environment, something
+# has changed in xroar and this script needs fixing).
ldd $PKG/usr/games/$PRGNAM > ldd.tmp
grep -q libSDL2 ldd.tmp && SDL2=yes
grep -q libjack ldd.tmp && JACK=yes
@@ -161,21 +154,29 @@ sed '1s,\<1\>,6,' \
| gzip -9c > $PKG/usr/man/man6/$PRGNAM.6.gz
rm -rf $PKG/usr/man/man1
-mv $PKG/usr/share/info $PKG/usr/info
-rm -rf $PKG/usr/share
rm -f $PKG/usr/info/dir
gzip -9 $PKG/usr/info/*.info*
# include empty ROM dir
mkdir -p $PKG/usr/share/xroar/roms
-# Icon taken from Fedora package here:
-# ftp://mirror.switch.ch/pool/3/mirror/rpmfusion/free/fedora/updates/8/i386/xroar-0.21-2.fc8.i386.rpm
-# Current versions of xroar include windows and mac icons that are larger,
-# but they don't include the word 'xroar' (just the X-shaped graphic), so
-# I'm sticking with the old Fedora icon.
+# 20211015 bkw: Icons converted from src/macosx/xroar.icns with
+# icns2png from the libicns package. I really liked the old Fedora
+# icon, with the colorful XROAR at the bottom, but it only existed
+# as a 32x32 PNG, which is smaller than a postage stamp on most
+# modern displays and doesn't scale up nicely. Besides which, these
+# are upstream's official icons.
+# 20230907 bkw: added 22x22 and 64x64 icons.
+for i in $CWD/icons/*.png; do
+ px=$( basename $i | cut -d. -f1 )
+ size=${px}x${px}
+ dir=$PKG/usr/share/icons/hicolor/$size/apps
+ mkdir -p $dir
+ cat $i > $dir/$PRGNAM.png
+done
+
mkdir $PKG/usr/share/pixmaps
-cat $CWD/$PRGNAM.png > $PKG/usr/share/pixmaps/$PRGNAM.png
+ln -s ../icons/hicolor/48x48/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
mkdir $PKG/usr/share/applications
cp $CWD/*.desktop $PKG/usr/share/applications
@@ -200,5 +201,10 @@ sed -e "s,@JACK@,$JACK," \
$CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
+# 20211015 bkw: douninst.sh removes the XRoar entry from the info
+# directory, and the Emulators section if XRoar was the only entry
+# there.
+cat $CWD/douninst.sh > $PKG/install/douninst.sh
+
cd $PKG
/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/xroar/xroar.info b/games/xroar/xroar.info
index 88d6b3a35a..4c83eafd13 100644
--- a/games/xroar/xroar.info
+++ b/games/xroar/xroar.info
@@ -1,10 +1,10 @@
PRGNAM="xroar"
-VERSION="0.36.2"
-HOMEPAGE="http://www.6809.org.uk/dragon/xroar.shtml"
-DOWNLOAD="http://www.6809.org.uk/xroar/dl/xroar-0.36.2.tar.gz"
-MD5SUM="c1bcc681508c5e97c335c7d71b2abd4b"
+VERSION="1.5.4"
+HOMEPAGE="https://www.6809.org.uk/dragon/xroar.shtml"
+DOWNLOAD="https://www.6809.org.uk/xroar/dl/xroar-1.5.4.tar.gz"
+MD5SUM="6f00edbe9d24226d93b8c36e3dd873b1"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="gtkglext xroar-roms"
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/xroar/xroar_coco_ntsc.desktop b/games/xroar/xroar_coco_ntsc.desktop
index 60424225b7..bf60506234 100644
--- a/games/xroar/xroar_coco_ntsc.desktop
+++ b/games/xroar/xroar_coco_ntsc.desktop
@@ -1,7 +1,7 @@
[Desktop Entry]
Name=XRoar CoCo (NTSC)
Type=Application
-Exec=xroar -ntsc -machine cocous
+Exec=/usr/games/xroar -ntsc -machine cocous
Icon=xroar
Terminal=false
Categories=Game;Emulator;
diff --git a/games/xroar/xroar_coco_pal.desktop b/games/xroar/xroar_coco_pal.desktop
index 0e2eb8ddf0..27491aa503 100644
--- a/games/xroar/xroar_coco_pal.desktop
+++ b/games/xroar/xroar_coco_pal.desktop
@@ -1,7 +1,7 @@
[Desktop Entry]
Name=XRoar CoCo (PAL)
Type=Application
-Exec=xroar -pal -machine coco
+Exec=/usr/games/xroar -pal -machine coco
Icon=xroar
Terminal=false
Categories=Game;Emulator;
diff --git a/games/xroar/xroar_d32.desktop b/games/xroar/xroar_d32.desktop
index 11fa628ea4..5e6baaf1db 100644
--- a/games/xroar/xroar_d32.desktop
+++ b/games/xroar/xroar_d32.desktop
@@ -1,7 +1,7 @@
[Desktop Entry]
Name=XRoar Dragon32
Type=Application
-Exec=xroar -machine dragon32
+Exec=/usr/games/xroar -machine dragon32
Icon=xroar
Terminal=false
Categories=Game;Emulator;
diff --git a/games/xroar/xroar_d64.desktop b/games/xroar/xroar_d64.desktop
index 1c838df74b..16c19bb56d 100644
--- a/games/xroar/xroar_d64.desktop
+++ b/games/xroar/xroar_d64.desktop
@@ -1,7 +1,7 @@
[Desktop Entry]
Name=XRoar Dragon64
Type=Application
-Exec=xroar -machine dragon64
+Exec=/usr/games/xroar -machine dragon64
Icon=xroar
Terminal=false
Categories=Game;Emulator;