Planet Bluesabre

All the latest from Xfce, Xubuntu, & Friends.

menulibre (2.2.2-2) unstable

[ Debian Janitor ]

  • Remove constraints unnecessary since buster:
    • Build-Depends: Drop versioned constraint on libgnome-menu-3-dev and python3-distutils-extra.
    • menulibre: Drop versioned constraint on gir1.2-gmenu-3.0, gnome-menus and python3-gi in Depends.

MenuLibre 2.3.0 Released

What’s New?

New Features

  • Added experimental support for the MATE desktop environment (#40), as found in Solus and Ubuntu MATE

  • Added support for the Unity desktop environment, as found in Ubuntu Unity

  • Added support for the admin:// protocol for editing root-owned files in the parsing errors dialog

  • Added a new prompt for automatically restarting the application menu when edits cannot be immediately applied

  • Added an uninstallation script (not that you’d ever need it)

Bug Fixes

  • AppStream: Do not install appdata.xml.in (#85)

  • AppStream: Fix screenshot URLs (404 errors)

  • Desktop Environments: Remove empty menubar on Ubuntu's GNOME

  • Editor: Escape quoted percentage arguments (#93)

  • Editor: Fixed copying filename with Ctrl+C

  • Startup: Assume menu loading failed when the menu is empty

General

  • AppStream: Add OARS rating

  • AppStream: Add developer name

Updated Translations

Catalan, Dutch, Finnish, French, Italian, Lithuanian, Malay, Malay (Arabic), Polish, Spanish

Adding Support for MATE (and other environments)

Adding (or fixing) support for the MATE desktop environment proved to be a challenge. Due to some incompatibility been gnome-menus, xdg-desktop-menu, MATE, and probably something that MenuLibre is doing wrong with all three… MenuLibre was failing to read the MATE directories which resulted in an always-empty menu structure. Getting past that, I found that some updates such as renaming menu items would either fail to update the menu or add duplicate directories.

A screenshot of MenuLibre without any detected menu items.

MenuLibre 2.2.3 failed to detect any menus in the MATE desktop environment.

The first improvement that came out of this series of fixes was to correctly determine that an empty menu is one that failed to load. MenuLibre will now correctly capture this and present the diagnostic dialog at startup to help with reporting a bug.

A screenshot of MenuLibre showing menu loading errors.

When MenuLibre correctly detects a loading error, it will display diagnostic information that can be used to identify related issues.

The second improvement was adding support for the vendor-prefixed directory structures. The KDE support already had this to some extent, but it’s now been further refined and should work for any desktop environment. Launchers found in vendor/vendor-*.desktop paths are now properly supported.

Third, and this is when things start getting hacky, was adding support for MATE in such a way that all of the systems would play together nicely. At startup, MenuLibre will now sync vendor directories (e.g. mate/mate-accessories.directory) to your user path and create temporary symbolic links to the top level:

  • ~/.local/share/desktop-directories/mate/mate-accessories.directory

  • ~/.local/share/desktop-directories/mate-accessories.directory

This allows everything to speak the same language. When MenuLibre writes the menu file, it will resolve the real paths so the symbolic links are not needed, and clean up after itself. I don’t love this solution, but it’s proven to be the most stable.

A screenshot of MenuLibre and the files created to properly support loading the menus.

By copying the system directory files and linking to them, MenuLibre is able to correctly read and write to the MATE applications menu.

The final improvement that came from adding support for MATE was accepting that not all menu updates can be made on the fly. MenuLibre will now prompt you to automatically restart your menu (the panels on MATE and Xfce, and Unity shell) when updates fail to apply. This feature is limited to only MATE, Xfce, and Unity for now.

A screenshot of MenuLibre and its menu restart prompt.

In supported desktop environments, MenuLibre can automatically restart the applications menu to apply any additional updates.

Next Steps

I’m going to continue improving upon MenuLibre in the coming weeks but I’d like to get some early feedback on the features and fixes introduced in MenuLibre 2.3.0. Please report any issues on GitHub and try to refrain from shipping this development release on production systems.

Next, I’m going to start work on a snapshot system that will make it easier to reverse changes or even completely undo the changes MenuLibre makes to your system. There have been far too many reports of failed menu updates and empty menus and MenuLibre needs to better protect its users.

Downloads

Source tarball (sig)

MenuLibre 2.3.0

Please note that this is a development release.

The highlight of this release (and the feature most needing testing) is support for the MATE desktop environment, at least as it is found in Solus and Ubuntu MATE. Other notable features are a new uninstallation script and improved automatic quoting support for launcher arguments.

Bug Fixes

  • AppStream: Do not install appdata.xml.in (#85)
  • AppStream: Fix screenshot URLs
  • Desktop Environments: Add support for admin:// protocol (#62)
  • Desktop Environments: Add support for MATE (#40)
  • Desktop Environments: Add support for Unity
  • Desktop Environments: Remove empty menubar on Ubuntu's GNOME
  • Desktop Environments: Suggest restarting menu when edits cannot be applied
  • Editor: Escape quoted percentage arguments (#93)
  • Editor: Fixed copying filename with Ctrl+C
  • Setup: Add an uninstall script (#80)
  • Startup: Assume menu failed to load when empty

General

  • AppStream: Add OARS rating
  • AppStream: Add developer name

Updated Translations

Catalan, Dutch, Finnish, French, Italian, Lithuanian, Malay, Malay (Arabic), Polish, Spanish

blueman (2.2.5-1) unstable

  • New release

xfce4-taskmanager (1.5.4-1) unstable

  • New upstream version 1.5.4

thunar-archive-plugin (0.5.0-1) unstable

  • Team upload.

[ Debian Janitor ]

  • Trim trailing whitespace.
  • Set debhelper-compat version in Build-Depends.
  • Refer to specific version of license GPL-2+, LGPL-2+.
  • Apply multi-arch hints.
    • thunar-archive-plugin: Add Multi-Arch: same.

[ Unit 193 ]

  • New upstream version 0.5.0.
    • Drop patch, upstreamed. Refresh remaining.
  • d/watch: Use uscan special strings.
  • d/control:
    • Bump DH compat to 13.
    • R³: no.
    • Add ‘Homepage’ field.
  • d/rules: Drop –as-needed and dh_missing override, now default.
  • d/thunar-archive-plugin.docs: Drop README, removed upstream.
  • Update Standards-Version to 4.6.1.

xfce4-taskmanager (1.5.3-1) unstable

  • New upstream version 1.5.3

xfce4-terminal (1.0.4-1) unstable

  • New upstream version 1.0.4

pidgin (1:2.14.9-2ubuntu1) kinetic

  • Minimize delta with Debian: remaining changes:
    • Bump epoch (change committed on git)
    • add unity integration
    • update preferences file.
    • add Ubuntu patches:
      • 04_let_crasher_for_apport.patch
      • 05_default_to_irc_ubuntu_com.patch
      • 10_docklet_default_off.patch
      • 11_buddy_list_really_show.patch
      • 13_sounds_and_timers.patch
      • 60_1024x600_gtkpounce.c.patch
      • 60_1024x600_gtkprefs.c.patch
      • pounce-webview.patch

xfce4-terminal (1.0.3-1) unstable

  • fix typo in README.Debian
  • New upstream version 1.0.3