[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Proposal: Prefix language-name for language library packages
From: |
Danny Milosavljevic |
Subject: |
Re: Proposal: Prefix language-name for language library packages |
Date: |
Sun, 24 Apr 2016 18:00:04 +0200 |
Hi,
I've always like the Gentoo approach most. Have a qualified package name like
dev-java/ant
and if you try to install "ant" and it's unique: good.
If you try to install "ant" and there are multiple ones: you get a
disambiguation error.
If you try to install "dev-java/ant" there's no ambiguity.
I'm aware that it's not implemented that way in "guix package" right now,
however it would be easy to use the Guile module system for that end.
Things like this are always easy to add later as long nobody make the package
name "java-ant" which would make the qualified name
dev-java/java-ant
which isn't so nice.
That said, Guix is not Gentoo.
Directory hierarchies have never had a problem doing such categorization.
Special-casing "xx-xxx" to be a poor man's directory feels... wrong.
That said, many package managers do it the "xx-xxx" way (and many don't).
Compare the input dependencies of a package
(define java-maven
(package
(inputs '(("java-jvm" ,java-jvm)
("java-xyz" ,java-xzy)
("java-abc" ,java-abc)))))
Very redundant, no?
This kind of disambiguation is exactly what the module system can do best - and
Guile's module system even allows you to add a prefix to all names when
importing a module, so you can have the best of both choices.