I tried KDE Plasma on my Ubuntu machine last weekend. After using it for a while, I decided that it is too complicated for me and I'd like to remove them from my machine.
To remove installed packages in Ubuntu is simple.
$ sudo apt remove package-name-1 package-name-2
But, there are a lot of packages installed automatically when you install KDE Plasma. Removing them one by one is definitely, well, inefficient. So, the challenge here is to get a list of installed KDE packages in proper format, so you can feed them into the command above.
Here's how I solve it in an efficient way.
apt as the interface for the package management system in Ubuntu provides a way for you to list installed packages. Here's one way to list installed packages which name contains
$ apt list --installed | grep kde . . debconf-kde-helper/disco 1.0.3-1 amd64 [installed,automatic] kde-style-breeze/disco 4:126.96.36.199-0ubuntu1 [installed,automatic] . .
The output is not something we can feed into
apt remove command directly, so we need to sanitize it quite a bit.
It's obvious that the package name is anything before
/. We can use the
cut command to do just that.
$ apt list --installed | grep kde | cut -d "/" -f 1 . . debconf-kde-helper kde-style-breeze . .
Next, since each packages are listed in a new line, we still can't pass this output directly to the
apt remove command. Let's replace the new line with space using
$ apt list --installed | grep kde | cut -d "/" -f 1 | tr '\n' ' ' . . debconf-kde-helper kde-style-breeze . .
Now, the output of installed KDE packages are now in proper format. We can now feed the output directly to
apt remove command using
$ apt list --installed | grep kde | cut -d "/" -f 1 | tr '\n' ' ' | xargs sudo apt remove
It's amazing how these four simple tools:
xargs, can help you automate and achieve your goal; saving you from the manual and repetitive labor.
How might you do it differently?