yggdrasil-network / yggdrasil-go

An experiment in scalable routing as an encrypted IPv6 overlay network

Home Page:https://yggdrasil-network.github.io

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

RHEL and openSUSE

PoneyClairDeLune opened this issue · comments

Please also build for RHEL 8 and RHEL 9 (e.g. Rocky Linux, AlmaLinux), on top of the existing CentOS Stream offers on Fedora COPR.

And please also build for openSUSE, both for Leap and Tumbleweed.

commented

Do these distributions have Go 1.20 in their repositories?

For RHEL 9, yes, it's provided natively. openSUSE Tumbleweed also, but openSUSE Leap (5.15) requires manual installation.

commented

I've enabled RHEL 9 and openSUSE Tumbleweed on my COPR. The builds appear to have succeeded.

We won't be able to enable openSUSE Leap if Go 1.20 isn't available in the repositories as we don't control the build environment fully on the COPR builders.

There is one thing to consider though: additional packages for RHEL are actually under the EPEL name, so the packages should be under epel-9-<arch> (epel-9-x86_64 and epel-9-aarch64). Is there a way to set epel-9 to be an alias of rhel-9 to prevent possible exceptions?

commented

No idea about aliases but I've enabled epel-9-x86_64 and epel-9-aarch64 and they appear to have built fine too.

Thanks for the RHEL 9 build! It seems to be working quite well.

Checked again on openSUSE Leap 15.5, and Go 1.21 is now available:

# zypper if go
Loading repository data...
Reading installed packages...


Information for package go:
---------------------------
Repository     : Update repository with updates from SUSE Linux Enterprise 15
Name           : go
Version        : 1.21-150000.3.32.1
Arch           : aarch64
Vendor         : SUSE LLC <https://www.suse.com/>
Installed Size : 82 B
Installed      : No
Status         : not installed
Source package : go-1.21-150000.3.32.1.src
Upstream URL   : http://golang.org
Summary        : A compiled, garbage-collected, concurrent programming language
Description    : 
    Go is an expressive, concurrent, garbage collected systems programming language
    that is type safe and memory safe. It has pointers but no pointer arithmetic.
    Go has fast builds, clean syntax, garbage collection, methods for any type, and
    run-time reflection. It feels like a dynamic language but has the speed and
    safety of a static language.