summaryrefslogtreecommitdiff
path: root/PKGBUILD
blob: ab5c21f3ecb1d1122eb0f9b9d01bfdcff6dff38a (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
# Maintainer: jc_gargma <jc_gargma@iserlohn-fortress.net>
# Maintainer (AUR):  WorMzy Tykashi <wormzy.tykashi@gmail.com>
# Contributor (AUR): artiom <a.mv at gmx dot fr>
# Contributor (AUR): ilikenwf
# Contributor (AUR): American_Jesus

# # I maintain this because:
# AUR version uses git
# AUR version does not use system libs

pkgname=palemoon
pkgver=28.8.3
pkgrel=1
pkgdesc="Open source web browser based on Firefox focusing on efficiency."
arch=(x86_64 i686)
license=(MPL GPL LGPL)
url="https://www.palemoon.org/"
depends=(gtk2 desktop-file-utils libxt startup-notification mime-types dbus-glib
         libpulse alsa-lib
         bzip2 libffi hunspell icu libjpeg-turbo libvpx nspr nss pixman libpng sqlite zlib)
makedepends=(unzip zip python2 yasm
             jack
             autoconf2.13)
optdepends=('ffmpeg: various video and audio support'
            'alsa-utils: ALSA support'
            'jack: Jack support'
            'pulseaudio: PulseAudio support'
            'palemoon-preferences: Custom vendor.js with security by default'
            'palemoon-preferences-basic: Custom vendor.js with less breaking changes')
source=(palemoon-${pkgver}.tar.gz::https://github.com/MoonchildProductions/UXP/archive/PM${pkgver}_Release.tar.gz
        mozconfig.in
        system-libs.patch)
b2sums=('cb861c511c20ee751e422a93bb7c600d1ab88e79366053655139416024e01f6f1255dcccd9b6ac5b8191a97091201b8c9a49a65d5965701198f6d42a9a01f38b'
        'e9053dc0efcc2fbc541d340e5054b4c9c6426c46c93e2fb68bc5860adf3785d1c0688ec1da2a7578c13eb59ef741a3d4312f9a1bc2e873f5a1490ed0cf296630'
        '3f6c97f4bac9d6908be6844ba12027b98f9a535d16ee881529b3d497eaea0cdf888689ca593bc009bb45885f445652c96ac28b00ca6e1d16fb484aedb103a3cf')

prepare() {
  sed 's#%SRCDIR%#'"${srcdir}"'#g' mozconfig.in > mozconfig
  sed -i 's#xlocale#locale#' UXP-PM${pkgver}_Release/intl/icu/source/i18n/digitlst.cpp
}

build() {
  cd UXP-PM${pkgver}_Release

  # I'll use system libs if I darn well choose, thank you very much.
  patch -Np1 -i ../system-libs.patch
  rm build/directive4.py

  export MOZBUILD_STATE_PATH="${srcdir}/mozbuild"
  export MOZCONFIG="${srcdir}/mozconfig"
  export CFLAGS="$CFLAGS -O3 -fstack-protector-all -flto=4 -fPIC"
  export CXXFLAGS="$CXXFLAGS -O3 -fstack-protector-all -flto=4 -fPIC"
  python2 mach build
}

package() {
  cd pmbuild
  make package
  cd dist
  install -d "${pkgdir}"/usr/{bin,lib}
  cp -r palemoon/ "${pkgdir}/usr/lib/${pkgname}"
  ln -s "/usr/lib/${pkgname}/palemoon" "${pkgdir}/usr/bin/palemoon"

  # icons
  install -Dm644 palemoon/browser/chrome/icons/default/default16.png \
    "${pkgdir}/usr/share/icons/hicolor/16x16/apps/${pkgname}.png"
  install -Dm644 palemoon/browser/chrome/icons/default/default32.png \
    "${pkgdir}/usr/share/icons/hicolor/32x32/apps/${pkgname}.png"
  install -Dm644 palemoon/browser/chrome/icons/default/default48.png \
    "${pkgdir}/usr/share/icons/hicolor/48x48/apps/${pkgname}.png"
  install -Dm644 palemoon/browser/icons/mozicon128.png \
    "${pkgdir}/usr/share/icons/hicolor/128x128/apps/${pkgname}.png"

  # install desktop file
  install -Dm644 "${srcdir}/UXP-PM${pkgver}_Release/application/palemoon/branding/official/palemoon.desktop" "${pkgdir}/usr/share/applications/${pkgname}.desktop"
}