Hey all, saw this topic go by and thought I’d chime in as I’ve been using YunoHost for quite a well and it’s my preferred way of using TiddlyWiki. I’ve been using it to host my personal TiddlyWiki for a couple years now, and have even made submitted code/bug reports to the project. So feel free to ask me any questions.
But first, what is YunoHost?
It’s a series of programs and scripts installed on top of or as part of a Debian install to make self hosting as easy and accessible as possible. Once it’s installed (the installer is quite easy to use) you can access your server/machine using a web interface to control it. This includes setting up domains (free subdomains from the YunoHost project or your own), setting up users/permissions, and installing “apps” using their app store.
I’ve got a VPS with a domain name (example.com), a user for myself, and a personal TiddlyWiki (wiki.example.com). I also have several other apps installed on their own subdomains.
YunoHost comes packaged with a couple of nice to have features including a mail server (so I can send/receive emails at user@example.com), an XMPP server for chatting, and the users are all controlled through LDAP.
How is TiddlyWiki installed in YunoHost?
From the user perspective it’s as simple as opening the “app store”, clicking install, and following the steps.
Behind the scenes there is a git repo that contains all the logic to install TiddlyWiki (install script here) as well as scripts for backing up, restoring, upgrading, etc. But essentially the scripts will ensure Node is installed, will grab the specified version of TiddlyWiki and set up the Node server version.
Access control for YunoHost apps is normally controlled through tagging users or groups that should be given access. The users and groups are defined in the LDAP server installed and running as part of YunoHost. Many of the apps available will actually coordinate with the LDAP server and will work successfully. But TiddlyWiki is not set up currently to coordinate with the LDAP server and so anyone who has access has full read/write permissions.