Preskočiť na hlavný obsah

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 platformyCieľUpstream zdroj
WinWindows x86_64 (UCRT)RubyInstaller2 — prenosný archív .7z (bez inštalátora, bez MSYS2 DevKit)
UnixLinux x86_64 (glibc)Homebrew portable-ruby — x86_64_linux bottle
DarwinARMmacOS 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 / referenciaObsah
main / masterIba toto README — žiadny funkčný obsah
CoreSkripty handlera CMake na použitie artefaktu
BinIba 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 + .hash priamo do vetvy Bin a tento commit označí značkou Bin/<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​

Príspevky sú vítané! Otvorte prosím pull request.