Let user decide if future update notifications are shown or not
Describe the feature you'd like to request
As a followup of my first feature request (https://github.com/floccusaddon/floccus/issues/1634) It would be great when the user gets asked if future update notifications should be shown or not.
Describe the solution you'd like
Add a section to the update page that lets the user decide if future update notifications should be shown or not. (Just like the "Automated Error Reporting" options that are available on the update page)
Describe alternatives you've considered
I know that you rely on donations and that this feature request could reduce the amount of donations due to the user is not aware of it anymore.
Alternative 1: Ask the user if update notifications should not be shown until:
- a new major version gets installed
- a period of X months is over This would be something between "update page doesn't annoy user" and "you still get donations".
Alternative 2: If the Add-On is used on many clients in a company, give an admin somehow the option to turn of those messages globally. Question: If you receive a (yearly) donation from a company, would it be possible to hide all the donation-messages?
Thanks
Hello :wave:
Thank you for taking the time to open this issue with floccus. I know it's frustrating when software causes problems. You have made the right choice to come here and open an issue to make sure your problem gets looked at and if possible solved. I'm Marcel and I created floccus and have been maintaining it ever since. I currently work for Nextcloud which leaves me with less time for side projects like this one than I used to have. I still try to answer all issues and if possible fix all bugs here, but it sometimes takes a while until I get to it. Until then, please be patient. Note also that GitHub is a place where people meet to make software better together. Nobody here is under any obligation to help you, solve your problems or deliver on any expectations or demands you may have, but if enough people come together we can collaborate to make this software better. For everyone. Thus, if you can, you could also have a look at other issues to see whether you can help other people with your knowledge and experience. If you have coding experience it would also be awesome if you could step up to dive into the code and try to fix the odd bug yourself. Everyone will be thankful for extra helping hands! One last word: If you feel, at any point, like you need to vent, this is not the place for it; you can go to the forum, to twitter or somewhere else. But this is a technical issue tracker, so please make sure to focus on the tech and keep your opinions to yourself.
I look forward to working with you on this issue Cheers :blue_heart:
Hi @hartsberger I see your dilemma.
a period of X months is over
What would be X months be ideally, in your opinion. Currently, it's set to 35 days.
In my opinion 6 months would be sufficient.
But this would still be interesting:
Question: If you receive a (yearly) donation from a company, would it be possible to hide all the donation-messages?
Are you able to set values in web extension local storage with your deployment method? You could set the time the last intervention was displayed to 2050 and it would never get shown.
Can you please describe where this storage should reside in Mozilla Firefox and Microsoft Edge? Do I have to add some lines to "prefs.js" for Firefox? Or how can I modify these storages? Thanks.
That's a good question, I don't know where the different browsers store this data.
Well, then I am not able to set values in these storages. If anyone else could give me a hint, this would be awesome.
Back to topic: Is there a chance that you set a greater time period?
I've increased the time to 75 days now. I think understand your need. Basically, we would need to disable the update screen for company installations, ideally only for those that donate. What are you able to influence in your deployment process? Do you have other extensions where this works for example?
I can only modify these things in my deployment process:
- Registry keys
- Config files in %APPDATA%
- Browser config via ADMX
ADMX sounds like an interesting possibility:
LLM explanation on using ADMX to set config values for web extensions
To set a value using ADMX (Administrative Templates) that a web extension in Firefox or Edge can read, you need to configure the appropriate group policy settings. This involves creating or editing ADMX files to define policies and then applying these policies via Group Policy Management. Here's how you can do it:
Step-by-Step Guide for Firefox
-
Download the Firefox ADMX Templates:
- You can download the ADMX templates for Firefox from the Mozilla GitHub repository.
-
Add ADMX Templates to Group Policy:
- Extract the downloaded files.
- Copy the
.admxfiles toC:\Windows\PolicyDefinitionson your domain controller. - Copy the corresponding language files (e.g.,
.adml) toC:\Windows\PolicyDefinitions\en-USor your respective language folder.
-
Configure Policies:
- Open the Group Policy Management Console (GPMC) and create a new Group Policy Object (GPO) or edit an existing one.
- Navigate to
Computer Configuration>Policies>Administrative Templates>Mozilla>Firefox. - Configure the desired policies. For example, you might set an extension's configuration using the
ExtensionSettingspolicy.
-
Set Custom Preferences:
-
To set custom preferences that your web extension can read, you can use the
Preferencespolicy. Here’s an example of setting a custom preference:{ "Extensions": { "[email protected]": { "install": true, "locked": { "customPreference": "customValue" } } } }
-
-
Deploy the Policy:
- Link the GPO to the appropriate organizational unit (OU) in Active Directory.
- Force a policy update on the target machines using the command
gpupdate /force.
-
Read the Preference in the Extension:
- In your web extension, you can read the preference using the
browser.storage.managedAPI.
browser.storage.managed.get('customPreference').then((result) => { console.log('Custom preference:', result.customPreference); }); - In your web extension, you can read the preference using the
Step-by-Step Guide for Microsoft Edge
-
Download the Edge ADMX Templates:
- Download the Microsoft Edge policy files from the Microsoft Edge Enterprise landing page.
-
Add ADMX Templates to Group Policy:
- Extract the downloaded files.
- Copy the
.admxfiles toC:\Windows\PolicyDefinitionson your domain controller. - Copy the corresponding language files (e.g.,
.adml) toC:\Windows\PolicyDefinitions\en-USor your respective language folder.
-
Configure Policies:
- Open the Group Policy Management Console (GPMC) and create a new Group Policy Object (GPO) or edit an existing one.
- Navigate to
Computer Configuration>Policies>Administrative Templates>Microsoft Edge>Extensionsor other relevant settings.
-
Set Custom Preferences:
-
To set custom preferences that your web extension can read, use the
ExtensionInstallForcelistandExtensionSettingspolicies. Here’s an example of configuring an extension and setting a custom preference:{ "ExtensionInstallForcelist": ["[email protected]"], "ExtensionSettings": { "[email protected]": { "installation_mode": "force_installed", "preferences": { "customPreference": "customValue" } } } }
-
-
Deploy the Policy:
- Link the GPO to the appropriate organizational unit (OU) in Active Directory.
- Force a policy update on the target machines using the command
gpupdate /force.
Floccus could then read the settings you have set in the json.
@hartsberger what do you think?
Closing due to lack of response.
This issue has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs.