NovaDock
š„ļø Modern XFCE4 dock & launchpad with magnification effects, plugin support, and custom themes. Written in Vala, powered by GTK3 and libwnck.
Install / Use
/learn @novik133/NovaDockREADME
NovaDock
A macOS/GNOME-style dock and application launcher for XFCE4
</div> <p align="center"> <img src="Screenshots/1.png" width="100%" alt="NovaDock Main View"> </p> <p align="center"> <img src="Screenshots/2.png" width="48%" /> <img src="Screenshots/3.png" width="48%" /> </p>Features
| Feature | Description | |---------|-------------| | Dock Panel | Animated dock with macOS-style magnification effect | | App Launcher | Full-screen launchpad with grid view and search | | Pin/Unpin | Right-click to pin running apps or unpin favourites | | App Indicators | Visual dots for running applications | | Global Hotkeys | Keyboard shortcuts for launcher and pinned apps | | Plugin System | Extensible architecture for custom dock plugins | | Themes | Installable themes for dock customisation | | Auto-Hide | Configurable auto-hide with edge detection | | Multi-Monitor | Full multi-monitor support | | Settings | Modern sidebar settings panel |
Requirements
| Dependency | Minimum Version | |------------|----------------| | GTK+ 3.0 | 3.22 | | libwnck 3.0 | 3.20 | | GLib 2.0 | 2.50 | | keybinder-3.0 | 0.3.0 | | Vala compiler | 0.48 | | Meson + Ninja | 0.50 | | gtk-layer-shell | 0.1 (optional, Wayland) |
Building from Source
meson setup build
cd build
ninja
sudo ninja install
Installation from Packages
Pre-built packages are available on the Releases page.
Import GPG Key
All packages are signed with GPG key 8419D50A73686C21.
gpg --keyserver keyserver.ubuntu.com --recv-keys 8419D50A73686C21
Debian / Ubuntu
gpg --export 8419D50A73686C21 | sudo tee /usr/share/keyrings/novadock.gpg > /dev/null
gpg --verify novadock_0.2.0_amd64.deb.asc novadock_0.2.0_amd64.deb
sudo dpkg -i novadock_0.2.0_amd64.deb
Fedora / RHEL
gpg --export --armor 8419D50A73686C21 | sudo tee /etc/pki/rpm-gpg/RPM-GPG-KEY-novadock > /dev/null
sudo rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-novadock
gpg --verify novadock-0.2.0-1.x86_64.rpm.asc novadock-0.2.0-1.x86_64.rpm
sudo dnf install ./novadock-0.2.0-1.x86_64.rpm
Arch Linux
sudo pacman-key --add <(gpg --export 8419D50A73686C21)
sudo pacman-key --lsign-key 8419D50A73686C21
gpg --verify novadock-0.2.0-1-x86_64.pkg.tar.zst.asc novadock-0.2.0-1-x86_64.pkg.tar.zst
sudo pacman -U novadock-0.2.0-1-x86_64.pkg.tar.zst
Project Structure
NovaDock/
āāā lib/ # Library (libnovadock)
ā āāā core/ # Application core
ā āāā dock/ # Dock panel components
ā āāā launcher/ # Full-screen app launcher
ā āāā hotkeys/ # Global hotkey manager
ā āāā plugins/ # Plugin system & built-in plugins
ā āāā settings/ # Settings UI
ā āāā themes/ # Theme system
ā āāā meson.build
āāā src/
ā āāā main.vala # Entry point
ā āāā meson.build
āāā data/
ā āāā themes/ # Default themes
ā āāā icons/ # Dock icons
ā āāā novadock.desktop
āāā docs/ # Documentation
āāā meson.build
Usage
novadock # Start dock
novadock --launcher # Open launcher only (-l)
novadock --settings # Open settings (-s)
Customisation
Support
If you enjoy NovaDock, consider supporting development:
License
This project is licensed under the GPL-3.0 license.
