diff options
Diffstat (limited to 'README')
-rw-r--r-- | README | 101 |
1 files changed, 101 insertions, 0 deletions
@@ -0,0 +1,101 @@ +bsd-games-extra - more games ported from *BSD. + +This package is meant to have all the games from BSD that are missing +from Slackware's bsd-games. These are: + +boggle +bs +cgram +ching +colorbars +dab +dm +grdc +hack +hals_end +larn +paranoia +rogue +tetris + +boggle, dm, and tetris are included in the Linux bsd-games-2.13 source +but are not built by Slackware's bsd-games.SlackBuild. + +hack, larn, paranoia, and rogue were removed from the Linux port of +bsd-games for license reasons. + +The others were never included in the Linux bsd-games source. + +Sources: + +bs, grdc, hack from DragonFlyBSD git: +http://gitweb.dragonflybsd.org/dragonfly.git/tree/v4.0.3:/games + +boggle cgram ching colorbars dab dm hals_end larn rogue tetris are +from NetBSD: +http://ftp.netbsd.org/pub/NetBSD/NetBSD-current/tar_files/src/games.tar.gz + +paranoia isn't actually a BSD game (it came from a magazine), but +it used to be distributed with bsd-games-1.3. I grabbed a copy here: +http://web.mit.edu/games/src/bsd-games/paranoia/ + +Building: + +You need GNU make and the Slackware pmake package (which is an old and +unmaintained port of Berkeley make). Run "make" in the top-level dir, +which will run pmake for each subdir. "make install" will install +everything, "make install DESTDIR=/somewhere" is useful for packagers. + +If you're not on Slackware, you probably will need MANDIR=/usr/share/man +on the make command line. Also, if your Berkeley make is called bmake, +say PMAKE=bmake (good luck). + +License: + +This README and the top-level Makefile are released under the WTFPL, +so do WTF you want with them. include/bsdcompat.h is mostly copied from +either libbsd's headers, or NetBSD source. The games are mostly licensed +with BSD licenses (big surprise there), but see the games themselves +for license details (comments in the source, mostly). + +Notes: + +I made no gameplay changes, and only two cosmetic changes: + +- larn was missing the player's @ symbol. In the ancient versions + of larn (posted to usenet, ported to DOS, Atari ST, etc), the @ + was there, like most roguelike games use. The code that printed the @ + started causing a segfault on UNIX at some point, so someone removed it, + and just let the terminal's cursor indicate the player's position. I + put the @ back and fixed the segfaulting bug because this is how + the game's original author intended it to be. + +- tetris was using black as a color, for the borders and for one of + the pieces. This is no good in the Linux console, or default + settings for Konsole or xfce4-terminal, since those all have black + backgrounds. xterm and rxvt still default to white, but I'm assuming + anyone old-school enough to use xterm or rxvt for playing Tetris is + going to already know how to change the bg color. + +I took a different approach than the bsd-games package uses. Instead of +rewriting the Makefiles from scratch for GNU make, or using autotools, +I used the BSD Makefiles, with as few modifications as I could get +away with. You can grep for my initials (bkw) to find my changes to the +Makefiles and sources. + +Functions like strlcpy() are from libbsd, but trying to #include anything +from /usr/include/bsd just led to breakage, so the neccessary BSD-flavored +macros and prototypes are in include/bsdcompat.h. + +For the most part, I stuck with NetBSD sources, where available. The games +ported from DragonFlyBSD mostly don't exist in NetBSD (the exception being +hack; the NetBSD version was giving me fits so I used the DragonFlyBSD +one instead). + +A few of these are installed setgid games. YMMV on whether that's an +acceptable security risk, but they were designed to work that way. + +If you're not familiar with BSD-style nroff documentation, it might +help to know how to read the rogue manual: + +nroff -me /usr/doc/bsd-games-extra-20150209/rogue.me | less -R |