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: 250
Popularity: 0.067258
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 .. 4 5 6 7 8 9 10 11 12 13 14 .. 84 Next › Last »

cysp74 commented on 2022-09-11 08:33 (UTC)

Yeah, built fine w/o any hassle, thanks for cherry pick.

figue commented on 2022-09-10 20:51 (UTC)

New patched added. It should build now.

cysp74 commented on 2022-09-10 16:55 (UTC)

Faced error during compile - I checked if this came from original (mozilla esr source) and this isn't made by any gnuzilla patch:


error: expected one of `!` or `::`, found keyword `mod`
6:03.62    --> xxx/icecat/src/gnuzilla-e77a1fa25ac66250e88d5d9901a2ba670edb94cc/output/icecat-102.2.0/third_party/rust/packed_simd_2/src/lib.rs:347:7
6:03.62     |
6:03.62 347 | crate mod llvm {
6:03.62     |       ^^^ expected one of `!` or `::`
6:03.62 error: could not compile `packed_simd_2` due to previous error

Couple of steps led to upstream bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1783784

"Approved for 102.3esr. Thanks for the fix-up."

TL;DR

https://firefox-source-docs.mozilla.org/writing-rust-code/update-policy.html


Firefox 102     Rust 1.60.0     1.59.0  2022 April 7    2022 May 26     2022 June 28

third_party/rust/packed_simd_2/README.MD has some info:


# The Crates.io Version Can No Longer Be Updated!

The original maintainer is out of contact, and the new maintainers (the Portable SIMD Project Group) do not have the appropriate cra
tes.io permissions to issue updates.

We are aware that the version available on crates.io is currently broken, and will not build.

If you need to continue to use the crate, we have published a "next version" under an alternative name.

Adjust your `[dependencies]` section of `Cargo.toml` to be the following:
```toml
packed_simd = { version = "0.3.6", package = "packed_simd_2" }

rev.cressy commented on 2022-09-10 15:50 (UTC)

I also noticed that ever since glibc was upgraded on Aug 19, 2022 there were problems with some apps compiling or running. An example is MakeMKV and Ungoogled Chromium.

Here are lines 39 - 63 of
gnuzilla-e77a1fa25ac66250e88d5d9901a2ba670edb94cc/output/icecat-102.2.0

# In automation, manage an sccache daemon. The starting of the server
# needs to be in a make file so sccache inherits the jobserver.
ifdef MOZBUILD_MANAGE_SCCACHE_DAEMON
SCCACHE_STOP = $(MOZBUILD_MANAGE_SCCACHE_DAEMON) --stop-server

# When a command fails, make is going to abort, but we need to terminate the
# sccache server, otherwise it will prevent make itself from terminating
# because it would still be running and holding a jobserver token.
# However, we also need to preserve the command's exit code, thus the
# gymnastics.
SCCACHE_STOP_ON_FAILURE = || (x=$$?; $(SCCACHE_STOP) || true; exit $$x)

build::
    # Terminate any sccache server that might still be around.
    -$(SCCACHE_STOP) > /dev/null 2>&1
    # Start a new server, ensuring it gets the jobserver file descriptors
    # from make (but don't use the + prefix when make -n is used, so that
    # the command doesn't run in that case)
    mkdir -p $(UPLOAD_PATH)
    $(if $(findstring n,$(filter-out --%, $(MAKEFLAGS))),,+)env SCCACHE_LOG=sccache=debug SCCACHE_ERROR_LOG=$(UPLOAD_PATH)/sccache.log $(MOZBUILD_MANAGE_SCCACHE_DAEMON) --start-server
endif

### Build it
build::
    +$(MOZ_MAKE) $(SCCACHE_STOP_ON_FAILURE)

Here are the lines 355 -361 of
gnuzilla-e77a1fa25ac66250e88d5d9901a2ba670edb94cc/output/icecat-102.2.0/config/rules.mk

# The root makefile doesn't want to do a plain export/libs, because
# of the tiers and because of libxul. Suppress the default rules in favor
# of something else. Makefiles which use this var *must* provide a sensible
# default rule before including rules.mk
default all::
    $(foreach tier,$(TIERS),$(call SUBMAKE,$(tier)))

I hope that this helps.

figue commented on 2022-09-10 14:53 (UTC)

@rev.cressy I noticed I had rust 1.62.0... I'll try with 1.63, perhaps it need some patch.

rev.cressy commented on 2022-09-10 14:41 (UTC)

I did a full system upgrade and still icecat build breaks at the same point. I usually do a full system upgrade every week.

rev.cressy commented on 2022-09-10 11:32 (UTC)

I started to build this version last night and This morning I see this error. I have not had the chance to research it yet.

4:20.03 1 warning generated. 4:26.83 make[2]: [/home/leroy/src/icecat/src/gnuzilla-e77a1fa25ac66250e88d5d9901a2ba670edb94cc/output/icecat-102.2.0/config/recurse.mk:34: compile] Error 2 4:26.83 make[1]: [/home/leroy/src/icecat/src/gnuzilla-e77a1fa25ac66250e88d5d9901a2ba670edb94cc/output/icecat-102.2.0/config/rules.mk:361: default] Error 2 4:26.83 make: *** [client.mk:63: build] Error 2 4:26.85 7 compiler warnings present. ==> ERROR: A failure occurred in build(). Aborting...

micwoj92 commented on 2022-08-13 00:51 (UTC)

Unfortunately build fails now because of 2 things.

  1. rust 1.63.0
  2. glibc 2.36

Hopefully next release fixes this.

unphysicalix commented on 2022-06-29 09:07 (UTC)

FYI: https://git.savannah.gnu.org/cgit/gnuzilla.git/snapshot/gnuzilla-65a61287a5142a9403ec00d973cb5e5d658a3c71.tar.gz

91.11.0 is out.

Does anyone know, if there is workpower to switch to the new ESR 102 ?

unphysicalix commented on 2022-03-08 03:07 (UTC)

FYI

http://git.savannah.gnu.org/cgit/gnuzilla.git/snapshot/gnuzilla-76e23c5f1bcebc22f7936baa29f75c6c9415935e.tar.gz

there is a 91.7.0 already.