Opened 7 months ago

Closed 6 months ago

Last modified 6 months ago

#68491 closed enhancement (fixed)

textproc/moar (pager) conflicts with lang/MoarVM

Reported by: halostatue (Austin Ziegler) Owned by: halostatue (Austin Ziegler)
Priority: Normal Milestone:
Component: ports Version:
Keywords: Cc:
Port: moar, MoarVM

Description

On macports-users, Kenneth Wolcott noted that textproc/moar has an undeclared conflict with lang/MoarVM.

I am proposing resolving this in three steps:

  1. Open a PR that explicitly declares moar conflicting with MoarVM in both portfiles. I will be doing this shortly.
  2. Rename the moar port to moar-pager and rename the binary from moar to moar-pager (same with the manpage).
  3. Remove the conflict markers as they would no longer be in conflict.

There might be an alternative route, but I am not familiar enough with Portfile variants to know if what I am suggesting is possible:

  1. Declare moar/MoarVM as conflicting.
  2. Add a variant to moar (+pager) that, instead of installing as moar, installs as moar-pager (and moar-pager.1).
  3. Somehow mark moar+pager as not conflicting and either add an admonition to the primary install path or put it in the description.

Change History (7)

comment:1 Changed 7 months ago by halostatue (Austin Ziegler)

Port: moar MoarVM added

comment:2 Changed 7 months ago by halostatue (Austin Ziegler)

In e341066bda3f88eb8cbd2b5ed255b69d54602438/macports-ports (master):

moar, MoarVM: declare mutual conflicts

Both moar and MoarVM want to install binaries called moar.
Currently, this is not resolved until the install phase of the later
installed port.

See: #68491

comment:3 Changed 7 months ago by halostatue (Austin Ziegler)

Note an extensive discussion on moar upstream: https://github.com/walles/moar/issues/143

The developer of moar feels that because his project published as moar earlier (MoarVM's binary was moarvm from April 2012 to October 2013) it should be the language ecosystem that changes. I disagree, even though I do not use Raku.

Note that if this change *is* desired, we would need to update riff and ugrep ports as well to find the new pager unless the upstream developer adds that support directly.

comment:4 Changed 6 months ago by herbygillot (Herby Gillot)

I'm actually inclined to agree that the language ecosystem (MoarVM) should _not_ be the one that gets renamed.

comment:5 Changed 6 months ago by halostatue (Austin Ziegler)

Owner: set to halostatue
Resolution: fixed
Status: newclosed

In fbfb16992a0a46d6a3d6f10c04ee0ba06a514734/macports-ports (master):

moar: Add +pager variant to install as moar-pager

This implements the alternative route described in trac:68491 to enable
a compatibility workaround to use both textproc/moar and lang/MoarVM
since they both wish to install moar binaries.

Previously, https://github.com/macports/macports-ports/pull/20930 marked moar and MoarVM as mutually conflicting. This
conflict state remains, but a new +pager variant is added which
installs textproc/moar as moar-pager. The manpage is also installed
as moar-pager.1 and the contents are patched to reflect the updated
name.

This variant *removes* the MoarVM conflict marker.

Closes: #68491

comment:6 Changed 6 months ago by halostatue (Austin Ziegler)

In ea6cacaa45ea200b2f1a2dcd19246d2e604ea15a/macports-ports (master):

MoarVM: remove conflict when moar +pager installed

This implements the MoarVM side of the alternative route described in
trac:68491 to enable a compatibility workaround to use both
textproc/moar and lang/MoarVM since they both wish to install moar
binaries.

If moarvm +pager is installed, the conflict with moar is removed
permitting installation of MoarVM.

Closes: #68491

comment:7 Changed 6 months ago by halostatue (Austin Ziegler)

In 5b470e80621460533c1f92307a50d2ae8124d94f/macports-ports (master):

riff, ugrep: Add compatibility with moar +pager

Apply patches to the riff and ugrep ports to work with PAGER=moar
*or* PAGER=moar-pager as installed by MacPorts.

ugrep *may* be amenable to applying this patch upstream, but based on
previous discussions, the corresponding patch for riff may not be
accepted upstream.

See: #68491#comment:3

Note: See TracTickets for help on using tickets.