Community Packages

Please read this before reporting a bug:
https://wiki.archlinux.org/title/Bug_reporting_guidelines

Do NOT report bugs when a package is just outdated, or it is in the AUR. Use the 'flag out of date' link on the package page, or the Mailing List.

REPEAT: Do NOT report bugs for outdated packages!
Tasklist

FS#67719 - browserpass packaging error

Attached to Project: Community Packages
Opened by BrLi (brli) - Tuesday, 25 August 2020, 17:52 GMT
Last edited by Maxim Baz (maximbaz) - Thursday, 27 August 2020, 19:08 GMT
Task Type Bug Report
Category Upstream Bugs
Status Closed
Assigned To Maxim Baz (maximbaz)
Architecture All
Severity Low
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

Details

Description:
you should not `ln -s` a file from another package in `browserpass-firefox` `browserpass-chromium`, instead, you should install to the right place for firefox or chromium in `browserpass`, and the `*-{browser}` should only contain the extensions rather than native-host included, also, the Makefile isn't required for browserpass to work. please remove it.
This task depends upon

Closed by  Maxim Baz (maximbaz)
Thursday, 27 August 2020, 19:08 GMT
Reason for closing:  Not a bug
Comment by Jonas Witschel (diabonas) - Tuesday, 25 August 2020, 18:23 GMT
> you should not `ln -s` a file from another package in `browserpass-firefox` `browserpass-chromium`, instead, you should install to the right place for firefox or chromium in `browserpass`, and the `*-{browser}` should only contain the extensions rather than native-host included

Why? The official upstream Makefile installs com.github.browserpass.native.json to /usr/lib/browserpass/hosts/{firefox,chromium}/, why manually deviate from that?

> the Makefile isn't required for browserpass to work. please remove it

Again, that's an issue with the upstream Makefile installing itself to /usr/lib/browserpass/ for whichever reason, not a packaging issue, the PKGBUILD only executes a standard "make install".

If you want to get these peculiarities fixed, I suggest opening an issue upstream at https://github.com/browserpass/browserpass-native to avoid every distro packager having to work around them manually, the Arch PKGBUILDs for browserpass look as expected.
Comment by Maxim Baz (maximbaz) - Tuesday, 25 August 2020, 18:38 GMT
> you should not `ln -s` a file from another package in `browserpass-firefox` `browserpass-chromium`, instead, you should install to the right place for firefox or chromium in `browserpass`

I disagree, `browserpass` is a native extension, it should not assume which browsers user has installed and should not assume that user wishes to use the extension in all browsers. However because of how native extension protocol is implemented in browsers, the json files _belong_ to the native host app, for example because they depend on the location of native host executable on disk. Therefore, they are installed in browserpass directory, and user is expected to symlink to them using `browserpass-{browser}` extension or manually.

> Makefile isn't required for browserpass to work. please remove it.

It is required to properly configure the extension. The `browserpass-{chromium,firefox}` performs the magic for Chromium and Firefox browsers, but for all other browsers users are expected to use this Makefile to configure the browser.

If you wish to discuss this further, please do open a ticket on Github and I would be happy to follow-up.
Comment by Eli Schwartz (eschwartz) - Tuesday, 25 August 2020, 18:59 GMT
Installing the native messaging protocol whitelist does not "assume that user wishes to use the extension in all browsers". It merely permits it *iff* the user does in fact install the extension in said browser, while also making it work even if the user installed the extension to their $HOME profile rather than with pacman.
Comment by Maxim Baz (maximbaz) - Tuesday, 25 August 2020, 19:17 GMT
True but I do believe it is better to let this package install json files in its own directory and let users choose where to symlink json files (with the help of packages like `browserpass-{chromium,firefox}`, provided Makefile or manually), rather than pollute file system by installing json files for every possible browser, even the ones that user doesn't have installed, and even the ones available only in AUR such as Google Chrome.

Loading...