Add packages for default and bundled Ruby gems. (#10535)

* Update create_gem_packages.

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* Add default gems package.

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* Add default gems to core.

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* Handle gem names with underscores and dashes.

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* Try to make gem reinstalls faster.

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* Update awscli.

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* Adjust early gem install exit logic.

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* Adjust default packages script.

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* Gem install refactoring...

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* Refactor gem compile.

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* Fix create_gem_packages description.

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* Work around matrix removal breaking crew.

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

* lint

Signed-off-by: Satadru Pramanik <satadru@gmail.com>

---------

Signed-off-by: Satadru Pramanik <satadru@gmail.com>
This commit is contained in:
Satadru Pramanik, DO, MPH, MEng
2024-09-28 14:31:25 -04:00
committed by GitHub
parent 8fc94ad1f1
commit c78b28be9e
122 changed files with 1715 additions and 143 deletions

View File

@@ -454,7 +454,7 @@ def download
if !url
abort "No precompiled binary or source is available for #{@device[:architecture]}.".lightred
elsif url.casecmp?('SKIP') || @pkg.no_source_build?
elsif url.casecmp?('SKIP') || (@pkg.no_source_build? || @pkg.gem_compile_needed?)
puts 'Skipping source download...'
elsif @pkg.build_from_source
puts 'Downloading source...'
@@ -471,7 +471,7 @@ def download
# We want to skip when no_source_build is true during the build,
# but when we have built a binary we are in upgrade, and we need
# download since we need to extract the just generated binary.
next if @pkg.no_source_build? && !@pkg.in_upgrade && !@pkg.in_install
next if (@pkg.no_source_build? || @pkg.gem_compile_needed?) && !@pkg.in_upgrade && !@pkg.in_install
case File.basename(filename)
# Sources that download with our internal downloader
when /\.zip$/i, /\.(tar(\.(gz|bz2|xz|lzma|lz|zst))?|tgz|tbz|tpxz|txz)$/i, /\.deb$/i, /\.AppImage$/i, /\.gem$/i
@@ -711,10 +711,10 @@ def build_and_preconfigure(target_dir)
end
@pkg.in_build = false
# wipe crew destdir
FileUtils.rm_rf Dir["#{CREW_DEST_DIR}/*"], verbose: @fileutils_verbose
FileUtils.rm_rf Dir["#{CREW_DEST_DIR}/*"], verbose: @fileutils_verbose unless @pkg.superclass.to_s == 'RUBY'
puts 'Preconfiguring package...'
cache_build if CREW_CACHE_BUILD
@pkg.install
@pkg.install unless @pkg.superclass.to_s == 'RUBY'
build_end_time = Time.now.to_i
@@ -723,14 +723,14 @@ def build_and_preconfigure(target_dir)
end
def pre_flight
puts 'Performing pre-flight checks...'
puts "Performing pre-flight checks for #{@pkg.name}...".lightblue
abort PackageUtils.incompatible_reason(@pkg).join("\n").to_s.lightred unless PackageUtils.compatible?(@pkg)
@pkg.preflight
end
def pre_install(dest_dir)
Dir.chdir dest_dir do
puts 'Performing pre-install...'
puts "Performing pre-install for #{@pkg.name}...".lightblue
@pkg.preinstall
# Reload device.json in case preinstall modified it via
# running 'crew remove packages...'
@@ -1675,9 +1675,9 @@ def build_command(args)
pre_flight
crewlog "!@pkg.is_fake? #{!@pkg.is_fake?} && PackageUtils.compatible?(@pkg) #{PackageUtils.compatible?(@pkg)} && @pkg.source?(ARCH): #{@pkg.source?(ARCH)}"
crewlog "(@pkg.no_source_build? #{@pkg.no_source_build?} || @pkg.source_url.to_s.upcase != 'SKIP' #{@pkg.source_url.to_s.upcase != 'SKIP'})"
crewlog "(@pkg.no_source_build? #{@pkg.no_source_build?} || @pkg.source_url.to_s.upcase != 'SKIP' #{@pkg.source_url.to_s.upcase != 'SKIP'} || @pkg.gem_compile_needed? #{@pkg.gem_compile_needed?})"
crewlog "!@pkg.no_compile_needed? #{!@pkg.no_compile_needed?} && @pkg.gem_compile_needed? #{@pkg.gem_compile_needed?}"
if (!@pkg.is_fake? && PackageUtils.compatible?(@pkg) && @pkg.source?(ARCH) && (@pkg.no_source_build? || @pkg.source_url.to_s.upcase != 'SKIP') && !@pkg.no_compile_needed?) || @pkg.gem_compile_needed?
if !@pkg.is_fake? && PackageUtils.compatible?(@pkg) && @pkg.source?(ARCH) && (@pkg.no_source_build? || @pkg.source_url.to_s.upcase != 'SKIP' || @pkg.gem_compile_needed?) && !@pkg.no_compile_needed?
resolve_dependencies_and_build
else
puts 'Unable to build a fake package. Skipping build.'.lightred if @pkg.is_fake?

View File

@@ -40,8 +40,12 @@ def set_vars(passed_name = nil, passed_version = nil)
# This assumes the package class name starts with 'Ruby_' and
# version is in the form '(gem version)-ruby-(ruby version)'.
# For example, name 'Ruby_awesome' and version '1.0.0-ruby-3.3'.
@gem_name = passed_name.sub('ruby_', '').sub('_', '-')
gem_name_test = passed_name.gsub(/^ruby_/, '')
@remote_gem_ver = Gem.latest_version_for(gem_name_test).to_s
@remote_gem_ver = Gem.latest_version_for(gem_name_test.gsub!('_', '-')).to_s if @remote_gem_ver.empty?
@gem_name = gem_name_test
@gem_ver = passed_version.split('-').first.to_s
puts "Note that #{name}.rb suggests that latest #{@gem_name} version is #{@gem_ver}.\nHowever, gem reports that the latest version is #{@remote_gem_ver}.".orange if Gem::Version.new(@remote_gem_ver.to_s) > Gem::Version.new(@gem_ver)
end
class RUBY < Package
@@ -50,8 +54,18 @@ class RUBY < Package
depends_on 'ruby'
def self.preflight
@install_gem = true
set_vars(name, version)
crewlog "@gem_name: #{@gem_name}, @gem_ver: #{@gem_ver}"
puts "Examining #{@gem_name} gem...".orange
@gem_filelist_path = File.join(CREW_META_PATH, "#{name}.filelist")
@gem_installed = Kernel.system "gem list -i \"^#{@gem_name}\$\" -v #{@gem_ver}", %i[out err] => File::NULL
gem_installed_anyver = Kernel.system "gem list -i \"^#{@gem_name}\$\"", %i[out err] => File::NULL
@gem_outdated = !@gem_installed && gem_installed_anyver
crewlog "preflight: @gem_name: #{@gem_name}, @gem_ver: #{@gem_ver}, @gem_outdated: #{@gem_outdated}, @gem_installed: #{@gem_installed} && @remote_gem_ver.to_s: #{Gem::Version.new(@remote_gem_ver.to_s)} == Gem::Version.new(@gem_ver): #{Gem::Version.new(@gem_ver)} && File.file?(@gem_filelist_path): #{File.file?(@gem_filelist_path)}"
if @gem_installed && Gem::Version.new(@remote_gem_ver.to_s) == Gem::Version.new(@gem_ver)
system "gem contents #{@gem_name} > #{@gem_filelist_path}" unless File.file?(@gem_filelist_path)
@install_gem = false
end
end
def self.preinstall
@@ -63,28 +77,28 @@ class RUBY < Package
Kernel.system "gem fetch #{@gem_name} --platform=ruby --version=#{@gem_ver}"
Kernel.system "gem unpack #{@gem_name}-#{@gem_ver}.gem"
Kernel.system "gem compile --strip --prune #{@gem_name}-#{@gem_ver}.gem"
Kernel.system "gem compile --strip --prune #{@gem_name}-#{@gem_ver}.gem -O #{CREW_DEST_DIR}/"
end
def self.install
crewlog "install: @gem_name: #{@gem_name}, @gem_ver: #{@gem_ver}, @gem_outdated: #{@gem_outdated}, @gem_installed: #{@gem_installed} && @remote_gem_ver.to_s: #{Gem::Version.new(@remote_gem_ver.to_s)} == Gem::Version.new(@gem_ver): #{Gem::Version.new(@gem_ver)} && File.file?(@gem_filelist_path): #{File.file?(@gem_filelist_path)}"
crewlog "no_compile_needed?: #{no_compile_needed?} @gem_binary_build_needed.blank?: #{@gem_binary_build_needed.blank?}, gem_compile_needed?: #{gem_compile_needed?}"
unless @install_gem
puts "#{@gem_name} #{@gem_ver} is already installed.".lightgreen
return
end
puts "#{@gem_name.capitalize} needs a binary gem built!".orange unless @gem_binary_build_needed.blank?
if !no_compile_needed? || !@gem_binary_build_needed.blank? || gem_compile_needed?
FileUtils.cp "#{@gem_name}-#{@gem_ver}-#{GEM_ARCH}.gem", CREW_DEST_DIR if File.file?("#{@gem_name}-#{@gem_ver}-#{GEM_ARCH}.gem")
system "gem install -N --local #{CREW_DEST_DIR}/#{@gem_name}-#{@gem_ver}-#{GEM_ARCH}.gem --conservative"
elsif Kernel.system "gem list -i \"^#{@gem_name}\$\"", %i[out err] => File::NULL
elsif @gem_outdated
puts "Updating #{@gem_name} gem to #{@gem_ver}...".orange
system "gem update -N #{@gem_name} --conservative"
else
system "gem install -N #{@gem_name} --conservative"
end
system "gem cleanup #{@gem_name}"
gem_filelist_path = File.join(CREW_META_PATH, "#{name}.filelist")
system "gem contents #{@gem_name} > #{gem_filelist_path}"
system "gem contents #{@gem_name} > #{@gem_filelist_path}"
@ruby_install_extras&.call
@remote_gem_ver = Gem.latest_spec_for(@gem_name).version.to_s
return if @remote_gem_ver == @gem_ver
puts "Note that #{name}.rb suggests that #{@gem_name} version is #{@gem_ver}.\nHowever, gem reports that the installed version is #{@remote_gem_ver}.".orange if Gem::Version.new(@remote_gem_ver.to_s) >= Gem::Version.new(@gem_ver)
@install_gem = false
end
end

View File

@@ -3,7 +3,7 @@
require 'etc'
OLD_CREW_VERSION ||= defined?(CREW_VERSION) ? CREW_VERSION : '1.0'
CREW_VERSION ||= '1.53.2' unless defined?(CREW_VERSION) && CREW_VERSION == OLD_CREW_VERSION
CREW_VERSION ||= '1.53.3' unless defined?(CREW_VERSION) && CREW_VERSION == OLD_CREW_VERSION
# Kernel architecture.
KERN_ARCH ||= Etc.uname[:machine]

View File

@@ -1,6 +1,25 @@
# lib/misc_functions.rb
# Generic implementations of various functions/algorithms that are not crew-specific.
require 'matrix'
def require_gem(gem_name_and_require = nil, require_override = nil)
# Allow only loading gems when needed.
return if gem_name_and_require.nil?
gem_name = gem_name_and_require.split('/')[0]
begin
gem gem_name
rescue LoadError
puts " -> install #{gem_name} gem".orange
Gem.install(gem_name)
gem gem_name
end
requires = if require_override.nil?
gem_name_and_require.split('/')[1].nil? ? gem_name_and_require.split('/')[0] : gem_name_and_require
else
require_override
end
require requires
end
require_gem('matrix')
class MiscFunctions
def self.human_size(bytes)

View File

@@ -5,13 +5,13 @@
/usr/local/bin/aws_zsh_completer.sh
/usr/local/etc/bash.d/aws
/usr/local/etc/zsh.d/aws
/usr/local/lib/python3.12/site-packages/awscli-1.34.27.dist-info/INSTALLER
/usr/local/lib/python3.12/site-packages/awscli-1.34.27.dist-info/LICENSE.txt
/usr/local/lib/python3.12/site-packages/awscli-1.34.27.dist-info/METADATA
/usr/local/lib/python3.12/site-packages/awscli-1.34.27.dist-info/RECORD
/usr/local/lib/python3.12/site-packages/awscli-1.34.27.dist-info/REQUESTED
/usr/local/lib/python3.12/site-packages/awscli-1.34.27.dist-info/WHEEL
/usr/local/lib/python3.12/site-packages/awscli-1.34.27.dist-info/top_level.txt
/usr/local/lib/python3.12/site-packages/awscli-1.34.29.dist-info/INSTALLER
/usr/local/lib/python3.12/site-packages/awscli-1.34.29.dist-info/LICENSE.txt
/usr/local/lib/python3.12/site-packages/awscli-1.34.29.dist-info/METADATA
/usr/local/lib/python3.12/site-packages/awscli-1.34.29.dist-info/RECORD
/usr/local/lib/python3.12/site-packages/awscli-1.34.29.dist-info/REQUESTED
/usr/local/lib/python3.12/site-packages/awscli-1.34.29.dist-info/WHEEL
/usr/local/lib/python3.12/site-packages/awscli-1.34.29.dist-info/top_level.txt
/usr/local/lib/python3.12/site-packages/awscli/__init__.py
/usr/local/lib/python3.12/site-packages/awscli/__main__.py
/usr/local/lib/python3.12/site-packages/awscli/__pycache__/__init__.cpython-312.pyc

View File

@@ -1,11 +1,11 @@
/usr/local/bin/virtualenv
/usr/local/lib/python3.12/site-packages/virtualenv-20.26.5.dist-info/INSTALLER
/usr/local/lib/python3.12/site-packages/virtualenv-20.26.5.dist-info/METADATA
/usr/local/lib/python3.12/site-packages/virtualenv-20.26.5.dist-info/RECORD
/usr/local/lib/python3.12/site-packages/virtualenv-20.26.5.dist-info/REQUESTED
/usr/local/lib/python3.12/site-packages/virtualenv-20.26.5.dist-info/WHEEL
/usr/local/lib/python3.12/site-packages/virtualenv-20.26.5.dist-info/entry_points.txt
/usr/local/lib/python3.12/site-packages/virtualenv-20.26.5.dist-info/licenses/LICENSE
/usr/local/lib/python3.12/site-packages/virtualenv-20.26.6.dist-info/INSTALLER
/usr/local/lib/python3.12/site-packages/virtualenv-20.26.6.dist-info/METADATA
/usr/local/lib/python3.12/site-packages/virtualenv-20.26.6.dist-info/RECORD
/usr/local/lib/python3.12/site-packages/virtualenv-20.26.6.dist-info/REQUESTED
/usr/local/lib/python3.12/site-packages/virtualenv-20.26.6.dist-info/WHEEL
/usr/local/lib/python3.12/site-packages/virtualenv-20.26.6.dist-info/entry_points.txt
/usr/local/lib/python3.12/site-packages/virtualenv-20.26.6.dist-info/licenses/LICENSE
/usr/local/lib/python3.12/site-packages/virtualenv/__init__.py
/usr/local/lib/python3.12/site-packages/virtualenv/__main__.py
/usr/local/lib/python3.12/site-packages/virtualenv/__pycache__/__init__.cpython-312.pyc

View File

@@ -5,13 +5,13 @@
/usr/local/bin/aws_zsh_completer.sh
/usr/local/etc/bash.d/aws
/usr/local/etc/zsh.d/aws
/usr/local/lib/python3.12/site-packages/awscli-1.34.27.dist-info/INSTALLER
/usr/local/lib/python3.12/site-packages/awscli-1.34.27.dist-info/LICENSE.txt
/usr/local/lib/python3.12/site-packages/awscli-1.34.27.dist-info/METADATA
/usr/local/lib/python3.12/site-packages/awscli-1.34.27.dist-info/RECORD
/usr/local/lib/python3.12/site-packages/awscli-1.34.27.dist-info/REQUESTED
/usr/local/lib/python3.12/site-packages/awscli-1.34.27.dist-info/WHEEL
/usr/local/lib/python3.12/site-packages/awscli-1.34.27.dist-info/top_level.txt
/usr/local/lib/python3.12/site-packages/awscli-1.34.29.dist-info/INSTALLER
/usr/local/lib/python3.12/site-packages/awscli-1.34.29.dist-info/LICENSE.txt
/usr/local/lib/python3.12/site-packages/awscli-1.34.29.dist-info/METADATA
/usr/local/lib/python3.12/site-packages/awscli-1.34.29.dist-info/RECORD
/usr/local/lib/python3.12/site-packages/awscli-1.34.29.dist-info/REQUESTED
/usr/local/lib/python3.12/site-packages/awscli-1.34.29.dist-info/WHEEL
/usr/local/lib/python3.12/site-packages/awscli-1.34.29.dist-info/top_level.txt
/usr/local/lib/python3.12/site-packages/awscli/__init__.py
/usr/local/lib/python3.12/site-packages/awscli/__main__.py
/usr/local/lib/python3.12/site-packages/awscli/__pycache__/__init__.cpython-312.pyc

View File

@@ -1,11 +1,11 @@
/usr/local/bin/virtualenv
/usr/local/lib/python3.12/site-packages/virtualenv-20.26.5.dist-info/INSTALLER
/usr/local/lib/python3.12/site-packages/virtualenv-20.26.5.dist-info/METADATA
/usr/local/lib/python3.12/site-packages/virtualenv-20.26.5.dist-info/RECORD
/usr/local/lib/python3.12/site-packages/virtualenv-20.26.5.dist-info/REQUESTED
/usr/local/lib/python3.12/site-packages/virtualenv-20.26.5.dist-info/WHEEL
/usr/local/lib/python3.12/site-packages/virtualenv-20.26.5.dist-info/entry_points.txt
/usr/local/lib/python3.12/site-packages/virtualenv-20.26.5.dist-info/licenses/LICENSE
/usr/local/lib/python3.12/site-packages/virtualenv-20.26.6.dist-info/INSTALLER
/usr/local/lib/python3.12/site-packages/virtualenv-20.26.6.dist-info/METADATA
/usr/local/lib/python3.12/site-packages/virtualenv-20.26.6.dist-info/RECORD
/usr/local/lib/python3.12/site-packages/virtualenv-20.26.6.dist-info/REQUESTED
/usr/local/lib/python3.12/site-packages/virtualenv-20.26.6.dist-info/WHEEL
/usr/local/lib/python3.12/site-packages/virtualenv-20.26.6.dist-info/entry_points.txt
/usr/local/lib/python3.12/site-packages/virtualenv-20.26.6.dist-info/licenses/LICENSE
/usr/local/lib/python3.12/site-packages/virtualenv/__init__.py
/usr/local/lib/python3.12/site-packages/virtualenv/__main__.py
/usr/local/lib/python3.12/site-packages/virtualenv/__pycache__/__init__.cpython-312.pyc

View File

@@ -5,13 +5,13 @@
/usr/local/bin/aws_zsh_completer.sh
/usr/local/etc/bash.d/aws
/usr/local/etc/zsh.d/aws
/usr/local/lib/python3.12/site-packages/awscli-1.34.27.dist-info/INSTALLER
/usr/local/lib/python3.12/site-packages/awscli-1.34.27.dist-info/LICENSE.txt
/usr/local/lib/python3.12/site-packages/awscli-1.34.27.dist-info/METADATA
/usr/local/lib/python3.12/site-packages/awscli-1.34.27.dist-info/RECORD
/usr/local/lib/python3.12/site-packages/awscli-1.34.27.dist-info/REQUESTED
/usr/local/lib/python3.12/site-packages/awscli-1.34.27.dist-info/WHEEL
/usr/local/lib/python3.12/site-packages/awscli-1.34.27.dist-info/top_level.txt
/usr/local/lib/python3.12/site-packages/awscli-1.34.29.dist-info/INSTALLER
/usr/local/lib/python3.12/site-packages/awscli-1.34.29.dist-info/LICENSE.txt
/usr/local/lib/python3.12/site-packages/awscli-1.34.29.dist-info/METADATA
/usr/local/lib/python3.12/site-packages/awscli-1.34.29.dist-info/RECORD
/usr/local/lib/python3.12/site-packages/awscli-1.34.29.dist-info/REQUESTED
/usr/local/lib/python3.12/site-packages/awscli-1.34.29.dist-info/WHEEL
/usr/local/lib/python3.12/site-packages/awscli-1.34.29.dist-info/top_level.txt
/usr/local/lib/python3.12/site-packages/awscli/__init__.py
/usr/local/lib/python3.12/site-packages/awscli/__main__.py
/usr/local/lib/python3.12/site-packages/awscli/__pycache__/__init__.cpython-312.pyc

View File

@@ -1,11 +1,11 @@
/usr/local/bin/virtualenv
/usr/local/lib/python3.12/site-packages/virtualenv-20.26.5.dist-info/INSTALLER
/usr/local/lib/python3.12/site-packages/virtualenv-20.26.5.dist-info/METADATA
/usr/local/lib/python3.12/site-packages/virtualenv-20.26.5.dist-info/RECORD
/usr/local/lib/python3.12/site-packages/virtualenv-20.26.5.dist-info/REQUESTED
/usr/local/lib/python3.12/site-packages/virtualenv-20.26.5.dist-info/WHEEL
/usr/local/lib/python3.12/site-packages/virtualenv-20.26.5.dist-info/entry_points.txt
/usr/local/lib/python3.12/site-packages/virtualenv-20.26.5.dist-info/licenses/LICENSE
/usr/local/lib/python3.12/site-packages/virtualenv-20.26.6.dist-info/INSTALLER
/usr/local/lib/python3.12/site-packages/virtualenv-20.26.6.dist-info/METADATA
/usr/local/lib/python3.12/site-packages/virtualenv-20.26.6.dist-info/RECORD
/usr/local/lib/python3.12/site-packages/virtualenv-20.26.6.dist-info/REQUESTED
/usr/local/lib/python3.12/site-packages/virtualenv-20.26.6.dist-info/WHEEL
/usr/local/lib/python3.12/site-packages/virtualenv-20.26.6.dist-info/entry_points.txt
/usr/local/lib/python3.12/site-packages/virtualenv-20.26.6.dist-info/licenses/LICENSE
/usr/local/lib/python3.12/site-packages/virtualenv/__init__.py
/usr/local/lib/python3.12/site-packages/virtualenv/__main__.py
/usr/local/lib/python3.12/site-packages/virtualenv/__pycache__/__init__.cpython-312.pyc

View File

@@ -3,17 +3,17 @@ require 'buildsystems/pip'
class Awscli < Pip
description 'Universal Command Line Interface for Amazon Web Services'
homepage 'https://github.com/aws/aws-cli'
version "1.34.27-#{CREW_PY_VER}"
version "1.34.29-#{CREW_PY_VER}"
license 'Apache-2.0'
compatibility 'all'
source_url 'SKIP'
binary_compression 'tar.zst'
binary_sha256({
aarch64: '5b0be84af3b7327ff15ee2f7d55b04c82830ffa6b33e83aa4caad9332267fd70',
armv7l: '5b0be84af3b7327ff15ee2f7d55b04c82830ffa6b33e83aa4caad9332267fd70',
i686: 'e88c00da995f88bc07fba3afa28d4279ec5f5decc24d45ae91330cd5d8aae688',
x86_64: 'f84c817bff64bab7e22c399fdc8c6238dbe62ced8dbcb858686d7b374d14dad4'
aarch64: '4e09a646ab51f48df4499d9a6bfcdd6a5f989240cee552597b86aede3840bddf',
armv7l: '4e09a646ab51f48df4499d9a6bfcdd6a5f989240cee552597b86aede3840bddf',
i686: 'eb5b9d40a91e002f1f819a79c4d4cdcc0b16dc062fa875c9f0074463ee39b48d',
x86_64: '67d0b489172a31ea500ab22ce44e5a463be2230f734331f14a42971dad6daf17'
})
depends_on 'groff'

33
packages/bundled_gems.rb Normal file
View File

@@ -0,0 +1,33 @@
# Generated by tools/create_default_gems_package.rb
require 'package'
class Bundled_gems < Package
description 'Ruby Bundled Gem Packages.'
homepage 'https://stdgems.org/'
version "2024092800-#{CREW_RUBY_VER}"
license 'GPL-3+'
compatibility 'all'
source_url 'SKIP'
is_fake
depends_on 'ruby_debug'
depends_on 'ruby_did_you_mean'
depends_on 'ruby_matrix'
depends_on 'ruby_minitest'
depends_on 'ruby_net_ftp'
depends_on 'ruby_net_imap'
depends_on 'ruby_net_pop'
depends_on 'ruby_net_smtp'
depends_on 'ruby_net_telnet'
depends_on 'ruby_power_assert'
depends_on 'ruby_prime'
depends_on 'ruby_racc'
depends_on 'ruby_rake'
depends_on 'ruby_rbs'
depends_on 'ruby_rexml'
depends_on 'ruby_rss'
depends_on 'ruby_test_unit'
depends_on 'ruby_typeprof'
depends_on 'ruby_xmlrpc'
end

View File

@@ -3,7 +3,7 @@ require 'package'
class Core < Package
description 'Core Chromebrew Packages.'
homepage 'https://github.com/chromebrew/chromebrew'
version '3.0'
version '3.1'
license 'GPL-3+'
compatibility 'all'
@@ -88,6 +88,12 @@ class Core < Package
depends_on 'ruby_pry'
# crew check -V breaks without this.
depends_on 'ruby_ruby_libversion'
# Needed for rubygem updates
depends_on 'ruby_rubygems_update'
# These are the "Default Gems" that come with Ruby.
depends_on 'default_gems'
# These are the "Bundled Gems" that come with Ruby.
depends_on 'bundled_gems'
depends_on 'slang'
depends_on 'sqlite'
depends_on 'uchardet'

106
packages/default_gems.rb Normal file
View File

@@ -0,0 +1,106 @@
# Generated by tools/create_default_gems_package.rb
require 'package'
class Default_gems < Package
description 'Ruby Default Gem Packages.'
homepage 'https://stdgems.org/'
version "2024092800-#{CREW_RUBY_VER}"
license 'GPL-3+'
compatibility 'all'
source_url 'SKIP'
is_fake
depends_on 'ruby_abbrev'
depends_on 'ruby_base64'
depends_on 'ruby_benchmark'
depends_on 'ruby_bigdecimal'
depends_on 'ruby_bundler'
depends_on 'ruby_cgi'
depends_on 'ruby_cmath'
depends_on 'ruby_csv'
depends_on 'ruby_date'
depends_on 'ruby_dbm'
depends_on 'ruby_debug'
depends_on 'ruby_delegate'
depends_on 'ruby_did_you_mean'
depends_on 'ruby_digest'
depends_on 'ruby_drb'
depends_on 'ruby_e2mmap'
depends_on 'ruby_english'
depends_on 'ruby_erb'
depends_on 'ruby_error_highlight'
depends_on 'ruby_etc'
depends_on 'ruby_fcntl'
depends_on 'ruby_fiddle'
depends_on 'ruby_fileutils'
depends_on 'ruby_find'
depends_on 'ruby_forwardable'
depends_on 'ruby_gdbm'
depends_on 'ruby_getoptlong'
depends_on 'ruby_io_console'
depends_on 'ruby_io_nonblock'
depends_on 'ruby_io_wait'
depends_on 'ruby_ipaddr'
depends_on 'ruby_irb'
depends_on 'ruby_json'
depends_on 'ruby_logger'
depends_on 'ruby_matrix'
depends_on 'ruby_mutex_m'
depends_on 'ruby_net_ftp'
depends_on 'ruby_net_http'
depends_on 'ruby_net_imap'
depends_on 'ruby_net_pop'
depends_on 'ruby_net_protocol'
depends_on 'ruby_net_smtp'
depends_on 'ruby_nkf'
depends_on 'ruby_observer'
depends_on 'ruby_open_uri'
depends_on 'ruby_open3'
depends_on 'ruby_openssl'
depends_on 'ruby_optparse'
depends_on 'ruby_ostruct'
depends_on 'ruby_pathname'
depends_on 'ruby_pp'
depends_on 'ruby_prettyprint'
depends_on 'ruby_prime'
depends_on 'ruby_prism'
depends_on 'ruby_pstore'
depends_on 'ruby_psych'
depends_on 'ruby_racc'
depends_on 'ruby_rdoc'
depends_on 'ruby_readline'
depends_on 'ruby_readline_ext'
depends_on 'ruby_reline'
depends_on 'ruby_resolv'
depends_on 'ruby_resolv_replace'
depends_on 'ruby_rexml'
depends_on 'ruby_rinda'
depends_on 'ruby_rss'
depends_on 'ruby_ruby2_keywords'
depends_on 'ruby_scanf'
depends_on 'ruby_sdbm'
depends_on 'ruby_securerandom'
depends_on 'ruby_set'
depends_on 'ruby_shell'
depends_on 'ruby_shellwords'
depends_on 'ruby_singleton'
depends_on 'ruby_stringio'
depends_on 'ruby_strscan'
depends_on 'ruby_sync'
depends_on 'ruby_syntax_suggest'
depends_on 'ruby_syslog'
depends_on 'ruby_tempfile'
depends_on 'ruby_thwait'
depends_on 'ruby_time'
depends_on 'ruby_timeout'
depends_on 'ruby_tmpdir'
depends_on 'ruby_tracer'
depends_on 'ruby_tsort'
depends_on 'ruby_un'
depends_on 'ruby_uri'
depends_on 'ruby_weakref'
depends_on 'ruby_webrick'
depends_on 'ruby_yaml'
depends_on 'ruby_zlib'
end

View File

@@ -3,17 +3,17 @@ require 'buildsystems/pip'
class Py3_virtualenv < Pip
description 'Virtualenv is a Virtual Environment builder for Python.'
homepage 'https://virtualenv.pypa.io/'
version "20.26.5-#{CREW_PY_VER}"
version "20.26.6-#{CREW_PY_VER}"
license 'MIT'
compatibility 'all'
source_url 'SKIP'
binary_compression 'tar.zst'
binary_sha256({
aarch64: 'f368e469d1041a22a8c848731822d0323ec52151826d48d2896e7f8b8cd3bcfa',
armv7l: 'f368e469d1041a22a8c848731822d0323ec52151826d48d2896e7f8b8cd3bcfa',
i686: '7230d8f501ef7ef43a7dc552d39f14880b9ae801e3af8aca09901c86f94169ba',
x86_64: 'd93d81be37df3c1c3943e4b05be40182efc4209a53f67c29e8cba624d1624e9f'
aarch64: '4395aa2732921de82b30c5a6cd3cd42eb52a592b7fda69c0c77b60e29a4415d8',
armv7l: '4395aa2732921de82b30c5a6cd3cd42eb52a592b7fda69c0c77b60e29a4415d8',
i686: '9b17e3f981cbf30a6834a406412008ac04a3e779f5f67fa28884a0297fd06b29',
x86_64: '4209972416b437caf2407e9bdfcb9a40d356e6bd3a9b531efeccabea40be3345'
})
depends_on 'py3_distlib'

13
packages/ruby_abbrev.rb Normal file
View File

@@ -0,0 +1,13 @@
require 'buildsystems/ruby'
class Ruby_abbrev < RUBY
description 'Calculates a set of unique abbreviations for a given set of strings.'
homepage 'https://github.com/ruby/abbrev'
version "0.1.2-#{CREW_RUBY_VER}"
license 'Ruby'
compatibility 'all'
source_url 'SKIP'
conflicts_ok
no_compile_needed
end

13
packages/ruby_base64.rb Normal file
View File

@@ -0,0 +1,13 @@
require 'buildsystems/ruby'
class Ruby_base64 < RUBY
description 'Support for encoding and decoding binary data using a base64 representation.'
homepage 'https://github.com/ruby/base64'
version "0.2.0-#{CREW_RUBY_VER}"
license 'Ruby'
compatibility 'all'
source_url 'SKIP'
conflicts_ok
no_compile_needed
end

View File

@@ -0,0 +1,13 @@
require 'buildsystems/ruby'
class Ruby_benchmark < RUBY
description 'A performance benchmarking library.'
homepage 'https://github.com/ruby/benchmark'
version "0.3.0-#{CREW_RUBY_VER}"
license 'Ruby'
compatibility 'all'
source_url 'SKIP'
conflicts_ok
no_compile_needed
end

View File

@@ -4,7 +4,7 @@ class Ruby_bigdecimal < RUBY
description 'This library provides arbitrary-precision decimal floating-point number class.'
homepage 'https://github.com/ruby/bigdecimal'
version "3.1.8-#{CREW_RUBY_VER}"
license 'Ruby'
license 'BSD-2-Clause'
compatibility 'all'
source_url 'SKIP'
binary_compression 'gem'
@@ -18,5 +18,4 @@ class Ruby_bigdecimal < RUBY
conflicts_ok
gem_compile_needed
no_source_build
end

View File

@@ -1,7 +1,7 @@
require 'buildsystems/ruby'
class Ruby_bundler < RUBY
description 'many machines, systematically and repeatably.'
description "Bundler manages an application's dependencies through its entire life, across many machines, systematically and repeatably."
homepage 'https://bundler.io'
version "2.5.20-#{CREW_RUBY_VER}"
license 'MIT'

13
packages/ruby_cgi.rb Normal file
View File

@@ -0,0 +1,13 @@
require 'buildsystems/ruby'
class Ruby_cgi < RUBY
description 'Support for the common gateway interface protocol.'
homepage 'https://github.com/ruby/cgi'
version "0.4.1-#{CREW_RUBY_VER}"
license 'Ruby'
compatibility 'all'
source_url 'SKIP'
conflicts_ok
no_compile_needed
end

13
packages/ruby_cmath.rb Normal file
View File

@@ -0,0 +1,13 @@
require 'buildsystems/ruby'
class Ruby_cmath < RUBY
description 'CMath is a library that provides trigonometric and transcendental functions for complex numbers.'
homepage 'https://github.com/ruby/cmath'
version "1.0.0-#{CREW_RUBY_VER}"
license 'BSD-2-Clause'
compatibility 'all'
source_url 'SKIP'
conflicts_ok
no_compile_needed
end

View File

@@ -0,0 +1,13 @@
require 'buildsystems/ruby'
class Ruby_connection_pool < RUBY
description 'Generic connection pool for ruby.'
homepage 'https://github.com/mperham/connection_pool'
version "2.4.1-#{CREW_RUBY_VER}"
license 'MIT'
compatibility 'all'
source_url 'SKIP'
conflicts_ok
no_compile_needed
end

View File

@@ -1,10 +1,10 @@
require 'buildsystems/ruby'
class Ruby_csv < RUBY
description 'tools to enable you to read and write to and from Strings or IO objects, as needed.'
description 'The csv library provides a complete interface to csv files and data.'
homepage 'https://github.com/ruby/csv'
version "3.3.0-#{CREW_RUBY_VER}"
license 'Ruby'
license 'BSD-2-Clause'
compatibility 'all'
source_url 'SKIP'

13
packages/ruby_date.rb Normal file
View File

@@ -0,0 +1,13 @@
require 'buildsystems/ruby'
class Ruby_date < RUBY
description 'A subclass of object includes comparable module for handling dates.'
homepage 'https://github.com/ruby/date'
version "3.3.4-#{CREW_RUBY_VER}"
license 'Ruby'
compatibility 'all'
source_url 'SKIP'
conflicts_ok
no_compile_needed
end

21
packages/ruby_dbm.rb Normal file
View File

@@ -0,0 +1,21 @@
require 'buildsystems/ruby'
class Ruby_dbm < RUBY
description 'Provides a wrapper for the UNIX-style Database Manager Library.'
homepage 'https://github.com/ruby/dbm'
version "1.1.0-#{CREW_RUBY_VER}"
license 'BSD-2-Clause'
compatibility 'all'
source_url 'SKIP'
binary_compression 'gem'
binary_sha256({
aarch64: '25d29549098fda31a380451bdf1e2a94d251702be49d37145dc1bfa8024ebef4',
armv7l: '25d29549098fda31a380451bdf1e2a94d251702be49d37145dc1bfa8024ebef4',
i686: 'be5aad368aa33ea7e5dbbf64c5a0ea92442e34b0bbae99caeda5bc469dd6fe40',
x86_64: 'f8762a798f3421e4a1d6af87077d45bdbc6d8dda50a611d8cffb79feb12bdbc9'
})
conflicts_ok
gem_compile_needed
end

View File

@@ -16,6 +16,10 @@ class Ruby_debug < RUBY
x86_64: '2b701d2dd3b61b89da53aa557d5d88ce031fe3ac959f4ff0d966ca62bc504dc1'
})
depends_on 'ruby_reline' # R
depends_on 'ruby_irb' # R
conflicts_ok
gem_compile_needed
no_source_build

13
packages/ruby_delegate.rb Normal file
View File

@@ -0,0 +1,13 @@
require 'buildsystems/ruby'
class Ruby_delegate < RUBY
description 'Provides three abilities to delegate method calls to an object.'
homepage 'https://github.com/ruby/delegate'
version "0.3.1-#{CREW_RUBY_VER}"
license 'Ruby'
compatibility 'all'
source_url 'SKIP'
conflicts_ok
no_compile_needed
end

View File

@@ -0,0 +1,13 @@
require 'buildsystems/ruby'
class Ruby_did_you_mean < RUBY
description 'The gem that has been saving people from typos since 2014.'
homepage 'https://github.com/ruby/did_you_mean'
version "1.6.3-#{CREW_RUBY_VER}"
license 'MIT'
compatibility 'all'
source_url 'SKIP'
conflicts_ok
no_compile_needed
end

13
packages/ruby_digest.rb Normal file
View File

@@ -0,0 +1,13 @@
require 'buildsystems/ruby'
class Ruby_digest < RUBY
description 'Provides a framework for message digest libraries.'
homepage 'https://github.com/ruby/digest'
version "3.1.1-#{CREW_RUBY_VER}"
license 'Ruby'
compatibility 'all'
source_url 'SKIP'
conflicts_ok
no_compile_needed
end

View File

@@ -1,13 +1,15 @@
require 'buildsystems/ruby'
class Ruby_drb < RUBY
description 'Distributed object system for Ruby'
description 'Distributed object system for ruby.'
homepage 'https://github.com/ruby/drb'
version "2.2.1-#{CREW_RUBY_VER}"
license 'Ruby'
license 'BSD-2-Clause'
compatibility 'all'
source_url 'SKIP'
depends_on 'ruby_ruby2_keywords' # R
conflicts_ok
no_compile_needed
end

13
packages/ruby_e2mmap.rb Normal file
View File

@@ -0,0 +1,13 @@
require 'buildsystems/ruby'
class Ruby_e2mmap < RUBY
description 'Module for defining custom exceptions with specific messages.'
homepage 'https://github.com/ruby/e2mmap'
version "0.1.0-#{CREW_RUBY_VER}"
license 'BSD-2-Clause'
compatibility 'all'
source_url 'SKIP'
conflicts_ok
no_compile_needed
end

13
packages/ruby_english.rb Normal file
View File

@@ -0,0 +1,13 @@
require 'buildsystems/ruby'
class Ruby_english < RUBY
description "Require 'english."
homepage 'https://github.com/ruby/English'
version "0.8.0-#{CREW_RUBY_VER}"
license 'Ruby'
compatibility 'all'
source_url 'SKIP'
conflicts_ok
no_compile_needed
end

View File

@@ -4,7 +4,7 @@ class Ruby_erb < RUBY
description 'An easy to use but powerful templating system for Ruby.'
homepage 'https://github.com/ruby/erb'
version "4.0.4-#{CREW_RUBY_VER}"
license 'Ruby'
license 'BSD-2-Clause'
compatibility 'all'
source_url 'SKIP'
binary_compression 'gem'
@@ -16,7 +16,8 @@ class Ruby_erb < RUBY
x86_64: '129394d92d6b217e01353d476c3bb1a64dd95414e6ef623ce674c83a3eada1ab'
})
depends_on 'ruby_cgi' # R
conflicts_ok
gem_compile_needed
no_source_build
end

View File

@@ -0,0 +1,13 @@
require 'buildsystems/ruby'
class Ruby_error_highlight < RUBY
description 'The gem enhances exception#message by adding a short explanation where the exception is raised.'
homepage 'https://github.com/ruby/error_highlight'
version "0.6.0-#{CREW_RUBY_VER}"
license 'MIT'
compatibility 'all'
source_url 'SKIP'
conflicts_ok
no_compile_needed
end

13
packages/ruby_etc.rb Normal file
View File

@@ -0,0 +1,13 @@
require 'buildsystems/ruby'
class Ruby_etc < RUBY
description 'Provides access to information typically stored in unix /etc directory.'
homepage 'https://github.com/ruby/etc'
version "1.4.3-#{CREW_RUBY_VER}"
license 'Ruby'
compatibility 'all'
source_url 'SKIP'
conflicts_ok
no_compile_needed
end

13
packages/ruby_fcntl.rb Normal file
View File

@@ -0,0 +1,13 @@
require 'buildsystems/ruby'
class Ruby_fcntl < RUBY
description 'Loads constants defined in the os fcntl.'
homepage 'https://github.com/ruby/fcntl'
version "1.1.0-#{CREW_RUBY_VER}"
license 'Ruby'
compatibility 'all'
source_url 'SKIP'
conflicts_ok
no_compile_needed
end

21
packages/ruby_fiddle.rb Normal file
View File

@@ -0,0 +1,21 @@
require 'buildsystems/ruby'
class Ruby_fiddle < RUBY
description 'A libffi wrapper for ruby.'
homepage 'https://github.com/ruby/fiddle'
version "1.1.2-#{CREW_RUBY_VER}"
license 'Ruby'
compatibility 'all'
source_url 'SKIP'
binary_compression 'gem'
binary_sha256({
aarch64: '11a51ba27f1875593017d33560badad95ea894848d25d426ade209b619ad4a2f',
armv7l: '11a51ba27f1875593017d33560badad95ea894848d25d426ade209b619ad4a2f',
i686: '88e1d897d3e5611b09276158644a14fe85b36961aeadea65c51e5c0331f5c75e',
x86_64: '6aa32335992948369b986fdb700089a37beda2e441b0371712cf1b5245716d14'
})
conflicts_ok
gem_compile_needed
end

View File

@@ -0,0 +1,13 @@
require 'buildsystems/ruby'
class Ruby_fileutils < RUBY
description 'Several file utility methods for copying, moving, removing, etc.'
homepage 'https://github.com/ruby/fileutils'
version "1.7.2-#{CREW_RUBY_VER}"
license 'Ruby'
compatibility 'all'
source_url 'SKIP'
conflicts_ok
no_compile_needed
end

13
packages/ruby_find.rb Normal file
View File

@@ -0,0 +1,13 @@
require 'buildsystems/ruby'
class Ruby_find < RUBY
description 'This module supports top-down traversal of a set of file paths.'
homepage 'https://github.com/ruby/find'
version "0.2.0-#{CREW_RUBY_VER}"
license 'Ruby'
compatibility 'all'
source_url 'SKIP'
conflicts_ok
no_compile_needed
end

View File

@@ -0,0 +1,13 @@
require 'buildsystems/ruby'
class Ruby_forwardable < RUBY
description 'Provides delegation of specified methods to a designated object.'
homepage 'https://github.com/ruby/forwardable'
version "1.3.3-#{CREW_RUBY_VER}"
license 'Ruby'
compatibility 'all'
source_url 'SKIP'
conflicts_ok
no_compile_needed
end

21
packages/ruby_gdbm.rb Normal file
View File

@@ -0,0 +1,21 @@
require 'buildsystems/ruby'
class Ruby_gdbm < RUBY
description 'Ruby extension for GNU dbm.'
homepage 'https://github.com/ruby/gdbm'
version "2.1.0-#{CREW_RUBY_VER}"
license 'BSD-2-Clause'
compatibility 'all'
source_url 'SKIP'
binary_compression 'gem'
binary_sha256({
aarch64: '189ed64b1386a53ca1947d42d768cffc1967ac4ec0f9c7a1969c00808bd5be80',
armv7l: '189ed64b1386a53ca1947d42d768cffc1967ac4ec0f9c7a1969c00808bd5be80',
i686: 'e67e801843fe384f64494901707580e31dd18d3ff1fd6fecd4bc72c1d57ea42a',
x86_64: 'c1697765011754fc803a457b9a3dc284dffbb7e743e79ab793dd1c0b8ea36714'
})
conflicts_ok
gem_compile_needed
end

View File

@@ -0,0 +1,13 @@
require 'buildsystems/ruby'
class Ruby_getoptlong < RUBY
description 'Getoptlong for ruby.'
homepage 'https://github.com/ruby/getoptlong'
version "0.2.1-#{CREW_RUBY_VER}"
license 'Ruby'
compatibility 'all'
source_url 'SKIP'
conflicts_ok
no_compile_needed
end

17
packages/ruby_httparty.rb Normal file
View File

@@ -0,0 +1,17 @@
require 'buildsystems/ruby'
class Ruby_httparty < RUBY
description 'Makes http fun! Also, makes consuming restful web services dead easy.'
homepage 'https://github.com/jnunemaker/httparty'
version "0.22.0-#{CREW_RUBY_VER}"
license 'MIT'
compatibility 'all'
source_url 'SKIP'
depends_on 'ruby_csv' # R
depends_on 'ruby_mini_mime' # R
depends_on 'ruby_multi_xml' # R
conflicts_ok
no_compile_needed
end

15
packages/ruby_i18n.rb Normal file
View File

@@ -0,0 +1,15 @@
require 'buildsystems/ruby'
class Ruby_i18n < RUBY
description 'New wave internationalization support for ruby.'
homepage 'https://github.com/ruby-i18n/i18n'
version "1.14.6-#{CREW_RUBY_VER}"
license 'MIT'
compatibility 'all'
source_url 'SKIP'
depends_on 'ruby_concurrent_ruby' # R
conflicts_ok
no_compile_needed
end

View File

@@ -4,7 +4,7 @@ class Ruby_io_console < RUBY
description 'add console capabilities to IO instances.'
homepage 'https://github.com/ruby/io-console'
version "0.7.2-#{CREW_RUBY_VER}"
license 'Ruby'
license 'BSD-2-Clause'
compatibility 'all'
source_url 'SKIP'
binary_compression 'gem'
@@ -18,5 +18,4 @@ class Ruby_io_console < RUBY
conflicts_ok
gem_compile_needed
no_source_build
end

View File

@@ -0,0 +1,13 @@
require 'buildsystems/ruby'
class Ruby_io_nonblock < RUBY
description 'Enables non-blocking mode with io class.'
homepage 'https://github.com/ruby/io-nonblock'
version "0.3.0-#{CREW_RUBY_VER}"
license 'Ruby'
compatibility 'all'
source_url 'SKIP'
conflicts_ok
no_compile_needed
end

13
packages/ruby_io_wait.rb Normal file
View File

@@ -0,0 +1,13 @@
require 'buildsystems/ruby'
class Ruby_io_wait < RUBY
description 'Waits until io is readable or writable without blocking.'
homepage 'https://github.com/ruby/io-wait'
version "0.3.1-#{CREW_RUBY_VER}"
license 'Ruby'
compatibility 'all'
source_url 'SKIP'
conflicts_ok
no_compile_needed
end

13
packages/ruby_ipaddr.rb Normal file
View File

@@ -0,0 +1,13 @@
require 'buildsystems/ruby'
class Ruby_ipaddr < RUBY
description '| ipaddr provides a set of methods to manipulate an ip address.'
homepage 'https://github.com/ruby/ipaddr'
version "1.2.6-#{CREW_RUBY_VER}"
license 'Ruby'
compatibility 'all'
source_url 'SKIP'
conflicts_ok
no_compile_needed
end

View File

@@ -4,10 +4,13 @@ class Ruby_irb < RUBY
description 'Interactive Ruby command-line tool for REPL (Read Eval Print Loop).'
homepage 'https://github.com/ruby/irb'
version "1.14.1-#{CREW_RUBY_VER}"
license 'Ruby'
license 'BSD-2-Clause'
compatibility 'all'
source_url 'SKIP'
depends_on 'ruby_rdoc' # R
depends_on 'ruby_reline' # R
conflicts_ok
no_compile_needed
end

View File

@@ -18,5 +18,4 @@ class Ruby_json < RUBY
conflicts_ok
gem_compile_needed
no_source_build
end

View File

@@ -4,7 +4,7 @@ class Ruby_logger < RUBY
description 'Provides a simple logging utility for outputting messages.'
homepage 'https://github.com/ruby/logger'
version "1.6.1-#{CREW_RUBY_VER}"
license 'Ruby'
license 'BSD-2-Clause'
compatibility 'all'
source_url 'SKIP'

13
packages/ruby_matrix.rb Normal file
View File

@@ -0,0 +1,13 @@
require 'buildsystems/ruby'
class Ruby_matrix < RUBY
description 'An implementation of Matrix and Vector classes.'
homepage 'https://github.com/ruby/matrix'
version "0.4.2-#{CREW_RUBY_VER}"
license 'Ruby'
compatibility 'all'
source_url 'SKIP'
conflicts_ok
no_compile_needed
end

View File

@@ -0,0 +1,13 @@
require 'buildsystems/ruby'
class Ruby_mini_mime < RUBY
description 'A minimal mime type library.'
homepage 'https://github.com/discourse/mini_mime'
version "1.1.5-#{CREW_RUBY_VER}"
license 'MIT'
compatibility 'all'
source_url 'SKIP'
conflicts_ok
no_compile_needed
end

View File

@@ -0,0 +1,15 @@
require 'buildsystems/ruby'
class Ruby_multi_xml < RUBY
description '---.'
homepage 'https://github.com/sferik/multi_xml'
version "0.7.1-#{CREW_RUBY_VER}"
license 'MIT'
compatibility 'all'
source_url 'SKIP'
depends_on 'ruby_bigdecimal' # R
conflicts_ok
no_compile_needed
end

13
packages/ruby_mutex_m.rb Normal file
View File

@@ -0,0 +1,13 @@
require 'buildsystems/ruby'
class Ruby_mutex_m < RUBY
description 'Mixin to extend objects to be handled like a mutex.'
homepage 'https://github.com/ruby/mutex_m'
version "0.2.0-#{CREW_RUBY_VER}"
license 'Ruby'
compatibility 'all'
source_url 'SKIP'
conflicts_ok
no_compile_needed
end

View File

@@ -4,10 +4,13 @@ class Ruby_net_ftp < RUBY
description 'Support for the File Transfer Protocol.'
homepage 'https://github.com/ruby/net-ftp'
version "0.3.7-#{CREW_RUBY_VER}"
license 'Ruby'
license 'BSD-2-Clause'
compatibility 'all'
source_url 'SKIP'
depends_on 'ruby_net_protocol' # R
depends_on 'ruby_time' # R
conflicts_ok
no_compile_needed
end

15
packages/ruby_net_http.rb Normal file
View File

@@ -0,0 +1,15 @@
require 'buildsystems/ruby'
class Ruby_net_http < RUBY
description 'Http client api for ruby.'
homepage 'https://github.com/ruby/net-http'
version "0.4.1-#{CREW_RUBY_VER}"
license 'Ruby'
compatibility 'all'
source_url 'SKIP'
depends_on 'ruby_uri' # R
conflicts_ok
no_compile_needed
end

View File

@@ -4,10 +4,13 @@ class Ruby_net_imap < RUBY
description 'Ruby client api for Internet Message Access Protocol'
homepage 'https://github.com/ruby/net-imap'
version "0.4.16-#{CREW_RUBY_VER}"
license 'Ruby'
license 'BSD-2-Clause'
compatibility 'all'
source_url 'SKIP'
depends_on 'ruby_date' # R
depends_on 'ruby_net_protocol' # R
conflicts_ok
no_compile_needed
end

15
packages/ruby_net_pop.rb Normal file
View File

@@ -0,0 +1,15 @@
require 'buildsystems/ruby'
class Ruby_net_pop < RUBY
description 'Ruby client library for POP3.'
homepage 'https://github.com/ruby/net-pop'
version "0.1.2-#{CREW_RUBY_VER}"
license 'Ruby'
compatibility 'all'
source_url 'SKIP'
depends_on 'ruby_net_protocol' # R
conflicts_ok
no_compile_needed
end

View File

@@ -0,0 +1,15 @@
require 'buildsystems/ruby'
class Ruby_net_protocol < RUBY
description 'The abstract interface for net-* client.'
homepage 'https://github.com/ruby/net-protocol'
version "0.2.2-#{CREW_RUBY_VER}"
license 'Ruby'
compatibility 'all'
source_url 'SKIP'
depends_on 'ruby_timeout' # R
conflicts_ok
no_compile_needed
end

View File

@@ -4,7 +4,7 @@ class Ruby_net_smtp < RUBY
description 'Simple Mail Transfer Protocol client library for Ruby.'
homepage 'https://github.com/ruby/net-smtp'
version "0.5.0-#{CREW_RUBY_VER}"
license 'Ruby'
license 'BSD-2-Clause'
compatibility 'all'
source_url 'SKIP'

View File

@@ -0,0 +1,13 @@
require 'buildsystems/ruby'
class Ruby_net_telnet < RUBY
description 'Provides telnet client functionality.'
homepage 'https://github.com/ruby/net-telnet'
version "0.2.0-#{CREW_RUBY_VER}"
license 'ruby'
compatibility 'all'
source_url 'SKIP'
conflicts_ok
no_compile_needed
end

View File

@@ -4,7 +4,7 @@ class Ruby_nkf < RUBY
description 'Ruby extension for Network Kanji Filter'
homepage 'https://github.com/ruby/nkf'
version "0.2.0-#{CREW_RUBY_VER}"
license 'Ruby'
license 'BSD-2-Clause'
compatibility 'all'
source_url 'SKIP'
binary_compression 'gem'
@@ -18,5 +18,4 @@ class Ruby_nkf < RUBY
conflicts_ok
gem_compile_needed
no_source_build
end

13
packages/ruby_observer.rb Normal file
View File

@@ -0,0 +1,13 @@
require 'buildsystems/ruby'
class Ruby_observer < RUBY
description 'Implementation of the observer object-oriented design pattern.'
homepage 'https://github.com/ruby/observer'
version "0.1.2-#{CREW_RUBY_VER}"
license 'Ruby'
compatibility 'all'
source_url 'SKIP'
conflicts_ok
no_compile_needed
end

13
packages/ruby_open3.rb Normal file
View File

@@ -0,0 +1,13 @@
require 'buildsystems/ruby'
class Ruby_open3 < RUBY
description 'Popen, but with stderr, too.'
homepage 'https://github.com/ruby/open3'
version "0.2.1-#{CREW_RUBY_VER}"
license 'Ruby'
compatibility 'all'
source_url 'SKIP'
conflicts_ok
no_compile_needed
end

17
packages/ruby_open_uri.rb Normal file
View File

@@ -0,0 +1,17 @@
require 'buildsystems/ruby'
class Ruby_open_uri < RUBY
description 'An easy-to-use wrapper for net::http, net::https and net::ftp.'
homepage 'https://github.com/ruby/open-uri'
version "0.4.1-#{CREW_RUBY_VER}"
license 'Ruby'
compatibility 'all'
source_url 'SKIP'
depends_on 'ruby_stringio' # R
depends_on 'ruby_time' # R
depends_on 'ruby_uri' # R
conflicts_ok
no_compile_needed
end

13
packages/ruby_openssl.rb Normal file
View File

@@ -0,0 +1,13 @@
require 'buildsystems/ruby'
class Ruby_openssl < RUBY
description 'Openssl for ruby provides access to ssl/tls and general-purpose cryptography based on the openssl library.'
homepage 'https://github.com/ruby/openssl'
version "3.2.0-#{CREW_RUBY_VER}"
license 'Ruby'
compatibility 'all'
source_url 'SKIP'
conflicts_ok
no_compile_needed
end

View File

@@ -4,7 +4,7 @@ class Ruby_optparse < RUBY
description 'OptionParser is a class for command-line option analysis.'
homepage 'https://github.com/ruby/optparse'
version "0.5.0-#{CREW_RUBY_VER}"
license 'Ruby'
license 'BSD-2-Clause'
compatibility 'all'
source_url 'SKIP'

13
packages/ruby_ostruct.rb Normal file
View File

@@ -0,0 +1,13 @@
require 'buildsystems/ruby'
class Ruby_ostruct < RUBY
description 'Class to build custom data structures, similar to a hash.'
homepage 'https://github.com/ruby/ostruct'
version "0.6.0-#{CREW_RUBY_VER}"
license 'Ruby'
compatibility 'all'
source_url 'SKIP'
conflicts_ok
no_compile_needed
end

21
packages/ruby_pathname.rb Normal file
View File

@@ -0,0 +1,21 @@
require 'buildsystems/ruby'
class Ruby_pathname < RUBY
description 'Representation of the name of a file or directory on the filesystem.'
homepage 'https://github.com/ruby/pathname'
version "0.3.0-#{CREW_RUBY_VER}"
license 'Ruby'
compatibility 'all'
source_url 'SKIP'
binary_compression 'gem'
binary_sha256({
aarch64: 'e65142157112fb9730a5e885ee1c60f8dd29cc73cd2086f24ee9e00085bc9e2a',
armv7l: 'e65142157112fb9730a5e885ee1c60f8dd29cc73cd2086f24ee9e00085bc9e2a',
i686: 'f2929b41903a8fe0b525b7e8a99101cd42b11578db585a040725737709e16d48',
x86_64: '6348eefa1db6d1ab05d56ef0b602e2675c675802a8e4b1a9433cc99340fed1bc'
})
conflicts_ok
gem_compile_needed
end

View File

@@ -0,0 +1,13 @@
require 'buildsystems/ruby'
class Ruby_power_assert < RUBY
description 'Power assert shows each value of variables and method calls in the expression.'
homepage 'https://github.com/ruby/power_assert'
version "2.0.3-#{CREW_RUBY_VER}"
license 'BSD-2-Clause'
compatibility 'all'
source_url 'SKIP'
conflicts_ok
no_compile_needed
end

26
packages/ruby_pp.rb Normal file
View File

@@ -0,0 +1,26 @@
require 'buildsystems/ruby'
class Ruby_pp < RUBY
description 'Provides a prettyprinter for ruby objects.'
homepage 'https://github.com/ruby/pp'
version "0.5.0-#{CREW_RUBY_VER}"
license 'Ruby'
compatibility 'all'
source_url 'SKIP'
depends_on 'ruby_base64' # R
depends_on 'ruby_bigdecimal' # R
depends_on 'ruby_concurrent_ruby' # R
depends_on 'ruby_connection_pool' # R
depends_on 'ruby_drb' # R
depends_on 'ruby_i18n' # R
depends_on 'ruby_logger' # R
depends_on 'ruby_minitest' # R
depends_on 'ruby_prettyprint' # R
depends_on 'ruby_securerandom' # R
depends_on 'ruby_tzinfo' # R
depends_on 'ruby_httparty' # R
conflicts_ok
no_compile_needed
end

View File

@@ -0,0 +1,13 @@
require 'buildsystems/ruby'
class Ruby_prettyprint < RUBY
description 'Implements a pretty printing algorithm for readable structure.'
homepage 'https://github.com/ruby/prettyprint'
version "0.2.0-#{CREW_RUBY_VER}"
license 'Ruby'
compatibility 'all'
source_url 'SKIP'
conflicts_ok
no_compile_needed
end

16
packages/ruby_prime.rb Normal file
View File

@@ -0,0 +1,16 @@
require 'buildsystems/ruby'
class Ruby_prime < RUBY
description 'Prime numbers and factorization library.'
homepage 'https://github.com/ruby/prime'
version "0.1.2-#{CREW_RUBY_VER}"
license 'Ruby'
compatibility 'all'
source_url 'SKIP'
depends_on 'ruby_forwardable' # R
depends_on 'ruby_singleton' # R
conflicts_ok
no_compile_needed
end

View File

@@ -18,5 +18,4 @@ class Ruby_prism < RUBY
conflicts_ok
gem_compile_needed
no_source_build
end

13
packages/ruby_pstore.rb Normal file
View File

@@ -0,0 +1,13 @@
require 'buildsystems/ruby'
class Ruby_pstore < RUBY
description 'Transactional file storage for ruby objects.'
homepage 'https://github.com/ruby/pstore'
version "0.1.3-#{CREW_RUBY_VER}"
license 'Ruby'
compatibility 'all'
source_url 'SKIP'
conflicts_ok
no_compile_needed
end

15
packages/ruby_psych.rb Normal file
View File

@@ -0,0 +1,15 @@
require 'buildsystems/ruby'
class Ruby_psych < RUBY
description '| psych is a yaml parser and emitter.'
homepage 'https://github.com/ruby/psych'
version "5.1.2-#{CREW_RUBY_VER}"
license 'MIT'
compatibility 'all'
source_url 'SKIP'
depends_on 'ruby_stringio' # R
conflicts_ok
no_compile_needed
end

View File

@@ -4,7 +4,7 @@ class Ruby_racc < RUBY
description 'Racc is a LALR(1) parser generator.'
homepage 'https://github.com/ruby/racc'
version "1.8.1-#{CREW_RUBY_VER}"
license 'Ruby'
license 'BSD-2-Clause'
compatibility 'all'
source_url 'SKIP'
binary_compression 'gem'
@@ -18,5 +18,4 @@ class Ruby_racc < RUBY
conflicts_ok
gem_compile_needed
no_source_build
end

View File

@@ -16,6 +16,8 @@ class Ruby_rbs < RUBY
x86_64: '7c8828fb9f1be082f75632001db85bfe5d9bd5d855fc0242bf5d0c54d112fd67'
})
depends_on 'ruby_abbrev' # R
conflicts_ok
gem_compile_needed
no_source_build

View File

@@ -8,6 +8,8 @@ class Ruby_rdoc < RUBY
compatibility 'all'
source_url 'SKIP'
depends_on 'ruby_psych' # R
conflicts_ok
no_compile_needed
end

15
packages/ruby_readline.rb Normal file
View File

@@ -0,0 +1,15 @@
require 'buildsystems/ruby'
class Ruby_readline < RUBY
description "This is just a loader for 'readline'."
homepage 'https://github.com/ruby/readline'
version "0.0.4-#{CREW_RUBY_VER}"
license 'Ruby'
compatibility 'all'
source_url 'SKIP'
depends_on 'ruby_reline' # R
conflicts_ok
no_compile_needed
end

View File

@@ -0,0 +1,21 @@
require 'buildsystems/ruby'
class Ruby_readline_ext < RUBY
description 'Provides an interface for GNU Readline and Edit Line (libedit).'
homepage 'https://github.com/ruby/readline-ext'
version "0.2.0-#{CREW_RUBY_VER}"
license 'BSD-2-Clause'
compatibility 'all'
source_url 'SKIP'
binary_compression 'gem'
binary_sha256({
aarch64: '660035a29391abafd83eff684f0e43b4a4575ec3f437e4654d3b07c53f077bc9',
armv7l: '660035a29391abafd83eff684f0e43b4a4575ec3f437e4654d3b07c53f077bc9',
i686: '866be315140a24aa0b2d9a762d7cd7b355d54ee5310b301a576cd89c3cbc245c',
x86_64: '5214e295cc09f6e74c0e58a65b7d213ef0d4f07511bb64c83987e6ad3868f738'
})
conflicts_ok
gem_compile_needed
end

View File

@@ -8,6 +8,8 @@ class Ruby_reline < RUBY
compatibility 'all'
source_url 'SKIP'
depends_on 'ruby_io_console' # R
conflicts_ok
no_compile_needed
end

View File

@@ -1,13 +1,15 @@
require 'buildsystems/ruby'
class Ruby_resolv < RUBY
description 'Thread-aware DNS resolver library in Ruby.'
description 'Thread-aware dns resolver library in ruby.'
homepage 'https://github.com/ruby/resolv'
version "0.4.0-#{CREW_RUBY_VER}"
license 'Ruby'
license 'BSD-2-Clause'
compatibility 'all'
source_url 'SKIP'
depends_on 'ruby_resolv' # R
conflicts_ok
no_compile_needed
end

View File

@@ -0,0 +1,15 @@
require 'buildsystems/ruby'
class Ruby_resolv_replace < RUBY
description 'Replace socket dns with resolv.'
homepage 'https://github.com/ruby/resolv-replace'
version "0.1.1-#{CREW_RUBY_VER}"
license 'Ruby'
compatibility 'all'
source_url 'SKIP'
depends_on 'ruby_resolv' # R
conflicts_ok
no_compile_needed
end

17
packages/ruby_rinda.rb Normal file
View File

@@ -0,0 +1,17 @@
require 'buildsystems/ruby'
class Ruby_rinda < RUBY
description 'The linda distributed computing paradigm in ruby.'
homepage 'https://github.com/ruby/rinda'
version "0.2.0-#{CREW_RUBY_VER}"
license 'Ruby'
compatibility 'all'
source_url 'SKIP'
depends_on 'ruby_drb' # R
depends_on 'ruby_forwardable' # R
depends_on 'ruby_ipaddr' # R
conflicts_ok
no_compile_needed
end

15
packages/ruby_rss.rb Normal file
View File

@@ -0,0 +1,15 @@
require 'buildsystems/ruby'
class Ruby_rss < RUBY
description "Family of libraries that support various formats of XML 'feeds'."
homepage 'https://github.com/ruby/rss'
version "0.3.1-#{CREW_RUBY_VER}"
license 'BSD-2-Clause'
compatibility 'all'
source_url 'SKIP'
depends_on 'ruby_rexml' # R
conflicts_ok
no_compile_needed
end

View File

@@ -0,0 +1,13 @@
require 'buildsystems/ruby'
class Ruby_ruby2_keywords < RUBY
description '---.'
homepage 'https://github.com/ruby/ruby2_keywords'
version "0.0.5-#{CREW_RUBY_VER}"
license 'Ruby'
compatibility 'all'
source_url 'SKIP'
conflicts_ok
no_compile_needed
end

View File

@@ -2,9 +2,9 @@ require 'buildsystems/ruby'
class Ruby_rubygems_update < RUBY
description 'RubyGems is a package management framework for Ruby.'
homepage 'https://guides.rubygems.org'
homepage 'https://github.com/rubygems/rubygems'
version "3.5.20-#{CREW_RUBY_VER}"
license 'Ruby'
license 'MIT'
compatibility 'all'
source_url 'SKIP'

13
packages/ruby_scanf.rb Normal file
View File

@@ -0,0 +1,13 @@
require 'buildsystems/ruby'
class Ruby_scanf < RUBY
description 'scanf is an implementation of the C function scanf(3).'
homepage 'https://github.com/ruby/scanf'
version "1.0.0-#{CREW_RUBY_VER}"
license 'BSD-2-Clause'
compatibility 'all'
source_url 'SKIP'
conflicts_ok
no_compile_needed
end

21
packages/ruby_sdbm.rb Normal file
View File

@@ -0,0 +1,21 @@
require 'buildsystems/ruby'
class Ruby_sdbm < RUBY
description 'Provides a simple file-based key-value store with String keys and values.'
homepage 'https://github.com/ruby/sdbm'
version "1.0.0-#{CREW_RUBY_VER}"
license 'BSD-2-Clause'
compatibility 'all'
source_url 'SKIP'
binary_compression 'gem'
binary_sha256({
aarch64: '8cf08be1c22c953862291b9adedb0ad4cfe9fcb1871cd08bbb7cc9fe678ec48f',
armv7l: '8cf08be1c22c953862291b9adedb0ad4cfe9fcb1871cd08bbb7cc9fe678ec48f',
i686: '0fcec40c41dce5523928803999f9bbb38736dc079086a906911902b038cb9bca',
x86_64: 'bc762fd9fad242df80416ab00fe1ba4cff8a778dc9888963d7ee917630e9d830'
})
conflicts_ok
gem_compile_needed
end

View File

@@ -0,0 +1,13 @@
require 'buildsystems/ruby'
class Ruby_securerandom < RUBY
description 'Interface for secure random number generator.'
homepage 'https://github.com/ruby/securerandom'
version "0.3.1-#{CREW_RUBY_VER}"
license 'Ruby'
compatibility 'all'
source_url 'SKIP'
conflicts_ok
no_compile_needed
end

13
packages/ruby_set.rb Normal file
View File

@@ -0,0 +1,13 @@
require 'buildsystems/ruby'
class Ruby_set < RUBY
description 'Provides a class to deal with collections of unordered, unique values.'
homepage 'https://github.com/ruby/set'
version "1.1.0-#{CREW_RUBY_VER}"
license 'Ruby'
compatibility 'all'
source_url 'SKIP'
conflicts_ok
no_compile_needed
end

16
packages/ruby_shell.rb Normal file
View File

@@ -0,0 +1,16 @@
require 'buildsystems/ruby'
class Ruby_shell < RUBY
description 'An idiomatic Ruby interface for common UNIX shell commands.'
homepage 'https://github.com/ruby/shell'
version "0.8.1-#{CREW_RUBY_VER}"
license 'BSD-2-Clause'
compatibility 'all'
source_url 'SKIP'
depends_on 'ruby_e2mmap' # R
depends_on 'ruby_sync' # R
conflicts_ok
no_compile_needed
end

View File

@@ -0,0 +1,13 @@
require 'buildsystems/ruby'
class Ruby_shellwords < RUBY
description 'Manipulates strings with word parsing rules of unix bourne shell.'
homepage 'https://github.com/ruby/shellwords'
version "0.2.0-#{CREW_RUBY_VER}"
license 'Ruby'
compatibility 'all'
source_url 'SKIP'
conflicts_ok
no_compile_needed
end

View File

@@ -0,0 +1,13 @@
require 'buildsystems/ruby'
class Ruby_singleton < RUBY
description 'The singleton module implements the singleton pattern.'
homepage 'https://github.com/ruby/singleton'
version "0.2.0-#{CREW_RUBY_VER}"
license 'Ruby'
compatibility 'all'
source_url 'SKIP'
conflicts_ok
no_compile_needed
end

13
packages/ruby_stringio.rb Normal file
View File

@@ -0,0 +1,13 @@
require 'buildsystems/ruby'
class Ruby_stringio < RUBY
description 'Pseudo `io` class from/to `string`.'
homepage 'https://github.com/ruby/stringio'
version "3.1.1-#{CREW_RUBY_VER}"
license 'Ruby'
compatibility 'all'
source_url 'SKIP'
conflicts_ok
no_compile_needed
end

View File

@@ -4,7 +4,7 @@ class Ruby_strscan < RUBY
description 'Provides lexical scanning operations on a String.'
homepage 'https://github.com/ruby/strscan'
version "3.1.0-#{CREW_RUBY_VER}"
license 'Ruby'
license 'BSD-2-Clause'
compatibility 'all'
source_url 'SKIP'
binary_compression 'gem'

13
packages/ruby_sync.rb Normal file
View File

@@ -0,0 +1,13 @@
require 'buildsystems/ruby'
class Ruby_sync < RUBY
description 'A module that provides a two-phase lock with a counter.'
homepage 'https://github.com/ruby/sync'
version "0.5.0-#{CREW_RUBY_VER}"
license 'BSD-2-Clause'
compatibility 'all'
source_url 'SKIP'
conflicts_ok
no_compile_needed
end

Some files were not shown because too many files have changed in this diff Show More