export MOZ_NOSPAM=1
export MOZBUILD_STATE_PATH="$SRCDIR"/mozbuild
export MOZ_SERVICES_SYNC=1
export GDK_BACKEND=x11
export MACH_NO_TERMINAL_FOOTER=1

abinfo "Setting ulimit for LTO..."
ulimit -n 4096

abinfo "Building Firefox ..."
"$SRCDIR"/mach build

abinfo "Installing Firefox ..."
DESTDIR="$PKGDIR" \
    "$SRCDIR"/mach install

abinfo "Fixing Firefox bin symlink path ..."
rm -fv "$PKGDIR"/usr/bin/firefox
ln -srv "$PKGDIR"/usr/lib/firefox/firefox "$PKGDIR"/usr/bin/firefox

abinfo "Installing icons ..."
for i in 16 22 24 32 48 64 128 256; do
    install -Dvm644 "$SRCDIR"/browser/branding/official/default$i.png \
        "$PKGDIR"/usr/share/icons/hicolor/${i}x${i}/apps/firefox.png
done

abinfo "Installing about logos ..."
install -Dvm644 "$SRCDIR"/browser/branding/official/content/about-logo.png \
  "$PKGDIR"/usr/share/icons/hicolor/192x192/apps/firefox.png
install -Dvm644 "$SRCDIR"/browser/branding/official/content/about-logo@2x.png \
  "$PKGDIR"/usr/share/icons/hicolor/384x384/apps/firefox.png

abinfo "Symlinking dictionaries for spellchecking ..."
rm -rfv "$PKGDIR"/usr/lib/firefox/{dictionaries,hyphenation}
ln -srv "$PKGDIR"/usr/share/hunspell "$PKGDIR"/usr/lib/firefox/dictionaries
ln -srv "$PKGDIR"/usr/share/hyphen "$PKGDIR"/usr/lib/firefox/hyphenation

abinfo "Symlinking main executable ..."
ln -srfv "$PKGDIR"/usr/lib/firefox/firefox "$PKGDIR"/usr/lib/firefox/firefox-bin

abinfo "Arch Linux: Use system certificates ..."
ln -srfv "$PKGDIR"/usr/lib/libnssckbi.so "$PKGDIR"/usr/lib/firefox/libnssckbi.so

abinfo "Installing language packs ..."
mkdir -pv "$PKGDIR"/usr/lib/firefox/browser/extensions/
(
    cd "$SRCDIR"/../
    for i in *.xpi; do
        cp -v $i \
            "$PKGDIR"/usr/lib/firefox/browser/extensions/langpack-${i/.xpi/}@firefox.mozilla.org.xpi
    done
)
