Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Symlink points to a non-existent location #126

Closed
ghost opened this issue Aug 6, 2022 · 11 comments
Closed

Symlink points to a non-existent location #126

ghost opened this issue Aug 6, 2022 · 11 comments

Comments

@ghost
Copy link

ghost commented Aug 6, 2022

General information

  • Operating system + version: Debian 11 (QubesOS AppVM)
  • Browser + version: Brave Browser (104.1.42.86)
  • Information about the host app:
    • How did you install it? Installed via a package manager
    • If installed an official release, put a version ($ browserpass --version): 3.7.2-1+b4
  • Information about the browser extension:
    • How did you install it? webstore
    • Browserpass extension version as reported by your browser: 3.7.2

If you are getting an error immediately after opening popup, have you followed the Configure browsers documentation section? N/A


Exact steps to reproduce the problem

  1. install webext-browserpass package from the Debian stable repository via sudo apt install

  2. install extension on Brave Browser from the chrome store

  3. cd /usr/lib/browserpass

  4. sudo make hosts-brave-user OR sudo make hosts-brave

What should happen?

/home/user/.config/BraveSoftware/Brave-Browser/NativeMessagingHosts/com.github.browserpass.native.json should successfully link to /usr/lib/browserpass/hosts/chromium/com.github.browserpass.native.json

What happened instead?

Error: the symlink points to a non-existent location

/usr/lib/browser/hosts...does not exist

@ghost ghost closed this as completed Aug 13, 2022
@ghost
Copy link
Author

ghost commented Aug 13, 2022

decided not to use extension

@erayd erayd reopened this Aug 13, 2022
@erayd
Copy link
Collaborator

erayd commented Aug 13, 2022

@maximbaz Is this issue ours to fix, or the debian packager?

@maximbaz
Copy link
Member

To be honest hard to say, almost all browsers were contributed by community, we haven't tested them, so either package installs something in a wrong place, or browser changed location, or it was contributed incorrectly...

@erayd
Copy link
Collaborator

erayd commented Aug 13, 2022

If they aren't tested, then I wonder if it might be worthwhile for us to add a "does this file / directory exist" sanity check to our host recipes. That wouldn't actually fix anything, but we could at least inform the user that our recipe doesn't match their system, and hopefully prompt a bug report so that we can address it.

@maximbaz
Copy link
Member

Ah sorry I may have read the issue incorrectly - we do expect the json files to be present at a certain location, so if they are truly missing, most probably it's the package issue (or maybe in reality, a matter of using the same PREFIX when calling make hosts-* as was used by the package). In any case, the default Makefile installs them to /usr/lib/browserpass/hosts, not /usr/lib/browser/hosts - but that might have been a typo on OP's side. PREFIX can adjust that location.

What's contributed by community is location of symlinks for a given browser on a given OS. We can't realistically test or warn users whether these locations are correct, and even if they aren't, it would take another friendly community person to actually find out what's the correct location for that particular OS+browser 🙂

@remilieam
Copy link

I have the same issue. When I install the host app using sudo apt install webext-browserpass, ls /usr/lib/browserpass only return browserpass-native Makefile. No hosts folder

@externalxdpro
Copy link

I have the same issue. When I install the host app using sudo apt install webext-browserpass, ls /usr/lib/browserpass only return browserpass-native Makefile. No hosts folder

Same for me as well.

@maximbaz
Copy link
Member

maximbaz commented Mar 4, 2023

Hello, we are not in control of Debian's package, so we cannot unfortunately help investigating and fixing this issue. Would some of you report this on Debian's bugtracker?

An alternative to unblock you guys might be to uninstall webext-browserpass and install the app manually by following our installation instructions.

I'll add to README that Debian's pkg cannot be used for anything except Chromium and Firefox, but other than that I'm afraid this issue is not really actionable for us...

@stefanct
Copy link

FWIW, this fixes the issue for the google-provided google-chrome-stable in Debian Bookworm (12):

ln -s /etc/chromium/native-messaging-hosts/com.github.browserpass.native.json /etc/opt/chrome/native-messaging-hosts/com.github.browserpass.native.json

@alliruk
Copy link

alliruk commented Jan 7, 2024

Google has explained where chrome looks for the manifest json file, so you can symlink depending on system wide or user specific installation: https://developer.chrome.com/docs/extensions/develop/concepts/native-messaging

@maximbaz
Copy link
Member

maximbaz commented Jan 8, 2024

And those paths are already reflected in the Makefile, so simply finding your browser in Configuring browsers section and executing the corresponding make target should be sufficient 😉 (and if you find a discrepancy, please file a PR!)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

No branches or pull requests

6 participants