Package Details: icecat 115.10.0-1

Git Clone URL: https://aur.archlinux.org/icecat.git (read-only, click to copy)
Package Base: icecat
Description: GNU version of the Firefox ESR browser
Upstream URL: https://git.savannah.gnu.org/cgit/gnuzilla.git
Keywords: browser esr gnuzilla web
Licenses: MPL-2.0
Submitter: None
Maintainer: figue (xiota)
Last Packager: xiota
Votes: 251
Popularity: 1.02
First Submitted: 2007-12-09 10:12 (UTC)
Last Updated: 2024-04-19 02:20 (UTC)

Dependencies (51)

Sources (3)

Pinned Comments

xiota commented on 2024-02-27 10:57 (UTC) (edited on 2024-02-27 10:59 (UTC) by xiota)

icecatbrowser.org is unofficial, separate from GNU, which is stated at the site itself. classictetris.net is used by the site owner to serve the prepatched sources. They are used only when _build_prepatched=true to save time by skipping the patching step. The default is false.

The site was created to fill the gap after GNU stopped distributing prepatched sources and binaries. As far as I can tell, the makeicecat script is run without any modification, while this PKGBUILD does make some changes. For version 115.8.0, the only differences between the prepatched sources and a fresh patch from this PKGBUILD are:

  • services/settings/dumps/monitor/changes – "last_modified" and "collection" entries are different. This is expected because timestamps differ based on when makeicecat is run.

  • Some different l10n files (translations). This is also somewhat expected because the latest commit is checked out prior to patching. Exact contents can differ based on when the script is run.

  • .hg* files and directories. They are not needed, and this PKGBUILD deletes them.

xiota commented on 2024-02-26 07:32 (UTC) (edited on 2024-03-13 20:04 (UTC) by xiota)

PKGBUILD has been updated. Major changes:

  • Downloads Firefox ESR and localization using the source array. Files are saved for reuse.
  • Saves freshly patched IceCat sources in a tarball for reuse.
  • Saves the PGO profile for reuse.

Test builds can be expedited by:

  • Using prepatched sources by setting _build_prepatched=true
  • Using a premade profile.

Notes:

  • Wayland users, consider setting _build_pgo_xvfb=false. This will use xwayland-run for profiling.
  • PGO should work now, but if it doesn't and you're willing to go without, try _build_pgo=false.
  • Running out of RAM? Try adding mk_add_options MOZ_PARALLEL_BUILD=___ around line 300. Pick a value less than number of cores and free RAM in GB. For example, on a system with 8 cores, 64GB total RAM, but only 6 GB free, the value should be set to 4 or 5.
    • If a few people can confirm this is helpful, I will consider adding it as an additional option.

Having problems? Please provide details: processor make and model, number of cores, free -m, full log in pastebin, whether using AUR helper/makepkg/clean chroot, etc.

Latest Comments

« First ‹ Previous 1 2 3 4 5 6 7 8 9 10 11 .. 84 Next › Last »

seo.disparate commented on 2023-07-07 04:22 (UTC)

Something must have changed with the languages repositories, since the build without _SPEED=y doesn't work anymore (though it used to build a few days ago). Building in a clean chroot btw. I'm currently testing the build with the following changes to be applied to builds with/without _SPEED=y:

# Thanks to cysp74 to report this bug
sed -e 's;find l10n -wholename '\''\*/brand.dtd'\'' | xargs;find l10n -wholename '\''\*/brand.dtd'\'' | xargs -r;g' -i makeicecat
sed -e 's;find l10n -wholename '\''\*/brand.ftl'\'' | xargs;find l10n -wholename '\''\*/brand.ftl'\'' | xargs -r;g' -i makeicecat

figue commented on 2023-07-07 00:52 (UTC)

Patch pushed 67ac93909fa9 but I didn't bump pkgrel. Please test it.

figue commented on 2023-07-06 23:24 (UTC)

@cysp74 I see, it's the _SPEED=Y... I'll patch.

settyness commented on 2023-07-06 19:54 (UTC) (edited on 2023-07-06 19:55 (UTC) by settyness)

I believe StartupWMClass in icecat.desktop should be icecat-default.

$ xprop WM_CLASS
WM_CLASS(STRING) = "Navigator", "icecat-default"

cysp74 commented on 2023-07-06 17:09 (UTC) (edited on 2023-07-06 17:09 (UTC) by cysp74)

@figue Ok, here is my workflow (without the ""patch""):


rm -Rf icecat
git clone https://aur.archlinux.org/icecat.git
cd icecat
_SPEED=Y makepkg -srf --noconfirm

(At first try I didn't delete the directory ofcoz, but had the same yield)

This throws:


Running modification-aware sed: sed /ifndef/,/endif/d -i browser/base/content/default-bookmarks.html
+ /bin/sed /ifndef/,/endif/d -i browser/base/content/default-bookmarks.html
++ md5sum browser/base/content/default-bookmarks.html
+ '[' '3337c5c47d38487cc8936b828ff3ae58  browser/base/content/default-bookmarks.html' = '1260ccbb3f4cb12686128af1766c5616  browser/base/content/default-bookmarks.html' ']'
+ find l10n -wholename '*/brand.dtd'
+ xargs /bin/sed 's/trademarkInfo.part1.*/trademarkInfo.part1 "The IceCat logo is Copyright 2008-2015 Free Software Foundation, released under the terms of the GNU Lesser General Public License, version 3 or any later version.">/' -i
/bin/sed: no input files
==> ERROR: A failure occurred in prepare().
    Aborting...
==> Removing installed dependencies...
checking dependencies...

figue commented on 2023-07-06 12:07 (UTC)

@cysp74 I've built it 2 times yesterday and makeicecat finished success both... Are you sure we need to replace that line with "xargs -r"?

cysp74 commented on 2023-07-06 11:04 (UTC)

Due to upstream bug (in makeicecat script) compile ran to error and I've made a quickfix. However I have no additional time slot for this, so @figue reporting this to gnu would be good. Or we can simply put this to an ""temporary"" patch file, include into PKGBUILD - as I did.


--- makeicecat.old      2023-07-06 11:26:16.660192912 +0200
+++ makeicecat  2023-07-06 11:43:03.986990506 +0200
@@ -527,7 +527,7 @@
     sed '/ifndef/,/endif/d' -i browser/base/content/default-bookmarks.html

     # Custom legal about pages
-    find l10n -wholename '*/brand.dtd' | xargs /bin/sed 's/trademarkInfo.part1.*/trademarkInfo.part1 "The IceCat logo is Copyright 
2008-2015 Free Software Foundation, released under the terms of the GNU Lesser General Public License, version 3 or any later versio
n.">/' -i
+    find l10n -wholename '*/brand.dtd' | xargs -r /bin/sed 's/trademarkInfo.part1.*/trademarkInfo.part1 "The IceCat logo is Copyrig
ht 2008-2015 Free Software Foundation, released under the terms of the GNU Lesser General Public License, version 3 or any later ver
sion.">/' -i
     find l10n -wholename '*/brand.ftl' | xargs /bin/sed 's/^trademarkInfo = .*/trademarkInfo = The IceCat logo is Copyright 2008-20
15 Free Software Foundation, released under the terms of the GNU Lesser General Public License, version 3 or any later version./' -i
     local string
     for string in rights-intro-point-2 rights-intro-point-3 rights-intro-point-4 rights-intro-point-5 rights-intro-point-6 rights-w
ebservices rights-safebrowsing

figue commented on 2023-06-14 23:47 (UTC)

Thank you @Charlie.f94b92. I forgot to push those changes in git! :(

Charlie.f94b92 commented on 2023-06-12 12:11 (UTC) (edited on 2023-06-12 12:12 (UTC) by Charlie.f94b92)

Broken build on 102.12.0-2. Fixed it:

diff --git a/PKGBUILD b/PKGBUILD
index 9934a89..565e9cc 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -36,7 +36,7 @@ sha256sums=('0f629c78f24dc56b7369b337aa8d72d948c1d00a2c1f6761468c9511ca8320be'
             '33dd309eeb99ec730c97ba844bf6ce6c7840f7d27da19c82389cdefee8c20208'
             'ca3cedc5edce26040d3caf735afa8744fe08f3a1695eb2cda3796f4f336632d3'
             '2a12b187a8803b0c3a4385d4567e1debf8bfa3e17c4c8cefdf39fb7434d3d932'
-            'db2fb4df9738c83c59ff037093d5474bc0fb64ac4ea0f71945ac741d4173211a')
+            '53a45dd7ffd004d04c89492fd6c9aa1759f44f212730479d98e72ce20a74e254')

 prepare() {
   cd gnuzilla-${_commit}
@@ -73,7 +73,7 @@ prepare() {

   # fix mp4parse (thank you @seo.disparate :: https://aur.archlinux.org/packages/icecat#comment-918458)
   patch -Np1 -i ../../../mp4parse_macro_mul.patch
-  sed -e 's|src/lib.rs":"73114a5c28472e77082ad259113ffafb418ed602c1741f26da3e10278b0bf93e|src/lib.rs":"bded10689ddd8fd3fcb4ab01be1ecf3642691d68c3651fc4b00f3ccba67fc7cd|' -i output/icecat-${pkgver}/third_party/rust/mp4parse/.cargo-checksum.json
+  sed -e 's|src/lib.rs":"73114a5c28472e77082ad259113ffafb418ed602c1741f26da3e10278b0bf93e|src/lib.rs":"bded10689ddd8fd3fcb4ab01be1ecf3642691d68c3651fc4b00f3ccba67fc7cd|' -i third_party/rust/mp4parse/.cargo-checksum.json

   # Patch to move files directly to /usr/lib/icecat. No more symlinks.
   sed -e 's;$(libdir)/$(MOZ_APP_NAME)-$(MOZ_APP_VERSION);$(libdir)/$(MOZ_APP_NAME);g' -i config/baseconfig.mk
diff --git a/mp4parse_macro_mul.patch b/mp4parse_macro_mul.patch
index 10619f1..a14dbf2 100644
--- a/mp4parse_macro_mul.patch
+++ b/mp4parse_macro_mul.patch
@@ -1,5 +1,5 @@
---- a/output/icecat-102.12.0/third_party/rust/mp4parse/src/lib.rs
-+++ b/output/icecat-102.12.0/third_party/rust/mp4parse/src/lib.rs
+--- a/third_party/rust/mp4parse/src/lib.rs
++++ b/third_party/rust/mp4parse/src/lib.rs
 @@ -3184,8 +3184,8 @@
              type Output = $output;

figue commented on 2023-06-10 10:55 (UTC)

@seo.disparate thank you. I'll check it!

@unphysicalix as you say, the history is simply that IceCat comes from GNU, Librewolf is an independent project.

Use the browser you like. I currently run several of them according to what I need.

Cheers