Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -101,6 +101,7 @@ As fallback, the last part of the path is used, e.g. `theuser1` for `Internet/gi
- Vivaldi
- Iridium
- Slimjet
- Librewolf

### Windows

Expand Down
2 changes: 2 additions & 0 deletions internal/jsonapi/manifest/manifest.go
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,8 @@ func renaderManifestContent(browser, wrapperPath string) ([]byte, error) {
switch browser {
case "firefox":
return newFirefoxManifest(wrapperPath).Format()
case "librewolf":
return newFirefoxManifest(wrapperPath).Format()
case "chrome":
fallthrough
case "brave":
Expand Down
2 changes: 1 addition & 1 deletion internal/jsonapi/manifest/manifest_path.go
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ func (m manifestPath) Global(browser, libpath string) (string, error) {
return "", err
}

if browser == "firefox" && libpath != "" {
if (browser == "firefox" || browser == "librewolf") && libpath != "" {
return filepath.Join(libpath, path), nil
}

Expand Down
2 changes: 2 additions & 0 deletions internal/jsonapi/manifest/manifest_path_darwin.go
Original file line number Diff line number Diff line change
Expand Up @@ -2,12 +2,13 @@

var manifestPaths = &manifestPath{
local: map[string]string{
"arc": "~/Library/Application Support/Arc/User Data/NativeMessagingHosts",

Check failure on line 5 in internal/jsonapi/manifest/manifest_path_darwin.go

View workflow job for this annotation

GitHub Actions / macos

File is not properly formatted (gofmt)
"brave": "~/Library/Application Support/Brave/NativeMessagingHosts",
"chrome": "~/Library/Application Support/Google/Chrome/NativeMessagingHosts",
"chromium": "~/Library/Application Support/Chromium/NativeMessagingHosts",
"firefox": "~/Library/Application Support/Mozilla/NativeMessagingHosts",
"iridium": "~/Library/Application Support/Iridium/NativeMessagingHosts",
"librewolf": "~/Library/Application Support/Librewolf/NativeMessagingHosts",
"slimjet": "~/Library/Application Support/Slimjet/NativeMessagingHosts",
"vivaldi": "~/Library/Application Support/Vivaldi/NativeMessagingHosts",
},
Expand All @@ -18,6 +19,7 @@
"chromium": "/Library/Application Support/Chromium/NativeMessagingHosts",
"firefox": "/Library/Application Support/Mozilla/NativeMessagingHosts",
"iridium": "/Library/Application Support/Iridium/NativeMessagingHosts",
"librewolf": "/Library/Application Support/Librewolf/NativeMessagingHosts",
"slimjet": "/Library/Application Support/Slimjet/NativeMessagingHosts",
"vivaldi": "/Library/Application Support/Vivaldi/NativeMessagingHosts",
},
Expand Down
30 changes: 16 additions & 14 deletions internal/jsonapi/manifest/manifest_path_linux.go
Original file line number Diff line number Diff line change
Expand Up @@ -2,21 +2,23 @@ package manifest

var manifestPaths = &manifestPath{
local: map[string]string{
"firefox": "~/.mozilla/native-messaging-hosts",
"chrome": "~/.config/google-chrome/NativeMessagingHosts",
"chromium": "~/.config/chromium/NativeMessagingHosts",
"brave": "~/.config/BraveSoftware/Brave-Browser/NativeMessagingHosts",
"vivaldi": "~/.config/vivaldi/NativeMessagingHosts",
"iridium": "~/.config/iridium/NativeMessagingHosts",
"slimjet": "~/.config/slimjet/NativeMessagingHosts",
"firefox": "~/.mozilla/native-messaging-hosts",
"librewolf": "~/.librewolf/native-messaging-hosts",
"chrome": "~/.config/google-chrome/NativeMessagingHosts",
"chromium": "~/.config/chromium/NativeMessagingHosts",
"brave": "~/.config/BraveSoftware/Brave-Browser/NativeMessagingHosts",
"vivaldi": "~/.config/vivaldi/NativeMessagingHosts",
"iridium": "~/.config/iridium/NativeMessagingHosts",
"slimjet": "~/.config/slimjet/NativeMessagingHosts",
},
global: map[string]string{
"firefox": "mozilla/native-messaging-hosts", // will be prefixed with the appropriate lib path
"chrome": "/etc/opt/chrome/native-messaging-hosts",
"chromium": "/etc/chromium/native-messaging-hosts",
"brave": "/etc/opt/chrome/native-messaging-hosts",
"vivaldi": "/etc/opt/vivaldi/native-messaging-hosts",
"iridium": "/etc/iridium-browser/native-messaging-hosts",
"slimjet": "/etc/opt/slimjet/native-messaging-hosts",
"firefox": "mozilla/native-messaging-hosts", // will be prefixed with the appropriate lib path
"librewolf": "librewolf/native-messaging-hosts", // will be prefixed with the appropriate lib path
"chrome": "/etc/opt/chrome/native-messaging-hosts",
"chromium": "/etc/chromium/native-messaging-hosts",
"brave": "/etc/opt/chrome/native-messaging-hosts",
"vivaldi": "/etc/opt/vivaldi/native-messaging-hosts",
"iridium": "/etc/iridium-browser/native-messaging-hosts",
"slimjet": "/etc/opt/slimjet/native-messaging-hosts",
},
}
6 changes: 3 additions & 3 deletions internal/jsonapi/manifest/setup_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -54,13 +54,13 @@ func TestValidBrowsers(t *testing.T) {

switch runtime.GOOS {
case "darwin": // macOS
validBrowsers = []string{"arc", "brave", "chrome", "chromium", "firefox", "iridium", "slimjet", "vivaldi"}
validBrowsers = []string{"arc", "brave", "chrome", "chromium", "firefox", "iridium", "librewolf", "slimjet", "vivaldi"}
case "windows": // Windows
validBrowsers = []string{"chrome", "chromium", "firefox"}
case "linux": // Linux
validBrowsers = []string{"brave", "chrome", "chromium", "firefox", "iridium", "slimjet", "vivaldi"}
validBrowsers = []string{"brave", "chrome", "chromium", "firefox", "iridium", "librewolf", "slimjet", "vivaldi"}
case "freebsd": // FreeBSD
validBrowsers = []string{"chrome", "chromium", "ungoogled-chromium", "firefox", "iridium"}
validBrowsers = []string{"chrome", "chromium", "ungoogled-chromium", "firefox", "iridium", "librewolf"}
default: // Fallback, not suppoerted OS
t.Fatalf("Unsupported OS: %s", runtime.GOOS)
}
Expand Down
2 changes: 1 addition & 1 deletion setup.go
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ func (s *jsonapiCLI) getGlobalInstall(ctx context.Context, c *cli.Context) (bool
}

func (s *jsonapiCLI) getLibPath(ctx context.Context, c *cli.Context, browser string, global bool) (string, error) {
if !c.IsSet("libpath") && runtime.GOOS == "linux" && browser == "firefox" && global {
if !c.IsSet("libpath") && runtime.GOOS == "linux" && (browser == "firefox" || browser == "librewolf") && global {
return termio.AskForString(ctx, color.BlueString("What is your lib path?"), "/usr/lib")
}

Expand Down
Loading