Tasksel to install homogeneous package groups
Today I will tell you about Tasksel: a pretty cool command line software that has simplified my life several times by letting me install bundles of packages, can also be installed individually, but which collectively perform a function “concerted”.
The installation of any software present in the repositories on Ubuntu is done through apt. When you launch the installation, a package is installed – rightly – only that specific package, combined with the dependencies necessary for the functioning of the same. However, it may be necessary for the activation of a specific service to install a series of packages that are not necessarily linked to each other (and not employees) that allow the performance of this service.
I give an example. If you launched the installation of the MySQL database manager via apt, the packages needed to start MySQL would be downloaded. I might want to connect an application that I am developing to the database, or I might want to study how its syntax works. But if you want to locally install a CMS that connects to it to save and extract data? The latter case is much more frequent than the others and the CMS will not only need the database manager, but also a webserver and an interpreter (easily PHP).
Several methods have been devised to simplify this process, one above all the use of metapackages. These are groups of packages “gathered” in one package. By installing the metapackage, all the packages needed to start the service will be installed as dependencies. For example by installing the metapackage on Ubuntu “gnome-desktop-environment” all packages related to DE Gnome will be installed. On Ubuntu site you can find more information on metapackages.
With Tasksel the approach is different. Tasksel is present in Ubuntu repositories. You can easily install it with apt:
~$ sudo apt install tasksel
To start it simply type from the terminal
tasksel con privilegi amministrativi. The different software groups are defined task and each task corresponds to a complete service. In our case the task LAMP server will install all the software needed to start a web server (Linux Apache MySQL PHP).
When you launch Tasksel you can select the software to install as you would in an operating system installation “classical” (command line). This is an advantage, in fact you can also use Tasksel remotely without a graphical interface (su server, nas or other headless device).
The tasks marked with an asterisk refer to the software already installed. To install new tasks select them with the space bar. When the selection is finished, press enter and the installation will start.
The task list is quite long, will serve a bit’ of time perhaps to understand where to find the one you want.
After confirming, you can check the progress of the download and installation.