Hard to resolve conflict between ruby and ruby2.7

Hi,
I want to install gitlab on my aarch64 server. The gitlab package is in Manjaro and Arch Linux repositories, but only x86_64. However, gitlab also works on aarch64, so I decided to compile Arch Linux package myself for arm. I encountered this problem:

  • GitLab depends on ruby 2.7.
  • In the x86_64 repositories, ruby has version 3.0.1-1, and in the ARM repositories it’s 2.7.
  • Since ruby is version 2.7 in the x86_64 repository then some gitlab-* packages depend on ruby2.7 and some just on ruby.
  • So obviously I can’t install ruby from the ARM repository and ruby2.7 from the x86_64 repository because they will conflict with each other. So I decided to remove the ruby package from the ARM repository and build the packages from Arch Linux’s x86_64 repository for aarch64. I was able to compile them successfully.

So I successfully built this packages from Arch Linux x86_64 repo for aarch64:
ruby-3.0.1-1 (ruby)
ruby-irb-1.3.5-1 ruby-reline-0.2.5-1 rubygems-3.2.15-1 (dependecies of ruby 3)
ruby2.7-2.7.3-1 (ruby 2.7, it does not require any dependencies because rubygems etc. are built in this package)

However, when installing these packages, ALL AT ONCE AND FROM THIS SAME (x86_64, built for aarch64) REPOSITORY, I got this error:

[*** build]$ sudo pacman -U ruby3/ruby-3.0.1-1-aarch64.pkg.tar.zst ruby-irb3/ruby-irb-1.3.5-1-any.pkg.tar.zst ruby-reline3/ruby-reline-0.2.5-1-any.pkg.tar.zst rubygems3/trunk/rubygems-3.2.15-1-any.pkg.tar.zst ruby2.7/ruby2.7-2.7.3-1-aarch64.pkg.tar.zst 
[sudo] password for ***: 
loading packages...
resolving dependencies...
looking for conflicting packages...
warning: dependency cycle detected:
warning: rubygems will be installed before its ruby dependency
warning: dependency cycle detected:
warning: ruby-irb will be installed before its ruby dependency
warning: dependency cycle detected:
warning: ruby-reline will be installed before its ruby dependency

Packages (5) ruby-3.0.1-1  ruby-irb-1.3.5-1  ruby-reline-0.2.5-1  ruby2.7-2.7.3-1  rubygems-3.2.15-1

Total Installed Size:  33.28 MiB

:: Proceed with installation? [Y/n] y
(5/5) checking keys in keyring                                                                 [########################################################] 100%
(5/5) checking package integrity                                                               [########################################################] 100%
(5/5) loading package files                                                                    [########################################################] 100%
(5/5) checking for file conflicts                                                              [########################################################] 100%
error: failed to commit transaction (conflicting files)
/usr/lib/ruby/2.7.0/rubygems.rb exists in both 'rubygems' and 'ruby2.7'
/usr/lib/ruby/2.7.0/rubygems/available_set.rb exists in both 'rubygems' and 'ruby2.7'
.
.
.