Understanding Tebako Packaging Scenarios for Ruby Applications
A comprehensive guide to the different packaging scenarios supported by Tebako
玉手箱 JOURNAL
Engineering notes, release announcements, and deep dives into the world of packaging interpretive-language apps.
Answering "Is the project dead?": no. Maintenance continues under the tamatebako organization, and the dependency churn behind the recurring build breakage is being fixed at the root — by removing folly and Thrift from the stack entirely.
A comprehensive guide to the different packaging scenarios supported by Tebako
Thanks to Brad Gessler for his Tebako blog post! Here we clarify macOS Intel build capabilities and the intended gem release workflow to help developers implement Tebako more efficiently.
Tebako now offers Linux GNU and musl containers on amd64 and arm64 architectures with preinstalled Tebako environments.
Tebako 0.12.0 now provides an option to create packages based on Ruby 3.4.1 on Ubuntu, Alpine, macOS and Windows.
Tebako 0.11.0 separates runtime and application packaging for reusable Ruby execution, enhancing flexibility, efficiency, and simplified updates.
Tebako 0.9.0 introduces the ability to mount host folders to memfs, providing seamless packaging support for Ruby on Rails applications. This feature helps overcome the challenge of dealing with Rails' hardcoded paths for temporary files, caches, and sockets.
Tebako 0.8.7 introduces forward compatibility for Linux distributions that depend on the GNU C Library (`glibc`).
Tebako 0.8.0 now provides an option to create packages based on Ruby 3.3.3 and 3.3.4 on Ubuntu, Alpine, macOS and Windows.
Tebako 0.7.0 now provides full support for Ruby on Windows 2019, Windows 2022.
Tebako now officially supports Windows, including Windows 2019, Windows 2022 targets using MinGW ucrt64, at version 0.6.0 released today. Now Tebako supports packaging for most major platforms: Linux, macOS and Windows.
Building Ruby with minimal external dependencies is a challenging task loosely supported by the community. We faced numerous issues on this path and had to resolve them creatively.
A Tebako package created from a Ruby application introduces four features that can negatively affect performance. In this post we discuss performance comparison of Tebako package and original application and show that negative impact is minimal.
Using SSL-powered features with Aibika may require additional handling of SLL certificates.
Aibika is a modernized version of the Ocra Ruby executable packager on Windows.
The distribution of Ruby applications can be considered an unsolved problem. By itself, Ruby does not provide a consistent and easy method for setting up and running a running application.
The distribution of Ruby applications can be considered an unsolved problem. By itself, Ruby does not provide a consistent and easy method for setting up and running a complex application.
The distribution of Ruby applications can be considered an unsolved problem. By itself, Ruby does not provide a consistent and easy method for setting up and running a complex application.