summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authoralalazo <massimiliano.culpo@googlemail.com>2016-03-18 15:41:14 +0100
committeralalazo <massimiliano.culpo@googlemail.com>2016-03-18 15:41:14 +0100
commitccd90df62ffd69b5c3b4e1f8dbaf82146721a52a (patch)
treec76fd8d130119ff8b9829f2508930ab66bdcdfc5 /lib
parent67ca2c704b9c367b41ce29342a06427e156a30e9 (diff)
downloadspack-ccd90df62ffd69b5c3b4e1f8dbaf82146721a52a.tar.gz
spack-ccd90df62ffd69b5c3b4e1f8dbaf82146721a52a.tar.bz2
spack-ccd90df62ffd69b5c3b4e1f8dbaf82146721a52a.tar.xz
spack-ccd90df62ffd69b5c3b4e1f8dbaf82146721a52a.zip
modules : turned category into a property (logic can be extended later)
Diffstat (limited to 'lib')
-rw-r--r--lib/spack/spack/modules.py15
1 files changed, 11 insertions, 4 deletions
diff --git a/lib/spack/spack/modules.py b/lib/spack/spack/modules.py
index f5bf213845..bb1a444e5a 100644
--- a/lib/spack/spack/modules.py
+++ b/lib/spack/spack/modules.py
@@ -122,10 +122,6 @@ class EnvModule(object):
self.spec = spec
self.pkg = spec.package # Just stored for convenience
- # category in the modules system
- # TODO: come up with smarter category names.
- self.category = "spack"
-
# short description default is just the package + version
# packages can provide this optional attribute
self.short_description = spec.format("$_ $@")
@@ -137,6 +133,17 @@ class EnvModule(object):
if self.spec.package.__doc__:
self.long_description = re.sub(r'\s+', ' ', self.spec.package.__doc__)
+ @property
+ def category(self):
+ # Anything defined at the package level takes precedence
+ if hasattr(self.pkg, 'category'):
+ return self.pkg.category
+ # Extensions
+ for extendee in self.pkg.extendees:
+ return '{extendee} extension'.format(extendee=extendee)
+ # Not very descriptive fallback
+ return 'spack installed package'
+
# @property
# def paths(self):
# # Add python path unless it's an actual python installation