diff options
Diffstat (limited to 'app-misc')
-rw-r--r-- | app-misc/screen/Manifest | 1 | ||||
-rw-r--r-- | app-misc/screen/files/screen-4.5.1-texinfo.patch | 13 | ||||
-rw-r--r-- | app-misc/screen/screen-4.5.1.ebuild | 161 |
3 files changed, 175 insertions, 0 deletions
diff --git a/app-misc/screen/Manifest b/app-misc/screen/Manifest index 0354db618550..2f60add8cef6 100644 --- a/app-misc/screen/Manifest +++ b/app-misc/screen/Manifest @@ -1,3 +1,4 @@ DIST screen-4.3.1.tar.gz 845958 SHA256 fa4049f8aee283de62e283d427f2cfd35d6c369b40f7f45f947dbfd915699d63 SHA512 8e8a25b23330a7d8e00fc9e6cc430f0eb3937ccf4183efbd6fd24e4dc04cc09b3acae45bfc24892faee433b18fa79b1cfe0211fd75c0d74ecf908f916bf774aa WHIRLPOOL b47f7538351028cc3a2ec7f69a9373e152fa7655c6ae9feb75ba46db3cdc9b7d58ce78043993b7f134da3a04754c5e52d1a77da4c30a8decda21c79cf5c50f51 DIST screen-4.4.0.tar.gz 846010 SHA256 ef722a54759a3bf23aad272bbf33c414c1078cad6bcd982fada93c0d7917218b SHA512 6e43f85c419f778822ec85e4340c95769e981a3d51abdeb5f26c6ebb840da9ab11b351ecc7f380ceea39bcfaa87f1124cfebd6af4ecb62b886eb189e7b79981b WHIRLPOOL a0d68d2d50f9f50537bf73a6dbb1ecbfe8c6af5c5322003a717431734bdc86a940fc55cd8c3a28b3e5ec572aaa0ceba376d97cbb8c5090a92d499cba2889b322 DIST screen-4.5.0.tar.gz 963233 SHA256 01c3a7c362185f35d6a95dff52d64337076496acd034d717de3c263500cfefb0 SHA512 b2705ed9604355d4153d7902f820af6131a1f2387650f5c6efeda7acf543aad48e8603c26d7c6e74213c8eece994d5d9bb0d114bc19c8d8f3d8e99c00ea4a484 WHIRLPOOL 04b26e849ae0440778f2eee1a8d8730697a0f8ee933522ec16de697ff0cc189fc67b7e46b7cb218457ab53e491fceff0d70e44417c7c3af5c934cd3fae769382 +DIST screen-4.5.1.tar.gz 963153 SHA256 97db2114dd963b016cd4ded34831955dcbe3251e5eee45ac2606e67e9f097b2d SHA512 ca53477ad38264be38efb1d10a1337b647dd061127162c77533b17a30d046cd0caabe38e4a9e5389aac30d5dc62eb53e7877411e69adae36d0ca869bd0a82804 WHIRLPOOL db60013141e3f426107d3f1e518b48fc0bbf89fbf51b26b5ac7208b9940448397ec0009d389365289a1d06421b403982093c8b7ee8d891eea20c704d7ad376b1 diff --git a/app-misc/screen/files/screen-4.5.1-texinfo.patch b/app-misc/screen/files/screen-4.5.1-texinfo.patch new file mode 100644 index 000000000000..8d7a5e527175 --- /dev/null +++ b/app-misc/screen/files/screen-4.5.1-texinfo.patch @@ -0,0 +1,13 @@ +--- a/doc/screen.texinfo ++++ b/doc/screen.texinfo +@@ -5796,8 +5796,8 @@ + ============ + + @example +- Thomas Renninger <treen@suse.com>, +- Axel Beckert <abe@deuxchevaux.org>, ++ Thomas Renninger <treen@@suse.com>, ++ Axel Beckert <abe@@deuxchevaux.org>, + Ken Beal <kbeal@@amber.ssd.csd.harris.com>, + Rudolf Koenig <rfkoenig@@informatik.uni-erlangen.de>, + Toerless Eckert <eckert@@informatik.uni-erlangen.de>, diff --git a/app-misc/screen/screen-4.5.1.ebuild b/app-misc/screen/screen-4.5.1.ebuild new file mode 100644 index 000000000000..f4a542808d6b --- /dev/null +++ b/app-misc/screen/screen-4.5.1.ebuild @@ -0,0 +1,161 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=6 + +SCM="" +[[ "${PV}" = 9999 ]] && SCM="git-r3" +inherit autotools eutils flag-o-matic pam toolchain-funcs user ${SCM} +unset SCM + +DESCRIPTION="screen manager with VT100/ANSI terminal emulation" +HOMEPAGE="https://www.gnu.org/software/screen/" + +if [[ "${PV}" != 9999 ]] ; then + SRC_URI="mirror://gnu/${PN}/${P}.tar.gz" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~sparc-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +else + EGIT_REPO_URI="git://git.savannah.gnu.org/screen.git" + EGIT_CHECKOUT_DIR="${WORKDIR}/${P}" # needed for setting S later on + S="${WORKDIR}"/${P}/src +fi + +LICENSE="GPL-2" +SLOT="0" +IUSE="debug nethack pam selinux multiuser" + +CDEPEND=" + >=sys-libs/ncurses-5.2:0= + pam? ( virtual/pam )" +RDEPEND="${CDEPEND} + selinux? ( sec-policy/selinux-screen )" +DEPEND="${CDEPEND} + sys-apps/texinfo" + +PATCHES=( + # Don't use utempter even if it is found on the system. + "${FILESDIR}"/${PN}-4.3.0-no-utempter.patch + # @ => @@ + "${FILESDIR}"/${PN}-4.5.1-texinfo.patch +) + +pkg_setup() { + # Make sure utmp group exists, as it's used later on. + enewgroup utmp 406 +} + +src_prepare() { + default + + # sched.h is a system header and causes problems with some C libraries + mv sched.h _sched.h || die + sed -i '/include/ s:sched.h:_sched.h:' screen.h || die + + # Fix manpage. + sed -i \ + -e "s:/usr/local/etc/screenrc:${EPREFIX}/etc/screenrc:g" \ + -e "s:/usr/local/screens:${EPREFIX}/tmp/screen:g" \ + -e "s:/local/etc/screenrc:${EPREFIX}/etc/screenrc:g" \ + -e "s:/etc/utmp:${EPREFIX}/var/run/utmp:g" \ + -e "s:/local/screens/S\\\-:${EPREFIX}/tmp/screen/S\\\-:g" \ + doc/screen.1 \ + || die + + if [[ ${CHOST} == *-darwin* ]] ; then + sed -i -e '/^#define UTMPOK/s/define/undef/' acconfig.h || die + fi + + # reconfigure + eautoreconf +} + +src_configure() { + append-cppflags "-DMAXWIN=${MAX_SCREEN_WINDOWS:-100}" + + if [[ ${CHOST} == *-solaris* ]] ; then + # enable msg_header by upping the feature standard compatible + # with c99 mode + append-cppflags -D_XOPEN_SOURCE=600 + fi + + use nethack || append-cppflags "-DNONETHACK" + use debug && append-cppflags "-DDEBUG" + + econf \ + --with-socket-dir="${EPREFIX}/tmp/screen" \ + --with-sys-screenrc="${EPREFIX}/etc/screenrc" \ + --with-pty-mode=0620 \ + --with-pty-group=5 \ + --enable-rxvt_osc \ + --enable-telnet \ + --enable-colors256 \ + $(use_enable pam) +} + +src_compile() { + LC_ALL=POSIX emake comm.h term.h + emake osdef.h + + emake -C doc screen.info + default +} + +src_install() { + local DOCS=( + README ChangeLog INSTALL TODO NEWS* patchlevel.h + doc/{FAQ,README.DOTSCREEN,fdpat.ps,window_to_display.ps} + ) + + default + + local tmpfiles_perms tmpfiles_group + + if use multiuser || use prefix + then + fperms 4755 /usr/bin/screen-${PV} + tmpfiles_perms="0755" + tmpfiles_group="root" + else + fowners root:utmp /usr/bin/screen-${PV} + fperms 2755 /usr/bin/screen-${PV} + tmpfiles_perms="0775" + tmpfiles_group="utmp" + fi + + dodir /etc/tmpfiles.d + echo "d /tmp/screen ${tmpfiles_perms} root ${tmpfiles_group}" \ + > "${ED}"/etc/tmpfiles.d/screen.conf + + insinto /usr/share/screen + doins terminfo/{screencap,screeninfo.src} + + insinto /etc + doins "${FILESDIR}"/screenrc + + pamd_mimic_system screen auth +} + +pkg_postinst() { + if [[ -z ${REPLACING_VERSIONS} ]] + then + elog "Some dangerous key bindings have been removed or changed to more safe values." + elog "We enable some xterm hacks in our default screenrc, which might break some" + elog "applications. Please check /etc/screenrc for information on these changes." + fi + + # Add /tmp/screen in case it doesn't exist yet. This should solve + # problems like bug #508634 where tmpfiles.d isn't in effect. + local rundir="${EROOT%/}/tmp/screen" + if [[ ! -d ${rundir} ]] ; then + if use multiuser || use prefix ; then + tmpfiles_group="root" + else + tmpfiles_group="utmp" + fi + mkdir -m 0775 "${rundir}" + chgrp ${tmpfiles_group} "${rundir}" + fi + + ewarn "This revision changes the screen socket location to ${rundir}" +} |