I have a small "dock" called "plank". On bottom of the screenshot. You can deaktivate in "plank --config" that it works as a taskbar. It will show only programs you drag on it. I also have a folder "Program Manager", where I store different kinds of "launchers". *.desktop files, symlinks, shell-scripts.sh When I drag those on plank, they have no individual icon. Shellscripts are shown as textfiles. Solution: this tool. Run the "generate-launchers.sh", it reads the folder ~/desktop/Program Manager (of course you can edit the short script for a different directory). The script will create *.desktop files for all it finds there, in: /home/mark/.local/share/applications/pm-managed/ Now drag some of them on your plank to add them. To change the icon, run the included ./icon-picker It alows you to set a picture using a fileselection dialog with preview. After the choice, it restarts plank. Download and technical readme: https://schinkenpizza.de/linuxfiles/plank-icon-manager/