Jump to content

Firefox: Difference between revisions

From postmarketOS Wiki
Baonks81 (talk | contribs)
Tags: mobile edit mobile web edit
Brecht (talk | contribs)
Add deprecation warning to "Webapps" section
Line 3: Line 3:
postmarketOS ships the desktop version of Firefox as default in Phosh and Plasma Mobile, the mobile and privacy friendly configuration from [https://gitlab.com/postmarketOS/mobile-config-firefox mobile-config-firefox]. To remove this configuration, uninstall the <code>mobile-config-firefox</code> package.
postmarketOS ships the desktop version of Firefox as default in Phosh and Plasma Mobile, the mobile and privacy friendly configuration from [https://gitlab.com/postmarketOS/mobile-config-firefox mobile-config-firefox]. To remove this configuration, uninstall the <code>mobile-config-firefox</code> package.
== Webapps ==
== Webapps ==
'''Warning:''' This no longer works on the recent versions of postmarketOS (including stable release) because Firefox has [https://bugzilla.mozilla.org/show_bug.cgi?id=1682593 removed support] for the site specific browser mode.
To create webapps for use with Firefox, the following shell script can be used. It generates a separate Firefox profile for isolation, and adds a desktop entry that opens the corresponding site as a single-site browser (without a url-bar).
To create webapps for use with Firefox, the following shell script can be used. It generates a separate Firefox profile for isolation, and adds a desktop entry that opens the corresponding site as a single-site browser (without a url-bar).
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">

Revision as of 10:56, 19 January 2022

Alt text
Firefox running on Phosh with mobile-config-firefox

postmarketOS ships the desktop version of Firefox as default in Phosh and Plasma Mobile, the mobile and privacy friendly configuration from mobile-config-firefox. To remove this configuration, uninstall the mobile-config-firefox package.

Webapps

Warning: This no longer works on the recent versions of postmarketOS (including stable release) because Firefox has removed support for the site specific browser mode.

To create webapps for use with Firefox, the following shell script can be used. It generates a separate Firefox profile for isolation, and adds a desktop entry that opens the corresponding site as a single-site browser (without a url-bar).

#!/usr/bin/env bash
# Create firefox profile
set -e
name=$1
url=$2
# Ugly, copy-pasted from SO
simple_name=$(echo "$name" | awk '{print tolower($0)}' | sed 's/ //g')
echo "Creating webapp $name, using $url."

firefox -CreateProfile $simple_name
profile_dir=$(find ~/.mozilla/firefox/ -maxdepth 1 | grep $simple_name)
echo 'user_pref("browser.ssb.enabled",true);' > $profile_dir/user.js

# Create desktop entry
cat >~/.local/share/applications/$simple_name.desktop <<EOL
[Desktop Entry]
Exec=firefox -P $simple_name --ssb $url
Icon=/home/user/.local/share/applications/$simple_name.png
Type=Application
Terminal=false
Name=$name
StartupNotify=true
StartupWMClass=firefox
EOL

# Get icon
wget $url/favicon.ico -O /tmp/favicon.ico
convert /tmp/favicon.ico /tmp/favicon.png
mv /tmp/favicon.png .local/share/applications/$simple_name.png ||
mv /tmp/favicon-0.png .local/share/applications/$simple_name.png
rm /tmp/favicon*.png

Save this script as /add-webapp.sh, and mark it as executable. Running the command ./add-webapp.sh "Hacker News" "https://news.ycombinator.com" will create a launcher shortcut to Hacker News.

Harware accelerated rendering

To make firefox on pinephone/pinetab/pb/pbp smoother you need to change layers.acceleration.force-enabled to true in about:config. To ensure that it kicked in check about:support, graphics->compositing should become OpenGL.

Hide tabs toolbar and navbar

Open firefox, search and install Panorama View addons (or whatever tabs view addons). Enter URL about:support, choose Open Directory at Profile Directory. Edit chrome/userChrome.css(if it doesn't exist, you can create one)

Tabs Toolbar and navbar on top screen:

/* Hide tabs toolbar on top*/
#TabsToolbar {
   visibility: collapse !important;
}

/* Hide navbar on top*/
#nav-bar {
  /* customize this value. */
  --navbar-margin: -30px;

  margin-top: var(--navbar-margin);
  margin-bottom: 0;
  z-index: -100;
  transition: all 0.3s ease !important;
  opacity: 0;
}

#navigator-toolbox:focus-within > #nav-bar,
#navigator-toolbox:hover > #nav-bar
{
  margin-top: 0;
  margin-bottom: var(--navbar-margin);
  z-index: 100;
  opacity: 1;
}

Tabs Toolbar and navbar on bottom screen:

/* Hide tabs toolbar on bottom*/
#TabsToolbar {
   visibility: collapse !important;
}

/* Hide navbar on bottom*/
#nav-bar {
  /* customize this value. */
  --navbar-margin: -30px;

  margin-top: 0;
  margin-bottom: var(--navbar-margin);
  z-index: -100;
  transition: all 0.3s ease !important;
  opacity: 0;
}

#navigator-toolbox:focus-within > #nav-bar,
#navigator-toolbox:hover > #nav-bar
{
  margin-top: var(--navbar-margin);
  margin-bottom: 0;
  z-index: 100;
  opacity: 1;
}

Customize Toolbar to edit Panorama View first icon showing on navigation bar. Changing Phosh scale_screen to 1.75 and Firefox zoom to 150% to fix some glitches for small panel/display in Settings

See also