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