summaryrefslogtreecommitdiff
path: root/plugins
diff options
context:
space:
mode:
authorRené 'Necoro' Neumann <necoro@necoro.net>2008-07-03 23:33:21 +0200
committerRené 'Necoro' Neumann <necoro@necoro.net>2008-07-03 23:33:21 +0200
commite42090a8bd7dcc5f9e7c6e41b0f44698588e6586 (patch)
tree79eb890e7ae886598eb0e6255780355e3240e5d3 /plugins
parent1540e5c8fbba5713e0176c8812f7473ea5e91037 (diff)
downloadportato-e42090a8bd7dcc5f9e7c6e41b0f44698588e6586.tar.gz
portato-e42090a8bd7dcc5f9e7c6e41b0f44698588e6586.tar.bz2
portato-e42090a8bd7dcc5f9e7c6e41b0f44698588e6586.zip
Ported etc-proposals plugin
Diffstat (limited to 'plugins')
-rw-r--r--plugins/etc_proposals.py43
-rw-r--r--plugins/etc_proposals.xml19
2 files changed, 43 insertions, 19 deletions
diff --git a/plugins/etc_proposals.py b/plugins/etc_proposals.py
new file mode 100644
index 0000000..f02cef5
--- /dev/null
+++ b/plugins/etc_proposals.py
@@ -0,0 +1,43 @@
+# -*- coding: utf-8 -*-
+#
+# File: plugins/etc_proposals.py
+# This file is part of the Portato-Project, a graphical portage-frontend.
+#
+# Copyright (C) 2007-2008 René 'Necoro' Neumann
+# This is free software. You may redistribute copies of it under the terms of
+# the GNU General Public License version 2.
+# There is NO WARRANTY, to the extent permitted by law.
+#
+# Written by René 'Necoro' Neumann <necoro@necoro.net>
+
+from portato.helper import error
+
+import os
+from subprocess import Popen
+
+class EtcProposals (Plugin):
+ __author__ = "René 'Necoro' Neumann"
+ __description__ = "Adds support for <b>etc-proposals</b>, a graphical etc-update replacement."
+ __dependency__ = "app-portage/etc-proposals"
+
+ def __init__ (self):
+ Plugin.__init__(self)
+
+ self.prog = ["/usr/sbin/etc-proposals"]
+ self.add_call("after_emerge", self.hook, type = "after")
+ self.add_menu("Et_c-Proposals", self.menu)
+
+ def launch (self, options = []):
+ if os.getuid() == 0:
+ Popen(self.prog+options)
+ else:
+ error("ETC_PROPOSALS :: %s",_("Cannot start etc-proposals. Not root!"))
+
+ def hook (self, *args, **kwargs):
+ """Entry point for this plugin."""
+ self.launch(["--fastexit"])
+
+ def menu (self, *args):
+ self.launch()
+
+register(EtcProposals)
diff --git a/plugins/etc_proposals.xml b/plugins/etc_proposals.xml
deleted file mode 100644
index 2caf341..0000000
--- a/plugins/etc_proposals.xml
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-<plugin xmlns="http://portato.sourceforge.net/plugin" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://portato.sourceforge.net/plugin http://portato.sourceforge.net/plugin.xsd">
-
- <author>René 'Necoro' Neumann</author>
- <name>Etc-proposals</name>
-
- <import>portato.plugins.etc_proposals</import>
-
- <hooks>
- <hook type = "after_emerge" call = "etc_prop">
- <connect type="after" />
- </hook>
- </hooks>
-
- <menu>
- <item call="etc_prop_menu">Et_c-Proposals</item>
- </menu>
-
-</plugin>