Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Build core Ruby packages on EL9 #10144

Merged
merged 5 commits into from
Dec 18, 2023

Conversation

evgeni
Copy link
Member

@evgeni evgeni commented Dec 18, 2023

No description provided.

@evgeni
Copy link
Member Author

evgeni commented Dec 18, 2023

  • rkerberos needs to be built after rake-compiler
  • websocket-driver needs to be built after websocket-extensions
  • sassc doesn't build without libsass (which is in EPEL now)

Source1: https://www.ruby-lang.org/en/about/license.txt
Source1: license.txt
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

the remote-URL-but-not-annexed confused the srpmmodule:

TASK [build_package : Build SRPM] *****************************************************************************************************************************************************************************************************
fatal: [rubygem-unicode]: FAILED! => changed=false 
  command: rpmbuild -bs --define _topdir /tmp/tmpiskuazz5 --define _sourcedir /tmp/tmpiskuazz5/SOURCES --define _builddir /tmp/tmpiskuazz5/BUILD --define _srcrpmdir /tmp/tmpiskuazz5 --define _rpmdir /tmp/tmpiskuazz5 --undefine dist /tmp/tmpiskuazz5/rubygem-unicode.spec
  msg: Failed to srpm build
  output: |-
    setting SOURCE_DATE_EPOCH=1615420800
    error: Bad file: /tmp/tmpiskuazz5/SOURCES/license.txt: No such file or directory
  
    RPM build errors:
        Bad file: /tmp/tmpiskuazz5/SOURCES/license.txt: No such file or directory

This was the quickest fix, but we might want to fix the module too. 👀 @ehelms

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this gem isn't even used anymore:

# dnf repoquery --whatrequires rubygem-unicode --quiet
Failed to set locale, defaulting to C.UTF-8

Digging further tells me it was dropped from Hammer: theforeman/hammer-cli#376

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Oh nice, will drop it then

(the bug in srpm remains ;-) )

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think it's a bug: you don't provide the source, or a way to verify the source if it is retrieved. We shouldn't support that.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Aye, unicode should be a goner now (theforeman/hammer-cli@327f191)

Copy link
Member Author

@evgeni evgeni Dec 18, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Well, the file is in git, so I do provide the source. Setting the Source0 to an URL just denotes where the file came from.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@@ -22,6 +22,7 @@ BuildRequires: %{?scl_prefix_ruby}ruby(release)
BuildRequires: %{?scl_prefix_ruby}ruby-devel >= 1.8.7
BuildRequires: %{?scl_prefix_ruby}rubygems-devel >= 1.3.5
Provides: %{?scl_prefix}rubygem(%{gem_name}) = %{version}
BuildRequires: gcc
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If we regenerate the spec I think this should be automatically done. There is an update to 1.6.9 available, so perhaps just do that? Also drops the SCL stuff.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

sqlite3 1.5.0+ introduces a dep on mini_portile2, which I didn't want to open up as a can-o-worms right now. only updating to 1.4.4 then,

Source1: https://www.ruby-lang.org/en/about/license.txt
Source1: license.txt
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this gem isn't even used anymore:

# dnf repoquery --whatrequires rubygem-unicode --quiet
Failed to set locale, defaulting to C.UTF-8

Digging further tells me it was dropped from Hammer: theforeman/hammer-cli#376

@evgeni
Copy link
Member Author

evgeni commented Dec 18, 2023

[test rpm-copr]

(released rake-compiler)

@evgeni
Copy link
Member Author

evgeni commented Dec 18, 2023

that's as good as it gets for now.

@evgeni evgeni merged commit 333d08c into theforeman:rpm/develop Dec 18, 2023
7 of 8 checks passed
@evgeni evgeni deleted the update-eventmachine-spec branch December 18, 2023 16:01
@ehelms
Copy link
Member

ehelms commented Dec 18, 2023

  • rkerberos needs to be built after rake-compiler
  • websocket-driver needs to be built after websocket-extensions
  • sassc doesn't build without libsass (which is in EPEL now)

It would be nice to capture these in "tiers" of dependencies to make rebuilds easier in the future. Or change Obal to have some number of retries to rebuild in case its a dependency issue.

@evgeni
Copy link
Member Author

evgeni commented Dec 18, 2023

  • rkerberos needs to be built after rake-compiler
  • websocket-driver needs to be built after websocket-extensions
  • sassc doesn't build without libsass (which is in EPEL now)

It would be nice to capture these in "tiers" of dependencies to make rebuilds easier in the future. Or change Obal to have some number of retries to rebuild in case its a dependency issue.

I can create a ruby_core_packages_tierX group, and putt rake compiler and websocket extensions in an own.

Not sure this should apply to sassc too?

@evgeni
Copy link
Member Author

evgeni commented Dec 19, 2023

#10149

sassc actually also build-requires ffi, so moved it too

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
No open projects
Status: Done
3 participants