Can you perhaps use the contact form on tymeslot.app/contact to get in touch? Then I will guide you on which logs are needed to debug this.
ekevu123
Posts
-
Tymeslot - Better Meeting Scheduling than cal.com -
Add colour codes to Cloudron notificationsI would love to see something like a coloured dot in the notifications to understand what's important.
For example, let's say app updates are orange, so every update notification has a small orange dot on the left. Others, such as "Email is not configured properly" might be red as a configuration issue that deserves attention.
Today, for example, I had 14 notifications in the morning, so this would help focus immediately on what's important.
-
Give app passwords a last-used dateI use app passwords a lot, but for some, I genuinely don't remember which one I use in my apps, and which one was a test duplicate. It would be great to have a "last used" date, then I could simply see what isn't used regularly, and delete those.
-
App terminal errors when calling Postgres from interactive shellI think you would need to let the database button open a separate terminal window instead of pasting the variables. Not sure if that's worth the effort, I just wanted to point out something that repeatedly gets me.
-
App terminal errors when calling Postgres from interactive shellTo clarify: bin/app_name remote doesn't open a Linux shell at all. It attaches to the running Erlang VM and drops you into IEx, Elixir's interactive REPL (read-eval-print loop). At that prompt, you're not typing bash commands - you're typing Elixir expressions that get evaluated live against the running application (this is roughly equivalent to Rails' rails console, Django's manage.py shell, or Node's REPL).
So when the Postgres button injects a bash command like PGPASSWORD=... psql -h ..., IEx tries to parse it as Elixir syntax and understandably chokes.
Opening a second terminal tab works as a workaround, but from a UX perspective I'd expect one of two things instead:- The Postgres button detects that the current session is a language REPL (not a plain shell) and opens the psql command in a fresh terminal/tab automatically, or
- At minimum, a clearer error such as "This command requires a shell prompt, not an interactive REPL" instead of a raw syntax error.
I don't mind particularly if you choose not to act on this, I just keep running into the same issue, because my expectation as a user is different, so I felt like pointing this out.
-
Add Database terminal shortcutSometimes, I have to enter the database shell for a cloudron app in the GUI, which requires several clicks:
- Open the terminal
- Enter the new tab
- Click the Postgres button
- Hit enter to connect
Not that bad, but since entering the database shell is a separate user story, how about the three dot menu in the GUI and the top-level icons in the app-specific menu got a shortcut entry "open database shell" (if there is a database at all)?
I think this would be handy.
-
App terminal errors when calling Postgres from interactive shellI am working in Elixir, and it uses bin/app_name remote in the terminal on cloudron to enter an interactive debugging shell (that concept exists similarly in other languages).
If I then click the postgres button, it adds this to the shell:
PGPASSWORD=${CLOUDRON_POSTGRESQL_PASSWORD} psql -h ${CLOUDRON_POSTGRESQL_HOST} -p ${CLOUDRON_POSTGRESQL_PORT} -U ${CLOUDRON_POSTGRESQL_USERNAME} -d ${CLOUDRON_POSTGRESQL_DATABASE}However, this command can't be run in the interactive shell, it errors out with a syntax error.
It's clear why this happens, but I think my user expectation would be to open a separate, overlay postgres shell at this point, do what I have to do in the database, and when quitting it, return to my previously opened shell.
Alternatively, there could be a cleaner error, e.g. "This command can't be run inside an interactive shell."
-
Tymeslot - Better Meeting Scheduling than cal.com@james Okay, pushed! I couldn't use SSH for some reason, but a personal access token worked.
-
How is Infisical?Is someone here using Infisical? I am looking into it now as a potential secrets manager and was wondering if things are going well with it.
I was also wondering whether it provides any additional benefits over using Cloudron environment variables.
-
Tymeslot - Better Meeting Scheduling than cal.com@tshirt-chihuahu Thank you, that is lovely to hear!
-
Tymeslot - Better Meeting Scheduling than cal.comHow do I access the repo?
-
Tymeslot - Better Meeting Scheduling than cal.comHello @ekevu123
We have created this repository for you https://git.cloudron.io/playground/tymeslot.
Can you create the Cloudron app in this repo?
If you need any information, help or permissions. Please let me know.Can you maybe walk me through the process in general, like everything basically? I don't really have any context about the implications of publishing the app in the cloudron app store. It's my first

-
Tymeslot - Better Meeting Scheduling than cal.comYes, I would love that!
-
Expired domain with existing mailboxOkay, thank you!
-
Expired domain with existing mailboxI have domains set up in Cloudron that expired and are now unused, but I can't remove them, because they have e-mail accounts, and I don't want to delete the e-mails in the account.
I suppose I would need to download these, then close the inboxes and then remove the domain to clean this up? Maybe it could be nice to have an archive functionality for e-mail inboxes that are not in use but should stay, so that this case could be handled inside Cloudron?
-
App list doesn't work, but app grid does (v9.2.0)I figured it out now, see below.
At apptask.js:693, updateCommand calls omit() on the old manifest's addons field without guarding against it being absent. When the installed manifest has no addons
key, addons is undefined, causing Object.entries(undefined) to throw:TypeError: Cannot convert undefined or null to object
at Object.entries (<anonymous>)
at Object.omit (file:///home/yellowtent/box/src/underscore.js:17:38)
at updateCommand (file:///home/yellowtent/box/src/apptask.js:693:28)Because this is a plain TypeError rather than a BoxError, the catch block in run passes it to makeTaskError, which asserts error instanceof BoxError and crashes —
surfacing a secondary assertion error to the user instead of the real one.To reproduce:
- Install an app whose CloudronManifest.json has no addons field
- Add "addons": {} to the manifest and push a new image
- Trigger an update from the dashboard
Expected: Update succeeds, or fails with a descriptive error about the manifest change.
Actual: Task crashes immediately with AssertionError: assert(error instanceof BoxError), hiding the real cause.I re-installed the app, which solved the issue. I still believe the views should be consistent in error handling though.
-
App list doesn't work, but app grid does (v9.2.0)Yes, I have a few of them. But I think the right behaviour should be that Cloudron flags that in the UI, perhaps even with an icon, so I'll know which app that concerns. And I still find it odd that the grid works, but the list doesn't.
-
App list doesn't work, but app grid does (v9.2.0)I am having an issue with Cloudron version 9.2.0. In the app overview, the app list appears empty, but the app grid works.
Can this browser console error be related?TypeError: can't access property "email", app.manifest.addons is undefinedIt would be odd, though, that this crashes only the app list, but not the grid.
-
TymeslotCan you check the logs for any error? Regarding the e-mail, the issue could be a wrong email setup.
Have you installed it as a Cloudron community app? -
Tymeslot - Better Meeting Scheduling than cal.comHi, thank you for the suggestion!
Regarding customising availability, I'll note this for the nearest future. Regarding localisation, do you want to get e-mails translated? The booking experience is already supposed to be international for the user booking (with EN/DE/FR/IT/UK supported), but you can't change the text. Would you like to change the text, are you looking for a new language or would you like to see the whole app localised? The latter will happen, but not yet.