awesome-repositories.com
Blog
MCP
awesome-repositories.com

Découvrez les meilleurs dépôts open-source grâce à notre recherche par IA.

ExplorerRecherches sélectionnéesAlternatives open sourceLogiciels auto-hébergésBlogPlan du site
ProjetÀ proposNotre méthodologiePresseServeur MCP
Mentions légalesConfidentialitéConditions d'utilisation
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
rvm avatar

rvm/rvm

0
View on GitHub↗
5,192 stars·1,043 forks·Shell·11 vuesrvm.io↗

Rvm

RVM est un gestionnaire de versions Ruby et un outil d'automatisation de build conçu pour installer et basculer entre plusieurs versions de l'interpréteur Ruby sur un seul système. Il sert d'isolateur de dépendances et de wrapper d'environnement shell, permettant la création d'ensembles de bibliothèques nommés pour éviter les conflits de version entre différents projets.

Le projet se distingue comme un orchestrateur de déploiement qui automatise le provisionnement des runtimes Ruby sur des serveurs distants et des agents de build. Il génère des wrappers exécutables autonomes pour garantir que des runtimes et des ensembles de bibliothèques spécifiques sont chargés pour les tâches planifiées, les gestionnaires de services et les scripts d'initialisation système.

L'outil couvre un large éventail de capacités, notamment la compilation automatique des sources avec des drapeaux de compilation personnalisés, l'installation dans l'espace utilisateur pour éviter les privilèges root, et l'intégration avec divers shells et éditeurs de texte. Il fournit également une infrastructure pour la synchronisation d'environnements distants, les tests de compatibilité d'intégration continue et l'intégration de serveurs d'applications.

Features

  • Per-Project Library Isolations - Maintains separate directory hierarchies for libraries per Ruby version to prevent dependency conflicts between projects.
  • Multi-Interpreter Support - Downloads and configures multiple language implementations and versions on a single system to support varying project requirements.
  • Ruby Version Managers - Installs and switches between multiple Ruby interpreter versions on a single system to support different project requirements.
  • Environment Wrappers - Creates wrapper scripts that preload specific language versions and dependency sets for execution in non-interactive shells.
  • Isolated Environment Managers - Creates self-contained environments including specific interpreter versions and dedicated dependencies to prevent conflicts.
  • Language Environment Provisioning - Automates the installation of the environment manager and language runtimes during system setup.
  • Dependency Isolation - Implements named library sets to prevent dependency conflicts between different Ruby projects.
  • Runtime Version Switching - Changes the active interpreter for the current shell session or based on a project configuration file.
  • Shell Initialization Scripts - Uses shell profile scripts to initialize the environment manager and load configurations automatically during login.
  • Shell Initialization Managers - Automates the injection of management logic into shell startup files to control Ruby environment variables.
  • Dependency Isolation - Assigns distinct library sets to different projects on an application server to prevent dependency conflicts.
  • Language Runtime Provisioning - Provisions Ruby runtimes and environments across remote servers and build agents using configuration management tools.
  • Isolated Runtime Environments - Creates isolated environments with specific language versions and dedicated dependencies to prevent conflicts between projects.
  • Environment Wrappers - Generates standalone scripts that load specific interpreters and environments for service managers and init scripts.
  • Interpreter Source Compilations - Provides automated source compilation of Ruby interpreters with custom compiler flags for specific system library links.
  • Isolated Library Sets - Creates, deletes, copies, and switches between independent sets of libraries for a specific interpreter to prevent conflicts.
  • Language Build Automation - Provides automated source compilation of the Ruby interpreter with custom compiler flags and system library links.
  • Language Interpreters - Downloads and installs specific versions of various language implementations on a single system.
  • Runtime Environment Managers - Manages the creation and switching of named library sets to ensure dependency isolation.
  • Shell Environment Injections - Injects shell functions into sessions to dynamically modify the PATH and environment variables for runtime selection.
  • Named Dependency Groups - Creates and switches between named groups of libraries for specific interpreters to avoid version conflicts.
  • Environment Path Injections - Dynamically updates the system PATH variable to prioritize selected Ruby interpreters over system defaults.
  • Remote Environment Management - Manages dependencies and ensures automatic installation of the correct interpreter for remote deployment tasks.
  • Build Environment Configurators - Configures specific interpreters and library sets on build agents to ensure consistent automated build environments.
  • Compiler Flag Customization - Builds interpreter versions using custom compiler flags to link against external system or manager-provided libraries.
  • Deployment Automation - Automates the process of updating servers with fresh releases and managing transitions from staging to production.
  • Project Ecosystem Detection - Automatically detects and loads specific Ruby interpreters and project environments based on the directory.
  • Remote Environment Configurations - Provides mechanisms to synchronize the language version and configuration between local development and remote production platforms.
  • Runtime Environment Integrations - Connects Ruby interpreters and library sets with text editors, terminal emulators, and shell profiles for a seamless workflow.
  • Environment Wrapper Generators - Creates standalone executables that automatically load a specific Ruby interpreter and library set from any shell location.
  • Shell Integrations - Configures the environment manager for Zsh to ensure compatibility with prompt behavior and regex operators.
  • Configuration Management Integrations - Deploys and configures the environment manager across systems using Chef cookbooks for automated infrastructure management.
  • Environment Parity - Matches local language versions to remote platform stacks to ensure consistency between development and production.
  • Infrastructure as Code Deployments - Uses programmable infrastructure definitions to install and configure language interpreters across multiple machines.
  • Language Runtime Deployment - Automates the provisioning of Ruby runtimes across remote servers and build agents to align development and production.
  • Remote Toolkit Deployments - Automates the deployment of the environment manager and specific language runtimes to remote servers.
  • Runtime Dependency Enforcement - Ensures deployment tasks utilize the correct language version and library sets during project updates.
  • User-Mode Installations - Compiles and installs Ruby runtimes into user-owned directories to avoid requiring root privileges.
  • Application Server Integrations - Links specific language versions to web application servers to ensure apps execute in the correct environment.
  • Shell Script Wrappers - Generates shell scripts that preload specific Ruby interpreters and library sets for execution outside interactive shells.
  • Build Dependency Installers - Detects and utilizes system package managers to install native libraries required for building language interpreters from source.
  • Interpreter Source Compilation - Downloads and compiles specific language implementations with configurable language modes and build options.
  • Named Dependency Set Organization - Organizes groups of libraries into named sets that can be shared across different environments or mapped to branches.
  • Runtime Executable Wrappers - Creates standalone executable scripts that automatically load a specific Ruby version and environment for cron jobs or service managers.
  • Service Environment Wrappers - Generates standalone scripts that load a specific interpreter and library set to start applications via system init scripts.

Historique des stars

Graphique de l'historique des stars pour rvm/rvmGraphique de l'historique des stars pour rvm/rvm

Recherche par IA

Explorez plus de dépôts awesome

Décrivez vos besoins en langage naturel — l'IA classe des milliers de projets open source sélectionnés par pertinence.

Start searching with AI

Alternatives open source à Rvm

Projets open source similaires, classés selon le nombre de fonctionnalités partagées avec Rvm.
  • rbenv/rbenvAvatar de rbenv

    rbenv/rbenv

    16,710Voir sur GitHub↗

    rbenv is a Ruby version manager and shell environment manager designed to install, switch between, and manage multiple versions of the Ruby programming language. It functions as a project runtime isolator and an extensible versioning framework that ensures the correct Ruby binaries are executed based on the current context. The system uses a shim-based command interception model to resolve the active version before delegating execution to the binary. It allows for locking specific Ruby versions and environment variables to individual directories, ensuring project environment isolation. The ar

    Shellbashrubyruby-installation
    Voir sur GitHub↗16,710
  • sstephenson/rbenvAvatar de sstephenson

    sstephenson/rbenv

    16,711Voir sur GitHub↗

    rbenv is a Ruby version manager and shell shim environment manager. It allows for the installation of multiple Ruby versions on a single machine and coordinates the selection of the active version based on the current directory or shell session. The tool functions as an extensible command line framework that intercepts executable calls using shell shims. These shims route requests to the selected language version, ensuring environment isolation by storing binaries in independent directories. The system includes capabilities for language runtime administration, including the ability to downlo

    Shell
    Voir sur GitHub↗16,711
  • pex-tool/pexP

    pex-tool/pex

    4,218Voir sur GitHub↗

    Pex is a Python application bundler and isolated environment manager. It packages programs and their entire dependency trees into single executable files to simplify deployment across different environments. The tool functions as a portable executable creator by bundling multiple platform-specific distributions into a single file. This ensures that a program can run across different operating systems by mapping target platforms to compatible binary distributions. The system provides capabilities for dependency management and isolated execution. It can launch scripts or interpreters within te

    Python
    Voir sur GitHub↗4,218
  • version-fox/vfoxAvatar de version-fox

    version-fox/vfox

    3,910Voir sur GitHub↗

    Vfox is a command-line utility designed to manage multiple programming language runtimes and development tools on a single machine. It provides a unified interface for installing, switching, and configuring software versions across different operating systems, ensuring consistent development environments. The project distinguishes itself through a modular, plugin-based architecture that allows for the integration of diverse language runtimes and utilities beyond built-in defaults. It utilizes a combination of shim-based execution, symlink management, and dynamic shell-hook environment injecti

    Goasdfbashcli
    Voir sur GitHub↗3,910
Voir les 30 alternatives à Rvm→

Questions fréquentes

Que fait rvm/rvm ?

RVM est un gestionnaire de versions Ruby et un outil d'automatisation de build conçu pour installer et basculer entre plusieurs versions de l'interpréteur Ruby sur un seul système. Il sert d'isolateur de dépendances et de wrapper d'environnement shell, permettant la création d'ensembles de bibliothèques nommés pour éviter les conflits de version entre différents projets.

Quelles sont les fonctionnalités principales de rvm/rvm ?

Les fonctionnalités principales de rvm/rvm sont : Per-Project Library Isolations, Multi-Interpreter Support, Ruby Version Managers, Environment Wrappers, Isolated Environment Managers, Language Environment Provisioning, Dependency Isolation, Runtime Version Switching.

Quelles sont les alternatives open-source à rvm/rvm ?

Les alternatives open-source à rvm/rvm incluent : rbenv/rbenv — rbenv is a Ruby version manager and shell environment manager designed to install, switch between, and manage multiple… sstephenson/rbenv — rbenv is a Ruby version manager and shell shim environment manager. It allows for the installation of multiple Ruby… version-fox/vfox — Vfox is a command-line utility designed to manage multiple programming language runtimes and development tools on a… pex-tool/pex — Pex is a Python application bundler and isolated environment manager. It packages programs and their entire dependency… x-cmd/x-cmd — x-cmd is an AI agent orchestrator, cloud infrastructure CLI, and cross-platform package manager that provides an… leoafarias/fvm — fvm is a version manager and orchestrator for the Flutter and Dart software development kits. It enables the…