Terminology
This has been bothering me for some time, but the current terminology does little to distinguish between upstream and local "Mods". Basically, I suggest switching to referring to local information as packages, or mod packages, if you want, rather than mods (which would refer exclusively to the upstream content). This should be much clearer, and actually means we can follow the PMS more closely.
Changes include:
- packages are declared using either a Package, or a Pkg class (tending towards the latter).
-
mod_nofetch
andmod_pretend
becomepkg_nofetch
andpkg_pretend
. - changing from using the
mod
ormods
variable by convention to usingpkg
orpkgs
. This is a big and disruptive change, but could be done with a sed command. Note that the python interface would also change, as functions likeload_mod
would becomeload_pkg
.
We may as well maintain backwards compatibility at least until the stable release (at least in terms of the repositories. I'm happy to rewrite function interfaces with immediate effect, since as far as I'm aware the only external users are related software I've written), but the change should be easy to automatically perform for the current repository.
The other term I've considered changing is ARCH
, which, even for Portage is misleading, but I think it's meaningful enough to refer to use the term to refer to a game engine "architecture", particularly since ENGINE
might not be any better in the long term.