# Maintainer: jc_gargma # Maintainer (AUR): WorMzy Tykashi # Contributor (AUR): artiom # Contributor (AUR): ilikenwf # Contributor (AUR): American_Jesus # # I maintain this because: # AUR version does not use full length commit IDs # AUR version does not use specific UXP commit # AUR version does not check signatures on UXP repo # AUR version does not use system libs pkgname=palemoon _pmaltname=pale-moon _pmotheraltname=Pale-Moon _uxpaltname=uxp pkgver=31.1.0 pkgrel=1 # Commit ID can be found at https://repo.palemoon.org/MoonchildProductions/Pale-Moon/releases _commit=2338cf345f9c602494fcc88a7f2b7ecb977c0ab5 _UXPcommit=cfc0eeca53dac4b865a933954f9af44328efba5b pkgdesc="Open source web browser based on Firefox focusing on efficiency." arch=(x86_64 i686) license=(MPL GPL LGPL) url="https://www.palemoon.org/" options=(lto) depends=(gtk3 gtk2 desktop-file-utils libxt startup-notification mime-types dbus-glib libpulse alsa-lib bzip2 libffi hunspell libjpeg-turbo pixman zlib) makedepends=(unzip zip python2 yasm jack autoconf2.13 git) 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=($pkgname-$pkgver.tar.xz::https://archive.palemoon.org/source/${pkgname}-${pkgver}.source.tar.xz # $pkgname-$pkgver.tar.xz.sig::https://archive.palemoon.org/source/${pkgname}-${pkgver}.source.tar.xz.sig source=(git+"https://repo.palemoon.org/MoonchildProductions/${_pmotheraltname}?signed#commit=${_commit}" git+"https://repo.palemoon.org/MoonchildProductions/UXP?signed#commit=${_UXPcommit}" mozconfig.in system-libs.patch) sha1sums=('SKIP' 'SKIP' '032d348b68d272c59018d9fa29062b02f82fac20' '056a719186a2600b6c088c8f372423e9ea3c79da') sha256sums=('SKIP' 'SKIP' 'e1df3a02470986a1e4ca12da475badc0a26aced7aa2828a5c58bc062fdefc79f' 'fbb64b9bf939ac37f7927c6f299faaff06e5b3310ee394948e5b2c38afa09e25') b2sums=('SKIP' 'SKIP' '9ad8bfacee08780cf6d45a1aea5068674748427beb3fd53f230fa5f8d43739ce17045cbcd815ff07f2ffc1ce31d235fc8eb8a61c753fb67fb529707dbb84b18f' '47cc9da19cb7003ea896e8d1f3f77197548cf917c943ec1bd8526daaf6212d2c2c90bc417df156ee571c9ca052749a6a3a13f8acc150f1983a8bf0f8f1ebe2de') #https://www.palemoon.org/0x8FCF9CEC.asc validpgpkeys=('3DAD8CD107197488D2A2A0BD40481E7B8FCF9CEC' '3059E09144F56804F0FBF4E126B40624BDBFD9F3') prepare() { sed 's#%SRCDIR%#'"${srcdir}"'#g' mozconfig.in > mozconfig cd ${_pmotheraltname} git submodule init git config submodule.platform.url "${srcdir}/UXP" git submodule update # I'll use system libs if I darn well choose, thank you very much. patch -Np1 -i ../system-libs.patch rm platform/build/directive4.py } build() { cd ${_pmotheraltname} # palemoon is prone to OOM, use 1 thread per 2GB ram export MOZ_MAKE_FLAGS="${MAKEFLAGS}" #export MOZ_MAKE_FLAGS="-j32" export MOZBUILD_STATE_PATH="${srcdir}/mozbuild" export MOZCONFIG="${srcdir}/mozconfig" export CFLAGS="$CFLAGS -O3 -fstack-protector-all -fPIC" export CXXFLAGS="$CXXFLAGS -O3 -fstack-protector-all -fPIC" ./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 ${srcdir}/${_pmotheraltname}/${pkgname}/branding/official/default16.png \ "${pkgdir}/usr/share/icons/hicolor/16x16/apps/${pkgname}.png" install -Dm644 ${srcdir}/${_pmotheraltname}/${pkgname}/branding/official/default32.png \ "${pkgdir}/usr/share/icons/hicolor/32x32/apps/${pkgname}.png" install -Dm644 ${srcdir}/${_pmotheraltname}/${pkgname}/branding/official/default48.png \ "${pkgdir}/usr/share/icons/hicolor/48x48/apps/${pkgname}.png" install -Dm644 ${srcdir}/${_pmotheraltname}/${pkgname}/branding/official/mozicon128.png \ "${pkgdir}/usr/share/icons/hicolor/128x128/apps/${pkgname}.png" # install desktop file install -Dm644 "${srcdir}/${_pmotheraltname}/${pkgname}/branding/official/palemoon.desktop" \ "${pkgdir}/usr/share/applications/${pkgname}.desktop" }