summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLuke Shumaker <LukeShu@sbcglobal.net>2011-12-23 12:00:10 -0500
committerLuke Shumaker <LukeShu@sbcglobal.net>2011-12-23 12:00:10 -0500
commit0b84bcb1f125563d632c224ffc8212f19bbe32b8 (patch)
tree95ac62a60b268fb8b39a78193cfce3ee7e39e217
parent820f075a89a44c4ade3eb4049071d4c28664d52e (diff)
downloadabslibre-0b84bcb1f125563d632c224ffc8212f19bbe32b8.tar.gz
abslibre-0b84bcb1f125563d632c224ffc8212f19bbe32b8.tar.bz2
abslibre-0b84bcb1f125563d632c224ffc8212f19bbe32b8.zip
add emacs24 beta to [~lukeshu]
-rw-r--r--~lukeshu/emacs24/PKGBUILD82
-rw-r--r--~lukeshu/emacs24/emacs.install32
2 files changed, 114 insertions, 0 deletions
diff --git a/~lukeshu/emacs24/PKGBUILD b/~lukeshu/emacs24/PKGBUILD
new file mode 100644
index 000000000..00f90b16a
--- /dev/null
+++ b/~lukeshu/emacs24/PKGBUILD
@@ -0,0 +1,82 @@
+# $Id: PKGBUILD 137977 2011-09-13 15:26:07Z juergen $
+# Maintainer: Juergen Hoetzel <juergen@archlinux.org>
+# Contributor: Renchi Raju <renchi@green.tam.uiuc.edu>
+pkgname=emacs24-bzr
+_majorver=24.0.92
+pkgver=106675
+pkgrel=4
+pkgdesc="The extensible, customizable, self-documenting real-time display editor"
+arch=('i686' 'x86_64')
+url="http://www.gnu.org/software/emacs/emacs.html"
+license=('GPL3')
+depends=('librsvg' 'gpm' 'giflib' 'libxpm' 'gtk2' 'hicolor-icon-theme' 'gconf' 'desktop-file-utils' 'alsa-lib')
+install=emacs.install
+source=(emacs.desktop)
+md5sums=()
+
+_bzrtrunk=bzr://bzr.savannah.gnu.org/emacs/trunk
+_bzrmod=$pkgname
+
+build() {
+ cd "$srcdir"
+ msg "Connecting to Bazaar server...."
+
+ if [[ -d "$_bzrmod" ]]; then
+ cd "$_bzrmod" && bzr --no-plugins pull "$_bzrtrunk" -r "$pkgver"
+ msg "The local files are updated."
+ else
+ bzr --no-plugins branch "$_bzrtrunk" "$_bzrmod" -q -r "$pkgver"
+ fi
+
+ msg "Bazaar checkout done or server timeout"
+ msg "Starting build..."
+
+ rm -rf "$srcdir/$_bzrmod-$_majorver"
+ cp -r "$srcdir/$_bzrmod" "$srcdir/$_bzrmod-$_majorver"
+
+ cd "$srcdir"/$pkgname-$_majorver
+ ./autogen.sh
+ ./configure --prefix=/usr --sysconfdir=/etc --libexecdir=/usr/lib \
+ --localstatedir=/var --with-x-toolkit=gtk --with-xft
+ make
+}
+
+package() {
+ provides=("emacs=${_majorver}a")
+
+ cd "$srcdir"/$pkgname-$_majorver
+ make DESTDIR="$pkgdir" install
+
+ # remove conflict with ctags package
+ mv "$pkgdir"/usr/bin/{ctags,ctags.emacs}
+ mv "$pkgdir"/usr/share/man/man1/{ctags,ctags.emacs}.1.gz
+ # fix all the 777 perms on directories
+ find "$pkgdir"/usr/share/emacs/$_majorver -type d -exec chmod 755 {} \;
+ # fix user/root permissions on usr/share files
+ find "$pkgdir"/usr/share/emacs/$_majorver -exec chown root:root {} \;
+ # fix perms on /var/games
+ chmod 775 "$pkgdir"/var/games
+ chmod 775 "$pkgdir"/var/games/emacs
+ chmod 664 "$pkgdir"/var/games/emacs/*
+ chown -R root:games "$pkgdir"/var/games
+
+ # fix FS#9253
+ mkdir -p "$pkgdir"/usr/share/pixmaps
+ ln -s $pkgdir../emacs/$_majorver/etc/images/icons/hicolor/48x48/apps/emacs.png "$pkgdir"/usr/share/pixmaps/emacs-icon.png
+
+ # This is done down here to help future-proof the above
+ rm "$pkgdir"/usr/bin/emacs
+ mv "$pkgdir"/usr/share/man/man1/emacs{,-$_majorver}.1.gz
+ for prog in ctags.emacs ebrowse emacsclient etags grep-changelog rcs-checkin; do
+ mv "$pkgdir"/usr/bin/$prog{,-$_majorver}
+ mv "$pkgdir"/usr/share/man/man1/$prog{,-24}.1.gz
+ done
+ mv "$pkgdir"/usr/share/applications/emacs{,24}.desktop
+ mv "$pkgdir"/usr/share/emacs/site-lisp/subdirs{,.emacs24}.el
+ rm "$pkgdir"/usr/share/info/dir
+ for file in "$pkgdir"/usr/share/pixmaps/emacs-icon.png `find "$pkgdir"/usr/share/{icons,info} -type f`; do
+ mv "$file" "`echo "$file"|sed 's/\..*/-24&/'`"
+ done
+ ln -s "$_majorver" "$pkgdir"/usr/share/emacs/24
+ rm "$pkgdir"/var/games/emacs/*
+}
diff --git a/~lukeshu/emacs24/emacs.install b/~lukeshu/emacs24/emacs.install
new file mode 100644
index 000000000..d84f1de14
--- /dev/null
+++ b/~lukeshu/emacs24/emacs.install
@@ -0,0 +1,32 @@
+ICON_PATH=usr/share/icons/hicolor
+INFO_DIR=usr/share/info
+
+INFO_FILES=(ada-mode auth autotype calc ccmode cl dbus dired-x ebrowse
+ede ediff edt efaq eieio eintr elisp emacs emacs-mime epa erc eshell eudc flymake
+forms gnus idlwave info mairix-el message mh-e newsticker nxml-mode
+org pcl-cvs pgg rcirc reftex remember sasl sc semantic ses sieve smtpmail
+speedbar tramp url vip viper widget woman)
+
+post_install() {
+ gtk-update-icon-cache -q -t -f ${ICON_PATH}
+ update-desktop-database -q
+
+ [[ -x usr/bin/install-info ]] || return 0
+ for f in ${INFO_FILES[@]}; do
+ install-info ${INFO_DIR}/$f.gz ${INFO_DIR}/dir 2> /dev/null
+ done
+}
+
+post_upgrade() {
+ post_install $1
+}
+
+pre_remove() {
+ gtk-update-icon-cache -q -t -f ${ICON_PATH}
+ update-desktop-database -q
+
+ [[ -x usr/bin/install-info ]] || return 0
+ for f in ${INFO_FILES[@]}; do
+ install-info --delete ${INFO_DIR}/$f.gz ${INFO_DIR}/dir 2> /dev/null
+ done
+}