meta data for this page
  •  

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
linux:prepare:prepare:firefox [2023/08/22 10:38]
niziak
linux:prepare:prepare:firefox [2023/10/17 09:20] (current)
niziak
Line 2: Line 2:
  
 ===== Disable Detachable Tabs in Mozilla Firefox ===== ===== Disable Detachable Tabs in Mozilla Firefox =====
-  * `about:​config` +  * ''​about:​config''​ 
-  * `browser.tabs.allowTabDetach`+  * ''​browser.tabs.allowTabDetach''​
  
  
 ===== limit memory usage ===== ===== limit memory usage =====
  
 +==== cgroups ====
 +
 +References:
 +  * [[https://​gist.github.com/​hrishikeshrt/​dab05d42fc60144909cdbde2cc3f4d2c|Limit Memory Usage using cgroups]]
 +  * [[https://​gist.github.com/​hardfire/​7e5d9e7ce218dcf2f510329c16517331]]
 +  * [[https://​gist.github.com/​avoidik/​1c7c53f02461f716aabebf3372a6199d]]
 +
 +But now we have some modern systemd based tools.
 +
 +==== systemd ====
 +
 +[[https://​wiki.archlinux.org/​title/​cgroups]]
 +
 +<file bash /​usr/​local/​bin/​firefox>​
 +#!/bin/bash
 +systemd-run --user -G --scope --unit=run-firefox -p OOMPolicy=continue -p MemoryMaxigh=4G -p MemoryMax=5G -p MemorySwapMax=2G -p "​CPUQuota=200%"​ /​usr/​bin/​firefox "​$@"​
 +</​file>​
 +
 +or
 +
 +<file bash /​usr/​local/​bin/​firefox>​
 +#!/bin/bash
 +systemd-run --user -G --scope --unit=run-firefox -p OOMPolicy=continue -p MemoryHigh=50% -p MemoryMax=60% -p MemorySwapMax=2G -p "​CPUQuota=200%"​ /​usr/​bin/​firefox "​$@"​
 +</​file>​
 +
 +See [[https://​www.freedesktop.org/​software/​systemd/​man/​systemd.resource-control.html#​MemoryMax=bytes|MemoryMax]]
 +
 +Verify limits:
 <code bash> <code bash>
-systemd-run --user ​-G --scope --unit=firefox -p OOMPolicy=continue -p MemoryMax=2G -p MemorySwapMax=2G-p "​CPUQuota=200%" ​firefox+systemctl list-units --user --type scope 
 +systemctl status ​--user run-firefox.scope 
 + 
 + ​Memory:​ 201.3M (max: 2.0G swap max: 2.0G available: 1.8G)
 </​code>​ </​code>​
  
-See [[https://www.freedesktop.org/software/systemd/​man/​systemd.resource-control.html#MemoryMax=bytes|MemoryMax]]+Modify limits without restarting firefox: 
 +<code bash> 
 +systemctl set-property --user run-firefox.scope MemoryMax=8G MemorySwapMax=10G 
 +</​code>​ 
 + 
 +==== firejail ==== 
 + 
 +<code bash> 
 +sudo apt install firejail 
 + 
 +firejail --noprofile --rlimit-as=5g firefox 
 + 
 +</​code>​ 
 + 
 +<​code>​ 
 +       ​--rlimit-as=number 
 +              Set the maximum size of the process'​s virtual memory (address space) in bytes. ​ Use k(ilobyte), m(egabyte) or g(igabyte) for size suffix (base 1024). 
 +</​code>​ 
 + 
 +[[https://wiki.archlinux.org/title/Firejail#Using_Firejail_by_default|Using_Firejail_by_default]]