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
Feature: Ability to add Chrome extensions like password managers #135
Comments
Not forgetting the ability to add location spoofing via a plugin. Ferdi/Ferdium allow apps like Tinder as well as other location based apps to be included - when they rely on Location. Location is also a key part of websites serving content to people from X continent. I would prefer location to NOT be a plugin, but when this could be the only way: I think plugins garner more worth. |
Hello, this is important. Is it planned? |
Hi there. Ferdium has been great so far, but this is important for me too; the organization I work for has switched to a policy that invalidates active logins every day, which means that without an autofilling password manager, I have to freshly log in to all of my apps that use my org's credentials every day. This causes me to risk missing important notifications from my job's Teams chats, as one example. |
Would love to have this feature as well. If I just may add another use-case to the benefits of supporting extensions: being able to use scripts on certain websites (via extensions like TamperMonkey/GreaseMonkey) would make a lot of things easier for some sites as well. |
I just wanna disable auto modification of sound device volumes - there's an extension for that, so this issue would certainly help. |
+1. I would love to use Ublock Origin on Ferdium so Discord and all the other services don't send sketchy telemetry data to they servers |
This, times 100. |
Same here |
+1 and following. I also use Ferdium for custom websites (news, forums etc) and some of them have really invasive ads, can't wait for extensions support! |
+++ for adblocking, now that Instagram is also serving ads to its "desktop" version! |
+1 My use-case is also to use a password-manager extension. I use KeePassXC on my mac, and a browser-plugin which connects to the locally running application to get the username/passwords for entering in the browser. I would love to be able to install the chrome-browser-plugin in Ferdium. |
+1 Looking forward for this to be implemented, extensions are really useful on the web apps such as ad blockers, etc... |
Not to further bloat this issue, as I'm sure the devs are aware of the upsides of extension support. Just want to point out that besides the obvious use case for extensions like adblockers and password managers I'd also like to be able to use extensions that enhance a specific service. Some are well-known, others are quite "niche" and specific. For example, I use "Gmail Simple Notes" for adding notes to emails. I also use "Gmail Quick Links" to store custom searches. And I use "Stylus" across my services to clean up the interface. Despite Ferdium already being super useful, not having access to these extensions are currently keeping me from fully switching over from my cluttered SSB setup. |
On a more general note: certain really useful extensions (like FB Purity) also exist as userscripts to be run in Grease/TamperMonkey. It should be possible to run those as a `user.js` script in a specific service but there are a few problems with that:
- it's not clear how to inject the extension code into the template user.js script
- the extensions do not seem to have access to presenting a configuration dialog and/or storage for their settings. FB Purity for instance always thinks it's being run for the 1st time
- you can only add a single extension (presumably!) which gets stored in the `recipes` directory. There's only 1 such directory for all custom websites you might add. True extensions would presumably be stored under the `partitions` directory, which has individual entries for each service.
One thing the devs may want to know is if we expect extensions (and their settings!) to be synched... Personally I'd consider it progress already if they're not - I don't expect to be installing as many extensions as I have in my browser.
|
I would really like to have the ability to install Chrome extensions too, especially to use LanguageTool. |
I've also made this comment in the discord. Because it runs on chromium it should be easy to allow extensions. Many of Ferdi's competitors in the all in one services window space allow extensions already. not sure why this hasn't been a day one feature. Have any developers chimed in as to why this feature is still blocked? |
@ThinkSalat, which competitors of Ferdium are you referring to? |
@lemikeone I haven't got much experience with the alternatives but Rambox claims to support extensions in its website (although in a pro plan) |
@Havock94 For what I have seen when I tried it, they only support their own selection of extensions (LanguageTool is not part of it) : 1Password, BitWarden, Boomerang for Gmail, Dark Mode, Dark Reader, DashLane, DragApp, Google Docs Offline, Google Translate, Grammarly, LastPass, NordPass, SafelnCloud and uBlock. |
Shift also provides wide list of extensions: https://tryshift.com/extension/ |
Adding myself to the cacophony. Being able to use Chrome Extensions like 1password, AI ghostwriters etc. would bring a massive productivity boost to ferdium! |
There's already so many people asking for this, but how would this be implemented? Isn't Ferdium using electron? Not sure if that supports extensions, beyond some .js ones (though, having a better UX for that would still help). Wavebox, which I'm currently use it. implement it by just being an actual browser - it's actual real Chromium browser with a different front-end a la Vivaldi. That would require a major rewrite of the project, though, in which case I get why there's no answer/plan here yet from the devs. |
Agreed - this would be fantastic |
+1 for Chrome extensions (not necessarily adblockers, I have a bunch of Gmail exts that enhance my workflow) |
This comment was marked as off-topic.
This comment was marked as off-topic.
+1 for Chrome extensions |
Are Chrome extensions at all feasible for a platform based on Electron? Looking at Rambox, it looks like they transitioned their whole platform from Electron to pure Chromium at which point they were able to support Chrome extensions. Of course, that was also the point at which they transitioned away from open source, so I suppose we can't know exactly what happened with the code. Anyway, I just wanted to point out that implementing general support for Chrome extensions would likely involve a fundamental restructure of either Ferdium or Electron. Correct me if I'm wrong. |
Yes, you are absolutely correct. Electron (as a framework) needs to provide support for chrome extensions, after which, based on volunteers in Ferdium, we can try to incorporate/enable the same. Without either of them, its pointless to keep adding +1 messages to this ticket. |
Thanks for the extra context. RE electron supporting chrome extensions, is there perhaps an electron issue we can subscribe to with this request? RE +1s, I suspect many people don't know or forget about this github feature. Seems like a reasonable Github feature request is for it to prompt and subscribe or emoji response before posting. |
If that issue exists, linking it here and freezing additional comments (assuming that is possible?) would make sense, imho. |
It appears Electrons documentation explicitly states that supporting extensions is a "non-goal": https://electronjs.org/docs/latest/api/extensions In that case it seems like this should be closed as a won't do with some reasoning provided or it should be linked to another issue which discusses the possibility of rewriting Ferdium as a non-Electron app with pros and cons. |
What about the option we were talking about last year with the rambox code? here: #135 (comment) |
For anyone new to this issue, please hold any "+1" or other non-substantive posts until Ferdium devs can respond to @martinszy |
This is non-trivial (and requires an almost full rewrite of Ferdium), and unless we have new volunteers who are willing to take this up, it won't be implemented. (I have greatly minimized my contribution to Ferdium, so I might not have the latest thinking from the rest of the core contributors - so please take that into account.) |
As I see here Lines 546 to 547 in 55a5d38
We're already creating a new Browser Windows for each service, so seems we can pass it to the extension from the example https://github.com/ramboxapp/electron-chrome-extensions/blob/master/README.md#advanced:
Or this will not work and we shold rework the whole approach? |
where are extensions managed from? What format will that be "understood" in? do we want universally enabled or per-service-enabled? what about performance hits due to extensions? |
As I see in this example https://github.com/samuelmaddock/electron-browser-shell - seems we should manually "pack" them: https://github.com/samuelmaddock/electron-browser-shell/tree/master/extensions
After this, I guess they should automatically appear in the url bar at the right.
I think global enabling would be more convenient, especially for password managers like Bitwarden and ad blockers.
I think like in the usual Chrome instance, but I think everyone thirsty for this feature will be ready to get some performance degradation. P.S. I understand that this is maybe not as trivial as I describe, but just want to give it a try, maybe the integration will be really not as hard as it looks. Especially if we already have a working example here https://github.com/samuelmaddock/electron-browser-shell I'm not an Electron developer, so can't give any deep technical help from my side, but really wish to get extensions in the Ferdium, so ready to test and give ideas. |
How big of an issue is extension support in the Electron world? Supposing there's enough demand for it from dependent project devs who have the general know-how, wouldn't it be more efficient to fork Electron? If not only to streamline this `"Place unpacked extensions (not .crx archives) here to have them automatically loaded by the browser."` method?
|
Hey @MurzNN do you have find something to make extension work ? |
This feature would be really need. Has there been any progress? :) |
waiting for new contributors to help with the backlog @kteppris . till then, no progress can be made |
Not that it makes a lot of difference with the backlog, but part of the reason behind the request for extension support is to be able to run an adblocker. I can't recall if it's been suggested already, but adblocking could also be built in. Quite a few applications provide implementations of that which are compatible with standard AdBlock filter lists (I was just reminded it exists, or existed, in KMail, for instance). I would be really surprised if no module exists for NodeJS and/or Electron that implements such functionality (and that would thus probably be a lot easier to integrate). |
Adblock and a GUI userscript manager would be enough in most cases IMO. I'd love to have more, but at that point it'd be a browser, and I do actually have actual browsers for that. |
On Sunday March 24 2024 23:20:05 Bayazid B. Halim wrote:
a GUI userscript manager
Something like TamperMonkey?
That'd be great, but I have the impression that would take us more than halfway to full extension support. Many of the userscripts I are crippled if not downright broken if they don't have access to a settings store mechanism and a standardised way to put up a GUI.
But since we're talking userscripts ... anyone here have an idea how to get one of the existing video-autoplay inhibitor scripts to work? Most do NOT require settings access or a GUI, from what I can tell.
|
But we already have some kind of userscripts via editing the per-serivce |
But we already have some kind of userscripts via editing the per-serivce `user.js` file from the service settings page.
Yes, but that only allows you to have a single script, so you would have to implement a multiplexer yourself to run multiple scripts. Plus the standard APIs browser extensions can use to put up a settings page, menus and store settings are missing.
|
This would be an amzing feature to have |
i think this may be related : https://github.com/samuelmaddock/electron-browser-shell |
Preflight Checklist
Problem Description
Rambox has ability to add extensions to the services, here is a description of this feature: https://rambox.app/feature/extensions
This is very useful to automate entering passwords using password managers like Bitwarden, also Grammarly integration will be cool too!
Shift also has the same feature: https://tryshift.com/features/extensions/
Proposed Solution
Will be good to have same feature in Ferdium too!
Alternatives Considered
Nope
Additional Information
No response
The text was updated successfully, but these errors were encountered: