DEV Community

Cover image for Glimmer DSL for SWT Supports Linux DEB/RPM Packaging
Andy Maleh
Andy Maleh

Posted on

3 1

Glimmer DSL for SWT Supports Linux DEB/RPM Packaging

Glimmer DSL for SWT v4.21.2.0 just added support for Linux DEB/RPM native executable packaging (while still supporting the older GEM packaging alternative), rendering Linux a 1st class packaging citizen just like Mac, which has support for APP/DMG/PKG native executables/installers, and Windows, which has support for MSI/EXE native executables/installers. Native Executable Packaging is one of the features that separate Glimmer DSL for SWT from the pack (do not know any other Ruby desktop GUI up-to-date library with reliable fully-contained native executable packaging)

Here is the full list of changes:

  • Support Linux packaging of deb/rpm native executables (not just gems) through standard glimmer package call (e.g. glimmer package[deb] or glimmer package[rpm])
  • Update Glimmer::SWT::ImageProxy implementation of image loading from JAR to use JRuby.runtime.jruby_class_loader.get_resource_as_stream(file_path).to_io.to_input_stream
  • Remove scaffolding/packaging building/using of a generated Java Resource class
  • Force installing gem 'psych', '3.3.2' in scaffolded app as a temporary workaround to psych issues with the latest jruby (jruby-9.3.1.0)

To learn more about packaging with Glimmer DSL for SWT, check out the Glimmer Packaging and Distribution reference document.

Here is a screenshot of the generated RPM installer (on Red Hat Enterprise Linux) upon running:

glimmer package[rpm]
Enter fullscreen mode Exit fullscreen mode

rpm

Here is a screenshot of the generated DEB installer (on Linux Mint Cinnamon) upon running:

glimmer package[deb]
Enter fullscreen mode Exit fullscreen mode

deb

If you are curious about previous Mac and Windows support too, here are screenshots of the generated Mac DMG installer upon running:

glimmer "package[dmg]"
Enter fullscreen mode Exit fullscreen mode

dmg license

dmg

And, here is a screenshot of the generated Windows MSI installer upon running:

glimmer "package[msi]"
Enter fullscreen mode Exit fullscreen mode

msi

Happy Glimmering!

Image of Datadog

Create and maintain end-to-end frontend tests

Learn best practices on creating frontend tests, testing on-premise apps, integrating tests into your CI/CD pipeline, and using Datadog’s testing tunnel.

Download The Guide

Top comments (0)

Sentry image

See why 4M developers consider Sentry, “not bad.”

Fixing code doesn’t have to be the worst part of your day. Learn how Sentry can help.

Learn more

👋 Kindness is contagious

Please leave a ❤️ or a friendly comment on this post if you found it helpful!

Okay