Polydock is a fast and hackable application dock for your desktop.
I recently started using bspwm as my main window manager. Since bspwm is a tiling wm, most navigation is done using the keyboard. The only thing I really missed was the ability to quickly glance at a list of open, hidden, and grouped windows.
Polybar is a beautiful status bar, but unfortunatly lacks the ability to show a window list. Since I couldn't find a good looking, customizable dock, I decided to build one myself, that can easily be styled to blend into any existing status bar. (I'm also terrible coming up with great project names)
- highly customizable (see settings.ini)
- themeable with Gtk+ CSS (see themes/default.css)
- window grouping by window class, instance, title, visibility or any combination of the above
- limit the dock to windows on the current workspace or all workspaces
- show only visible windows, hidden windows, or both
- updates icon when it changes in the application (great for google chrome web application windows)
- rules to define custom icons
- clicking on a group cycles throuhg the windows in that group
- right click to get a popup with all open windows in that group
Make sure you have the following libraries on your system:
gtk3gjslibwnck3gdk-pixbuf2
Grab the latest release and unzip it somehwere on your system.
You can start using polydock right away from the bin folder:
$ bin/polydockor, copy the binary and config files to your local directories.
For example:
$ cp bin/polydock ~/.local/bin
$ cp -rv config ~/.config/polydockPolydock is written in Typescript and needs some nodejs packages to transform the source into code that works with GJS
Installing and building has been tested with the package manager pnpm, but should also work with npm or yarn
$ cd polydock
# Install dependencies
$ pnpm i
# Build bundle
$ pnpm run buildPull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.