oracle / centos2ol

Script and documentation to switch CentOS/Rocky Linux to Oracle Linux
https://linux.oracle.com/switch/centos/
Universal Permissive License v1.0
345 stars 83 forks source link

oracle-epel-release-el8 is not a direct replacement for epel-release #38

Closed richardjohnjensen closed 3 years ago

richardjohnjensen commented 3 years ago

While EPEL is not a BaseOS or AppStream official repo... the centos2ol script does "Replace EPEL configuration, if it exists". After a quick review I found at least the netcdf package is not available in the Oracle hosted version.

Is the Oracle hosted version of EPEL suppose to be a a direct match or are missing packages expected?

Djelibeybi commented 3 years ago

The goal for our build of EPEL is to be a 1:1 match but there are almost twice as many packages in EPEL as there are in the base repo for each major version. We're releasing (on average) about 100-200 new packages to EPEL each week.

I can request that netcdf be prioritised by the release team, though.

richardjohnjensen commented 3 years ago

Thanks for the feedback. I happy that the goal is to be a 1:1 match.

ChristianGfK commented 3 years ago

How do I undo this replacement and get back to regular EPEL? I have other packages that depend on things missing from this as-of-yet incomplete clone.

ChristianGfK commented 3 years ago

Took a closer look at what the script does and basically did the reverse.

  1. dnf remove oracle-epel-release-el8
  2. dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
  3. mapfile -t reinstall < <(dnf list installed | grep ol8_developer_EPEL | cut -d '.' -f 1)
  4. if [[ -n "${reinstall[*]}" ]]; then dnf --assumeyes --disablerepo "*" --enablerepo "epel*" reinstall "${reinstall[@]}"; fi

Seems to have done the trick. 🎉

Djelibeybi commented 3 years ago

Which packages were you missing? According to internal tracking, we only have ~140 packages left to release (out of ~3750).

ChristianGfK commented 3 years ago

I think I ran afoul of the same issue as described here: https://github.com/oracle/centos2ol/issues/67#issuecomment-823959175 The script removed the "remi-release" package because (?) the Oracle EPEL replacement does not satisfy its dependency on "epel-release".

Apart from that, I'm not sure what the goal is with the entire thing. EPEL is not part of RHEL, so why are you even cloning it? Probably not the right venue for that discussion. :-D

Either way, perhaps mentioning this behavior in the README would be a good middle ground. The README even recommends disabling all non-default repositories (EPEL certainly qualifies as non-default), which I did, but then the script goes and replaces EPEL with something else. If you don't look closely (well, you should :D), you wouldn't even notice you've been switched to something else than you were originally using.

By the way, thank you for this cool script. Certainly saved me a lot of work!

Djelibeybi commented 3 years ago

We use a bunch of EPEL packages and have a mandate that we only use what we build ourselves. We also have customers who for security purposes are not permitted to install any other vendor's GPG keys, so they need Oracle signed versions of EPEL packages as well. Also, they're useful to have. :)

ChristianGfK commented 3 years ago

I see, thank you for the insight! 👍