diff options
author | V3n3RiX <venerix@redcorelinux.org> | 2020-01-15 15:51:32 +0000 |
---|---|---|
committer | V3n3RiX <venerix@redcorelinux.org> | 2020-01-15 15:51:32 +0000 |
commit | 21435953e16cda318a82334ddbadb3b5c36d9ea7 (patch) | |
tree | e1810a4b135afce04b34862ef0fab2bfaeb8aeca /games-roguelike/nethack | |
parent | 7bc9c63c9da678a7e6fceb095d56c634afd22c56 (diff) |
gentoo resync : 15.01.2020
Diffstat (limited to 'games-roguelike/nethack')
-rw-r--r-- | games-roguelike/nethack/Manifest | 7 | ||||
-rw-r--r-- | games-roguelike/nethack/files/nethack-3.6.3-hint-tty | 19 | ||||
-rw-r--r-- | games-roguelike/nethack/files/nethack-3.6.3-hint-x11 | 23 | ||||
-rw-r--r-- | games-roguelike/nethack/files/nethack-3.6.3-recover.patch | 132 | ||||
-rw-r--r-- | games-roguelike/nethack/metadata.xml | 8 | ||||
-rw-r--r-- | games-roguelike/nethack/nethack-3.6.3.ebuild | 129 |
6 files changed, 311 insertions, 7 deletions
diff --git a/games-roguelike/nethack/Manifest b/games-roguelike/nethack/Manifest index c81071ad0342..8fa3674a443b 100644 --- a/games-roguelike/nethack/Manifest +++ b/games-roguelike/nethack/Manifest @@ -4,8 +4,13 @@ AUX nethack-3.6.0-nethackrc 2458 BLAKE2B a051f476ffed8fb1598c65f243df3aa412a4bb3 AUX nethack-3.6.0-recover.patch 3238 BLAKE2B 648e7ab4210efd8465477e6e576f9f0b972743c7ce1dd651661fe1b0e88fc774d613acb97941a7acdf2becd6bd2055c84f3eb2bb5c94e0eb8522b761fbf38831 SHA512 613b33757c1dabf897da77b53a26eb57318387462ff4d34f06411b2aef06d812c730db0ec4fb15b2895266bd914bd8ac11fa91334430834541b8d465c2a484ec AUX nethack-3.6.0-x11-color.patch 6828 BLAKE2B 4e8f502b8180e042fed9e829d7bdd3c8a89aa679929aa22e209ae85a9e94ed25c6463b378ae1f9a1649bace9020b638279805f2ac2b846b7434fefc2187514b4 SHA512 074fb2db8962f918f605404d2810bc78c27ea461255bc6ad26ad24bbe65346b27868d9558a9486b334be29bbcc6896a95fafa2e4446045f316201754ea4bdab8 AUX nethack-3.6.1-recover.patch 3241 BLAKE2B e3f00fc47dc3751c1df93019ea57afd9346ff5cd463d046c03d4fea8b3ea5ea1e6a1080f8910d85dc28892b45e1f335875877dd1a33ca3321b65e19e8630565d SHA512 9ae09828882296015bf776d272b6874e70052d01a5fe2a8a261472f985fb89c0b4d309192262febb7a6848d401d9c1acb9c8e7ff17f45ce41d2185a09ea7dc82 +AUX nethack-3.6.3-hint-tty 266 BLAKE2B b9c3babf39ec3e7a8c5bfaa0efc9da9f91d7a6d31702100de04d93878563d07e8dded475a5f044e251b47404b22a00744f4e28d83e71743013cfe823dd699fe1 SHA512 7aa224680622a1c86ca2fe14aaf48dd202a0104aae108767494a822b29ae110c2b8489234622b1da8e9eafca30b2ccbbec7a8b2dec5d53f44ef21b303daa8c89 +AUX nethack-3.6.3-hint-x11 420 BLAKE2B 42d2681cd36a0bdb81a1d4c61c7be69c4fe85b43daf9e3ad28ed0a867a8e4dcb684fafe4125d4e9d4f7176274bc2def4e83bc086a523ab2d99ed89699b494dcb SHA512 44f48a5f7b5302b9e1deaf5449b3dc67ee59b1eaca14cace5f699cffa17b92f1dbf0d1793ae31dfa0d1ebc77c65ab04d67b3988fd1f934d3ed5620ae2aaeaf21 +AUX nethack-3.6.3-recover.patch 3810 BLAKE2B c9e046063bf86fea39e48a3e849d9613b43233f0824ce69c4e3ca2a7410fef5f20b703d2bf64c1615fb8ecf0950319b4c314a2648f0e289b2ae23af92fa92bf9 SHA512 71c841ad447c05759e1ab8beaa823c8021a1f0693c2a7a546eed64820d79fb2d0f9345ecbdec4e64df18a3fdb18b4d09820072e517ab142c279bcc39bbe914ef +DIST nethack-3.6.3.tar.gz 5568657 BLAKE2B f0aa12a27fdf5005f57dcc802af88939b8460cfcfea3dc4d262b15a2807376ed434233dfa85ae0bfd60e50ad5a51ff4b060b5063e393d5859bac1b98364b5359 SHA512 38bc6140b12188397539f28528dd8e34364fb7efeb42dbe36d86fea6cc473e292b7f47fba01db19cf7641414dee86092e33deb3b074afa0e8b811e71be71e1d1 DIST nethack-360-src.tgz 4261282 BLAKE2B 7be22b8bdc7b5124418fa904aa3776d77440f67ec18782b878e037b989a18092ed88ca192224c7bc1eaa3cb438823188035c3e6d2aa85d13a7aa1e86c8527d32 SHA512 92370a3c60a4f6861b9c0f1e1320fc23d91cedc1615d0d09e06a0ee3e13c9c8c0cd931389bfd7a25845ed07ef966d19d9e46e77ae07084a941685dc67f49c813 DIST nethack-361-src.tgz 4640769 BLAKE2B 3793a753e4012df64335e7e7ec60284de206012d5bb5d30a7ccfb458e456818f30dd0b4bfa9c41b1691bd01ee6aec2e44b57327586f0c9d76a573bf4c9bb00b1 SHA512 bd6e36c163f0d85e1ab1fc659464696b5a02c3864a800ad47e047fdc4a35fff4ef7dd28a9b071fa46f7f67fa45c97fdc77bc1f2bdbad80cc02950d73731d9c30 EBUILD nethack-3.6.0-r3.ebuild 3987 BLAKE2B 1b7f6568c53ed95ee81890e3f3c4230e5711dcce7f9e5009ce682448f8e4bbab253a256eca0dd8e24c9c4df0f107967640714968df1617bd586cb07eeffbce72 SHA512 cfec956fa77c8c56248463381cf1af9aeb53b37387744e34d647a177608644bcf6dfbd165de008f89ee1d992c6518c0345a5d84f8060b367c1c5fe7fccfab2b9 EBUILD nethack-3.6.1.ebuild 4334 BLAKE2B b32b9c7bf703753bb828abbc1df677af5a126c079f8a9250298c9ab8b030ca3d02c573cfc8ddbf04ad30eccc26430286b7da37a0ef99f4b87e79ebc828422e66 SHA512 c849bd7811bd6f4109857c7993748283b275fc3154355f5819686fae63e7fab02be28d4d8104014e10b9fc464f6850eec208507e95c940ac92fd831ed19afbba -MISC metadata.xml 545 BLAKE2B a29d97fd41c3cce54fa206a2be25296be467499011ed128ed20ed9dcb99efe9fd429fd816fccd07805065831c348ee6479c93ad1e0bba2f98c5b6b50b738ee73 SHA512 30c9a569c25853311dd579749d4193f8a1a45c5a5dd0e7899c2b3c63a39718c0ff8a4633620fdcbb3964e714b62718bfd4089c7438e5707f24457b6ace4dc783 +EBUILD nethack-3.6.3.ebuild 4366 BLAKE2B da085c940f6fad21fd24593a721aecc6dddd29c331bbf84b56189d487b861337183e99a250cc407b92e1c92588b364465e5a50f5e748f2fd07197ec0bcd863b2 SHA512 6f7acb9808e1fb8c16ba21c8f873f2cff404277e555b500cf4588b114befc10c3f1f13ed31d033ffec05541608ae2314570634eda2ed01c968eb99f73f5aaa2d +MISC metadata.xml 439 BLAKE2B fb558984d37498f09fa3d679d226456bbccc0e42682db97b419f61bfcd03bade592518a451e5495721d84f7c69f03d5849ff4db77b2aa0b67e32f12b3c454b2e SHA512 5107cc3ae592182e800e751977d869fa59b551bc133254be4cdf4f5d6a6f9e9d386d3f9fef31d96e59e7c3882c15e4c85a085af52c9ebc8c30096825f3a87237 diff --git a/games-roguelike/nethack/files/nethack-3.6.3-hint-tty b/games-roguelike/nethack/files/nethack-3.6.3-hint-tty new file mode 100644 index 000000000000..626db3f1f7e0 --- /dev/null +++ b/games-roguelike/nethack/files/nethack-3.6.3-hint-tty @@ -0,0 +1,19 @@ +#-PRE + +LINK=$(CC) + +WINSRC = $(WINTTYSRC) +WINOBJ = $(WINTTYOBJ) +WINLIB = $(WINTTYLIB) + +GAMEPERM = 02755 +VARDIRPERM = 0770 +VARFILEPERM = 0660 +CHOWN = true +CHGRP = true + + +#-POST + +# needed for external pager, bug #57410 +DATNODLB = $(VARDATND) license symbols $(DATHELP) diff --git a/games-roguelike/nethack/files/nethack-3.6.3-hint-x11 b/games-roguelike/nethack/files/nethack-3.6.3-hint-x11 new file mode 100644 index 000000000000..b026cea976cc --- /dev/null +++ b/games-roguelike/nethack/files/nethack-3.6.3-hint-x11 @@ -0,0 +1,23 @@ +#-PRE + +LINK=$(CC) + +VARDATND = x11tiles NetHack.ad pet_mark.xbm pilemark.xbm rip.xpm + +WINSRC = $(WINTTYSRC) $(WINX11SRC) +WINOBJ = $(WINTTYOBJ) $(WINX11OBJ) +WINLIB = $(WINTTYLIB) $(WINX11LIB) + +GAMEPERM = 02755 +VARDIRPERM = 0770 +VARFILEPERM = 0660 +CHOWN = true +CHGRP = true + + +#-POST + +# needed for external pager, bug #57410 +DATNODLB = $(VARDATND) license symbols $(DATHELP) + +WINX11LIB = -lXaw -lXmu -lXext -lXt -lX11 -lXpm diff --git a/games-roguelike/nethack/files/nethack-3.6.3-recover.patch b/games-roguelike/nethack/files/nethack-3.6.3-recover.patch new file mode 100644 index 000000000000..7abcaca52b7a --- /dev/null +++ b/games-roguelike/nethack/files/nethack-3.6.3-recover.patch @@ -0,0 +1,132 @@ +From d8878eddd04cb986d57cc721d719670dc7f4d156 Mon Sep 17 00:00:00 2001 +From: Stefan Strogin <steils@gentoo.org> +Date: Tue, 17 Dec 2019 20:20:52 +0200 +Subject: [PATCH] Rename manpage from recover to recover-nethack + +Based on the patch by Luis Ressel from https://bugs.gentoo.org/203556 + +Upstream-Status: Inappropriate [Gentoo-specific] +Signed-off-by: Stefan Strogin <steils@gentoo.org> +--- + doc/nethack.6 | 2 +- + doc/recover.6 | 28 ++++++++++++++-------------- + 2 files changed, 15 insertions(+), 15 deletions(-) + +diff --git a/doc/nethack.6 b/doc/nethack.6 +index dda4c89f4..b26a2b493 100644 +--- a/doc/nethack.6 ++++ b/doc/nethack.6 +@@ -393,7 +393,7 @@ SHOPTYPE and SPLEVTYPE can be used in debugging (wizard) mode. + DEBUGFILES can be used if the program was built with 'DEBUG' enabled. + .SH "SEE ALSO" + .PP +-dgn_comp(6), lev_comp(6), recover(6) ++dgn_comp(6), lev_comp(6), recover-nethack(6) + .SH BUGS + .PP + Probably infinite. +diff --git a/doc/recover.6 b/doc/recover.6 +index 1209d31d3..eee5bbc61 100644 +--- a/doc/recover.6 ++++ b/doc/recover.6 +@@ -1,4 +1,4 @@ +-.TH RECOVER 6 "14 December 2015" NETHACK ++.TH RECOVER-NETHACK 6 "14 December 2015" NETHACK + .de ND + .ds Nd \\$3 + .. +@@ -13,9 +13,9 @@ + .NR $NHDT-Revision: 1.9 $ + .ds Na Kenneth Lorber + .SH NAME +-recover \- recover a NetHack game interrupted by disaster ++recover-nethack \- recover a NetHack game interrupted by disaster + .SH SYNOPSIS +-.B recover ++.B recover-nethack + [ + .B \-d + .I directory +@@ -33,7 +33,7 @@ so such games can be recovered at the point of the last level change. + The + .I base + options tell +-.I recover ++.I recover-nethack + which files to process. + Each base option specifies recovery of a separate game. + .PP +@@ -83,24 +83,24 @@ by a user number to avoid conflicts, + or "xlock" if the number of concurrent players is being limited. + It may be necessary to look in the playground to find the correct + base name of the interrupted game. +-.I recover ++.I recover-nethack + will transform these level files into a save file of the same name as + .I nethack + would have used. + .PP + Since +-.I recover ++.I recover-nethack + must be able to read and delete files from the playground + and create files in the save directory, + it has interesting interactions with game security. + Giving ordinary players access to +-.I recover ++.I recover-nethack + through setuid or setgid is tantamount to leaving the playground + world-writable, + with respect to both cheating and messing up other players. + For a single-user system, this of course does not change anything, + so some of the microcomputer ports install +-.I recover ++.I recover-nethack + by default. + .PP + For a multi-user system, +@@ -108,22 +108,22 @@ the game administrator may want to arrange for all .0 files in the + playground to be fed to recover when the host machine boots, + and handle game crashes individually. + If the user population is sufficiently trustworthy, +-.I recover ++.I recover-nethack + can be installed with the same permissions the + .I nethack + executable has. + In either case, +-.I recover ++.I recover-nethack + is easily compiled from the distribution utility directory. + .SH NOTES + .PP + Like + .I nethack + itself, +-.I recover ++.I recover-nethack + will overwrite existing savefiles of the same name. + Savefiles created by +-.I recover ++.I recover-nethack + are uncompressed; + they may be compressed afterwards if desired, + but even a compression-using +@@ -133,12 +133,12 @@ will find them in the uncompressed form. + nethack(6) + .SH BUGS + .PP +-.I recover ++.I recover-nethack + makes no attempt to find out if a base name specifies a game in progress. + If multiple machines share a playground, this would be impossible to + determine. + .PP +-.I recover ++.I recover-nethack + should be taught to use the nethack playground locking mechanism to + avoid conflicts. + .SH COPYRIGHT +-- +2.24.1 + diff --git a/games-roguelike/nethack/metadata.xml b/games-roguelike/nethack/metadata.xml index b4c23c3cf2d8..6b5909353887 100644 --- a/games-roguelike/nethack/metadata.xml +++ b/games-roguelike/nethack/metadata.xml @@ -1,13 +1,9 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> <pkgmetadata> - <maintainer type="person"> - <email>aranea@aixah.de</email> - <name>Luis Ressel</name> - </maintainer> <maintainer type="project"> - <email>proxy-maint@gentoo.org</email> - <name>Proxy Maintainers</name> + <email>games@gentoo.org</email> + <name>Gentoo Games Project</name> </maintainer> <upstream> <remote-id type="sourceforge">nethack</remote-id> diff --git a/games-roguelike/nethack/nethack-3.6.3.ebuild b/games-roguelike/nethack/nethack-3.6.3.ebuild new file mode 100644 index 000000000000..72711dcc6e1f --- /dev/null +++ b/games-roguelike/nethack/nethack-3.6.3.ebuild @@ -0,0 +1,129 @@ +# Copyright 1999-2019 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 +inherit desktop flag-o-matic toolchain-funcs + +DESCRIPTION="The ultimate old-school single player dungeon exploration game" +HOMEPAGE="https://www.nethack.org/" +SRC_URI="https://nethack.org/download/${PV}/nethack-${PV//.}-src.tgz -> ${P}.tar.gz" + +LICENSE="nethack" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86" +IUSE="X" + +RDEPEND="acct-group/gamestat + sys-libs/ncurses:0= + X? ( + x11-libs/libXaw + x11-libs/libXpm + x11-libs/libXt + )" +DEPEND="${RDEPEND} + X? ( x11-base/xorg-proto ) + " +BDEPEND="virtual/pkgconfig + X? ( + x11-apps/bdftopcf + x11-apps/mkfontscale + )" + +S="${WORKDIR}/NetHack-NetHack-${PV}_Released" + +src_prepare() { + eapply "${FILESDIR}/${P}-recover.patch" + eapply_user + + cp "${FILESDIR}/${P}-hint-$(usex X x11 tty)" hint || die "Failed to copy hint file" + sys/unix/setup.sh hint || die "Failed to run setup.sh" +} + +src_compile() { + append-cflags -I../include -DDLB -DSECURE -DTIMED_DELAY -DVISION_TABLES -DDUMPLOG -DSCORE_ON_BOTL + append-cflags '-DCOMPRESS=\"${EPREFIX}/bin/gzip\"' '-DCOMPRESS_EXTENSION=\".gz\"' + append-cflags "-DHACKDIR=\\\"${EPREFIX}/usr/$(get_libdir)/nethack\\\"" "-DVAR_PLAYGROUND=\\\"${EPREFIX}/var/games/nethack\\\"" + append-cflags "-DDEF_PAGER=\\\"${PAGER}\\\"" + append-cflags -DSYSCF "-DSYSCF_FILE=\\\"${EPREFIX}/etc/nethack.sysconf\\\"" + + use X && append-cflags -DX11_GRAPHICS -DUSE_XPM + + LOCAL_MAKEOPTS=( + CC="$(tc-getCC)" CFLAGS="${CFLAGS}" LFLAGS="${LDFLAGS}" + WINTTYLIB="$($(tc-getPKG_CONFIG) --libs ncurses)" + HACKDIR="${EPREFIX}/usr/$(get_libdir)/nethack" INSTDIR="${ED}/usr/$(get_libdir)/nethack" + SHELLDIR="${ED}/usr/bin" VARDIR="${ED}/var/games/nethack" + ) + + emake "${LOCAL_MAKEOPTS[@]}" nethack recover Guidebook spec_levs + + # Upstream still has some parallel compilation bugs + emake -j1 "${LOCAL_MAKEOPTS[@]}" all +} + +src_install() { + emake "${LOCAL_MAKEOPTS[@]}" install + + mv "${ED}/usr/$(get_libdir)/nethack/recover" "${ED}/usr/bin/recover-nethack" || die "Failed to move recover-nethack" + + doman doc/nethack.6 + newman doc/recover.6 recover-nethack.6 + dodoc doc/Guidebook.txt + + insinto /etc + newins sys/unix/sysconf nethack.sysconf + + insinto /etc/skel + newins "${FILESDIR}/${PN}-3.6.0-nethackrc" .nethackrc + + if use X ; then + cd "${S}/win/X11" || die "Failed to enter win/X11 directory" + + mkdir -p "${ED}/etc/X11/app-defaults/" || die "Failed to make app-defaults directory" + mv "${ED}/usr/$(get_libdir)/nethack/NetHack.ad" "${ED}/etc/X11/app-defaults/" || die "Failed to move NetHack.ad" + + newicon nh_icon.xpm nethack.xpm + make_desktop_entry ${PN} Nethack + + # install nethack fonts + bdftopcf -o nh10.pcf nh10.bdf || die "Converting fonts failed" + bdftopcf -o ibm.pcf ibm.bdf || die "Converting fonts failed" + insinto "/usr/$(get_libdir)/nethack/fonts" + doins *.pcf + mkfontdir "${ED}/usr/$(get_libdir)/nethack/fonts" || die "mkfontdir failed" + fi + + rm -r "${ED}/var/games/nethack" || die "Failed to clean var/games/nethack" + keepdir /var/games/nethack/save +} + +pkg_preinst() { + fowners root:gamestat /var/games/nethack /var/games/nethack/save + fperms 2770 /var/games/nethack /var/games/nethack/save + + fowners root:gamestat "/usr/$(get_libdir)/nethack/nethack" + fperms g+s "/usr/$(get_libdir)/nethack/nethack" +} + +pkg_postinst() { + cd "${EROOT}/var/games/nethack" || die "Failed to enter ${EROOT}/var/games/nethack directory" + + # Transition mechanism for <nethack-3.6.1 ebuilds. It's perfectly safe, so we'll just run it unconditionally. + chmod 2770 . save || die "Failed to chmod statedir" + + # Those files can't be created earlier because we don't want portage to wipe them during upgrades + ( umask 007 && touch logfile perm record xlogfile ) || die "Failed to create log files" + + # Instead of using a proper version header in its save files, nethack checks for incompatibilities + # by comparing the mtimes of save files and its own binary. This would require admin interaction even + # during upgrades which don't change the file format, so we'll just touch the files and warn the admin + # manually in case of compatibility issues. + ( + shopt -s nullglob + local saves=( bones* save/* ) + [[ -n "${saves[*]}" ]] && touch -c "${saves[@]}" + ) # non-fatal + + elog "A minimal default .nethackrc has been placed in /etc/skel/" + elog "The sysconf file is at /etc/nethack.sysconf" +} |