summaryrefslogtreecommitdiff
path: root/dev-ruby/rubygems
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
committerV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
commit4f2d7949f03e1c198bc888f2d05f421d35c57e21 (patch)
treeba5f07bf3f9d22d82e54a462313f5d244036c768 /dev-ruby/rubygems
reinit the tree, so we can have metadata
Diffstat (limited to 'dev-ruby/rubygems')
-rw-r--r--dev-ruby/rubygems/Manifest10
-rw-r--r--dev-ruby/rubygems/files/auto_gem.rb7
-rw-r--r--dev-ruby/rubygems/files/auto_gem.rb.ruby1910
-rw-r--r--dev-ruby/rubygems/files/conf.d-gem_server5
-rw-r--r--dev-ruby/rubygems/files/gentoo-defaults.rb42
-rw-r--r--dev-ruby/rubygems/files/init.d-gem_server222
-rw-r--r--dev-ruby/rubygems/metadata.xml11
-rw-r--r--dev-ruby/rubygems/rubygems-2.6.13.ebuild111
8 files changed, 218 insertions, 0 deletions
diff --git a/dev-ruby/rubygems/Manifest b/dev-ruby/rubygems/Manifest
new file mode 100644
index 000000000000..193ba10a357a
--- /dev/null
+++ b/dev-ruby/rubygems/Manifest
@@ -0,0 +1,10 @@
+AUX auto_gem.rb 159 SHA256 fe1efe24cd0ba36c55449e9623cd0be394980f37d12468624dad7ffdef72f4dc SHA512 e42e790013d20335ca5319803518102593408d077f22c95dcb08969c69d3a81e49e47cd002715bf760bfcd9a29304002354d8add42fd2415fb10a0a2a323d64c WHIRLPOOL 55931d6c7fa64cd95bb477a9239d058ec6c772e27712d4379372b4d2517dcaa5c15dcde63255065d80ddbd68476abe85ed0507cbfc4fda564c5cee5bd748e82b
+AUX auto_gem.rb.ruby19 509 SHA256 f0f7f61b110955325be52d278fcc1d3f3ea395cd9523dba33af37a44fd59666d SHA512 2b8f4ae00fae383357dd1eb1159ecf1689cb5b79e996688ae091a157b9f27e980761ed8a771d9d3b954d325f817972c4d02f4b5d3c8f4307d2cebce7651af666 WHIRLPOOL 18a5d3452a907bf6b6da41c882fb787191c95c2a18c86dedcdcf2077a34b607b6aa91fa8cdcc5cbc12ca32c58269626a786415118b264edaf152fe8d60a29012
+AUX conf.d-gem_server 81 SHA256 aa850780bebe0e31da9732d8707a748567ca72716fd91e294dc712e71f82db2f SHA512 71630a0530ec62f4024d9bfc4e6afe1f409f3bcb5d71ee5876d1e190c9e69016571ca8f500fcc7ffea6cbc36a8dab5eef2d0c61f72de99f2776c9137010b9ccd WHIRLPOOL a99d35afa6955ad585d5e2433648130ea50065dd1f2cd1bc3763390bd20740ecd6e144a056da5067190048a9a47de20b6156e6b70c64348663f13391974978ae
+AUX gentoo-defaults.rb 972 SHA256 c0f821041391c262754a5caf7314562137218119eb3510b7edfc070462c3ca57 SHA512 fd5a33c433041efeefba4bb8d550b8db66f31d4c0966188f07943f4f575ee9e13da6ef6fd66f89a4b3b979c5b310d96e2876407b79aee6ed404ca3027859160c WHIRLPOOL f31f380016108649bcf64feff752a02f1c464990cee97f89f1bb4017225968d04d684c24142c4123d2ee987783189d318c444b80953f80504c5857b939e88ae4
+AUX init.d-gem_server2 503 SHA256 f2b2aaa83e69482e1dd6b71c0c0c4b82375029d4e23f6347e8c5560b62840579 SHA512 8b9386b93a8ef43fffba5a8c4c5232265a9b0d146d24839e75874721d3377ae0c3d0f52f14592e54c9ee94d26d7a81bb125b25f8c270253cc27e4a76dd64757d WHIRLPOOL f900230bc3a753d764347e209b937c91bfca456d36416468dbdc91b7e6056444f8de4cceb2c89a1b501db0dda1e3941ccc04953c2b9dcb16e9e4608032e568f2
+DIST rubygems-2.6.13.tgz 768906 SHA256 d041502ae77e8d49e0a436483fb91f9ad6cc1489e49e0735e7c4a7cf10e728c9 SHA512 c952b6061a9a0778db304c3aa5bea693e71ae2564abfb19f8b123eef66eb1e3877fc7c36f4f1527da97bb320870cbfd4574ac57ad88e850a44fadd67ebdac152 WHIRLPOOL b03b7fcc9b4e84f1692afcc5d7111e75ade5fe777ec73f6006580e65be1f23101f0c29b9d2e9f9af5d66bb5f46ab3919cd11e37126758e9edd66609a47085739
+EBUILD rubygems-2.6.13.ebuild 4064 SHA256 8a7338cb8c4b8997eaa754e8adc841ccea1fc015346f9759268cc5f1b20100e4 SHA512 c8671ca33ba19c8629914e0743bef1b5ba3e0d09dd094463586e99659d99419bbb13202a12d2a9c69998102a2a6e314cb7aeabeae4840a89ed315cba4af50fbd WHIRLPOOL b2c77bee1d1dd051cb74e444b46bf6bb021269c7e7d0add53eb101728f8e1695ecb5cc76faa09ae51ef40128000f4dbd2c80b8e290552ee78375dae53a2fdbc4
+MISC ChangeLog 7072 SHA256 bd2bc7bccd485cebf61f987e368bd367082f05f4d0de7eef72268a17a37f9ff0 SHA512 a5b6e17113533e24f48757d1c02cd7a9c95c209a01d49c5ccc00b4e51ca90bc33a7c645aef0d43ca92b3db182b91fc823bd2e3068b112fa9744b78937cf72fc0 WHIRLPOOL 2d1853337f923ad73b3e30304013b9a169299cbb4df69863d18adb30fb506b386973d327688b87340f64566f3a468ddd7dbacc25662733c9c758038376c07b9f
+MISC ChangeLog-2015 41896 SHA256 305d77cfe24e0470947e40901d582b1a2973e1f7f37777730f655f4576cec23f SHA512 bc2cdc365c3dc0efac2e30a02e9d9d6333fc2fd023c27ee038e1614c076c10abe2890265a62c93763794971ff9821fdf2cdd1d62bf8514c2bb29118b671cd61b WHIRLPOOL c91c086363e286572b483c5a9612b75a69351cdcaa651612b26341c0c795602e7c8dfbf1df66661f6f410d0b67f0b6eece369742fdc5a80ca837fd9c7c9410ee
+MISC metadata.xml 335 SHA256 bab66dededb00ca646623a09584d00c8639c00aa41c8827b5990358cd023e6e9 SHA512 fd7bf880ad68fe5f1fe8eb79f9662af87831ed499517d5a97e22f18a4ddafc69d53118f020e15c3b8b171fe144bf6cb0ce799beaa6e4e4bdc01c984ab582388e WHIRLPOOL 660543fa0d7e9aea36220a8f98a9e7f39ecd180533cf712c101766adc45bea546431287af302737383337c32d597efe7983db6500453b109ffa51dc13093042b
diff --git a/dev-ruby/rubygems/files/auto_gem.rb b/dev-ruby/rubygems/files/auto_gem.rb
new file mode 100644
index 000000000000..5c4f540a92df
--- /dev/null
+++ b/dev-ruby/rubygems/files/auto_gem.rb
@@ -0,0 +1,7 @@
+# This file is installed by Gentoo's rubygems package.
+# It's intended to help automate the loading of rubygems
+
+begin
+require 'rubygems'
+rescue LoadError
+end
diff --git a/dev-ruby/rubygems/files/auto_gem.rb.ruby19 b/dev-ruby/rubygems/files/auto_gem.rb.ruby19
new file mode 100644
index 000000000000..e7d564264d68
--- /dev/null
+++ b/dev-ruby/rubygems/files/auto_gem.rb.ruby19
@@ -0,0 +1,10 @@
+# DO NOT USE THIS FILE!
+# ---------------------
+# This file is a placebo for Ruby 1.9 to work with a legacy feature, Gentoo
+# added to Ruby 1.8 and earlier, loading rubygems automatically (auto_gem).
+# It is no longer needed, but ruby19 needs this file to operate properly on
+# a system containing older versions of Ruby and thus the legacy feature.
+#
+# REMOVAL NOTE:
+# You may remove this file if you are running a Ruby >=1.9.1 *only* system
+# or have disabled the Gentoo auto_gem.rb/RUBYOPT=auto_gem magic.
diff --git a/dev-ruby/rubygems/files/conf.d-gem_server b/dev-ruby/rubygems/files/conf.d-gem_server
new file mode 100644
index 000000000000..b9cfa3f557ee
--- /dev/null
+++ b/dev-ruby/rubygems/files/conf.d-gem_server
@@ -0,0 +1,5 @@
+# /etc/conf.d/gem_server
+
+# See `gem_server --help` for more
+
+GEM_SERVER_OPTS=""
diff --git a/dev-ruby/rubygems/files/gentoo-defaults.rb b/dev-ruby/rubygems/files/gentoo-defaults.rb
new file mode 100644
index 000000000000..a645f4868281
--- /dev/null
+++ b/dev-ruby/rubygems/files/gentoo-defaults.rb
@@ -0,0 +1,42 @@
+module Gem
+
+ class << self
+ def portage_gems_dir
+ ConfigMap[:sitelibdir].gsub('site_ruby', 'gems')
+ end
+
+ def local_dir
+ portage_gems_dir.gsub('@GENTOO_PORTAGE_EPREFIX@/usr', '@GENTOO_PORTAGE_EPREFIX@/usr/local')
+ end
+
+ undef :default_dir
+ def default_dir
+ Process.euid == 0 ? local_dir : user_dir
+ end
+
+ undef :default_path
+ def default_path
+ [user_dir, local_dir, portage_gems_dir]
+ end
+
+ undef :default_bindir
+ def default_bindir
+ Process.euid == 0 ? "@GENTOO_PORTAGE_EPREFIX@/usr/local/bin" : File.join(user_dir, 'bin')
+ end
+
+ undef :ruby_engine
+ def ruby_engine
+ if defined? RUBY_DESCRIPTION and RUBY_DESCRIPTION =~ /Ruby Enterprise Edition/
+ "rubyee"
+ else
+ # Ruby 1.8 and Ruby 1.9.2_rc2 and later install here, and JRuby
+ # rewrites that anyway.
+ "ruby"
+ end
+ end
+
+ def system_config_path
+ "@GENTOO_PORTAGE_EPREFIX@/etc"
+ end
+ end
+end
diff --git a/dev-ruby/rubygems/files/init.d-gem_server2 b/dev-ruby/rubygems/files/init.d-gem_server2
new file mode 100644
index 000000000000..c7a6b6f1dc0b
--- /dev/null
+++ b/dev-ruby/rubygems/files/init.d-gem_server2
@@ -0,0 +1,22 @@
+#!/sbin/openrc-run
+# Copyright 1999-2008 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+PID=/var/run/gem_server.pid
+
+depend() {
+ need localmount net
+}
+
+start() {
+ ebegin "Starting gem_server"
+ start-stop-daemon --start --chuid nobody --quiet --background --make-pidfile \
+ --pidfile ${PID} --exec /usr/bin/ruby -- /usr/bin/gem server ${GEM_SERVER_OPTS}
+ eend ${?}
+}
+
+stop() {
+ ebegin "Stopping gem_server"
+ start-stop-daemon --stop --pidfile ${PID}
+ eend ${?}
+}
diff --git a/dev-ruby/rubygems/metadata.xml b/dev-ruby/rubygems/metadata.xml
new file mode 100644
index 000000000000..2a41a1260a3c
--- /dev/null
+++ b/dev-ruby/rubygems/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <use>
+ <flag name="server">Install support for the rubygems server</flag>
+ </use>
+</pkgmetadata>
diff --git a/dev-ruby/rubygems/rubygems-2.6.13.ebuild b/dev-ruby/rubygems/rubygems-2.6.13.ebuild
new file mode 100644
index 000000000000..1740977337c5
--- /dev/null
+++ b/dev-ruby/rubygems/rubygems-2.6.13.ebuild
@@ -0,0 +1,111 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+USE_RUBY="ruby22 ruby23 ruby24"
+
+inherit ruby-ng prefix
+
+DESCRIPTION="Centralized Ruby extension management system"
+HOMEPAGE="https://rubygems.org/"
+LICENSE="|| ( Ruby MIT )"
+
+SRC_URI="https://rubygems.org/rubygems/${P}.tgz"
+
+KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~mips ppc ppc64 ~s390 ~sh ~sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+SLOT="0"
+IUSE="server test"
+
+PDEPEND="server? ( >=dev-ruby/builder-2.1 )"
+
+ruby_add_bdepend "
+ test? (
+ >=dev-ruby/minitest-4:0
+ dev-ruby/rdoc
+ )"
+
+all_ruby_prepare() {
+
+ mkdir -p lib/rubygems/defaults || die
+ cp "${FILESDIR}/gentoo-defaults.rb" lib/rubygems/defaults/operating_system.rb || die
+
+ eprefixify lib/rubygems/defaults/operating_system.rb
+
+ # Disable broken tests when changing default values:
+ sed -i -e '/test_default_path/,/^ end/ s:^:#:' test/rubygems/test_gem.rb || die
+
+ # Skip tests for default gems that all fail
+ sed -i -e '/test_default_gems_use_full_paths/,/^ end/ s:^:#:' test/rubygems/test_gem.rb || die
+ sed -i -e '/test_execute_ignore_default_gem_verbose/,/^ end/ s:^:#:' test/rubygems/test_gem_commands_cleanup_command.rb || die
+ sed -i -e '/test_execute_default_gem/,/^ end/ s:^:#:' test/rubygems/test_gem_commands_contents_command.rb test/rubygems/test_gem_commands_pristine_command.rb || die
+ sed -i -e '/test_execute_\(default_details\|show_default_gems\)/,/^ end/ s:^:#:' test/rubygems/test_gem_commands_query_command.rb || die
+ sed -i -e '/test_execute_all/,/^ end/ s:^:#:' test/rubygems/test_gem_commands_uninstall_command.rb || die
+ sed -i -e '/\(test_default_gem\|test_check_executable_overwrite\|test_require_works_after_cleanup\)/,/^ end/ s:^:#:' \
+ test/rubygems/test_{gem_installer,require}.rb || die
+ sed -i -e '/test_\(load_default_gem\|default_spec_stub\)/,/^ end/ s:^:#:' test/rubygems/test_gem_specification.rb || die
+ sed -i -e '/test_uninstall_default_gem/,/^ end/ s:^:#:' test/rubygems/test_gem_uninstaller.rb || die
+ rm -f test/rubygems/test_gem_indexer.rb || die
+ sed -i -e '/test_\(require_when_gem_defined\|realworld_default_gem\)/,/^ end/ s:^:#:' test/rubygems/test_require.rb || die
+
+ # Avoid tests playing tricks with ruby engine that don't seem to
+ # work for us.
+ rm test/rubygems/test_gem_request_set_gem_dependency_api.rb || die
+
+ # Avoid test requiring network access
+ sed -i -e '/test_download_to_cache/askip "requires network access"' test/rubygems/test_gem_remote_fetcher.rb || die
+}
+
+each_ruby_compile() {
+ # Not really a build but...
+ sed -i -e 's:#!.*:#!'"${RUBY}"':' bin/gem
+}
+
+each_ruby_test() {
+ # Unset RUBYOPT to avoid interferences, bug #158455 et. al.
+ #unset RUBYOPT
+
+ if [[ "${EUID}" -ne "0" ]]; then
+ RUBYLIB="$(pwd)/lib${RUBYLIB+:${RUBYLIB}}" ${RUBY} -I.:lib:test \
+ -e 'Dir["test/**/test_*.rb"].each { |tu| require tu }' || die "tests failed"
+ else
+ ewarn "The userpriv feature must be enabled to run tests, bug 408951."
+ eerror "Testsuite will not be run."
+ fi
+}
+
+each_ruby_install() {
+ # Unset RUBYOPT to avoid interferences, bug #158455 et. al.
+ unset RUBYOPT
+ export RUBYLIB="$(pwd)/lib${RUBYLIB+:${RUBYLIB}}"
+
+ pushd lib &>/dev/null
+ doruby -r *
+ popd &>/dev/null
+
+ local sld=$(ruby_rbconfig_value 'sitelibdir')
+ insinto "${sld#${EPREFIX}}" # bug #320813
+ newins "${FILESDIR}/auto_gem.rb.ruby19" auto_gem.rb || die
+
+ newbin bin/gem $(basename ${RUBY} | sed -e 's:ruby:gem:') || die
+}
+
+all_ruby_install() {
+ dodoc History.txt README.rdoc
+
+ if use server; then
+ newinitd "${FILESDIR}/init.d-gem_server2" gem_server || die "newinitd failed"
+ newconfd "${FILESDIR}/conf.d-gem_server" gem_server || die "newconfd failed"
+ fi
+}
+
+pkg_postinst() {
+ if [[ ! -n $(readlink "${ROOT}"usr/bin/gem) ]] ; then
+ eselect ruby set $(eselect --brief --colour=no ruby show | head -n1)
+ fi
+
+ ewarn
+ ewarn "To switch between available Ruby profiles, execute as root:"
+ ewarn "\teselect ruby set ruby(21|22|...)"
+ ewarn
+}