blob: 61c8934c3e259bfa42b1c13588adbb9f567e1532 (
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
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
|
#!/bin/sh
NAME="icecat"
DESC="GNU IceCat web browser"
MAKEDEPS="make rust cbindgen"
DEPS="nodejs alsa-lib atk cairo dbus ffmpeg fontconfig freetype2 gdk-pixbuf glib gtk3 icu libevent libffi libpng libvpx libwebp libx11 libxcb libxcomposite libxdamage libxext libxfixes libxrandr musl nspr nss pango pixman zlib dbus-glib"
PKG_VER=91.9.0
commit_hash=d7d3e9a33d2b3b78a6e08060684580c72c0d6e93
SOURCE="https://git.savannah.gnu.org/cgit/gnuzilla.git/snapshot/gnuzilla-$commit_hash.tar.gz"
ADDITIONAL="
icecat.desktop
stab.h
"
#prepare () {
#sed -i 's/\("files":{\)[^}]*/\1/' third_party/rust/audio_thread_priority/.cargo-checksum.json
#sed -i 's/\("files":{\)[^}]*/\1/' third_party/rust/target-lexicon-0.9.0/.cargo-checksum.json
#}
build () {
mkdir -p objdir
cd objdir
export SHELL=/bin/sh
export USE_SHORT_LIBNAME=1
export MACH_USE_SYSTEM_PYTHON=1
export MOZBUILD_STATE_PATH=$BUILD_ROOT/mozbuild
# disable desktop notifications
export MOZ_NOSPAM=1
# Find our triplet JSON
export RUST_TARGET="x86_64-unknown-linux-musl"
# Build with Clang, takes less RAM
export CC="clang"
export CXX="clang++"
export LDFLAGS="$LDFLAGS -Wl,-rpath,/usr/lib/icecat"
../mach configure \
--without-wasm-sandboxed-libraries \
--prefix=/usr \
--disable-elf-hack \
--enable-rust-simd \
--enable-sandbox \
--disable-cargo-incremental \
--disable-crashreporter \
--disable-install-strip \
--disable-jemalloc \
--disable-minify \
--disable-profiling \
--disable-strip \
--disable-tests \
--disable-updater \
--enable-alsa \
--enable-dbus \
--enable-default-toolkit=cairo-gtk3-wayland \
--enable-dom-streams \
--enable-ffmpeg \
--enable-hardening \
--enable-necko-wifi \
--enable-official-branding \
--enable-optimize="$CFLAGS -O2" \
--enable-pulseaudio \
--enable-release \
--enable-system-ffi \
--enable-system-pixman \
--with-distribution-id=xilinux \
--with-libclang-path=/usr/lib \
--with-system-ffi \
--with-system-icu \
--with-system-jpeg \
--with-system-libevent \
--with-system-libvpx \
--with-system-nspr \
--with-system-nss \
--with-system-pixman \
--with-system-png \
--with-system-webp \
--with-system-zlib \
--with-unsigned-addon-scopes=app,system &&
../mach build
}
package () {
DESTDIR="$PKG_DEST" MOZ_MAKE_FLAGS="$MAKEOPTS" ../mach install
install -m755 -d "$PKG_DEST"/usr/share/applications
install -m755 -d "$PKG_DEST"/usr/share/pixmaps
local _png
for _png in ../browser/branding/official/default*.png; do
local i=${_png%.png}
i=${i##*/default}
install -D -m644 "$_png" "$PKG_DEST"/usr/share/icons/hicolor/"$i"x"$i"/apps/icecat.png
done
install -m644 ../browser/branding/official/default48.png \
"$PKG_DEST"/usr/share/pixmaps/icecat.png
install -m644 ../icecat.desktop "$PKG_DEST"/usr/share/applications/org.mozilla.icecat.desktop
# Add StartupWMClass=icecat on the .desktop files so Desktop Environments
# correctly associate the window with their icon, the correct fix is to have
# icecat sets its own AppID but this will work for the meantime
# See: https://bugzilla.mozilla.org/show_bug.cgi?id=1607399
echo "StartupWMClass=icecat" >> $PKG_DEST/usr/share/applications/org.mozilla.icecat.desktop
# install our vendor prefs
install -d $PKG_DEST/usr/lib/icecat/browser/defaults/preferences
cat >> $PKG_DEST/usr/lib/icecat/browser/defaults/preferences/icecat-branding.js <<- EOF
// Use LANG environment variable to choose locale
pref("intl.locale.requested", "");
// Disable default browser checking.
pref("browser.shell.checkDefaultBrowser", false);
// Don't disable our bundled extensions in the application directory
pref("extensions.autoDisableScopes", 11);
pref("extensions.shownSelectionUI", true);
EOF
}
|