Tebako

Tebako Windows support at v0.6.0!

Author’s picture Maxim Samsonov on 01 Apr 2024

Background

Tebako is an executable packager.

It packages a Ruby solution with the key idea:

one Ruby application ⇒ one Tebako image

Windows support at v0.6.0

Prior to v0.6.0, Tebako supported packaging for the platforms:

From v0.6.0, Tebako now adds Windows 2019, Windows 2022 targets to the mix.

As of today, Tebako officially supports the following platforms:

  • Linux platforms using glibc (Ubuntu, etc)

  • Linux platforms using musl (Alpine Linux)

  • macOS platforms

  • Windows 2019, Windows 2022 targets using MinGW ucrt64 toolchain

Trying out Tebako on Windows

The simplest approach to setup Tebako packaging environment on Windows is to use the Ruby development environment provided by RubyInstaller.

For example, Ruby+Devkit 3.1.4-1.

Once it is installed, use the following commands to install additional packages and Tebako in cmd:

ridk enable ucrt64

pacman -S git tar bison flex toolchain make cmake
          boost diffutils libevent double-conversion
          fmt glog dlfcn gtest autotools ncurses libyaml

gem install tebako

Current limitations

There are several caveats with Windows support for now, and they will be addressed in due time:

  • Only Ruby 3.1.4 is supported on Windows.

  • Gem with native extensions that use advanced or non-standard build systems are not supported yet.

Unsupported gems we know of include (not a complete list of course):

Note
The list of unsupported gems will be updated as we encounter them.

The Tebako team plans to address these limitations in the future releases.

We will soon publish a blog post for Akiba users on how to migrate from Akiba to Tebako for Windows.

Conclusion

Tebako now supports single-binary packaging for Ruby on all major platforms!

Pack away…​