Skip to content

Namespace pollution: generic CLI commands installed by default (main, errno, update, etc.) #2589

@ehaupt

Description

@ehaupt

I maintain the FreeBSD port of the Python package pwntools. I recently received a report highlighting that pwntools installs a large number of extremely generic CLI commands into $PATH by default (main, version, update, debug, errno, etc.).

Aside from clutter, this leads to direct conflicts. For example, errno conflicts with the errno utility from moreutils. The interfaces aren’t identical, so it isn’t straightforward for users to alias around this without uninstalling one or the other.

I’m aware of and appreciate the existence of the --only-use-pwn-command flag, which I can pass during packaging to install only the pwn command. However, I wanted to raise the possibility of:

  • Making --only-use-pwn-command the default, requiring explicit opt-in for the additional generic aliases.

  • Alternatively, prefixing the CLI aliases (e.g., pwn-main, pwn-update) to reduce namespace conflicts while retaining functionality.

Downstream issue (funny read):
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=287992

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions