From ced5f851e28d3fdb521dc0f83f7c662a24c80665 Mon Sep 17 00:00:00 2001 From: "B. Watson" Date: Wed, 27 Oct 2021 01:17:26 -0400 Subject: games/pom1: New-style icons. Signed-off-by: B. Watson Signed-off-by: Willy Sudiarto Raharjo --- games/pom1/README | 2 + games/pom1/doinst.sh | 5 + games/pom1/pom1.6 | 252 +++++++++++++++++++++++++++++++++++++++++++++ games/pom1/pom1.SlackBuild | 54 +++++++--- games/pom1/pom1.info | 2 +- games/pom1/pom1.rst | 97 +++++++++++++++++ 6 files changed, 394 insertions(+), 18 deletions(-) create mode 100644 games/pom1/pom1.6 create mode 100644 games/pom1/pom1.rst (limited to 'games/pom1') diff --git a/games/pom1/README b/games/pom1/README index b6c39ed7ee..300201e80c 100644 --- a/games/pom1/README +++ b/games/pom1/README @@ -1,2 +1,4 @@ +pom1 (Apple I emulator) + Pom1 is an Apple 1 emulator ported to C and Android from the original Java version. The port to C uses SDL and works on most platforms. diff --git a/games/pom1/doinst.sh b/games/pom1/doinst.sh index 4e8ba7071d..3e5691a052 100644 --- a/games/pom1/doinst.sh +++ b/games/pom1/doinst.sh @@ -2,3 +2,8 @@ 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 diff --git a/games/pom1/pom1.6 b/games/pom1/pom1.6 new file mode 100644 index 0000000000..861afe619e --- /dev/null +++ b/games/pom1/pom1.6 @@ -0,0 +1,252 @@ +.\" Man page generated from reStructuredText. +. +. +.nr rst2man-indent-level 0 +. +.de1 rstReportMargin +\\$1 \\n[an-margin] +level \\n[rst2man-indent-level] +level margin: \\n[rst2man-indent\\n[rst2man-indent-level]] +- +\\n[rst2man-indent0] +\\n[rst2man-indent1] +\\n[rst2man-indent2] +.. +.de1 INDENT +.\" .rstReportMargin pre: +. RS \\$1 +. nr rst2man-indent\\n[rst2man-indent-level] \\n[an-margin] +. nr rst2man-indent-level +1 +.\" .rstReportMargin post: +.. +.de UNINDENT +. RE +.\" indent \\n[an-margin] +.\" old: \\n[rst2man-indent\\n[rst2man-indent-level]] +.nr rst2man-indent-level -1 +.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]] +.in \\n[rst2man-indent\\n[rst2man-indent-level]]u +.. +.TH "POM1" 6 "2021-10-27" "1.0.0" "SlackBuilds.org" +.SH NAME +pom1 \- Apple I emulator +.\" RST source for pom1(6) man page. Convert with: +. +.\" rst2man.py pom1.rst > pom1.6 +. +.\" rst2man.py comes from the SBo development/docutils package. +. +.SH SYNOPSIS +.sp +pom1 [\fI\-options\fP] +.SH DESCRIPTION +.sp +\fBpom1\fP is an Apple I emulator. +.sp +The Apple I was Apple\(aqs first desktop computer, released in 1976. +.SH OPTIONS +.sp +Options can be set from the config file, on the command line, or via +Control key combinations while running. At exit, \fBpom1\fP writes the +current config back to the config file. +.TS +center; +|l|l|l|l|. +_ +T{ +Option +T} T{ +Key +T} T{ +Command Line +T} T{ +Description +T} +_ +T{ +Load Memory +T} T{ +^L +T} T{ +T} T{ +Load memory from a binary or ascii file. +T} +_ +T{ +Save Memory +T} T{ +^S +T} T{ +T} T{ +Save memory to a binary or ascii file. +T} +_ +T{ +Quit +T} T{ +^Q +T} T{ +T} T{ +Quit the emulator. +T} +_ +T{ +Reset +T} T{ +^R +T} T{ +T} T{ +Soft reset the emulator. +T} +_ +T{ +Hard Reset +T} T{ +^H +T} T{ +T} T{ +Hard reset the emulator. +T} +_ +T{ +Pixel Size +T} T{ +^P +T} T{ +\fB\-pixelsize\fP \fIn\fP +T} T{ +Set the pixel size (1 or 2). +T} +_ +T{ +Scanlines +T} T{ +^N +T} T{ +\fB\-scanlines\fP +T} T{ +Turn scanlines on or off (pixel size 2 only). +T} +_ +T{ +Terminal Speed +T} T{ +^T +T} T{ +\fB\-terminalspeed\fP \fIn\fP +T} T{ +Set the terminal speed (Range: 1 \- 120). +T} +_ +T{ +RAM 8K +T} T{ +^E +T} T{ +\fB\-ram8k\fP +T} T{ +Use only 8KB of RAM or entire 64KB of RAM. +T} +_ +T{ +Write In ROM +T} T{ +^W +T} T{ +\fB\-writeinrom\fP +T} T{ +Allow writing data in ROM or not. +T} +_ +T{ +IRQ/BRK Vector +T} T{ +^V +T} T{ +T} T{ +Set address of interrupt vector. +T} +_ +T{ +Fullscreen +T} T{ +^F +T} T{ +\fB\-fullscreen\fP +T} T{ +Switch to fullscreen or window. +T} +_ +T{ +Blink Cursor +T} T{ +^B +T} T{ +\fB\-blinkcursor\fP +T} T{ +Set the cursor to blink or not. +T} +_ +T{ +Cursor Block +T} T{ +^C +T} T{ +\fB\-blockcursor\fP +T} T{ +Set the cursor to block or @. +T} +_ +T{ +Show About +T} T{ +^A +T} T{ +T} T{ +Show version and copyright information. +T} +_ +T{ +ROM Directory +T} T{ +T} T{ +\fB\-romdir\fP \fIdir\fP +T} T{ +Look here for ROMS (see \fBFILES\fP). +T} +_ +.TE +.SH FILES +.INDENT 0.0 +.TP +.B \fB~/.pom1/pom1.cfg\fP +Read at startup and overwritten at exit. Contains the state of options that +can be set from the command line (\fB\-pixelsize\fP, etc). If this file is +missing, it will be created. +.TP +.B \fB/usr/share/games/pom1/roms\fP +Default location for the ROM images: \fBbasic.rom\fP, \fBcharmap.rom\fP, and \fBmonitor.rom\fP\&. +.UNINDENT +.SH ENVIRONMENT +.INDENT 0.0 +.TP +.B \fBPOM1ROMDIR\fP +If set, overrides the built\-in path to the ROM images. Same as the command\-line +option \fB\-romdir\fP\&. +.UNINDENT +.SH COPYRIGHT +.sp +See the file /usr/doc/pom1\-1.0.0/COPYING for license information. +.SH AUTHORS +.sp +\fBpom1\fP was written by John D. Corrado and Verhille Arnaud. +.sp +This man page written for the SlackBuilds.org project +by B. Watson, and is licensed under the WTFPL. +.SH SEE ALSO +.sp +The \fBpom1\fP homepage: \fI\%http://pom1.sourceforge.net/\fP +.sp +Wikipedia\(aqs Apple I entry: \fI\%https://en.wikipedia.org/wiki/Apple_I\fP +.\" Generated by docutils manpage writer. +. diff --git a/games/pom1/pom1.SlackBuild b/games/pom1/pom1.SlackBuild index a1000b5427..7fe6c77e40 100644 --- a/games/pom1/pom1.SlackBuild +++ b/games/pom1/pom1.SlackBuild @@ -7,11 +7,18 @@ # Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ # for details. +# 20211027 bkw: BUILD=2 +# - new-style icons. +# - binary in /usr/games. +# - get rid of silly wrapper script. +# - /usr/share/pom1 => /usr/share/games/pom1. +# - man page. + cd $(dirname $0) ; CWD=$(pwd) PRGNAM=pom1 VERSION=${VERSION:-1.0.0} -BUILD=${BUILD:-1} +BUILD=${BUILD:-2} TAG=${TAG:-_SBo} PKGTYPE=${PKGTYPE:-tgz} @@ -23,9 +30,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 @@ -58,18 +62,23 @@ rm -rf $PRGNAM-$VERSION tar xvf $CWD/$PRGNAM-$VERSION.tar.gz cd $PRGNAM-$VERSION chown -R root:root . -find -L . \ - \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \ - -exec chmod 755 {} \; -o \ - \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \ - -exec chmod 644 {} \; +find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \ + \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+ + +sed -i -e 's/Emulator;/&System;/' \ + -e 's,Exec=,&/usr/games/,' \ + src/$PRGNAM.desktop.in -sed -i 's/Emulator;/&System;/' src/$PRGNAM.desktop.in +# 20211027 bkw: we don't need a wrapper script that just sets one +# environment variable and calls the real binary, when we can +# set the default in the code. +sed -i '/setRomDirectory/s,"roms","/usr/share/games/pom1/roms",' src/main.c CFLAGS="$SLKCFLAGS" \ CXXFLAGS="$SLKCFLAGS" \ ./configure \ --prefix=/usr \ + --bindir=/usr/games \ --libdir=/usr/lib${LIBDIRSUFFIX} \ --sysconfdir=/etc \ --localstatedir=/var \ @@ -80,24 +89,35 @@ CXXFLAGS="$SLKCFLAGS" \ make make install-strip DESTDIR=$PKG -mv $PKG/usr/share/icons $PKG/usr/share/pixmaps -mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION +rm -rf $PKG/usr/share/icons +mkdir -p $PKG/usr/share/games +mv $PKG/usr/share/$PRGNAM $PKG/usr/share/games/$PRGNAM + +for px in 16 32 48 64 128; do + size=${px}x${px} + dir=$PKG/usr/share/icons/hicolor/$size/apps + mkdir -p $dir + convert -resize $size $CWD/$PRGNAM.png $dir/$PRGNAM.png +done + +mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION $PKG/usr/share/pixmaps +ln -s ../icons/hicolor/48x48/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png # Why is there a fricken --docdir option when every configure # script ignores it?! mv $PKG/usr/share/doc/$PRGNAM/* $PKG/usr/doc/$PRGNAM-$VERSION rm -rf $PKG/usr/share/doc +# man page written by SlackBuild author. +mkdir -p $PKG/usr/man/man6 +gzip -9c < $CWD/$PRGNAM.6 > $PKG/usr/man/man6/$PRGNAM.6.gz + # Icon created by Creative Nerds, downloaded from: # http://www.iconarchive.com/show/wooden-social-icons-by-creativenerds/apple-icon.html mkdir -p $PKG/usr/share/pixmaps cat $CWD/$PRGNAM.png > $PKG/usr/share/pixmaps/$PRGNAM.png -# I prefer not to clutter /usr/bin with binaries you're not supposed -# to actually ever run, so: -mkdir -p $PKG/usr/libexec -mv $PKG/usr/bin/$PRGNAM-$VERSION $PKG/usr/libexec -sed -i "s,^$PRGNAM-$VERSION,/usr/libexec/&," $PKG/usr/bin/$PRGNAM +mv $PKG/usr/games/$PRGNAM-$VERSION $PKG/usr/games/$PRGNAM cp -a COPYING $PKG/usr/doc/$PRGNAM-$VERSION cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild diff --git a/games/pom1/pom1.info b/games/pom1/pom1.info index 0e4e757e1b..277426b455 100644 --- a/games/pom1/pom1.info +++ b/games/pom1/pom1.info @@ -1,7 +1,7 @@ PRGNAM="pom1" VERSION="1.0.0" HOMEPAGE="http://pom1.sourceforge.net/" -DOWNLOAD="http://downloads.sourceforge.net/project/pom1/pom1/1.0.0/pom1-1.0.0.tar.gz" +DOWNLOAD="https://downloads.sourceforge.net/project/pom1/pom1/1.0.0/pom1-1.0.0.tar.gz" MD5SUM="fbea72f26ab9f1771e8171021406b194" DOWNLOAD_x86_64="" MD5SUM_x86_64="" diff --git a/games/pom1/pom1.rst b/games/pom1/pom1.rst new file mode 100644 index 0000000000..5c3b28d929 --- /dev/null +++ b/games/pom1/pom1.rst @@ -0,0 +1,97 @@ +.. RST source for pom1(6) man page. Convert with: +.. rst2man.py pom1.rst > pom1.6 +.. rst2man.py comes from the SBo development/docutils package. + +.. |version| replace:: 1.0.0 +.. |date| date:: + +==== +pom1 +==== + +---------------- +Apple I emulator +---------------- + +:Manual section: 6 +:Manual group: SlackBuilds.org +:Date: |date| +:Version: |version| + +SYNOPSIS +======== + +pom1 [*-options*] + +DESCRIPTION +=========== + +**pom1** is an Apple I emulator. + +The Apple I was Apple's first desktop computer, released in 1976. + +OPTIONS +======= + +Options can be set from the config file, on the command line, or via +Control key combinations while running. At exit, **pom1** writes the +current config back to the config file. + +============== === ====================== ========================================== +Option Key Command Line Description +============== === ====================== ========================================== +Load Memory ^L Load memory from a binary or ascii file. +Save Memory ^S Save memory to a binary or ascii file. +Quit ^Q Quit the emulator. +Reset ^R Soft reset the emulator. +Hard Reset ^H Hard reset the emulator. +Pixel Size ^P **-pixelsize** *n* Set the pixel size (1 or 2). +Scanlines ^N **-scanlines** Turn scanlines on or off (pixel size 2 only). +Terminal Speed ^T **-terminalspeed** *n* Set the terminal speed (Range: 1 - 120). +RAM 8K ^E **-ram8k** Use only 8KB of RAM or entire 64KB of RAM. +Write In ROM ^W **-writeinrom** Allow writing data in ROM or not. +IRQ/BRK Vector ^V Set address of interrupt vector. +Fullscreen ^F **-fullscreen** Switch to fullscreen or window. +Blink Cursor ^B **-blinkcursor** Set the cursor to blink or not. +Cursor Block ^C **-blockcursor** Set the cursor to block or \@. +Show About ^A Show version and copyright information. +ROM Directory **-romdir** *dir* Look here for ROMS (see **FILES**). +============== === ====================== ========================================== + +FILES +===== + +**~/.pom1/pom1.cfg** + Read at startup and overwritten at exit. Contains the state of options that + can be set from the command line (**-pixelsize**, etc). If this file is + missing, it will be created. + +**/usr/share/games/pom1/roms** + Default location for the ROM images: **basic.rom**, **charmap.rom**, and **monitor.rom**. + +ENVIRONMENT +=========== + +**POM1ROMDIR** + If set, overrides the built-in path to the ROM images. Same as the command-line + option **-romdir**. + +COPYRIGHT +========= + +See the file /usr/doc/pom1-|version|/COPYING for license information. + +AUTHORS +======= + +**pom1** was written by John D. Corrado and Verhille Arnaud. + +This man page written for the SlackBuilds.org project +by B. Watson, and is licensed under the WTFPL. + +SEE ALSO +======== + +The **pom1** homepage: http://pom1.sourceforge.net/ + +Wikipedia's Apple I entry: https://en.wikipedia.org/wiki/Apple_I -- cgit v1.2.3