Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Firefox caches might refer to garbage collected builds. #119439

Open
nbp opened this issue Apr 14, 2021 · 1 comment
Open

Firefox caches might refer to garbage collected builds. #119439

nbp opened this issue Apr 14, 2021 · 1 comment

Comments

@nbp
Copy link
Member

nbp commented Apr 14, 2021

Describe the bug
Firefox (firefox-bin) relies on build-id to invalidate some of its internal caches. These caches might have content which is referencing absolute path of previous installs of Firefox.

When updating firefox dependencies without a firefox update, the build-id (timestamp of the build) would be identical. Thus none of the caches would be invalidated, and these caches would still reference the absolute path of the previous installation. This can cause issues where embedded addons are no longer found after a garbage collection.

The binary derivation for firefox should change the gToolkitBuildID strings to make it different between builds which have different dependencies.

One hackish idea would be to replace the last 4 digits mmss with a 4 digit number which is computed from the dependencies.

Additional context
See https://bugzilla.mozilla.org/show_bug.cgi?id=1704147

Notify maintainers
@taku0 @lovesegfault

Maintainer information:

# a list of nixpkgs attributes affected by the problem
attribute:
- firefox-bin
@taku0
Copy link
Contributor

taku0 commented Apr 17, 2021

We might able to generate gToolkitBuildID from $out. What is the restrictions of gToolkitBuildID? Only numbers? Should it be monotonic?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants