Agate+ (dual protocol server to serve gemini/http from one source)
-
Hey, Tim, I like the new update and now I can see we can use it to one click install FacilMaps - nice!
Very, very nice, actually! We wanted to serve our own maps like this for ages. Now we can!Also, very cool, we can even use ccai to install ccai - on our own server!
CCAI deserves a thread/discussion all of its own, I think.
-
Hey, Tim, I like the new update and now I can see we can use it to one click install FacilMaps - nice!
Very, very nice, actually! We wanted to serve our own maps like this for ages. Now we can!Also, very cool, we can even use ccai to install ccai - on our own server!
CCAI deserves a thread/discussion all of its own, I think.
@LoudLemur thank you

I wanted to get CCAI to a point where it would be worth making an App Wishlist for it.
Just a few more tweaks to do.And need to find more custom apps to flesh out the catalogue with known/tested cases.
-
Hmm <scratching head>
I've been trying to diagnose @robi report that app installs but gets stuck in "Starting..."I wondered if there was a hidden issue that I was installing from CCAI on my primary cloudron to a location/url also on my primary cloudron.
So I installed a clean fresh separate Cloudron instance as the target.I then used ccai.appx.uk to install 2 custom apps from the catalogue (new feature!), Raneto and Agate+.
Both sailed through the installation, and started fine.So <scratching head> I don't know.
If you or anyone has the time/inclination to try again and get the same stuck in
Starting..., I would suggest :- checking the logs of the app from its dashboard
- do stop/start in dashboard or Repair/Restart
FYI :
CCAI now on v4.0.9 and pushed to git.cloudron.io.
ccai.appx.uk is running that version as a public hosted service.
Agate+ still on v6.37@timconsidine said in Agate+ (dual protocol server to serve gemini/http from one source):
Hmm <scratching head>
I've been trying to diagnose @robi report that app installs but gets stuck in "Starting..."Same here, tried to use my.demo.cloudron.io but it fails to log in at all:
Failed to check login status: Unexpected token '<', "<!DOCTYPE "... is not valid JSONI'll see if I can find another Cloudron to test with in case something is off with mine.
UPDATE:
Seems to be a combo with an specific browser version and my Cloudron is having issues with all apps that install/upgrade.. waiting for healthcheck.
Sorry for the wild goose chase. CCAI install on Demo server worked just fine after using another browser. -
@timconsidine said in Agate+ (dual protocol server to serve gemini/http from one source):
Hmm <scratching head>
I've been trying to diagnose @robi report that app installs but gets stuck in "Starting..."Same here, tried to use my.demo.cloudron.io but it fails to log in at all:
Failed to check login status: Unexpected token '<', "<!DOCTYPE "... is not valid JSONI'll see if I can find another Cloudron to test with in case something is off with mine.
UPDATE:
Seems to be a combo with an specific browser version and my Cloudron is having issues with all apps that install/upgrade.. waiting for healthcheck.
Sorry for the wild goose chase. CCAI install on Demo server worked just fine after using another browser. -
@robi weird - good investigative work !
@timconsidine Thanks, less than obvious with two things going wrong at the same time.
Have you thought about how to rapidly grow the installable App list?
-
@timconsidine Thanks, less than obvious with two things going wrong at the same time.
Have you thought about how to rapidly grow the installable App list?
@robi well, I started to think about it.
I was thinking about making a search of git.cloudron.io
Then I thought maybe some/many would be old and packager should be consulted.
And we need a pre-built docker image, so next question is who should build that, I could but not sure about time available, depends on how many.
and maybe packager should do it.Bottom-line, I ended up in a spiral of indecision !!
Any ideas gratefully received.
-
@robi well, I started to think about it.
I was thinking about making a search of git.cloudron.io
Then I thought maybe some/many would be old and packager should be consulted.
And we need a pre-built docker image, so next question is who should build that, I could but not sure about time available, depends on how many.
and maybe packager should do it.Bottom-line, I ended up in a spiral of indecision !!
Any ideas gratefully received.
@timconsidine How about this..
A checkbox for others to choose to submit a custom app, then check if the install is successful, if so then check if it's already in your CCAI DB/list/json, if not then add it as a new addition with an installed count, plus notification if you want.
It would also be nice to keep the CCAI login active for 15m or so, allowing multiple apps to be installed without constantly logging in.
-
@timconsidine How about this..
A checkbox for others to choose to submit a custom app, then check if the install is successful, if so then check if it's already in your CCAI DB/list/json, if not then add it as a new addition with an installed count, plus notification if you want.
It would also be nice to keep the CCAI login active for 15m or so, allowing multiple apps to be installed without constantly logging in.
-
Small bug in agate+
start.sh, tmpfs wipes/tmp/proxy/on restart
TL;DR:
/tmpis tmpfs on Cloudron, so/tmp/proxy/*.shvanishes on every restart. Line 52cpfails,set -ekillsstart.shbefore supervisord launches, nothing binds :8000, healthcheck loops forever. Wrap the cp block inif [ -f /tmp/proxy/restart-proxy.sh ]; then ... fi.
Hi @timconsidine! We ran into a restart loop on agate+ today and wanted to flag the cause in case others hit it too.
Symptoms in the app logs:
cp: cannot stat '/tmp/proxy/restart-proxy.sh': No such file or directory => Healthcheck error: Error: connect EHOSTUNREACH 172.18.x.x:8000What's happening
In normal run mode on Cloudron,
/tmpis backed by a fresh tmpfs on every container start, which shadows the/tmp/proxy/files baked into the image. So thecpon line 52 ofstart.shfails,set -eaborts the script, andexec supervisordon line 154 never runs.healthcheck.jsnever binds port 8000, Cloudron healthcheck fails, container gets restarted — and round it goes forever.The copied files already exist in
/app/data/from the first install anyway, so thecpis really only needed on fresh installs.(In debug mode the tmpfs overlay isn't applied, so the files are visible and the app starts fine, which made it a bit confusing to diagnose at first.)
Suggested fix
Guard the proxy-file copy block so it's a no-op when the source isn't there:
if [ -f /tmp/proxy/restart-proxy.sh ]; then cp /tmp/proxy/restart-proxy.sh /app/data/restart-proxy.sh cp /tmp/proxy/register-new-instance.sh /app/data/register-new-instance.sh cp /tmp/proxy/deregister-instance.sh /app/data/deregister-instance.sh chmod +x /app/data/register-new-instance.sh /app/data/deregister-instance.sh /app/data/restart-proxy.sh fiAlternatively, stage those helpers somewhere persistent (e.g. ship them in
/app/code/proxy/and copy from there) so they survive the tmpfs reset on every restart, not just on fresh installs.Tested the guarded version on our instance and it's back up and running cleanly. Happy to open an MR if useful.
Hello! It looks like you're interested in this conversation, but you don't have an account yet.
Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.
With your input, this post could be even better 💗
Register Login