mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2026-09-24 04:59:14 -07:00
dev-ruby/facter: fix vague Gem::MissingSpecError
Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
This commit is contained in:
56
dev-ruby/facter/facter-4.7.0-r1.ebuild
Normal file
56
dev-ruby/facter/facter-4.7.0-r1.ebuild
Normal file
@@ -0,0 +1,56 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
USE_RUBY="ruby30 ruby31 ruby32"
|
||||
RUBY_FAKEGEM_GEMSPEC="facter.gemspec"
|
||||
RUBY_FAKEGEM_RECIPE_TEST="rspec3"
|
||||
RUBY_FAKEGEM_RECIPE_DOC="yard"
|
||||
|
||||
inherit ruby-fakegem
|
||||
|
||||
DESCRIPTION="A cross-platform ruby library for retrieving facts from operating systems"
|
||||
HOMEPAGE="http://www.puppetlabs.com/puppet/related-projects/facter/"
|
||||
|
||||
LICENSE="Apache-2.0"
|
||||
SLOT="0"
|
||||
#IUSE="test"
|
||||
if [[ ${PV} == 9999 ]] ; then
|
||||
inherit git-r3
|
||||
EGIT_REPO_URI="https://github.com/puppetlabs/facter.git"
|
||||
EGIT_BRANCH="master"
|
||||
else
|
||||
[[ "${PV}" = *_rc* ]] || \
|
||||
KEYWORDS="~amd64 ~riscv ~x86"
|
||||
#KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
|
||||
SRC_URI="https://github.com/puppetlabs/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
|
||||
fi
|
||||
|
||||
#RESTRICT="!test? ( test )"
|
||||
|
||||
ruby_add_rdepend "dev-ruby/hocon <dev-ruby/thor-2.0 dev-ruby/ffi dev-ruby/sys-filesystem"
|
||||
ruby_add_bdepend "test? ( dev-ruby/simplecov dev-ruby/timecop dev-ruby/webmock )"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/facter-4.4.3-rspec-gentoo-tweak.patch
|
||||
"${FILESDIR}"/facter-4.7.0-gentoo-thor-gemspec.patch
|
||||
)
|
||||
|
||||
src_unpack() {
|
||||
if [[ ${PV} == 9999 ]] ; then
|
||||
git-r3_src_unpack
|
||||
fi
|
||||
ruby-ng_src_unpack
|
||||
}
|
||||
|
||||
all_ruby_prepare() {
|
||||
sed -e 's/__dir__/"."/' \
|
||||
-e 's/__FILE__/"'${RUBY_FAKEGEM_GEMSPEC}'"/' \
|
||||
-i ${RUBY_FAKEGEM_GEMSPEC} || die
|
||||
# Breaks tests; handle deps ourselves
|
||||
sed -e "/require 'bundler/d" -i spec/spec_helper.rb || die
|
||||
# dev tasks not needed, but block tests
|
||||
for f in tasks/rubocop.rake tasks/check.rake ; do
|
||||
test -e ${f} && mv -f ${f}{,.DISABLE}
|
||||
done
|
||||
}
|
||||
36
dev-ruby/facter/files/facter-4.7.0-gentoo-thor-gemspec.patch
Normal file
36
dev-ruby/facter/files/facter-4.7.0-gentoo-thor-gemspec.patch
Normal file
@@ -0,0 +1,36 @@
|
||||
Upstream Facter still supports Ruby 2.5 due to Puppetserver 7, but the Thor
|
||||
dependency dropped Ruby 2.5 support in the 1.3 series.
|
||||
|
||||
That doesn't matter for Gentoo, because Gentoo dropped Ruby 2.5 long ago, so
|
||||
tweak the dependency to permit newer Thor.
|
||||
|
||||
This stops the incredibly vague error:
|
||||
```
|
||||
$ puppet parser validate ..
|
||||
Error: Could not initialize global default settings: Gem::MissingSpecError
|
||||
```
|
||||
|
||||
Reference: https://github.com/puppetlabs/facter/issues/2687
|
||||
Reference: https://github.com/puppetlabs/facter/pull/2674
|
||||
Reference: https://github.com/puppetlabs/facter/pull/2686
|
||||
Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
|
||||
|
||||
diff '--color=auto' -Nuar facter-4.7.0.orig/ext/project_data.yaml facter-4.7.0/ext/project_data.yaml
|
||||
--- facter-4.7.0.orig/ext/project_data.yaml 2024-04-05 10:45:18.000000000 -0700
|
||||
+++ facter-4.7.0/ext/project_data.yaml 2024-07-20 10:20:06.637005127 -0700
|
||||
@@ -15,4 +15,4 @@
|
||||
gem_required_ruby_version: ['>= 2.5', '< 4.0']
|
||||
gem_runtime_dependencies:
|
||||
hocon: ~> 1.3
|
||||
- thor: ['>= 1.0.1', '< 1.3']
|
||||
+ thor: ['>= 1.0.1', '< 2.0']
|
||||
diff '--color=auto' -Nuar facter-4.7.0.orig/facter.gemspec facter-4.7.0/facter.gemspec
|
||||
--- facter-4.7.0.orig/facter.gemspec 2024-07-20 10:18:09.763758108 -0700
|
||||
+++ facter-4.7.0/facter.gemspec 2024-07-20 10:19:55.470346750 -0700
|
||||
@@ -46,5 +46,5 @@
|
||||
spec.add_development_dependency 'yard', '~> 0.9'
|
||||
|
||||
spec.add_runtime_dependency 'hocon', '~> 1.3'
|
||||
- spec.add_runtime_dependency 'thor', ['>= 1.0.1', '< 1.3'] # Thor 1.3.0 drops support for Ruby 2.5
|
||||
+ spec.add_runtime_dependency 'thor', ['>= 1.0.1', '< 2.0'] # Thor 1.3.0 drops support for Ruby 2.5 - which doesn't matter for Gentoo
|
||||
end
|
||||
Reference in New Issue
Block a user