# # spec file for package screen # # Copyright (c) 2013 SUSE LINUX Products GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed # upon. The license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. # Please submit bugfixes or comments via http://bugs.opensuse.org/ # Url: http://www.gnu.org/software/screen/ Name: screen #%if 0%{?suse_version} > 1140 #BuildRequires: makeinfo #%endif #BuildRequires: ncurses-devel #%if 0%{?suse_version} > 1130 #BuildRequires: utempter-devel #%else #BuildRequires: utempter #%endif #PreReq: %install_info_prereq #PreReq: coreutils Version: 4.0.4 Release: 13.5 Summary: A program to allow multiple screens on a VT100/ANSI Terminal License: GPL-2.0+ Group: System/Console Source: %{name}-%{version}.tar.gz Source1: screen.conf Patch0: screen-4.0.2.dif Patch1: screen-__P.diff Patch2: screen-man-loginshell.diff Patch3: screen-4.0.3-ipv6.patch # upstream savannah#30880 Patch4: term_too_long.diff Patch5: sort_command.patch Patch6: libtinfo.diff Patch7: mappedcmd.diff Patch8: styroptcrash.diff Patch9: use_locale.diff Patch10: screen-poll-zombies.patch Patch11: screen_enhance_windows_list_1_3.patch Patch12: screen_enhance_windows_list_2_3.patch Patch13: show_all_active.patch Patch14: screen_fix_wW_string_escapes_to_nearly_old_behavior.patch BuildRoot: %{_tmppath}/%{name}-%{version}-build BuildArch: i486 %description With this program you can take advantage of the multitasking abilities of your Linux system by opening several sessions over one terminal. The sessions can also be detached and resumed from another login terminal. Documentation: man page %prep %setup %patch0 %patch1 %patch2 -p1 %patch3 %patch4 -p1 %patch5 %patch6 %patch7 -p2 %patch8 -p2 %patch9 -p1 %patch10 -p1 %patch11 -p1 %patch12 -p1 %patch13 -p1 %patch14 -p1 %build CFLAGS="-DMAXWIN=1000 $RPM_OPT_FLAGS" %configure --prefix=/usr --infodir=%{_infodir} \ --mandir=%{_mandir} \ --with-socket-dir='(eff_uid ? "/var/run/uscreens" : "/var/run/screens")' \ --with-sys-screenrc=/etc/screenrc \ --with-pty-group=5 \ --enable-use-locale \ --enable-telnet \ --enable-colors256 \ --verbose make %{?_smp_mflags} %install make install DESTDIR=$RPM_BUILD_ROOT rm -f $RPM_BUILD_ROOT/usr/bin/screen mv $RPM_BUILD_ROOT/usr/bin/screen-%version $RPM_BUILD_ROOT/usr/bin/screen chmod 755 $RPM_BUILD_ROOT/usr/bin/screen mkdir -p $RPM_BUILD_ROOT/etc mkdir -p $RPM_BUILD_ROOT/usr/lib mkdir -p $RPM_BUILD_ROOT/usr/lib/tmpfiles.d mkdir -p $RPM_BUILD_ROOT/var/run/screens chmod 755 $RPM_BUILD_ROOT/var/run/screens mkdir -p $RPM_BUILD_ROOT/var/run/uscreens chmod 1777 $RPM_BUILD_ROOT/var/run/uscreens install -m 644 screenrc $RPM_BUILD_ROOT/etc/screenrc install -m 644 %SOURCE1 $RPM_BUILD_ROOT/usr/lib/tmpfiles.d %files %defattr(-,root,root) %config /etc/screenrc %attr(555,root,root) /usr/bin/screen %dir /usr/share/screen %dir /usr/lib/tmpfiles.d /usr/lib/tmpfiles.d/screen.conf /usr/share/screen/utf8encodings # Created via aaa_base or systemd on system boot %ghost %dir /var/run/screens %ghost %dir /var/run/uscreens %doc %{_infodir}/screen.info*.gz %doc %{_mandir}/man1/screen.1.gz %post %install_info --info-dir=%{_infodir} %{_infodir}/%{name}.info.gz # Create our dirs immediatly, after a manual package install. # After a reboot systemd/aaa_base will take care. test -d /var/run/screens || mkdir -m 755 /var/run/screens test -d /var/run/uscreens || mkdir -m 1777 /var/run/uscreens %postun %install_info_delete --info-dir=%{_infodir} %{_infodir}/%{name}.info.gz %changelog * Sun Mar 24 2013 trenn@suse.de - Patch screen_enhance_windows_list_1_3.patch changed wW string escapes in an unintended way. Fix this by ignoring longflg and behave the way wW string esacpes behaved with adding addtional L escape. (So %%w is now what %%Lw was before all these changes. This should be a minor, acceptable change as it was undocumented and it buys quite some code cleanup with it.). Patch is: screen_fix_wW_string_escapes_to_nearly_old_behavior.patch * Mon Feb 18 2013 trenn@suse.de - Introduce Xx string escape showing the executed command of a window patch: show_all_active.patch * Tue Feb 5 2013 trenn@suse.de - Add zombie and enhance windows commands screen-poll-zombies.patch: Dead windows will be restarted after a specified timeout (if enabled) screen_enhance_windows_list_1_3.patch: Cleanup window flags processing. This leads to a slight output change in "Ww" string escapes (window list), but these should be rather seldom used and flags are still shown. screen_enhance_windows_list_2_3.patch: Enhance windows command with an optional string escape based parameter which also removes the output size (1024 bytes) restriction (only if param is passed) of the windows command. If you used captions with "%%w" before, you can simulate the old behaviour with "%%-w%%n* %%t%%+w". - Only Require makeinfo for openSUSE versions 11.4 and above. This requirement did not exist in earlier versions, now the package builds again for example against SLES 11 (11.4 based). * Thu Oct 25 2012 trenn@suse.de - Fix sort command to not stop at window gaps. That can happen if windows got deleted and the window numbers do not increment sequentially anymore. * Tue Oct 9 2012 lnt-sysadmin@lists.lrz.de - add use_locale.diff to fix --enable-use-locale configure option * Thu Sep 13 2012 mls@suse.de - add prereq coreutils so that mkdir works [bnc#780033] * Sat Sep 8 2012 idonmez@suse.com - Add build dependency on makeinfo * Wed Aug 8 2012 mls@suse.de - fix crash when doing 'screen -d -r' inside of screen * Tue Aug 7 2012 mls@suse.de - add mappedcmd.diff to make ^A DEL work again * Fri Jun 8 2012 mls@suse.de - update to screen-4.0.4devel * support for multiple layouts * no more stuck screen sessions * Mon Nov 21 2011 coolo@suse.com - fix build with latest ncurses (split tinfo) * Fri Nov 18 2011 jw@suse.com - mkdir /var/run/*screen both immediatly and via systemd. * Mon Sep 19 2011 trenn@suse.de - Add sort command - convert maxwin99bug.patch into a patch format quilt understands * Wed Jul 6 2011 aj@suse.de - Use /usr/lib/tmpfiles.d instead of /etc/tmpfiles.d. * Mon Jan 31 2011 jw@novell.com - bugfix bnc#668306, a buffer overflow with '%%d'. Added maxwin99bug.patch This is already upstream, but was never released. * Fri Dec 10 2010 jw@novell.com - term_too_long.patch added. corresponds to savannah#30880 * Wed Nov 3 2010 aj@suse.de - Add /etc/tmpfiles.d/screen.conf for /var/run on tmpfs. * Thu Sep 9 2010 aj@suse.de - BuildRequire utempter-devel * Sun May 2 2010 aj@suse.de - /var/run directories are created by /etc/tmpdirs.d/01_aaa_base. * Mon Feb 15 2010 dimstar@opensuse.org - Update to version 4.0.3 - Dropped screen-4.0.2-comb.diff, upstream merged. * Tue Dec 15 2009 jengelh@medozas.de - enable parallel building * Fri Jul 31 2009 crrodriguez@suse.de - add fedora patch for IPv6 support, this removes usage of gethostbyname(3) * Tue May 26 2009 mls@suse.de - re-add lost maxwin definition [fate#301190] * Wed May 14 2008 jw@suse.de - A few lines added to docu explaining login-shells and starting with '-' trick. * Thu Mar 29 2007 dmueller@suse.de - add ncurses-devel BuildRequires * Mon Oct 23 2006 mls@suse.de - fix two bugs in handling of combining characters [#214412] * Fri Feb 10 2006 mls@suse.de - enable support for 256 colors [#136684] * Thu Jan 26 2006 sbrabec@suse.cz - Added %%install_info_prereq. * Wed Jan 25 2006 mls@suse.de - converted neededforbuild to BuildRequires * Fri Oct 28 2005 mls@suse.de - fix ut_time aliasing problem * Fri Apr 8 2005 meissner@suse.de - execl 0 -> (char*)0. * Tue Sep 28 2004 mls@suse.de - clear ti/te for xterms so that users can use xterm's scrollbar * Sun Sep 12 2004 kukuk@suse.de - Don't use __P from glibc * Mon Feb 16 2004 mls@suse.de - fix socketdir quoting * Thu Feb 12 2004 mls@suse.de - update to 4.0.2 - move sockdirs to /var/run and include them in package * Sat Jan 10 2004 adrian@suse.de - add %%defattr * Thu Sep 18 2003 mls@suse.de - update to 4.0.1 (fixes another bug of the parser) * Fri Sep 12 2003 mls@suse.de - fix off by one error in variable expansion * Fri Sep 12 2003 mls@suse.de - don't resize xterms on startup * Mon Sep 8 2003 mls@suse.de - update to 4.0.0final * Wed Aug 27 2003 mls@suse.de - update to 4.0.0beta2 * Fri Aug 1 2003 mls@suse.de - update to 4.0.0beta1 * Thu Apr 24 2003 ro@suse.de - fix install_info --delete call and move from preun to postun * Thu Mar 13 2003 mls@suse.de - update to 3.9.15: changing the window title could append junk to the title * Wed Mar 12 2003 mls@suse.de - update to 3.9.14: one small docu change and a small improvement in the windowlist command * Mon Feb 24 2003 mls@suse.de - update to 3.9.14beta1 - build screen with buildroot - remove xf86 dependency, use configure option instead - use install-info macro to install info page * Tue Oct 1 2002 mls@suse.de - fix WrapChar() scrolling region reset code to always use a valid scrolling region (#20367) * Tue Sep 17 2002 ro@suse.de - removed bogus self-provides * Thu Sep 5 2002 mls@suse.de - update to official screen-3.9.13, contains one small bug fix * Thu Aug 29 2002 mls@suse.de - update to official screen-3.9.12 * Mon Aug 19 2002 mls@suse.de - update to screen-3.9.12beta2 * Fri Mar 8 2002 kukuk@suse.de - Add /usr/share/screen to filelist * Wed Mar 6 2002 mls@suse.de - disable pam support again - fix segmentation fault in screen's reattach password check * Fri Feb 22 2002 mls@suse.de - fix passing of NUL bytes when recoding is active - moved uid/gid retrieval in front of FindEncoding * Mon Feb 18 2002 mls@suse.de - added missing /usr/share/screen/utf8encodings files - small patch to fix hardstatus width * Thu Feb 14 2002 mls@suse.de - update to official screen-3.9.11 - enabled pam & localized dates * Mon Feb 11 2002 mls@suse.de - update to screen-3.9.11beta7 * Tue Jan 29 2002 okir@suse.de - require utempter to build; zapped s bit * Fri Jan 25 2002 okir@suse.de - require utempter to build * Wed Sep 5 2001 mls@suse.de - nominal upgrade to screen-3.9.10 * Mon Sep 3 2001 mls@suse.de - Security fix for the Multiattach-bug in /usr/bin/screen * Mon Jul 23 2001 bk@suse.de - added select-fix for fifo-testcase to build on s390x * Fri May 25 2001 mls@suse.de - update -> 3.9.9 * Tue May 8 2001 mls@suse.de - added workaround for broken xterm to global screenrc * Fri Apr 27 2001 mls@suse.de - fix screen -wipe (bugzilla bug #2990) - fix f10 function key (bugzilla bug #4326) - fix 0620 pty mode autodetection (bugzilla bug #6304) * Mon Sep 4 2000 uli@suse.de - fix for root compromise using configurable visual bell string * Fri Feb 25 2000 kukuk@suse.de - Move /usr/{info,man} -> /usr/share/{info,man} * Fri Oct 22 1999 uli@suse.de - update -> 3.9.5 * Mon Sep 13 1999 bs@suse.de - ran old prepare_spec on spec file to switch to new prepare_spec. * Fri Nov 27 1998 uli@suse.de - Update 3.7.3 -> 3.7.6 * Wed Apr 30 1997 florian@suse.de - update to version 3.7.3 - mv /usr/etc/screenrc /etc/