~/talk

Packing your Ruby application into a single executable

Talkat RubyConf 2017 · 2017-11-15..11-17· [ruby]
slides:none on file

A tool called ruby-packer compiles a Ruby runtime, project files and small libraries into a single executable (examples shown at ~33–46 MB) that runs on Windows, macOS and Linux and self-updates by downloading and replacing itself. The packer embeds a compressed SquashFS image in-memory at __enclose_io_memfs__, uses libsquash to mirror filesystem syscalls, issues virtual file descriptors for packed files, extracts native extensions to temp files at dlopen time, and redirects Rails’ writable paths to temporary directories so apps actually run. libautoupdate provides the auto-update protocol.

AI-written summary · about

  1. 0:00Single executable Ruby apps
  2. 3:00Traditional Ruby distribution problems
  3. 5:36Benefits of single executable
  4. 7:51Introducing ruby-packer
  5. 12:43Virtual file system
  6. 17:10Technical implementation with libsquash
  7. 21:51SquashFS and cross-platform
  8. 24:03Native extensions and Rails
  9. 27:08Packaging process
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.