214: Customizing Your Linux Desktop With GNOME, KDE Plasma & More


Thanks, everyone, gosh that’s such a variety of customisations!

I’m with @dasgeek on this as I hardly change any of the defaults. I use GNOME and mostly work on only one thing at a time, so its minimalism is very suitable for me. I completely understand @MichaelTunnell and @kernellinux extensively customising Plasma as power-users, and like @jill_linuxgirl I sometimes switch to Plasma or XFCE or an openbox based system just depending on my mood and for a temporary change of scene, as all can be installed simultaneously on Debian Stable with only very minor tweaks needed, if any.

I am happy to see Debian 11 progressing with its stages of freezes and notice Plasma 5.20 is currently in testing. Not sure if 5.21 will make it into Debian 11 but I do see it running on Fedora in a VM and it’s very nice, to put it simply :slight_smile:

Update: apologies, Fedora’s on Plasma 5.20 atm.


I’m totally with @jill_linuxgirl, nothing is easier and faster than having your config in a CVS, and apply it as easy as git pull your config


I usually listen to the headless podcast off the RSS feed, I watched today’s episode on youtube hoping I’d see some screen shares!

1 Like

Welcome to the forum, @perkele! I hope you enjoy being here.

As for the video, screen shares are not practical for a podcast due to the flow of content and the massive amount of editing it would require to do that sort of thing.

I will be personally making my own video because there are a lot of specific things to cover.


I can’t wait to see that video. I installed KDE for the first time since KDE3 based on the praise of the podcast, and so far, I must say I am underwhelmed.
So many little things tick me off or are just weird. I hope it’s just me having to get used to it, but things like having to reboot to change DPI settings or when I tried to connect to a wi-fi, and while in the middle of writing the password, it would just change which wi-fi I was trying to connect to because the list changed…
So yeah, can’t wait to see the video :slight_smile:

Did I miss it? I’m looking for a list of the Gnome extensions that were listed in the episode. Like Ryan, I mostly run stock Gnome on Fedora 33, but the hosts had a few extension suggestions that I thought were worth considering. If there isn’t a list that’s okay, I will re-listen to that segment and take notes. I’m often listening to my podcasts without mean to take notes, perhaps I have to change that habit with Destination Linux since they give such great tips and app suggestions.

On my other Linux boxes I’m running MX Fluxbox, and after listening to Jill, she hit the nail on the head as to why I like Fluxbox on everything else. I have those machines backing up my configs using yadm, and it is super easy to do a new MX Linux install, connect to my git repo, and pull down all of my Fluxbox configurations with yadm. Up and running in no time. Unless, I’ve missed something, I don’t think you can do that with Gnome, Mate, or KDE. When I have used those in the past, I basically leave them stock with a change of wallpaper and add the keyboard shortcut Ctrl+Alt+t for my terminal if it is not already there.

1 Like

Top panel guy here. Have been since Win98. Then moved onto the Linux world after that and moving the panel to the top is the first thing I do. Actually, I just have a script I run that customized 95% of the things I used to do manually and installs all my applications.

Also, my eyesight isn’t as good as it used to be, white light is blinding to me so, I use dark mode on pretty much everything.

I’ve uses all the big and not so big distros over the years, but for the last few years, I’ve settled on XFCE on Manjaro. Best experience I’ve ever had.


@corstar XFCE is a great choice, and one that I have enjoyed as well. You mentioned that you use a script to add your customization options and app installation. I’m curious, does XFCE have a way to export and import your customization options or a way to script your customization options, like setting panel placement, setting panel plugins, changing out regular XFCE menu for the whisker menu, setting a dark theme instead of the default theme, etc?

In the past I have left XFCE mostly stock because I figured it was like Gnome, KDE, and Mate where you can’t export your user preferences, but perhaps you know some secrets about XFCE that have escaped me.

When I was using Mate, I had a full blown script to change everything for me. I was planning to do the same for XFCE, but found just copy/pasting the ,xfce dot folder done exactly what I needed to.

Here’s the script I used on Mate, it’s a bit out-dated now with repos and ppa’s (when I was on Ubuntu), but someone may find the format useful.

(sorry, not sure how to embed code into a post yet)

# Author		        Cory Pollard
# Date			2016.10.09
# Purpose		First run shell script on a new Mate install
# Notes			Would like to add my preferred dot files and folders in the script too
#               Combined settings and installations scripts (2017.08.19)

echo "Customizing settings"
echo "Customizing Gsettings"
gsettings set org.mate.caja.desktop volumes-visible false
#gsettings set org.mate.session.
#gsettings set org.mate.session.required-components windowmanager openbox
#gsettings set org.mate.pluma

#echo "Customizing Panel Options"
#dconf write /org/mate/

echo "Customizing Pluma Options"
# Pluma
dconf write /org/mate/pluma/auto-indent true
dconf write /org/mate/pluma/auto-save true
dconf write /org/mate/pluma/insert-spaces true
dconf write /org/mate/pluma/statusbar-visable true 
dconf write /org/mate/pluma/bracket-matching true
dconf write /org/mate/pluma/color-scheme "'cobalt'"
dconf write /org/mate/pluma/display-line-numbers true
dconf write /org/mate/pluma/editor-font "'Dejavu Sans Mono 18'"

echo "Customizing Desktop Options"
# Desktop
dconf write /org/mate/desktop/session/required-components/windowmanager "'openbox'"
dconf write /org/mate/marco/general/num-workspaces "'14'"
dconf write /org/mate/desktop/background/show-desktop-icons false
dconf write /org/mate/desktop/background/background-fade false
dconf write /org/mate/desktop/background/picture-filename "''"
dconf write /org/mate/desktop/background/color-shading-type "'solid'"
dconf write /org/mate/desktop/background/primary-color "'#222222'"
dconf write /org/mate/desktop/interface/can-change-accels true
dconf write /org/mate/desktop/interface/cursor-blink false
dconf write /org/mate/desktop/interface/toolbar-detatchable true

echo "Customizing Startup Programs"

echo "Customizing Panel Programs"
dconf write /apps/indicators/keylock/icon-mode true
dconf write /apps/indicators/keylock/show-inactive true

echo "Customizing Mouse Options"
# Mouse
dconf write /org/mate/desktop/peripherals/touchpad/tap-to-click true
dconf write /org/mate/desktop/peripherals/mouse/cursor-size 48
dconf write /org/mate/desktop/peripherals/mouse/cursor-theme "'DMZ-Black'"
dconf write /org/mate/desktop/peripherals/mouse/scroll-method 2 #0=disabled, 1=edge 2=two-finger

echo "Customizing Power Options"
# Power
dconf write /org/mate/power-manager/lock-suspend false
dconf write /org/mate/power-manager/lock-blank-screen false
dconf write /org/mate/power-manager/lock-hibernate false
dconf write /org/mate/power-manager/lock-keyring-hibernate false
dconf write /org/mate/power-manager/lock-keyring-suspend false
dconf write /org/mate/power-manager/backlight-battery-reduce false
dconf write /org/mate/power-manager/enable-sound false
dconf write /org/mate/power-manager/notify-discharging false
dconf write /org/mate/power-manager/notify-fully-charged false

echo "Customizing Caja Options"
# Caja
dconf write /org/mate/caja/preferences/confirm-trash false
dconf write /org/mate/caja/preferences/show-advanced-permissions true
dconf write /org/mate/caja/preferences/sort-directories-first true
dconf write /org/mate/caja/preferences/window-state/maximized true
dconf write /org/mate/caja/preferences/background-color "'#222222'"
dconf write /org/mate/caja/preferences/default-folder-view "'list-view'"
dconf write /org/mate/caja/preferences/background-color "'#222222'"
dconf write /org/mate/caja/preferences/background-color "'#222222'"

echo "Updating"
sudo apt-get update
sudo apt-get upgrade
echo "Installing from Ubuntu repository"
sudo apt-get install -y aptitude emacs bluefish openbox openssh-server ranger  inkscape gimp viewnior zsh bash-completion mplayer geany geany-plugins htop mc bpython bpython3 ubuntu-restricted-extras ubuntu-restricted-addons parcellite build-essential ncdu python-pip fotoxx git curl yadm most golang libncursesw5-dev liblua5.2-dev zlib1g-dev libxft-dev lua5.2 lua-filesystem kazam gparted tcl ttf-liberation ttf-anonymous-pro frotz python3-pyside python-pyside fonts-inconsolata netdiscover wget tesseract-ocr-eng gimagereader gresistor grsync idle idle3 wmctrl xdotool gnome-commander lua-curses wxglade glade transmission-daemon mksh p7zip-rar jython sonic-pi sonic-pi-samples gimp-save-for-web frotz dreampie dreamchess flake8 pyflakes python-flake8 python3-flake8 python3-pyflakes virtualenv python-virtualenv python3-virtualenv focuswriter python-jedi python3-jedi vim-python-jedi python-pygame python-pyglet aria2 dosbox python-ipy tk-table xbacklight python-wxtools pychess mtpaint python-lua lua-doc gimp-plugin-registry smplayer indicator-keylock sbackup-gtk diffuse cherrytree python3-openalpr ratmenu transmission-remote-gtk notifyosdconfig notify-osd-icons notify-osd openshot openshot-doc anagramarama tanglet faenza-icon-theme graphicsmagick pcmanfm jwhois xword wordplay pynagram perlpanel dmenu pdmenu arp-scan remmina-plugin-nx remmina sshpass xstow arandr 

echo "Installing PPAs"
sudo add-apt-repository ppa:bartbes/love-stable -y
sudo add-apt-repository ppa:nilarimogard/webupd8 -y
sudo add-apt-repository ppa:nathan-renniewaldock/flux -y
sudo apt-get update && sudo apt-get upgrade
sudo apt-get install albert love fluxgui youtube-dlg

echo "Getting python applications"
sudo pip install --upgrade pip
sudo pip install udemy-dl
sudo pip install chatterbot

echo "Installing Pyexiftoolgui"
wget https://github.com/hvdwolf/pyExifToolGUI/archive/master.zip
mkdir applications
mv master.zip /home/user/applications/
cd /home/user/applications/
unzip master.zip
rm master.zip
echo "Installing TCL GUI Toolkit"
wget https://github.com/hpheidinger/vtcl.vtcl-8.6/archive/master.zip
mv master.zip /home/user/applications/
cd /home/user/applications/
unzip master.zip
rm master.zip

echo "Installing IDLEX Python3"
wget https://github.com/sandeep-datta/idlex/archive/master.zip
mv master.zip /home/user/applications/
cd /home/user/applications/
unzip master.zip
rm master.zip

echo "Installing Google Chrome"
wget -c https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
sudo dpkg -i google-chrome-stable_current_amd64.deb
echo "Done Installing Google Chrome"
echo "All tasks completed successfully"
1 Like

You need to use the code brackets or hit Ctrl+Shift+C.

1 Like

Cool, thanks for that tip.

Yeah, the script is very basic, I was planning to use a few if/else statements for any errors arose, but ended up moving to Xfce not long after writing that.

Thanks @corstar for the example script and for the note that just copying the .xfce folder brings over lots of your customization. I might have to try that for xfce.

Your script for Mate was fascinating. I didn’t realize that you could make so many changes to Mate through the dconf command. You have opened my eyes to the possibilities. Although I will admit that I’m often happy with the defaults that I find in the distros. Ubuntu Mate is fantastic out of the box, and their tweak tool does make it possible to have a few sweeping changes just a couple of clicks away. Great stuff though, thanks so much for sharing your script.

This is a really neat idea! Thanks for sharing.

For sure, I have my dot files in a git repo in a stow folder structure. Pull it all down, do a stow and everything is in its place.

Looking forward to the Fedora i3 spin BTW :yum:



That script is kinda old and really basic, but it done everything I needed at the time.

Even though I’m have been stable on Manjaro Xfce for some years now, I might create some more scripts that set everything up for me, the same way copying dot files does. Just because I can and enjoy Bash Scripting. I’ll upload it here when I get around to it.

One word to the wise though, if you are just nuke and paving with the same distro (with the .xfce folder) it should work fine, but for some reason a distro change had some unexpected quirks, just something to keep in mind.

I could test it with making some changes on one of my MX Linux boxes, and then copying the .xfce folder over to the other MX Linux box that I have. As I mentioned above, I’ve been so happy living in MX Fluxbox, that I haven’t seen a reason to even log into the XFCE session on either of my MX boxes, but it is good to know that there might be an easy way to sync my xfce customizations between boxes. It is nice to have one machine at work and one machine at home that have the same familiar set up.

1 Like

It will be released with Fedora 34!