How to Install Tasksel on Ubuntu (26.04, 24.04, 22.04)

Last updated Tuesday, March 10, 2026 10:44 am 8 min read

Fresh Ubuntu builds often need more than one package, whether you are turning on SSH, bringing up Apache, or adding a desktop environment after the initial install. Tasksel groups those related packages into named tasks, so you can install Tasksel on Ubuntu and deploy common server or desktop roles from one menu or one command.

Tasksel is available from Ubuntu’s universe repository on 26.04, 24.04, and 22.04. Once it is in place, you can verify the package version, inspect what each task pulls in, and use current Ubuntu task names instead of guessing with older examples that no longer match the live task list.

This guide supports Ubuntu 26.04 LTS, 24.04 LTS, and 22.04 LTS. The install command stays the same on Ubuntu Server, desktop, and minimal images, although stripped-down installs are more likely to need the troubleshooting steps later for dialog, apt-utils, or universe. Ubuntu 26.04 adds extra desktop tasks such as Lomiri and Phosh to the task list shown later.

Install Tasksel on Ubuntu

Install the package first, then confirm APT sees the expected version before you start browsing or installing tasks.

Update Ubuntu before installing Tasksel

Refresh your package lists and bring existing packages up to date so Tasksel installs against current repository metadata.

sudo apt update && sudo apt upgrade

This guide uses sudo for commands that need root privileges. If your account is not in the sudoers file yet, follow the guide on add a new user to sudoers on Ubuntu before continuing.

Install the Tasksel package on Ubuntu

Tasksel is a separate package on many current Ubuntu systems, so install it explicitly before you try to open the menu or call a task from the command line. If it is already present on a reused VM or existing server build, APT simply reports that the package is already at the newest version.

sudo apt install tasksel

Verify the Tasksel package on Ubuntu

Check the package policy to confirm APT sees Tasksel and its repository source correctly.

apt-cache policy tasksel
tasksel:
  Installed: 3.86ubuntu2
  Candidate: 3.86ubuntu2
  Version table:
 *** 3.86ubuntu2 500
        500 http://au.archive.ubuntu.com/ubuntu resolute/universe amd64 Packages

Current Ubuntu package versions differ by release: Ubuntu 26.04 ships 3.86ubuntu2, Ubuntu 24.04 ships 3.75ubuntu1, and Ubuntu 22.04 ships 3.68ubuntu2. APT reports Tasksel from the universe component on all three releases.

Use Tasksel on Ubuntu

Tasksel works best when you treat it as a task browser and installer, not just a package name. The commands below help you see the live task names, inspect what they install, and confirm when a task is marked as installed.

List available Tasksel tasks on Ubuntu

Start with the live task list so you work with valid task names on your release. The leading u means the task is not installed yet, while i marks an installed task.

tasksel --list-tasks
u desktop       Debian desktop environment
u gnome-desktop GNOME
u xfce-desktop  Xfce
u gnome-flashback-desktop       GNOME Flashback
u kde-desktop   KDE Plasma
u cinnamon-desktop      Cinnamon
u mate-desktop  MATE
u lxde-desktop  LXDE
u lxqt-desktop  LXQt
u lomiri-desktop        Lomiri
u lomiri-tablet Lomiri for tablet
u phosh-desktop Phosh
u web-server    web server
u ssh-server    SSH server
u laptop        laptop

Ubuntu 24.04 and 22.04 keep the same core desktop, web, SSH, and laptop tasks but omit the extra Lomiri and Phosh entries shown in the Ubuntu 26.04 output above.

Inspect what a Tasksel task installs on Ubuntu

Before you install a larger role, check which task package Tasksel uses and then inspect that meta-package with APT. This is especially helpful for desktop tasks that pull in a large dependency set.

tasksel --task-packages ssh-server
apt-cache depends task-ssh-server
task-ssh-server
task-ssh-server
  Depends: tasksel
  Depends: openssh-server
  Recommends: openssh-client
Tasksel nameTask packageMain package pull-inGood fit
ssh-servertask-ssh-serveropenssh-serverRemote shell access and first-login administration
web-servertask-web-serverapache2Quick Apache deployment from Ubuntu repositories
gnome-desktoptask-gnome-desktoptask-desktop, gnome-coreAdding a GNOME GUI to a server or VM

Open the Tasksel interface on Ubuntu

Use the interactive menu when you want to browse tasks first and choose them with the keyboard.

sudo tasksel

Use the arrow keys to move through the list, press Space to mark a task, press Tab to highlight <Ok>, and then press Enter to start the installation. Run this from a normal terminal window, not a noninteractive shell, so Tasksel can open its full-screen dialog interface.

Install a Tasksel task from the Ubuntu command line

When you already know the task name, call it directly from the terminal. The ssh-server task is a good starter example because it adds the Tasksel meta-package for OpenSSH without forcing a large desktop install.

sudo tasksel install ssh-server

After Tasksel finishes, verify both the meta-package and the task status.

dpkg -l task-ssh-server openssh-server | grep '^ii'
tasksel --list-tasks | grep 'ssh-server'
ii  openssh-server  1:10.2p1-2ubuntu1 amd64        secure shell (SSH) server, for secure access from remote machines
ii  task-ssh-server 3.86ubuntu2       all          SSH server
i ssh-server    SSH server

If you are building a web stack, current Ubuntu Tasksel releases do not list the older lamp-server task. Use web-server for Apache, then add the database and PHP pieces separately with guides to install Apache on Ubuntu, install MariaDB on Ubuntu, or install PHP on Ubuntu.

Install a desktop task on Ubuntu Server with Tasksel

When your main goal is to add a GUI to Ubuntu Server, dry-run the desktop task first. This shows the exact task package Tasksel will hand to APT without starting the full desktop installation.

sudo tasksel -t install gnome-desktop
debconf-apt-progress -- apt-get -q -y -o APT::Install-Recommends=true -o APT::Get::AutomaticRemove=true -o Acquire::Retries=3 install task-gnome-desktop

If the dry run looks correct, remove -t to perform the real install. Swap gnome-desktop for another valid desktop task such as kde-desktop, xfce-desktop, or cinnamon-desktop when you want a different GUI.

If you want a full desktop-specific walkthrough after the base task install, continue with guides to install KDE Plasma on Ubuntu or install Xfce on Ubuntu. If you specifically need the standard ubuntu-desktop meta-package, install that with APT instead of Tasksel because current Ubuntu task lists expose generic desktop tasks rather than an ubuntu-desktop entry.

Troubleshoot Tasksel on Ubuntu

Most Tasksel issues on Ubuntu come down to missing helper packages on minimal images, noninteractive shells, or older task names copied from dated tutorials.

Fix debconf frontend warnings with Tasksel on Ubuntu

On SSH sessions, containers, and trimmed-down Ubuntu installs, Tasksel can fall back through several debconf frontends before it gives up on the dialog interface.

debconf: unable to initialize frontend: Dialog
debconf: (Dialog frontend will not work on a dumb terminal, an emacs shell buffer, or without a controlling terminal.)
debconf: falling back to frontend: Readline
debconf: unable to initialize frontend: Readline
debconf: (This frontend requires a controlling tty.)
debconf: falling back to frontend: Teletype
debconf: unable to initialize frontend: Teletype
debconf: (This frontend requires a controlling tty.)
debconf: falling back to frontend: Noninteractive

Install the helper packages that provide the dialog interface and package preconfiguration tools, then rerun Tasksel from an interactive terminal. On stripped-down images, the warning can also mention apt-utils instead of the dialog frontend.

sudo apt install dialog apt-utils

After that, open a local terminal or a normal SSH session with a TTY and run sudo tasksel again. The full-screen menu should open instead of dropping straight to debconf fallback messages.

Fix "Unable to locate package tasksel" on Ubuntu

This usually means your package lists are stale or the universe component is not enabled on a stripped-down image. Install the repository helper if needed, enable universe, refresh APT, and then retry the package install.

sudo apt install software-properties-common
sudo add-apt-repository -y universe
sudo apt update
sudo apt install tasksel

If software-properties-common is already installed, APT just confirms the current version and moves on. Once universe is enabled, apt-cache policy tasksel should again show a candidate version from Ubuntu’s repositories.

Fix "tasksel: apt-get failed (100)" on Ubuntu

This error usually means APT is already in a broken or unfinished state, so Tasksel cannot hand the task package off cleanly to the package manager.

tasksel: apt-get failed (100)

Repair broken dependencies, finish any pending package configuration, and then confirm Tasksel is visible to APT again before retrying the task install.

sudo apt --fix-broken install -y
sudo dpkg --configure -a
apt-cache policy tasksel
tasksel:
  Installed: 3.86ubuntu2
  Candidate: 3.86ubuntu2
  Version table:
 *** 3.86ubuntu2 500
        500 http://au.archive.ubuntu.com/ubuntu resolute/universe amd64 Packages

Once the package policy looks normal again, rerun sudo tasksel install ssh-server or your chosen desktop task.

Remove Tasksel from Ubuntu

Removing Tasksel takes away the task browser itself, but it does not automatically remove the server or desktop software you already installed through those tasks.

sudo apt remove tasksel tasksel-data

Follow that with APT’s cleanup pass to remove any now-unused dependencies.

sudo apt autoremove

If you installed a task such as ssh-server or web-server, the underlying packages like openssh-server or apache2 stay on the system. Remove those packages separately if you want a full rollback of the role you added through Tasksel.

Run the package policy check one last time to confirm Tasksel itself is gone.

apt-cache policy tasksel
tasksel:
  Installed: (none)
  Candidate: 3.86ubuntu2
  Version table:
     3.86ubuntu2 500
        500 http://au.archive.ubuntu.com/ubuntu resolute/universe amd64 Packages

Frequently Asked Questions

Does Tasksel work on Ubuntu Server, desktop, and minimal installs?

Yes. The same package and task names work on Ubuntu Server, desktop, and minimal installs. The main difference is that stripped-down images are more likely to need dialog, apt-utils, or the universe repository enabled before the interface and package flow work cleanly.

Can Tasksel install a GUI on Ubuntu Server?

Yes. Current Ubuntu releases list desktop tasks such as gnome-desktop, kde-desktop, cinnamon-desktop, and xfce-desktop when you run tasksel --list-tasks. Choose the desktop task you want, but remember that a GUI install pulls in a large package set and makes more sense for local systems, lab machines, and VMs than for lean headless servers.

Why is ubuntu-desktop missing from the Tasksel task list on Ubuntu?

Current Ubuntu Tasksel lists use generic desktop task names instead of an ubuntu-desktop entry. If you want the standard Ubuntu desktop meta-package specifically, install it with sudo apt install ubuntu-desktop. If you want to stay inside Tasksel, pick a desktop task such as gnome-desktop or kde-desktop from the live task list.

Why does current Ubuntu Tasksel not show the lamp-server task?

Current Ubuntu Tasksel releases list web-server but not the older lamp-server task. Use web-server when you want Apache from Tasksel, then install PHP and your database separately with APT so you can choose the stack you actually want.

Conclusion

Tasksel is installed on Ubuntu and ready to pull in common server or desktop roles without chasing package lists by hand. If you want to keep building from here, continue with guides to install SSH on Ubuntu, install Apache on Ubuntu, or install Nginx on Ubuntu.

Search LinuxCapable

Need another guide?

Search LinuxCapable for package installs, commands, troubleshooting, and follow-up guides related to what you just read.

Found this guide useful?

Support LinuxCapable to keep tutorials free and up to date.

Buy me a coffee Buy me a coffee

Before commenting, please review our Comments Policy.
Formatting tips for your comment

You can use basic HTML to format your comment. Useful tags currently allowed:

You type Result
<code>command</code> command
<strong>bold</strong> bold
<em>italic</em> italic
<blockquote>quote</blockquote> quote block

Leave a Comment

We read and reply to every comment - let us know how we can help or improve this guide.

Let us know you are human: