1 |
commit: 8f4bd10e4365a3e97d075d4170d439f2dde1c0f5 |
2 |
Author: xdch47 <xdch47 <AT> posteo <DOT> de> |
3 |
AuthorDate: Fri Nov 16 14:31:56 2018 +0000 |
4 |
Commit: Anthony G. Basile <blueness <AT> gentoo <DOT> org> |
5 |
CommitDate: Sat Nov 17 00:36:46 2018 +0000 |
6 |
URL: https://gitweb.gentoo.org/proj/musl.git/commit/?id=8f4bd10e |
7 |
|
8 |
app-misc/screen: build without utmp for musl |
9 |
|
10 |
Package-Manager: Portage-2.3.51, Repoman-2.3.11 |
11 |
RepoMan-Options: --force |
12 |
Manifest-Sign-Key: 0DEDF1A904568BAD1FC45C283DCC44782ED07E1C |
13 |
Signed-off-by: Anthony G. Basile <blueness <AT> gentoo.org> |
14 |
|
15 |
app-misc/screen/Manifest | 18 ++ |
16 |
.../screen/files/screen-4.3.0-no-utempter.patch | 14 + |
17 |
app-misc/screen/files/screen-4.5.1-texinfo.patch | 13 + |
18 |
app-misc/screen/files/screen-4.6.2-utmp-exit.patch | 55 ++++ |
19 |
app-misc/screen/files/screenrc | 356 +++++++++++++++++++++ |
20 |
app-misc/screen/metadata.xml | 35 ++ |
21 |
app-misc/screen/screen-4.5.1.ebuild | 163 ++++++++++ |
22 |
app-misc/screen/screen-4.6.0.ebuild | 161 ++++++++++ |
23 |
app-misc/screen/screen-4.6.1.ebuild | 161 ++++++++++ |
24 |
app-misc/screen/screen-4.6.2.ebuild | 163 ++++++++++ |
25 |
app-misc/screen/screen-9999.ebuild | 152 +++++++++ |
26 |
11 files changed, 1291 insertions(+) |
27 |
|
28 |
diff --git a/app-misc/screen/Manifest b/app-misc/screen/Manifest |
29 |
new file mode 100644 |
30 |
index 0000000..46ad105 |
31 |
--- /dev/null |
32 |
+++ b/app-misc/screen/Manifest |
33 |
@@ -0,0 +1,18 @@ |
34 |
+-----BEGIN PGP SIGNED MESSAGE----- |
35 |
+Hash: SHA256 |
36 |
+ |
37 |
+DIST screen-4.5.1.tar.gz 963153 BLAKE2B 8f7e20a0a3dde58435fc500714b49af97b4f2f225d34394170572e79ab9a8b49beac6c054021db367a01b6da91deaa726284a25c86eb57e11dcd09ad5dc44cb4 SHA512 ca53477ad38264be38efb1d10a1337b647dd061127162c77533b17a30d046cd0caabe38e4a9e5389aac30d5dc62eb53e7877411e69adae36d0ca869bd0a82804 |
38 |
+DIST screen-4.6.0.tar.gz 849062 BLAKE2B e08915bb34d4e356eb33c479f1b2dc7a8f4a855e9d1c27490ff31cfc88b4bd9dfb11101dd0e4508f3b37b023b9f9b987dfaff4c6cc930e994d22fcb024cf341d SHA512 2ee7cc51c62a478e72eda0647f3f347e63f40384e19bc11b074158bd94cdb628c6425b1dd7a472496d56bff11a30a9dc58859c2e7e539fae2a8718ed9b0f96d7 |
39 |
+DIST screen-4.6.1.tar.gz 848979 BLAKE2B e78874b6d8723c52f827ab5e6b665102d7fd831f03a0006f9d31e000535ccce95ce08e2d302e34ba2d567167a917c8bd3b875843828d1951bcb38ab6ae4e0acf SHA512 e5d029400ed5b509ebddc1f55812c33536d6f5ce91119537c7d06e1fa7dee84939c43337df4638f61c818ce0412f4d08fe212202162a4483a9e84bbc4b3e4336 |
40 |
+DIST screen-4.6.2.tar.gz 845210 BLAKE2B feea244e2e0c8f638442a524cd7cac93c6c5e576541bf1321fb32bc9424abf53415d00ebcb4a13a9613788c1baad6e132f209bd0a017b100e0687b3658603aea SHA512 224bd16ad5ae501d1b8bb7d2ba9cc19e6a0743de5a5b320109c2f6bf3b1ca564cc7094ed9211be13733d9d769cde77d13fe236341d448cad0518038ab1e85c99 |
41 |
+-----BEGIN PGP SIGNATURE----- |
42 |
+ |
43 |
+iQEzBAEBCAAdFiEEDe3xqQRWi60fxFwoPcxEeC7QfhwFAlvu1NoACgkQPcxEeC7Q |
44 |
+fhyRJQgAnr43VlPa10cSJ4ndRWpxo0C0uXlmcBA12TthcwDrOPoU44QOlaai8qy8 |
45 |
+ZitvREY6W5fBgsfAz1OVAef1jlLLHJK+0k58CVdedQdtpbwOcBtFc1ZOWKYwXGxK |
46 |
+kx8LSG44XcroLe3m9YWs+Y5+l3Db5FyLMbG/WSC1jwCZrRznrdzOC5U/5UDcqLZP |
47 |
+IBAn1aqwnotO6t5rWnM2HBJ8i1K7f1xo3B7lnnYHEQqVJ/qCWqNbOVMUAfnpZhvM |
48 |
+y9Nat9XjRuSaxsdnhqfncsdSPtnb+2nywfGZyjbSApNZ5xL3LdR8OADwko6ukRBP |
49 |
+MpBJaPNhUVNQGEqu0eKEwDZheN824g== |
50 |
+=3fDd |
51 |
+-----END PGP SIGNATURE----- |
52 |
|
53 |
diff --git a/app-misc/screen/files/screen-4.3.0-no-utempter.patch b/app-misc/screen/files/screen-4.3.0-no-utempter.patch |
54 |
new file mode 100644 |
55 |
index 0000000..e11be5b |
56 |
--- /dev/null |
57 |
+++ b/app-misc/screen/files/screen-4.3.0-no-utempter.patch |
58 |
@@ -0,0 +1,14 @@ |
59 |
+--- a/configure.ac |
60 |
++++ b/configure.ac |
61 |
+@@ -878,11 +878,6 @@ |
62 |
+ #include <utmp.h> |
63 |
+ #endif |
64 |
+ ],[struct utmp u; u.ut_host[0] = 0;], AC_DEFINE(UTHOST)) |
65 |
+-AC_CHECK_HEADER(utempter.h, have_utempter=yes, have_utempter=no) |
66 |
+-if test "$have_utempter" = yes; then |
67 |
+- AC_DEFINE(HAVE_UTEMPTER) |
68 |
+- LIBS="$LIBS -lutempter" |
69 |
+-fi |
70 |
+ |
71 |
+ dnl |
72 |
+ dnl **** loadav **** |
73 |
|
74 |
diff --git a/app-misc/screen/files/screen-4.5.1-texinfo.patch b/app-misc/screen/files/screen-4.5.1-texinfo.patch |
75 |
new file mode 100644 |
76 |
index 0000000..8d7a5e5 |
77 |
--- /dev/null |
78 |
+++ b/app-misc/screen/files/screen-4.5.1-texinfo.patch |
79 |
@@ -0,0 +1,13 @@ |
80 |
+--- a/doc/screen.texinfo |
81 |
++++ b/doc/screen.texinfo |
82 |
+@@ -5796,8 +5796,8 @@ |
83 |
+ ============ |
84 |
+ |
85 |
+ @example |
86 |
+- Thomas Renninger <treen@××××.com>, |
87 |
+- Axel Beckert <abe@×××××××××××.org>, |
88 |
++ Thomas Renninger <treen@@suse.com>, |
89 |
++ Axel Beckert <abe@@deuxchevaux.org>, |
90 |
+ Ken Beal <kbeal@@amber.ssd.csd.harris.com>, |
91 |
+ Rudolf Koenig <rfkoenig@@informatik.uni-erlangen.de>, |
92 |
+ Toerless Eckert <eckert@@informatik.uni-erlangen.de>, |
93 |
|
94 |
diff --git a/app-misc/screen/files/screen-4.6.2-utmp-exit.patch b/app-misc/screen/files/screen-4.6.2-utmp-exit.patch |
95 |
new file mode 100644 |
96 |
index 0000000..11adf69 |
97 |
--- /dev/null |
98 |
+++ b/app-misc/screen/files/screen-4.6.2-utmp-exit.patch |
99 |
@@ -0,0 +1,55 @@ |
100 |
+From 2f1b9dfe03133c9b77ea450aed088d65128dc547 Mon Sep 17 00:00:00 2001 |
101 |
+From: =?UTF-8?q?Amadeusz=20S=C5=82awi=C5=84ski?= <amade@××××××.net> |
102 |
+Date: Tue, 5 Apr 2016 12:47:08 +0200 |
103 |
+Subject: [PATCH] check if we have ut_exit in utmpx struct |
104 |
+ |
105 |
+--- |
106 |
+ acconfig.h | 5 +++++ |
107 |
+ configure.ac | 4 ++++ |
108 |
+ utmp.c | 2 ++ |
109 |
+ 3 files changed, 11 insertions(+) |
110 |
+ |
111 |
+diff --git a/acconfig.h b/acconfig.h |
112 |
+index 656e117..d173c9c 100644 |
113 |
+--- a/acconfig.h |
114 |
++++ b/acconfig.h |
115 |
+@@ -215,6 +215,11 @@ |
116 |
+ #undef HAVE_UTEMPTER |
117 |
+ |
118 |
+ /* |
119 |
++ * Define if your utmpx has ut_exit struct |
120 |
++ */ |
121 |
++#undef HAVE_UT_EXIT |
122 |
++ |
123 |
++/* |
124 |
+ * If your system has the calls setreuid() and setregid(), |
125 |
+ * define HAVE_SETREUID. Otherwise screen will use a forked process to |
126 |
+ * safely create output files without retaining any special privileges. |
127 |
+diff --git a/configure.ac b/configure.ac |
128 |
+index 1a75020..8457619 100644 |
129 |
+--- a/configure.ac |
130 |
++++ b/configure.ac |
131 |
+@@ -374,6 +374,10 @@ if test "$have_utempter" = yes; then |
132 |
+ AC_DEFINE(HAVE_UTEMPTER) |
133 |
+ LIBS="$LIBS -lutempter" |
134 |
+ fi |
135 |
++AC_CHECKING(ut_exit) |
136 |
++AC_TRY_COMPILE([ |
137 |
++#include <utmpx.h> |
138 |
++],[struct utmpx u; u.ut_exit.e_exit;], AC_DEFINE(HAVE_UT_EXIT)) |
139 |
+ |
140 |
+ dnl |
141 |
+ dnl **** signal handling **** |
142 |
+diff --git a/utmp.c b/utmp.c |
143 |
+index da8d7ff..c864d07 100644 |
144 |
+--- a/utmp.c |
145 |
++++ b/utmp.c |
146 |
+@@ -381,7 +381,7 @@ static int pututslot(slot_t slot, struct utmpx *u, char *host, Window *win) |
147 |
+ struct utmp *u; |
148 |
+ { |
149 |
+ u->ut_type = DEAD_PROCESS; |
150 |
+-#if (!defined(linux) || defined(EMPTY)) && !defined(__CYGWIN__) |
151 |
++#if defined(HAVE_UT_EXIT) |
152 |
+ u->ut_exit.e_termination = 0; |
153 |
+ u->ut_exit.e_exit = 0; |
154 |
+ #endif |
155 |
|
156 |
diff --git a/app-misc/screen/files/screenrc b/app-misc/screen/files/screenrc |
157 |
new file mode 100644 |
158 |
index 0000000..7c3478a |
159 |
--- /dev/null |
160 |
+++ b/app-misc/screen/files/screenrc |
161 |
@@ -0,0 +1,356 @@ |
162 |
+# Copyright 1999-2018 Gentoo Authors |
163 |
+# Distributed under the terms of the GNU General Public License v2 |
164 |
+# |
165 |
+# /etc/screenrc |
166 |
+# |
167 |
+# This is the system wide screenrc. |
168 |
+# |
169 |
+# You can use this file to change the default behavior of screen system wide |
170 |
+# or copy it to ~/.screenrc and use it as a starting point for your own |
171 |
+# settings. |
172 |
+# |
173 |
+# Commands in this file are used to set options, bind screen functions to |
174 |
+# keys, redefine terminal capabilities, and to automatically establish one or |
175 |
+# more windows at the beginning of your screen session. |
176 |
+# |
177 |
+# This is not a comprehensive list of options, look at the screen manual for |
178 |
+# details on everything that you can put in this file. |
179 |
+# |
180 |
+# |
181 |
+ |
182 |
+# ============================================================================== |
183 |
+# SCREEN SETTINGS |
184 |
+# ============================================================================== |
185 |
+ |
186 |
+# ESCAPE - the COMMAND CHARACTER |
187 |
+# =============================================================== |
188 |
+# escape ^aa # default |
189 |
+# escape ^^^^ # suggested binding (Control-^) for Emacs users |
190 |
+ |
191 |
+ |
192 |
+# PASSWORD |
193 |
+# =============================================================== |
194 |
+# This commands sets the *internal* password for the screen session. |
195 |
+# WARNING!! If this is set then a "lock" command will only let you in to the |
196 |
+# session after you enter the user's account password and then *also* |
197 |
+# the internal password for that session. This gives additional safety but, |
198 |
+# if you forget the internal password then you cannot resume your session. |
199 |
+# Use :password to generate a password |
200 |
+# password ODSJQf.4IJN7E # "1234" |
201 |
+ |
202 |
+ |
203 |
+# VARIABLES |
204 |
+# =============================================================== |
205 |
+# No annoying audible bell, using "visual bell" |
206 |
+# vbell on # default: off |
207 |
+# vbell_msg " -- Bell,Bell!! -- " # default: "Wuff,Wuff!!" |
208 |
+ |
209 |
+# Automatically detach on hangup. |
210 |
+ autodetach on # default: on |
211 |
+ |
212 |
+# Don't display the copyright page |
213 |
+ startup_message off # default: on |
214 |
+ |
215 |
+# Uses nethack-style messages |
216 |
+# nethack on # default: off |
217 |
+ |
218 |
+# Affects the copying of text regions |
219 |
+ crlf off # default: off |
220 |
+ |
221 |
+# Enable/disable multiuser mode. Standard screen operation is singleuser. |
222 |
+# In multiuser mode the commands acladd, aclchg, aclgrp and acldel can be used |
223 |
+# to enable (and disable) other user accessing this screen session. |
224 |
+# Requires suid-root. |
225 |
+ multiuser off |
226 |
+ |
227 |
+# Change default scrollback value for new windows |
228 |
+ defscrollback 1000 # default: 100 |
229 |
+ |
230 |
+# Define the time that all windows monitored for silence should |
231 |
+# wait before displaying a message. Default 30 seconds. |
232 |
+ silencewait 15 # default: 30 |
233 |
+ |
234 |
+# bufferfile: The file to use for commands |
235 |
+# "readbuf" ('<') and "writebuf" ('>'): |
236 |
+ bufferfile $HOME/.screen_exchange |
237 |
+# |
238 |
+# hardcopydir: The directory which contains all hardcopies. |
239 |
+# hardcopydir ~/.hardcopy |
240 |
+# hardcopydir ~/.screen |
241 |
+# |
242 |
+# shell: Default process started in screen's windows. |
243 |
+# Makes it possible to use a different shell inside screen |
244 |
+# than is set as the default login shell. |
245 |
+# If begins with a '-' character, the shell will be started as a login shell. |
246 |
+# shell zsh |
247 |
+# shell bash |
248 |
+# shell ksh |
249 |
+ shell -$SHELL |
250 |
+ |
251 |
+# shellaka '> |tcsh' |
252 |
+# shelltitle '$ |bash' |
253 |
+ |
254 |
+# emulate .logout message |
255 |
+ pow_detach_msg "Screen session of \$LOGNAME \$:cr:\$:nl:ended." |
256 |
+ |
257 |
+# caption always " %w --- %c:%s" |
258 |
+# caption always "%3n %t%? @%u%?%? [%h]%?%=%c" |
259 |
+ |
260 |
+# advertise hardstatus support to $TERMCAP |
261 |
+# termcapinfo * '' 'hs:ts=\E_:fs=\E\\:ds=\E_\E\\' |
262 |
+ |
263 |
+# set every new windows hardstatus line to somenthing descriptive |
264 |
+# defhstatus "screen: ^En (^Et)" |
265 |
+ |
266 |
+# don't kill window after the process died |
267 |
+# zombie "^[" |
268 |
+ |
269 |
+# ignore displays that block on output |
270 |
+defnonblock on |
271 |
+ |
272 |
+# XTERM TWEAKS |
273 |
+# =============================================================== |
274 |
+ |
275 |
+# xterm understands both im/ic and doesn't have a status line. |
276 |
+# Note: Do not specify im and ic in the real termcap/info file as |
277 |
+# some programs (e.g. vi) will not work anymore. |
278 |
+ termcap xterm* hs@:cs=\E[%i%d;%dr:im=\E[4h:ei=\E[4l |
279 |
+ terminfo xterm* hs@:cs=\E[%i%p1%d;%p2%dr:im=\E[4h:ei=\E[4l |
280 |
+ |
281 |
+# 80/132 column switching must be enabled for ^AW to work |
282 |
+# change init sequence to not switch width |
283 |
+ termcapinfo xterm* Z0=\E[?3h:Z1=\E[?3l:is=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;4;6l |
284 |
+ |
285 |
+# Make the output buffer large for (fast) xterms. |
286 |
+# termcapinfo xterm* OL=10000 |
287 |
+ termcapinfo xterm* OL=100 |
288 |
+ |
289 |
+# tell screen that xterm can switch to dark background and has function |
290 |
+# keys. |
291 |
+ termcapinfo xterm* 'VR=\E[?5h:VN=\E[?5l' |
292 |
+ termcapinfo xterm* 'k1=\E[11~:k2=\E[12~:k3=\E[13~:k4=\E[14~' |
293 |
+ termcapinfo xterm* 'kh=\EOH:kI=\E[2~:kD=\E[3~:kH=\EOF:kP=\E[5~:kN=\E[6~' |
294 |
+ |
295 |
+# special xterm hardstatus: use the window title. |
296 |
+ termcapinfo xterm* 'hs:ts=\E]2;:fs=\007:ds=\E]2;screen\007' |
297 |
+ |
298 |
+#terminfo xterm 'vb=\E[?5h$<200/>\E[?5l' |
299 |
+ termcapinfo xterm* 'vi=\E[?25l:ve=\E[34h\E[?25h:vs=\E[34l' |
300 |
+ |
301 |
+# emulate part of the 'K' charset |
302 |
+ termcapinfo xterm* 'XC=K%,%\E(B,[\304,\\\\\326,]\334,{\344,|\366,}\374,~\337' |
303 |
+ |
304 |
+# xterm-52 tweaks: |
305 |
+# - uses background color for delete operations |
306 |
+ termcapinfo xterm* be |
307 |
+ |
308 |
+# Do not use xterm's alternative window buffer, it breaks scrollback (see bug #61195) |
309 |
+ termcapinfo xterm*|xs ti@:te=\E[2J |
310 |
+ |
311 |
+# WYSE TERMINALS |
312 |
+# =============================================================== |
313 |
+ |
314 |
+#wyse-75-42 must have flow control (xo = "terminal uses xon/xoff") |
315 |
+#essential to have it here, as this is a slow terminal. |
316 |
+ termcapinfo wy75-42 xo:hs@ |
317 |
+ |
318 |
+# New termcap sequences for cursor application mode. |
319 |
+ termcapinfo wy* CS=\E[?1h:CE=\E[?1l:vi=\E[?25l:ve=\E[?25h:VR=\E[?5h:VN=\E[?5l:cb=\E[1K:CD=\E[1J |
320 |
+ |
321 |
+ |
322 |
+# OTHER TERMINALS |
323 |
+# =============================================================== |
324 |
+ |
325 |
+# make hp700 termcap/info better |
326 |
+ termcapinfo hp700 'Z0=\E[?3h:Z1=\E[?3l:hs:ts=\E[62"p\E[0$~\E[2$~\E[1$}:fs=\E[0}\E[61"p:ds=\E[62"p\E[1$~\E[61"p:ic@' |
327 |
+ |
328 |
+# Extend the vt100 desciption by some sequences. |
329 |
+ termcap vt100* ms:AL=\E[%dL:DL=\E[%dM:UP=\E[%dA:DO=\E[%dB:LE=\E[%dD:RI=\E[%dC |
330 |
+ terminfo vt100* ms:AL=\E[%p1%dL:DL=\E[%p1%dM:UP=\E[%p1%dA:DO=\E[%p1%dB:LE=\E[%p1%dD:RI=\E[%p1%dC |
331 |
+ termcapinfo linux C8 |
332 |
+# old rxvt versions also need this |
333 |
+# termcapinfo rxvt C8 |
334 |
+ |
335 |
+ |
336 |
+# KEYBINDINGS |
337 |
+# ============================================================== |
338 |
+# The "bind" command assign keys to (internal) commands |
339 |
+# SCREEN checks all the keys you type; you type the key |
340 |
+# which is known as the "command character" then SCREEN |
341 |
+# eats this key, too, and checks whether this key is |
342 |
+# "bound" to a command. If so then SCREEN will execute it. |
343 |
+# |
344 |
+# The command "bind" allows you to chose which keys |
345 |
+# will be assigned to the commands. |
346 |
+# |
347 |
+# Some commands are bound to several keys - |
348 |
+# usually to both some letter and its corresponding |
349 |
+# control key combination, eg the command |
350 |
+# "(create) screen" is bound to both 'c' and '^C'. |
351 |
+# |
352 |
+# The following list shows the default bindings: |
353 |
+# |
354 |
+# break ^B b |
355 |
+# clear C |
356 |
+# colon : |
357 |
+# copy ^[ [ |
358 |
+# detach ^D d |
359 |
+# digraph ^V |
360 |
+# displays * |
361 |
+# dumptermcap . |
362 |
+# fit F |
363 |
+# flow ^F f |
364 |
+# focus ^I |
365 |
+# hardcopy h |
366 |
+# help ? |
367 |
+# history { } |
368 |
+# info i |
369 |
+# kill K k |
370 |
+# lastmsg ^M m |
371 |
+# license , |
372 |
+# log H |
373 |
+# login L |
374 |
+# meta x |
375 |
+# monitor M |
376 |
+# next ^@ ^N sp n |
377 |
+# number N |
378 |
+# only Q |
379 |
+# other ^X |
380 |
+# pow_break B |
381 |
+# pow_detach D |
382 |
+# prev ^H ^P p ^? |
383 |
+# quit \ |
384 |
+# readbuf < |
385 |
+# redisplay ^L l |
386 |
+# remove X |
387 |
+# removebuf = |
388 |
+# reset Z |
389 |
+# screen ^C c |
390 |
+# select " ' |
391 |
+# silence _ |
392 |
+# split S |
393 |
+# suspend ^Z z |
394 |
+# time ^T t |
395 |
+# title A |
396 |
+# vbell ^G |
397 |
+# version v |
398 |
+# width W |
399 |
+# windows ^W w |
400 |
+# wrap ^R r |
401 |
+# writebuf > |
402 |
+# xoff ^S s |
403 |
+# xon ^Q q |
404 |
+# ^] paste . |
405 |
+# - select - |
406 |
+# 0 select 0 |
407 |
+# 1 select 1 |
408 |
+# 2 select 2 |
409 |
+# 3 select 3 |
410 |
+# 4 select 4 |
411 |
+# 5 select 5 |
412 |
+# 6 select 6 |
413 |
+# 7 select 7 |
414 |
+# 8 select 8 |
415 |
+# 9 select 9 |
416 |
+# I login on |
417 |
+# O login off |
418 |
+# ] paste . |
419 |
+# |
420 |
+ |
421 |
+# And here are the default bind commands if you need them: |
422 |
+# |
423 |
+# bind A title |
424 |
+# bind C clear |
425 |
+# bind D pow_detach |
426 |
+# bind F fit |
427 |
+# bind H log |
428 |
+# bind I login on |
429 |
+# bind K kill |
430 |
+# bind L login |
431 |
+# bind M monitor |
432 |
+# bind N number |
433 |
+# bind O login off |
434 |
+# bind Q only |
435 |
+# bind S split |
436 |
+# bind W width |
437 |
+# bind X remove |
438 |
+# bind Z reset |
439 |
+ |
440 |
+# Let's remove some dangerous key bindings ... |
441 |
+ bind k |
442 |
+ bind ^k |
443 |
+# bind . dumptermcap # default |
444 |
+ bind . |
445 |
+# bind ^\ quit # default |
446 |
+ bind ^\ |
447 |
+# bind \\ quit # default |
448 |
+ bind \\ |
449 |
+# bind ^h ??? # default |
450 |
+ bind ^h |
451 |
+# bind h hardcopy # default |
452 |
+ bind h |
453 |
+ |
454 |
+# ... and make them better. |
455 |
+ bind 'K' kill |
456 |
+ bind 'I' login on |
457 |
+ bind 'O' login off |
458 |
+ bind '}' history |
459 |
+ |
460 |
+# Yet another hack: |
461 |
+# Prepend/append register [/] to the paste if ^a^] is pressed. |
462 |
+# This lets me have autoindent mode in vi. |
463 |
+ register [ "\033:se noai\015a" |
464 |
+ register ] "\033:se ai\015a" |
465 |
+ bind ^] paste [.] |
466 |
+ |
467 |
+ |
468 |
+# hardstatus alwaysignore |
469 |
+# hardstatus alwayslastline "%Lw" |
470 |
+ |
471 |
+# Resize the current region. The space will be removed from or added to |
472 |
+# the region below or if there's not enough space from the region above. |
473 |
+ bind = resize = |
474 |
+ bind + resize +3 |
475 |
+ bind - resize -3 |
476 |
+# bind _ resize max |
477 |
+# |
478 |
+# attrcolor u "-u b" |
479 |
+# attrcolor b "R" |
480 |
+ |
481 |
+# STARTUP SCREENS |
482 |
+# =============================================================== |
483 |
+# Defines the time screen delays a new message when one message |
484 |
+# is currently displayed. The default is 1 second. |
485 |
+# msgminwait 2 |
486 |
+ |
487 |
+# Time a message is displayed if screen is not disturbed by |
488 |
+# other activity. The dafault is 5 seconds: |
489 |
+# msgwait 2 |
490 |
+ |
491 |
+# Briefly show the version number of this starting |
492 |
+# screen session - but only for *one* second: |
493 |
+# msgwait 1 |
494 |
+# version |
495 |
+ |
496 |
+# Welcome the user: |
497 |
+# echo "welcome :-)" |
498 |
+# echo "I love you today." |
499 |
+ |
500 |
+# Uncomment one/some following lines to automatically let |
501 |
+# SCREEN start some programs in the given window numbers: |
502 |
+# screen -t MAIL 0 mutt |
503 |
+# screen -t EDIT 1 vim |
504 |
+# screen -t GOOGLE 2 links http://www.google.com |
505 |
+# screen -t NEWS 3 slrn |
506 |
+# screen -t WWW 4 links http://www.math.fu-berlin.de/~guckes/ |
507 |
+# screen 5 |
508 |
+# screen 6 |
509 |
+ |
510 |
+# Set the environment variable var to value string. If only var is specified, |
511 |
+# you'll be prompted to enter a value. If no parameters are specified, |
512 |
+# you'll be prompted for both variable and value. The environment is |
513 |
+# inherited by all subsequently forked shells. |
514 |
+# setenv PROMPT_COMMAND 'echo -n -e "\033k\033\134"' |
515 |
+ |
516 |
+# Don't you want to start programs which need a DISPLAY ? |
517 |
+# setenv DISPLAY '' |
518 |
|
519 |
diff --git a/app-misc/screen/metadata.xml b/app-misc/screen/metadata.xml |
520 |
new file mode 100644 |
521 |
index 0000000..85dc556 |
522 |
--- /dev/null |
523 |
+++ b/app-misc/screen/metadata.xml |
524 |
@@ -0,0 +1,35 @@ |
525 |
+<?xml version="1.0" encoding="UTF-8"?> |
526 |
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> |
527 |
+<pkgmetadata> |
528 |
+ <maintainer type="person"> |
529 |
+ <email>swegener@g.o</email> |
530 |
+ </maintainer> |
531 |
+ <maintainer type="project"> |
532 |
+ <email>shell-tools@g.o</email> |
533 |
+ <name>Gentoo Shell Tools Project</name> |
534 |
+ </maintainer> |
535 |
+ <longdescription> |
536 |
+Screen is a full-screen window manager that multiplexes a physical terminal |
537 |
+between several processes, typically interactive shells. Each virtual terminal |
538 |
+provides the functions of the DEC VT100 terminal and, in addition, several |
539 |
+control functions from the ANSI X3.64 (ISO 6429) and ISO 2022 standards (e.g., |
540 |
+insert/delete line and support for multiple character sets). There is a |
541 |
+scrollback history buffer for each virtual terminal and a copy-and-paste |
542 |
+mechanism that allows the user to move text regions between windows. When screen |
543 |
+is called, it creates a single window with a shell in it (or the specified |
544 |
+command) and then gets out of your way so that you can use the program as you |
545 |
+normally would. Then, at any time, you can create new (full-screen) windows with |
546 |
+other programs in them (including more shells), kill the current window, view a |
547 |
+list of the active windows, turn output logging on and off, copy text between |
548 |
+windows, view the scrollback history, switch between windows, etc. All windows |
549 |
+run their programs completely independent of each other. Programs continue to |
550 |
+run when their window is currently not visible and even when the whole screen |
551 |
+session is detached from the users terminal. |
552 |
+</longdescription> |
553 |
+ <use> |
554 |
+ <flag name="multiuser">Enable multiuser support (by setting correct |
555 |
+ permissions)</flag> |
556 |
+ <flag name="nethack">Express error messages in nethack style</flag> |
557 |
+ <flag name="utmp">Include utmp support</flag> |
558 |
+ </use> |
559 |
+</pkgmetadata> |
560 |
|
561 |
diff --git a/app-misc/screen/screen-4.5.1.ebuild b/app-misc/screen/screen-4.5.1.ebuild |
562 |
new file mode 100644 |
563 |
index 0000000..f395c42 |
564 |
--- /dev/null |
565 |
+++ b/app-misc/screen/screen-4.5.1.ebuild |
566 |
@@ -0,0 +1,163 @@ |
567 |
+# Copyright 1999-2018 Gentoo Authors |
568 |
+# Distributed under the terms of the GNU General Public License v2 |
569 |
+ |
570 |
+EAPI=6 |
571 |
+ |
572 |
+SCM="" |
573 |
+[[ "${PV}" = 9999 ]] && SCM="git-r3" |
574 |
+inherit autotools eutils flag-o-matic pam toolchain-funcs user ${SCM} |
575 |
+unset SCM |
576 |
+ |
577 |
+DESCRIPTION="screen manager with VT100/ANSI terminal emulation" |
578 |
+HOMEPAGE="https://www.gnu.org/software/screen/" |
579 |
+ |
580 |
+if [[ "${PV}" != 9999 ]] ; then |
581 |
+ SRC_URI="mirror://gnu/${PN}/${P}.tar.gz" |
582 |
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" |
583 |
+else |
584 |
+ EGIT_REPO_URI="git://git.savannah.gnu.org/screen.git" |
585 |
+ EGIT_CHECKOUT_DIR="${WORKDIR}/${P}" # needed for setting S later on |
586 |
+ S="${WORKDIR}"/${P}/src |
587 |
+fi |
588 |
+ |
589 |
+LICENSE="GPL-2" |
590 |
+SLOT="0" |
591 |
+IUSE="debug nethack pam selinux multiuser" |
592 |
+ |
593 |
+CDEPEND=" |
594 |
+ >=sys-libs/ncurses-5.2:0= |
595 |
+ pam? ( virtual/pam )" |
596 |
+RDEPEND="${CDEPEND} |
597 |
+ selinux? ( sec-policy/selinux-screen )" |
598 |
+DEPEND="${CDEPEND} |
599 |
+ sys-apps/texinfo" |
600 |
+ |
601 |
+PATCHES=( |
602 |
+ # Don't use utempter even if it is found on the system. |
603 |
+ "${FILESDIR}"/${PN}-4.3.0-no-utempter.patch |
604 |
+ # @ => @@ |
605 |
+ "${FILESDIR}"/${PN}-4.5.1-texinfo.patch |
606 |
+) |
607 |
+ |
608 |
+pkg_setup() { |
609 |
+ # Make sure utmp group exists, as it's used later on. |
610 |
+ enewgroup utmp 406 |
611 |
+} |
612 |
+ |
613 |
+src_prepare() { |
614 |
+ default |
615 |
+ |
616 |
+ # sched.h is a system header and causes problems with some C libraries |
617 |
+ mv sched.h _sched.h || die |
618 |
+ sed -i '/include/ s:sched.h:_sched.h:' screen.h || die |
619 |
+ |
620 |
+ # Fix manpage. |
621 |
+ sed -i \ |
622 |
+ -e "s:/usr/local/etc/screenrc:${EPREFIX}/etc/screenrc:g" \ |
623 |
+ -e "s:/usr/local/screens:${EPREFIX}/tmp/screen:g" \ |
624 |
+ -e "s:/local/etc/screenrc:${EPREFIX}/etc/screenrc:g" \ |
625 |
+ -e "s:/etc/utmp:${EPREFIX}/var/run/utmp:g" \ |
626 |
+ -e "s:/local/screens/S\\\-:${EPREFIX}/tmp/screen/S\\\-:g" \ |
627 |
+ doc/screen.1 \ |
628 |
+ || die |
629 |
+ |
630 |
+ if [[ ${CHOST} == *-darwin* ]] || use elibc_musl ; then |
631 |
+ sed -i -e '/^#define UTMPOK/s/define/undef/' acconfig.h || die |
632 |
+ fi |
633 |
+ |
634 |
+ # disable musl dummy headers for utmp[x] |
635 |
+ use elibc_musl && append-cppflags "-D_UTMP_H -D_UTMPX_H" |
636 |
+ |
637 |
+ # reconfigure |
638 |
+ eautoreconf |
639 |
+} |
640 |
+ |
641 |
+src_configure() { |
642 |
+ append-cppflags "-DMAXWIN=${MAX_SCREEN_WINDOWS:-100}" |
643 |
+ |
644 |
+ if [[ ${CHOST} == *-solaris* ]] ; then |
645 |
+ # enable msg_header by upping the feature standard compatible |
646 |
+ # with c99 mode |
647 |
+ append-cppflags -D_XOPEN_SOURCE=600 |
648 |
+ fi |
649 |
+ |
650 |
+ use nethack || append-cppflags "-DNONETHACK" |
651 |
+ use debug && append-cppflags "-DDEBUG" |
652 |
+ |
653 |
+ econf \ |
654 |
+ --with-socket-dir="${EPREFIX}/tmp/screen" \ |
655 |
+ --with-sys-screenrc="${EPREFIX}/etc/screenrc" \ |
656 |
+ --with-pty-mode=0620 \ |
657 |
+ --with-pty-group=5 \ |
658 |
+ --enable-rxvt_osc \ |
659 |
+ --enable-telnet \ |
660 |
+ --enable-colors256 \ |
661 |
+ $(use_enable pam) |
662 |
+} |
663 |
+ |
664 |
+src_compile() { |
665 |
+ LC_ALL=POSIX emake comm.h term.h |
666 |
+ emake osdef.h |
667 |
+ |
668 |
+ emake -C doc screen.info |
669 |
+ default |
670 |
+} |
671 |
+ |
672 |
+src_install() { |
673 |
+ local DOCS=( |
674 |
+ README ChangeLog INSTALL TODO NEWS* patchlevel.h |
675 |
+ doc/{FAQ,README.DOTSCREEN,fdpat.ps,window_to_display.ps} |
676 |
+ ) |
677 |
+ |
678 |
+ default |
679 |
+ |
680 |
+ local tmpfiles_perms tmpfiles_group |
681 |
+ |
682 |
+ if use multiuser || use prefix |
683 |
+ then |
684 |
+ fperms 4755 /usr/bin/screen-${PV} |
685 |
+ tmpfiles_perms="0755" |
686 |
+ tmpfiles_group="root" |
687 |
+ else |
688 |
+ fowners root:utmp /usr/bin/screen-${PV} |
689 |
+ fperms 2755 /usr/bin/screen-${PV} |
690 |
+ tmpfiles_perms="0775" |
691 |
+ tmpfiles_group="utmp" |
692 |
+ fi |
693 |
+ |
694 |
+ dodir /etc/tmpfiles.d |
695 |
+ echo "d /tmp/screen ${tmpfiles_perms} root ${tmpfiles_group}" \ |
696 |
+ > "${ED}"/etc/tmpfiles.d/screen.conf |
697 |
+ |
698 |
+ insinto /usr/share/screen |
699 |
+ doins terminfo/{screencap,screeninfo.src} |
700 |
+ |
701 |
+ insinto /etc |
702 |
+ doins "${FILESDIR}"/screenrc |
703 |
+ |
704 |
+ pamd_mimic_system screen auth |
705 |
+} |
706 |
+ |
707 |
+pkg_postinst() { |
708 |
+ if [[ -z ${REPLACING_VERSIONS} ]] |
709 |
+ then |
710 |
+ elog "Some dangerous key bindings have been removed or changed to more safe values." |
711 |
+ elog "We enable some xterm hacks in our default screenrc, which might break some" |
712 |
+ elog "applications. Please check /etc/screenrc for information on these changes." |
713 |
+ fi |
714 |
+ |
715 |
+ # Add /tmp/screen in case it doesn't exist yet. This should solve |
716 |
+ # problems like bug #508634 where tmpfiles.d isn't in effect. |
717 |
+ local rundir="${EROOT%/}/tmp/screen" |
718 |
+ if [[ ! -d ${rundir} ]] ; then |
719 |
+ if use multiuser || use prefix ; then |
720 |
+ tmpfiles_group="root" |
721 |
+ else |
722 |
+ tmpfiles_group="utmp" |
723 |
+ fi |
724 |
+ mkdir -m 0775 "${rundir}" |
725 |
+ chgrp ${tmpfiles_group} "${rundir}" |
726 |
+ fi |
727 |
+ |
728 |
+ ewarn "This revision changes the screen socket location to ${rundir}" |
729 |
+} |
730 |
|
731 |
diff --git a/app-misc/screen/screen-4.6.0.ebuild b/app-misc/screen/screen-4.6.0.ebuild |
732 |
new file mode 100644 |
733 |
index 0000000..393243a |
734 |
--- /dev/null |
735 |
+++ b/app-misc/screen/screen-4.6.0.ebuild |
736 |
@@ -0,0 +1,161 @@ |
737 |
+# Copyright 1999-2018 Gentoo Authors |
738 |
+# Distributed under the terms of the GNU General Public License v2 |
739 |
+ |
740 |
+EAPI=6 |
741 |
+ |
742 |
+SCM="" |
743 |
+[[ "${PV}" = 9999 ]] && SCM="git-r3" |
744 |
+inherit autotools eutils flag-o-matic pam toolchain-funcs user ${SCM} |
745 |
+unset SCM |
746 |
+ |
747 |
+DESCRIPTION="screen manager with VT100/ANSI terminal emulation" |
748 |
+HOMEPAGE="https://www.gnu.org/software/screen/" |
749 |
+ |
750 |
+if [[ "${PV}" != 9999 ]] ; then |
751 |
+ SRC_URI="mirror://gnu/${PN}/${P}.tar.gz" |
752 |
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" |
753 |
+else |
754 |
+ EGIT_REPO_URI="git://git.savannah.gnu.org/screen.git" |
755 |
+ EGIT_CHECKOUT_DIR="${WORKDIR}/${P}" # needed for setting S later on |
756 |
+ S="${WORKDIR}"/${P}/src |
757 |
+fi |
758 |
+ |
759 |
+LICENSE="GPL-2" |
760 |
+SLOT="0" |
761 |
+IUSE="debug nethack pam selinux multiuser" |
762 |
+ |
763 |
+CDEPEND=" |
764 |
+ >=sys-libs/ncurses-5.2:0= |
765 |
+ pam? ( virtual/pam )" |
766 |
+RDEPEND="${CDEPEND} |
767 |
+ selinux? ( sec-policy/selinux-screen )" |
768 |
+DEPEND="${CDEPEND} |
769 |
+ sys-apps/texinfo" |
770 |
+ |
771 |
+PATCHES=( |
772 |
+ # Don't use utempter even if it is found on the system. |
773 |
+ "${FILESDIR}"/${PN}-4.3.0-no-utempter.patch |
774 |
+) |
775 |
+ |
776 |
+pkg_setup() { |
777 |
+ # Make sure utmp group exists, as it's used later on. |
778 |
+ enewgroup utmp 406 |
779 |
+} |
780 |
+ |
781 |
+src_prepare() { |
782 |
+ default |
783 |
+ |
784 |
+ # sched.h is a system header and causes problems with some C libraries |
785 |
+ mv sched.h _sched.h || die |
786 |
+ sed -i '/include/ s:sched.h:_sched.h:' screen.h || die |
787 |
+ |
788 |
+ # Fix manpage. |
789 |
+ sed -i \ |
790 |
+ -e "s:/usr/local/etc/screenrc:${EPREFIX}/etc/screenrc:g" \ |
791 |
+ -e "s:/usr/local/screens:${EPREFIX}/tmp/screen:g" \ |
792 |
+ -e "s:/local/etc/screenrc:${EPREFIX}/etc/screenrc:g" \ |
793 |
+ -e "s:/etc/utmp:${EPREFIX}/var/run/utmp:g" \ |
794 |
+ -e "s:/local/screens/S\\\-:${EPREFIX}/tmp/screen/S\\\-:g" \ |
795 |
+ doc/screen.1 \ |
796 |
+ || die |
797 |
+ |
798 |
+ if [[ ${CHOST} == *-darwin* ]] || use elibc_musl ; then |
799 |
+ sed -i -e '/^#define UTMPOK/s/define/undef/' acconfig.h || die |
800 |
+ fi |
801 |
+ |
802 |
+ # disable musl dummy headers for utmp[x] |
803 |
+ use elibc_musl && append-cppflags "-D_UTMP_H -D_UTMPX_H" |
804 |
+ |
805 |
+ # reconfigure |
806 |
+ eautoreconf |
807 |
+} |
808 |
+ |
809 |
+src_configure() { |
810 |
+ append-cppflags "-DMAXWIN=${MAX_SCREEN_WINDOWS:-100}" |
811 |
+ |
812 |
+ if [[ ${CHOST} == *-solaris* ]] ; then |
813 |
+ # enable msg_header by upping the feature standard compatible |
814 |
+ # with c99 mode |
815 |
+ append-cppflags -D_XOPEN_SOURCE=600 |
816 |
+ fi |
817 |
+ |
818 |
+ use nethack || append-cppflags "-DNONETHACK" |
819 |
+ use debug && append-cppflags "-DDEBUG" |
820 |
+ |
821 |
+ econf \ |
822 |
+ --with-socket-dir="${EPREFIX}/tmp/screen" \ |
823 |
+ --with-sys-screenrc="${EPREFIX}/etc/screenrc" \ |
824 |
+ --with-pty-mode=0620 \ |
825 |
+ --with-pty-group=5 \ |
826 |
+ --enable-rxvt_osc \ |
827 |
+ --enable-telnet \ |
828 |
+ --enable-colors256 \ |
829 |
+ $(use_enable pam) |
830 |
+} |
831 |
+ |
832 |
+src_compile() { |
833 |
+ LC_ALL=POSIX emake comm.h term.h |
834 |
+ emake osdef.h |
835 |
+ |
836 |
+ emake -C doc screen.info |
837 |
+ default |
838 |
+} |
839 |
+ |
840 |
+src_install() { |
841 |
+ local DOCS=( |
842 |
+ README ChangeLog INSTALL TODO NEWS* patchlevel.h |
843 |
+ doc/{FAQ,README.DOTSCREEN,fdpat.ps,window_to_display.ps} |
844 |
+ ) |
845 |
+ |
846 |
+ default |
847 |
+ |
848 |
+ local tmpfiles_perms tmpfiles_group |
849 |
+ |
850 |
+ if use multiuser || use prefix |
851 |
+ then |
852 |
+ fperms 4755 /usr/bin/screen-${PV} |
853 |
+ tmpfiles_perms="0755" |
854 |
+ tmpfiles_group="root" |
855 |
+ else |
856 |
+ fowners root:utmp /usr/bin/screen-${PV} |
857 |
+ fperms 2755 /usr/bin/screen-${PV} |
858 |
+ tmpfiles_perms="0775" |
859 |
+ tmpfiles_group="utmp" |
860 |
+ fi |
861 |
+ |
862 |
+ dodir /etc/tmpfiles.d |
863 |
+ echo "d /tmp/screen ${tmpfiles_perms} root ${tmpfiles_group}" \ |
864 |
+ > "${ED}"/etc/tmpfiles.d/screen.conf |
865 |
+ |
866 |
+ insinto /usr/share/screen |
867 |
+ doins terminfo/{screencap,screeninfo.src} |
868 |
+ |
869 |
+ insinto /etc |
870 |
+ doins "${FILESDIR}"/screenrc |
871 |
+ |
872 |
+ pamd_mimic_system screen auth |
873 |
+} |
874 |
+ |
875 |
+pkg_postinst() { |
876 |
+ if [[ -z ${REPLACING_VERSIONS} ]] |
877 |
+ then |
878 |
+ elog "Some dangerous key bindings have been removed or changed to more safe values." |
879 |
+ elog "We enable some xterm hacks in our default screenrc, which might break some" |
880 |
+ elog "applications. Please check /etc/screenrc for information on these changes." |
881 |
+ fi |
882 |
+ |
883 |
+ # Add /tmp/screen in case it doesn't exist yet. This should solve |
884 |
+ # problems like bug #508634 where tmpfiles.d isn't in effect. |
885 |
+ local rundir="${EROOT%/}/tmp/screen" |
886 |
+ if [[ ! -d ${rundir} ]] ; then |
887 |
+ if use multiuser || use prefix ; then |
888 |
+ tmpfiles_group="root" |
889 |
+ else |
890 |
+ tmpfiles_group="utmp" |
891 |
+ fi |
892 |
+ mkdir -m 0775 "${rundir}" |
893 |
+ chgrp ${tmpfiles_group} "${rundir}" |
894 |
+ fi |
895 |
+ |
896 |
+ ewarn "This revision changes the screen socket location to ${rundir}" |
897 |
+} |
898 |
|
899 |
diff --git a/app-misc/screen/screen-4.6.1.ebuild b/app-misc/screen/screen-4.6.1.ebuild |
900 |
new file mode 100644 |
901 |
index 0000000..ee99e92 |
902 |
--- /dev/null |
903 |
+++ b/app-misc/screen/screen-4.6.1.ebuild |
904 |
@@ -0,0 +1,161 @@ |
905 |
+# Copyright 1999-2018 Gentoo Authors |
906 |
+# Distributed under the terms of the GNU General Public License v2 |
907 |
+ |
908 |
+EAPI=6 |
909 |
+ |
910 |
+SCM="" |
911 |
+[[ "${PV}" = 9999 ]] && SCM="git-r3" |
912 |
+inherit autotools eutils flag-o-matic pam toolchain-funcs user ${SCM} |
913 |
+unset SCM |
914 |
+ |
915 |
+DESCRIPTION="screen manager with VT100/ANSI terminal emulation" |
916 |
+HOMEPAGE="https://www.gnu.org/software/screen/" |
917 |
+ |
918 |
+if [[ "${PV}" != 9999 ]] ; then |
919 |
+ SRC_URI="mirror://gnu/${PN}/${P}.tar.gz" |
920 |
+ KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" |
921 |
+else |
922 |
+ EGIT_REPO_URI="git://git.savannah.gnu.org/screen.git" |
923 |
+ EGIT_CHECKOUT_DIR="${WORKDIR}/${P}" # needed for setting S later on |
924 |
+ S="${WORKDIR}"/${P}/src |
925 |
+fi |
926 |
+ |
927 |
+LICENSE="GPL-2" |
928 |
+SLOT="0" |
929 |
+IUSE="debug nethack pam selinux multiuser" |
930 |
+ |
931 |
+CDEPEND=" |
932 |
+ >=sys-libs/ncurses-5.2:0= |
933 |
+ pam? ( virtual/pam )" |
934 |
+RDEPEND="${CDEPEND} |
935 |
+ selinux? ( sec-policy/selinux-screen )" |
936 |
+DEPEND="${CDEPEND} |
937 |
+ sys-apps/texinfo" |
938 |
+ |
939 |
+PATCHES=( |
940 |
+ # Don't use utempter even if it is found on the system. |
941 |
+ "${FILESDIR}"/${PN}-4.3.0-no-utempter.patch |
942 |
+) |
943 |
+ |
944 |
+pkg_setup() { |
945 |
+ # Make sure utmp group exists, as it's used later on. |
946 |
+ enewgroup utmp 406 |
947 |
+} |
948 |
+ |
949 |
+src_prepare() { |
950 |
+ default |
951 |
+ |
952 |
+ # sched.h is a system header and causes problems with some C libraries |
953 |
+ mv sched.h _sched.h || die |
954 |
+ sed -i '/include/ s:sched.h:_sched.h:' screen.h || die |
955 |
+ |
956 |
+ # Fix manpage. |
957 |
+ sed -i \ |
958 |
+ -e "s:/usr/local/etc/screenrc:${EPREFIX}/etc/screenrc:g" \ |
959 |
+ -e "s:/usr/local/screens:${EPREFIX}/tmp/screen:g" \ |
960 |
+ -e "s:/local/etc/screenrc:${EPREFIX}/etc/screenrc:g" \ |
961 |
+ -e "s:/etc/utmp:${EPREFIX}/var/run/utmp:g" \ |
962 |
+ -e "s:/local/screens/S\\\-:${EPREFIX}/tmp/screen/S\\\-:g" \ |
963 |
+ doc/screen.1 \ |
964 |
+ || die |
965 |
+ |
966 |
+ if [[ ${CHOST} == *-darwin* ]] || use elibc_musl ; then |
967 |
+ sed -i -e '/^#define UTMPOK/s/define/undef/' acconfig.h || die |
968 |
+ fi |
969 |
+ |
970 |
+ # disable musl dummy headers for utmp[x] |
971 |
+ use elibc_musl && append-cppflags "-D_UTMP_H -D_UTMPX_H" |
972 |
+ |
973 |
+ # reconfigure |
974 |
+ eautoreconf |
975 |
+} |
976 |
+ |
977 |
+src_configure() { |
978 |
+ append-cppflags "-DMAXWIN=${MAX_SCREEN_WINDOWS:-100}" |
979 |
+ |
980 |
+ if [[ ${CHOST} == *-solaris* ]] ; then |
981 |
+ # enable msg_header by upping the feature standard compatible |
982 |
+ # with c99 mode |
983 |
+ append-cppflags -D_XOPEN_SOURCE=600 |
984 |
+ fi |
985 |
+ |
986 |
+ use nethack || append-cppflags "-DNONETHACK" |
987 |
+ use debug && append-cppflags "-DDEBUG" |
988 |
+ |
989 |
+ econf \ |
990 |
+ --with-socket-dir="${EPREFIX}/tmp/screen" \ |
991 |
+ --with-sys-screenrc="${EPREFIX}/etc/screenrc" \ |
992 |
+ --with-pty-mode=0620 \ |
993 |
+ --with-pty-group=5 \ |
994 |
+ --enable-rxvt_osc \ |
995 |
+ --enable-telnet \ |
996 |
+ --enable-colors256 \ |
997 |
+ $(use_enable pam) |
998 |
+} |
999 |
+ |
1000 |
+src_compile() { |
1001 |
+ LC_ALL=POSIX emake comm.h term.h |
1002 |
+ emake osdef.h |
1003 |
+ |
1004 |
+ emake -C doc screen.info |
1005 |
+ default |
1006 |
+} |
1007 |
+ |
1008 |
+src_install() { |
1009 |
+ local DOCS=( |
1010 |
+ README ChangeLog INSTALL TODO NEWS* patchlevel.h |
1011 |
+ doc/{FAQ,README.DOTSCREEN,fdpat.ps,window_to_display.ps} |
1012 |
+ ) |
1013 |
+ |
1014 |
+ default |
1015 |
+ |
1016 |
+ local tmpfiles_perms tmpfiles_group |
1017 |
+ |
1018 |
+ if use multiuser || use prefix |
1019 |
+ then |
1020 |
+ fperms 4755 /usr/bin/screen-${PV} |
1021 |
+ tmpfiles_perms="0755" |
1022 |
+ tmpfiles_group="root" |
1023 |
+ else |
1024 |
+ fowners root:utmp /usr/bin/screen-${PV} |
1025 |
+ fperms 2755 /usr/bin/screen-${PV} |
1026 |
+ tmpfiles_perms="0775" |
1027 |
+ tmpfiles_group="utmp" |
1028 |
+ fi |
1029 |
+ |
1030 |
+ dodir /etc/tmpfiles.d |
1031 |
+ echo "d /tmp/screen ${tmpfiles_perms} root ${tmpfiles_group}" \ |
1032 |
+ > "${ED}"/etc/tmpfiles.d/screen.conf |
1033 |
+ |
1034 |
+ insinto /usr/share/screen |
1035 |
+ doins terminfo/{screencap,screeninfo.src} |
1036 |
+ |
1037 |
+ insinto /etc |
1038 |
+ doins "${FILESDIR}"/screenrc |
1039 |
+ |
1040 |
+ pamd_mimic_system screen auth |
1041 |
+} |
1042 |
+ |
1043 |
+pkg_postinst() { |
1044 |
+ if [[ -z ${REPLACING_VERSIONS} ]] |
1045 |
+ then |
1046 |
+ elog "Some dangerous key bindings have been removed or changed to more safe values." |
1047 |
+ elog "We enable some xterm hacks in our default screenrc, which might break some" |
1048 |
+ elog "applications. Please check /etc/screenrc for information on these changes." |
1049 |
+ fi |
1050 |
+ |
1051 |
+ # Add /tmp/screen in case it doesn't exist yet. This should solve |
1052 |
+ # problems like bug #508634 where tmpfiles.d isn't in effect. |
1053 |
+ local rundir="${EROOT%/}/tmp/screen" |
1054 |
+ if [[ ! -d ${rundir} ]] ; then |
1055 |
+ if use multiuser || use prefix ; then |
1056 |
+ tmpfiles_group="root" |
1057 |
+ else |
1058 |
+ tmpfiles_group="utmp" |
1059 |
+ fi |
1060 |
+ mkdir -m 0775 "${rundir}" |
1061 |
+ chgrp ${tmpfiles_group} "${rundir}" |
1062 |
+ fi |
1063 |
+ |
1064 |
+ ewarn "This revision changes the screen socket location to ${rundir}" |
1065 |
+} |
1066 |
|
1067 |
diff --git a/app-misc/screen/screen-4.6.2.ebuild b/app-misc/screen/screen-4.6.2.ebuild |
1068 |
new file mode 100644 |
1069 |
index 0000000..831c965 |
1070 |
--- /dev/null |
1071 |
+++ b/app-misc/screen/screen-4.6.2.ebuild |
1072 |
@@ -0,0 +1,163 @@ |
1073 |
+# Copyright 1999-2018 Gentoo Authors |
1074 |
+# Distributed under the terms of the GNU General Public License v2 |
1075 |
+ |
1076 |
+EAPI=6 |
1077 |
+ |
1078 |
+SCM="" |
1079 |
+[[ "${PV}" = 9999 ]] && SCM="git-r3" |
1080 |
+inherit autotools eutils flag-o-matic pam toolchain-funcs user ${SCM} |
1081 |
+unset SCM |
1082 |
+ |
1083 |
+DESCRIPTION="screen manager with VT100/ANSI terminal emulation" |
1084 |
+HOMEPAGE="https://www.gnu.org/software/screen/" |
1085 |
+ |
1086 |
+if [[ "${PV}" != 9999 ]] ; then |
1087 |
+ SRC_URI="mirror://gnu/${PN}/${P}.tar.gz" |
1088 |
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" |
1089 |
+else |
1090 |
+ EGIT_REPO_URI="git://git.savannah.gnu.org/screen.git" |
1091 |
+ EGIT_CHECKOUT_DIR="${WORKDIR}/${P}" # needed for setting S later on |
1092 |
+ S="${WORKDIR}"/${P}/src |
1093 |
+fi |
1094 |
+ |
1095 |
+LICENSE="GPL-2" |
1096 |
+SLOT="0" |
1097 |
+IUSE="debug nethack pam selinux multiuser" |
1098 |
+ |
1099 |
+CDEPEND=" |
1100 |
+ >=sys-libs/ncurses-5.2:0= |
1101 |
+ pam? ( virtual/pam )" |
1102 |
+RDEPEND="${CDEPEND} |
1103 |
+ selinux? ( sec-policy/selinux-screen )" |
1104 |
+DEPEND="${CDEPEND} |
1105 |
+ sys-apps/texinfo" |
1106 |
+ |
1107 |
+PATCHES=( |
1108 |
+ # Don't use utempter even if it is found on the system. |
1109 |
+ "${FILESDIR}"/${PN}-4.3.0-no-utempter.patch |
1110 |
+ "${FILESDIR}"/${P}-utmp-exit.patch |
1111 |
+) |
1112 |
+ |
1113 |
+pkg_setup() { |
1114 |
+ # Make sure utmp group exists, as it's used later on. |
1115 |
+ enewgroup utmp 406 |
1116 |
+} |
1117 |
+ |
1118 |
+src_prepare() { |
1119 |
+ default |
1120 |
+ |
1121 |
+ # sched.h is a system header and causes problems with some C libraries |
1122 |
+ mv sched.h _sched.h || die |
1123 |
+ sed -i '/include/ s:sched.h:_sched.h:' screen.h || die |
1124 |
+ |
1125 |
+ # Fix manpage. |
1126 |
+ sed -i \ |
1127 |
+ -e "s:/usr/local/etc/screenrc:${EPREFIX}/etc/screenrc:g" \ |
1128 |
+ -e "s:/usr/local/screens:${EPREFIX}/tmp/screen:g" \ |
1129 |
+ -e "s:/local/etc/screenrc:${EPREFIX}/etc/screenrc:g" \ |
1130 |
+ -e "s:/etc/utmp:${EPREFIX}/var/run/utmp:g" \ |
1131 |
+ -e "s:/local/screens/S\\\-:${EPREFIX}/tmp/screen/S\\\-:g" \ |
1132 |
+ doc/screen.1 \ |
1133 |
+ || die |
1134 |
+ |
1135 |
+ |
1136 |
+ if [[ ${CHOST} == *-darwin* ]] || use elibc_musl ; then |
1137 |
+ sed -i -e '/^#define UTMPOK/s/define/undef/' acconfig.h || die |
1138 |
+ fi |
1139 |
+ |
1140 |
+ # disable musl dummy headers for utmp[x] |
1141 |
+ use elibc_musl && append-cppflags "-D_UTMP_H -D_UTMPX_H" |
1142 |
+ |
1143 |
+ # reconfigure |
1144 |
+ eautoreconf |
1145 |
+} |
1146 |
+ |
1147 |
+src_configure() { |
1148 |
+ append-cppflags "-DMAXWIN=${MAX_SCREEN_WINDOWS:-100}" |
1149 |
+ |
1150 |
+ if [[ ${CHOST} == *-solaris* ]] ; then |
1151 |
+ # enable msg_header by upping the feature standard compatible |
1152 |
+ # with c99 mode |
1153 |
+ append-cppflags -D_XOPEN_SOURCE=600 |
1154 |
+ fi |
1155 |
+ |
1156 |
+ use nethack || append-cppflags "-DNONETHACK" |
1157 |
+ use debug && append-cppflags "-DDEBUG" |
1158 |
+ |
1159 |
+ econf \ |
1160 |
+ --with-socket-dir="${EPREFIX}/tmp/screen" \ |
1161 |
+ --with-sys-screenrc="${EPREFIX}/etc/screenrc" \ |
1162 |
+ --with-pty-mode=0620 \ |
1163 |
+ --with-pty-group=5 \ |
1164 |
+ --enable-rxvt_osc \ |
1165 |
+ --enable-telnet \ |
1166 |
+ --enable-colors256 \ |
1167 |
+ $(use_enable pam) |
1168 |
+} |
1169 |
+ |
1170 |
+src_compile() { |
1171 |
+ LC_ALL=POSIX emake comm.h term.h |
1172 |
+ emake osdef.h |
1173 |
+ |
1174 |
+ emake -C doc screen.info |
1175 |
+ default |
1176 |
+} |
1177 |
+ |
1178 |
+src_install() { |
1179 |
+ local DOCS=( |
1180 |
+ README ChangeLog INSTALL TODO NEWS* patchlevel.h |
1181 |
+ doc/{FAQ,README.DOTSCREEN,fdpat.ps,window_to_display.ps} |
1182 |
+ ) |
1183 |
+ |
1184 |
+ default |
1185 |
+ |
1186 |
+ local tmpfiles_perms tmpfiles_group |
1187 |
+ |
1188 |
+ if use multiuser || use prefix |
1189 |
+ then |
1190 |
+ fperms 4755 /usr/bin/screen-${PV} |
1191 |
+ tmpfiles_perms="0755" |
1192 |
+ tmpfiles_group="root" |
1193 |
+ else |
1194 |
+ fowners root:utmp /usr/bin/screen-${PV} |
1195 |
+ fperms 2755 /usr/bin/screen-${PV} |
1196 |
+ tmpfiles_perms="0775" |
1197 |
+ tmpfiles_group="utmp" |
1198 |
+ fi |
1199 |
+ |
1200 |
+ dodir /etc/tmpfiles.d |
1201 |
+ echo "d /tmp/screen ${tmpfiles_perms} root ${tmpfiles_group}" \ |
1202 |
+ > "${ED}"/etc/tmpfiles.d/screen.conf |
1203 |
+ |
1204 |
+ insinto /usr/share/screen |
1205 |
+ doins terminfo/{screencap,screeninfo.src} |
1206 |
+ |
1207 |
+ insinto /etc |
1208 |
+ doins "${FILESDIR}"/screenrc |
1209 |
+ |
1210 |
+ pamd_mimic_system screen auth |
1211 |
+} |
1212 |
+ |
1213 |
+pkg_postinst() { |
1214 |
+ if [[ -z ${REPLACING_VERSIONS} ]] |
1215 |
+ then |
1216 |
+ elog "Some dangerous key bindings have been removed or changed to more safe values." |
1217 |
+ elog "We enable some xterm hacks in our default screenrc, which might break some" |
1218 |
+ elog "applications. Please check /etc/screenrc for information on these changes." |
1219 |
+ fi |
1220 |
+ |
1221 |
+ # Add /tmp/screen in case it doesn't exist yet. This should solve |
1222 |
+ # problems like bug #508634 where tmpfiles.d isn't in effect. |
1223 |
+ local rundir="${EROOT%/}/tmp/screen" |
1224 |
+ if [[ ! -d ${rundir} ]] ; then |
1225 |
+ if use multiuser || use prefix ; then |
1226 |
+ tmpfiles_group="root" |
1227 |
+ else |
1228 |
+ tmpfiles_group="utmp" |
1229 |
+ fi |
1230 |
+ mkdir -m 0775 "${rundir}" |
1231 |
+ chgrp ${tmpfiles_group} "${rundir}" |
1232 |
+ fi |
1233 |
+ |
1234 |
+ ewarn "This revision changes the screen socket location to ${rundir}" |
1235 |
+} |
1236 |
|
1237 |
diff --git a/app-misc/screen/screen-9999.ebuild b/app-misc/screen/screen-9999.ebuild |
1238 |
new file mode 100644 |
1239 |
index 0000000..44ba455 |
1240 |
--- /dev/null |
1241 |
+++ b/app-misc/screen/screen-9999.ebuild |
1242 |
@@ -0,0 +1,152 @@ |
1243 |
+# Copyright 1999-2018 Gentoo Authors |
1244 |
+# Distributed under the terms of the GNU General Public License v2 |
1245 |
+ |
1246 |
+EAPI=6 |
1247 |
+ |
1248 |
+inherit eutils flag-o-matic toolchain-funcs pam autotools user git-r3 |
1249 |
+ |
1250 |
+DESCRIPTION="screen manager with VT100/ANSI terminal emulation" |
1251 |
+HOMEPAGE="https://www.gnu.org/software/screen/" |
1252 |
+EGIT_REPO_URI="https://git.savannah.gnu.org/git/screen.git" |
1253 |
+EGIT_CHECKOUT_DIR="${WORKDIR}/${P}" # needed for setting S later on |
1254 |
+ |
1255 |
+LICENSE="GPL-2" |
1256 |
+SLOT="0" |
1257 |
+KEYWORDS="" |
1258 |
+IUSE="debug nethack pam selinux multiuser utmp" |
1259 |
+ |
1260 |
+CDEPEND=" |
1261 |
+ >=sys-libs/ncurses-5.2:0= |
1262 |
+ pam? ( virtual/pam )" |
1263 |
+RDEPEND="${CDEPEND} |
1264 |
+ selinux? ( sec-policy/selinux-screen ) |
1265 |
+ utmp? ( |
1266 |
+ kernel_linux? ( sys-libs/libutempter ) |
1267 |
+ kernel_FreeBSD? ( || ( >=sys-freebsd/freebsd-lib-9.0 sys-libs/libutempter ) ) |
1268 |
+ ) |
1269 |
+" |
1270 |
+DEPEND="${CDEPEND} |
1271 |
+ sys-apps/texinfo" |
1272 |
+ |
1273 |
+RESTRICT="test" |
1274 |
+S="${WORKDIR}"/${P}/src |
1275 |
+ |
1276 |
+pkg_setup() { |
1277 |
+ # Make sure utmp group exists, as it's used later on. |
1278 |
+ enewgroup utmp 406 |
1279 |
+} |
1280 |
+ |
1281 |
+src_prepare() { |
1282 |
+ default |
1283 |
+ |
1284 |
+ # sched.h is a system header and causes problems with some C libraries |
1285 |
+ mv sched.h _sched.h || die |
1286 |
+ sed -i \ |
1287 |
+ -e '/include/ s:sched.h:_sched.h:' \ |
1288 |
+ screen.h winmsg.c canvas.h sched.c || die |
1289 |
+ sed -i -e 's:sched.h:_sched.h:g' Makefile.in || die |
1290 |
+ |
1291 |
+ # Fix manpage. |
1292 |
+ sed -i \ |
1293 |
+ -e "s:/usr/local/etc/screenrc:${EPREFIX}/etc/screenrc:g" \ |
1294 |
+ -e "s:/usr/local/screens:${EPREFIX}/tmp/screen:g" \ |
1295 |
+ -e "s:/local/etc/screenrc:${EPREFIX}/etc/screenrc:g" \ |
1296 |
+ -e "s:/etc/utmp:${EPREFIX}/var/run/utmp:g" \ |
1297 |
+ -e 's:/local/screens/S\\-:'"${EPREFIX}"'/tmp/screen/S\\-:g' \ |
1298 |
+ -e 's:/usr/tmp/screens/:'"${EPREFIX}"'/tmp/screen/:g' \ |
1299 |
+ doc/screen.1 \ |
1300 |
+ || die |
1301 |
+ |
1302 |
+ # disable musl dummy headers for utmp[x] |
1303 |
+ use elibc_musl && append-cppflags "-D_UTMP_H -D_UTMPX_H" |
1304 |
+ |
1305 |
+ # reconfigure |
1306 |
+ eautoreconf |
1307 |
+} |
1308 |
+ |
1309 |
+src_configure() { |
1310 |
+ append-cppflags "-DMAXWIN=${MAX_SCREEN_WINDOWS:-100}" |
1311 |
+ |
1312 |
+ [[ ${CHOST} == *-solaris* ]] && append-libs -lsocket -lnsl |
1313 |
+ |
1314 |
+ use nethack || append-cppflags "-DNONETHACK" |
1315 |
+ use debug && append-cppflags "-DDEBUG" |
1316 |
+ |
1317 |
+ econf \ |
1318 |
+ --enable-socket-dir="${EPREFIX}/tmp/screen" \ |
1319 |
+ --with-system_screenrc="${EPREFIX}/etc/screenrc" \ |
1320 |
+ --with-pty-mode=0620 \ |
1321 |
+ --with-pty-group=5 \ |
1322 |
+ --enable-telnet \ |
1323 |
+ $(use_enable pam) \ |
1324 |
+ $(use_enable utmp) |
1325 |
+} |
1326 |
+ |
1327 |
+src_compile() { |
1328 |
+ LC_ALL=POSIX emake comm.h term.h |
1329 |
+ |
1330 |
+ emake -C doc screen.info |
1331 |
+ default |
1332 |
+} |
1333 |
+ |
1334 |
+src_install() { |
1335 |
+ local tmpfiles_perms tmpfiles_group |
1336 |
+ |
1337 |
+ dobin screen |
1338 |
+ |
1339 |
+ if use multiuser || use prefix |
1340 |
+ then |
1341 |
+ fperms 4755 /usr/bin/screen |
1342 |
+ tmpfiles_perms="0755" |
1343 |
+ tmpfiles_group="root" |
1344 |
+ else |
1345 |
+ fowners root:utmp /usr/bin/screen |
1346 |
+ fperms 2755 /usr/bin/screen |
1347 |
+ tmpfiles_perms="0775" |
1348 |
+ tmpfiles_group="utmp" |
1349 |
+ fi |
1350 |
+ |
1351 |
+ dodir /etc/tmpfiles.d |
1352 |
+ echo "d /tmp/screen ${tmpfiles_perms} root ${tmpfiles_group}" \ |
1353 |
+ >"${ED}"/etc/tmpfiles.d/screen.conf |
1354 |
+ |
1355 |
+ insinto /usr/share/screen |
1356 |
+ doins terminfo/{screencap,screeninfo.src} |
1357 |
+ insinto /usr/share/screen/utf8encodings |
1358 |
+ doins utf8encodings/?? |
1359 |
+ insinto /etc |
1360 |
+ doins "${FILESDIR}"/screenrc |
1361 |
+ |
1362 |
+ pamd_mimic_system screen auth |
1363 |
+ |
1364 |
+ dodoc \ |
1365 |
+ README ChangeLog INSTALL TODO NEWS* \ |
1366 |
+ doc/{FAQ,README.DOTSCREEN,fdpat.ps,window_to_display.ps} |
1367 |
+ |
1368 |
+ doman doc/screen.1 |
1369 |
+ doinfo doc/screen.info |
1370 |
+} |
1371 |
+ |
1372 |
+pkg_postinst() { |
1373 |
+ if [[ -z ${REPLACING_VERSIONS} ]] |
1374 |
+ then |
1375 |
+ elog "Some dangerous key bindings have been removed or changed to more safe values." |
1376 |
+ elog "We enable some xterm hacks in our default screenrc, which might break some" |
1377 |
+ elog "applications. Please check /etc/screenrc for information on these changes." |
1378 |
+ fi |
1379 |
+ |
1380 |
+ # Add /tmp/screen in case it doesn't exist yet. This should solve |
1381 |
+ # problems like bug #508634 where tmpfiles.d isn't in effect. |
1382 |
+ local rundir="${EROOT%/}/tmp/screen" |
1383 |
+ if [[ ! -d ${rundir} ]] ; then |
1384 |
+ if use multiuser || use prefix ; then |
1385 |
+ tmpfiles_group="root" |
1386 |
+ else |
1387 |
+ tmpfiles_group="utmp" |
1388 |
+ fi |
1389 |
+ mkdir -m 0775 "${rundir}" |
1390 |
+ chgrp ${tmpfiles_group} "${rundir}" |
1391 |
+ fi |
1392 |
+ |
1393 |
+ ewarn "This revision changes the screen socket location to /run/screen." |
1394 |
+} |