Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorErik Price <erik.price16@gmail.com>2013-04-18 03:02:09 (GMT)
committer Erik Price <erik.price16@gmail.com>2013-04-18 03:02:09 (GMT)
commit2775dc0f0c26424819a047a117c85c85bbda900f (patch)
treeb7386fc268781c776e1d27087130ea63e675607f
parented5cdf0ad28ceec92587af796ff723574a1a71b4 (diff)
Initial Gentoo support
-rw-r--r--config/packages/deps.json797
-rw-r--r--devbot/plugins/gentoo.py125
2 files changed, 642 insertions, 280 deletions
diff --git a/config/packages/deps.json b/config/packages/deps.json
index 2adc13c..4d0fa52 100644
--- a/config/packages/deps.json
+++ b/config/packages/deps.json
@@ -2,1038 +2,1275 @@
"Adwaita": {
"debian": [
"gnome-themes-standard"
- ],
+ ],
"fedora": [
"gnome-themes-standard"
- ],
+ ],
"ubuntu": [
"gnome-themes-standard"
+ ],
+ "gentoo": [
+ "gnome-themes-standard"
]
- },
+ },
"X": {
"debian": [
"xserver-xorg"
- ],
+ ],
"fedora": [
"xorg-x11-server-Xorg"
- ],
+ ],
"ubuntu": [
"xserver-xorg"
+ ],
+ "gentoo": [
+ "xorg-server"
]
- },
+ },
"Xephyr": {
"debian": [
"xserver-xephyr"
- ],
+ ],
"fedora": [
"xorg-x11-server-Xephyr"
- ],
+ ],
"ubuntu": [
"xserver-xephyr"
+ ],
+ "gentoo": [
+ "#you need to set the xephyr USE flag on xorg-server"
]
- },
+ },
"Xvfb": {
"debian": [
"xvfb"
- ],
+ ],
"fedora": [
"xorg-x11-server-Xvfb"
- ],
+ ],
"ubuntu": [
"xvfb"
+ ],
+ "gentoo": [
+ "#you need to set the xvfb USE flag on xorg-server"
]
- },
+ },
"aclocal": {
"debian": [
"automake"
- ],
+ ],
"fedora": [
"automake"
- ],
+ ],
"ubuntu": [
"automake"
+ ],
+ "gentoo": [
+ "automake"
]
- },
+ },
"alsa": {
"debian": [
"libasound2-dev"
- ],
+ ],
"fedora": [
"alsa-lib-devel"
- ],
+ ],
"ubuntu": [
"libasound2-dev"
+ ],
+ "gentoo": [
+ "alsa-lib"
]
- },
+ },
"asn1Parser": {
"debian": [
"libtasn1-3-bin"
- ],
+ ],
"fedora": [
"libtasn1-tools"
+ ],
+ "gentoo": [
+ "libtasn1"
]
- },
+ },
"atk-bridge": {
"debian": [
"libatk-adaptor"
- ],
+ ],
"fedora": [
"at-spi2-atk"
- ],
+ ],
"ubuntu": [
"libatk-adaptor"
+ ],
+ "gentoo": [
+ "atk"
]
- },
+ },
"atspi typelib": {
"debian": [
"gir1.2-atspi-2.0"
- ],
+ ],
"fedora": [
"at-spi2-core"
- ],
+ ],
"ubuntu": [
"gir1.2-atspi-2.0"
+ ],
+ "gentoo": [
+ "at-spi2-core"
]
- },
+ },
"autodetect gstreamer": {
"fedora": [
"gstreamer1-plugins-good"
- ],
+ ],
"ubuntu": [
"gstreamer1.0-plugins-good"
]
- },
+ },
"autoreconf": {
"debian": [
"autoconf"
- ],
+ ],
"fedora": [
"autoconf"
- ],
+ ],
"ubuntu": [
"autoconf"
+ ],
+ "gentoo": [
+ "sys-devel/autoconf"
]
- },
+ },
"bison": {
"debian": [
"bison"
- ],
+ ],
"fedora": [
"bison"
- ],
+ ],
"ubuntu": [
"bison"
+ ],
+ "gentoo": [
+ "sys-devel/bison"
]
- },
+ },
"c++": {
"debian": [
"g++"
- ],
+ ],
"fedora": [
"gcc-c++"
- ],
+ ],
"ubuntu": [
"g++"
]
- },
+ },
"cairo foreign": {
"debian": [
"python-gi-cairo"
- ],
+ ],
"fedora": [
"pygobject3"
- ],
+ ],
"ubuntu": [
"python-gi-cairo"
+ ],
+ "gentoo": [
+ "dev-python/pycairo"
]
- },
+ },
"cairo typelib": {
"debian": [
"gir1.2-freedesktop"
- ],
+ ],
"fedora": [
"gobject-introspection"
- ],
+ ],
"ubuntu": [
"gir1.2-freedesktop"
+ ],
+ "gentoo": [
+ "dev-libs/gobject-introspection"
]
- },
+ },
"cairo-gobject": {
"debian": [
"libcairo2-dev"
- ],
+ ],
"fedora": [
"cairo-gobject-devel"
- ],
+ ],
"ubuntu": [
"libcairo2-dev"
+ ],
+ "gentoo": [
+ "x11-libs/cairo"
]
- },
+ },
"ccache": {
"debian": [
"ccache"
- ],
+ ],
"fedora": [
"ccache"
- ],
+ ],
"ubuntu": [
"ccache"
+ ],
+ "gentoo": [
+ "dev-util/ccache"
]
- },
+ },
"dateutil python": {
"debian": [
"python-dateutil"
- ],
+ ],
"fedora": [
"python-dateutil"
- ],
+ ],
"ubuntu": [
"python-dateutil"
+ ],
+ "gentoo": [
+ "python-dateutil"
]
- },
+ },
"dbus-glib-1": {
"debian": [
"libdbus-glib-1-dev"
- ],
+ ],
"fedora": [
"dbus-glib-devel"
- ],
+ ],
"ubuntu": [
"libdbus-glib-1-dev"
+ ],
+ "gentoo": [
+ "dbus-glib"
]
- },
+ },
"dbus-launch": {
"debian": [
"dbus-x11"
- ],
+ ],
"fedora": [
"dbus-x11"
- ],
+ ],
"ubuntu": [
"dbus-x11"
+ ],
+ "gentoo": [
+ "sys-apps/dbus"
]
- },
+ },
"dconf": {
"debian": [
"dconf-tools"
- ],
+ ],
"fedora": [
"dconf"
- ],
+ ],
"ubuntu": [
"dconf"
+ ],
+ "gentoo": [
+ "gnome-base/dconf"
]
- },
+ },
"decorator python": {
"debian": [
"python-decorator"
- ],
+ ],
"fedora": [
"python-decorator"
- ],
+ ],
"ubuntu": [
"python-decorator"
+ ],
+ "gentoo": [
+ "dev-python/decorator"
]
- },
+ },
"espeak": {
"debian": [
"espeak"
- ],
+ ],
"fedora": [
"espeak"
- ],
+ ],
"ubuntu": [
"espeak"
+ ],
+ "gentoo": [
+ "app-accessibility/espeak"
]
- },
+ },
"espeak devel": {
"debian": [
"libespeak-dev"
- ],
+ ],
"fedora": [
"espeak-devel"
- ],
+ ],
"ubuntu": [
"libespeak-dev"
]
- },
+ },
"evince typelib": {
"debian": [
"gir1.2-evince-3.0"
- ],
+ ],
"fedora": [
"evince-libs"
- ],
+ ],
"ubuntu": [
"gir1.2-evince-3.0"
+ ],
+ "gentoo": [
+ "dev-python/evince-python"
]
- },
+ },
"flex": {
"debian": [
"flex"
- ],
+ ],
"fedora": [
"flex"
- ],
+ ],
"ubuntu": [
"flex"
+ ],
+ "gentoo": [
+ "sys-devel/flex"
]
- },
+ },
"gail gtkmodule": {
"debian": [
"libgail-common"
- ],
+ ],
"fedora": [
"gtk2"
- ],
+ ],
"ubuntu": [
"libgail-common"
+ ],
+ "gentoo": [
+ "gnome-extra/libgail-gnome"
]
- },
+ },
"gcc": {
"debian": [
"gcc"
- ],
+ ],
"fedora": [
"gcc"
- ],
+ ],
"ubuntu": [
"gcc"
]
- },
+ },
"gconf python": {
"debian": [
"python-gconf"
- ],
+ ],
"fedora": [
"gnome-python2-gconf"
- ],
+ ],
"ubuntu": [
"python-gconf"
+ ],
+ "gentoo": [
+ "dev-python/gconf-python"
]
- },
+ },
"gconf typelib": {
"debian": [
"gir1.2-gconf-2.0"
- ],
+ ],
"fedora": [
"GConf2"
- ],
+ ],
"ubuntu": [
"gir1.2-gconf-2.0"
+ ],
+ "gentoo": [
+ "gnome-base/gconf"
]
- },
+ },
"gconf-2.0": {
"debian": [
"libgconf2-dev"
- ],
+ ],
"fedora": [
"GConf2-devel"
- ],
+ ],
"ubuntu": [
"libgconf2-dev"
]
- },
+ },
"gi python": {
"debian": [
"python-gobject-2"
- ],
+ ],
"fedora": [
"pygobject3"
- ],
+ ],
"ubuntu": [
"python-gobject-2"
+ ],
+ "gentoo": [
+ "dev-python/pygobject:3"
]
- },
+ },
"glib-2.0": {
"debian": [
"libglib2.0-dev"
- ],
+ ],
"fedora": [
"glib2-devel"
- ],
+ ],
"ubuntu": [
"libglib2.0-dev"
]
- },
+ },
"gnome-doc-common": {
"debian": [
"gnome-common"
- ],
+ ],
"fedora": [
"gnome-common"
- ],
+ ],
"ubuntu": [
"gnome-common"
+ ],
+ "gentoo": [
+ "gnome-base/gnome-common"
]
- },
+ },
"gnome-keyring-daemon": {
"debian": [
"gnome-keyring"
- ],
+ ],
"fedora": [
"gnome-keyring"
- ],
+ ],
"ubuntu": [
"gnome-keyring"
+ ],
+ "gentoo": [
+ "gnome-base/gnome-keyring"
]
- },
+ },
"gobject-introspection-1.0": {
"debian": [
"libgirepository1.0-dev"
- ],
+ ],
"fedora": [
"gobject-introspection-devel"
- ],
+ ],
"ubuntu": [
"libgirepository1.0-dev"
+ ],
+ "gentoo": [
+ "dev-libs/gobject-introspection"
]
- },
+ },
"gsettings-desktop-schemas": {
"debian": [
"gsettings-desktop-schemas-dev"
- ],
+ ],
"fedora": [
"gsettings-desktop-schemas-devel"
- ],
+ ],
"ubuntu": [
"gsettings-desktop-schemas-dev"
+ ],
+ "gentoo": [
+ "gnome-base/gsettings-desktop-schemas"
]
- },
+ },
"gst typelib": {
"fedora": [
"gstreamer1"
- ],
+ ],
"ubuntu": [
"gir1.2-gstreamer-1.0"
]
- },
+ },
"gstreamer-1.0": {
"fedora": [
"gstreamer1-devel"
- ],
+ ],
"ubuntu": [
"libgstreamer1.0-dev"
]
- },
+ },
"gstreamer-plugins-base-1.0": {
"fedora": [
"gstreamer1-plugins-base-devel"
- ],
+ ],
"ubuntu": [
"libgstreamer-plugins-base1.0-dev"
]
- },
+ },
"gtk+-3.0": {
"debian": [
"libgtk-3-dev"
- ],
+ ],
"fedora": [
"gtk3-devel"
- ],
+ ],
"ubuntu": [
"libgtk-3-dev"
+ ],
+ "gentoo": [
+ "x11-libs/gtk+:3"
]
- },
+ },
"gtk-doc": {
"debian": [
"gtk-doc-tools"
- ],
+ ],
"fedora": [
"gtk-doc"
- ],
+ ],
"ubuntu": [
"gtk-doc-tools"
+ ],
+ "gentoo": [
+ "dev-util/gtk-doc"
]
- },
+ },
"gtksource typelib": {
"debian": [
"gir1.2-gtksource-3.0"
- ],
+ ],
"fedora": [
"gtksourceview3"
- ],
+ ],
"ubuntu": [
"gir1.2-gtksource-3.0"
+ ],
+ "gentoo": [
+ "x11-libs/gtksourceview"
]
- },
+ },
"gtksourceview2 python": {
"debian": [
"python-gtksourceview2"
- ],
+ ],
"fedora": [
"pygtksourceview"
- ],
+ ],
"ubuntu": [
"python-gtksourceview2"
+ ],
+ "gentoo": [
+ "dev-python/pygtksourceview"
]
- },
+ },
"hippo python": {
"debian": [
"python-hippocanvas"
- ],
+ ],
"fedora": [
"hippo-canvas-python"
- ],
+ ],
"ubuntu": [
"python-hippocanvas"
+ ],
+ "gentoo": [
+ "x11-libs/hippo-canvas"
]
- },
+ },
"ice": {
"debian": [
"libice-dev"
- ],
+ ],
"fedora": [
"libICE-devel"
- ],
+ ],
"ubuntu": [
"libice-dev"
+ ],
+ "gentoo": [
+ "x11-libs/libICE"
]
- },
+ },
"icon-naming-utils": {
"debian": [
"icon-naming-utils"
- ],
+ ],
"fedora": [
"icon-naming-utils"
- ],
+ ],
"ubuntu": [
"icon-naming-utils"
+ ],
+ "gentoo": [
+ "x11-misc/icon-naming-utils"
]
- },
+ },
"icon-slicer": {
"debian": [
"icon-slicer"
- ],
+ ],
"fedora": [
"icon-slicer"
- ],
+ ],
"ubuntu": [
"icon-slicer"
+ ],
+ "gentoo": [
+ "media-gfx/icon-slicer"
]
- },
+ },
"intltoolize": {
"debian": [
"intltool"
- ],
+ ],
"fedora": [
"intltool"
- ],
+ ],
"ubuntu": [
"intltool"
+ ],
+ "gentoo": [
+ "dev-util/intltool"
]
- },
+ },
"iso-codes": {
"debian": [
"iso-codes"
- ],
+ ],
"fedora": [
"iso-codes-devel"
- ],
+ ],
"ubuntu": [
"iso-codes"
+ ],
+ "gentoo": [
+ "app-text/iso-codes"
]
- },
+ },
"libcanberra-gtk": {
"debian": [
"libcanberra-gtk-dev"
- ],
+ ],
"fedora": [
"libcanberra-devel"
- ],
+ ],
"ubuntu": [
"libcanberra-gtk-dev"
+ ],
+ "gentoo": [
+ "media-libs/libcanberra"
]
- },
+ },
"libgcr": {
"debian": [
"libgcr-3-dev"
- ],
+ ],
"fedora": [
"gcr-devel"
+ ],
+ "gentoo": [
+ "app-crypt/gcr"
]
- },
+ },
"libgcrypt": {
"debian": [
"libgcrypt11-dev"
- ],
+ ],
"fedora": [
"libgcrypt-devel"
+ ],
+ "gentoo": [
+ "dev-libs/libgcrypt"
]
- },
+ },
"librsvg-2.0": {
"debian": [
"librsvg2-dev"
- ],
+ ],
"fedora": [
"librsvg2-devel"
- ],
+ ],
"ubuntu": [
"librsvg2-dev"
+ ],
+ "gentoo": [
+ "gnome-base/librsvg"
]
- },
+ },
"libtasn1": {
"debian": [
"libtasn1-3-dev"
- ],
+ ],
"fedora": [
"libtasn1-devel"
]
- },
+ },
"libtool": {
"debian": [
"libtool"
- ],
+ ],
"fedora": [
"libtool"
- ],
+ ],
"ubuntu": [
"libtool"
+ ],
+ "gentoo": [
+ "sys-devl/libtool"
]
- },
+ },
"libxml-2.0": {
"debian": [
"libxml2-dev"
- ],
+ ],
"fedora": [
"libxml2-devel"
- ],
+ ],
"ubuntu": [
"libxml2-dev"
+ ],
+ "gentoo": [
+ "dev-libs/libxml2"
]
- },
+ },
"makeinfo": {
"debian": [
"texinfo"
- ],
+ ],
"fedora": [
"texinfo"
- ],
+ ],
"ubuntu": [
"texinfo"
+ ],
+ "gentoo": [
+ "sys-apps/texinfo"
]
- },
+ },
"metacity": {
"debian": [
"metacity"
- ],
+ ],
"fedora": [
"metacity"
- ],
+ ],
"ubuntu": [
"metacity"
+ ],
+ "gentoo": [
+ "x11-wm/metacity"
]
- },
+ },
"org.freedesktop.Telepathy.AccountManager": {
"debian": [
"telepathy-mission-control-5"
- ],
+ ],
"fedora": [
"telepathy-mission-control"
- ],
+ ],
"ubuntu": [
"telepathy-mission-control-5"
+ ],
+ "gentoo": [
+ "net-im/telepathy-mission-control"
]
- },
+ },
"org.freedesktop.Telepathy.ConnectionManager.gabble": {
"debian": [
"telepathy-gabble"
- ],
+ ],
"fedora": [
"telepathy-gabble"
- ],
+ ],
"ubuntu": [
"telepathy-gabble"
+ ],
+ "gentoo": [
+ "net-voip/telepathy-gabble"
]
- },
+ },
"org.freedesktop.Telepathy.ConnectionManager.salut": {
"debian": [
"telepathy-salut"
- ],
+ ],
"fedora": [
"telepathy-salut"
- ],
+ ],
"ubuntu": [
"telepathy-salut"
+ ],
+ "gentoo": [
+ "net-voip/telepathy-salut"
]
- },
+ },
"pango gstreamer": {
"fedora": [
"gstreamer1-plugins-base"
- ],
+ ],
"ubuntu": [
"gstreamer1.0-x"
]
- },
+ },
"pep8": {
"debian": [
"pep8"
- ],
+ ],
"fedora": [
"python-pep8"
- ],
+ ],
"ubuntu": [
"pep8"
+ ],
+ "gentoo": [
+ "dev-python/pep8"
]
- },
+ },
"pkg-config": {
"debian": [
"pkg-config"
- ],
+ ],
"fedora": [
"pkgconfig"
- ],
+ ],
"ubuntu": [
"pkg-config"
]
- },
+ },
"playback gstreamer": {
"fedora": [
"gstreamer1-plugins-base"
- ],
+ ],
"ubuntu": [
"gstreamer1.0-plugins-base"
]
- },
+ },
"pycairo": {
"debian": [
"python-cairo-dev"
- ],
+ ],
"fedora": [
"pycairo-devel"
- ],
+ ],
"ubuntu": [
"python-cairo-dev"
+ ],
+ "gentoo": [
+ "dev-python/pycairo"
]
- },
+ },
"pygtk-2.0": {
"debian": [
"python-gtk2-dev"
- ],
+ ],
"fedora": [
"pygtk2-devel"
- ],
+ ],
"ubuntu": [
"python-gtk2-dev"
+ ],
+ "gentoo": [
+ "dev-python/pygtk"
]
- },
+ },
"pylint": {
"debian": [
"pylint"
- ],
+ ],
"fedora": [
"pylint"
- ],
+ ],
"ubuntu": [
"pylint"
+ ],
+ "gentoo": [
+ "dev-python/pylint"
]
- },
+ },
"python": {
"debian": [
"python-dev"
- ],
+ ],
"fedora": [
"python-devel"
- ],
+ ],
"ubuntu": [
"python-dev"
]
- },
+ },
"rsvg python": {
"debian": [
"python-rsvg"
- ],
+ ],
"fedora": [
"gnome-python2-rsvg"
- ],
+ ],
"ubuntu": [
"python-rsvg"
+ ],
+ "gentoo": [
+ "dev-python/librsvg-python"
]
- },
+ },
"simplejson python": {
"debian": [
"python-simplejson"
- ],
+ ],
"fedora": [
"python-simplejson"
- ],
+ ],
"ubuntu": [
"python-simplejson"
+ ],
+ "gentoo": [
+ "dev-python/simplejson"
]
- },
+ },
"sm": {
"debian": [
"libsm-dev"
- ],
+ ],
"fedora": [
"libSM-devel"
- ],
+ ],
"ubuntu": [
"libsm-dev"
+ ],
+ "gentoo": [
+ "x11-libs/libSM"
]
- },
+ },
"sphinx-build": {
"debian": [
"python-sphinx"
- ],
+ ],
"fedora": [
"python-sphinx"
- ],
+ ],
"ubuntu": [
"python-sphinx"
+ ],
+ "gentoo": [
+ "dev-python/sphinx"
]
- },
+ },
"ssh": {
"debian": [
"openssh-client"
- ],
+ ],
"fedora": [
"openssh-clients"
- ],
+ ],
"ubuntu": [
"openssh-client"
+ ],
+ "gentoo": [
+ "net-misc/openssh"
]
- },
+ },
"tar": {
"debian": [
"tar"
- ],
+ ],
"fedora": [
"tar"
- ],
+ ],
"ubuntu": [
"tar"
]
- },
+ },
"telepathy python": {
"debian": [
"python-telepathy"
- ],
+ ],
"fedora": [
"python-telepathy"
- ],
+ ],
"ubuntu": [
"python-telepathy"
+ ],
+ "gentoo": [
+ "dev-python/telepathy-python"
]
- },
+ },
"telepathy-glib": {
"debian": [
"libtelepathy-glib-dev"
- ],
+ ],
"fedora": [
"telepathy-glib-devel"
- ],
+ ],
"ubuntu": [
"libtelepathy-glib-dev"
+ ],
+ "gentoo": [
+ "net-libs/telepathy-glib"
]
- },
+ },
"time": {
"debian": [
"time"
- ],
+ ],
"fedora": [
"time"
- ],
+ ],
"ubuntu": [
"time"
+ ],
+ "gentoo": [
+ "sys-process/time"
]
- },
+ },
"virtualenv": {
"debian": [
"python-virtualenv"
- ],
+ ],
"fedora": [
"python-virtualenv"
- ],
+ ],
"ubuntu": [
"python-virtualenv"
+ ],
+ "gentoo": [
+ "dev-python/virtualenv"
]
- },
+ },
"vte python": {
"debian": [
"python-vte"
- ],
+ ],
"fedora": [
"vte"
- ],
+ ],
"ubuntu": [
"python-vte"
+ ],
+ "gentoo": [
+ "x11-libs/vte"
]
- },
+ },
"vte typelib": {
"debian": [
"gir1.2-vte-2.90"
- ],
+ ],
"fedora": [
"vte3"
- ],
+ ],
"ubuntu": [
"gir1.2-vte-2.90"
]
- },
+ },
"webkit typelib": {
"debian": [
"gir1.2-webkit-3.0"
- ],
+ ],
"fedora": [
"webkitgtk3"
- ],
+ ],
"ubuntu": [
"gir1.2-webkit-3.0"
+ ],
+ "gentoo": [
+ "dev-python/pywebkitgtk"
]
- },
+ },
"wnck python": {
"debian": [
"python-wnck"
- ],
+ ],
"fedora": [
"gnome-python2-libwnck"
- ],
+ ],
"ubuntu": [
"python-wnck"
+ ],
+ "gentoo": [
+ "net-libs/webkit-gtk"
]
- },
+ },
"wnck typelib": {
"debian": [
"gir1.2-wnck-3.0"
- ],
+ ],
"fedora": [
"libwnck3"
- ],
+ ],
"ubuntu": [
"gir1.2-wnck-3.0"
+ ],
+ "gentoo": [
+ "x11-libs/libwnck"
]
- },
+ },
"x11": {
"debian": [
"libx11-dev"
- ],
+ ],
"fedora": [
"libX11-devel"
- ],
+ ],
"ubuntu": [
"libx11-dev"
]
- },
+ },
"xapian python": {
"debian": [
"python-xapian"
- ],
+ ],
"fedora": [
"xapian-bindings-python"
- ],
+ ],
"ubuntu": [
"python-xapian"
+ ],
+ "gentoo": [
+ "dev-libs/xapian-bindings"
]
- },
+ },
"xcursorgen": {
"debian": [
"x11-apps"
- ],
+ ],
"fedora": [
"xorg-x11-apps"
- ],
+ ],
"ubuntu": [
"x11-apps"
+ ],
+ "gentoo": [
+ "x11-apps/xcursorgen"
]
- },
+ },
"xdg-user-dirs-update": {
"debian": [
"xdg-user-dirs"
- ],
+ ],
"fedora": [
"xdg-user-dirs"
- ],
+ ],
"ubuntu": [
"xdg-user-dirs"
+ ],
+ "gentoo": [
+ "x11-misc/xdg-user-dirs"
]
- },
+ },
"xdpyinfo": {
"debian": [
"x11-utils"
- ],
+ ],
"fedora": [
"xorg-x11-utils"
- ],
+ ],
"ubuntu": [
"x11-utils"
+ ],
+ "gentoo": [
+ "x11-apps/xdpyinfo"
]
- },
+ },
"xinit": {
"debian": [
"xinit"
- ],
+ ],
"fedora": [
"xorg-x11-xinit"
- ],
+ ],
"ubuntu": [
"xinit"
]
- },
+ },
"xkbfile": {
"debian": [
"libxkbfile-dev"
- ],
+ ],
"fedora": [
"libxkbfile-devel"
- ],
+ ],
"ubuntu": [
"libxkbfile-dev"
+ ],
+ "gentoo": [
+ "x11-libs/libxkbfile"
]
- },
+ },
"xrandr": {
"debian": [
"libxrandr-dev"
- ],
+ ],
"fedora": [
"libXrandr-devel"
- ],
+ ],
"ubuntu": [
"libxrandr-dev"
+ ],
+ "gentoo": [
+ "x11-libs/libXrandr"
]
- },
+ },
"xrdb": {
"debian": [
"x11-xserver-utils"
- ],
+ ],
"fedora": [
"xorg-x11-server-utils"
- ],
+ ],
"ubuntu": [
"x11-xserver-utils"
+ ],
+ "gentoo": [
+ "x11-apps/xrdb"
]
- },
+ },
"xtst": {
"debian": [
"libxtst-dev"
- ],
+ ],
"fedora": [
"libXtst-devel"
- ],
+ ],
"ubuntu": [
"libxtst-dev"
+ ],
+ "gentoo": [
+ "x11-libs/libXtst"
]
- },
+ },
"xz": {
"debian": [
"xz-utils"
- ],
+ ],
"fedora": [
"xz"
- ],
+ ],
"ubuntu": [
"xz-utils"
+ ],
+ "gentoo": [
+ "app-arch/xz-utils"
]
- },
+ },
"yasm": {
"debian": [
"yasm"
- ],
+ ],
"fedora": [
"yasm"
- ],
+ ],
"ubuntu": [
"yasm"
+ ],
+ "gentoo": [
+ "dev-lang/yasm"
]
}
}
diff --git a/devbot/plugins/gentoo.py b/devbot/plugins/gentoo.py
new file mode 100644
index 0000000..a9c3509
--- /dev/null
+++ b/devbot/plugins/gentoo.py
@@ -0,0 +1,125 @@
+import os
+import subprocess
+
+from devbot import command
+from devbot import distro
+from devbot.plugins import interfaces
+
+class PackageManager(interfaces.PackageManager):
+ def __init__(self, test=False, interactive=True):
+ self._test = test
+ self._interactive = interactive
+
+ def install_packages(self, packages):
+ args = ["emerge", "-vu"]
+
+ if self._interactive:
+ args.append("-a")
+
+ args.extend(packages)
+
+ command.run_with_sudo(args, test=self._test,
+ interactive=self._interactive)
+
+ def remove_packages(self, packages):
+ args = ["emerge", "-vc"]
+ args.extend(packages)
+
+ if self._interactive:
+ args.append("-a")
+
+ print(args)
+
+ command.run_with_sudo(args, test=self._test)
+
+ def update(self):
+ args = ["emerge", "-uvDN"]
+
+ if self._interactive:
+ args.append("-a")
+
+ command.run_with_sudo(args, test=self._test,
+ interactive=self._interactive)
+
+ # TODO: This currently uses eix, which is non-standard (but common)
+ def find_all(self):
+ packages = subprocess.check_output(["eix", "-I", "--only-names"])
+
+ return packages.split(" ")
+
+ # TODO
+ def find_with_deps(self, packages):
+ result = []
+
+ for package in packages:
+ if package not in result:
+ result.append(package)
+
+ self._find_deps(package, result)
+
+ return result
+
+ def _find_deps(self, package, result):
+
+ # Ensure that package exists first
+ try:
+ print('_find_deps1')
+ subprocess.check_output(["eix", "-IAe", package, "--format",
+ '<name>'])
+ except subprocess.CalledProcessError:
+ print("Package %s not installed" % package)
+ return
+ print('_find_deps')
+ # FIXME: This command is horrifying
+ f = os.popen("""equery --quiet list emacs |
+ xargs equery --no-color --quiet depgraph -UAMl |
+ perl -pe 's/\[.*?\]\s+(.*?\/.*?)(-[0-9].*)?$/\1/' |
+ tail -n +2""")
+
+ dependencies = f.read().strip().split()
+ for dep in dependencies:
+ if dep not in result:
+ result.append(dep)
+
+
+
+ pass
+
+distro.register_package_manager("gentoo", PackageManager)
+
+class DistroInfo(interfaces.DistroInfo):
+ _GENTOO_RELEASE_PATH = "/etc/gentoo-release"
+
+ def __init__(self):
+ arch = self._get_architecture()
+
+ self.name = "gentoo"
+ self.version = None
+ self.gnome_version = "TODO"
+ self.gstreamer_version = "TODO"
+ self.valid = True
+
+ # TODO: Confirm validity of this
+ self.supported = (arch in [b'i386', b'i686', b'x86_64'])
+
+ self.lib_dir = None
+
+ if arch == "x86_64":
+ self.lib_dir = "lib64"
+
+ try:
+ release = subprocess.check_output(["lsb_release", "-r"])
+ release = release.split()[1].strip()
+ except:
+ release = None
+ self.valid = False
+
+ if release == b'2.1':
+ self.version = "2.1"
+ else:
+ self.supported = False
+
+ def _get_architecture(self):
+ return subprocess.check_output(["uname", "-m"]).strip()
+
+distro.register_distro_info(DistroInfo)