Build package with profile specific configuration 81/30381/1 submit/tizen/20141117.125926
authorImran Zaman <imran.zaman@intel.com>
Mon, 17 Nov 2014 12:52:11 +0000 (14:52 +0200)
committerImran Zaman <imran.zaman@intel.com>
Mon, 17 Nov 2014 12:52:11 +0000 (14:52 +0200)
Change-Id: I8906155972d17fb860d15f839fdc6a0fef63c0b4
Signed-off-by: Imran Zaman <imran.zaman@intel.com>
13 files changed:
data/Makefile.am
data/Makefile.in
data/multi-seat/etc/session.d/user-session [deleted file]
data/tizen-common/etc/session.d/display-session [new file with mode: 0755]
data/tizen-common/etc/session.d/user-session [new file with mode: 0755]
data/tizen-common/etc/tlm.conf [new file with mode: 0644]
data/tizen-ivi/etc/session.d/genivi-session [moved from data/multi-seat/etc/session.d/genivi-session with 100% similarity]
data/tizen-ivi/etc/session.d/user-session [new file with mode: 0755]
data/tizen-ivi/etc/session.d/user-session.ivi [new file with mode: 0755]
data/tizen-ivi/etc/tlm.conf [moved from data/multi-seat/etc/tlm.conf with 100% similarity]
dists/rpm/tizen/packaging/tlm.spec
packaging/tlm.spec
src/sessiond/tlm-session.c

index 6b1df41..f7a9076 100644 (file)
@@ -6,6 +6,7 @@ EXTRA_DIST = \
       tlm-login \
       tlm-default-login \
       tlm-system-login \
-      multi-seat
+      tizen-common \
+      tizen-ivi
 
 sysconf_DATA = tlm.conf
index 1ac3ea8..e78dd42 100644 (file)
@@ -291,7 +291,8 @@ EXTRA_DIST = \
       tlm-login \
       tlm-default-login \
       tlm-system-login \
-      multi-seat
+      tizen-common \
+      tizen-ivi
 
 sysconf_DATA = tlm.conf
 all: all-am
diff --git a/data/multi-seat/etc/session.d/user-session b/data/multi-seat/etc/session.d/user-session
deleted file mode 100755 (executable)
index 0a0ba41..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-#!/bin/sh
-#
-export WAYLAND_CLIENT_DIR=/tmp
-#export XDG_SEAT=seat0
-weston --backend=wayland-backend.so --log=/tmp/user-weston.log --width=960 --height=1080
-#weston-terminal
diff --git a/data/tizen-common/etc/session.d/display-session b/data/tizen-common/etc/session.d/display-session
new file mode 100755 (executable)
index 0000000..9586ee4
--- /dev/null
@@ -0,0 +1,4 @@
+#!/bin/sh
+#
+export XDG_RUNTIME_DIR=/run/display
+/bin/sh -c 'backend=drm ; [ -d /dev/dri ] || backend=fbdev ; exec /usr/bin/weston --backend=$backend-backend.so -i0 --log=/run/display/weston.log
diff --git a/data/tizen-common/etc/session.d/user-session b/data/tizen-common/etc/session.d/user-session
new file mode 100755 (executable)
index 0000000..5f3f150
--- /dev/null
@@ -0,0 +1,5 @@
+#!/bin/sh
+#
+export XDG_RUNTIME_DIR=/run/display
+/usr/bin/ln -sf /run/display/wayland-0 /run/user/$UID/
+/bin/sh -l -c "/usr/bin/tz-launcher -c /usr/share/applications/tizen/launcher.conf $HOME/.applications/desktop"
diff --git a/data/tizen-common/etc/tlm.conf b/data/tizen-common/etc/tlm.conf
new file mode 100644 (file)
index 0000000..bb27e5f
--- /dev/null
@@ -0,0 +1,88 @@
+#
+# Example configuration for tlm.
+#
+
+#
+# This group contains top-level settings.
+#
+[General]
+#
+# Name of the account plugin to use to manage(add/remove) guest user accounts
+ACCOUNTS_PLUGIN=gumd
+#
+# Auto-login default user
+# Default: off
+AUTO_LOGIN=1
+#
+# Prepare default/guest users before auto-login
+# Default: off
+# PREPARE_DEFAULT=1
+#
+# PAM service file to use
+PAM_SERVICE=tlm-login
+#
+# PAM service file for default user
+DEFAULT_PAM_SERVICE=tlm-default-login
+#
+# Default (guest) username or template to use
+#  %S - seat number
+#  %I - seat id string
+# Default: "guest"
+DEFAULT_USER=guest_%S
+#
+# Session command : The command run after successfull login
+# Default: $SHELL
+# In case shell is not defined in /etc/passwd fallback is "systemd --user"
+#SESSION_CMD=systemd --user
+#
+# Session termination timeout in seconds
+# Default: 10
+#TERMINATE_TIMEOUT=10
+#
+# Setup terminal for session
+# Default: off
+#SETUP_TERMINAL=1
+#
+# Use X11 style sessions
+# Default: off
+#X11_SESSION=1
+#
+# Do not launch anything, let systemd handle it through PAM
+# Default: off
+#PAUSE_SESSION=1
+#
+# Specify session type
+# Default: unspecified
+#SESSION_TYPE=wayland
+#
+NSEATS=2
+#
+#
+# Seat specific settings where the group name is seat id
+[seat0]
+DEFAULT_USER=display
+SETUP_TERMINAL=1
+VTNR=7
+SESSION_CMD=/etc/session.d/display-session
+#SESSION_CMD=bash
+#SESSION_CMD=weston
+DEFAULT_PAM_SERVICE=tlm-system-login
+SETUP_RUNTIME_DIR=1
+#RUNTIME_MODE=0755
+#
+[seat1]
+DEFAULT_USER=alice
+SESSION_CMD=/etc/session.d/user-session
+#DEFAULT_PAM_SERVICE=tlm-system-login
+#SETUP_RUNTIME_DIR=1
+#ACTIVE=0
+#DEFAULT_USER=guest_%S
+NWATCH=1
+WATCH0=/tmp/wayland-0.lock
+#
+#
+# plugin specific settings.
+#
+#[pluginname]
+#
+
diff --git a/data/tizen-ivi/etc/session.d/user-session b/data/tizen-ivi/etc/session.d/user-session
new file mode 100755 (executable)
index 0000000..e030e44
--- /dev/null
@@ -0,0 +1,6 @@
+#!/bin/sh
+#
+export DBUS_SESSION_BUS_ADDRESS=unix:path=$XDG_RUNTIME_DIR/dbus/user_bus_socket
+export WAYLAND_CLIENT_DIR=/tmp
+weston --log=$XDG_RUNTIME_DIR/weston.log --backend=wayland-backend.so --width=960 --height=1080
+#weston-terminal
diff --git a/data/tizen-ivi/etc/session.d/user-session.ivi b/data/tizen-ivi/etc/session.d/user-session.ivi
new file mode 100755 (executable)
index 0000000..7b4d2f6
--- /dev/null
@@ -0,0 +1,6 @@
+#!/bin/sh
+#
+export DBUS_SESSION_BUS_ADDRESS=unix:path=$XDG_RUNTIME_DIR/dbus/user_bus_socket
+export WAYLAND_CLIENT_DIR=/tmp
+weston --log=$XDG_RUNTIME_DIR/weston.log --backend=wayland-backend.so --width=960 --height=1080 &
+xwalk-launcher Modello005.Homescreen
index c97eb99..6b08f64 100644 (file)
@@ -1,6 +1,16 @@
 # enable debug features such as control environment variables
 # WARNING! do not use for production builds as it will break security
 %define debug_build 0
+%define efl 0
+
+%if %{debug_build} == 1
+%define extra_config_options1 --enable-gtk-doc --enable-debug
+%endif
+
+%if %{efl} == 1
+%define extra_config_options1 --enable-examples
+%endif
+
 
 Name: tlm
 Summary: Login manager for Tizen
@@ -21,11 +31,13 @@ BuildRequires: pkgconfig(gio-2.0)
 BuildRequires: pkgconfig(gio-unix-2.0)
 BuildRequires: pkgconfig(gmodule-2.0)
 BuildRequires: pkgconfig(libgum)
-BuildRequires: pkgconfig(elementary)
 BuildRequires: pam-devel
 %if %{debug_build} == 1
 BuildRequires: gtk-doc
 %endif
+%if %{efl} == 1
+BuildRequires: pkgconfig(elementary)
+%endif
 
 
 %description
@@ -60,10 +72,10 @@ cp %{SOURCE1001} .
 %build
 %if %{debug_build} == 1
 ./autogen.sh
-%configure --enable-gum --enable-gtk-doc --enable-examples --enable-debug
-%else
-%configure --enable-gum --enable-examples
 %endif
+%reconfigure --enable-gum \
+             %{?extra_config_options1:%extra_config_options1} \
+             %{?extra_config_options2:%extra_config_options2}
 make %{?_smp_mflags}
 
 
@@ -76,9 +88,15 @@ install -m 755 -d %{buildroot}%{_sysconfdir}/pam.d
 install -m 644 data/tlm-login %{buildroot}%{_sysconfdir}/pam.d/
 install -m 644 data/tlm-default-login %{buildroot}%{_sysconfdir}/pam.d/
 install -m 644 data/tlm-system-login %{buildroot}%{_sysconfdir}/pam.d/
-install -m 644 data/multi-seat/etc/tlm.conf %{buildroot}%{_sysconfdir}
 install -m 755 -d %{buildroot}%{_sysconfdir}/session.d
-install -m 755 data/multi-seat/etc/session.d/* %{buildroot}%{_sysconfdir}/session.d/
+%if "%{profile}" == "common"
+install -m 644 data/tizen-common/etc/tlm.conf %{buildroot}%{_sysconfdir}
+install -m 755 data/tizen-common/etc/session.d/* %{buildroot}%{_sysconfdir}/session.d/
+%endif
+%if "%{profile}" == "ivi"
+install -m 644 data/tizen-ivi/etc/tlm.conf %{buildroot}%{_sysconfdir}
+install -m 755 data/tizen-ivi/etc/session.d/* %{buildroot}%{_sysconfdir}/session.d/
+%endif
 
 
 %post
@@ -116,7 +134,9 @@ install -m 755 data/multi-seat/etc/session.d/* %{buildroot}%{_sysconfdir}/sessio
 %{_includedir}/%{name}/*.h
 %{_libdir}/lib%{name}*.so
 %{_libdir}/pkgconfig/%{name}.pc
+%if %{efl} == 1
 %{_bindir}/tlm-ui
+%endif
 
 
 %files doc
index 13138b1..6b08f64 100644 (file)
@@ -70,6 +70,9 @@ cp %{SOURCE1001} .
 
 
 %build
+%if %{debug_build} == 1
+./autogen.sh
+%endif
 %reconfigure --enable-gum \
              %{?extra_config_options1:%extra_config_options1} \
              %{?extra_config_options2:%extra_config_options2}
@@ -85,9 +88,15 @@ install -m 755 -d %{buildroot}%{_sysconfdir}/pam.d
 install -m 644 data/tlm-login %{buildroot}%{_sysconfdir}/pam.d/
 install -m 644 data/tlm-default-login %{buildroot}%{_sysconfdir}/pam.d/
 install -m 644 data/tlm-system-login %{buildroot}%{_sysconfdir}/pam.d/
-install -m 644 data/multi-seat/etc/tlm.conf %{buildroot}%{_sysconfdir}
 install -m 755 -d %{buildroot}%{_sysconfdir}/session.d
-install -m 755 data/multi-seat/etc/session.d/* %{buildroot}%{_sysconfdir}/session.d/
+%if "%{profile}" == "common"
+install -m 644 data/tizen-common/etc/tlm.conf %{buildroot}%{_sysconfdir}
+install -m 755 data/tizen-common/etc/session.d/* %{buildroot}%{_sysconfdir}/session.d/
+%endif
+%if "%{profile}" == "ivi"
+install -m 644 data/tizen-ivi/etc/tlm.conf %{buildroot}%{_sysconfdir}
+install -m 755 data/tizen-ivi/etc/session.d/* %{buildroot}%{_sysconfdir}/session.d/
+%endif
 
 
 %post
index 539e65e..137f33e 100644 (file)
@@ -436,7 +436,12 @@ _set_environment (TlmSessionPrivate *priv)
     if (home_dir) _setenv_to_session ("HOME", home_dir, priv);
     shell = tlm_user_get_shell (priv->username);
     if (shell) _setenv_to_session ("SHELL", shell, priv);
-    //if (priv->seat_id) _setenv_to_session ("XDG_SEAT", priv->seat_id, priv);
+
+    // seat is not set for fake seats
+    if (!tlm_config_has_key (priv->config,
+                            TLM_CONFIG_GENERAL,
+                            TLM_CONFIG_GENERAL_NSEATS))
+        _setenv_to_session ("XDG_SEAT", priv->seat_id, priv);
 
     const gchar *xdg_data_dirs =
         tlm_config_get_string (priv->config,