Haguichi 1.5.0 has been rebuild completely from the ground up featuring a redesigned user interface that takes advantage of GTK 4 and libadwaita. The main window flaunts an Adw.OverlaySplitView to display the network list and sidebar alongside each other or the sidebar as an overlay when the available width is very small. The sidebar itself received an improved layout based on Adw.ActionRows.

Furthermore, this version gained support for color schemes, offering the choice between dark (the current default) and light color schemes or to dynamically follow the system preferred color scheme.

Dark Light

Dark and light color schemes. Move slider left and right to compare.

Network List

The network list has been ported from the deprecated Gtk.TreeView to the newfangled Gtk.ListView. Buttons to refresh the network list and add networks are now overlaid in the bottom right corner.

When you search the network list, it is now possible to use multiple search terms by separating them with a (space) or + (plus sign) in order to find only results matching both terms and by using a , (comma) to find results matching either term. If no results are found, a friendly message is now displayed instead of an empty network list.

Preferences

Preferences are now implemented using Adw.PreferencesWindow, making all options searchable as well. Additionally, more actions regarding the Hamachi configuration have been moved to the preferences window, like changing the nickname and saving or restoring backups. In here you will also find the fancy new style selector to choose your desired color scheme.

Commands can now be easily reordered using drag and drop. And when you create or edit a command, you can press an info button to display all command variables that you can use.

View preferences screenshots

Quality of Life Enhancements

  • The online and total member count in the sidebar for selected networks now takes the client itself also into account.
  • Networks are now automatically selected immediately after you create or join them.
  • Hamachi is now automatically restarted if the hamachi set-pass command hangs when changing the network password.

Other Changes

  • Created new “Change Access” dialog for networks to set lock and approval mode combined.
  • Now making use of Adw.Toasts for any in-app notifications.
  • Utilized Gtk.Builder UI definitions to describe nearly all interface objects and eliminate lots of boilerplate code.
  • Reimplemented indicator to communicate with the SNI D-Bus interface directly and drop dependency on appindicator libraries that don’t support GTK 4.
  • Implemented Xdp.Portal to request permission to run in the background and to set background status when doing so.
  • Renamed --hidden command line option to --background or -b for short.
  • Changed accelerator to open preferences to Control+, following the GNOME standard for keyboard shortcuts.
  • Changed default network list update interval to 30 seconds.
  • Added support for zstd compressed tar archives when saving and restoring configuration backups.
  • Added line StartupNotify=true to .desktop file so that a spinning cursor is shown on launch.
  • Now using standard GLib functions for message logging so that important errors are written to the system logs.
  • Updated Brazilian Portuguese, Dutch, Japanese, Lithuanian, Spanish and Ukrainian translations.