This week's Open Source Application of the week is FreedomBox, a FOSS self-hosted cloud application. Basically, it provides an easy-to-use user interface for a lot of common linux cloud applications.
For installation, you have the option of installing it on a Debian PC (but they say to do so on a fresh install, because it makes permanent changes to things like the firewall), or you can create a virtual machine for it, or you can install it on a single board computer (like the Raspberry Pi, but that particular one isn't recommended). I chose to use a fresh Debian install - I had an old PC from the early 2000s that I was intending to set up Debian on, and this gave me an excuse to do that.
Once you install FreedomBox, it starts an Apache server, which hosts a Web GUI for FreedomBox. I logged into that by visiting localhost in Firefox, and started configuring things. After you log in to the Web GUI, you are presented with a list of applications you can install. These are Tor, Transmission (a BitTorrent client), Deluge (another BitTorrent client), a Minetest server, Radicale (a calendar and addressbook server), JSXC (a web XMPP chat client), ejabberd (an XMPP chat server), Roundcube (a web email client), infinoted (a collaborative text editor), Quassel (an IRC client), Tiny Tiny RSS (an RSS feed reader), repro (a SIP server; SIP is a video calling protocol), OpenVPN, a Mumble server (for voice chat), Privoxy (a web proxy), and ikiwiki (a wiki/blog application). These are all web applications that you can self-host, thus removing the need to rely on a third party, which could datamine you.
Of course, FreedomBox is not required to set up any of these applications. They can all be installed on their own. The entire point of FreedomBox is to save you the trouble of configuring and troubleshooting these applications. Editing config files can be a daunting task, especially to the computer illiterate person, so I can see the appeal of FreedomBox there. The second appeal is that it can be run on a single board computer, but I couldn't make use of that one.
Naturally, the first application I went for was Tor. I installed it via the Web GUI, and once it finished, it took me to a web page telling me it had already set up a bridge, relay node, and .onion hidden service, and it would download all future packages via Tor. It did all the boilerplate configuring for me. According to this, it's not a good idea to run a relay and a hidden service at the same time, so I disabled the relay and bridge. After forwarding the necessary port, I visited my onion address from my normal computer, and got the FreedomBox config page from before (I had to log in again, of course). Neat.
Next, I decided to install Tiny Tiny RSS, which would host an RSS feed reader on FreedomBox, and let you connect to it from whatever device you want to. Since it's only hosted on FreedomBox, it would remember which news articles you already read on another device. Unfortunately, when I tried to install it, it told me the Tiny Tiny RSS package couldn't be found, so I wasn't able to install this one via FreedomBox.
Oh well, there's still plenty of stuff left to pick from. I decided to try ikiwiki next. This one installed just fine, but when I went to the URL it told me to, I received the default Apache file browser (you know the one), showing me that the ikiwiki directory was empty. Odd. I decided to reboot, to see if that changed anything, and the system hung while booting up! I tried soft shutting-down, then booting again, and it hung again. I was about to slam it for hanging up my system, but thankfully I read some of the messages on the boot screen, and realized that the web GUI had actually started up before it hung. I tried connecting via the .onion address, and it worked. So, I guess it didn't actually hang up, but it just decided to start the FreedomBox daemon, then not show a login screen, because it's supposed to run on a headless server. Oh, and rebooting didn't make ikiwiki work.
Next, I decided to try out the Minetest server, since that's a game I've actually played. I didn't have anyone else to play with, so I decided I'd set up the server, connect to it from my desktop, build a giant tower of bricks, and stand on top of it when I log off. Then, I then logged on via my laptop using the same username, and it put me right back on top of the tower of bricks. So, the Minetest server works fine (though, unless I'm missing something, I don't see an option that lets you generate a superflat world).
And that's the last app I decided to try on FreedomBox. So, despite the couple of apps that didn't work, FreedomBox is a cool program, though it's probably not one that I'll start using. Partially because I don't have an SBC to install it on, but also because I am capable of editing config files for these applications, and I prefer having full control via config files to ease of setup via a web GUI. It's not that I don't like it, I'm just not the target user for it. But if you think you are the target user, and you want to self-host one of the applications on the list, give it a try.
And that's it for this week's Open Source Application of the Week. What should I review next week? Let me know in the voting thread (non-onion link). Thanks for reading, and I'll see you all next Monday!