--- /dev/null
+Upstream-Status: Submitted (https://bugs.freedesktop.org/show_bug.cgi?id=65933)
+Signed-off-by: Ross Burton <ross.burton@intel.com>
+
+From 42821739a228a85ce3432be1796858e5cc31688b Mon Sep 17 00:00:00 2001
+From: Quentin Glidic <sardemff7+git@sardemff7.net>
+Date: Wed, 19 Jun 2013 15:27:11 +0200
+Subject: [PATCH weston] weston-launch: Set all groups for user
+
+Signed-off-by: Quentin Glidic <sardemff7+git@sardemff7.net>
+---
+ configure.ac | 2 +-
+ src/weston-launch.c | 4 ++++
+ 2 files changed, 5 insertions(+), 1 deletion(-)
+
+diff --git a/configure.ac b/configure.ac
+index b625221..db3feb0 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -52,7 +52,7 @@ AC_CHECK_DECL(CLOCK_MONOTONIC,[],
+ [[#include <time.h>]])
+ AC_CHECK_HEADERS([execinfo.h])
+
+-AC_CHECK_FUNCS([mkostemp strchrnul])
++AC_CHECK_FUNCS([mkostemp strchrnul initgroups])
+
+ COMPOSITOR_MODULES="wayland-server >= 1.1.90 xkbcommon pixman-1"
+
+diff --git a/src/weston-launch.c b/src/weston-launch.c
+index 76dcede..7d7b556 100644
+--- a/src/weston-launch.c
++++ b/src/weston-launch.c
+@@ -631,9 +631,13 @@ main(int argc, char *argv[])
+ }
+
+ if (setgid(wl.pw->pw_gid) < 0 ||
++#ifdef HAVE_INITGROUPS
++ initgroups(wl.pw->pw_name, wl.pw->pw_gid) < 0 ||
++#endif
+ setuid(wl.pw->pw_uid) < 0)
+ error(1, errno, "dropping privilidges failed");
+
++
+ if (sleep_fork) {
+ if (wl.verbose)
+ printf("weston-launch: waiting %d seconds\n", sleep_fork);
+--
+1.8.3
--- /dev/null
+Install the examples so we can package them.
+
+Upstream-Status: Pending
+Signed-off-by: Ross Burton <ross.burton@intel.com>
+
+diff --git a/clients/Makefile.am b/clients/Makefile.am
+index 621c7c3..749ef20 100644
+--- a/clients/Makefile.am
++++ b/clients/Makefile.am
+@@ -2,7 +2,7 @@ bin_PROGRAMS = \
+ weston-info \
+ $(terminal)
+
+-noinst_PROGRAMS = \
++bin_PROGRAMS += \
+ $(clients_programs) \
+ $(poppler_programs) \
+ $(simple_clients_programs) \
--- /dev/null
+Upstream-Status: Backport
+Signed-off-by: Ross Burton <ross.burton@intel.com>
+
+From ff3230952a68077669e0ea0ac3ceb234273556fc Mon Sep 17 00:00:00 2001
+From: Quentin Glidic <sardemff7+git@sardemff7.net>
+Date: Fri, 17 May 2013 16:20:37 +0200
+Subject: [PATCH] weston-launch: Run weston in the user login shell
+
+This patch brings back the user environment from the shell.
+In the future, weston-launch could create the Wayland socket earlier, in
+which case the user's shell could be used to run Wayland-specific tools
+in the new Weston session.
+
+Signed-off-by: Quentin Glidic <sardemff7+git@sardemff7.net>
+---
+ src/weston-launch.c | 19 ++++++++++++++++---
+ 1 file changed, 16 insertions(+), 3 deletions(-)
+
+diff --git a/src/weston-launch.c b/src/weston-launch.c
+index 64d4a8a..89c3c5a 100644
+--- a/src/weston-launch.c
++++ b/src/weston-launch.c
+@@ -60,6 +60,8 @@
+
+ #include "weston-launch.h"
+
++#define MAX_ARGV_SIZE 256
++
+ struct weston_launch {
+ struct pam_conv pc;
+ pam_handle_t *ph;
+@@ -523,8 +525,9 @@ main(int argc, char *argv[])
+ struct weston_launch wl;
+ char **env;
+ int i, c;
+- char **child_argv;
++ char *child_argv[MAX_ARGV_SIZE];
+ char *tty = NULL, *new_user = NULL;
++ char *term;
+ int sleep_fork = 0;
+ struct option opts[] = {
+ { "user", required_argument, NULL, 'u' },
+@@ -562,8 +565,8 @@ main(int argc, char *argv[])
+ }
+ }
+
+- child_argv = &argv[optind-1];
+- child_argv[0] = BINDIR "/weston";
++ if ((argc - optind) > (MAX_ARGV_SIZE - 5))
++ error(1, E2BIG, "Too many arguments to pass to weston");
+
+ if (new_user)
+ wl.pw = getpwnam(new_user);
+@@ -572,7 +575,17 @@ main(int argc, char *argv[])
+ if (wl.pw == NULL)
+ error(1, errno, "failed to get username");
+
++ child_argv[0] = wl.pw->pw_shell;
++ child_argv[1] = "-l";
++ child_argv[2] = "-c";
++ child_argv[3] = BINDIR "/weston \"$@\"";
++ child_argv[4] = "weston";
++ for (i = 0; i < (argc - optind); ++i)
++ child_argv[5+i] = argv[optind+i];
++
++ term = getenv("TERM");
+ clearenv();
++ setenv("TERM", term, 1);
+ setenv("USER", wl.pw->pw_name, 1);
+ setenv("LOGNAME", wl.pw->pw_name, 1);
+ setenv("HOME", wl.pw->pw_dir, 1);
+--
+1.7.10.4
+
--- /dev/null
+[Desktop Entry]
+Encoding=UTF-8
+Type=Application
+Name=Weston
+Comment=Wayland Compostitor
+Exec=weston
+Icon=weston
+Terminal=false
+Categories=Utility;
--- /dev/null
+SUMMARY = "Weston, a Wayland compositor"\r
+DESCRIPTION = "Weston is the reference implementation of a Wayland compositor"\r
+HOMEPAGE = "http://wayland.freedesktop.org"\r
+LICENSE = "MIT"\r
+LIC_FILES_CHKSUM = "file://COPYING;md5=275efac2559a224527bd4fd593d38466 \\r
+ file://src/compositor.c;endline=23;md5=aa98a8db03480fe7d500d0b1f4b8850c"\r
+\r
+SRC_URI = "http://wayland.freedesktop.org/releases/${BPN}-${PV}.tar.xz \\r
+ file://install-examples.patch \\r
+ file://weston.png \\r
+ file://weston.desktop"\r
+SRC_URI[md5sum] = "86f8c9e865923e138ce44ee41d951500"\r
+SRC_URI[sha256sum] = "122e12ae8e4ec4618780465c0cc31d70d67054900a2aac458f82ed6eb5d397b7"\r
+\r
+\r
+inherit autotools pkgconfig useradd\r
+\r
+DEPENDS = "libxkbcommon gdk-pixbuf pixman cairo glib-2.0 jpeg"\r
+DEPENDS += "wayland mesa virtual/egl pango"\r
+\r
+EXTRA_OECONF = "--disable-android-compositor \\r
+ --enable-setuid-install \\r
+ --disable-tablet-shell \\r
+ --disable-xwayland \\r
+ --enable-simple-clients \\r
+ --enable-clients \\r
+ --disable-simple-egl-clients \\r
+ --disable-libunwind \\r
+ --disable-rpi-compositor \\r
+ --disable-rdp-compositor"\r
+\r
+\r
+PACKAGECONFIG ??= "${@base_contains('DISTRO_FEATURES', 'wayland', 'kms wayland', '', d)} \\r
+ ${@base_contains('DISTRO_FEATURES', 'x11', 'x11', '', d)} \\r
+ ${@base_contains('DISTRO_FEATURES', 'opengles2', 'gles', '', d)} \\r
+ "\r
+#\r
+# Compositor choices\r
+#\r
+# Weston on KMS\r
+PACKAGECONFIG[kms] = "--enable-drm-compositor --enable-weston-launch,--disable-drm-compositor --disable-weston-launch,drm udev mesa mtdev libpam"\r
+# Weston on Wayland (nested Weston)\r
+PACKAGECONFIG[wayland] = "--enable-wayland-compositor,--disable-wayland-compositor,mesa"\r
+# Weston on X11\r
+PACKAGECONFIG[x11] = "--enable-x11-compositor,--disable-x11-compositor,virtual/libx11 libxcb libxcb libxcursor cairo"\r
+# Headless Weston\r
+PACKAGECONFIG[headless] = "--enable-headless-compositor,--disable-headless-compositor"\r
+# Weston on framebuffer\r
+PACKAGECONFIG[fbdev] = "--enable-fbdev-compositor,--disable-fbdev-compositor,udev mtdev"\r
+\r
+# Use cairo-gl or cairo-glesv2\r
+PACKAGECONFIG[gles] = "--with-cairo-glesv2,,virtual/libgles2"\r
+\r
+do_install_append() {\r
+ # Weston doesn't need the .la files to load modules, so wipe them\r
+ rm -f ${D}/${libdir}/weston/*.la\r
+\r
+ for feature in ${DISTRO_FEATURES}; do\r
+ # If X11, ship a desktop file to launch it\r
+ if [ "$feature" = "x11" ]; then\r
+ install -d ${D}${datadir}/applications\r
+ install ${WORKDIR}/weston.desktop ${D}${datadir}/applications\r
+\r
+ install -d ${D}${datadir}/icons/hicolor/48x48/apps\r
+ install ${WORKDIR}/weston.png ${D}${datadir}/icons/hicolor/48x48/apps\r
+ fi\r
+ done\r
+}\r
+\r
+PACKAGES += "${PN}-examples"\r
+\r
+FILES_${PN} = "${bindir}/weston* ${bindir}/wcap-decode ${libexecdir} ${datadir}"\r
+FILES_${PN}-examples = "${bindir}/*"\r
+\r
+RDEPENDS_${PN} += "xkeyboard-config"\r
+RRECOMMENDS_${PN} = "liberation-fonts"\r
+\r
+USERADD_PACKAGES = "${PN}"\r
+GROUPADD_PARAM_${PN} = "--system weston-launch"\r
-#require core-image-weston
+#require git
DESCRIPTION = "Image with Sato, a mobile environment and visual style for \
mobile devices. The image supports X11 with a Sato theme, Pimlico \
inherit core-image
-
IMAGE_INSTALL += "packagegroup-wrt"