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

Issue with brew package pkgconf #10984

Open
2 of 15 tasks
smorimoto opened this issue Nov 18, 2024 · 7 comments
Open
2 of 15 tasks

Issue with brew package pkgconf #10984

smorimoto opened this issue Nov 18, 2024 · 7 comments
Assignees
Labels
Area: Common Tools awaiting-deployment Code complete; awaiting deployment and/or deployment in progress bug report bug Something isn't working OS: macOS

Comments

@smorimoto
Copy link
Contributor

Description

It could be that the macOS runners now have the pkg-config brew package already installed, which conflicts with the pkgconf package.

But it's already deprecated: Homebrew/homebrew-core#194885

Platforms affected

  • Azure DevOps
  • GitHub Actions - Standard Runners
  • GitHub Actions - Larger Runners

Runner images affected

  • Ubuntu 20.04
  • Ubuntu 22.04
  • Ubuntu 24.04
  • macOS 12
  • macOS 13
  • macOS 13 Arm64
  • macOS 14
  • macOS 14 Arm64
  • macOS 15
  • macOS 15 Arm64
  • Windows Server 2019
  • Windows Server 2022

Image version and build link

20241022.361

Is it regression?

No

Expected behavior

It should be installed successfully.

Actual behavior

It fails:

- ==> Downloading https://ghcr.io/v2/homebrew/core/pkgconf/manifests/2.3.0
- ==> Fetching pkgconf
- ==> Downloading https://ghcr.io/v2/homebrew/core/pkgconf/blobs/sha256:4d7c580[39](https://github.com/ocaml/setup-ocaml/actions/runs/11884964161/job/33113941200#step:4:40)43bf2dcc8cb9ff8c838ea4283eeab24f49982df044cbc3031856fd8
- ::error::Cannot install pkgconf because conflicting formulae are installed.%0A  pkg-config: because both install `pkg.m4` file%0A%0APlease `brew unlink pkg-config` before continuing.%0A%0AUnlinking removes a formula's symlinks from /opt/homebrew. You can%0Alink the formula again after the install finishes. You can `--force` this%0Ainstall, but the build may fail or cause obscure side effects in the%0Aresulting software.%0A
[ERROR] These packages are still missing: pkgconf

Ref: https://github.com/ocaml/setup-ocaml/actions/runs/11884964161/job/33113941200

Repro steps

Run brew install pkgconf on macos-latest

@smorimoto
Copy link
Contributor Author

This should probably happen on all macOS runners and break existing workflows.

@prasanjitsahoo
Copy link
Contributor

Hi @smorimoto We will look into the issue and keep you posted with updates.

@smorimoto
Copy link
Contributor Author

@prasanjitsahoo Thanks a lot!

@erik-bershel
Copy link
Contributor

For those who fall into this (cost ~2 minutes):

      - name: Runtime workaround for brew pkg-config -> pkgconf
        run: |
          brew update
          brew upgrade
          brew install pkgconf

As a temporary measure, we will switch to a hardcoded version of the original pkg-config that expected to be friendly with brew here. We would be glad to hear your opinion on the consequences of replacing it with an updated pkgconf from brew.

@erik-bershel erik-bershel added bug Something isn't working OS: macOS Area: Common Tools awaiting-deployment Code complete; awaiting deployment and/or deployment in progress labels Nov 18, 2024
@akoeplinger
Copy link

@erik-bershel I think that pinning the old pkg-config 0.29 version means installing pkgconf will fail since it's trying to install into the same file paths. pkgconf is already an alias in Homebrew so you can probably just install that.

akoeplinger added a commit to dotnet/runtime that referenced this issue Nov 19, 2024
This was added by AzDO in actions/runner-images#10971 as a workaround for actions/runner-images#10984, but that means the old package now conflicts with the new pkg-config which is an alias to pkgconf.

Fixes the build issues we've seen with OSX image version 20241119.505
@akoeplinger
Copy link

akoeplinger commented Nov 19, 2024

I confirmed that installing pkg-config/pgkconf now conflicts with the hardcoded version on image 20241119.505.
Uninstalling pkg-config@0.29.2 fixes it.

akoeplinger added a commit to dotnet/arcade that referenced this issue Nov 19, 2024
This was added by AzDO in actions/runner-images#10971 as a workaround for actions/runner-images#10984, but that means the old package now conflicts with the new pkg-config which is an alias to pkgconf.

Fixes the build issues we've seen with OSX image version 20241119.505
@erik-bershel
Copy link
Contributor

Hey @akoeplinger!
Thank you for your feedback. ❤️ We'll migrate to the new Homebrew package next week than. 🤔

akoeplinger added a commit to dotnet/runtime that referenced this issue Nov 19, 2024
…109968)

This was added by AzDO in actions/runner-images#10971 as a workaround for actions/runner-images#10984, but that means the old package now conflicts with the new pkg-config which is an alias to pkgconf.

Fixes the build issues we've seen with OSX image version 20241119.505
hughsie added a commit to fwupd/fwupd that referenced this issue Nov 20, 2024
superm1 pushed a commit to fwupd/fwupd that referenced this issue Nov 20, 2024
QuLogic added a commit to QuLogic/matplotlib that referenced this issue Nov 20, 2024
jeeb added a commit to jeeb/mpv that referenced this issue Nov 21, 2024
This works around an issue with recent Github CI runners.

Ref: actions/runner-images#10984
jeeb added a commit to jeeb/mpv that referenced this issue Nov 21, 2024
This works around an issue with recent Github CI runners where
Homebrew is in an intermediate state. This is where old pkg-config
is installed, yet pkg-config as a package has become an alias
for pkgconf, thus causing failures to automatically switch symlinks
from one to the other.

Ref: actions/runner-images#10984
github-merge-queue bot pushed a commit to awslabs/mountpoint-s3 that referenced this issue Nov 22, 2024
In order to work around a homebrew issue with pkg-config on github
runners (see actions/runner-images#10984),
temporarily run a command to uninstall `pkg-config@0.29.2`.

### Does this change impact existing behavior?

No. Workflow change only.

### Does this change need a changelog entry?

No.

---

By submitting this pull request, I confirm that my contribution is made
under the terms of the Apache 2.0 license and I agree to the terms of
the [Developer Certificate of Origin
(DCO)](https://developercertificate.org/).

Signed-off-by: Alessandro Passaro <alexpax@amazon.co.uk>
jeeb added a commit to jeeb/mpv that referenced this issue Nov 22, 2024
This works around an issue with recent Github CI runners where
Homebrew is in an intermediate state. This is where old pkg-config
is installed, yet pkg-config as a package has become an alias
for pkgconf, thus causing failures to automatically switch symlinks
from one to the other.

Ref: actions/runner-images#10984
jeeb added a commit to mpv-player/mpv that referenced this issue Nov 22, 2024
This works around an issue with recent Github CI runners where
Homebrew is in an intermediate state. This is where old pkg-config
is installed, yet pkg-config as a package has become an alias
for pkgconf, thus causing failures to automatically switch symlinks
from one to the other.

Ref: actions/runner-images#10984
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Area: Common Tools awaiting-deployment Code complete; awaiting deployment and/or deployment in progress bug report bug Something isn't working OS: macOS
Projects
None yet
Development

No branches or pull requests

6 participants