# HG changeset patch # User Paul Boddie # Date 1374068749 -7200 # Node ID 7c7e460c54d7381300eb17fa75bb3a542d7c51be # Parent 5749ec315d4db6ba359b115eb60a0ae2ff5bf924 Give the package installer superuser privileges to write pages employing ACLs. diff -r 5749ec315d4d -r 7c7e460c54d7 patches/patch-moin-1.9-MoinMoin-packages.diff --- a/patches/patch-moin-1.9-MoinMoin-packages.diff Wed Jul 17 01:02:28 2013 +0200 +++ b/patches/patch-moin-1.9-MoinMoin-packages.diff Wed Jul 17 15:45:49 2013 +0200 @@ -1,7 +1,18 @@ diff -r 73f9cf05b8d9 MoinMoin/packages.py --- a/MoinMoin/packages.py Tue Jul 16 18:05:08 2013 +0200 -+++ b/MoinMoin/packages.py Tue Jul 16 19:01:44 2013 +0200 -@@ -298,7 +298,7 @@ ++++ b/MoinMoin/packages.py Wed Jul 17 15:44:11 2013 +0200 +@@ -95,6 +95,10 @@ + truth literals. + """ + return (string.lower() in ('yes', 'true', '1')) ++ ++class IAmRoot(object): ++ def __getattr__(self, name): ++ return lambda *args, **kwargs: True + + class ScriptEngine: + """ +@@ -298,7 +302,7 @@ _ = self.request.getText trivial = str2boolean(trivial) if self.request.user.may.write(pagename): @@ -10,3 +21,11 @@ try: page.saveText(self.extract_file(filename).decode("utf-8"), 0, trivial=trivial, comment=comment) except PageEditor.Unchanged: +@@ -555,6 +559,7 @@ + # Setup MoinMoin environment + from MoinMoin.web.contexts import ScriptContext + request = ScriptContext(url=request_url) ++ request.user.may = IAmRoot() + + package = ZipPackage(request, packagefile) + if not package.isPackage():