Niente Version 4 : Operating System Support and Installation

1.0 Operating System Support

The Niente Version 4 installation process is now fully-automated and does everything required to make the program work properly (previous versions would detect what needed to be done to get things running but then ask you to issue the necessary commands, manually). A Niente Version 4 installation neither deletes nor upgrades a prior version installation of Niente: the two versions can co-exist without drama, though it remains advised to cease using Niente Version 3 and to delete it manually off your system (by isssuing the commands sudo rm -f /usr/bin/niente.sh and then rm -rf $HOME/.local/share/niente).

1.1 Niente on Linux

Niente runs on all major Linux distros: my basic rule of thumb is to take the top 20 distros listed on Distrowatch's Page Hit Ranking at the start of major program development and make sure the resulting Niente scripts run fine on all of them. I then add in a sprinkling of other distros that appeal to me for one reason or another, even if they don't seem terribly popular, according to Distrowatch! Since most distros are actually derived from other, 'parent' distros (Mint, for example, is a variant of Ubuntu, as Manjaro is of Arch), we can construct a 'support matrix' for what Niente runs on, based on the principle 'family', as follows:

Arch FamilyDebian FamilyUbuntu FamilyFedora FamilyopenSUSE FamilyARM Family
ArchDebianUbuntuFedoraopenSUSE LeapRaspberry Pi OS
ManjaroDevuanLinux MintNobaraTumbleweedManjaro on Pi
EndeavourOSLinux Mint Debian EditionPop! OSUltramarineGeckoLinuxUbuntu on Pi
EndeavourOSPeppermint OSLinux Lite
MX LinuxZorin OS
AntiX LinuxElementary OS
KDE Neon
Tuxedo OS

Niente runs neither better nor worse on any particular distro or family of distros than any other: all are equally good Niente platforms -though you might want to note that it was initially developed on Debian.

The last column there is admittedly a bit of a stretch: ARM is a CPU architecture, not a distro family... but the point is that Niente will run on those Linux distros that are able to be installed on ARM chips used in the Raspberry Pi 4 (the 3 and 5 variants of that device have not been tested, however). I have documented the Niente install on Raspberry Pi, but for the other items in that column, just follow the appropriate general 'family install' article: Manjaro on Pi is just Manjaro, in other words, and therefore the Manjaro article should be reviewed for it. Ubuntu-on-Pi is, likewise, just Ubuntu, and thus the Ubuntu guide will be fine: the hardware platform Ubuntu is running on makes no difference to the way Niente installs or works.

All distros should be fully updated (by you!) with their latest security and software patches before you even start to install Niente, though the Niente installer will automatically invoke a full system update anyway, in case you've forgotten to do it yourself!

1.2 Niente on Windows

Any of the above distros running on Windows 10 or 11, via the WSL2 (Windows Subsystem for Linux, version 2), should also work without drama (though only Ubuntu-on-Windows, Debian-on-Windows and Manjaro-on-Windows have actually been tested at length). You will first need to install WSL2, for which this article may be helpful. After that, you can go ahead and install different distros 'within' Windows and, once they are running, you can follow the standard Niente installation process (see Section 2 below) to get Niente running. An article explaining in some detail how to install Niente Version 4 on Windows 10 or 11 (specifically using Ubuntu-on-Windows) is available to view here.

1.3 Unsupported Operating Systems

Please note that Niente Version 4 is not supported for being installed on anything to do with Apple Macs or Solus (a weird Linux distro that doesn't even have xterm in its repositories, which seems to me like trying to fly an aeroplane without any wings). It is possible that Niente Version 4 will run on Macs: the fundamental Niente requirement is to run in a Bash version 4 or above command line environment, and you can install such a Bash environment using tools like Homebrew or MacPorts. So it's certainly plausible that you could get Niente running on MacOS, but I have expended precisely zero effort in checking to see whether it does or not, and don't propose to do so in the future. If you would like to buy me some Apple hardware using M2 or M3 CPUs, then I'll revisit that decision, but until then, I'm unable to do anything meaningful in the Apple realm.

2.0 Installing Niente

The basic installation procedure for any supported operating system is

cd
wget doco.absolutelybaching.com/neninst

The installer is small (around 20KB) , so it will take hardly any time to download it. Once  the installer has been downloaded, you launch it in the same folder you saved it to, with the command:

bash neninst

You will first see a screen warning you that the installer will make quite a few changes to your system, if you let it:

You need to type 'y' (and then press [Enter]) to proceed. If you type anything else, the installer will terminate without having touched your system at all.

2.1 Software packages needed for Niente to work

To start with, the Niente installer will check for the presence of various packages on your system and will seek to install any that it finds to be missing. You can usually just let it do it's thing at this point, but if you are interested, here are the packages/programs that Niente deems essential to install:

  • bc (program allowing Bash to perform non-integer arithmetic)
  • flac (the library that allows FLAC audio files to be read and understood)
  • ffmpeg (an audio and video stream interpreter)
  • xterm (a terminal emulator or console)
  • sqlite3 (a simple database)
  • coreutils (a set of essential libraries, providing functionality like MD5 hash computation)
  • imagemagick (an image processing program: works with both ImageMagick versions 6.x and 7.x)
  • fd or fd-find, depending on distro (a file searching program)
  • dialog (a program allowing the creation and display of user input forms for the terminal)
  • cuetools (a program allowing the handling of cue sheets for merged FLACs)
  • curl (a program to perform file downloads)

If having any of this software installed on your system gives you cause for concern, type 'n' when the installer prompts you and give up on the idea of installing Niente altogether: the program cannot run without all of them being present, I'm afraid.

2.0 Upgrading from Niente Version 3 to Version 4

There is no upgrade path between the original and newest versions of Niente: the newer version installs alongside the older one and both can co-exist on the same system indefinitely. It is recommended you manually remove the earlier version when appropriate to do so, however. See this page for details.

3.0 Getting Started, post-Install

Once Niente is installed, you can launch it by (a) clicking on the launcher provided on the Desktop (some distros require you to 'trust' or 'mark as executable' the launcher before it will work); or (b) clicking the option provided somewhere in the main menu, which is usually to be found under 'Multimedia' or (depending on distro) 'Sounds & Video'. The main program display should then appear:

Operation of the program beyond this point is hopefully self-explanatory, with the 'top menu' giving access to each of the four main functional components of Niente in turn:

  • Database: The initial creation and population of a database listing every FLAC file in your music collection
  • Integrity Checks: Scan the FLAC files listed in the database and extract metadata and physical characteristics from them
  • Reporting: Query the database and generate lists of files which fail particular physical or logical consistency tests
  • Administration: Various configuration or program management options

In all cases, top-bar menu options can be accessed by right- or left-arrow keys (the menu wraps, so a right-arrow from Quit takes you back round to the Database menu), or by tapping the first letter of the menu name (so D gets you directly to Database, R to Reporting and so on). Once a top-bar menu option has been selected, the numbered menu items within that option will be displayed and can be invoked simply by tapping the number associated with the item. Thus tapping D, then 4, will invoke the database wiping option; I then 3 will trigger the fast integrity check and so on.

A handful of options are accessible regardless of which top-bar menu is selected: they are accessible at any time by tapping the letter associated with them (these options are listed on the right-hand side of the main program display area). Thus tapping 'X' will exit the program and 'L' will remove the program lock (which prevents two scanning operations from taking place at the same time).

Beyond that quick-start approach, however, you should read the relevant pages elsewhere in the user manual for an exploration (and explanation!) of the rest of the program's functionality,

4.0 Conclusion

Summarising things as compactly as I can, then:

  • fully update your distro, so that it's using the latest packages and patches
  • wget doco.absolutelybaching.com/neninst
  • bash neninst
  • type niente at a command prompt to launch the program, or click on one of the graphical launchers provided.
  • consider deleting the original Niente folder and executable once you are happy to use Niente Version 4

I hope all your Niente Version 4 installations work successfully and that you get up-and-running with the new program quickly and painlessly!


|[Back to Front Page]|