Skip to content

Instantly share code, notes, and snippets.

@nathantypanski
Last active August 29, 2015 14:07
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save nathantypanski/e006ff1b2240ecb4901a to your computer and use it in GitHub Desktop.
Save nathantypanski/e006ff1b2240ecb4901a to your computer and use it in GitHub Desktop.
# See AUR interface for current maintainer.
#
# See <https://lists.gnu.org/archive/html/emacs-devel/2014-01/msg00005.html>
# for the start of the discussion on why emacs development moves to git.
#
# See <https://lists.gnu.org/archive/html/emacs-devel/2014-01/msg00015.html>
# for the actual community proposal about moving to git with RMS's blessing.
#
# TIP: Don't run this on a tmpfs unless you have oodles of RAM.
# The initial cloned repo is huge, 1.2GB or more. You can run
# "git gc --aggressive" on it to reduce its size drastically,
# but it will take a long time in a low-spec machine or if you
# have less than 4GB RAM.
#
pkgname=emacs-git
pkgver=25.0.50.r132827
pkgrel=1
pkgdesc="GNU Emacs. Official git trunk."
arch=('i686' 'x86_64')
url="http://www.gnu.org/software/emacs/"
license=('GPL')
depends=('librsvg' 'gpm' 'giflib' 'libxpm' 'libotf' 'm17n-lib'
'gtk3' 'hicolor-icon-theme' 'desktop-file-utils'
'alsa-lib' 'imagemagick' 'gnutls')
makedepends=('git')
conflicts=('emacs')
provides=('emacs')
install="$pkgname".install
source=("$pkgname::git://git.savannah.gnu.org/emacs.git")
md5sums=('SKIP')
pkgver() {
cd "$srcdir/$pkgname"
printf "%s.r%s" \
"$(grep AC_INIT configure.ac | sed -e 's/^.\+\ \([0-9]\+\.[0-9]\+\.[0-9]\+\).\+$/\1/')" \
"$(git rev-list --count HEAD)"
}
prepare() {
cd "$srcdir/$pkgname"
./autogen.sh
}
build() {
cd "$srcdir/$pkgname"
ac_cv_lib_gif_EGifPutExtensionLast=yes \
./configure \
--prefix=/usr \
--sysconfdir=/etc \
--libexecdir=/usr/lib \
--localstatedir=/var \
--mandir=/usr/share/man \
--pdfdir=/usr/share/doc/emacs/pdf \
--with-sound=alsa \
--without-gconf \
--with-x-toolkit=gtk3 \
--with-xft
make
cd "$srcdir/$pkgname/lisp"
make autoloads
}
package() {
cd "$srcdir/$pkgname"
make DESTDIR="$pkgdir/" install
# remove conflict with ctags package
mv "$pkgdir"/usr/bin/{ctags,ctags.emacs}
mv "$pkgdir"/usr/share/man/man1/{ctags.1.gz,ctags.emacs.1.gz}
# remove conflict with texinfo
rm "$pkgdir"/usr/share/info/info.info.gz
# fix user/root permissions on usr/share files
find "$pkgdir"/usr/share/emacs/ -exec chown root:root {} \;
# Delete compressed .el.gz files. Comment out if needed.
# We need the emacs source code to have the jump-to-source feature in help-mode.
# Why take this out!?
# find "$pkgdir"/usr/share/emacs/ -name "*.el.gz" -exec rm {} \;
# 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
}
# vim:set ft=sh ts=2 sw=2 et:
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment