summaryrefslogtreecommitdiff
path: root/app-misc/screen
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2023-08-08 09:27:00 +0100
committerV3n3RiX <venerix@koprulu.sector>2023-08-08 09:27:00 +0100
commitafdfa05c5ce824f49340d033a80cdee422ac264a (patch)
treee0d45d2626035a2af2187a8359cd122dd9d4a21b /app-misc/screen
parent6cefebc8e850c862f7623af22feef1b895a79884 (diff)
gentoo auto-resync : 08:08:2023 - 09:27:00
Diffstat (limited to 'app-misc/screen')
-rw-r--r--app-misc/screen/Manifest2
-rw-r--r--app-misc/screen/files/screen-4.9.0-clang16-chmod.patch12
-rw-r--r--app-misc/screen/screen-4.9.0-r3.ebuild148
3 files changed, 162 insertions, 0 deletions
diff --git a/app-misc/screen/Manifest b/app-misc/screen/Manifest
index 7c8c94e057ec..79ddfa76e291 100644
--- a/app-misc/screen/Manifest
+++ b/app-misc/screen/Manifest
@@ -1,11 +1,13 @@
AUX screen-4.3.0-no-utempter.patch 341 BLAKE2B 3339783b3574f82f093c82a613ad18c5c58c184c082c2c311281cdd57e7176abae0f5935466a4a8b4d931d1d1b93d8f0a4e6b558a268553af4a0170061e6ebfe SHA512 f4191ba1ecac3076f958f56309c0a1d523b455fa4e3388f1cfca59c8ccff0afdfb20ef18d54794ba539b2b6d1511ed599dc44787344dc5ccce2902c9b9848155
AUX screen-4.6.2-utmp-exit.patch 1558 BLAKE2B e08e83f8b9f0cd09cd9bad4486a75d71bd899a7917954702ece0837099639079a746138374cbeaf71072cca64ae36a3c2a32250123c6747089e724272227e0dd SHA512 0e7c6c224f6fb8e01650b778cb2b155942752504dc97112d9594b7fa0da1bb8bd828240a2519b1c21f1c162181da89a8daa51ef7f74c8ced0b85cdb3e911a67c
AUX screen-4.9.0-CVE-2023-24626.patch 1039 BLAKE2B ba35a0be4d75b02f08d29f0c135103213cc2d875cd4bbd39cd8ae7cc000eb7fb1b0671844220e0bb6ec48283d1c265c4ea889d82e5882af60c8472d71c57c6f9 SHA512 591599518c2a6505b2407834e9c676d8269eb5f2e8165e113885ee5e18a9176b5e0fc99c8a827f672126212c58257a7a5d852a484a46414026e0960c7e233315
+AUX screen-4.9.0-clang16-chmod.patch 303 BLAKE2B c55b727ca1d7a7acd758c1f123467d53e4d0f4909097f3c560b78910555f0312b9844ca202163c00bea36964c0fbbee6d5634e9926948aca628328ef1f9e0eee SHA512 8ccd19b9462514f6d91c5a3d7be69d808c2011e02ce0000b6730497ea2639a2ea5d0769e52bf0764d3e5e39ec01bcc965222928c89a2873995fb1d09051aee91
AUX screen-4.9.0-configure-implicit-function-decls.patch 16667 BLAKE2B 6079042dae21c51b81176aadf27314cf0502fcee995bd9668102bc114ac0c2fdb6587fe2c647cbd92d994cb9b6fdba9e259a1f0a6bd7cf7d7905c3f7e36e8aff SHA512 c9ff18fccba0a0ed19e64509ea128b91bbb6fac405e8395ce724435f1af2f2015f645342aa1fc1b4cb023927412db6e1c242c8060a81deab2a8c064523dedd4d
AUX screen-9999-no-utempter.patch 465 BLAKE2B be4d690d2f478a2660cb3c0b0f83d9a62328b82b06b85860a84e1b3a924c751080d7e9f35c4b48c3fe6a0152ae75df1dc665b97f8bc70e026bbadd19d4891df1 SHA512 c011936e35e04e7704b0d8d7892f2ebe22fb6993241e7c4b6733e48f6400ca8aeb20c638108018fab006e402332460e89d321e2118f564316e3f7e26a05212d2
AUX screenrc 10412 BLAKE2B f4866f4a83b22c37484b66e4c7d52ec479fe12ae3e72e5c9e769b1b543ecf04d14ef4339e1c72064741cbf39502ef82d3beb213326a30889f128e135f60bd528 SHA512 06fbec5e28480a2c369330fac0c94faa47e5d28e037d9fefd0cb3e813002c504866dc8ac86872b7ac6f16059a219e396a9c425b578b8afe882153ddb506158f7
DIST screen-4.9.0.tar.gz 798229 BLAKE2B 0f64a14ce9a719bd4a6d045c55069769045a09ee2086c44c2e3d9da6d1e5ada2f094e00e16029767e1155ce35d4f360d0e2879995eefa052f3214ced71b7617c SHA512 18bbb085d77ecd02cbc02fa88a945c39f06e0c6de4eeaa16b278440dac5c9896811abbe0838144e997cd344ae08b9530399fa8fcb31a65fc571ead90e8307f84
EBUILD screen-4.9.0-r1.ebuild 3799 BLAKE2B 9122bd6fe28ed527d67e39ff496ea5250160aeb434339c40a61ab247474574c46d837af4104e5708bfbef5e293647e0a407ac4b4d6ab0ec34a0b0430b4bb4385 SHA512 b47d14da8ff0ff3daf772dbfcc3820d40e5bb38be6445912e460e0f61cb615adffc174e03f52b69337c7a710cfe60275e636f0d882e350ef723712531ac9f2a9
EBUILD screen-4.9.0-r2.ebuild 3853 BLAKE2B 80cb85fffcb64598b4fa69753b72e460e47e953bcef070b35d2e34ac851cfd5e51f2d5cac74a73598abf3d967866e1306a7db81f64c7cc3a12813d95dde54ac0 SHA512 fb77ebc81eee36b71b7667ff2bac1d6e132eebeebd5b127c467ae9cf0c1a2237601ff4140b2ff96fd457b4cdc9144cf89d30b4efdd23874c8e45f4c42aaa89b7
+EBUILD screen-4.9.0-r3.ebuild 3908 BLAKE2B e92d53fe269ecdfea1b9c7d2a8bc76edb19c2ca07873898ad6af95307ff940bd150102d4879c6ff1accaf486e6a5508cc005c6a27b1aa037e92a13fc6bcc4ccc SHA512 de4a3debc5546cb6ebfbac88422d2b13af9710f7c302ff0dcdb1c01527aa3648c1eb93ce4a7c843d59678eedcf4c4245425cae2eab7c33e9fdc3c0ae3ce23813
EBUILD screen-9999.ebuild 3737 BLAKE2B 2baafb117eaf022530aa430d7b9ba7b810e7995dcad916ee4d96cf4ff5933aa437119621a7a8b984148f74277f089fe6b7ab7fbe244411d89f66781bee76f9b8 SHA512 95259ccf47b3f934857cd166b4c8ca9cdef1578d2e130590d60cf72e8be6928998eaa6595a566168c7b976662f4b2507a264414036c13572d845c2f388af9b58
MISC metadata.xml 1894 BLAKE2B 2312aa5911bfd18b3f9202ccb52afa84f2a29462c8282d36a84fb9624f5ff9bcf3d96e06cace55d542ff7c8182eed5560483717265ecc3fc9218e43bdf9d9094 SHA512 a7c331d1614b5bf139d61a72ad27c070184c208039da97c218b55e07a699d635c0db20ec3792c87d93affa2cb038ae834adcf3dc7c37a4b5c2f8aa36b081cfca
diff --git a/app-misc/screen/files/screen-4.9.0-clang16-chmod.patch b/app-misc/screen/files/screen-4.9.0-clang16-chmod.patch
new file mode 100644
index 000000000000..63872219a23f
--- /dev/null
+++ b/app-misc/screen/files/screen-4.9.0-clang16-chmod.patch
@@ -0,0 +1,12 @@
+Bug: https://bugs.gentoo.org/894562
+Taken from: https://git.savannah.gnu.org/cgit/screen.git/commit/?id=7f320d3a643ec95682a7213b7e991e27038d8a57
+--- a/display.c
++++ b/display.c
+@@ -27,6 +27,7 @@
+ */
+
+ #include <sys/types.h>
++#include <sys/stat.h>
+ #include <signal.h>
+ #include <fcntl.h>
+ #ifndef sun
diff --git a/app-misc/screen/screen-4.9.0-r3.ebuild b/app-misc/screen/screen-4.9.0-r3.ebuild
new file mode 100644
index 000000000000..450045b6755b
--- /dev/null
+++ b/app-misc/screen/screen-4.9.0-r3.ebuild
@@ -0,0 +1,148 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools flag-o-matic pam tmpfiles
+
+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 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+else
+ inherit git-r3
+ EGIT_REPO_URI="https://git.savannah.gnu.org/git/screen.git"
+ EGIT_CHECKOUT_DIR="${WORKDIR}/${P}" # needed for setting S later on
+ S="${WORKDIR}"/${P}/src
+fi
+
+LICENSE="GPL-3+"
+SLOT="0"
+IUSE="debug nethack pam selinux multiuser"
+
+DEPEND=">=sys-libs/ncurses-5.2:=
+ virtual/libcrypt:=
+ pam? ( sys-libs/pam )"
+RDEPEND="${DEPEND}
+ acct-group/utmp
+ selinux? ( sec-policy/selinux-screen )"
+BDEPEND="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.6.2-utmp-exit.patch
+ "${FILESDIR}"/${PN}-4.9.0-configure-implicit-function-decls.patch
+ "${FILESDIR}"/${P}-CVE-2023-24626.patch
+ "${FILESDIR}"/${PN}-4.9.0-clang16-chmod.patch
+)
+
+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* ]] || use elibc_musl; then
+ sed -i -e '/^#define UTMPOK/s/define/undef/' acconfig.h || die
+ fi
+
+ # disable musl dummy headers for utmp[x]
+ use elibc_musl && append-cppflags "-D_UTMP_H -D_UTMPX_H"
+
+ # 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"
+
+ local myeconfargs=(
+ --with-socket-dir="${EPREFIX}/tmp/${PN}"
+ --with-sys-screenrc="${EPREFIX}/etc/screenrc"
+ --with-pty-mode=0620
+ --with-pty-group=5
+ --enable-rxvt_osc
+ --enable-telnet
+ --enable-colors256
+ $(use_enable pam)
+ )
+ econf "${myeconfargs[@]}"
+}
+
+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}
+ )
+
+ emake DESTDIR="${D}" SCREEN="${P}" install
+
+ local tmpfiles_perms tmpfiles_group
+
+ if use multiuser || use prefix ; then
+ fperms 4755 /usr/bin/${P}
+ tmpfiles_perms="0755"
+ tmpfiles_group="root"
+ else
+ fowners root:utmp /usr/bin/${P}
+ fperms 2755 /usr/bin/${P}
+ tmpfiles_perms="0775"
+ tmpfiles_group="utmp"
+ fi
+
+ newtmpfiles - screen.conf <<<"d /tmp/screen ${tmpfiles_perms} root ${tmpfiles_group}"
+
+ insinto /usr/share/${PN}
+ doins terminfo/{screencap,screeninfo.src}
+
+ insinto /etc
+ doins "${FILESDIR}"/screenrc
+
+ if use pam; then
+ pamd_mimic_system screen auth
+ fi
+
+ dodoc "${DOCS[@]}"
+}
+
+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
+
+ tmpfiles_process screen.conf
+
+ ewarn "This revision changes the screen socket location to ${EROOT}/tmp/${PN}"
+}