summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobin H. Johnson <robbat2@gentoo.org>2015-08-08 13:49:04 -0700
committerRobin H. Johnson <robbat2@gentoo.org>2015-08-08 17:38:18 -0700
commit56bd759df1d0c750a065b8c845e93d5dfa6b549d (patch)
tree3f91093cdb475e565ae857f1c5a7fd339e2d781e /dev-python/pyxdg
downloadgentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.gz
gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.bz2
gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.zip
proj/gentoo: Initial commit
This commit represents a new era for Gentoo: Storing the gentoo-x86 tree in Git, as converted from CVS. This commit is the start of the NEW history. Any historical data is intended to be grafted onto this point. Creation process: 1. Take final CVS checkout snapshot 2. Remove ALL ChangeLog* files 3. Transform all Manifests to thin 4. Remove empty Manifests 5. Convert all stale $Header$/$Id$ CVS keywords to non-expanded Git $Id$ 5.1. Do not touch files with -kb/-ko keyword flags. Signed-off-by: Robin H. Johnson <robbat2@gentoo.org> X-Thanks: Alec Warner <antarus@gentoo.org> - did the GSoC 2006 migration tests X-Thanks: Robin H. Johnson <robbat2@gentoo.org> - infra guy, herding this project X-Thanks: Nguyen Thai Ngoc Duy <pclouds@gentoo.org> - Former Gentoo developer, wrote Git features for the migration X-Thanks: Brian Harring <ferringb@gentoo.org> - wrote much python to improve cvs2svn X-Thanks: Rich Freeman <rich0@gentoo.org> - validation scripts X-Thanks: Patrick Lauer <patrick@gentoo.org> - Gentoo dev, running new 2014 work in migration X-Thanks: Michał Górny <mgorny@gentoo.org> - scripts, QA, nagging X-Thanks: All of other Gentoo developers - many ideas and lots of paint on the bikeshed
Diffstat (limited to 'dev-python/pyxdg')
-rw-r--r--dev-python/pyxdg/Manifest1
-rw-r--r--dev-python/pyxdg/files/pyxdg-subprocess.patch38
-rw-r--r--dev-python/pyxdg/files/sec-patch-CVE-2014-1624.patch54
-rw-r--r--dev-python/pyxdg/metadata.xml5
-rw-r--r--dev-python/pyxdg/pyxdg-0.25-r1.ebuild28
5 files changed, 126 insertions, 0 deletions
diff --git a/dev-python/pyxdg/Manifest b/dev-python/pyxdg/Manifest
new file mode 100644
index 000000000000..1f6753d5256e
--- /dev/null
+++ b/dev-python/pyxdg/Manifest
@@ -0,0 +1 @@
+DIST pyxdg-0.25.tar.gz 48935 SHA256 81e883e0b9517d624e8b0499eb267b82a815c0b7146d5269f364988ae031279d SHA512 86cbf3a54fb8e79043db60dcdbb3fb10013ae25a900fa3592edc8a24bf3f440c19bc04626c7906293c785fcb56eab9d87d209b723b5baa872376ba1eb86758b6 WHIRLPOOL 8e77c83f52c5836f4476645fc1d297311c1537e60a8fe364c75c842baf0530def1a483c19489af87ec78d340e630af18ed9a210cecc56f183037e34e58e0e450
diff --git a/dev-python/pyxdg/files/pyxdg-subprocess.patch b/dev-python/pyxdg/files/pyxdg-subprocess.patch
new file mode 100644
index 000000000000..7b9a1ba7d644
--- /dev/null
+++ b/dev-python/pyxdg/files/pyxdg-subprocess.patch
@@ -0,0 +1,38 @@
+#Patch sent to upstream on March 1st, 2009
+#Jesus Rivero (Neurogeek)
+#Replaced deprecated os.popen3 for subprocess
+
+diff -uNr xdg.orig/Menu.py xdg/Menu.py
+--- xdg.orig/Menu.py 2009-03-01 04:34:38.000000000 -0430
++++ xdg/Menu.py 2009-03-01 04:41:27.000000000 -0430
+@@ -12,6 +12,7 @@
+
+ import xdg.Locale
+ import xdg.Config
++from subprocess import Popen, PIPE
+
+ ELEMENT_NODE = xml.dom.Node.ELEMENT_NODE
+
+@@ -841,13 +842,16 @@
+ return m
+
+ def __parseKDELegacyDirs(filename, parent):
+- f=os.popen3("kde-config --path apps")
+- output = f[1].readlines()
+ try:
+- for dir in output[0].split(":"):
+- __parseLegacyDir(dir,"kde", filename, parent)
+- except IndexError:
+- pass
++ f=Popen("kde-config --path apps", shell=True, stdout=PIPE).stdout
++ output = f.readlines()
++ try:
++ for dir in output[0].split(":"):
++ __parseLegacyDir(dir,"kde", filename, parent)
++ except IndexError:
++ pass
++ except:
++ raise Exception, "kde-config failed"
+
+ # remove duplicate entries from a list
+ def __removeDuplicates(list):
diff --git a/dev-python/pyxdg/files/sec-patch-CVE-2014-1624.patch b/dev-python/pyxdg/files/sec-patch-CVE-2014-1624.patch
new file mode 100644
index 000000000000..d94c0a42bddb
--- /dev/null
+++ b/dev-python/pyxdg/files/sec-patch-CVE-2014-1624.patch
@@ -0,0 +1,54 @@
+Improve security of get_runtime_dir(strict=False)
+https://github.com/takluyver/pyxdg/commit/bd999c1c3fe7ee5f30ede2cf704cf03e400347b4
+diff --git a/xdg/BaseDirectory.py b/xdg/BaseDirectory.py
+index cececa3..a7c31b1 100644
+--- a/xdg/BaseDirectory.py
++++ b/xdg/BaseDirectory.py
+@@ -25,7 +25,7 @@
+ Note: see the rox.Options module for a higher-level API for managing options.
+ """
+
+-import os
++import os, stat
+
+ _home = os.path.expanduser('~')
+ xdg_data_home = os.environ.get('XDG_DATA_HOME') or \
+@@ -131,15 +131,30 @@ def get_runtime_dir(strict=True):
+
+ import getpass
+ fallback = '/tmp/pyxdg-runtime-dir-fallback-' + getpass.getuser()
++ create = False
++
+ try:
+- os.mkdir(fallback, 0o700)
++ # This must be a real directory, not a symlink, so attackers can't
++ # point it elsewhere. So we use lstat to check it.
++ st = os.lstat(fallback)
+ except OSError as e:
+ import errno
+- if e.errno == errno.EEXIST:
+- # Already exists - set 700 permissions again.
+- import stat
+- os.chmod(fallback, stat.S_IRUSR|stat.S_IWUSR|stat.S_IXUSR)
+- else: # pragma: no cover
++ if e.errno == errno.ENOENT:
++ create = True
++ else:
+ raise
+-
++ else:
++ # The fallback must be a directory
++ if not stat.S_ISDIR(st.st_mode):
++ os.unlink(fallback)
++ create = True
++ # Must be owned by the user and not accessible by anyone else
++ elif (st.st_uid != os.getuid()) \
++ or (st.st_mode & (stat.S_IRWXG | stat.S_IRWXO)):
++ os.rmdir(fallback)
++ create = True
++
++ if create:
++ os.mkdir(fallback, 0o700)
++
+ return fallback
+
diff --git a/dev-python/pyxdg/metadata.xml b/dev-python/pyxdg/metadata.xml
new file mode 100644
index 000000000000..de483c53568f
--- /dev/null
+++ b/dev-python/pyxdg/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>python</herd>
+</pkgmetadata>
diff --git a/dev-python/pyxdg/pyxdg-0.25-r1.ebuild b/dev-python/pyxdg/pyxdg-0.25-r1.ebuild
new file mode 100644
index 000000000000..abce0f4528ba
--- /dev/null
+++ b/dev-python/pyxdg/pyxdg-0.25-r1.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+# py3.3 removed due to nosetests
+PYTHON_COMPAT=( python{2_7,3_3,3_4} pypy )
+inherit distutils-r1
+
+DESCRIPTION="A Python module to deal with freedesktop.org specifications"
+HOMEPAGE="http://freedesktop.org/wiki/Software/pyxdg http://cgit.freedesktop.org/xdg/pyxdg/"
+SRC_URI="http://people.freedesktop.org/~takluyver/${P}.tar.gz"
+
+LICENSE="LGPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~mips ppc ppc64 sparc x86 ~x86-fbsd"
+IUSE="test"
+
+DEPEND="test? ( dev-python/nose[${PYTHON_USEDEP}]
+ x11-themes/hicolor-icon-theme )"
+
+DOCS=( AUTHORS ChangeLog README TODO )
+PATCHES=( "${FILESDIR}"/sec-patch-CVE-2014-1624.patch )
+
+python_test() {
+ nosetests || die
+}