Tasksel – Quickly Install Software Groups in Debian and Ubuntu

One of the several tasks that a Linux user is bound to handle is software installation. There are possibly two methods, especially on Debian-based distributions such as Ubuntu and Linux Mint that you can use for installing software.

The first is installing individual packages using package management tools such as apt-get, apt, aptitude, and synaptic. The second method is by using Tasksel.

Tasksel is a simple and easy-to-use tool developed for Debian-based distributions that provide users an interface to enable them to install a group of related packages such as LAMP Server, Mail Server, DNS Server, etc. as a single pre-configured task. It works comparably to meta-packages, you will find nearly all tasks in tasksel present in meta-packages.

How to Install and Use Tasksel in Debian and Ubuntu

To install tasksel, simply run the command below:

sudo apt-get install tasksel

After installing tasksel, it enables you to install one or more predefined groups of packages. Users need to run it from the command line with a few arguments, it provides a graphical user interface as well where one can select software to install.

The general syntax of running tasksel from the command line is:

sudo tasksel install task_name
sudo tasksel remove task_name
sudo tasksel command_line_options

To start the tasksel user interface, issue the command below:

sudo tasksel
Tasksel - List of Software Collection
Tasksel – List of Software Collection

Where you see an asterisk (*) without the red highlighter, it means that the software is already installed.

To install one or more software, use the Up and Down arrows to move the red highlighter, press the Space bar to select the software, and use the Tab key to move to <ok>.

Then hit the Enter button to install the selected software as shown in the screencast below.

Tasksel - Install Software Group

Alternatively, you can list all tasks from the command line as well, by using the command below. Note that in the first column of the list, u (uninstalled) means the software is not installed and i (installed) means the software is installed.

sudo tasksel --list-tasks 

Sample Output:

u manual	Manual package selection
u kubuntu-live	Kubuntu live CD
u lubuntu-live	Lubuntu live CD
u ubuntu-gnome-live	Ubuntu GNOME live CD
u ubuntu-live	Ubuntu live CD
u ubuntu-mate-live	Ubuntu MATE Live CD
u ubuntustudio-dvd-live	Ubuntu Studio live DVD
u ubuntustudio-live	Ubuntu Studio live CD
u xubuntu-live	Xubuntu live CD
u cloud-image	Ubuntu Cloud Image (instance)
u dns-server	DNS server
u edubuntu-desktop-gnome	Edubuntu desktop
u kubuntu-desktop	Kubuntu desktop
u kubuntu-full	Kubuntu full
u lamp-server	LAMP server
u lubuntu-core	Lubuntu minimal installation
u lubuntu-desktop	Lubuntu Desktop
u mail-server	Mail server
u mythbuntu-backend-master	Mythbuntu master backend
u mythbuntu-backend-slave	Mythbuntu slave backend
u mythbuntu-desktop	Mythbuntu additional roles
u mythbuntu-frontend	Mythbuntu frontend
u postgresql-server	PostgreSQL database
u samba-server	Samba file server
u tomcat-server	Tomcat Java server
i ubuntu-desktop	Ubuntu desktop
...

You can find a full description of all tasks in /usr/share/tasksel/*.desc and /usr/local/share/tasksel/*.desc files.

Let’s install some group of software packages such as LAMP, Mail Server, DNS Server, etc.

Install LAMP stack Using Tasksel

As an example, we shall cover the installation of the LAMP (Linux, Apache, MySQL, and PHP) stack in Ubuntu 22.04.

You can either use the user interface or the command line option, but here, we shall utilize the command line option as follows:

sudo tasksel install lamp-server

Install LAMP Server Using Tasksel in Ubuntu

While the Mysql package is being installed, you will be prompted to configure Mysql by setting a root password. Simply enter a strong and secure password, then hit the Enter key to proceed.

Wait for the installation to complete. After all is done, you can test the LAMP stack installation as follows.

sudo task --list-tasks | grep “lamp-server”

i lamp-server	LAM server

Similarly, you can also install a Mail Server or DNS Server as shown:

sudo tasksel install mail-server
sudo tasksel install dns-server

Look through the tasksel package man page for more usage options.

man tasksel

In conclusion, tasksel is a simple and easy-to-use interface for users to install software on their Debian/Ubuntu Linux systems.

However, which method of software installation do you prefer: using package management tools or tasksel? Let us know via the comment section below, along with any suggestions or other valuable feedback.

Hey TecMint readers,

Exciting news! Every month, our top blog commenters will have the chance to win fantastic rewards, like free Linux eBooks such as RHCE, RHCSA, LFCS, Learn Linux, and Awk, each worth $20!

Learn more about the contest and stand a chance to win by sharing your thoughts below!

Aaron Kili
Aaron Kili is a Linux and F.O.S.S enthusiast, an upcoming Linux SysAdmin, web developer, and currently a content creator for TecMint who loves working with computers and strongly believes in sharing knowledge.

Each tutorial at TecMint is created by a team of experienced Linux system administrators so that it meets our high-quality standards.

Join the TecMint Weekly Newsletter (More Than 156,129 Linux Enthusiasts Have Subscribed)
Was this article helpful? Please add a comment or buy me a coffee to show your appreciation.

3 Comments

Leave a Reply
  1. If I open terminal from inside of a usb drive can/will tasksel install the programs there? Would it bootable if i put a live CD install in the root folder of the drive. Thanks for the tutorial between. I’m a newbie..

    Reply

Got Something to Say? Join the Discussion...

Thank you for taking the time to share your thoughts with us. We appreciate your decision to leave a comment and value your contribution to the discussion. It's important to note that we moderate all comments in accordance with our comment policy to ensure a respectful and constructive conversation.

Rest assured that your email address will remain private and will not be published or shared with anyone. We prioritize the privacy and security of our users.