nicolasbock / nicolasbock/ebuildtester

Failed to emerge with circular dependencies

Open
#249 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Python
Stars
35
Forks
19
PR merge metrics
No merged PRs in 30d

Description

This is more question than an issue. I want to use ebuildtester to verify my own ebuild for the guru repository.
https://gitweb.gentoo.org/repo/proj/guru.git/tree/app-misc/treesheets
It runs into a well known error with circular dependencies of harfbuzz and freetype.
https://wiki.gentoo.org/wiki/Portage/Help/Circular_dependencies#harfbuzz_and_freetype.

The relevant messsages from the ebuildtester run:
2025-10-15 14:19:40,259 - d3fb7b (stderr): * Error: circular dependencies: 2025-10-15 14:19:40,259 - d3fb7b (stdout): [nomerge ] x11-libs/wxGTK-3.2.8.1-r2:3.2-gtk3/3.2::gentoo USE="X lzma spell -curl -debug -doc -gstreamer -keyring -libnotify -opengl (-pch) -sdl -test -tiff -wayland -webkit" ABI_X86="(64) -32 (-x32)" 2025-10-15 14:19:40,259 - d3fb7b (stderr): 2025-10-15 14:19:40,259 - d3fb7b (stderr): (media-libs/freetype-2.13.3:2/2::gentoo, ebuild scheduled for merge) depends on 2025-10-15 14:19:40,259 - d3fb7b (stdout): [nomerge ] x11-libs/gtk+-3.24.51:3::gentoo USE="X introspection (-aqua) -broadway -cloudproviders -colord -cups -examples -gtk-doc -sysprof -test -vim-syntax -wayland -xinerama" ABI_X86="(64) -32 (-x32)" 2025-10-15 14:19:40,259 - d3fb7b (stderr): (media-libs/harfbuzz-11.4.5:0/6.0.0::gentoo, ebuild scheduled for merge) (buildtime) 2025-10-15 14:19:40,260 - d3fb7b (stderr): (media-libs/freetype-2.13.3:2/2::gentoo, ebuild scheduled for merge) (buildtime_slot_op) 2025-10-15 14:19:40,260 - d3fb7b (stdout): [ebuild N ] x11-themes/adwaita-icon-theme-48.1::gentoo USE="-branding" 4412 KiB 2025-10-15 14:19:40,260 - d3fb7b (stderr): 2025-10-15 14:19:40,260 - d3fb7b (stderr): * Note that circular dependencies can often be avoided by temporarily 2025-10-15 14:19:40,260 - d3fb7b (stdout): [ebuild N ] x11-themes/adwaita-icon-theme-legacy-46.2::gentoo 2009 KiB 2025-10-15 14:19:40,260 - d3fb7b (stderr): * disabling USE flags that trigger optional dependencies. 2025-10-15 14:19:40,260 - d3fb7b (stdout): [ebuild N ] x11-libs/wxGTK-3.2.8.1-r2:3.2-gtk3/3.2::gentoo USE="X lzma spell -curl -debug -doc -gstreamer -keyring -libnotify -opengl (-pch) -sdl -test -tiff -wayland -webkit" ABI_X86="(64) -32 (-x32)" 26807 KiB 2025-10-15 14:19:40,260 - d3fb7b (stdout): [ebuild N ] app-text/gspell-1.14.0-r1:0/3::gentoo USE="introspection vala -gtk-doc -test" 114 KiB 2025-10-15 14:19:40,260 - d3fb7b (stdout): [ebuild N ] x11-libs/gtk+-3.24.51:3::gentoo USE="X introspection (-aqua) -broadway -cloudproviders -colord -cups -examples -gtk-doc -sysprof -test -vim-syntax -wayland -xinerama" ABI_X86="(64) -32 (-x32)" 13168 KiB 2025-10-15 14:19:40,260 - d3fb7b (stdout): [ebuild N ] gnome-base/librsvg-2.60.0:2::gentoo USE="introspection vala -debug -gtk-doc -test" ABI_X86="(64) -32 (-x32)" 24320 KiB 2025-10-15 14:19:40,260 - d3fb7b (stdout): [ebuild N ] x11-libs/pango-1.57.0::gentoo USE="introspection -X -debug -examples -gtk-doc -sysprof -test" ABI_X86="(64) -32 (-x32)" 2507 KiB 2025-10-15 14:19:40,260 - d3fb7b (stdout): [ebuild N ] media-libs/harfbuzz-11.4.5:0/6.0.0::gentoo USE="cairo glib graphite introspection truetype -debug -doc -experimental -icu -test" ABI_X86="(64) -32 (-x32)" 17726 KiB 2025-10-15 14:19:40,260 - d3fb7b (stdout): [ebuild N ] media-libs/fontconfig-2.17.1:1.0::gentoo USE="nls -doc -test" ABI_X86="(64) -32 (-x32)" 1296 KiB 2025-10-15 14:19:40,260 - d3fb7b (stdout): [ebuild N ] media-libs/freetype-2.13.3:2::gentoo USE="adobe-cff bzip2 cleartype-hinting harfbuzz png -X -brotli -debug -doc -fontforge -static-libs -svg -utils" ABI_X86="(64) -32 (-x32)" 0 KiB 2025-10-15 14:19:40,260 - d3fb7b (stdout): [ebuild N ] x11-libs/cairo-1.18.4-r1::gentoo USE="X glib (-aqua) (-debug) -gtk-doc -lzo -test" ABI_X86="(64) -32 (-x32)" 41892 KiB 2025-10-15 14:19:40,260 - d3fb7b (stdout): 2025-10-15 14:19:40,260 - d3fb7b (stdout): Total: 12 packages (12 new), Size of downloads: 162609 KiB

How may I prepare ebuildtester or the stage container to go ahead with the emerge?

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Begin with the linked app-misc/treesheets ebuild and reproduce the shown ebuildtester emerge output in the stage container. Investigate how ebuildtester or the stage container should be prepared to avoid the harfbuzz/freetype circular dependency; the issue is resolved when the requested emerge proceeds successfully.

Written by the indexing model from the issue text.

Assessment

Tech stack
docker, python
Domain
build-system, tooling
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.