diff --git a/truststore_darwin.go b/truststore_darwin.go index 46a5a73..4556813 100644 --- a/truststore_darwin.go +++ b/truststore_darwin.go @@ -17,7 +17,6 @@ import ( ) var ( - FirefoxPath = "/Applications/Firefox.app" FirefoxProfile = os.Getenv("HOME") + "/Library/Application Support/Firefox/Profiles/*" CertutilInstallHelp = "brew install nss" NSSBrowsers = "Firefox" diff --git a/truststore_linux.go b/truststore_linux.go index 64757a9..8cbb9ad 100644 --- a/truststore_linux.go +++ b/truststore_linux.go @@ -15,7 +15,6 @@ import ( ) var ( - FirefoxPath = "/usr/bin/firefox" FirefoxProfile = os.Getenv("HOME") + "/.mozilla/firefox/*" CertutilInstallHelp = `apt install libnss3-tools" or "yum install nss-tools` NSSBrowsers = "Firefox and/or Chrome/Chromium" diff --git a/truststore_nss.go b/truststore_nss.go index cf2810f..666928a 100644 --- a/truststore_nss.go +++ b/truststore_nss.go @@ -17,8 +17,13 @@ var ( ) func init() { - _, err := os.Stat(FirefoxPath) - hasNSS = !os.IsNotExist(err) + for _, path := range []string{ + "/usr/bin/firefox", nssDB, "/Applications/Firefox.app", + "/Applications/Firefox Developer Edition.app", + } { + _, err := os.Stat(path) + hasNSS = hasNSS || !os.IsNotExist(err) + } switch runtime.GOOS { case "darwin": @@ -32,9 +37,7 @@ func init() { hasCertutil = !os.IsNotExist(err) case "linux": - _, err := os.Stat(nssDB) - hasNSS = hasNSS && !os.IsNotExist(err) - + var err error certutilPath, err = exec.LookPath("certutil") hasCertutil = err == nil }