x-default-browser
This cross-platform module finds out the default browser for current user.
Tested on Windows 10 64-bit, Windows 7 64-bit, Windows XP 32-bit, Ubuntu 14.04 64-bit (en-US locale), Mac OS X.
It requires nodejs and npm. If you don't have node, grab it at nodejs.org.
Node installer bundles npm (node package manager)
How it works
- Windows:
- checks registry value
HKCU\Software\Clients\StartMenuInternet
- Linuxes:
- reads the output of
xdg-mime query default x-scheme-handler/http
- OS X:
Usage as a nodejs module
$ npm install x-default-browser
var defaultBrowser = require('x-default-browser');
defaultBrowser(function (err, res) {
console.dir(res);
});
commonName
is portable, it will be ie
, safari
, firefox
, chrome
, chromium
, opera
or unknown
isBlink
is true for Chrome, Chromium, OperaisWebkit
is true for Chrome, Chromium, Opera, Safariidentity
key is platform-specific.
- On Windows, it's the prefix you can use for querying
HKLM\Software\Clients\StartMenuInternet\<prefix>
keys to find out details of the browser. It'll be one of iexplore.exe
, firefox.exe
, google chrome
,
chromium.<somerandomkeyhere>
, operastable
. - On Ubuntu, it will be
firefox.desktop
, google-chrome.desktop
, chromium-browser.desktop
or opera.desktop
- On Mac OS X, it will be the bundle ID:
com.apple.Safari
, com.google.chrome
, com.operasoftware.Opera
, org.mozilla.firefox
etc
Usage from command line
$ npm install -g x-default-browser
$ x-default-browser
firefox
Command line version outputs the commonName
key, i.e. ie
, safari
, firefox
, chrome
, chromium
, opera
or unknown
.
Linux support
This module was only tested on Ubuntu. Compatibility reports and fixes for other distros are more than welcome!
Use GitHub issues or email: (jakub.g.opensource) (gmail)
License
MIT © Jakub Gieryluk
Related projects