Commit Graph
21 Commits
Author SHA1 Message Date
Jake WriterandClaude Opus 5.5 be9f38b08e chore: remove build tooling nothing uses
- The developer UI (scripts/developer.py, `make edits`). It depended on
  easygui, which no requirements file declares, and every action it offered is
  a Makefile target: patch, unpatch, workspace, revert, diff. Its two helpers in
  scripts/_mixin.py (is_bootstrap_patch, patch) had no other callers.
- legacy/, the Go launcher deprecated in 2024-11. Nothing built or shipped it.
  Its Makefile targets and scripts/run-pw.py go with it, and so does Go from
  every dependency list and workflow.
- jsonvv/ and settings/camoucfg.jvv. Nothing read the .jvv schema: config is
  validated against settings/properties.json, and the two had already drifted.
  The jsonvv package stays on PyPI.
- Scripts with no caller: bootstrap.py, moztree, setup-wasi-linux.sh,
  package-helper.sh, install-local-build.sh, mozfetch.sh (copied into lw/ but
  never packaged), examples/.
- The pre-ESM Juggler copies JugglerFrameParent.jsm and JugglerFrameChild.jsm,
  and hidden-scrollbars.css. Juggler loads the .sys.mjs actors and deliberately
  no stylesheet, but jar.mn still packaged all three.
- patches/librewolf/*.opt, which list_patches() never picks up; the roverfox
  second pass in patch.py, whose directory no longer exists; the unread
  --no-settings-pane option.
- The CAMOUFOX_PASSWD secret passed to `make fetch` and closedsrc_rev in
  upstream.sh, which nothing reads.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-25 15:20:45 -06:00
daijro fb6d475fd3 Drop Linux i686 support for future releases
Firefox 32-bit Linux Support ended in 2026. This change removes it from the workflow
https://blog.mozilla.org/futurereleases/2025/09/05/firefox-32-bit-linux-support-to-end-in-2026/
2026-07-15 14:20:46 -05:00
daijro 34760a639b Fix patcher attempting to use git after setup-minimal 2026-07-15 07:58:02 -05:00
icepaq d6540b52ce Service Test and Contributing Guides (#521)
* example files

* contributing guides

* simple service test

* run tests in sync

* update pr template

* pip updates

* Update README.md

* typo fixes

* undo pip package update lol

* upgraded service test

* undo injections

* test with proxies

* auto set timezone and proxy url

* delete checks bundle

* split up service tests

* split up build tests

* rename service tests to service tester

* Update CONTRIBUTING.md

* fix entry vs exit ip

* allow alpha versions

* fix patch issues on macos

* bidirectional patch

* Add note on experimental pip package
2026-03-15 21:31:49 -04:00
icepaqandNirupam Bhowmick dfa62f7070 Juggler fixes (#2)
* fix: migrate Services import to lazy loading pattern and disable dark theme to prevent XPIProvider crash

- Changed Services from ChromeUtils.defineLazyGetter to ChromeUtils.defineESModuleGetters with lazy object
- Updated all Services references to lazy.Services throughout Juggler.js
- Added re-copying of additions and settings after git reset in patch.py
- Removed juggler components.conf copy logic from patch.py (now handled by copy-additions.sh)
- Disabled dark theme preference in camoufox.cfg to

* fix: revert Services import to direct ESM import and re-enable dark theme preference

- Changed Services from lazy loading pattern back to direct ChromeUtils.importESModule()
- Removed lazy object wrapper and ChromeUtils.defineESModuleGetters usage
- Updated all lazy.Services references to Services throughout Juggler.js
- Re-enabled dark theme preference in camoufox.cfg (extensions.activeThemeID)
- Removed XPIProvider crash prevention comment as issue is resolved

* fix: remove redundant Services import as it's available globally in XPCOM component context

- Removed ChromeUtils.importESModule imports for XPCOMUtils, ComponentUtils, and Services
- Added comment explaining Services is available as a global in XPCOM component context
- Services.scriptloader.loadSubScript call continues to work with global Services reference

* fix: correct JugglerFrameChild.sys.mjs path by removing duplicate content directory

- Changed esModuleURI from 'chrome://juggler/content/content/JugglerFrameChild.sys.mjs' to 'chrome://juggler/content/JugglerFrameChild.sys.mjs'
- Removes erroneous duplicate 'content' directory in the child actor module path

* fix: add ESM module entries and correct JugglerFrameChild.jsm path in jar.mn

- Added JugglerFrameParent.sys.mjs entry to juggler.jar manifest
- Added JugglerFrameChild.sys.mjs entry to juggler.jar manifest
- Fixed JugglerFrameChild.jsm path from 'content/content/JugglerFrameChild.jsm' to 'content/JugglerFrameChild.jsm' removing duplicate content directory

* fix: remove redundant Services lazy getter as it's available globally in content process context

- Removed ChromeUtils.defineLazyGetter for Services in main.js
- Added comment explaining Services is available as a global
- Services reference continues to work with global availability in content process

---------

Co-authored-by: Nirupam Bhowmick <48842933+heydryft@users.noreply.github.com>
2026-01-04 11:40:05 -05:00
Anton 3cceb0f4f5 Revert "bring back camoufox branding"
This reverts commit 3258fca5b2.
2026-01-04 11:34:17 -05:00
Anton 3258fca5b2 bring back camoufox branding 2026-01-03 22:33:16 -05:00
Nirupam Bhowmick 7106903bb0 fix: add binary flag to patch command for line ending preservation
- Added --binary flag to preserve line endings (CRLF vs LF)
- Removed -F3 (fuzz factor) flag
- Helps with cross-platform patching where line endings may differ
2025-12-30 00:40:12 +00:00
Nirupam Bhowmick acba61d7aa fix: improve patch command flexibility with whitespace and fuzz tolerance
- Changed --fuzz=3 to -F3 for consistent short option format
- Added -l flag to ignore whitespace differences when applying patches
- Maintains --forward flag to skip already applied patches
2025-12-30 00:30:18 +00:00
Nirupam Bhowmick ee997d1518 make patching more lenient 2025-12-29 23:37:39 +00:00
Nirupam Bhowmick f7a9bf7fbd refactor: move MOZ_APP_VENDOR and MOZ_APP_PROFILE to moz.configure and fix juggler component registration
- Removed MOZ_APP_VENDOR and MOZ_APP_PROFILE from configure.sh branding file
- Added note that these must be set via imply_option() in browser/moz.configure
- Updated disable-data-reporting-at-compile-time.patch to set MOZ_APP_VENDOR="Camoufox" and MOZ_APP_PROFILE="camoufox"
- Changed juggler components.conf to use "type" instead of "constructor" for Firefox 146+ compatibility
- Added automatic
2025-12-27 20:23:41 +00:00
Nirupam Bhowmick 32122430be fix: every patch patches except 0, 1 playwright and roverfox context 2025-12-27 02:58:10 +00:00
Nirupam Bhowmick 75fb8d2f78 fix: auto-update 6 line numbers in 0-playwright.patch 2025-12-25 18:25:54 +00:00
Nirupam Bhowmick 08ecd86746 feat: add Firefox v147 patch update task list and tracking document
Add comprehensive task list documenting the Firefox upgrade from v135.0.1 to v147.0b3 (12 major versions). Includes status tracking for all 45 patches after syncing with upstream LibreWolf (Firefox 146) and Playwright repositories.

Key changes:
- 25 broken patches identified (56% failure rate)
- 20 patches applying cleanly (44% success rate)
- LibreWolf patches updated from upstream: 17 patches synced, 5 deleted, 2 auto-fixed
-
2025-12-19 05:58:30 +00:00
Nirupam Bhowmick e1a28778db feat: add WebRTC IP spoofing with per-context isolation support 2025-08-23 23:53:07 +01:00
Nirupam Bhowmick 15719fe9b1 feat: implement user context-based font spacing 2025-08-19 19:02:22 +01:00
daijro bf245006b2 multibuild: Allow multiple build targets, Makefile changes, more.
- Allow multiple OS & arch build targets to be passed in multibuild.py
- Add make set-target to change target OS & arch
- Cleanup/refactor patch.py and package.py, move common functions to mixin file
2024-08-01 22:13:35 -05:00
daijro bd12f3c46e Many changes, bump to v128.0.3-1
- Heavy changes to Makefile. Now uses aria2c to download the Firefox release tarball
- New features in developer UI to make patch editing much easier
- Modified Playwright's Juggler patches to run on Firefox release v128.0.3
- Bump Playwright Juggler module to June 2th patches
- Fix viewport-hijacker and xmas-modified patches for new Firefox release
2024-08-01 04:41:03 -05:00
daijro dc63ec8d3f Clone & patch in same local repo
Do not copy the Firefox source repo before patching. Manage everything through git instead.
2024-07-30 02:51:52 -05:00
daijro a48c4140f9 Fix rustup not found in Docker 2024-07-27 18:10:37 -05:00
daijro.dev@gmail.com 1090f6a212 Initial release v128.0-1 2024-07-26 06:49:20 -05:00