Giocoso Version 3.30 Released - Welcome to Pro!

After a bit of a delay, but slightly ahead of the previously-advised revised schedule, I've today released Giocoso Version 3.30. The changelog, as usual, details all the fixes and enhancements and changes that have gone into the new release.

The short version is, however: Giocoso Pro. This is Giocoso's new-found ability to communicate with a remote database and thereby share its play history with other devices. That also allows one device to make a note about a recording and an entirely different device to read that note later (a feature called 'Global Notes'). There's also 'Global Pause', which allows one device to pause playback and another device to resume it: a feature I find incredibly handy when I listen to music at night on the laptop then want to resume it in the main listening room the next morning. Less obvious, but equally as significant: the default music search algorithm underwent a significant re-write, making it more efficient, but potentially leading to new outcomes that would have been impossible in earlier releases.

The Administration menu, Option 1: Check for program updates MUST NOT be used to upgrade to this version. Attempting to do so will pull down only a partial copy of the revised software, resulting in a program that won't work properly. Instead, and for this release only, you must download a new script from this website -and I'd advise only doing this after making sure you take a full backup of your existing Giocoso installation. The full set of terminal commands needed to do a safe upgrade to the new version are, therefore:

mkdir $HOME/Desktop/BackupGiocoso && cp -r $HOME/.local/share/giocoso3/* $HOME/Desktop/BackupGiocoso
cp /usr/bin/giocoso3.sh $HOME/Desktop/BackupGiocoso
cp /usr/bin/mgiocoso3.sh $HOME/Desktop/BackupGiocoso
wget doco.absolutelybaching.com/upgrade330
bash upgrade330

The first three commands will ensure your existing Giocoso installation is safe, should anything go wrong with the upgrade process (restoring the old version is simply a matter of copying the contents of the BackupGiocoso folder back to $HOME/.local/share/giocoso3 and /usr/bin). The last two commands are used to obtain the upgrade script itself and then execute it. When launched, the upgrade script will guide you through the rest of the process thereafter, which I've documented separately, here.

Note that the upgrade process will not install the MariaDB client, though it checks for its presence or absence and advises you accordingly. MariaDB is the software you'll need to be able to  use all the new Giocoso Pro features, so if it's detected as not being present and you intend to use those new features, you'll have to install it manually before or after the Giocoso upgrade: that's again documented in the separate upgrade notes. If you are installing Giocoso Version 3.30 from scratch, that MariaDB client software will be installed automatically -so doing it manually is only something you have to do when upgrading, not fresh-installing.

Be aware that after successfully upgrading, Giocoso Pro features will not be enabled automatically, though of course all the other bug-fixes and enhancements will be. You have to do that by manually taking the Administration menu, Option 2 and editing the configuration file: you supply the IP address of your remote Giocoso Pro server, which you'll have built ahead of time (see below!). Once that's done, Pro features are unlocked: they are fully documented in the revised User Manual. I would especially recommend that you read the Giocoso Pro Concepts document to understand why all the Pro features were created in the first place.

The commands to do a fresh install of the new Giocoso remain the same as before:

wget doco.absolutelybaching.com/gioinst
bash gioinst

If you intend to use the new Pro features, you'll need a dedicated Giocoso Pro server, and building that can be done before or after upgrading your local client devices to Version 3.30, so long as (somewhat obviously) you do it before you try using the new Pro features! How you build it is documented in the User Manual. It essentially involves downloading and running another script, on a separate machine from the one where you normally run Giocoso: wget doco.absolutelybaching.com/pro will fetch the script, and bash pro will run it. It is not a requirement to have a Pro server to use Giocoso Version 3.30 in normal, 'local only', mode however. Pro features are free to use, but optional.

Aside from new, optional dependencies on MySQL and a Giocoso Pro Server, note that even a non-Pro Version 3.30 Giocoso now uses completely new syntax for doing scheduled database refreshes via a cronjob. It's documented in the Changelog, Item 14, but in essence the order of parameters passed to the relevant scripts has changed. You will need to update your crontabs manually to reflect that changed syntax, otherwise the music database will fail to be refreshed.

Also note that the new version of Giocoso expects to be able to use the Luxi Mono font -but won't install it if it isn't present on your system. The program display may be garbled or have unexpected display artefacts in consequence. See the Changelog, Item 5 for details on how to manually obtain the Luxi Mono font. Install it using your distro's standard font installation techniques (usually involving right-clicking the font file and selecting 'install font' from a context menu).

If I'm being honest, this much change in a version release should probably have necessitated a version number bump to 4.00, but when not running in Pro mode, the program's underlying data structures and music-playing methodology hasn't changed that much, so I decided to do a minor number bump rather than a major one. If you are not interested in any of the 'Pro' stuff, then it should nearly all be basically invisible to you and you can ignore it, continuing to run the program as you have done previously.

Happily, regardless of version number, this is likely going to be the last Giocoso release for quite a while, unless some hideous bugs arise that need an insta-fix! Enjoy it in the meantime 🙂


By way of summary:


Leave a Reply

Your email address will not be published. Required fields are marked *