You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Is your feature request related to a problem? Please describe.
Before, we were only offering a list of apps we trusted, but we want to be more open and also give a chance to new apps (and tbh, that was a lot of work too to maintain).
That's why we decide to let users choose between all the apps available.
Unfortunately, some apps are weaker than others and just a good description will bring lots of people to try it (trusting the apps listed in their apps page).
I have that particular problem with the app "Group Folders", that I must say offers something very nice.
But also, I have regularly big problems due to this app, problems that are always a pain to debug and cost me way too much time to fix (plus often, all the data are unavailable for an amount of time).
I'd be happy to make it available in the future, but I need to be sure the app is good enough before I let it be installed.
Describe the solution you'd like
Couldn't we have somewhere (in config.php file or via the parameters page), a way to select apps we don't want to be installed or used in our nextcloud?
Describe alternatives you've considered
I don't see alternative atm.
It's possible to specify a custom app store url. Mirror apps.json and categories.json to your own server, setup a job to regularly update the files from the official app store and remove apps you don't want.
I see waht you mean, but is it possible to manage a custom app you have at the same time as what you propose?
Isn't that a bit complexe for what I would like to achieve?
I see waht you mean, but is it possible to manage a custom app you have at the same time as what you propose?
Can you rephrase the question? I don't get it.
Isn't that a bit complexe for what I would like to achieve?
It's actually something like download apps.json, parse the json, remove app if on your blacklist, save again as apps.json. Point your instances to your app store url.
We planned to develop one or 2 custom apps for our nextcloud, and so use the custom app system.
It's not yet done, still in consideration / discussion.
As I don't know yet how that custom app system works, I was wondering if it will be easy to mix your own custom apps and the system you're explaining.
I'm sorry to come back on this post, but I think it becomes more and more important to have this.
Here are other cases of problems we had lately...
In our clouds, we configure a shared Lool and a shared onlyoffice for every cloud instances.
But some users just install themselves the opendocument server and try to configure it in their own cloud.
On the next cloud update, all the clouds that had that crashed during the update process because of this app.
Another user of a cloud just decided to install more than 80 apps -> Cloud down because some of the apps were really a bad idea to install.
My idea in #21566 was to add a little bit of code so that black/whitelists could be added to config.php. It would be pretty simple to do with about a dozen lines of code.
@kesselb's solution would also work, though it is a bit more manual:
It's possible to specify a custom app store url. Mirror apps.json and categories.json to your own server, setup a job to regularly update the files from the official app store and remove apps you don't want.
It would be pretty easy to include this as part of a Docker build script - curl the files, parse out the stuff you don't want, store them somewhere in the webroot, and change the appstoreurl to localhost.
I suppose an advantage to this method is that it also lets you control versions and upgrades. If you don't want users to be able to upgrade for some reason (stability or otherwise), don't update the json files.
Perhaps this could be officially added to the documentation since it has come up in at least four feature requests?
@benks-io You wouldn't really be setting up an app store but rather creating a "dummy" app store. Basically, you're just downloading the app store listings from Nextcloud's servers, filtering out what you don't want, storing the listings locally, and pointing your config.php to the listing files. You don't need to host all of the apps and files locally - it's not that extensive.
To make this easier, I came up with a script that implements what I just described (@quenenni and @szaimen - you may be interested). This basically does the same thing as my feature request in #21566, only this doesn't require modifications the core Nextcloud libraries and keeps things as native as possible. It could probably be turned into an app, but I'm not familiar with writing code for Nextcloud. Installation instructions for the script are in the header comments: https://gist.github.com/summersab/363c753c4936f0bc563ea88a85de6241
If you have questions or need help, feel free to ask. It might be better to post a comment on my Gist instead of replying here. Also, if you need more help like this, I happen to be a freelance PHP developer. Like I said, I don't currently have experience writing code for Nextcloud, but I've been wanting an excuse to learn. I'd be happy to cut my rates for any work I do while I get familiar with Nextcloud's code.
Activity
kesselb commentedon May 20, 2020
It's possible to specify a custom app store url. Mirror apps.json and categories.json to your own server, setup a job to regularly update the files from the official app store and remove apps you don't want.
quenenni commentedon May 20, 2020
@kesselb Thanks a lot for your help.
I see waht you mean, but is it possible to manage a custom app you have at the same time as what you propose?
Isn't that a bit complexe for what I would like to achieve?
kesselb commentedon May 20, 2020
Can you rephrase the question? I don't get it.
It's actually something like download apps.json, parse the json, remove app if on your blacklist, save again as apps.json. Point your instances to your app store url.
quenenni commentedon May 21, 2020
We planned to develop one or 2 custom apps for our nextcloud, and so use the custom app system.
It's not yet done, still in consideration / discussion.
As I don't know yet how that custom app system works, I was wondering if it will be easy to mix your own custom apps and the system you're explaining.
quenenni commentedon Feb 2, 2021
I'm sorry to come back on this post, but I think it becomes more and more important to have this.
Here are other cases of problems we had lately...
In our clouds, we configure a shared Lool and a shared onlyoffice for every cloud instances.
But some users just install themselves the opendocument server and try to configure it in their own cloud.
On the next cloud update, all the clouds that had that crashed during the update process because of this app.
Another user of a cloud just decided to install more than 80 apps -> Cloud down because some of the apps were really a bad idea to install.
summersab commentedon Feb 18, 2021
My idea in #21566 was to add a little bit of code so that black/whitelists could be added to config.php. It would be pretty simple to do with about a dozen lines of code.
@kesselb's solution would also work, though it is a bit more manual:
It would be pretty easy to include this as part of a Docker build script -
curlthe files, parse out the stuff you don't want, store them somewhere in the webroot, and change theappstoreurlto localhost.I suppose an advantage to this method is that it also lets you control versions and upgrades. If you don't want users to be able to upgrade for some reason (stability or otherwise), don't update the
jsonfiles.Perhaps this could be officially added to the documentation since it has come up in at least four feature requests?
szaimen commentedon Feb 18, 2021
To me #21566 sounds like a good proposal for anyone interested in implementing this 👍
summersab commentedon Feb 19, 2021
@benks-io You wouldn't really be setting up an app store but rather creating a "dummy" app store. Basically, you're just downloading the app store listings from Nextcloud's servers, filtering out what you don't want, storing the listings locally, and pointing your
config.phpto the listing files. You don't need to host all of the apps and files locally - it's not that extensive.To make this easier, I came up with a script that implements what I just described (@quenenni and @szaimen - you may be interested). This basically does the same thing as my feature request in #21566, only this doesn't require modifications the core Nextcloud libraries and keeps things as native as possible. It could probably be turned into an app, but I'm not familiar with writing code for Nextcloud. Installation instructions for the script are in the header comments:
https://gist.github.com/summersab/363c753c4936f0bc563ea88a85de6241
If you have questions or need help, feel free to ask. It might be better to post a comment on my Gist instead of replying here. Also, if you need more help like this, I happen to be a freelance PHP developer. Like I said, I don't currently have experience writing code for Nextcloud, but I've been wanting an excuse to learn. I'd be happy to cut my rates for any work I do while I get familiar with Nextcloud's code.
szaimen commentedon Jun 23, 2021
Lets us track this in #21566
kesselb commentedon Oct 8, 2021
Scheduled for 23: #29135
AndyScherzinger commentedon Oct 8, 2021
as in whitelist-only! - product decision