summaryrefslogtreecommitdiff
path: root/portato/backend
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--portato/backend/portage/system.py6
-rw-r--r--portato/backend/portage/system_22.py6
-rw-r--r--portato/backend/system_interface.py15
3 files changed, 27 insertions, 0 deletions
diff --git a/portato/backend/portage/system.py b/portato/backend/portage/system.py
index feaf4df..58f687e 100644
--- a/portato/backend/portage/system.py
+++ b/portato/backend/portage/system.py
@@ -37,6 +37,12 @@ class PortageSystem (SystemInterface):
self.use_descs = {}
self.local_use_descs = defaultdict(dict)
+ def has_set_support (self):
+ return False
+
+ def get_sets (self):
+ return (("world", "The world set."), ("system", "The system set."))
+
def get_version (self):
return "Portage %s" % portage.VERSION
diff --git a/portato/backend/portage/system_22.py b/portato/backend/portage/system_22.py
index be27186..88d968b 100644
--- a/portato/backend/portage/system_22.py
+++ b/portato/backend/portage/system_22.py
@@ -30,5 +30,11 @@ class PortageSystem_22 (PortageSystem):
self.use_descs = {}
self.local_use_descs = defaultdict(dict)
+ def has_set_support (self):
+ return True
+
+ def get_sets (self):
+ return ((name, set.description) for name, set in self.settings.setsconfig.getSets().iteritems())
+
def new_package (self, cpv):
return PortagePackage_22(cpv)
diff --git a/portato/backend/system_interface.py b/portato/backend/system_interface.py
index 4b0f8df..16f0a9c 100644
--- a/portato/backend/system_interface.py
+++ b/portato/backend/system_interface.py
@@ -12,6 +12,21 @@
class SystemInterface (object):
+ def has_set_support (self):
+ """Signals, whether this backend supports sets.
+
+ @rtype: boolean
+ """
+ raise NotImplementedError
+
+ def get_sets (self):
+ """Returns all supported sets in tuples consisting of name and description.
+ If sets aren't supported, at least "world" and "system" have to be returned.
+
+ @rtype: (string, string)[]
+ """
+ raise NotImplementedError
+
def get_version (self):
"""Returns the version of the used backend.
>2014-06-16emacs: Use PASSWORD_STORE_CLIP_TIME env variableSvend Sorensen1-4/+7 2014-06-16emacs: Use when instead of if/prognSvend Sorensen1-5/+4 2014-06-16emacs: Update pass website URLSvend Sorensen1-1/+1 2014-05-27Update for new URL.Jason A. Donenfeld3-3/+3 2014-05-14Bump version1.6.2Jason A. Donenfeld1-1/+1 2014-05-14Don't define tmpdir on git init.Jason A. Donenfeld1-4/+3 2014-05-14Disable secmem warning when discovering keysmilki2-2/+2 2014-05-10edit: Quote editor so tests work in spaced directories.Jason A. Donenfeld1-1/+1 2014-05-10reencryption: Properly escape input to sedJason A. Donenfeld1-1/+1 2014-05-10git: use secure tmp directoryJason A. Donenfeld1-4/+11 2014-05-10configure git to decrypt gpg files automaticallySamuel Le Thiec1-0/+5 2014-05-08completion: add new generate flagsJason A. Donenfeld3-2/+7 2014-05-08inplace: mutually exclusive with forceJason A. Donenfeld2-3/+3 2014-05-08usage: tab to spacesJason A. Donenfeld1-1/+1 2014-05-08generate: use nice ansi colors instead.Jason A. Donenfeld1-3/+2 2014-05-08zsh: posix compatible sed fix for zsh-completionJason A. Donenfeld1-1/+1 2014-05-07Implement interactive init functionSvend Sorensen1-0/+8 2014-05-07Implement interactive rename functionSvend Sorensen1-0/+7 2014-05-07Reorder interactive function to match order of helper functionsSvend Sorensen1-13/+13 2014-05-07Make edit helper function name consistent with other helpersSvend Sorensen1-1/+1 2014-05-07Factor out password completing-read functionSvend Sorensen1-4/+8 2014-05-07Add dash to Package-RequiresSvend Sorensen1-1/+1 2014-05-06Force sane sort order.Jason A. Donenfeld1-2/+2 2014-05-06generate: add --in-place optionJason A. Donenfeld4-9/+33