Opened 3 years ago
Closed 3 years ago
#67105 closed defect (fixed)
inkscape @1.2.2: now installs public copy of lib2geom, causing conflict with that port
| Reported by: | fhgwright (Fred Wright) | Owned by: | mascguy (Christopher Nielsen) |
|---|---|---|---|
| Priority: | Normal | Milestone: | |
| Component: | ports | Version: | 2.8.1 |
| Keywords: | Cc: | dbevans (David B. Evans), randymortensen (Randy Mortensen), fmw42 (Fred Weinhaus) | |
| Port: | inkscape |
Description
This is actually two bugs, but they probably need to be fixed together.
The first is just that inkscape didn't get a needed revbump when poppler was updated, leading to a broken install.
The second is that inkscape has a strange relationship with lib2geom, claiming it as both a dependency and a conflict. This prevents a straightforward rebuild, as needed in response to the poppler update.
Building/installing inkscape with no active lib2geom port results in an apparently successful install, but which references a nonexistent version 1.2 of lib2geom. Building/installing inkscape with lib2geom @1.1.0_0 active succeeds through the destroot phase (ignoring the conflict), but then fails the install due to the conflict. Deactivating lib2geom and installing the already destrooted inkscape then succeeds, and produces a working install. Thus, the following workaround can be used:
port activate lib2geom
port destroot inkscape
port deactivate lib2geom
port install inkscape
This is on OS 10.9.5. Logfiles available on request.
Change History (8)
comment:1 Changed 3 years ago by jmroot (Joshua Root)
| Cc: | dbevans added; mascguy removed |
|---|---|
| Owner: | set to mascguy |
| Status: | new → assigned |
comment:2 Changed 3 years ago by randymortensen (Randy Mortensen)
| Cc: | randymortensen added |
|---|
comment:3 Changed 3 years ago by evanmiller (Evan Miller)
comment:4 Changed 3 years ago by fhgwright (Fred Wright)
Revbumping inkscape without fixing the lib2geom problem wasn't useful, since it just resulted in a new "successful" but broken build. So it will need another revbump after fixing the lib2geom problem.
As far as why a conflict was declared, I saw this when attempting to activate lib2geom while inkscape @1.2.2_0+x11 was active:
Error: Failed to activate lib2geom: Image error: /opt/local/lib/cmake/2Geom/2GeomConfig.cmake is being used by the active inkscape port. Please deactivate this port first, or use 'port -f activate lib2geom' to force the activation.
This doesn't happen with inkscape @1.2.2_1+x11 active.
The manual workaround is still needed.
comment:5 Changed 3 years ago by mascguy (Christopher Nielsen)
| Cc: | fmw42 added |
|---|---|
| Summary: | inkscape @1.2.2 needs revbump and has build issue → inkscape @1.2.2: now installs public copy of lib2geom, causing conflict with that port |
comment:6 Changed 3 years ago by mascguy (Christopher Nielsen)
Okay, so after digging into the details, this is the issue: Port lib2geom hasn't been updated to 1.2.x, so Inkscape can't use our existing one. So it goes ahead and installs it's own public copy of 1.2.x, which of course conflicts with lib2geom.
Ideally we should have updated lib2geom - and continued to have inkscape depend on it - avoiding all of this. That also ensures that other projects can use that lib, without having inkscape installed. (Not sure whether any projects plan to take advantage of it, but none of our other ports do at this time.)
Still pondering which approach I'm going to take, but planning to make a decision over the next few days. Stay tuned...
comment:7 Changed 3 years ago by Christopher Nielsen <mascguy@…>
comment:8 Changed 3 years ago by Christopher Nielsen <mascguy@…>
| Resolution: | → fixed |
|---|---|
| Status: | assigned → closed |

Prior to 1.2.2 lib2geom was a dependency and not a conflict. I asked why it was changed here:
https://github.com/macports/macports-ports/commit/c72d7c353a436dd91251517f3f8d627a59a8fdab
...but have not received an explanation.