summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMikle Kolyada <zlogene@gentoo.org>2020-03-29 14:44:58 +0300
committerMikle Kolyada <zlogene@gentoo.org>2020-03-29 14:45:21 +0300
commitac2c30327e98c5d15c0fa0e94d11a6cabd997683 (patch)
tree3e6efa8b6f11a076c6d93fbbf6b7d5a53db163a4
parentgames-roguelike/nethack: Version bump 3.6.6 (diff)
downloadgentoo-ac2c30327e98c5d15c0fa0e94d11a6cabd997683.tar.gz
gentoo-ac2c30327e98c5d15c0fa0e94d11a6cabd997683.tar.bz2
gentoo-ac2c30327e98c5d15c0fa0e94d11a6cabd997683.zip
games-roguelike/nethack: Security cleanup
Package-Manager: Portage-2.3.89, Repoman-2.3.20 Signed-off-by: Mikle Kolyada <zlogene@gentoo.org>
-rw-r--r--games-roguelike/nethack/Manifest1
-rw-r--r--games-roguelike/nethack/nethack-3.6.4.ebuild129
2 files changed, 0 insertions, 130 deletions
diff --git a/games-roguelike/nethack/Manifest b/games-roguelike/nethack/Manifest
index bb6a02c753e..a635bab6643 100644
--- a/games-roguelike/nethack/Manifest
+++ b/games-roguelike/nethack/Manifest
@@ -1,2 +1 @@
-DIST nethack-3.6.4.tar.gz 5573777 BLAKE2B 4e5a48bbf521406f17bc699643dd9f9d912381cc91ab2228affc6f54ad2b84ea7c946ab2d5936c274752a36920440d34001b13f28ce4c8f35844300d596086a7 SHA512 c951f939d50027b4468ebd2e32f79771e696035df0918b814bf02899f5c1e89d462ebc3f63155c23f5c627e66ca74244512d666b102c380242df1500a2c0afa9
DIST nethack-3.6.6.tar.gz 5577633 BLAKE2B 7b4b12f3a711785c86208dab83f9de725c33470e056ee57e6d96c3a68f06c1d0d98343ed82eca669986361d0663ddbe56d9a74d9cb45b42bf005c2f323b3cd79 SHA512 579fde93a37a1b5df637d5bac2601194beeb455c175fbe3ef89342122c8567bb8221ce60d8a6168e6b45c67ade7d7b09c86bf202c8cbe2d6294d276be3e53055
diff --git a/games-roguelike/nethack/nethack-3.6.4.ebuild b/games-roguelike/nethack/nethack-3.6.4.ebuild
deleted file mode 100644
index 1dc2a67dd6c..00000000000
--- a/games-roguelike/nethack/nethack-3.6.4.ebuild
+++ /dev/null
@@ -1,129 +0,0 @@
-# Copyright 1999-2020 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}/${PN}-3.6.3-recover.patch"
- eapply_user
-
- cp "${FILESDIR}/${PN}-3.6.3-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"
-}