Bug 2349044 - Review Request: rio - a hardware-accelerated GPU terminal emulator
Summary: Review Request: rio - a hardware-accelerated GPU terminal emulator
Keywords:
Status: CLOSED NOTABUG
Alias: None
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: All
OS: Linux
unspecified
medium
Target Milestone: ---
Assignee: Nobody's working on this, feel free to take it
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks: FE-DEADREVIEW
TreeView+ depends on / blocked
 
Reported: 2025-02-28 17:24 UTC by git.vmg
Modified: 2026-04-06 00:45 UTC (History)
2 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed: 2026-04-06 00:45:22 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)

Description git.vmg 2025-02-28 17:24:44 UTC
Spec URL: https://raw.githubusercontent.com/vedantmgoyal9/rio-rpm/refs/heads/main/rio.spec
SRPM URL: <srpm info here>
Description: Rio terminal is a hardware-accelerated GPU terminal emulator, focusing
to run in desktops and browsers.
Fedora Account System Username: vedantmgoyal

Comment 1 Fedora Review Service 2025-02-28 17:25:03 UTC
Cannot find any valid SRPM URL for this ticket. Common causes are:

- You didn't specify `SRPM URL: ...` in the ticket description
  or any of your comments
- The URL schema isn't HTTP or HTTPS
- The SRPM package linked in your URL doesn't match the package name specified
  in the ticket summary


---
This comment was created by the fedora-review-service
https://github.com/FrostyX/fedora-review-service

If you want to trigger a new Copr build, add a comment containing new
Spec and SRPM URLs or [fedora-review-service-build] string.

Comment 2 Ben Beasley 2025-03-01 14:41:50 UTC
It looks like you forgot to upload a SRPM file, which is mandatory for review.

It also looks like you forgot to deal with a missing license file in the crate:

  # FIXME: no license files detected

Finally, did you try test-building this? If I make assumptions about what rio-fix-metadata-auto.diff might have contained and try a mock-build, it looks like there are a lot of dependencies that would need to be packaged, updated, or patched to allow a slightly older or newer version:

Problem 1: nothing provides requested (crate(copa) >= 0.2.7 with crate(copa) < 0.3.0~)
 Problem 2: nothing provides requested (crate(corcovado/default) >= 0.2.7 with crate(corcovado/default) < 0.3.0~)
 Problem 3: nothing provides requested (crate(dirs/default) >= 6.0.0 with crate(dirs/default) < 7.0.0~)
 Problem 4: nothing provides requested (crate(notify/default) >= 7.0.0 with crate(notify/default) < 8.0.0~)
 Problem 5: nothing provides requested (crate(rio-backend/default) >= 0.2.7 with crate(rio-backend/default) < 0.3.0~)
 Problem 6: nothing provides requested (crate(rio-backend/wayland) >= 0.2.7 with crate(rio-backend/wayland) < 0.3.0~)
 Problem 7: nothing provides requested (crate(rio-backend/x11) >= 0.2.7 with crate(rio-backend/x11) < 0.3.0~)
 Problem 8: nothing provides requested (crate(rio-window) >= 0.2.7 with crate(rio-window) < 0.3.0~)
 Problem 9: nothing provides requested (crate(rio-window/wayland) >= 0.2.7 with crate(rio-window/wayland) < 0.3.0~)
 Problem 10: nothing provides requested (crate(rio-window/wayland-dlopen) >= 0.2.7 with crate(rio-window/wayland-dlopen) < 0.3.0~)
 Problem 11: nothing provides requested (crate(rio-window/x11) >= 0.2.7 with crate(rio-window/x11) < 0.3.0~)
 Problem 12: nothing provides requested (crate(teletypewriter/default) >= 0.2.7 with crate(teletypewriter/default) < 0.3.0~)
 Problem 13: nothing provides requested (crate(unicode-width-16/default) >= 0.1.0 with crate(unicode-width-16/default) < 0.2.0~)
 Problem 14: nothing provides requested (crate(url/default) >= 2.5.4 with crate(url/default) < 3.0.0~)
 Problem 15: nothing provides requested (crate(wgpu/default) >= 24.0.1 with crate(wgpu/default) < 25.0.0~)

Comment 3 git.vmg 2025-03-01 15:03:37 UTC
Hello,  

I need some help with missing dependencies. Should I package them individually, or is there some other way?  

Project's GitHub Repository: https://github.com/raphamorim/rio
Copr: https://copr.fedorainfracloud.org/coprs/vedantmgoyal/rio/

You can check the repository for reference. When I run `rust2rpm`, I get a license file error, and I'm unsure how to resolve it. Since I don’t know the exact issue, I’m not sure how to communicate it to the maintainer. For now, I’ve added the `--ignore-missing-license-files` flag to generate a spec file, but I’m still unable to build it successfully due to the dependency error.

Comment 4 Ben Beasley 2025-03-05 15:23:44 UTC
(In reply to git.vmg from comment #3)
> Hello,  
> 
> I need some help with missing dependencies. Should I package them
> individually, or is there some other way?

Yes, you should package them individually. See https://docs.fedoraproject.org/en-US/packaging-guidelines/Rust/#_vendored_dependencies. This could end up being a reasonably large number of packages, but that’s the nature of a relatively complex application like this.

In some cases, the dependency may already be in Fedora, but with a version that is older or newer than what upstream wants.

For example, the package wants (crate(dirs/default) >= 6.0.0 with crate(dirs/default) < 7.0.0~), and we have rust-dirs 5.0.1. See bug 2337230. The options would be, (1) determine by a combination of reading diffs/changelogs and practical testing that you can safely patch the version range, and do so, or (2) ask the maintainer to update, and help coordinate it if you are able. A SemVer-breaking update like that needs to be coordinated with dependent packages (possibly updating them or patching them to allow the new version), or a compat package for the old version needs to be introduced if that’s not practical.

Another example is url: upstream wants 2.5.4, but 2.5.3 switched to ICU4X as the Unicode backend, which means we have to package dozens of new crates as dependencies. This is desirable, but still a work in progress, so this is a case where you’ll have to just loosen the version bound to allow 2.5.2.

> 
> Project's GitHub Repository: https://github.com/raphamorim/rio
> Copr: https://copr.fedorainfracloud.org/coprs/vedantmgoyal/rio/
> 
> You can check the repository for reference. When I run `rust2rpm`, I get a
> license file error, and I'm unsure how to resolve it. Since I don’t know the
> exact issue, I’m not sure how to communicate it to the maintainer. For now,
> I’ve added the `--ignore-missing-license-files` flag to generate a spec
> file, but I’m still unable to build it successfully due to the dependency
> error.

I opened an upstream PR to fix missing license files in future releases: https://github.com/raphamorim/rio/pull/1003

Until that’s merged and released, you can use something like this in rust2rpm.toml to patch in the license file:

[[package.extra-sources]]
number = 10
file = "https://github.com/raphamorim/rio/raw/refs/tags/v%{version}/LICENSE"
comments = [
  """\
  Missing MIT license text; see \
  “Add missing LICENSE files to several workspace crates,” \
  https://github.com/raphamorim/rio/pull/1003\
  """,
]

[scripts.prep]
pre = [
  "cp -p '%{SOURCE10}' .",
]

Then, you’ll have to add this to "%files devel":

%license %{crate_instdir}/LICENSE

Comment 5 Package Review 2026-03-06 00:45:27 UTC
This is an automatic check from review-stats script.

This review request ticket hasn't been updated for some time. We're sorry
it is taking so long. If you're still interested in packaging this software
into Fedora repositories, please respond to this comment clearing the
NEEDINFO flag.

You may want to update the specfile and the src.rpm to the latest version
available and to propose a review swap on Fedora devel mailing list to increase
chances to have your package reviewed. If this is your first package and you
need a sponsor, you may want to post some informal reviews. Read more at
https://fedoraproject.org/wiki/How_to_get_sponsored_into_the_packager_group.

Without any reply, this request will shortly be considered abandoned
and will be closed.
Thank you for your patience.

Comment 6 Package Review 2026-04-06 00:45:22 UTC
This is an automatic action taken by review-stats script.

The ticket submitter failed to clear the NEEDINFO flag in a month.
As per https://fedoraproject.org/wiki/Policy_for_stalled_package_reviews
we consider this ticket as DEADREVIEW and proceed to close it.


Note You need to log in before you can comment on or make changes to this bug.