Skip to content

Instantly share code, notes, and snippets.

@kikislater
Last active May 22, 2025 05:43
Show Gist options
  • Save kikislater/8ffca1c968d676ffc496a33d3fd02e3d to your computer and use it in GitHub Desktop.
Save kikislater/8ffca1c968d676ffc496a33d3fd02e3d to your computer and use it in GitHub Desktop.
Fast and energy efficient Firefox (Used on Thinkpad P14s Gen5 - Ryzen 7)
// === Basic UI ===
user_pref("browser.tabs.warnOnClose", false);
user_pref("browser.tabs.warnOnCloseOtherTabs", false);
user_pref("browser.tabs.drawInTitlebar", false);
// user_pref("browser.tabs.firefox-view", false);
user_pref("browser.aboutwelcome.enabled", false);
// === Performance ===
user_pref("layers.acceleration.disabled", true); // Ensure GPU acceleration if available
user_pref("layers.acceleration.force-enabled", false);
user_pref("gfx.webrender.all", true);
user_pref("dom.ipc.processCount", 2); // Limit content processes
user_pref("dom.ipc.processCount.webIsolated", 1);
user_pref("browser.sessionstore.max_tabs_undo", 0);
user_pref("browser.sessionstore.max_windows_undo", 0);
user_pref("browser.sessionstore.privacy_level", 2);
// === Memory and battery optimization ===
user_pref("browser.tabs.unloadOnLowMemory", true);
user_pref("dom.ipc.processPrelaunch.enabled", false);
user_pref("dom.ipc.keepProcessesAlive.web", 0); // Don't keep content processes alive
user_pref("network.dns.disablePrefetch", true);
user_pref("network.prefetch-next", false);
user_pref("network.http.speculative-parallel-limit", 0);
user_pref("content.notify.ontimer", false);
user_pref("image.mem.decode_bytes_at_a_time", 32768); // Lower image decode effort
// === Battery & CPU Optimization ===
user_pref("media.hardware-video-decoding.force-enabled", true);
user_pref("media.ffmpeg.vaapi.enabled", true); // HW video decoding (Wayland+VAAPI)
user_pref("dom.event.handling-user-input-time-limit", 300); // Lower responsiveness = lower CPU
user_pref("browser.sessionstore.interval", 1800000); // Save session less often
user_pref("toolkit.cascadia.enabled", false); // Disable Cascadia animations
user_pref("webgl.disabled", true);
user_pref("power.enabled", true);
user_pref("gl.allow-high-power", false);
user_pref("threads.use_low_power.enabled", true);
// === Privacy/Security ===
user_pref("toolkit.telemetry.enabled", false);
user_pref("datareporting.healthreport.uploadEnabled", false);
user_pref("browser.newtabpage.activity-stream.feeds.telemetry", false);
user_pref("browser.newtabpage.activity-stream.telemetry", false);
user_pref("browser.ping-centre.telemetry", false);
user_pref("browser.safebrowsing.downloads.remote.enabled", false);
user_pref("extensions.pocket.enabled", false);
user_pref("media.autoplay.default", 5); // Block all autoplay
user_pref("extensions.screenshots.disabled", true);
// === Disable distractions and extra content ===
user_pref("extensions.screenshots.disabled", true);
user_pref("browser.discovery.enabled", false);
user_pref("browser.library.activity-stream.enabled", false);
// === Reduce Animations & Effects ===
user_pref("toolkit.cosmeticAnimations.enabled", false);
user_pref("ui.prefersReducedMotion", 1);
// === Notifications and permissions ===
// user_pref("permissions.default.desktop-notification", 2); // Block notifications
// user_pref("permissions.default.camera", 2); // Block camera
// user_pref("permissions.default.microphone", 2); // Block mic
// user_pref("media.navigator.permission.disabled", true);
// === Wayland & KDE Plasma Compatibility ===
user_pref("widget.use-xdg-desktop-portal", true);
user_pref("widget.wayland-dmabuf-vaapi.enabled", true);
user_pref("widget.wayland.fractional-scale.enabled", true);
// === Close Tabs Automatically to Save Memory ===
user_pref("browser.sessionstore.max_tabs_undo", 0);
user_pref("browser.sessionstore.max_windows_undo", 0);
// === Disable Background Services ===
user_pref("backgroundjobs.enabled", false);
user_pref("dom.push.enabled", false);
user_pref("dom.serviceWorkers.enabled", false);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment