Qv2ray: Cannot Build in COPR - EPEL enviroment.

Created on 3 Sep 2020  ·  4Comments  ·  Source: Qv2ray/Qv2ray

  • [x] I'm sure I've tried to reproduce the problem several times and will provide the system environment, each software and its version that is involved in the problem.

Briefly describe this bug:

https://github.com/Qv2ray/Qv2ray/blob/95b7ba95dda696da93f15dab045a0320dd831c5f/makespec/qv2ray.spec.in#L1-L5
https://github.com/Qv2ray/Qv2ray/blob/95b7ba95dda696da93f15dab045a0320dd831c5f/makespec/qv2ray.spec.in#L23-L26

On all default repositories and systems, neither epel-7 nor epel-8 seem to have grpc series packages / modules. And the macro %{?rhel} has been defined in epel, including CentOS and RHEL.
so if the grpc series software packages are excluded, it will cause the failure to build Qv2ray in epel.

How to trigger this bug:

  1. Create a New Build on my copr project.
  2. Specific Clone url to Qv2ray git.
  3. Set the SRPM build method to make srpm.
  4. Submit the build.

It's not a issue about Qv2ray usage, so skipped the following informations

If it's a connection issue, has it happened in other V2Ray clients?

Related screenshots or logs

Please paste your Qv2ray log here:


System Information

Open Preferences -> About, and enter the following info

Version: 
Build info: 
Extra build info: 

Operating systems

  • [ ] Linux
  • [ ] macOS
  • [ ] Windows

Installation source

  • [ ] ArchLinuxCN - Stable
  • [ ] ArchLinuxCN - Dev-git
  • [ ] ArchLinux AUR - Stable
  • [ ] ArchLinux AUR - Development
  • [ ] Fedora - Stable
  • [ ] Fedora - Preview
  • [ ] openSUSE - Stable
  • [ ] openSUSE - Preview
  • [ ] Flathub
  • [ ] Snap
  • [ ] Homebrew Cask
  • [ ] Scoop / Chocolatey / Github Release
  • [ ] Compile manually

Installed plugins, versions and sources

Additional Info

Please hide your server address and UUID if you wish to post the vmess string or your connection setting.

Bugs help wanted platforlinux repcopr packaging

Most helpful comment

rpmfind
pkgs.org
Those two website I know.

Thanks, the second one looks great.
BTW, I found the package src for CentOS, and the useless community build service for CentOS.

Back to this issue, because of the death of libqvb there's no any other replace of grpc. It's better to always require grpc-{devel, plugins}. The building system will refuse the build when the build dependence lack detected.

BBTW, I add test support for CentOS 8 and 8_stream (EPEL needed) (no 7 because of qt 5.9 ...) on OBS. And because of the large lack of build dependencies (qt, python ... related), there is no any RHEL support plan...

All 4 comments

Is there any convenient way to find the detail of a package on RHEL/CentOS like package src for Fedora ? Maybe i can try to packaging Qv2ray for RHEL/CentOS on OBS.

Is there any convenient way to find the detail of a package on RHEL/CentOS like package src for Fedora ? Maybe i can try to packaging Qv2ray for RHEL/CentOS on OBS.

rpmfind
pkgs.org
Those two websites I know.

rpmfind
pkgs.org
Those two website I know.

Thanks, the second one looks great.
BTW, I found the package src for CentOS, and the useless community build service for CentOS.

Back to this issue, because of the death of libqvb there's no any other replace of grpc. It's better to always require grpc-{devel, plugins}. The building system will refuse the build when the build dependence lack detected.

BBTW, I add test support for CentOS 8 and 8_stream (EPEL needed) (no 7 because of qt 5.9 ...) on OBS. And because of the large lack of build dependencies (qt, python ... related), there is no any RHEL support plan...

TL;DR Nothing need Change.

When I read the commit message

Supporting for other distributions like RHEL/CentOS/Suse/OpenSuse requires some dependencies that are not in their official repos so it is not covered in this PR.

I finally got the purpose of this block (A conjecture, not necessarily correct)
https://github.com/Qv2ray/Qv2ray/blob/95b7ba95dda696da93f15dab045a0320dd831c5f/makespec/qv2ray.spec.in#L1-L5
https://github.com/Qv2ray/Qv2ray/blob/95b7ba95dda696da93f15dab045a0320dd831c5f/makespec/qv2ray.spec.in#L23-L26

In rhel platforms,the author may want to build grpc in the system without packaging, then use it to build Qv2ray. so he exclude them as BuildRequires packages in rhel platforms, to use_system_grpc .
But I still think grpc should be included as BuildRequires in all platforms because we cannot build them in copr (we can only build them in our own system). and we can package grpc-{devel, plugins} on copr before packaging Qv2ray to complete the build.
And they are now included on all platforms, so... nothing.

Was this page helpful?
0 / 5 - 0 ratings