summaryrefslogtreecommitdiffstats
path: root/screen
diff options
context:
space:
mode:
Diffstat (limited to 'screen')
-rw-r--r--screen/PKGBUILD51
-rw-r--r--screen/screen.install42
-rw-r--r--screen/screen.pam1
-rw-r--r--screen/widescreen.patch13
4 files changed, 107 insertions, 0 deletions
diff --git a/screen/PKGBUILD b/screen/PKGBUILD
new file mode 100644
index 0000000..951723a
--- /dev/null
+++ b/screen/PKGBUILD
@@ -0,0 +1,51 @@
+# $Id: PKGBUILD 40237 2009-05-29 00:52:11Z allan $
+# Maintainer: Allan McRae <allan@archlinux.org>
+# Committer: dorphell <dorphell@gmx.net>
+
+pkgname=screen
+pkgver=4.0.3
+pkgrel=8
+_ptygroup=5 #the UID of our PTY/TTY group
+pkgdesc="Full-screen window manager that multiplexes a physical terminal"
+arch=('i686' 'x86_64')
+url="http://www.gnu.org/software/screen/"
+license=('GPL')
+depends=('ncurses' 'pam')
+backup=('etc/screenrc' 'etc/pam.d/screen')
+options=('!makeflags')
+install=screen.install
+source=(ftp://ftp.uni-erlangen.de/pub/utilities/screen/screen-${pkgver}.tar.gz \
+ screen.pam widescreen.patch)
+
+build() {
+ export LDFLAGS="${LDFLAGS} -Wl,--as-needed"
+
+ cd ${srcdir}/${pkgname}-${pkgver}
+ patch -p0 < $srcdir/widescreen.patch
+ ./configure --prefix=/usr --enable-pam \
+ --with-sys-screenrc=/etc/screenrc --enable-colors256 \
+ --enable-rxvt_osc --with-pty-group=$_ptygroup \
+ --mandir=/usr/share/man --infodir=/usr/share/info
+ make || return 1
+ make DESTDIR=${pkgdir} install || return 1
+ install -Dm644 ${srcdir}/screen.pam ${pkgdir}/etc/pam.d/screen
+
+ install -Dm644 etc/completer.zsh ${pkgdir}/usr/share/zsh/site-functions/screen
+ install -Dm644 etc/etcscreenrc ${pkgdir}/etc/screenrc
+ install -Dm644 etc/screenrc ${pkgdir}/etc/skel/.screenrc
+
+ rm ${pkgdir}/usr/share/info/dir
+ gzip -9 ${pkgdir}/usr/share/info/*
+}
+md5sums=('8506fd205028a96c741e4037de6e3c42'
+ '74f7919d7b65436cc2ea5341fa8ca374'
+ '1496b6bd2ffd64a15a0381cba5cb3e86')
+sha1sums=('7bc6e2f0959ffaae6f52d698c26c774e7dec3545'
+ '1ab4b512d2ac840d16db6986d7c98d7ce2f6383f'
+ '5363335b4d940ac5fa5e31feae976f500099ec20')
+md5sums=('8506fd205028a96c741e4037de6e3c42'
+ '74f7919d7b65436cc2ea5341fa8ca374'
+ 'e6e382cb512b43b4ec06fd9b1e8262af')
+sha1sums=('7bc6e2f0959ffaae6f52d698c26c774e7dec3545'
+ '1ab4b512d2ac840d16db6986d7c98d7ce2f6383f'
+ '75238d37fe40bda0b3debe1abb6f0777015c8185')
diff --git a/screen/screen.install b/screen/screen.install
new file mode 100644
index 0000000..3ef5757
--- /dev/null
+++ b/screen/screen.install
@@ -0,0 +1,42 @@
+infodir=/usr/share/info
+filelist=(screen.info screen.info-1 screen.info-2 screen.info-3 screen.info-4 screen.info-5)
+
+post_install() {
+ [ -x usr/bin/install-info ] || return 0
+ for file in ${filelist[@]}; do
+ install-info $infodir/$file.gz $infodir/dir 2> /dev/null
+ done
+}
+
+pre_upgrade() {
+ compiled="/usr/share/terminfo/s/screen-256color"
+ if [ -e $compiled ]; then
+ if pacman -Qo $compiled 2>&1 | grep "No package owns" >/dev/null; then
+ echo -n "removing compiled terminfo..."
+ rm -f $compiled
+ echo "done."
+ fi
+ fi
+ compiled="/usr/share/terminfo/s/screen-256color-bce"
+ if [ -e $compiled ]; then
+ if pacman -Qo $compiled 2>&1 | grep "No package owns" >/dev/null; then
+ echo -n "removing compiled terminfo..."
+ rm -f $compiled
+ echo "done."
+ fi
+ fi
+}
+
+post_upgrade() {
+ post_install $1
+}
+
+pre_remove() {
+ pre_upgrade $*
+
+ [ -x usr/bin/install-info ] || return 0
+ for file in ${filelist[@]}; do
+ install-info --delete $infodir/$file.gz $infodir/dir 2> /dev/null
+ done
+}
+
diff --git a/screen/screen.pam b/screen/screen.pam
new file mode 100644
index 0000000..07c42ad
--- /dev/null
+++ b/screen/screen.pam
@@ -0,0 +1 @@
+auth required pam_unix.so
diff --git a/screen/widescreen.patch b/screen/widescreen.patch
new file mode 100644
index 0000000..ce969c3
--- /dev/null
+++ b/screen/widescreen.patch
@@ -0,0 +1,13 @@
+diff -Nbaur screen-4.0.3-orig//screen.h screen-4.0.3/screen.h
+--- screen.h.orig 2003-08-22 14:28:43.000000000 +0200
++++ screen.h 2009-09-15 12:19:02.000000000 +0200
+@@ -86,7 +86,7 @@
+
+ #define Ctrl(c) ((c)&037)
+
+-#define MAXSTR 256
++#define MAXSTR 512
+ #define MAXARGS 64
+ #define MSGWAIT 5
+ #define MSGMINWAIT 1
+