Skip to main content

Recipe for installing ruby gems

Using this recipe you can easily install ruby gems packages into buildout environment.

All executable files from gem packages are available in bin-directory.

Usage

[buildout]
parts =
    rubygems

[rubygems]
recipe = rubygemsrecipe
gems =
    sass
    compass==0.10

After running buildout you can use SASS from buildout environment:

./bin/sass --version

Options

gems

list of gem package names, also you can specify gem version, example: sass==3.1.1.

url

rubygems zip download url, if not specified, recipe will try to find most recent version.

version

rubygems version, if not specified, recipe will try to find most recent version. Mutually exclusive with url option.

ruby-executable

A path to a Ruby executable. Gems will be installed using this executable.

deployment

If set to true, the version of each gem dependency must be provided in gems option. Default value is not allow-picked-versions.

gem-options

Extra options, that will be passed to gem executable. Example:

gem-options =
    --with-icu-lib=${icu:location}/lib/
    --with-icu-dir=${icu:location}/
environment

Possibility to add or override environment variables. Example:

environment =
    LDFLAGS = -L${icu:location}/lib -Wl,-rpath=${icu:location}/lib
    CFLAGS = -I${icu:location}/include

Change History

0.4.4 (2024-03-19)

  • Adapt imports to moved path in slapos.recipe.build

0.4.3 (2021-10-01)

  • Clean up part location to make install() idempotent

  • Check url and version mutually exclusive options are not both in options

  • Fix version comparison for major version greater than 9

  • Remove hardcoded/meaningless/old version number in the path

  • Style: import UserError and use Recipe().install() one-liner

0.4.2 (2021-07-15)

  • Fix encoding error in Python2 by using subprocess.checkoutput method with universal_newlines option

  • Store gem dependency commands return value in files instead of dictionnary

  • Fix gems constraints detection failures for similar version symbol ‘~>’ by extending the regex

  • Fix gem search pattern for RubyGems >= 3.0.0 by trimming symbols ‘/’ and ‘'

  • Handle version exclusion constraint symbol ‘!=’

0.4.1 (2021-06-24)

  • Add allow-picked-version as default value for deployment mode.

0.4.0 (2021-06-17)

  • Add deployment mode.

  • setup: define test dependencies with extras_require [test] (instead of deprecated tests_require).

0.3.0 (2020-10-29)

  • Project is hosted and maintained by Nexedi; URL changed to https://lab.nexedi.com/nexedi/rubygemsrecipe

  • Workaround for shebang length limit

  • Add support for RubyGems >= 2.0.0 by replacing –no-rdoc & –no-ri with –no-document

  • Fix Python 3 support by replacing hexagonit.recipe.download dependency with slapos.recipe.build

0.2.2 (2015-08-18)

0.2.1 (2014-11-21)

0.2.0 (2014-11-20)

  • Native Python 2 and Python 3 support using six, without use_2to3.

  • Tests for Python 2 and Python 3 using tox with 100% test coverage.

  • All subprocess commands are rewritten to run without shell=True.

0.1.8 (2014-01-26)

  • Feature: Python 3 support.

  • Feature: added ‘url’, ‘gem-options’ and ‘environment’ options.

  • Fix: add quotes to values of environment variables.

0.1.7 (2012-05-24)

  • Feature: added ‘ruby-executable’ option, thanks to desaintmartin.

0.1.6 (2012-04-26)

  • Fix: pass all arguments as separate arguments instead of a single string.

0.1.5 (2012-01-06)

  • Fix: use each version only for the line it’s specified in.

0.1.4 (2012-01-03)

  • You can specify a version for each gem with a syntax similar to python eggs.

0.1.3 (2011-12-28)

  • Added ‘version’ option to specify explicit rubygems version.

0.1.2 (2011-11-09)

  • New version of rubygems includes symlinks in .tgz archyve and extracted by setuptools.archive_util extractor ignores all symlinks. This causes missing files in extracted folder. Now rubygemsrecipe downloads .zip archyve instead of .tgz.

0.1.1 (2011-10-04)

  • Fixed issue with name of gem executable, which can be different depending on how ruby is istalled on host system.

  • Install rubygems if gem executable is not found, not rubygems direcotry.

0.1 (2011-09-07)

  • Initial public release.

Metadata

Release files for rubygemsrecipe 0.4.4

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for rubygemsrecipe 0.4.4
File Size Uploaded Provenance Actions
rubygemsrecipe-0.4.4.tar.gz 7.5 kB Without provenance Details for rubygemsrecipe-0.4.4.tar.gz

Release files / rubygemsrecipe-0.4.4.tar.gz

Download URL rubygemsrecipe-0.4.4.tar.gz
Size 7.5 kB
Tags Source
SHA-256 checksum
How to use checksums
cb0ff4fff3f490190c4f0cdfd23670cf883e79792ca17138fee40117f615a704
BLAKE2b-256 checksum
How to use checksums
9c3f13139b8bb267b3ff0ebdd7bb28b0daed58487cf70d1f4375db2e1815d240
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.3.0 pkginfo/1.4.2 requests/2.25.1 setuptools/52.0.0 requests-toolbelt/0.9.1 tqdm/4.57.0 CPython/3.9.2

Security for rubygemsrecipe 0.4.4

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page