Skip to content
Vala rewrite of SimplePanel - GitHub mirror
Branch: master
Clone or download
Type Name Latest commit message Commit time
Failed to load latest commit information.
.gitlab-ci CI: test Dockerfile Aug 20, 2018
app all: switch to GSettingsAction again. Apr 28, 2019
applets menu: optimize menumodel_widget_destroy Apr 29, 2019
cmake @ a156743 CMakeLists.txt: allow building without submodule. Aug 19, 2018
data appdata: change version to 0.5.0 Apr 20, 2019
po pot: generate with CMake, meson one is incorrect Apr 20, 2019
runner all: InfoData is not a public api. Apr 23, 2019
ui meson: show version.h to applets Jun 17, 2019
util meson: add version to util sources Jun 17, 2019
.clang-format Added configure script Apr 23, 2015
.gitignore Application busy mark May 1, 2015
.gitlab-ci.yml Update .gitlab-ci.yml Apr 29, 2019
.gitmodules modules: move to GitLab Jun 6, 2018
CMakeLists.txt CMakeLists.txt: add new check Apr 17, 2019
LICENSE README: update to reflect more lxpanel split Mar 19, 2019
configure Added configure script Apr 23, 2015 meson: Corretly use name keyword Jun 17, 2019
meson_options.txt Meson: alternative build system Apr 15, 2019
vala-panel.pc.cmake CMake: fix pkgconfig creation Apr 22, 2019

Vala Panel

This is Vala rewrite of SimplePanel, GTK3 LXPanel fork.


  • Rewrite core panel in Vala (0.2)
  • Rewrite builtin plugins in Vala using libpeas. (0.2)
  • Write Vala Panel Plugin wrapper for LXTray from simple-panel (it is less buggy) (0.2) (done in XEmbed plugin)
  • Make global menus from Unity Appindicator (rewrite it on Vala but without Ubuntu deps) (0.3) (see
  • Write a window buttons applet (0.3)
  • Going to C again (0.4.X)
  • Write Notification Center Applet (0.6)
  • Wayland support, make compositor and complete Wayland support(1.0)
  • Taskbar DBus library for compositor (1.0)
  • Redo ValaPanelIconGrid using GtkFlowBox and such wonders. (not needed since I am already using FlowBox everywhere)

TODO for 0.5.0

  • Drop libpeas in favor to applets-new (use GIO Extensions to implement).
  • Implement free applet actions (not only menu)
  • Made pack-type useful

TODO for 0.6.0

  • Be prepared for GTK4
  • Replace XEmbed to proxy and move it to extras
  • Remove all Solus code, rewrite IconTasks
  • Implement Layer Shell Wayland backend

Some notes about realization

Plugin-based panel. Users/developers can provide their own custom applets, which are fully integrated. They can be moved, added, removed again, and even broken.



  • GLib (>= 2.56.0)
  • GTK3 (>= 3.22.0)


  • libwnck (>= 3.4.7)
  • libX11
  • valac

Lastly, always set -DCMAKE_INSTALL_PREXIX=/usr when using cmake. Otherwise you won't be able to start the panel on most distros.


Special thanks

  • Ikey Doherty for icontasklist.
  • XFCE Team for XFCE Tasklist.
  • LXPanel team for creating a base for my fork. Vala Panel uses LXPanel's tray code and other inspirations (generic-config-dialog for applets and lxpanel-like remote command system).


You can’t perform that action at this time.