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

RHEL and openSUSE #1128

Open
PoneyClairDeLune opened this issue Feb 4, 2024 · 15 comments
Open

RHEL and openSUSE #1128

PoneyClairDeLune opened this issue Feb 4, 2024 · 15 comments

Comments

@PoneyClairDeLune
Copy link

PoneyClairDeLune commented Feb 4, 2024

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.

@neilalexander
Copy link
Member

Do these distributions have Go 1.20 in their repositories?

@PoneyClairDeLune
Copy link
Author

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

@neilalexander
Copy link
Member

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.

@PoneyClairDeLune
Copy link
Author

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?

@neilalexander
Copy link
Member

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

@PoneyClairDeLune
Copy link
Author

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.

@PoneyClairDeLune
Copy link
Author

Go 1.21 is available on openSUSE Leap 15.6 (and Slowroll). Could Yggdrasil be built for both as well?

@neilalexander
Copy link
Member

I don't see Leap 15.6 but I enabled Leap 15.4 and Leap 15.5, builds hopefully going up soon.

@exu-g
Copy link

exu-g commented Nov 19, 2024

I installed Yggdrasil on Leap 15.6 and I've run into some issues during that.

After adding the repo (will cover below how to do that), I tried installing yggdrasil
This results in this error, with the package apparently missing shadow-utils

sudo zypper install yggdrasil

... output omitted ...

Problem: 1: nothing provides 'shadow-utils' needed by the to be installed yggdrasil-0.5.8-1.suse.lp155.x86_64
 Solution 1: do not install yggdrasil-0.5.8-1.suse.lp155.x86_64
 Solution 2: break yggdrasil-0.5.8-1.suse.lp155.x86_64 by ignoring some of its dependencies

According to this and this link SUSE uses the shadow package instead.
Both sources talk about checking for the file presence using Requires(pre): /usr/sbin/useradd instead of shadow-utils.

Next, zypper will complain about missing signature verification. I'm unsure whether this is an issue with the repo or due to me adding the repo incorrectly.

warning: /var/tmp/AP_0xq6XrWD/07902193-yggdrasil/yggdrasil-0.5.8-1.suse.lp155.x86_64.rpm: Header V4 RSA/SHA256 Signature, key ID a0dcc023: NOKEY
Looking for gpg key ID A0DCC023 in cache /var/cache/zypp/pubkeys.
Repository Yggdrasil-COPR does not define additional 'gpgkey=' URLs.
yggdrasil-0.5.8-1.suse.lp155.x86_64 (Yggdrasil-COPR): Signature verification failed [4-Signatures public key is not available]
Abort, retry, ignore? [a/r/i] (a):

This can also be ignored, but ideally would work without issue.

My steps for adding the repo. (Leap 15.6 is not available, as noted above)

sudo zypper ar -f "https://download.copr.fedorainfracloud.org/results/neilalexander/yggdrasil-go/opensuse-leap-15.5-x86_64" "Yggdrasil-COPR"

@neilalexander
Copy link
Member

Suspicious that it's trying to give you Yggdrasil 0.5.8. It should be on 0.5.9...

@exu-g
Copy link

exu-g commented Nov 19, 2024

The builds for 0.5.9 on Leap 15.5 all show failed. No idea why, even the build log is missing for those.

So that's kind of a second issue

@neilalexander
Copy link
Member

I kicked off a rebuild and it looks like the builder for Leap 15.5 is horribly broken, there are tons of GPG errors for distribution packages.

I also am not really sure if we need to have a requires for shadow-utils, as groupadd should be present by default?

@exu-g
Copy link

exu-g commented Nov 19, 2024

I kicked off a rebuild and it looks like the builder for Leap 15.5 is horribly broken, there are tons of GPG errors for distribution packages.

Wow, yeah. I guess that's an issue with the chroot provided by Fedora?

I also am not really sure if we need to have a requires for shadow-utils, as groupadd should be present by default?

Agreed, groupadd was present in my install and that's also my experience with any other distro.

@neilalexander
Copy link
Member

Wow, yeah. I guess that's an issue with the chroot provided by Fedora?

It looks like it, yeah.

Does the latest build for Tumbleweed work for you for now?

@exu-g
Copy link

exu-g commented Nov 19, 2024

Yeah, the dependency issue doesn't come up any more.

Still getting the Signature verification issue. Could it be due to how I add the repo?
I'm using the link under baseurl and manually replacing the architecture as repo. I guess it's to be expected that the gpgkey URL does not get included this way.

The actual repo URL is https://copr.fedorainfracloud.org/coprs/neilalexander/yggdrasil-go/repo/opensuse-tumbleweed/neilalexander-yggdrasil-go-opensuse-tumbleweed.repo, but using this zypper can't detect any metadata at all.

Repository 'Yggdrasil-COPR' is invalid.
[Yggdrasil-COPR|https://copr.fedorainfracloud.org/coprs/neilalexander/yggdrasil-go/repo/opensuse-tumbleweed/neilalexander-yggdrasil-go-opensuse-tumbleweed.repo] Valid metadata not found at specified URL
History:
 - [Yggdrasil-COPR|https://copr.fedorainfracloud.org/coprs/neilalexander/yggdrasil-go/repo/opensuse-tumbleweed/neilalexander-yggdrasil-go-opensuse-tumbleweed.repo] Repository type can't be determined.

I got that idea from here

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants