natesales / q

A tiny command line DNS client with support for UDP, TCP, DoT, DoH, DoQ and ODoH.
GNU General Public License v3.0
1.59k stars 58 forks source link

Package/program name conflict #28

Open hwti opened 1 year ago

hwti commented 1 year ago

On at least Fedora and Archlinux, there are already packages with the same name and executable name.

https://packages.fedoraproject.org/pkgs/q/q/ https://aur.archlinux.org/packages/q

This means that if I install q_0.8.2_linux_amd64.rpm on Fedora, dnf see the distribution q package as an update.

natesales commented 1 year ago

The name q may change in the future, but for now you can copy the binary over. It's statically linked and doesn't depend on any config files or anything aside from the binary itself.

seththeriault commented 1 year ago

This also conflicts with an existing Homebrew package:

https://formulae.brew.sh/formula/q

natesales commented 1 year ago

The homebrew package can be installed with brew install natesales/repo/q after adding the natesales tap with brew tap natesales/repo https://github.com/natesales/repo.

holgersson32644 commented 1 year ago

First of all, thanks for that nifty CLI tool ;)

FTR: In Gentoo/Linux we have a similiar problem, as the name "q" is already taken by a package related to package management. In my overlay (some kind of an unofficial repository) I packaged q as net-misc/q but renamed the binary into q-dns there.

Are you interested in some "public brainstorming" to find a short but distinct name for q? I propose one of the following

WDYT?

// Edit 2022-09-27 / 07:15 UTC: Funnily I just re-read the README seeing the AUR package also uses q-dns as its name.

Seirdy commented 1 year ago

I strongly recommend changing the binary name to something unique, as a name conflict will prevent creating distribution packages. qdns is taken by another smaller DNS-related project, unfortunately; however, q-dns seems safe. I prefer qdig as it's less ambiguous and easier to remember (it's like dig, but with DoQ!)

There's also obdig (dig with OBlivious DNS over HTTPS), which highlights its unique ODOH capabilities.

Checking Repology, the AUR, GitHub, and Fedora package+binary name conflicts: qdig and obdig seem fine.

classabbyamp commented 5 months ago

any updates on this? I'm working on packaging this for void linux, and we generally keep with the upstream naming, but if the name is going to change I'd prefer not needing to change the package's name

rahilarious commented 4 months ago

This is a really handy tool.

Besides problems in packaging, project @natesales is hurting itself by not naming it in search-friendly name. Because of this single letter name, there is no branding as well. How would somebody quickly tell your friend about this utility? "hey, checkout this q?" One has to either send link or remember your name and tell "checkout natesales/q" which is highly unlikely to happen.

Author is not living upto his last name "Sales" cause this is not great salesmanship :-)

polarathene commented 2 months ago

q-dns or qig both seem fine 👍 (qdig / q-dig are a bit easier to pronounce though and more familiar dig association to DNS CLI tools)

Agree that it's not the easiest name to discover, I just search "q dns github" if I'm lazy 😅

Since doggo is a competing option, if you want to stick with the idea of similar names to others (qdns) you could go with doqqo? (1 less letter, efficient! 😂 ). Both dig/doggo based variations technically blend in with all the others in the README comparison table. goq is used elsewhere, but doqqo is fairly unique if you don't mind the overlap with doggo in search results (probably a bonus, besides some potential user confusion).

I'm not familiar with packaging, would it be much of an issue if another package installs a binary of the same name too? Or is this only about the package name? Users could always alias a longer name to q if they like 🤷‍♂️

den-is commented 3 weeks ago

I really like q as alternative to everything, especially as reincarnation of dead dog

I've installed q with brew. Looks like I will have to re-install it manually from binary release with a different longer name. But I prefer to keep all installations in brew and Brewfile as much as possible.

q name choice was too bold, cocky, brave, audacious, and impudent for such a small but still public project.

Here is another clash Amazon Q: https://docs.aws.amazon.com/amazonq/latest/qdeveloper-ug/command-line-getting-started-installing.html

polarathene commented 3 weeks ago

I really like q as alternative to everything, especially as reincarnation of dead dog

Was "q as an alternative" a typo?

Did you mean doq / doqqo? (given your reference to dog and the 👍 to my prior comment)

den-is commented 3 weeks ago

I really like q as alternative to everything, especially as reincarnation of dead dog

Was "q as an alternative" a typo?

Did you mean doq / doqqo? (given your reference to dog and the 👍 to my prior comment)

I meant that before the q I was using dog the utility which became deprecated. I didn't know about the doggo. IMHO doq is a "so-so" option as it sounds like "doc (document)"

polarathene commented 3 weeks ago

IMHO doq is a "so-so" option as it sounds like "doc (document)"

Agreed, which is why I didn't suggest it.

I was just trying to make sense of what your line meant, thinking it was about the naming topic 😂 (I understand now that it was expressing your preference as a alternative DNS utility to dog, nothing name related)

I figured doqqo was a good fit, keeping the q origin, while using it with the more familiar doggo which also happens to be Go (EDIT: Both projects have approx 1.5k stars, but I have seen doggo mentioned in communities more often).

I suppose doqqo by that same logic sounds like it's about a documentary though 🤷‍♂️


I didn't know about the doggo.

I'm not sure how it compares to q these days (I don't think the comparison table on q README has been revised for a while?).

den-is commented 3 weeks ago

Another clash https://github.com/harelba/q (well it is the same pretense to the other tool's author)