Compare commits
7 Commits
| Author | SHA256 | Date | |
|---|---|---|---|
| 692a497e25 | |||
| 5a5423de46 | |||
| d7b02037eb | |||
| 34b0b9d7ac | |||
| 62e5355e82 | |||
| 3840ee9842 | |||
| aba44c895d |
@@ -8,6 +8,7 @@ export LANG="en_US.UTF-8"
|
|||||||
shopt -s nullglob
|
shopt -s nullglob
|
||||||
for ruby in $(/usr/bin/ruby-find-versioned) ; do
|
for ruby in $(/usr/bin/ruby-find-versioned) ; do
|
||||||
export GEM_HOME="$(${ruby} -r rubygems -e 'puts Gem.default_dir')"
|
export GEM_HOME="$(${ruby} -r rubygems -e 'puts Gem.default_dir')"
|
||||||
|
export RUBY="${ruby}"
|
||||||
$ruby -x $0 "$@"
|
$ruby -x $0 "$@"
|
||||||
done
|
done
|
||||||
exit $?
|
exit $?
|
||||||
|
|||||||
@@ -35,7 +35,7 @@
|
|||||||
found_rpm_prefix = rpm_suffix_for_feature(feature)
|
found_rpm_prefix = rpm_suffix_for_feature(feature)
|
||||||
|
|
||||||
if found_rpm_prefix
|
if found_rpm_prefix
|
||||||
return "Requires: #{RbConfig::CONFIG['RUBY_SO_NAME']}-#{found_rpm_prefix} >= #{RbConfig::CONFIG['RUBY_PROGRAM_VERSION']}"
|
return "%{requires_on_provides_ge #{RbConfig::CONFIG['RUBY_SO_NAME']}-#{found_rpm_prefix}}"
|
||||||
end
|
end
|
||||||
#
|
#
|
||||||
return ""
|
return ""
|
||||||
@@ -136,9 +136,6 @@
|
|||||||
#/ruby2.1
|
#/ruby2.1
|
||||||
gem_plugins_dir = Gem.respond_to?(:plugindir) ? Gem.plugindir : nil
|
gem_plugins_dir = Gem.respond_to?(:plugindir) ? Gem.plugindir : nil
|
||||||
has_plugins = gem_plugins_dir && not( spec.files.select {|filename| filename =~ /rubygems_plugin#{Gem.suffix_regexp}\z/ }.empty? )
|
has_plugins = gem_plugins_dir && not( spec.files.select {|filename| filename =~ /rubygems_plugin#{Gem.suffix_regexp}\z/ }.empty? )
|
||||||
if config[:disable_docs].nil?
|
|
||||||
config[:disable_docs] ||= true
|
|
||||||
end
|
|
||||||
if config[:include_testsuite].nil?
|
if config[:include_testsuite].nil?
|
||||||
config[:include_testsuite] ||= false
|
config[:include_testsuite] ||= false
|
||||||
end
|
end
|
||||||
@@ -166,16 +163,6 @@ Enhances: <%= rb_pkgname %>
|
|||||||
%description -n <%= pkg_basename %><%= config[:version_suffix] %>
|
%description -n <%= pkg_basename %><%= config[:version_suffix] %>
|
||||||
<%= config[:description] or spec.description -%>
|
<%= config[:description] or spec.description -%>
|
||||||
|
|
||||||
<% if spec.has_rdoc? && !(config[:disable_docs]) -%>
|
|
||||||
%package -n <%= pkg_basename %>-doc<%= config[:version_suffix] %>
|
|
||||||
Summary: RDoc documentation for <%= spec.name %>
|
|
||||||
Requires: <%= pkg_basename %><%= config[:version_suffix] %> = <%= spec.version %>
|
|
||||||
|
|
||||||
%description -n <%= pkg_basename %>-doc<%= config[:version_suffix] %>
|
|
||||||
Documentation generated at gem installation time.
|
|
||||||
Usually in RDoc and RI formats.
|
|
||||||
|
|
||||||
<% end -%>
|
|
||||||
<% test_frameworks = Hash.new
|
<% test_frameworks = Hash.new
|
||||||
docdirfiles = []
|
docdirfiles = []
|
||||||
format.file_entries.each do |entry|
|
format.file_entries.each do |entry|
|
||||||
@@ -191,6 +178,7 @@ Usually in RDoc and RI formats.
|
|||||||
}
|
}
|
||||||
%w(changes
|
%w(changes
|
||||||
copying
|
copying
|
||||||
|
contributing
|
||||||
history
|
history
|
||||||
legal
|
legal
|
||||||
licence
|
licence
|
||||||
@@ -275,15 +263,6 @@ fi
|
|||||||
<% end -%>
|
<% end -%>
|
||||||
<%= gem_spec_dir %>/<%= mod_full_name -%>.gemspec
|
<%= gem_spec_dir %>/<%= mod_full_name -%>.gemspec
|
||||||
|
|
||||||
<% if spec.has_rdoc? && !(config[:disable_docs]) -%>
|
|
||||||
%files -n <%= pkg_basename %>-doc<%= config[:version_suffix] %>
|
|
||||||
%defattr(-,root,root,-)
|
|
||||||
%doc <%= gem_doc_dir %>
|
|
||||||
<% unless spec.extensions.empty? or gem_extension_doc.nil? -%>
|
|
||||||
%doc <%= gem_extension_doc %>
|
|
||||||
<% end -%>
|
|
||||||
<% end -%>
|
|
||||||
|
|
||||||
<% if config[:include_testsuite] and !test_frameworks.empty? -%>
|
<% if config[:include_testsuite] and !test_frameworks.empty? -%>
|
||||||
%files -n <%= pkg_basename %>-testsuite<%= config[:version_suffix] %>
|
%files -n <%= pkg_basename %>-testsuite<%= config[:version_suffix] %>
|
||||||
%defattr(-,root,root,-)
|
%defattr(-,root,root,-)
|
||||||
|
|||||||
@@ -1,3 +1,44 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Jan 8 15:04:24 UTC 2026 - Marcus Rueckert <mrueckert@suse.de>
|
||||||
|
|
||||||
|
- Some gems (especially rust based ones) start failing if
|
||||||
|
/usr/bin/ruby is not available. But they can take the desired
|
||||||
|
ruby binary from the RUBY environment variable. Since we can not
|
||||||
|
really set that properly via pre_install, set it within the loop
|
||||||
|
to the current ruby binary before calling the ruby part of
|
||||||
|
gem_install.sh.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Dec 25 00:05:50 UTC 2025 - Marcus Rueckert <mrueckert@suse.de>
|
||||||
|
|
||||||
|
- instead of always recommending the gem2rpm of the default ruby
|
||||||
|
version, lets recommend the version of ruby which we actually
|
||||||
|
install
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Dec 2 16:58:45 UTC 2025 - Marcus Rueckert <mrueckert@suse.de>
|
||||||
|
|
||||||
|
- Fix rubyX.Y-with(out)-yjit/jemalloc Requires. They failed when
|
||||||
|
using prerelease ruby packages. We introduce 2 new macros:
|
||||||
|
|
||||||
|
%requires_on_provides_eq
|
||||||
|
%requires_on_provides_ge
|
||||||
|
|
||||||
|
Which then are used by the subpackage template.
|
||||||
|
|
||||||
|
The macros are copies of the normal %requires_(eq|ge) with 2
|
||||||
|
changes
|
||||||
|
- only the first argument is used
|
||||||
|
- rpm -q is called with --whatprovides
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Dec 2 14:49:26 UTC 2025 - Marcus Rueckert <mrueckert@suse.de>
|
||||||
|
|
||||||
|
- Update gem_packages.spec.erb
|
||||||
|
the has_rdoc? function was actually removed. I really thought
|
||||||
|
would never happen. Since it was removed without a replacement,
|
||||||
|
we disable the rdoc/ri packages all the time now.
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Wed Jan 22 10:27:14 UTC 2025 - Marcus Rueckert <mrueckert@suse.de>
|
Wed Jan 22 10:27:14 UTC 2025 - Marcus Rueckert <mrueckert@suse.de>
|
||||||
|
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
#
|
#
|
||||||
# spec file for package ruby-common
|
# spec file for package ruby-common
|
||||||
#
|
#
|
||||||
# Copyright (c) 2025 SUSE LLC
|
# Copyright (c) 2026 SUSE LLC and contributors
|
||||||
#
|
#
|
||||||
# All modifications and additions to the file contributed by third parties
|
# All modifications and additions to the file contributed by third parties
|
||||||
# remain the property of their copyright owners, unless otherwise agreed
|
# remain the property of their copyright owners, unless otherwise agreed
|
||||||
@@ -22,7 +22,7 @@
|
|||||||
%endif
|
%endif
|
||||||
|
|
||||||
Name: ruby-common
|
Name: ruby-common
|
||||||
Version: 3.2.1
|
Version: 4.0.0
|
||||||
Release: 0
|
Release: 0
|
||||||
# ruby-macros and ruby-common version
|
# ruby-macros and ruby-common version
|
||||||
%define rpm_macros_version 5
|
%define rpm_macros_version 5
|
||||||
@@ -54,8 +54,21 @@ License: MIT
|
|||||||
Group: Development/Languages/Ruby
|
Group: Development/Languages/Ruby
|
||||||
URL: https://github.com/openSUSE/ruby-packaging/
|
URL: https://github.com/openSUSE/ruby-packaging/
|
||||||
Requires: /usr/bin/getopt
|
Requires: /usr/bin/getopt
|
||||||
|
#
|
||||||
|
# the requires
|
||||||
|
#
|
||||||
Requires: rubygem(gem2rpm)
|
Requires: rubygem(gem2rpm)
|
||||||
Recommends: rubygem(%{rb_default_ruby_abi}:gem2rpm)
|
# old recommends
|
||||||
|
# Recommends: rubygem(%{rb_default_ruby_abi}:gem2rpm)
|
||||||
|
# new recommends
|
||||||
|
Recommends: (rubygem(ruby:4.0.0:gem2rpm) if ruby4.0)
|
||||||
|
Recommends: (rubygem(ruby:2.1.0:gem2rpm) if ruby2.1)
|
||||||
|
Recommends: (rubygem(ruby:2.5.0:gem2rpm) if ruby2.5)
|
||||||
|
Recommends: (rubygem(ruby:3.3.0:gem2rpm) if ruby3.3)
|
||||||
|
Recommends: (rubygem(ruby:3.4.0:gem2rpm) if ruby3.4)
|
||||||
|
#
|
||||||
|
#/ The End
|
||||||
|
#
|
||||||
Requires: fdupes
|
Requires: fdupes
|
||||||
BuildArch: noarch
|
BuildArch: noarch
|
||||||
Provides: ruby-macros = %{rpm_macros_version}
|
Provides: ruby-macros = %{rpm_macros_version}
|
||||||
|
|||||||
@@ -103,3 +103,6 @@ done \
|
|||||||
%gem_extensions %(%{rb_binary} -rrubygems -e 'print Gem::Specification.new.extensions_dir' || echo %{_libdir}/ruby/gems/%{rb_ver}/gems )
|
%gem_extensions %(%{rb_binary} -rrubygems -e 'print Gem::Specification.new.extensions_dir' || echo %{_libdir}/ruby/gems/%{rb_ver}/gems )
|
||||||
%gem_doc_ext %(%{rb_binary} -r rubygems -e 'bs = Gem::Specification.new; rp = bs.extensions_dir.rpartition(bs.base_dir); print rp[1]+"/doc"+rp[2]' )
|
%gem_doc_ext %(%{rb_binary} -r rubygems -e 'bs = Gem::Specification.new; rp = bs.extensions_dir.rpartition(bs.base_dir); print rp[1]+"/doc"+rp[2]' )
|
||||||
%gem_platform %(%{rb_binary} -r rubygems -r rbconfig -e 'print Gem::Platform.new(RbConfig::CONFIG["arch"]).to_s' )
|
%gem_platform %(%{rb_binary} -r rubygems -r rbconfig -e 'print Gem::Platform.new(RbConfig::CONFIG["arch"]).to_s' )
|
||||||
|
|
||||||
|
%requires_on_provides_eq() %{expand:%(t=$(echo '%1' | LC_ALL=C xargs -r rpm -q --whatprovides --qf 'Requires: %1 = %%{epoch}:%%{version}\\n' | sed -e 's/ (none):/ /' -e 's/ 0:/ /' | grep -v "is not"); test -n "$t" || echo "%%{error: %%%%{requires_on_provides_eq %1} does not resolve}"; echo "$t")}
|
||||||
|
%requires_on_provides_ge() %{expand:%(t=$(echo '%1' | LC_ALL=C xargs -r rpm -q --whatprovides --qf 'Requires: %1 >= %%{epoch}:%%{version}\\n' | sed -e 's/ (none):/ /' -e 's/ 0:/ /' | grep -v "is not"); test -n "$t" || echo "%%{error: %%%%{requires_on_provides_ge %1} does not resolve}"; echo "$t")}
|
||||||
Reference in New Issue
Block a user