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-8 and centos-8 rpms are missing gpgme #4580

Closed
ssbarnea opened this issue Nov 27, 2019 · 19 comments
Closed

rhel-8 and centos-8 rpms are missing gpgme #4580

ssbarnea opened this issue Nov 27, 2019 · 19 comments
Labels
locked - please file new issue/PR Assist humans wanting to comment on an old issue or PR with locked comments. stale-issue

Comments

@ssbarnea
Copy link
Collaborator

ssbarnea commented Nov 27, 2019

Apparently there are at several missing dependencies for building libpod rpms on RHEL8/CentOS8:

btrfs-progs-devel
glibc-static
go-md2man
gpgme-devel  # gpgme is but it does not install gpgme.h
libassuan-devel
libgpg-error-devel
libgpg-error-devel
@mheon
Copy link
Member

mheon commented Nov 27, 2019

I think you just need to use the btrfs_noversion and exclude_graphdriver_btrfs tags to remove btrfs, which is entirely removed.

The rest are (AFAIK) distributed in other streams on RHEL, but are present somewhere.

@mheon
Copy link
Member

mheon commented Nov 27, 2019

(Except maybe go-md2man)

@ssbarnea
Copy link
Collaborator Author

@mheon Thanks for the hint, clearly helped a lot.. Now I am stuck at

# github.com/mtrmac/gpgme
vendor/github.com/mtrmac/gpgme/data.go:4:11: fatal error: gpgme.h: No such file or directory
 // #include <gpgme.h>

What trick do I need to pass that one?

@rhatdan
Copy link
Member

rhatdan commented Nov 28, 2019

@mtrmac Ideas?

@rhatdan
Copy link
Member

rhatdan commented Nov 28, 2019

Could you open a bugzilla on that gpgme to see what they suggest?

@mtrmac
Copy link
Collaborator

mtrmac commented Dec 3, 2019

gpgme-devel # gpgme is but it does not install gpgme.h

That would explain the failure.

WRT asking for the files to be included, that needs to go through the same process as any other build requirement packages (which may or may not result in them being added, to set expectations).

The dependency can be avoided with the containers_image_openpgp Go tag; then the code will not support signing (only verification).

@ssbarnea ssbarnea changed the title cannot build libpod rpm on rhel-8 or centos-8 due to missing dependencies rhel-8 and centos-8 rpms are missing gpgme Dec 13, 2019
@ssbarnea
Copy link
Collaborator Author

We bypassed the rpm building by disabling gpgme support but this bug should stay open until we will include gpgme support in the rpm.

@thomasmckay
Copy link

I've just encountered not being able to install gpgme-devel on centos:8 base image, is there a link somewhere that I can watch how this will be resolved? (I understand not related to libpod project but am a bit desperate to find solution.)

@github-actions
Copy link

A friendly reminder that this issue had no activity for 30 days.

@mtrmac
Copy link
Collaborator

mtrmac commented Jan 18, 2020

https://bugzilla.redhat.com/show_bug.cgi?id=1726861 (note, that is primarily about a different package) says:

gpgme-devel is available on CentOS 8 in the PowerTools repository.
The CentOS PowerTools has all the packages found in the RHEL8 codeready-builder-for-rhel-8-x86_64-rpms (aka: codeready-builder) repository.

dnf --enablerepo=PowerTools list gpgme-devel

Do note that using the CodeReady-Builder repository on RHEL probably has significant impact on the amount of support you can get from Red Hat for the related activities.

@baude
Copy link
Member

baude commented Jan 27, 2020

@ssbarnea can we close this or ?

@ssbarnea
Copy link
Collaborator Author

AFAIK, no because at this moment we build it without gpgme feature. This would be ok to close when we address this aspect. PRs are welcomed here.

@mtrmac
Copy link
Collaborator

mtrmac commented Jan 28, 2020

PRs to what? This Podman repository? Packaging somewhere?

The link above says that the gpgme-devel package is available, although in a repo that may have to be explicitly enabled. Is that incorrect?

@rhatdan
Copy link
Member

rhatdan commented Feb 17, 2020

I don't see this as an upstream issue.

@rhatdan rhatdan closed this as completed Feb 17, 2020
@greenpau
Copy link

AFAIK, no because at this moment we build it without gpgme feature.

@ssbarnea , how do you disable building gpgme? I tried using tag exclude_gpgme to no avail.

GO111MODULE=on go build -mod=vendor \
-gcflags 'all=-trimpath=/root/dev/go/src/github.com/containers/libpod' \
-asmflags 'all=-trimpath=/root/dev/go/src/github.com/containers/libpod' -ldflags '-X github.com/containers/libpod/libpod/define.gitCommit=173f430852e52a1acf69b4d9d18da20893031a79 -X github.com/containers/libpod/libpod/define.buildInfo=1583864245 -X github.com/containers/libpod/libpod/config._installPrefix=/usr/local -X github.com/containers/libpod/libpod/config._etcDir=/etc -extldflags ""' -tags " exclude_graphdriver_btrfs btrfs_noversion selinux  exclude_graphdriver_devicemapper seccomp varlink exclude_pgpgme" -o bin/podman github.com/containers/libpod/cmd/podman

@rhatdan
Copy link
Member

rhatdan commented Mar 10, 2020

@mtrmac ^^

@mtrmac
Copy link
Collaborator

mtrmac commented Mar 10, 2020

See #4580 (comment) , but I haven’t personally verified that. If the package is missing and you need it, please use your RHEL support options.

The tag to use would be, as mentioned in #4580 (comment) , containers_image_openpgp.

@greenpau
Copy link

greenpau commented Mar 10, 2020

@mtrmac , @mtrmac , thank you!

For anyone interested, here are my steps building podman:

subscription-manager repos --enable=rhel-8-for-x86_64-appstream-rpms
yum -y install libseccomp libseccomp-devel
cd ${GOPATH}/src/github.com && mkdir -p containers
cd containers && git clone https://github.com/containers/libpod.git
cd libpod
make BUILDTAGS="containers_image_openpgp exclude_graphdriver_btrfs btrfs_noversion exclude_graphdriver_devicemapper selinux seccomp varlink "
./bin/podman -v

@mrbrandao
Copy link

mrbrandao commented Mar 1, 2023

@mtrmac , @mtrmac , thank you!

For anyone interested, here are my steps building podman:

subscription-manager repos --enable=rhel-8-for-x86_64-appstream-rpms
yum -y install libseccomp libseccomp-devel
cd ${GOPATH}/src/github.com && mkdir -p containers
cd containers && git clone https://github.com/containers/libpod.git
cd libpod
make BUILDTAGS="containers_image_openpgp exclude_graphdriver_btrfs btrfs_noversion exclude_graphdriver_devicemapper selinux seccomp varlink "
./bin/podman -v

on RHEL8 after installing the libseccomp I also had to force the pkg-config path to find the libseccomp.pc file.
Like:

export PKG_CONFIG_PATH="/usr/lib64/pkgconfig"
make BUILDTAGS="containers_image_openpgp exclude_graphdriver_btrfs btrfs_noversion exclude_graphdriver_devicemapper selinux seccomp varlink "

@github-actions github-actions bot added the locked - please file new issue/PR Assist humans wanting to comment on an old issue or PR with locked comments. label Aug 31, 2023
@github-actions github-actions bot locked as resolved and limited conversation to collaborators Aug 31, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
locked - please file new issue/PR Assist humans wanting to comment on an old issue or PR with locked comments. stale-issue
Projects
None yet
Development

No branches or pull requests

8 participants