Serves you right

Cloud 9


This cloud-in-a-box serves up shared space for a jukebox, photos, blogs, file sharing, workspace apps, and more.

By Dmitri Popov

Cloud computing is all the rage these days. In fact, the idea of having all your applications and data in the cloud gave birth to a whole new type of computing device known as the netbook. In most cases, cloud computing means using third-party web-based applications and services, but why not roll out a little cloud of your own? It might sound like a daunting proposition, but with Tonido [1] you can turn your Ubuntu-based machine into a cloud server in a matter of minutes. Although Tonido can't replace web-based applications like Google Docs, Flickr, and Blogger, it does provide an excellent platform for deploying a secure and easy-to-use collaboration and sharing peer-to-peer environment.

Running your own server means that you are responsible for maintaining and managing it, but this also gives you a few important advantages. First and foremost, you retain complete control of your data because you don't have to store it on a third-party server. Any web application requires a decent Internet connection. Not so with your own Tonido server: Even if your Internet link goes down, all Tonido's applications and data can be accessed through the local network, or even directly on the machine running the server software. Because you can deploy Tonido on a local network, it provides an ideal solution for setting up a collaboration environment without exposing it to the outside world.

Getting Started with Tonido

In the Linux world, Tonido is currently available only as a .deb package for Ubuntu-based distributions, so the machine you want to use as a Tonido server must run Ubuntu or any of its derivatives. This also means that you can install the Tonido package easily with the GDebi graphical tool or by executing the sudo dpkg -i TonidoSetup_i686.deb command. Then you can launch Tonido from Applications | Internet. On launch, Tonido presents the default browser and prompts you to create a profile (Figure 1). Creating the profile is as easy as specifying a unique profile name, password, and a few other pieces of information. The profile name is the only thing that is sent to the Tonido service, and it's done only once.

Figure 1: Tonido's start page.

When you log in to Tonido, you land on the start page, which provides quick access to all Tonido's modules and features. By default, Tonido accepts only local connections, so if you want to access the server from the Internet, you have to enable the web access feature. To do this, click on the Setup link next to the server's URL in the Summary pane. This starts the Web Access Setup Wizard, which helps you enable and configure the web access feature. If you haven't yet configured port forwarding, the wizard can do this for you, provided your router supports the UPnP (Universal Plug and Play) feature.

If you plan to use the Tonido server to collaborate and share data with other users, you should populate it with groups and invite users. To do this, switch to the Groups section, click on the Create tab, enter the required information for the new group, and hit the Create Group button. Once the group is created, you may send group invitations. If the user you want to invite is already in your contacts list, just create an invitation with her Tonido ID. Otherwise you can send the invitation by good old email. If you choose the latter approach, the recipient receives an invitation message containing a unique token. The recipient then has to install Tonido on her machine and accept the invitation using the provided token. This creates a secure peer-to-peer connection between two Tonido instances and automatically adds this user to your Tonido contacts.

Tonido Applications

Tonido itself is a platform designed to run web applications, and the current version of the software ships with several handy applications, including Jukebox, Photos, Thots, Webshare, and Workspace.

With Jukebox, you can access and manage your music files as well as grant other users access to your music collection (Figure 2). The application lets you create custom playlists, and it sports a few default dynamic playlists that give you quick access to the recently added and most popular tracks. Then you can use the built-in Tag Editor to edit each track's information. The EXT button allows you to open the current playlist in an external player application. Jukebox doesn't let you share your music files with other users, but you can create a guest account that allows other users to access your music collection. Each guest account must have one or several playlists assigned to it, and you can use this feature to limit guests to specific parts of your music collection. Instead of the full-blown Jukebox interface, the guest user has access to a mini-jukebox application that provides basic controls. The Settings item in the mini-jukebox also allows the guest to select a mode optimized to the type of Internet connection.

Figure 2: The Jukebox application lets you listen to music and manage your music collection.

As you might have guessed, the Photos application lets you share and exchange photos with other Tonido users (Figure 3). Sharing is easy. To start, add a directory containing photos to the application. To do this, switch to the Photos application, click on the Manage link in the Shared Folders section to the left, and click on the Add New Share link. Then select the directory you want to share, pick the group you want (or create a new one on the fly), and press OK. This automatically pushes your photos to all users in the selected group, and all photos shared by other users appear in your Photos application. All shared photos are copied and stored on your machine, so you can view them even if the user who shares them is offline. Similar to Flickr and other photo-sharing services, Photos lets you tag, rate, and comment photos, as well as mark them as your favorites. With the commands in the navigation bar to the left, you can view photos by tags, ratings, and users. Also, you can view the most recent photos, as well as photos in a specific group.

Figure 3: With the Photos application, you can share, tag, rate, and comment photos.

Courtesy of the Thots application, you can use Tonido to maintain a simple blog. Although Thots won't replace WordPress or other advanced blogging engines, this no-frills application does have a few nifty uses. It seamlessly integrates with your Twitter account, so you can push blog posts (or thots) on Twitter. With the use of the supplied ClipThots extension for Firefox [2], you can use your Thot blog as a place for storing and sharing interesting links and text snippets.

The Webshare application, which lets you give users access to specific directories and files on your machine, is designed to take care of all your file sharing needs (Figure 4). Sharing a directory with the world requires just a few simple steps. To select the directory you want to share, use the Add New Share link and specify the share's name and description. Also, you can specify an optional share's expiration date, which can come in handy if you want to grant access to a specific directory for a limited period of time. Once the share is configured, you have to add users who will have access to the shared directory. That's all there is to it. Now you can send the users a direct link to the share (with the Send URL via Email command), and they can access and download files via a browser.

Figure 4: The Webshare application lets you share files on the web.

Finally, the Workspace application can help you to collaborate with other Tonido users (Figure 5). The application offers pretty much everything you need to manage schedules, tasks, contacts, notes, and files, and it allows you to create as many workspaces as you need, so you can set a separate workspace for each workgroup or project. Creating a workspace is as easy as creating a group. In fact, Tonido even allows you to turn any existing group into a workspace with a few mouse clicks.

Figure 5: Collaborate with other users with the Workspaces application.

The modules of the Workspace application sport some clever features designed to make your work easier and more efficient. The Calendar module, for example, lets you import events from an iCal file, and if you ticked the Enable Public Display checkbox when creating the workspace, the calendar is automatically published on the web. Using the Print button, you can print your calendar as a nicely formatted agenda. The Tasks module lets you specify a due date and priority for each task, as well as assign tasks to users. Using the Filter button, you can quickly view tasks matching certain criteria, such as Priority, Assigned to, Due Date, and so on.

The Notes module (Figure 6) offers graphical editing tools, making it easier to create richly formatted notes. The Timeline feature provides a quick overview of all workspace activity so you can stay abreast of what other users do. The Group Chat feature allows you to chat with other users in the workspace, and the Forums section lets you host discussions or maintain a knowledge base.

Figure 6: The Notes module comes with a lightweight graphical editor.

Final Word

Tonido is not the most advanced server solution out there, but it's by far the most elegant and user-friendly one. In literally a few minutes, you can turn any Ubuntu-based machine into a server suitable for a wide range of tasks. More importantly, Tonido is not just a server package, but a platform that can be extended by installing additional applications. Right now this includes just a handful of applications, but as Tonido gains more traction, the list of available modules is likely to grow. Even in its current form and with the default application set, Tonido can prove to be a genuinely useful tool for individual users and workgroups alike.

INFO
[1] Tonido: www.tonido.com
[2] ClipThots extension for Firefox: www.tonido.com/site_thots_home.html#clipthots