Xfce Wiki

Sub domains

garcon - menu library

Garcon is an implementation of the freedesktop.org compliant menu specification. It is based on GLib/GIO and aims at covering the entire specification except for legacy menus. It was started as a complete rewrite of the former Xfce menu library called libxfce4menu, which, in contrast to garcon, was lacking menu merging features essential for loading menus modified with menu editors.


Garcon covers almost every part of the menu specification except for legacy menus and a few XML attributes. In contrast to libxfce4menu, it can also load menus modified with menu editors such as Alacarte as menu merging is now supported. The only crucial feature still missing is monitoring menus and menu items for changes. This is something that will be worked on for the next release.

The garcon API will most likely not be frozen until its 1.0.0 release (It is currently at version 0.7.1)!

Required Packages

Debugging Support

garcon currently supports three different levels of debugging support, which can be setup using the configure flag `–enable-debug` (check the output of `configure –help`):

Argument Description
——- ———–
`yes` This is the default for Git snapshot builds. It adds all kinds of checks to the code, and is therefore likely to run slower. Use this for development of garcon and locating bugs in garcon.
`minimum` This is the default for release builds. This is the recommended behaviour.
`no` Disables all sanity checks. Don't use this unless you know exactly what you do.

Back To Top

Latest Release

  • garcon 4.17.0 released (2022/05/15 20:56)
    garcon 4.17.0 is now available for download from
    What is garcon?
    Garcon is an implementation of the freedesktop.org menu specification
    replacing the former Xfce menu library libxfce4menu. It is based on
    GLib/GIO only and aims at covering the entire specification except for
    legacy menus.
    Release notes for 4.17.0
    [Please note that this is a development release.]
    - Bug Fixes:
      - build: Fix intltool lock file problem during make distcheck
      - garcon-gtk: Reduce latency when displaying the menu (#3, #5, !18)
      - garcon-menu-separator: Fix constructor (!22)
      - Fix build warnings (!19)
      - garcon-menu-item: Fix memory leaks (!21)
      - doc: Various fixes (#24, !20)
      - Fix build warning and remove redundant code (!17)
      - Reintroduce the science category (#20, !15)
      - menu-item: Add get/set for PrefersNonDefaultGPU (#21, !16)
      - garcon-gtk: Fix a small memory leak (!14)
      - Revamp the documentation to modernize and uniformize accross
        components (!13)
    - Translation Updates:
      Albanian, Amharic, Arabic, Armenian, Armenian (Armenia), Asturian,
      Basque, Belarusian, Bengali, Bulgarian, Catalan, Chinese (China),
      Chinese (Hong Kong), Chinese (Taiwan), Croatian, Czech, Danish,
      Dutch, Eastern Armenian, English (Australia), English (United
      Kingdom), Esperanto, Estonian, Finnish, French, Galician, Georgian,
      German, Greek, Hebrew, Hindi, Hungarian, Icelandic, Indonesian,
      Interlingue, Italian, Japanese, Kabyle, Kazakh, Korean, Lithuanian,
      Malay, Norwegian Bokmål, Norwegian Nynorsk, Occitan (post 1500),
      Polish, Portuguese, Portuguese (Brazil), Romanian, Russian, Serbian,
      Slovak, Slovenian, Spanish, Swedish, Telugu, Thai, Turkish,
      Ukrainian, Uyghur, Uzbek, Uzbek (Latin), Welsh

Previous Releases

Back to Top

Source Code Repository

Reporting Bugs

Back To Top

Back to main Xfce documentation page