summarylogtreecommitdiffstats
path: root/PKGBUILD
blob: 9da3152818c572ac55364b871458515f52af9895 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
# Maintainer: Thomas Jost <schnouki@schnouki.net>
# Comaintainer: Pedro A. López-Valencia <https://aur.archlinux.org/user/vorbote/>
# Contributor: Juergen Hoetzel <juergen@archlinux.org>
# Contributor: Renchi Raju <renchi@green.tam.uiuc.edu>

pkgname=emacs-pretest
_pkgname=emacs
pkgver=29.1
_pkgver=29.1.90
pkgrel=0.90
pkgdesc="The extensible, customizable, self-documenting real-time display editor. Pretest version"
arch=('x86_64')
url="http://www.gnu.org/software/emacs/emacs.html"
license=('GPL3')
depends=(
  'gpm'
  'gtk3'
  'jansson'
  'giflib'
  'libotf'
  'libgccjit'
  'tree-sitter'
)
provides=('emacs' 'emacs-nativecomp')
conflicts=('emacs-nox')
#
# You'll need to grab this key and add it BY HAND to your local keyring.
# All PGP Keyservers are all but dead thanks to the EU. 
#
#    gpg --keyserver hkps://keys.openpgp.org --recv-keys 17E90D521672C04631B1183EE78DAE0F3115E06B
# 
validpgpkeys=('17E90D521672C04631B1183EE78DAE0F3115E06B')
#
source=(https://alpha.gnu.org/gnu/emacs/pretest/$_pkgname-$_pkgver.tar.xz{,.sig}
        nemacs readme_or_weep.txt)
b2sums=('01cf0b56fc9b4cf598b187271c0996f59316f874c5bd9d17f8551cb58e33d742ccb21dcddb061f88f0c6a3f670014a2d130d026ddc97c666958a64c0fbc709fe'
        'SKIP'
        '58e028b439d3c7cf03ea0be617b429a2c54e7aa1b8ca32b5ed489214daaa71e22c323de9662761ad2ce4de58e21dbe45ce6ce198f402686828574f8043d053d0'
        '98cb6458eebfa1440eea1318c6974c135d1b9e1a559fb1ca4bca35fb4697cc8cd6d33b19427efead0f3e061556ba19e774eee4f4566673494ac2470da4725b28')

build() {
  #cd "$srcdir"/$_pkgname-$_pkgver
  cd "$srcdir"/$_pkgname-${_pkgver%-rc1}

  local confopts=(
    --prefix=/usr
    --sysconfdir=/etc
    --libexecdir=/usr/lib
    --localstatedir=/var
    --with-gameuser=root:games
    --with-x-toolkit=gtk3
    --with-xft
    --with-harfbuzz
    --with-modules
    --without-compress-install
    --without-m17n-flt
    --with-libotf
    --without-imagemagick
# Beware https://debbugs.gnu.org/cgi/bugreport.cgi?bug=25228
# dconf and gconf break font settings set in ~/.emacs
# If you insist you'll need to play gymnastics with
# set-frame-font and set-menu-font. Good luck!
# Might be fixed in master, but you can't be be too cautious. Try 
# emacs-git first.
    --without-gsettings
    --without-gconf
# Welcome to the JIT new world.
    --with-native-compilation=aot
# welcome to the new syntax highlighting world.
    --with-tree-sitter
)
  ./configure "${confopts[@]}"
  make
}

package() {
  #cd "$srcdir"/$_pkgname-$_pkgver
  cd "$srcdir"/$_pkgname-${_pkgver%-rc1}

  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}
  mv "$pkgdir"/usr/share/man/man1/{ctags.1,ctags.emacs.1}

  install -D -m 755 "$srcdir"/nemacs "$pkgdir"/usr/bin/nemacs

  # fix user/root permissions on usr/share files
  find "$pkgdir"/usr/share/emacs/ | xargs chown root:root
  # fix permssions on /var/games
  mkdir -p "$pkgdir"/var/games/emacs
  chmod 775 "$pkgdir"/var/games
  chmod 775 "$pkgdir"/var/games/emacs
  chown -R root:games "$pkgdir"/var/games
}


################################################################################
# vim:set ft=bash ts=2 sw=2 et: