Difference between revisions of "Chromium"

From ArchWiki
Jump to: navigation, search
m (GTK3: style change to improve readability)
(GTK3: vague and unnecessary - --force-device-scale-factor overrides GTK3 settings, see HiDPI#Chromium_.2F_Google_Chrome)
Line 67: Line 67:
  
 
Chromium uses [[Network Security Services]] for certificate management. Certificates can be managed in {{ic|chrome://settings/certificates}}.
 
Chromium uses [[Network Security Services]] for certificate management. Certificates can be managed in {{ic|chrome://settings/certificates}}.
 
=== GTK3 ===
 
 
In some [[HiDPI]] environments, you may wish to use specific GTK settings for Chromium and different settings for all other applications as a result of device display scaling. Although Chromium does not fully integrate with GTK, it does use the settings within {{ic|${XDG_CONFIG_HOME}/gtk-3.0/settings.ini}}. If these settings are used by other applications and you want to use the flag {{ic|1=--force-device-scale-factor=1.5}}, change the user data location. To do this, you first create another directory for chromium configurations:
 
$ mkdir ${HOME}/.config-chromium
 
Then, move your current settings:
 
$ mv ${HOME}/.config/chromium ${HOME}/.config-chromium
 
$ mv ${HOME}/.config/chromium-flags.conf ${HOME}/.config-chromium
 
To run Chromium with the above changes, run
 
$ XDG_CONFIG_HOME="${HOME}/.config-chromium" chromium --user-data-dir="${HOME}/.config-chromium/chromium"
 
If desired, alias the above command in your {{ic|.bashrc}}. Finally, you are able to use device scaling in Chromium without inheriting GTK settings for other applications.
 
  
 
== Tips and tricks ==
 
== Tips and tricks ==

Revision as of 06:31, 17 June 2018

Chromium is an open-source graphical web browser based on the Blink rendering engine. It is the basis for the proprietary Google Chrome browser.

Installation

The open-source project, Chromium, can be installed with the chromium package.

Other alternatives include:

  • Chromium Beta Channel — the beta version
https://chromereleases.googleblog.com/ || chromium-betaAUR[broken link: package not found]
  • Chromium Dev Channel — the development version
https://chromereleases.googleblog.com/ || chromium-devAUR
  • Chromium snapshot builds — the untested nightly version
https://build.chromium.org/ || chromium-snapshot-binAUR
  • Chromium with VA-API support — with a patch to enable VA-API
https://chromium-review.googlesource.com/c/chromium/src/+/532294 || chromium-vaapiAUR

The derived browser, Google Chrome, which automatically installs Flash Player and Widevine EME (for e.g. Netflix), can be installed with the google-chromeAUR package.

Other alternatives include:

  • Google Chrome Beta Channel — the beta version
https://www.google.com/chrome/browser/beta.html || google-chrome-betaAUR
  • Google Chrome Dev Channel — the development version
https://www.google.com/chrome/ || google-chrome-devAUR
Note: Support for native client (NaCl) has been dropped in chromium version 54, see FS#51511. Opening NaCl applications will display this error message: "This plugin is not supported". The google-chromeAUR package supports NaCl.

See these two articles for an explanation of the differences between Chromium and Chrome.

On top of the different Chromium build channels, a number of forks exist with more or less special features; see List of applications#Blink-based.

Configuration

Default applications

To set Chromium as the default browser and to change which applications Chromium launches when opening downloaded files, see default applications.

Flash Player plugin

Flash Player is automatically installed when using Google Chrome.

To install it for Chromium, install the pepper-flash package.

Make sure Flash is allowed to run in chrome://settings/content/flash.

Widevine Content Decryption Module plugin

Widevine is Google's Encrypted Media Extensions (EME) Content Decryption Module (CDM). It is used to watch premium video content such as Netflix. It is automatically installed when using Google Chrome.

To install it for Chromium, install the chromium-widevineAUR package. Make sure Allow sites to play protected content is checked in chrome://settings/content/protectedContent.

PDF viewer plugin

Chromium and Google Chrome are bundled with the Chromium PDF Viewer plugin. If you don't want to use this plugin, check Open PDFs using a different application in chrome://settings/content/pdfDocuments.

Certificates

Chromium uses Network Security Services for certificate management. Certificates can be managed in chrome://settings/certificates.

Tips and tricks

See the main article: Chromium/Tips and tricks.

Troubleshooting

Fonts

Note: Chromium does not fully integrate with fontconfig/GTK/Pango/X/etc. due to its sandbox. For more information, see the Linux Technical FAQ.

Font rendering issues in PDF plugin

To fix the font rendering in some PDFs one has to install the ttf-liberation package, otherwise the substituted font causes text to run into other text. This was reported on the chromium bug tracker by an Arch user.

Font rendering issues of UTF characters

UTF characters may render as boxes (e.g. simplified Chinese characters). Installing ttf-liberation will allow for the characters to be rendered as expected.

Force 3D acceleration

Warning: Disabling the rendering blacklist may cause unstable behaviour, including crashes of the host. See the bug reports in chrome://gpu.

First follow Hardware video acceleration. Then, to force 3D rendering, enable the flags: "Override software rendering list", "GPU rasterization", "Zero-copy rasterizer" in chrome://flags. Check if it is working in chrome://gpu. This may also alleviate tearing issues with the radeon driver.

If "Native GpuMemoryBuffers" under chrome://gpu mentions software rendering, you additionally need to pass the --enable-native-gpu-memory-buffers flag, or some optimizations (like the zero-copy rasterizer) won't do anything. This flag isn't available under chrome://flags - it must be passed in either the chromium-flags.conf file (as noted in Chromium/Tips and tricks#Making flags persistent) or directly on the command line.

WebGL

There is the possibility that your graphics card has been blacklisted by Chromium. See #Force 3D acceleration.

If you are using Chromium with Bumblebee, WebGL might crash due to GPU sandboxing. In this case, you can disable GPU sandboxing with optirun chromium --disable-gpu-sandbox.

Visit chrome://gpu/ for debugging information about WebGL support.

Chromium can save incorrect data about your GPU in your user profile (e.g. if you use switch between an Nvidia card using Optimus and Intel, it will show the Nvidia card in chrome://gpu even when you're not using it or primusrun/optirun). Running using a different user directory, e.g, chromium --user-data-dir=$(mktemp -d) may solve this issue. For a persistent solution you can reset the GPU information by deleting ~/.config/chromium/Local\ State.

Zoomed-in GUI

Chromium's graphical interface will automatically scale on high-DPI displays. To disable this, use --force-device-scale-factor=1.

Password prompt on every start with GNOME Keyring

See GNOME/Keyring#Passwords are not remembered.

Chromecasts in the network are not discovered

You will need to enable the Media Router Component Extension in chrome://flags/#load-media-router-component-extension.

Losing cookies and passwords when switching between desktop environments

If you see the message Failed to decrypt token for service AccountId-* in the terminal when you start Chromium, it might try to use the wrong password storage backend. This might happen when you switch between Desktop Environments.

See Chromium/Tips and tricks#Force a password store.

Hang on startup when Google Sync enabled

Try launching Chrome with --password-store=basic or another appropriate password store.

See Chromium/Tips and tricks#Force a password store.

See also