diff options
author | kwm <kwm@FreeBSD.org> | 2017-08-05 18:58:48 +0800 |
---|---|---|
committer | kwm <kwm@FreeBSD.org> | 2017-08-05 18:58:48 +0800 |
commit | a18ea53024c58d04da2d68c995d114cabfeadd7a (patch) | |
tree | 5237d3d5922af476695ecaa49d7957cf8cd37191 /sysutils | |
parent | 3b3fa9ef018c84491992d0b544a00d17766d1203 (diff) | |
download | freebsd-ports-gnome-a18ea53024c58d04da2d68c995d114cabfeadd7a.tar.gz freebsd-ports-gnome-a18ea53024c58d04da2d68c995d114cabfeadd7a.tar.zst freebsd-ports-gnome-a18ea53024c58d04da2d68c995d114cabfeadd7a.zip |
Update consolekit to 1.2.0.
* Rename consolekit to consolekit2 to reflect that consolekit2 is a new
project, even if it the continuation of the old consolekit project.
* Expand pkg-descr with some background info.
* Add license
* ConsoleKit2 has been ported to GDbus, so dbus-glib is not anymore required
* Add GObject introspection support for desktops environment such Pantheon or Deepin.
* Thanks to Jesper Schmitz Mouridsen, Ben Woods and Olivier Duchateau for
assisting with there versions of the port, suggesting changes and testing.
PR: 202269
Diffstat (limited to 'sysutils')
19 files changed, 97 insertions, 846 deletions
diff --git a/sysutils/consolekit/Makefile b/sysutils/consolekit/Makefile deleted file mode 100644 index de5abfdc2f15..000000000000 --- a/sysutils/consolekit/Makefile +++ /dev/null @@ -1,37 +0,0 @@ -# Created by: FreeBSD GNOME Team <gnome@freebsd.org> -# $FreeBSD$ - -PORTNAME= consolekit -PORTVERSION= 0.4.5 -PORTREVISION= 4 -CATEGORIES= sysutils gnome -MASTER_SITES= http://www.freedesktop.org/software/ConsoleKit/dist/ -DISTFILES= ConsoleKit-${PORTVERSION}${EXTRACT_SUFX} - -MAINTAINER= gnome@FreeBSD.org -COMMENT= Framework for defining and tracking users - -LIB_DEPENDS= libdbus-glib-1.so:devel/dbus-glib \ - libpolkit-gobject-1.so:sysutils/polkit - -WRKSRC= ${WRKDIR}/ConsoleKit-${PORTVERSION} -USES= gettext gmake libtool pathfix pkgconfig tar:bzip2 -USE_XORG= x11 -GNU_CONFIGURE= yes -USE_LDCONFIG= yes -CPPFLAGS+= -I${LOCALBASE}/include -LDFLAGS+= -L${LOCALBASE}/lib -CONFIGURE_ARGS= --with-pid-file=/var/run/${PORTNAME}.pid \ - --enable-pam-module \ - --with-pam-module-dir=${PREFIX}/lib \ - --localstatedir=/var -INSTALL_TARGET= install-strip - -post-install: - ${INSTALL_SCRIPT} ${FILESDIR}/ck-get-x11-display-device \ - ${STAGEDIR}${PREFIX}/libexec/ck-get-x11-display-device - ${INSTALL_SCRIPT} ${FILESDIR}/ck-get-x11-server-pid \ - ${STAGEDIR}${PREFIX}/libexec/ck-get-x11-server-pid - @${MKDIR} ${STAGEDIR}/var/log/ConsoleKit - -.include <bsd.port.mk> diff --git a/sysutils/consolekit/distinfo b/sysutils/consolekit/distinfo deleted file mode 100644 index a462e08e6cfc..000000000000 --- a/sysutils/consolekit/distinfo +++ /dev/null @@ -1,2 +0,0 @@ -SHA256 (ConsoleKit-0.4.5.tar.bz2) = 43e0780c53078e125efcec3f847e484dc3533e49b408ce6a0ab1b223686b9c38 -SIZE (ConsoleKit-0.4.5.tar.bz2) = 425423 diff --git a/sysutils/consolekit/files/ck-get-x11-display-device b/sysutils/consolekit/files/ck-get-x11-display-device deleted file mode 100644 index ccfc78c69b7c..000000000000 --- a/sysutils/consolekit/files/ck-get-x11-display-device +++ /dev/null @@ -1,46 +0,0 @@ -#!/bin/sh - -FSTAT="/usr/bin/fstat" -GREP="/usr/bin/grep" -AWK="/usr/bin/awk" -SED="/usr/bin/sed" -CAT="/bin/cat" - -dispnum=0 -if [ x"$1" = x"--display" ]; then - if [ $# != 2 ]; then - echo "usage: $0 [--display DISPLAY]" - exit 1 - fi - DISPLAY=$2 -fi -if [ ! -z "${DISPLAY}" ]; then - dispnum=$(echo ${DISPLAY} | ${SED} -E -e 's|:([0-9]+).*|\1|') -fi - -if [ ! -f "/tmp/.X${dispnum}-lock" ]; then - echo "ERROR: Failed to find X lock file for display ${dispnum}" - exit 1 -fi -pid=$(${CAT} "/tmp/.X${dispnum}-lock") - -device=$(${FSTAT} -p ${pid} | ${GREP} ttyv | ${AWK} '{print $8}') - -if [ -z "${device}" -a -f "/var/log/Xorg.$dispnum.log" ]; then - device=$(awk '/using VT number/ { print "ttyv" ($7 - 1); }' \ - "/var/log/Xorg.$dispnum.log") -fi - -if [ -z "${device}" ]; then - echo "ERROR: Failed to find TTY device for X server on display ${dispnum}" - exit 1 -fi - -ret="" -for dev in ${device}; do - if [ "${dev}" \> "${ret}" ]; then - ret=${dev} - fi -done - -echo "/dev/${dev}" diff --git a/sysutils/consolekit/files/ck-get-x11-server-pid b/sysutils/consolekit/files/ck-get-x11-server-pid deleted file mode 100644 index 05c433e0175e..000000000000 --- a/sysutils/consolekit/files/ck-get-x11-server-pid +++ /dev/null @@ -1,17 +0,0 @@ -#!/bin/sh - -SED="/usr/bin/sed" -CAT="/bin/cat" - -dispnum=0 -if [ ! -z "${DISPLAY}" ]; then - dispnum=$(echo ${DISPLAY} | ${SED} -E -e 's|:([0-9]+).*|\1|') -fi - -if [ ! -f "/tmp/.X${dispnum}-lock" ]; then - echo "ERROR: Failed to find X lock file for display ${dispnum}" - exit 1 -fi -pid=$(${CAT} "/tmp/.X${dispnum}-lock") - -echo ${pid} diff --git a/sysutils/consolekit/files/patch-src_ck-manager.c b/sysutils/consolekit/files/patch-src_ck-manager.c deleted file mode 100644 index 7be0214c7dec..000000000000 --- a/sysutils/consolekit/files/patch-src_ck-manager.c +++ /dev/null @@ -1,186 +0,0 @@ -$OpenBSD: patch-src_ck-manager_c,v 1.3 2011/04/28 13:08:33 ajacoutot Exp $ - -XXX revert 4f88228f31a63c026c424a92827f26ad7535275c -The Kit people assume the world runs Linux and PAM, see -https://bugs.freedesktop.org/show_bug.cgi?id=28377 - ---- src/ck-manager.c.orig Tue Oct 26 16:34:03 2010 -+++ src/ck-manager.c Sat Dec 4 12:18:29 2010 -@@ -1659,175 +1659,13 @@ open_session_for_leader (CkManager *manage - dbus_g_method_return (context, cookie); - } - --enum { -- PROP_STRING, -- PROP_BOOLEAN, --}; -- --#define CK_TYPE_PARAMETER_STRUCT (dbus_g_type_get_struct ("GValueArray", \ -- G_TYPE_STRING, \ -- G_TYPE_VALUE, \ -- G_TYPE_INVALID)) -- --static gboolean --_get_parameter (GPtrArray *parameters, -- const char *name, -- int prop_type, -- gpointer *value) --{ -- gboolean ret; -- int i; -- -- if (parameters == NULL) { -- return FALSE; -- } -- -- ret = FALSE; -- -- for (i = 0; i < parameters->len && ret == FALSE; i++) { -- gboolean res; -- GValue val_struct = { 0, }; -- char *prop_name; -- GValue *prop_val; -- -- g_value_init (&val_struct, CK_TYPE_PARAMETER_STRUCT); -- g_value_set_static_boxed (&val_struct, g_ptr_array_index (parameters, i)); -- -- res = dbus_g_type_struct_get (&val_struct, -- 0, &prop_name, -- 1, &prop_val, -- G_MAXUINT); -- if (! res) { -- g_debug ("Unable to extract parameter input"); -- goto cont; -- } -- -- if (prop_name == NULL) { -- g_debug ("Skipping NULL parameter"); -- goto cont; -- } -- -- if (strcmp (prop_name, name) != 0) { -- goto cont; -- } -- -- switch (prop_type) { -- case PROP_STRING: -- if (value != NULL) { -- *value = g_value_dup_string (prop_val); -- } -- break; -- case PROP_BOOLEAN: -- if (value != NULL) { -- *(gboolean *)value = g_value_get_boolean (prop_val); -- } -- break; -- default: -- g_assert_not_reached (); -- break; -- } -- -- ret = TRUE; -- -- cont: -- g_free (prop_name); -- if (prop_val != NULL) { -- g_value_unset (prop_val); -- g_free (prop_val); -- } -- } -- -- return ret; --} -- --static gboolean --_verify_login_session_id_is_local (CkManager *manager, -- const char *login_session_id) --{ -- GHashTableIter iter; -- const char *id; -- CkSession *session; -- -- g_return_val_if_fail (CK_IS_MANAGER (manager), FALSE); -- -- /* If any local session exists for the given login session id -- then that means a trusted party has vouched for the -- original login */ -- -- g_debug ("Looking for local sessions for login-session-id=%s", login_session_id); -- -- session = NULL; -- g_hash_table_iter_init (&iter, manager->priv->sessions); -- while (g_hash_table_iter_next (&iter, (gpointer *)&id, (gpointer *)&session)) { -- if (session != NULL) { -- gboolean is_local; -- char *sessid; -- -- sessid = NULL; -- g_object_get (session, -- "login-session-id", &sessid, -- "is-local", &is_local, -- NULL); -- if (g_strcmp0 (sessid, login_session_id) == 0 && is_local) { -- g_debug ("CkManager: found is-local=true on %s", id); -- return TRUE; -- } -- } -- } -- -- return FALSE; --} -- - static void --add_param_boolean (GPtrArray *parameters, -- const char *key, -- gboolean value) --{ -- GValue val = { 0, }; -- GValue param_val = { 0, }; -- -- g_value_init (&val, G_TYPE_BOOLEAN); -- g_value_set_boolean (&val, value); -- g_value_init (¶m_val, CK_TYPE_PARAMETER_STRUCT); -- g_value_take_boxed (¶m_val, -- dbus_g_type_specialized_construct (CK_TYPE_PARAMETER_STRUCT)); -- dbus_g_type_struct_set (¶m_val, -- 0, key, -- 1, &val, -- G_MAXUINT); -- g_value_unset (&val); -- -- g_ptr_array_add (parameters, g_value_get_boxed (¶m_val)); --} -- --static void - verify_and_open_session_for_leader (CkManager *manager, - CkSessionLeader *leader, -- GPtrArray *parameters, -+ const GPtrArray *parameters, - DBusGMethodInvocation *context) - { -- /* Only allow a local session if originating from an existing -- local session. Effectively this means that only trusted -- parties can create local sessions. */ -- -- g_debug ("CkManager: verifying session for leader"); -- -- if (parameters != NULL && ! _get_parameter (parameters, "is-local", PROP_BOOLEAN, NULL)) { -- gboolean is_local; -- char *login_session_id; -- -- g_debug ("CkManager: is-local has not been set, will inherit from existing login-session-id if available"); -- -- is_local = FALSE; -- -- if (_get_parameter (parameters, "login-session-id", PROP_STRING, (gpointer *) &login_session_id)) { -- is_local = _verify_login_session_id_is_local (manager, login_session_id); -- g_debug ("CkManager: found is-local=%s", is_local ? "true" : "false"); -- } -- -- add_param_boolean (parameters, "is-local", is_local); -- } -- -+ /* for now don't bother verifying since we protect OpenSessionWithParameters */ - open_session_for_leader (manager, - leader, - parameters, diff --git a/sysutils/consolekit/files/patch-src_ck-sysdeps-freebsd.c b/sysutils/consolekit/files/patch-src_ck-sysdeps-freebsd.c deleted file mode 100644 index 5b85bb2eabbf..000000000000 --- a/sysutils/consolekit/files/patch-src_ck-sysdeps-freebsd.c +++ /dev/null @@ -1,208 +0,0 @@ ---- src/ck-sysdeps-freebsd.c.orig 2010-09-03 15:54:31.000000000 +0200 -+++ src/ck-sysdeps-freebsd.c 2015-03-23 09:28:20.476513000 +0100 -@@ -27,6 +27,7 @@ - #include <unistd.h> - #include <string.h> - #include <errno.h> -+#include <glob.h> - #include <paths.h> - #include <ttyent.h> - #include <kvm.h> -@@ -202,7 +203,6 @@ ck_process_stat_new_for_unix_pid (pid_t - GError **error) - { - gboolean res; -- GError *local_error; - CkProcessStat *proc; - - g_return_val_if_fail (pid > 1, FALSE); -@@ -217,7 +217,6 @@ ck_process_stat_new_for_unix_pid (pid_t - if (res) { - *stat = proc; - } else { -- g_propagate_error (error, local_error); - *stat = NULL; - } - -@@ -233,24 +232,28 @@ ck_process_stat_free (CkProcessStat *sta - GHashTable * - ck_unix_pid_get_env_hash (pid_t pid) - { -- GHashTable *hash; -+ GHashTable *hash = NULL; - char **penv; -+ char errbuf[_POSIX2_LINE_MAX]; - kvm_t *kd; - struct kinfo_proc p; - int i; - -- kd = kvm_openfiles (_PATH_DEVNULL, _PATH_DEVNULL, NULL, O_RDONLY, NULL); -+ kd = kvm_openfiles (_PATH_DEVNULL, _PATH_DEVNULL, NULL, O_RDONLY, errbuf); - if (kd == NULL) { -+ g_warning ("kvm_openfiles failed: %s", errbuf); - return NULL; - } - - if (! get_kinfo_proc (pid, &p)) { -- return NULL; -+ g_warning ("get_kinfo_proc failed: %s", g_strerror (errno)); -+ goto fail; - } - - penv = kvm_getenvv (kd, &p, 0); - if (penv == NULL) { -- return NULL; -+ g_warning ("kvm_getenvv failed: %s", kvm_geterr (kd)); -+ goto fail; - } - - hash = g_hash_table_new_full (g_str_hash, -@@ -261,6 +264,9 @@ ck_unix_pid_get_env_hash (pid_t pid) - for (i = 0; penv[i] != NULL; i++) { - char **vals; - -+ if (!penv[i][0]) -+ continue; -+ - vals = g_strsplit (penv[i], "=", 2); - if (vals != NULL) { - g_hash_table_insert (hash, -@@ -270,6 +276,7 @@ ck_unix_pid_get_env_hash (pid_t pid) - } - } - -+fail: - kvm_close (kd); - - return hash; -@@ -280,7 +287,7 @@ ck_unix_pid_get_env (pid_t pid, - const char *var) - { - GHashTable *hash; -- char *val; -+ char *val = NULL; - - /* - * Would probably be more efficient to just loop through the -@@ -288,6 +295,8 @@ ck_unix_pid_get_env (pid_t pid, - * table, but this works for now. - */ - hash = ck_unix_pid_get_env_hash (pid); -+ if (hash == NULL) -+ return val; - val = g_strdup (g_hash_table_lookup (hash, var)); - g_hash_table_destroy (hash); - -@@ -327,38 +336,38 @@ gboolean - ck_get_max_num_consoles (guint *num) - { - int max_consoles; -- int res; -- gboolean ret; -- struct ttyent *t; -+ int i; -+ glob_t g; - -- ret = FALSE; - max_consoles = 0; - -- res = setttyent (); -- if (res == 0) { -- goto done; -- } -+ g.gl_offs = 0; -+ glob ("/dev/ttyv*", GLOB_DOOFFS | GLOB_NOSORT, NULL, &g); -+ for (i = 0; i < g.gl_pathc && g.gl_pathv[i] != NULL; i++) { -+ struct stat sb; -+ char *cdev; - -- while ((t = getttyent ()) != NULL) { -- if (t->ty_status & TTY_ON && strncmp (t->ty_name, "ttyv", 4) == 0) -+ cdev = g.gl_pathv[i]; -+ if (stat (cdev, &sb) > -1 && S_ISCHR (sb.st_mode)) { - max_consoles++; -+ } else { -+ break; -+ } - } - -- /* Increment one more so that all consoles are properly counted -+ globfree (&g); -+ -+ /* -+ * Increment one more so that all consoles are properly counted - * this is arguable a bug in vt_add_watches(). - */ - max_consoles++; - -- ret = TRUE; -- -- endttyent (); -- --done: - if (num != NULL) { - *num = max_consoles; - } - -- return ret; -+ return TRUE; - } - - gboolean -@@ -375,7 +384,12 @@ ck_get_console_device_for_num (guint num - /* The device number is always one less than the VT number. */ - num--; - -- device = g_strdup_printf ("/dev/ttyv%u", num); -+ if (num < 10) -+ device = g_strdup_printf ("/dev/ttyv%i", num); -+ else if (num < 32) -+ device = g_strdup_printf ("/dev/ttyv%c", num - 10 + 'a'); -+ else -+ device = NULL; - - return device; - } -@@ -385,6 +399,7 @@ ck_get_console_num_from_device (const ch - guint *num) - { - guint n; -+ char c; - gboolean ret; - - n = 0; -@@ -394,7 +409,11 @@ ck_get_console_num_from_device (const ch - return FALSE; - } - -- if (sscanf (device, "/dev/ttyv%u", &n) == 1) { -+ if (sscanf (device, "/dev/ttyv%c", &c) == 1) { -+ if (c < 58) -+ n = c - 48; -+ else -+ n = c - 'a' + 10; - /* The VT number is always one more than the device number. */ - n++; - ret = TRUE; -@@ -414,6 +433,7 @@ ck_get_active_console_num (int consol - gboolean ret; - int res; - int active; -+ char ttyn; - - g_assert (console_fd != -1); - -@@ -426,7 +446,12 @@ ck_get_active_console_num (int consol - goto out; - } - -- g_debug ("Active VT is: %d (ttyv%d)", active, active - 1); -+ if (active - 1 < 10) -+ ttyn = active - 1 + '0'; -+ else -+ ttyn = active - 11 + 'a'; -+ -+ g_debug ("Active VT is: %d (ttyv%c)", active, ttyn); - ret = TRUE; - - out: diff --git a/sysutils/consolekit/files/patch-src_ck-sysdeps-unix.c b/sysutils/consolekit/files/patch-src_ck-sysdeps-unix.c deleted file mode 100644 index e256e9f366f4..000000000000 --- a/sysutils/consolekit/files/patch-src_ck-sysdeps-unix.c +++ /dev/null @@ -1,18 +0,0 @@ ---- src/ck-sysdeps-unix.c.orig 2008-02-06 22:59:55.000000000 -0500 -+++ src/ck-sysdeps-unix.c 2008-02-06 22:52:34.000000000 -0500 -@@ -172,6 +172,15 @@ ck_get_a_console_fd (void) - - fd = -1; - -+#ifdef __FreeBSD__ -+ /* On FreeBSD, try /dev/consolectl first as this will survive -+ * /etc/ttys initialization. */ -+ fd = open_a_console ("/dev/consolectl"); -+ if (fd >= 0) { -+ goto done; -+ } -+#endif -+ - #ifdef __sun - /* On Solaris, first try Sun VT device. */ - fd = open_a_console ("/dev/vt/active"); diff --git a/sysutils/consolekit/files/patch-src_main.c b/sysutils/consolekit/files/patch-src_main.c deleted file mode 100644 index a791db0f9149..000000000000 --- a/sysutils/consolekit/files/patch-src_main.c +++ /dev/null @@ -1,33 +0,0 @@ ---- src/main.c.orig 2007-11-08 15:05:55.000000000 -0500 -+++ src/main.c 2007-11-08 15:07:39.000000000 -0500 -@@ -226,6 +226,21 @@ sigusr1_handler (int sig) - } - - static void -+setup_termination_signals (void) -+{ -+ struct sigaction sa; -+ -+ sa.sa_handler = SIG_DFL; -+ sigemptyset (&sa.sa_mask); -+ sa.sa_flags = 0; -+ -+ sigaction (SIGTERM, &sa, NULL); -+ sigaction (SIGQUIT, &sa, NULL); -+ sigaction (SIGINT, &sa, NULL); -+ sigaction (SIGHUP, &sa, NULL); -+} -+ -+static void - setup_debug_log_signals (void) - { - struct sigaction sa; -@@ -300,6 +315,8 @@ main (int argc, - - setup_debug_log (debug); - -+ setup_termination_signals (); -+ - connection = get_system_bus (); - if (connection == NULL) { - goto out; diff --git a/sysutils/consolekit/files/patch-src_test-vt-monitor.c b/sysutils/consolekit/files/patch-src_test-vt-monitor.c deleted file mode 100644 index 6fb9740f5295..000000000000 --- a/sysutils/consolekit/files/patch-src_test-vt-monitor.c +++ /dev/null @@ -1,33 +0,0 @@ ---- src/test-vt-monitor.c.orig 2007-08-17 13:08:55.000000000 -0400 -+++ src/test-vt-monitor.c 2007-11-08 15:11:37.000000000 -0500 -@@ -31,6 +31,7 @@ - #include <pwd.h> - #include <string.h> - #include <errno.h> -+#include <signal.h> - - #include <locale.h> - -@@ -55,12 +56,22 @@ main (int argc, char **argv) - GError *error; - guint num; - gboolean res; -+ struct sigaction sa; - - if (! g_thread_supported ()) { - g_thread_init (NULL); - } - g_type_init (); - -+ sa.sa_handler = SIG_DFL; -+ sigemptyset (&sa.sa_mask); -+ sa.sa_flags = 0; -+ -+ sigaction (SIGINT, &sa, NULL); -+ sigaction (SIGTERM, &sa, NULL); -+ sigaction (SIGQUIT, &sa, NULL); -+ sigaction (SIGHUP, &sa, NULL); -+ - if (! ck_is_root_user ()) { - g_warning ("Must be run as root"); - exit (1); diff --git a/sysutils/consolekit/files/patch-tools_Makefile.in b/sysutils/consolekit/files/patch-tools_Makefile.in deleted file mode 100644 index ed58bbb7ad6d..000000000000 --- a/sysutils/consolekit/files/patch-tools_Makefile.in +++ /dev/null @@ -1,77 +0,0 @@ ---- tools/Makefile.in.orig 2010-10-23 11:29:43.000000000 +0200 -+++ tools/Makefile.in 2010-10-23 11:32:41.000000000 +0200 -@@ -43,8 +43,7 @@ sbin_PROGRAMS = ck-log-system-start$(EXE - ck-log-system-restart$(EXEEXT) ck-log-system-stop$(EXEEXT) \ - $(am__EXEEXT_1) - libexec_PROGRAMS = ck-collect-session-info$(EXEEXT) \ -- ck-get-x11-server-pid$(EXEEXT) \ -- ck-get-x11-display-device$(EXEEXT) $(am__EXEEXT_1) -+ $(am__EXEEXT_1) - subdir = tools - DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in - ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -@@ -71,17 +70,6 @@ ck_collect_session_info_DEPENDENCIES = $ - AM_V_lt = $(am__v_lt_$(V)) - am__v_lt_ = $(am__v_lt_$(AM_DEFAULT_VERBOSITY)) - am__v_lt_0 = --silent --am_ck_get_x11_display_device_OBJECTS = \ -- ck-get-x11-display-device.$(OBJEXT) $(am__objects_1) --ck_get_x11_display_device_OBJECTS = \ -- $(am_ck_get_x11_display_device_OBJECTS) --ck_get_x11_display_device_DEPENDENCIES = $(am__DEPENDENCIES_1) \ -- $(top_builddir)/src/libck.la $(am__DEPENDENCIES_1) --am_ck_get_x11_server_pid_OBJECTS = ck-get-x11-server-pid.$(OBJEXT) \ -- $(am__objects_1) --ck_get_x11_server_pid_OBJECTS = $(am_ck_get_x11_server_pid_OBJECTS) --ck_get_x11_server_pid_DEPENDENCIES = $(am__DEPENDENCIES_1) \ -- $(top_builddir)/src/libck.la $(am__DEPENDENCIES_1) - am_ck_history_OBJECTS = ck-history.$(OBJEXT) $(am__objects_1) - ck_history_OBJECTS = $(am_ck_history_OBJECTS) - ck_history_DEPENDENCIES = $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ -@@ -441,24 +429,6 @@ ck_collect_session_info_LDADD = \ - $(top_builddir)/src/libck.la \ - $(NULL) - --ck_get_x11_server_pid_SOURCES = \ -- ck-get-x11-server-pid.c \ -- $(NULL) -- --ck_get_x11_server_pid_LDADD = \ -- $(TOOLS_LIBS) \ -- $(top_builddir)/src/libck.la \ -- $(NULL) -- --ck_get_x11_display_device_SOURCES = \ -- ck-get-x11-display-device.c \ -- $(NULL) -- --ck_get_x11_display_device_LDADD = \ -- $(TOOLS_LIBS) \ -- $(top_builddir)/src/libck.la \ -- $(NULL) -- - EXTRA_DIST = \ - $(NULL) - -@@ -632,12 +602,6 @@ clean-sbinPROGRAMS: - ck-collect-session-info$(EXEEXT): $(ck_collect_session_info_OBJECTS) $(ck_collect_session_info_DEPENDENCIES) - @rm -f ck-collect-session-info$(EXEEXT) - $(AM_V_CCLD)$(LINK) $(ck_collect_session_info_OBJECTS) $(ck_collect_session_info_LDADD) $(LIBS) --ck-get-x11-display-device$(EXEEXT): $(ck_get_x11_display_device_OBJECTS) $(ck_get_x11_display_device_DEPENDENCIES) -- @rm -f ck-get-x11-display-device$(EXEEXT) -- $(AM_V_CCLD)$(LINK) $(ck_get_x11_display_device_OBJECTS) $(ck_get_x11_display_device_LDADD) $(LIBS) --ck-get-x11-server-pid$(EXEEXT): $(ck_get_x11_server_pid_OBJECTS) $(ck_get_x11_server_pid_DEPENDENCIES) -- @rm -f ck-get-x11-server-pid$(EXEEXT) -- $(AM_V_CCLD)$(LINK) $(ck_get_x11_server_pid_OBJECTS) $(ck_get_x11_server_pid_LDADD) $(LIBS) - ck-history$(EXEEXT): $(ck_history_OBJECTS) $(ck_history_DEPENDENCIES) - @rm -f ck-history$(EXEEXT) - $(AM_V_CCLD)$(LINK) $(ck_history_OBJECTS) $(ck_history_LDADD) $(LIBS) -@@ -664,8 +628,6 @@ distclean-compile: - -rm -f *.tab.c - - @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ck-collect-session-info.Po@am__quote@ --@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ck-get-x11-display-device.Po@am__quote@ --@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ck-get-x11-server-pid.Po@am__quote@ - @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ck-history.Po@am__quote@ - @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ck-launch-session.Po@am__quote@ - @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ck-log-system-restart.Po@am__quote@ diff --git a/sysutils/consolekit/files/patch-tools_ck-collect-session-info.c b/sysutils/consolekit/files/patch-tools_ck-collect-session-info.c deleted file mode 100644 index 6ec8b5ff4d7e..000000000000 --- a/sysutils/consolekit/files/patch-tools_ck-collect-session-info.c +++ /dev/null @@ -1,92 +0,0 @@ -$OpenBSD: patch-tools_ck-collect-session-info_c,v 1.1 2011/04/28 13:08:33 ajacoutot Exp $ - -XXX revert 4f88228f31a63c026c424a92827f26ad7535275c -The Kit people assume the world runs Linux and PAM, see -https://bugs.freedesktop.org/show_bug.cgi?id=28377 ---- tools/ck-collect-session-info.c.orig 2013-08-10 20:47:52.000000000 +0200 -+++ tools/ck-collect-session-info.c 2013-08-10 20:47:33.000000000 +0200 -@@ -226,6 +226,12 @@ fill_x11_info (SessionInfo *si) - gboolean res; - CkProcessStat *xorg_stat; - GError *error; -+ char *err; -+ char *out; -+ int status; -+ int i; -+ char *argv[4]; -+ GPtrArray *env; - - /* assume this is true then check it */ - si->x11_display = ck_unix_pid_get_env (si->pid, "DISPLAY"); -@@ -272,9 +278,56 @@ fill_x11_info (SessionInfo *si) - } - - si->x11_display_device = ck_process_stat_get_tty (xorg_stat); -+ if (g_strcmp0 (si->x11_display_device, si->display_device) != 0) { -+ goto gotit; -+ } -+ -+ g_free (si->x11_display_device); -+ -+ /* get the applicable environment */ -+ env = get_filtered_environment (si->pid); -+ -+ argv[0] = LIBEXECDIR "/ck-get-x11-display-device"; -+ argv[1] = NULL; -+ -+ error = NULL; -+ out = NULL; -+ err = NULL; -+ status = -1; -+ res = g_spawn_sync (NULL, -+ argv, -+ (char **)env->pdata, -+ 0, -+ (GSpawnChildSetupFunc)setuid_child_setup_func, -+ si, -+ &out, -+ &err, -+ &status, -+ &error); -+ for (i = 0; i < env->len; i++) { -+ g_free (g_ptr_array_index (env, i)); -+ } -+ g_ptr_array_free (env, TRUE); -+ -+ if (error != NULL) { -+ g_warning ("Unable to get display device for x11 server: %s", error->message); -+ g_error_free (error); -+ } -+ -+ if (status == 0) { -+ if (res && out != NULL) { -+ si->x11_display_device = g_strstrip (out); -+ goto gotit; -+ } -+ } -+ -+ si->x11_display_device = ck_process_stat_get_tty (xorg_stat); -+ -+gotit: - ck_process_stat_free (xorg_stat); - -- /* don't set is-local here - let the daemon do that */ -+ si->is_local = TRUE; -+ si->is_local_is_set = TRUE; - - g_free (si->remote_host_name); - si->remote_host_name = NULL; -@@ -303,6 +356,13 @@ fill_session_info (SessionInfo *si) - - fill_x11_info (si); - -+ if (! si->is_local_is_set) { -+ /* FIXME: how should we set this? */ -+ /* non x11 sessions must be local I guess */ -+ si->is_local = TRUE; -+ si->is_local_is_set = TRUE; -+ } -+ - res = ck_unix_pid_get_login_session_id (si->pid, &si->login_session_id); - if (! res) { - si->login_session_id = NULL; diff --git a/sysutils/consolekit/files/patch-tools_ck-history.c b/sysutils/consolekit/files/patch-tools_ck-history.c deleted file mode 100644 index 33cdd68c521f..000000000000 --- a/sysutils/consolekit/files/patch-tools_ck-history.c +++ /dev/null @@ -1,20 +0,0 @@ ---- tools/ck-history.c.orig 2010-09-03 15:54:31.000000000 +0200 -+++ tools/ck-history.c 2013-08-10 20:56:36.000000000 +0200 -@@ -511,7 +511,7 @@ - char *session_type; - char *session_id; - char *seat_id; -- CkLogSeatSessionAddedEvent *e; -+ CkLogSeatSessionAddedEvent *e = NULL; - CkLogEvent *remove_event; - RecordStatus status; - -@@ -804,7 +804,7 @@ - data = user_counts->data; - - username = get_user_name_for_uid (data->uid); -- g_print ("%-8.8s %u\n", username, data->count); -+ g_print ("%-8s %u\n", username, data->count); - g_free (data); - user_counts = g_list_delete_link (user_counts, user_counts); - g_free (username); diff --git a/sysutils/consolekit/files/patch-tools_ck-log-system-start.c b/sysutils/consolekit/files/patch-tools_ck-log-system-start.c deleted file mode 100644 index 0e125ef262d2..000000000000 --- a/sysutils/consolekit/files/patch-tools_ck-log-system-start.c +++ /dev/null @@ -1,60 +0,0 @@ ---- tools/ck-log-system-start.c.orig 2009-09-14 20:08:10.000000000 -0400 -+++ tools/ck-log-system-start.c 2009-09-26 01:35:37.000000000 -0400 -@@ -26,6 +26,9 @@ - #include <unistd.h> - #include <errno.h> - #include <fcntl.h> -+#ifdef __FreeBSD__ -+#include <kenv.h> -+#endif - #include <sys/types.h> - #include <sys/stat.h> - #include <sys/utsname.h> -@@ -41,7 +44,9 @@ - - #define DEFAULT_LOG_FILENAME LOCALSTATEDIR "/log/ConsoleKit/history" - -+#ifdef __linux__ - #define LINUX_KERNEL_CMDLINE "/proc/cmdline" -+#endif - - /* Adapted from auditd auditd-event.c */ - static gboolean -@@ -162,6 +167,7 @@ write_log_for_event (CkLogEvent *event) - static char * - get_boot_arguments (void) - { -+#if defined(__linux__) - char *contents; - gboolean res; - -@@ -178,6 +184,29 @@ get_boot_arguments (void) - } - - return contents; -+#elif defined(__FreeBSD__) -+ char kern_name[1024], root[1024], mopts[1024]; -+ char *options; -+ -+ options = NULL; -+ if (kenv(KENV_GET, "kernelname", kern_name, sizeof (kern_name)) == -1) { -+ return options; -+ } -+ -+ if (kenv(KENV_GET, "vfs.root.mountfrom.options", mopts, sizeof (mopts)) == -1) { -+ g_strlcpy (mopts, "ro", sizeof (mopts)); -+ } -+ -+ if (kenv(KENV_GET, "vfs.root.mountfrom", root, sizeof (root)) == -1) { -+ g_strlcpy (root, "/", sizeof (root)); -+ } -+ -+ options = g_strdup_printf ("%s %s root=%s", mopts, kern_name, root); -+ -+ return options; -+#else -+ return NULL; -+#endif - } - - int diff --git a/sysutils/consolekit/pkg-descr b/sysutils/consolekit/pkg-descr deleted file mode 100644 index db13002ab4b7..000000000000 --- a/sysutils/consolekit/pkg-descr +++ /dev/null @@ -1,6 +0,0 @@ -ConsoleKit is a framework for defining and tracking users, login -sessions, and seats. The primary motivations for this framework are to -facilitate fast-user-switching and multi-seat capabilities, and to -enable more sophisticated policy decisions for desktop sessions. - -WWW: http://www.freedesktop.org/wiki/Software/ConsoleKit diff --git a/sysutils/consolekit2/Makefile b/sysutils/consolekit2/Makefile new file mode 100644 index 000000000000..a528f8552d65 --- /dev/null +++ b/sysutils/consolekit2/Makefile @@ -0,0 +1,41 @@ +# Created by: FreeBSD GNOME Team <gnome@freebsd.org> +# $FreeBSD$ + +PORTNAME= consolekit +PORTVERSION= 1.2.0 +CATEGORIES= sysutils gnome +MASTER_SITES= https://github.com/ConsoleKit2/ConsoleKit2/releases/download/${PORTVERSION}/ +DISTNAME= ConsoleKit2-${PORTVERSION} +PKGNAMESUFFIX= 2 + +MAINTAINER= gnome@FreeBSD.org +COMMENT= Framework for defining and tracking users + +LICENSE= GPLv2 +LICENSE_FILE= ${WRKSRC}/COPYING + +LIB_DEPENDS= libdbus-1.so:devel/dbus \ + libpolkit-gobject-1.so:sysutils/polkit + +WRKSRC= ${WRKDIR}/ConsoleKit2-${PORTVERSION} +USES= gettext gmake libtool localbase pathfix pkgconfig tar:bzip2 +USE_XORG= x11 +USE_GNOME= glib20 libxslt introspection:build +GNU_CONFIGURE= yes +USE_LDCONFIG= yes +CONFIGURE_ARGS= --with-pid-file=/var/run/${PORTNAME}.pid \ + --enable-pam-module \ + --with-pam-module-dir=${PREFIX}/lib \ + --localstatedir=/var \ + --enable-polkit \ + --enable-introspection \ + --without-html-dir \ + --disable-udev-acl \ + --disable-libcgmanager \ + --disable-libdrm \ + --disable-libevdev \ + --disable-libudev \ + --without-systemdsystemunitdir +INSTALL_TARGET= install-strip + +.include <bsd.port.mk> diff --git a/sysutils/consolekit2/distinfo b/sysutils/consolekit2/distinfo new file mode 100644 index 000000000000..684d815a613c --- /dev/null +++ b/sysutils/consolekit2/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1501417547 +SHA256 (ConsoleKit2-1.2.0.tar.bz2) = d6ea13b306557a76519388de39bf7f1a1ea9010af147fad4fb3131ce634bd8b3 +SIZE (ConsoleKit2-1.2.0.tar.bz2) = 1125402 diff --git a/sysutils/consolekit2/pkg-descr b/sysutils/consolekit2/pkg-descr new file mode 100644 index 000000000000..ac7f514abfa1 --- /dev/null +++ b/sysutils/consolekit2/pkg-descr @@ -0,0 +1,20 @@ +ConsoleKit2 is a framework for defining and tracking users, login +sessions, and seats. It allows multiple users to be logged in at the +same time and share hardware for their graphical session. ConsoleKit2 +will keep track of those resources and whichever session is active +will have use of the hardware at that time. + +What is a seat? +=============== +A seat is a collection of sessions and a set of hardware (usually at +least a keyboard and mouse). Only one session may be active on a +seat at a time. + +What is a session? +================== +A session is a collection of all processes that originate from a single +common ancestor and retain knowledge of a secret. As an implementation +detail, this secret may be stored in the process environment by the +login manager under the name XDG_SESSION_COOKIE. + +WWW: https://github.com/ConsoleKit2/ConsoleKit2 diff --git a/sysutils/consolekit/pkg-plist b/sysutils/consolekit2/pkg-plist index 0578b7bfa7ad..a9fa2b823e3f 100644 --- a/sysutils/consolekit/pkg-plist +++ b/sysutils/consolekit2/pkg-plist @@ -1,35 +1,57 @@ bin/ck-history bin/ck-launch-session bin/ck-list-sessions -sbin/ck-log-system-restart -sbin/ck-log-system-start -sbin/ck-log-system-stop etc/ConsoleKit/seats.d/00-primary.seat +etc/X11/xinit/xinitrc.d/90-consolekit etc/dbus-1/system.d/ConsoleKit.conf +etc/logrotate.d/consolekit include/ConsoleKit/ck-connector/ck-connector.h +include/ConsoleKit/libconsolekit.h +lib/ConsoleKit/scripts/ck-get-x11-display-device +lib/ConsoleKit/scripts/ck-get-x11-server-pid +lib/ConsoleKit/scripts/ck-system-hibernate +lib/ConsoleKit/scripts/ck-system-hybridsleep lib/ConsoleKit/scripts/ck-system-restart lib/ConsoleKit/scripts/ck-system-stop +lib/ConsoleKit/scripts/ck-system-suspend +lib/girepository-1.0/libconsolekit-1.0.typelib lib/libck-connector.so lib/libck-connector.so.0 lib/libck-connector.so.0.0.0 +lib/libconsolekit.so +lib/libconsolekit.so.1 +lib/libconsolekit.so.1.0.0 lib/pam_ck_connector.so libdata/pkgconfig/ck-connector.pc +libdata/pkgconfig/libconsolekit.pc libexec/ck-collect-session-info -libexec/ck-get-x11-display-device +@(,,4755) libexec/ck-get-x11-display-device libexec/ck-get-x11-server-pid +libexec/ck-remove-directory +man/man1/ck-history.1.gz +man/man1/ck-launch-session.1.gz +man/man1/ck-list-sessions.1.gz +man/man1/console-kit-daemon.1m.gz man/man8/pam_ck_connector.8.gz +sbin/ck-log-system-restart +sbin/ck-log-system-start +sbin/ck-log-system-stop sbin/console-kit-daemon share/dbus-1/interfaces/org.freedesktop.ConsoleKit.Manager.xml share/dbus-1/interfaces/org.freedesktop.ConsoleKit.Seat.xml share/dbus-1/interfaces/org.freedesktop.ConsoleKit.Session.xml share/dbus-1/system-services/org.freedesktop.ConsoleKit.service +share/gir-1.0/libconsolekit-1.0.gir +share/locale/bg/LC_MESSAGES/ConsoleKit2.mo +share/locale/es/LC_MESSAGES/ConsoleKit2.mo +share/locale/es_419/LC_MESSAGES/ConsoleKit2.mo +share/locale/ru/LC_MESSAGES/ConsoleKit2.mo share/polkit-1/actions/org.freedesktop.consolekit.policy -@dir /var/run/ConsoleKit -@dir /var/log/ConsoleKit -@postexec /usr/bin/touch /var/log/ConsoleKit/history -@rmtry /var/log/ConsoleKit/history @dir etc/ConsoleKit/run-seat.d @dir etc/ConsoleKit/run-session.d @dir lib/ConsoleKit/run-seat.d @dir lib/ConsoleKit/run-session.d - +@dir /var/log/ConsoleKit +@postexec /usr/bin/touch /var/log/ConsoleKit/history +@rmtry /var/log/ConsoleKit/history +@dir /var/run/ConsoleKit diff --git a/sysutils/hal/Makefile b/sysutils/hal/Makefile index 6d352fe59f5c..5b3cf9db467d 100644 --- a/sysutils/hal/Makefile +++ b/sysutils/hal/Makefile @@ -4,7 +4,7 @@ PORTNAME= hal DISTVERSION= 0.5.14 -PORTREVISION= 31 +PORTREVISION= 32 CATEGORIES= sysutils MASTER_SITES= http://hal.freedesktop.org/releases/ @@ -15,7 +15,7 @@ BUILD_DEPENDS= ${LOCALBASE}/include/linux/videodev2.h:multimedia/v4l_compat # keep shlib version, to prevent confusion with polkit-* from sysutils/polkit LIB_DEPENDS= libpolkit.so.2:sysutils/policykit \ libvolume_id.so:devel/libvolume_id \ - libck-connector.so:sysutils/consolekit + libck-connector.so:sysutils/consolekit2 RUN_DEPENDS= ${LOCALBASE}/share/pciids/pci.ids:misc/pciids USES= gettext gmake libtool:keepla pathfix pkgconfig python shebangfix |