@luckow Maybe some sort of shared hosting? Should be able to support lots of wordpress instances, LAMP stacks and Surfer apps.
Andreas
Posts
-
License issue -
Ente for cloudron, help for testing wanted.Updated Ente Package:
andreasdueren/ente-cloudron:0.5.5- Implemented replication across three buckets
Tested with the following providers:
Primary:
Backblaze, Secondary:Hetzner Object Sorage, Glacier:ScalewayOne important consideration: The cold bucket needs to support the
GLACIERclass Ente tries to use. So either pointS3_COLD_*at an actual Glacier-capable object store (like Scaleway’s cold tier) or switch the app tolocal bucketsmode so the start script configures Museum withare_local_buckets: true/use_path_style_urls: true, which causes the replication controller to skip the Glacier storage class. -
Lock Applications@james Yes, same concept. Simple but could prevent accidental data loss.
-
AFFiNE - open-source Notion, Miro, Monday, Outline, Appflowy alternative@SansGuidon said in AFFiNE - open-source Notion, Miro, Monday, Outline, Appflowy alternative:
Yet we are not the only ones suffering from this product making things unnecessarily more complicated
Yes, people are struggling. But this is still Alpha software (version 0.25.5 right now) so some instabilities are permissable. It does look pretty powerful but they are open about AI features on self-hosted not having feature parity yet.
@SansGuidon said in AFFiNE - open-source Notion, Miro, Monday, Outline, Appflowy alternative:
selfhosted=true parameter
This is already passed in the package
-
AFFiNE - open-source Notion, Miro, Monday, Outline, Appflowy alternativeAFFiNE Copilot Findings
- Config lives in
/app/data/config/config.json– The admin UI doesn’t honor scenario overrides reliably, so edit the file directly (File Manager works). Setcopilot.scenarios.override_enabled: true, assign each scenario to a model you actually have access to, and restart the app. ENV overrides are gone; this file is the single source of truth. - Gemini model gating – AFFiNE’s frontend marks “Gemini Pro/Flash” as locked unless upstream billing flags are set. Those flags aren’t exposed in the self-host build, so the UI always shows the lock even if you provide a valid API key. Workaround: keep providers.gemini populated, set the model name directly in config.json, and ignore the badge—the backend will still call that model.
- Error if Gemini models remain without keys – Jobs like copilot.session.generateTitle still reference gemini-2.5-flash by default. If you remove the Gemini key but leave that model in the scenarios, the logs fill with no_copilot_provider_available errors and document-context chats fail (“I don’t see a document”).
- UI limitations – Even after the config update, the provider dropdown often stays empty. That’s cosmetic: check actual usage via
cloudron logs --app affine.tld.com | grep CopilotProvider. Responses are coming from whichever model you configured, regardless of what the UI shows. - Net result – All Copilot behavior is driven by
config.json; there’s no built-in way to “unlock” premium models in the UI because the hosted billing feature flags aren’t exposed. If you want to use Gemini Pro, set it manually in config.json (with a valid key) and ignore the warning.
- Config lives in
-
Lock ApplicationsOne feature I believe would be useful is some sort of locking mechanism. Basically another layer of confirmation between deleting applications. So If I lock an application, no one should be able to delete it via the UI or API, unless the lock is removed.
-
AFFiNE - open-source Notion, Miro, Monday, Outline, Appflowy alternativeIn general I'm not sure how these settings work either. For example if I change Chat to claude, it still sticks with Gemini. And if I select Gemini Pro, it tells me I need a subscription.




-
AFFiNE - open-source Notion, Miro, Monday, Outline, Appflowy alternative@SansGuidon Hmm yes it doesn't seem to be very flexible about what kind of models you use.
-
AFFiNE - open-source Notion, Miro, Monday, Outline, Appflowy alternativeThis is now including manticore:
andreasdueren/affine-cloudron:0.25.23 -
Vaultwarden BrandingBy the way, Vaultwarden itself is fine with assets living elsewhere. You can use surfer to host for example logo files and then drop the link in the
user.vaultwarden.scss.hbsfile. -
AFFiNE - open-source Notion, Miro, Monday, Outline, Appflowy alternativeI think I also see part of the problem:
It requires the cloud indexer to be running Indexer
I'll try to add manticore to the package.
-
AFFiNE - open-source Notion, Miro, Monday, Outline, Appflowy alternativeI tried to use Mistral but it fails on copilot provider not available, something like that
I found this blog post, which mentions that maybe we have to tweak the code of Affine to make things work. https://sneekes.app/posts/getting_affine_ai_copilot_working_with_custom_models_and_ollama/Weird. I can try to modify something for the package but this makes it sound like you need to select a provider on built which isn’t really optimal.
Edit: Just sent you a message for further testing.
-
AFFiNE - open-source Notion, Miro, Monday, Outline, Appflowy alternative@SansGuidon said in AFFiNE - open-source Notion, Miro, Monday, Outline, Appflowy alternative:
@andreasdueren said in AFFiNE - open-source Notion, Miro, Monday, Outline, Appflowy alternative:
@SansGuidon said in AFFiNE - open-source Notion, Miro, Monday, Outline, Appflowy alternative:
I don't understand how to make Affine work with my AI subscription (Mistral)
I haven't tested any of the AI features. But in theory you should be able to enter any openai compatible endpoint. I assume, Mistral does have one?
What are your issues with the admin view? It's pretty basic with few variables able to be set up, most things are set up with env and should be ready with the package as is.
What I'm confused about is the onboarding flow: we are directed to the Admin view in the accounts list (which are not verified but I don't see how to solve that).
I'm trying to configure AI but no way to confirm if my entered settings are valid? The save button is just an icon without text, on a corner of the page, not really a good UX.
Then how do we find the main app from the Admin view? The main icon at top left is not even a link. Maybe the Admin view is the poor part of the UX, but that's where we land first and it looks like an escape game.I find it just not super user friendly, maybe we gets used to it
but it looks like the Frontend part is worth improving.EDIT: I tried to use Mistral but it fails on copilot provider not available, something like that
I found this blog post, which mentions that maybe we have to tweak the code of Affine to make things work. https://sneekes.app/posts/getting_affine_ai_copilot_working_with_custom_models_and_ollama/I'll dig deeper in that later
, kids require attention 
Yeah onboarding was a bit odd. You land in the admin view and need to manually navigate to the base domain to see the app. After the admin was created you can log in with openID though and make that user an admin.
-
AFFiNE - open-source Notion, Miro, Monday, Outline, Appflowy alternative@SansGuidon said in AFFiNE - open-source Notion, Miro, Monday, Outline, Appflowy alternative:
I don't understand how to make Affine work with my AI subscription (Mistral)
I haven't tested any of the AI features. But in theory you should be able to enter any openai compatible endpoint. I assume, Mistral does have one?
What are your issues with the admin view? It's pretty basic with few variables able to be set up, most things are set up with env and should be ready with the package as is.
-
AFFiNE - open-source Notion, Miro, Monday, Outline, Appflowy alternativeI packaged this to try it out. Works well but I'm not entirely sure what the exact target group for this application is. For documentation it seems confusing and overkill. Maybe personal notetaking could work. Image available at
andreasdueren/affine-cloudron:0.25.3 -
Request: Include S3 Storage Module@nichu42 But what did you do with these? Are these scripts already installed in the package somewhere and can be called with a cron job?
-
Request: Include S3 Storage Module@nichu42 What about the cleanup script and pushing existing media to s3? Did you ever set that up?
-
Add additional Cloudron Proxy Auth option on apps@joseph Not sure if I can follow. I understand what @girish said in App proxy questions and proxy/authentication possible improvement suggestions
But from Cloudron's POV, there is authentication and authorization
But basically adding the option to add optional Authentication in front of any app (presumably through the web server) would be very useful in a lot of cases. This is already a feature in the proxy app but would be good to be a toggle in any app.
-
App proxy questions and proxy/authentication possible improvement suggestions@girish said in App proxy questions and proxy/authentication possible improvement suggestions:
But from Cloudron's POV, there is authentication and authorization
But basically having the option to block access to any hosted app by putting auth in front of it (presumably thorugh the web server) could have various good use cases.