Opened 9 years ago

Closed 9 years ago

#45950 closed defect (fixed)

gpg-agent: no_pinentry variant does nothing

Reported by: ryandesign (Ryan Carsten Schmidt) Owned by: Ionic (Mihai Moldovan)
Priority: Normal Milestone:
Component: ports Version:
Keywords: Cc:
Port: gpg-agent

Description

The gpg-agent portfile contains this variant:

# Remove after 11-17-2015.
variant no_pinentry conflicts pinentry pinentry_mac description {Legacy compatibility variant for disabling pinentry. Will be removed soon.} {
}

The purpose of legacy compatibility variants is to help users who had selected an old variant get the same behavior with equivalent new variants. In this case, that means a user who had previously selected the no_pinentry variant does not want to get either the pinentry variant nor the pinentry_mac variant, but the port will select one of them anyway:

    if {${os.subplatform} ne "macosx" ||
        ${os.major} < 12 || ([catch "registry_active pinentry"] &&
                             ![catch "registry_active pinentry-mac"])} {
        default_variants-append +pinentry
    } else {
        default_variants-append +pinentry_mac
    }

Either the port should respect the user's previous no_pinentry request, or the no_pinentry variant should be removed because in its current form it does nothing, other than prevent the user from upgrading the port.

Change History (4)

comment:1 Changed 9 years ago by ryandesign (Ryan Carsten Schmidt)

Not only does the gpg-agent port not respect the no_pinentry variant, it also does not respect the user selecting a different variant than the default:

$ port install gpg-agent +pinentry
Error: gpg-agent: Variant pinentry conflicts with pinentry_mac
Error: Unable to open port: Error evaluating variants
$ 

Always, when specifying default_variants, do so only if the user has not already requested a conflicting variant. See PortfileRecipes#default_variants.

comment:2 Changed 9 years ago by Ionic (Mihai Moldovan)

Odd. I have deleted the no_pinentry check out of confusion in r128275. Probably thought that the the conflict would catch that for some weird reason...

comment:3 Changed 9 years ago by Ionic (Mihai Moldovan)

Should be fixed in r128378, or did I miss something else?

comment:4 Changed 9 years ago by Ionic (Mihai Moldovan)

Resolution: fixed
Status: newclosed

Feel free to reopen, if it is not.

Note: See TracTickets for help on using tickets.