Giocoso 3: Upgrading from Version 2

Here is an Ubuntu system happily running Giocoso Version 2.04:

This system has a Version 2 database, in which is stored a history of plays, as you'd expect:

 

So the question is, what happens to this Version 2 data when we install Giocoso Version 3. Well, let's take a look.

First, open a terminal and download the installer script: wget doco.absolutelybaching.com/gioinst

Then run it in the terminal: bash gioinst

We see this happen:

 

The first thing you see happen is the display of a message letting you know that the installer is 'Backing up prior version's program and database'. Backing it up where, you might reasonably ask?! Well, here:

A copy of the entire application folder for Giocoso Version 2 is created in $HOME/.local/share/giocoso-backup (and in a 'giocoso' sub-folder within that path). You'll notice the folder contains a file called 'music.db': that's my Version 2 database. So, this giocoso-backup folder has all the existing data nice and safe.

It's possibly a bit of overkill, though: if you poke around the $HOME/.local/share folder as a whole, you'd see this:

The old "giocoso" folder, which used to be he Giocoso Version 2 application folder, is there, untouched and undamaged by the Version 3 installation. So, in fact, you've got two backups of your Version 2 database at this point.

Anyway: let's supply the sudo password that the installer is still prompting us for:

This time, you'll notice a 'Restoring and converting...' message. The Version 3 installer is copying (not moving) the Version 2 database to its new Version 3 application folder and performing some modifications to it, to make it compatible with Version 3 (the changes are minor, and a Version 3 database could be copied back to a Version 2 system and used without incident there).

So, now the installer has declared itself to be finished, let's try running Giocoso Version 3 for the first time. The command to do so is just giocoso:

The blue text at the top of the screen makes it clear that this is, indeed, Giocoso Version 3. However, the program has noticed that some extra software packages are required before Giocoso Version 3 can run successfully, so you have to install those first. In this case, the command sudo apt install libsixel-bin xclip dialog will do the trick. Once that's completed, we can run the giocoso command once more:

This time, we're running Giocoso Version 3 'properly', with all the right menu options appearing in all the right places. Now: that's the wrong terminal to be running things in (though it's functional enough). And the fonts required to run Giocoso Version 3 in its 'as-designed' format are not installed automatically. So:

  1. In File Manager, visit $HOME/.local/share/giocoso3/art
  2. Right-click each of the TrueType fonts listed in that folder, in turn, and select 'Open with Fonts'
  3. Click 'Install Font' for each in turn

Now click the 'Show Applications' icon on the main desktop (it's the grid of 9 little squares in the lower left-hand corner): a launcher for Giocoso3 should be visible. Click that to launch the program, and visit the Reporting menu, Option 1:

You'll notice that the Version 3 aggregate statistics report has exactly the same data for 'number of recordings' and 'number of recordings played' as the earlier Version 2 report showed (125 and 8, respectively). Proof that the Version 2 database has come across to the new Version 3 program without incident.

If you still wanted to run the original Version 2, you can do so, but the command to launch that version of the program is now giocoso.sh. The vanilla 'giocoso' command now only launches the Version 3 program. It is not recommended to keep the original program around, or to use it: plays made in one version do not carry across to the other, so though Version 3 starts off with an exact copy of the Version 2 database, if you play anything new in either version, the two database will begin to diverge. That way lies confusion!

Instead, once you are happy that the version 2 data has come across to Giocoso Version 3 correctly, you should delete the Version 2 program with the following commands:

rm -rf $HOME/.local/share/giocoso
sudo rm /usr/bin/giocoso.sh

Your PC will now be a completely Version 3-enabled machine! The $HOME/.local/share/giocoso-backup folder will still exist, of course: you can delete that at your leisure, once you're happy that the new program/database combo is working correctly.