Happy New Year! 2016 was a really big year for Lumina with the release of version 1.0.0, TrueOS adopting Lumina as it’s only supported desktop environment, the newfound availability of Lumina in many Linux distributions, and so much more. By the same token, 2017 is already shaping up to be another big year for Lumina with things like the new window manager on the horizon. So let’s start this year on the right foot with another release!

 

This release is primarily an enhancement to the current desktop systems with some new plugins, a new utility, and lots of updates for various things. However, in keeping with the focus on minimalism, this version also reduces or eliminates many things. First, the LuminaUtils library has been completely dismantled and is no longer installed or required as part of the Lumina infrastructure. Instead, the files within the library are broken into small, nearly standalone modules within the source tree so each tool can build or incorporate just the necessary class(es) directly into the utility itself. This results in faster and more stable binaries without the need to load any additional libraries on the system.  Second, we are putting a lot more work into depreciating external utilities and moving toward using the same libraries that Qt itself requires or uses (such as the XCB libraries on X11 systems). This phase is not yet finished, but we are making significant progress and expect to announce a large reduction in runtime dependencies later this year.

 

The one enhancement I want to highlight for this release is actually pretty minor within a developer’s mindset but ends up being significant from a user’s perspective: pre-defined profiles for system interface configurations. I have often mentioned that Lumina could be reconfigured to reproduce the interface from most other desktop environments, but now users can literally turn Lumina into a reasonable facsimile of Windows, Mac OSX, GNOME2/MATE, and the default XFCE interface with just a couple clicks of the mouse. While not an exact copy of these other systems (and I doubt it ever will be), it places all the normal buttons and functionality in the same places so users of these other systems can feel “right at home” with Lumina. For examples of these profiles, take a look at the version 1.2.0 screenshots on the Lumina website.

 

~~ Ken Moore ~~

 


Changelog from 1.1.0 to 1.2.0


Notable Changes:

  • Dismantle the Lumina library (libLuminaUtils.so) completely – no longer needed/installed
  • Disable the internal Lumina Theme engine from all utilities. Now it is only used by the desktop itself while all applications will use the global Qt5 theme engine.
  • New Panel Plugins:
    • “audioplayer” (panel version of the desktop plugin with the same name): Allows the user to load/play audio files directly through the desktop itself.
    • “jsonmenu” (panel version of the menu plugin with the same name): Allows an external utility/script to be used to generate a menu/contents on demand.
  • New Menu Plugins:
    • “lockdesktop”: Menu option for instantly locking the desktop session.
  • New Utilities:
    • `lumina-archiver`: This is a pure Qt5 front-end to the “tar” utility for managing/creating archives. This can also use the `dd` utility to burn a “*.img” file to a USB device for booting.

Individual Binaries:

lumina-calculator:

  • Clean up precision of reported results and how they are re-used for later calculations
  • Ability to clear/save history
  • Tag each result with “#X” and allow that shortcut to be used in an equation to recall the result of that calculation.
  • Add tons of scientific functionality to the calculator without making the interface bloated.

lumina-config:

  • Clean up the main page considerably: 2 columns, auto-expanded items, etc
  • In the main page, add the ability to set/change the current Qt5 theme engine for external applications.
  • Add entries for newer desktop backend systems (compositor start/skip detection, new plugins, etc)
  • Add a new page for managing Xorg input device properties (requires `xinput`).
  • Add pre-defined “profiles” to the interface/panels page. Current profiles: “No panels”, “Windows”, “GNOME2/MATE”, “XFCE”, and “Mac OSX”
  • Add the ability to “import” panel configuration settings from one monitor to another (even if the original monitor is not currently enabled/active).

lumina-desktop:

  • Fix up some wallpaper update issues with monitor resizes and Fluxbox eccentricity.
  • Add right-click passthrough to many desktop plugins so the overall “plugin” menu no matter where the click happens on the plugin.
  • Fix up the panel “autohide” functionality to it will work on screen edges *between* monitors as well.
  • Speed up the initial start of the desktop, but delay the auto-started applications by 1/2 second.
  • Clean up some mimetype detection routines.
  • Clean up some more systems to ensure they use the monitor ID for loading/saving desktop settings.
  • Clean up the boot splash when starting the desktop. Now it displays the version of the desktop and some random “message of the day” in addition to the normal loading indicators.
    NOTE: The “message of the day” may be overwritten/changed by creating a “lumina-motd” file/executable and placing it into the /etc directory alongside the luminaDesktop.conf file. If it is executable, it will run the file and print any text that is output, otherwise it will read the contents of the file as plaintext and show that (Example: a blank file will disable the motd).
  • Add a green background to the battery notifiers if the battery is fully charged but still plugged in.
  • Make the start menu open faster by only re-loading the favorites when the favorites change.
  • Make the “applauncher” panel plugin able to auto-complete the path to “*.desktop” files.
  • Make the “clock” panel plugin auto-adjust the number of lines of text to show depending on the panel size/orientation.
  • Adjust the margins in the menus to work better on 4K monitors.
  • Clean up some vertical-panel plugin behavior.

lumina-fm:

  • Fix up some issues with directory modifications through the right column of a split view.
  • Fix up the re-loading of the “show hidden files” option when starting new viewers
  • Re-enable drag and drop functionality (missed that with the latest overhaul to the viewers)
  • Fix an issue with symlinks in the path preventing the ZFS snapshot finder from working properly.

lumina-open:

  • Update the crash monitor to only trigger when the process actually crashes – disable the return code checking (some apps intentionally return non-zero and were getting flagged as crashes).

lumina-screenshot:

  • Add better error reporting when a screenshot can not get saved for some reason.
  • Cleanup the scaling rules for the zoom functionality.

lumina-search:

  • Apply more limits to the background search process handling.
  • Avoid trawling through the “proc” directory heirarchy at all costs.
  • Bump the time to start the live search from 1/3 to 1/2 second.

start-lumina-desktop:

  • Modify the Qt5/dbus crash workaround to avoid starting up a dbus session if at all possible.
  • Check/cleanup any lumina-desktop lockfiles

FreeBSD:

  • Add PulseAudio support for TrueOS PICO sessions.