Firefox is the fast, lightweight, privacy-focused browser that works across all your devices.
Firefox 115 is the last version to support Windows 7. This repository includes patches that enable Firefox to run on Windows 7 beyond the official end-of-support date, allowing users to continue using the latest features and improvements from Firefox.
Windows 7, 8, 10, 11.
-
The minimize/maximize/close buttons get hidden with lightweight theme with hardware acceleration enabled
This is a bug that I currently cannot resolve. However, you can work around it by following step:
- In
about:config
togglemedia.hardware-video-decoding.enabled
tofalse
, togglegfx.webrender.software
totrue
- In
-
How to change language?
- Download language packs from here.
- In
about:config
toggleextensions.langpacks.signatures.required
tofalse
, togglexpinstall.signatures.required
tofalse
, toggleintl.multilingual.downloadEnabled
totrue
, toggleintl.multilingual.enabled
totrue
- Open the langpack for target locale (eg
firefox-136.0a1.en-CA.langpack.xpi
if you want anen-CA
locale). - In
about:preferences
click "Set Alternatives" under "Language", move desired locale to the top position, click OK, click "Apply And Restart"
-
Bootstrap a copy of the Firefox source code
git clone https://github.com/mozilla/gecko-dev.git
This repository contains patches for specific versions of Firefox, stored in directories named
<DATE>.<commit_id>
. Here,commit_id
is the commit ID of Firefox, andDATE
is purely for File Explorer.cd gecko-dev git checkout <commit_id> ./mach bootstrap
-
Building Rust on Windows MSVC
To ensure that
rustc
always generates programs compatible with Windows 7, Rust needs to be patched. This repository contains files namedRust<rust_version>win7.diff
for this purpose, whererust_version
is the version of Rust used to build Firefox, as specified here.-
Clone the source with
git
git clone https://github.com/rust-lang/rust.git cd rust git checkout <rust_version>
-
Apply patch
git apply --verbose --ignore-space-change Rust<rust_version>win7.diff
-
Build
python x.py build --target i686-pc-windows-msvc,x86_64-pc-windows-msvc python x.py build library --target i686-pc-windows-msvc,x86_64-pc-windows-msvc
-
-
Compiling Cargo from Source
-
Clone the source with
git
git clone https://github.com/rust-lang/cargo.git cd cargo
-
With
cargo
already installed by ./mach bootstrap, you can simply run:cargo build --release
-
-
Apply patches
Navigate to the
<DATE>.<commit_id>
directory, modify theREPO_PATH
variable inapply_patches.bat
to the path of the Firefox source, and then double-click it to apply the patches. -
Build Firefox
-
Add our custom-built
rustc.exe
andcargo.exe
to your PATH, delete or rename%USERPROFILE%\.rustup
and%USERPROFILE%\.cargo
, and remove any other instances ofrustc.exe
andcargo.exe
from your PATH. -
mozconfig for i686-pc-windows-msvc:
ac_add_options --target=i686-pc-windows-msvc ac_add_options --enable-optimize ac_add_options --enable-official-branding ac_add_options --enable-release ac_add_options --disable-sandbox ac_add_options --disable-tests
-
mozconfig for x86_64-pc-windows-msvc:
ac_add_options --target=x86_64-pc-windows-msvc ac_add_options --enable-optimize ac_add_options --enable-official-branding ac_add_options --enable-release ac_add_options --disable-tests
-
./mach build ./mach package ./mach build installers-AB-CD
-