Artefakt Ruby
Prenosná, samostatná distribúcia interpretera Ruby. Tento repozitár využíva Embedbits Platform Artifact Handler na vyhľadanie, stiahnutie, overenie a konfiguráciu interpretera Ruby v následných embedded build nástrojoch — primárne na spúšťanie generátora mockov CMock a skriptov generátora test runnera Unity bez závislosti od toho, aký Ruby (alebo či vôbec) je nainštalovaný na hostiteľskom stroji.
Tento repozitár je rozdelený do troch vetiev/referencií podľa úlohy — vetva main (master), ktorú práve čítate, obsahuje iba túto dokumentáciu; skripty handlera sú vo vetve Core a verzované binárky sa publikujú ako GitHub Releases ukotvené vo vetve Bin.
Obsah repozitára
main / master
└── README.md ← This document — no other content
Core
├── ArtifactConfig.cmake ← Artifact metadata (name, version constraints, asset naming)
└── CMakeRubyDefaults.cmake ← Ruby integration logic (interpreter path setup)
Bin (anchor branch — no tracked binary files)
└── (empty commits only; each release tag points here)
Úloha v platforme
Upstream GitHub (Embedbits)
────────────────────────────────────── ──────────────────────────────────────────
oneclick/rubyinstaller2 Artifact-ruby
rubyinstaller-<ver>-<rev>-x64.7z ──► main / master → README only (this document)
Homebrew/homebrew-portable-ruby Core → ArtifactConfig.cmake, CMakeRubyDefaults.cmake
portable-ruby-<ver>.<os>.bottle.tar.gz Bin → Anchor branch (empty commits)
Releases → ruby-<version>-<platform>.zip + .hash
tagged Bin/<version>-<platform>
Upstream Ruby publikuje iba zdrojový kód, preto Ruby_Importer.sh kombinuje dva dobre udržiavané zdroje prenosných buildov a oba prebalí do .zip s koreňovým adresárom inštalácie Ruby (bin/, lib/, ...) na najvyššej úrovni archívu.
Podporované platformy
| Kód platformy | Cieľ | Upstream zdroj |
|---|---|---|
Win | Windows x86_64 (UCRT) | RubyInstaller2 — prenosný archív .7z (bez inštalátora, bez MSYS2 DevKit) |
Unix | Linux x86_64 (glibc) | Homebrew portable-ruby — x86_64_linux bottle |
DarwinARM | macOS arm64 (11+) | Homebrew portable-ruby — arm64_big_sur bottle |
Pokrytie verzií sa líši podľa platformy. RubyInstaller2 publikuje každé vydanie Ruby, zatiaľ čo Homebrew buduje iba verzie, ktoré sám dodáva. Daná verzia preto môže existovať iba ako
Bin/<version>-Win. Vyberte verziu dostupnú pre každú platformu, ktorú váš projekt potrebuje (napr.3.4.5).
Ak upstream prebalí rovnakú verziu Ruby (prípona -<rev> v RubyInstaller, prípona _<rev> v Homebrew), importuje sa iba najvyššia revízia. Upstream predvydania sa ignorujú.
Štruktúra vetiev
| Vetva / referencia | Obsah |
|---|---|
main / master | Iba toto README — žiadny funkčný obsah |
Core | Skripty handlera CMake na použitie artefaktu |
Bin | Iba kotviaca vetva — nie sú v nej commitnuté žiadne binárky |
Značka vydania Bin/<version>-<platform> | GitHub Release s archívom .zip a jeho súborom s kontrolným súčtom .hash |
Poznámka: Na Git hostingu bez Releases API (Azure DevOps) ten istý importér commitne
.zip+.hashpriamo do vetvyBina tento commit označí značkouBin/<version>-<platform>. Handler CMake transparentne spracuje obe formy.
Stiahnutie vydania
gh release download Bin/3.4.5-Unix --repo Embedbits/Artifact-ruby --pattern "ruby-3.4.5-Unix.*"
Štruktúra balíka
ruby-<version>-<platform>.zip
├── bin/ ← ruby / ruby.exe, gem, bundle, ...
├── lib/ ← standard library and default gems
└── ...
Verzovanie
Verzie artefaktu zodpovedajú priamo verziám vydaní Ruby:
3.3.8, 3.4.5, 4.0.7, ...
Poznámky
- Inštalácia nie je potrebná — oba upstream buildy sú premiestniteľné a spustia sa z ľubovoľného adresára.
- Build pre Windows neobsahuje MSYS2 DevKit, takže s ním nie je možné kompilovať gemy s natívnymi rozšíreniami v C. Nástroje napísané čisto v Ruby, ako CMock a skripty Unity, ho nepotrebujú.
- Offline použitie je podporované, keď je artefakt lokálne v cache.
Licencia
Ruby sa distribuuje pod duálnou licenciou Ruby License / BSD-2-Clause. Podrobnosti nájdete na: https://www.ruby-lang.org/en/about/license.txt
Buildy RubyInstaller2 a Homebrew portable-ruby obsahujú ďalšie knižnice tretích strán (OpenSSL, libyaml, libffi, zlib a ďalšie), každú pod vlastnou licenciou.
Autori
- Mr.Nobody — embedbits.com
Príspevky sú vítané! Otvorte prosím pull request.