This is awesome guys!! good work!
derin
Posts
-
Contacts & Calendar -
Bug Report: WordPress package start.sh aborts boot when OIDC plugin is installed-but-inactive@james awesome! I can't take most of the credit here. Claude did most of the work, but I am glad it was useful.
-
Bug Report: WordPress package start.sh aborts boot when OIDC plugin is installed-but-inactive@james honestly i can't remember. I don't mind having a new account that is tied to my forum account if that is possible. I am building a new app for work that integrates a few of the apps so having local copies would help a lot. derint@pm.me.
-
Bug Report: WordPress package start.sh aborts boot when OIDC plugin is installed-but-inactiveAlso I'm having trouble logging into my cloudron git account. I haven't logged in for a few years and I think I no longer have access to the email. My username is derintolu. Anyway I could get some help with that??
-
Bug Report: WordPress package start.sh aborts boot when OIDC plugin is installed-but-inactiveBug Report: WordPress package
start.shaborts boot when OIDC plugin is installed-but-inactivePackage:
org.wordpress.unmanaged.cloudronapp(observed on 3.15.0; logic also present in themanagedpackage's SSO block)
File:/app/pkg/start.sh— OIDC/Cloudron-SSO setup block (~lines 182–204)
Severity: High — puts the app into a boot crash-loop / recovery (debug) mode; site goes fully offline.
Reproduced on: live appc21masters.com(Cloudron 6.0.0), 2026-06-19.
Symptom
App drops into recovery mode.
cloudron logsshowsstart.shrestarting in a tight loop, each pass ending with:Success: Installed 1 of 1 plugins. Warning: Failed to activate plugin. Cloudron SSO requires 1 plugin to be installed and activated: OpenID Connect Generic. Error: No plugins activated.…and the web tier never comes up:
=> Healthcheck error: Error: connect ECONNREFUSED 172.18.20.70:80Apache is never reached because
start.shexits non-zero before theStarting apachestep.Root cause
start.shbegins withset -eu, so any unhandled non-zero exit aborts the whole startup script. The SSO block:# uninstall old `openid-connect-generic` plugin if $wp plugin is-installed openid-connect-generic; then $wp plugin deactivate openid-connect-generic || true $wp plugin uninstall openid-connect-generic || true fi if ! $wp plugin is-installed daggerhart-openid-connect-generic; then echo "==> Install OIDC plugin" $wp plugin install /app/pkg/daggerhart-openid-connect-generic.zip $wp plugin activate daggerhart-openid-connect-generic # (A) only runs on fresh install fi $wp plugin install --force /app/pkg/cloudron-sso.zip $wp plugin activate cloudron-sso # (B) hard requirementcloudron-sso.phpdeclares a WordPress 6.5+ plugin-dependency header:Requires Plugins: daggerhart-openid-connect-genericWordPress refuses to activate
cloudron-ssounlessdaggerhart-openid-connect-genericis installed and active.The activation of the dependency (A) lives inside the
if ! is-installedguard. So ifdaggerhart-openid-connect-genericis already installed but inactive — which happens whenever the plugin was deactivated by a user, by a migration/restore, by a backup import, or by a previous half-completed boot — the guard is false, (A) is skipped, and the dependency stays inactive.(B) then fails the
Requires Pluginscheck → non-zero exit →set -euabortsstart.shbefore Apache starts → healthcheckECONNREFUSED→ Cloudron restarts the container → same path again → recovery mode.The "different name" red herring: the historical directory/slug
openid-connect-genericwas renamed todaggerhart-openid-connect-generic. Installs that carry the plugin from before the rename (or restore it inactive) land exactly in this installed-but-inactive state.Why it's easy to hit
- The dependency is only activated on the fresh-install path, but it's required-active on every boot.
- Any state where the OIDC plugin exists on disk but isn't active is unrecoverable on its own, because each reboot re-runs the same failing sequence.
Fix
Move/guarantee activation of the dependency on every boot (idempotent), independent of whether it was just installed, and/or make the SSO activation non-fatal. Minimal change:
if ! $wp plugin is-installed daggerhart-openid-connect-generic; then echo "==> Install OIDC plugin" $wp plugin install /app/pkg/daggerhart-openid-connect-generic.zip fi # Always ensure the dependency is active before activating cloudron-sso (idempotent). $wp plugin activate daggerhart-openid-connect-generic $wp plugin install --force /app/pkg/cloudron-sso.zip $wp plugin activate cloudron-ssoOptional hardening: append
|| true(or an explicit warn) to the two SSOactivatecalls so a future SSO hiccup degrades gracefully instead of taking the entire site offline viaset -eu. SSO not activating should not block Apache from serving.Workaround (manual recovery, what we did)
From inside the container (
cloudron exec --app <id>
cd /app/data/public php -d memory_limit=512M /app/pkg/wp plugin activate daggerhart-openid-connect-generic --allow-root --skip-themes php -d memory_limit=512M /app/pkg/wp plugin activate cloudron-sso --allow-root --skip-themesThen take the app out of recovery mode:
cloudron debug --disable --app <id>After this the next normal boot reaches
==> Starting apache, healthcheck passes, app returns torunning, site responds HTTP 200.Environment
- Cloudron: 6.0.0
- Package:
org.wordpress.unmanaged.cloudronapp@3.15.0 cloudron-sso1.0.0,daggerhart-openid-connect-generic(OpenID Connect Generic) 3.11.3- App ID:
4b378989-212e-4ca0-921c-2479fa2a0679
-
domain alias (not redirect)Hey so it has been a while since these posts...I notice cloudron supports alias domains on plenty of apps but not nextcloud. Is there a way to make it so?
-
Transfer Cloudron Subscriptionok thanks
-
Transfer Cloudron SubscriptionHello There,
I have a cloudron yearly subscription currently active for a cloudron I don't have anymore. I would like to activate it on an active cloudron that I currently use whose yearly just ended.
-
No Profile Images saveDo I need to connect some kind of object storage to Cal. The profile images don't seem to save after uploading and saving them.
-
Codex Docshttps://docs.codex.so/codex-docs
Open soure notion alternative power by editor.io block text editor. really straight forward.
-
NextCloud ran out of memory - repeatedlyGenerally most apps cannot run on the basic memory allowance in my experience. Next cloud needs 1 for a few users and with a lot of users I've gone up to 4.
-
soapbox.pubSoapbox is a frontend for Pleroma. Soapbox focuses on user experience, discoverability, and providing monetization avenues for server hosts and content creators. It's brandable and has built in chat.
-
Jitsi Meet@girish this is awesome news!! I've been waiting for this
-
Custom Theming@girish thanks for pointing that out. It got more than half way there. thank you!! The custom theme is applied as default and shows in the settings panel but for some odd reason it wont replace the element.io green with the accent color I chose...will ask in the element.io chat rooms. Thanks again @girish.
-
Custom Theming@murgero I appreciate the help and will try that. If all else fails I'll give the element.io community space a try.
Looking in the console gave me this:
Initialised rageshake. rageshake.ts:50:19 To fix line numbers in Chrome: Meatball menu → Settings → Ignore list → Add /rageshake\.js$ rageshake.ts:50:19 Using Web platform rageshake.ts:50:19 Using WebAssembly Olm rageshake.ts:50:19 Configuring rageshake persistence... rageshake.ts:50:19 returning explicit theme: custom-appsurd 2 rageshake.ts:50:19 Loading skin... rageshake.ts:50:19 Skin loaded! rageshake.ts:50:19 set language to en-usBrilliant. Now I just need to find out why it doesnt like my red accent color.
-
Custom ThemingAnyone mind giving me a second pair of eyes. I'm trying to implement a custom theme. Followed the documentation and my syntax appears to be correct but I cant get the custom color values ie the custom theme to show up either by default or as an option. What am I missing?
"default_server_config": { "m.homeserver": { "base_url": "https://foobar.foo.app", "server_name": "foo.app" }, "m.identity_server": { "base_url": "https://vector.im" } }, "disable_custom_urls": true, "disable_guests": true, "disable_login_language_selector": false, "disable_3pid_login": true, "brand": "appsurd", "integrations_ui_url": "https://scalar.vector.im/", "integrations_rest_url": "https://scalar.vector.im/api", "integrations_widgets_urls": [ "https://scalar.vector.im/_matrix/integrations/v1", "https://scalar.vector.im/api", "https://scalar-staging.vector.im/_matrix/integrations/v1", "https://scalar-staging.vector.im/api", "https://scalar-staging.riot.im/scalar/api" ], "bug_report_endpoint_url": "https://element.io/bugreports/submit", "defaultCountryCode": "USA", "showLabsSettings": false, "features": { "feature_pinning": "labs", "feature_custom_status": "labs", "feature_custom_tags": "labs", "feature_state_counters": "labs" }, "default_federate": true, "roomDirectory": { "servers": [ "matrix.org" ] }, "piwik": false, "enable_presence_by_hs_url": { "https://matrix.org": false, "https://matrix-client.matrix.org": false }, "settingDefaults": { "breadcrumbs": true }, "jitsi": { "preferredDomain": "jitsi.riot.im" }, "branding": { "welcomeBackgroundUrl": "/custom/background.jpg", "authHeaderLogoUrl": "/custom/appsurd_wordmark_dark.svg", "default_theme": "custom-appsurd" }, "custom_themes": [ { "name": "appsurd", "is_dark": false, "colors": { "accent-color": "#df0013", "primary-color": "#00aff4", "warning-color": "#faa81ad9", "sidebar-color": "#202225", "roomlist-background-color": "#2f3136", "roomlist-text-color": "#dcddde", "roomlist-text-secondary-color": "#8e9297", "roomlist-highlights-color": "#4f545c52", "roomlist-separator-color": "#40444b", "timeline-background-color": "#36393f", "timeline-text-color": "#dcddde", "secondary-content": "#dcddde", "tertiary-content": "#dcddde", "timeline-text-secondary-color": "#b9bbbe", "timeline-highlights-color": "#04040512", "reaction-row-button-selected-bg-color": "#b9bbbe" } } ] } -
So Confused about Plugins@girish thanks for the help but im still a bit lost. For example:
The Kolab Calender plugin: https://packagist.org/packages/kolab/calendar
As far as I understand it requires 2 dependencies aside from the roundcube plugin installer. Now would I just download the file from the linked github repository?
And then the two dependencies listed I am assuming would then be installed via composer?
-
So Confused about Plugins@nebulon yes this was the first place I looked.
In this documentation it’s unclear where and when I would use composer or how exactly. When it mentioned uploading I assumed I could download plugins somewhere, but that doesn’t seem to be the case from the roundcube plugins website. Their documentation doesn’t really say if I update the composer.json that already exists or create a new one? It’s just unclear.I attempted to just use composer require in the terminal which downloaded the package but then threw an error and deleted it.
-
So Confused about PluginsTo clarify this is installing plugins on Roundcube just in case it wasn't clear.
-
So Confused about PluginsAny tutorial that I find to install plugins assumes a lot of knowledge that I don't have. My only experience with composer is how it relates to wordpress the few times I've used it was as part of wp-cli. Can anyone provide me some clarity or fill in the blanks. I don't understand what order to do everything in, which composer.json file are they referring to and can this be done for an app thats already deployed??