# 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.4.1 pkgrel=1 # palemoon commit ID can be found at https://repo.palemoon.org/MoonchildProductions/Pale-Moon/tags _commit=b9e6a5d60a2250a1646fa7cf3eadb792b6bf7403 # UXP commit ID can be found at https://repo.palemoon.org/MoonchildProductions/UXP/tags _UXPcommit=2640953d8b78f8835e356e336db97af0c8b45eea 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) sha1sums=('SKIP' 'SKIP' '9aa438084877efd2b117f906d74a8bed0365996d') sha256sums=('SKIP' 'SKIP' '0728a9399557f5416e4a6c23d310072f449be444bf6073497ae1b71cfb5a034d') b2sums=('SKIP' 'SKIP' '0e3445a33286e7edfe127905c3b2985a7d794d6e03d14bb855cfc67f56fee82aec292bf510921b11b894be26d840470c1cfa22c9922cd3d714efb6b0f62ebde2') #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 -c protocol.file.allow=always submodule update } 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" }