Import accountsservice-0.6.12.
The AccountsService project provides: * A set of D-Bus interfaces for querying and manipulating user account information. * An implementation of these interfaces based on the usermod(8), useradd(8) and userdel(8) commands ok jasper@ ("though I'm surprised they didn't name it 'accountskit'")
This commit is contained in:
parent
98b4eede9d
commit
062fda667a
49
sysutils/accountsservice/Makefile
Normal file
49
sysutils/accountsservice/Makefile
Normal file
@ -0,0 +1,49 @@
|
||||
# $OpenBSD: Makefile,v 1.1.1.1 2011/05/22 10:57:32 ajacoutot Exp $
|
||||
|
||||
COMMENT= D-Bus interface for user account query and manipulation
|
||||
|
||||
DISTNAME= accountsservice-0.6.12
|
||||
EXTRACT_SUFX= .tar.bz2
|
||||
|
||||
SHARED_LIBS += accountsservice 0.0 # 0.0
|
||||
|
||||
CATEGORIES= sysutils
|
||||
|
||||
HOMEPAGE= http://cgit.freedesktop.org/accountsservice/
|
||||
|
||||
MAINTAINER= Antoine Jacoutot <ajacoutot@openbsd.org>
|
||||
|
||||
# GPLv3
|
||||
PERMIT_PACKAGE_CDROM= Yes
|
||||
PERMIT_PACKAGE_FTP= Yes
|
||||
PERMIT_DISTFILES_CDROM= Yes
|
||||
PERMIT_DISTFILES_FTP= Yes
|
||||
|
||||
WANTLIB += c crypto dbus-1 dbus-glib-1 gio-2.0 glib-2.0 gmodule-2.0
|
||||
WANTLIB += gobject-2.0 gthread-2.0 pcre polkit-gobject-1 pthread
|
||||
WANTLIB += z
|
||||
|
||||
MASTER_SITES= http://www.freedesktop.org/software/accountsservice/
|
||||
|
||||
MODULES= devel/gettext
|
||||
|
||||
BUILD_DEPENDS= devel/gobject-introspection
|
||||
|
||||
LIB_DEPENDS= sysutils/polkit \
|
||||
x11/dbus-glib
|
||||
|
||||
USE_GMAKE= Yes
|
||||
|
||||
CONFIGURE_STYLE=gnu
|
||||
CONFIGURE_ENV= CPPFLAGS="-I${LOCALBASE}/include" \
|
||||
LDFLAGS="-L${LOCALBASE}/lib"
|
||||
CONFIGURE_ARGS= ${CONFIGURE_SHARED} \
|
||||
--enable-introspection \
|
||||
--disable-docbook-docs
|
||||
|
||||
FAKE_FLAGS= sysconfdir=${PREFIX}/share/examples/accountsservice
|
||||
|
||||
pre-configure:
|
||||
${SUBST_CMD} ${WRKSRC}/src/daemon.c
|
||||
|
||||
.include <bsd.port.mk>
|
5
sysutils/accountsservice/distinfo
Normal file
5
sysutils/accountsservice/distinfo
Normal file
@ -0,0 +1,5 @@
|
||||
MD5 (accountsservice-0.6.12.tar.bz2) = dOLaz0QQv6to2zD8wtqIGQ==
|
||||
RMD160 (accountsservice-0.6.12.tar.bz2) = r9Keilvke6secVx710ekAjZYH7c=
|
||||
SHA1 (accountsservice-0.6.12.tar.bz2) = i99BNFBad8cIjo39S/+LRK/zUDE=
|
||||
SHA256 (accountsservice-0.6.12.tar.bz2) = H12YPQ4bZD9whekJkUVcWSDQZwluESKtF4T7luIuLGI=
|
||||
SIZE (accountsservice-0.6.12.tar.bz2) = 344686
|
12
sysutils/accountsservice/patches/patch-src_Makefile_in
Normal file
12
sysutils/accountsservice/patches/patch-src_Makefile_in
Normal file
@ -0,0 +1,12 @@
|
||||
$OpenBSD: patch-src_Makefile_in,v 1.1.1.1 2011/05/22 10:57:32 ajacoutot Exp $
|
||||
--- src/Makefile.in.orig Sun May 22 12:34:45 2011
|
||||
+++ src/Makefile.in Sun May 22 12:35:03 2011
|
||||
@@ -782,8 +782,6 @@ user-glue.h: $(top_srcdir)/data/org.freedesktop.Accoun
|
||||
dbus-binding-tool --prefix=user --mode=glib-server --output=user-glue.h $(top_srcdir)/data/org.freedesktop.Accounts.User.xml
|
||||
|
||||
install-data-hook:
|
||||
- $(MKDIR_P) "$(DESTDIR)$(localstatedir)/lib/AccountsService/users"
|
||||
- $(MKDIR_P) "$(DESTDIR)$(localstatedir)/lib/AccountsService/icons"
|
||||
|
||||
# Tell versions [3.59,3.63) of GNU make to not export all variables.
|
||||
# Otherwise a system limit (for SysV at least) may be exceeded.
|
108
sysutils/accountsservice/patches/patch-src_daemon_c
Normal file
108
sysutils/accountsservice/patches/patch-src_daemon_c
Normal file
@ -0,0 +1,108 @@
|
||||
$OpenBSD: patch-src_daemon_c,v 1.1.1.1 2011/05/22 10:57:32 ajacoutot Exp $
|
||||
--- src/daemon.c.orig Thu May 19 05:39:12 2011
|
||||
+++ src/daemon.c Sun May 22 12:36:56 2011
|
||||
@@ -50,11 +50,14 @@
|
||||
#define PATH_SHADOW "/etc/shadow"
|
||||
#define PATH_LOGIN_DEFS "/etc/login.defs"
|
||||
|
||||
+#if defined(__FreeBSD__) || defined(__OpenBSD__)
|
||||
+#define FALLBACK_MINIMAL_UID 1000
|
||||
+#endif
|
||||
#ifndef FALLBACK_MINIMAL_UID
|
||||
#define FALLBACK_MINIMAL_UID 500
|
||||
#endif
|
||||
|
||||
-#define USERDIR LOCALSTATEDIR "/lib/AccountsService/users"
|
||||
+#define USERDIR LOCALSTATEDIR "/db/AccountsService/users"
|
||||
|
||||
static const char *default_excludes[] = {
|
||||
"bin",
|
||||
@@ -494,16 +497,24 @@ reload_passwd (Daemon *daemon)
|
||||
old_users = NULL;
|
||||
new_users = NULL;
|
||||
|
||||
+#if defined(__FreeBSD__) || defined(__OpenBSD__)
|
||||
+ setpwent();
|
||||
+#else
|
||||
errno = 0;
|
||||
fp = fopen (PATH_PASSWD, "r");
|
||||
if (fp == NULL) {
|
||||
g_warning ("Unable to open %s: %s", PATH_PASSWD, g_strerror (errno));
|
||||
goto out;
|
||||
}
|
||||
+#endif
|
||||
g_hash_table_foreach (daemon->priv->users, listify_hash_values_hfunc, &old_users);
|
||||
g_slist_foreach (old_users, (GFunc) g_object_ref, NULL);
|
||||
|
||||
+#if defined(__FreeBSD__) || defined(__OpenBSD__)
|
||||
+ for (pwent = getpwent (); pwent != NULL; pwent = getpwent ()) {
|
||||
+#else
|
||||
for (pwent = fgetpwent (fp); pwent != NULL; pwent = fgetpwent (fp)) {
|
||||
+#endif
|
||||
/* Skip users below MINIMAL_UID... */
|
||||
if (daemon_local_user_is_excluded (daemon, pwent->pw_name, pwent->pw_uid)) {
|
||||
g_debug ("skipping user: %s", pwent->pw_name);
|
||||
@@ -556,7 +567,11 @@ reload_passwd (Daemon *daemon)
|
||||
out:
|
||||
/* Cleanup */
|
||||
|
||||
+#if defined(__FreeBSD__) || defined(__OpenBSD__)
|
||||
+ endpwent ();
|
||||
+#else
|
||||
fclose (fp);
|
||||
+#endif
|
||||
|
||||
g_slist_foreach (new_users, (GFunc) g_object_thaw_notify, NULL);
|
||||
g_slist_foreach (new_users, (GFunc) g_object_unref, NULL);
|
||||
@@ -676,9 +691,16 @@ on_passwd_monitor_changed (GFileMonitor *monitor,
|
||||
reload_users (daemon);
|
||||
}
|
||||
|
||||
+#if defined(__FreeBSD__) || defined(__OpenBSD__)
|
||||
static uid_t
|
||||
get_minimal_uid (void)
|
||||
{
|
||||
+ return FALLBACK_MINIMAL_UID;
|
||||
+}
|
||||
+#else
|
||||
+static uid_t
|
||||
+get_minimal_uid (void)
|
||||
+{
|
||||
GError *error;
|
||||
char *contents;
|
||||
gboolean contents_loaded;
|
||||
@@ -728,6 +750,7 @@ out:
|
||||
g_free (contents);
|
||||
return uid;
|
||||
}
|
||||
+#endif
|
||||
|
||||
static void
|
||||
daemon_init (Daemon *daemon)
|
||||
@@ -1042,7 +1065,7 @@ finish_list_cached_users (gpointer user_data)
|
||||
while (g_hash_table_iter_next (&iter, (gpointer *)&name, (gpointer *)&user)) {
|
||||
uid = user_local_get_uid (user);
|
||||
if (!daemon_local_user_is_excluded (data->daemon, name, uid)) {
|
||||
- g_debug ("user %s %ld not excluded\n", name, uid);
|
||||
+ g_debug ("user %s %ld not excluded\n", name, (long int)uid);
|
||||
g_ptr_array_add (object_paths, g_strdup (user_local_get_object_path (user)));
|
||||
}
|
||||
}
|
||||
@@ -1381,7 +1404,7 @@ load_autologin (Daemon *daemon,
|
||||
GError *local_error;
|
||||
gchar *string;
|
||||
|
||||
- filename = "/etc/gdm/custom.conf";
|
||||
+ filename = "${SYSCONFDIR}/gdm/custom.conf";
|
||||
|
||||
keyfile = g_key_file_new ();
|
||||
if (!g_key_file_load_from_file (keyfile,
|
||||
@@ -1431,7 +1454,7 @@ save_autologin (Daemon *daemon,
|
||||
gchar *data;
|
||||
gboolean result;
|
||||
|
||||
- filename = "/etc/gdm/custom.conf";
|
||||
+ filename = "${SYSCONFDIR}/gdm/custom.conf";
|
||||
|
||||
keyfile = g_key_file_new ();
|
||||
if (!g_key_file_load_from_file (keyfile,
|
@ -0,0 +1,12 @@
|
||||
$OpenBSD: patch-src_libaccountsservice_Makefile_in,v 1.1.1.1 2011/05/22 10:57:32 ajacoutot Exp $
|
||||
--- src/libaccountsservice/Makefile.in.orig Sun May 22 12:29:39 2011
|
||||
+++ src/libaccountsservice/Makefile.in Sun May 22 12:29:47 2011
|
||||
@@ -323,7 +323,7 @@ libaccountsservice_la_LDFLAGS = \
|
||||
|
||||
libaccountsservice_la_LIBADD = \
|
||||
$(LIBACCOUNTSSERVICE_LIBS) \
|
||||
- -lcrypt \
|
||||
+ -lcrypto \
|
||||
$(END_OF_LIST)
|
||||
|
||||
libaccountsservice_la_SOURCES = \
|
87
sysutils/accountsservice/patches/patch-src_user_c
Normal file
87
sysutils/accountsservice/patches/patch-src_user_c
Normal file
@ -0,0 +1,87 @@
|
||||
$OpenBSD: patch-src_user_c,v 1.1.1.1 2011/05/22 10:57:32 ajacoutot Exp $
|
||||
--- src/user.c.orig Thu May 19 05:38:50 2011
|
||||
+++ src/user.c Sun May 22 12:34:15 2011
|
||||
@@ -29,7 +29,11 @@
|
||||
#include <sys/wait.h>
|
||||
#include <unistd.h>
|
||||
#include <grp.h>
|
||||
+#if defined(__FreeBSD__) || defined(__OpenBSD__)
|
||||
+#include <pwd.h>
|
||||
+#else
|
||||
#include <shadow.h>
|
||||
+#endif
|
||||
|
||||
#include <glib.h>
|
||||
#include <glib/gi18n.h>
|
||||
@@ -46,7 +50,7 @@
|
||||
#include "user-glue.h"
|
||||
#include "util.h"
|
||||
|
||||
-#define ICONDIR LOCALSTATEDIR "/lib/AccountsService/icons"
|
||||
+#define ICONDIR LOCALSTATEDIR "/db/AccountsService/icons"
|
||||
|
||||
enum {
|
||||
PROP_0,
|
||||
@@ -464,7 +468,11 @@ void
|
||||
user_local_update_from_pwent (User *user,
|
||||
struct passwd *pwent)
|
||||
{
|
||||
+#if defined(__FreeBSD__) || defined(__OpenBSD__)
|
||||
+ struct passwd *spent;
|
||||
+#else
|
||||
struct spwd *spent;
|
||||
+#endif
|
||||
gchar *real_name;
|
||||
gboolean changed;
|
||||
const gchar *passwd;
|
||||
@@ -555,9 +563,15 @@ user_local_update_from_pwent (User *user,
|
||||
}
|
||||
|
||||
passwd = pwent->pw_passwd;
|
||||
+#if defined(__FreeBSD__) || defined(__OpenBSD__)
|
||||
+ spent = getpwnam (pwent->pw_name);
|
||||
+ if (spent)
|
||||
+ passwd = spent->pw_passwd;
|
||||
+#else
|
||||
spent = getspnam (pwent->pw_name);
|
||||
if (spent)
|
||||
passwd = spent->sp_pwdp;
|
||||
+#endif
|
||||
|
||||
if (passwd && passwd[0] == '!') {
|
||||
locked = TRUE;
|
||||
@@ -579,11 +593,13 @@ user_local_update_from_pwent (User *user,
|
||||
mode = PASSWORD_MODE_REGULAR;
|
||||
}
|
||||
|
||||
+#if !defined(__FreeBSD__) && !defined(__OpenBSD__)
|
||||
if (spent) {
|
||||
if (spent->sp_lstchg == 0) {
|
||||
mode = PASSWORD_MODE_SET_AT_LOGIN;
|
||||
}
|
||||
}
|
||||
+#endif
|
||||
|
||||
if (user->password_mode != mode) {
|
||||
user->password_mode = mode;
|
||||
@@ -686,7 +702,7 @@ save_extra_data (User *user)
|
||||
error = NULL;
|
||||
data = g_key_file_to_data (keyfile, NULL, &error);
|
||||
if (error == NULL) {
|
||||
- filename = g_build_filename ("/var/lib/AccountsService/users",
|
||||
+ filename = g_build_filename ("/var/db/AccountsService/users",
|
||||
user->user_name,
|
||||
NULL);
|
||||
g_file_set_contents (filename, data, -1, &error);
|
||||
@@ -707,9 +723,9 @@ move_extra_data (const gchar *old_name,
|
||||
gchar *old_filename;
|
||||
gchar *new_filename;
|
||||
|
||||
- old_filename = g_build_filename ("/var/lib/AccountsService/users",
|
||||
+ old_filename = g_build_filename ("/var/db/AccountsService/users",
|
||||
old_name, NULL);
|
||||
- new_filename = g_build_filename ("/var/lib/AccountsService/users",
|
||||
+ new_filename = g_build_filename ("/var/db/AccountsService/users",
|
||||
new_name, NULL);
|
||||
|
||||
g_rename (old_filename, new_filename);
|
12
sysutils/accountsservice/patches/patch-src_util_c
Normal file
12
sysutils/accountsservice/patches/patch-src_util_c
Normal file
@ -0,0 +1,12 @@
|
||||
$OpenBSD: patch-src_util_c,v 1.1.1.1 2011/05/22 10:57:32 ajacoutot Exp $
|
||||
--- src/util.c.orig Sun May 22 12:26:39 2011
|
||||
+++ src/util.c Sun May 22 12:26:45 2011
|
||||
@@ -25,7 +25,7 @@
|
||||
#include <sys/types.h>
|
||||
#include <sys/stat.h>
|
||||
#include <fcntl.h>
|
||||
-#include <wait.h>
|
||||
+#include <sys/wait.h>
|
||||
#include <grp.h>
|
||||
|
||||
#include <syslog.h>
|
5
sysutils/accountsservice/pkg/DESCR
Normal file
5
sysutils/accountsservice/pkg/DESCR
Normal file
@ -0,0 +1,5 @@
|
||||
The AccountsService project provides:
|
||||
* A set of D-Bus interfaces for querying and manipulating user
|
||||
account information.
|
||||
* An implementation of these interfaces based on the usermod(8),
|
||||
useradd(8) and userdel(8) commands.
|
2
sysutils/accountsservice/pkg/PFRAG.shared
Normal file
2
sysutils/accountsservice/pkg/PFRAG.shared
Normal file
@ -0,0 +1,2 @@
|
||||
@comment $OpenBSD: PFRAG.shared,v 1.1.1.1 2011/05/22 10:57:32 ajacoutot Exp $
|
||||
@lib lib/libaccountsservice.so.${LIBaccountsservice_VERSION}
|
87
sysutils/accountsservice/pkg/PLIST
Normal file
87
sysutils/accountsservice/pkg/PLIST
Normal file
@ -0,0 +1,87 @@
|
||||
@comment $OpenBSD: PLIST,v 1.1.1.1 2011/05/22 10:57:32 ajacoutot Exp $
|
||||
@unexec-delete rm -rf /var/db/AccountsService/icons/*
|
||||
@unexec-delete rm -rf /var/db/AccountsService/users/*
|
||||
%%SHARED%%
|
||||
include/accountsservice-1.0/
|
||||
include/accountsservice-1.0/act/
|
||||
include/accountsservice-1.0/act/act-user-enum-types.h
|
||||
include/accountsservice-1.0/act/act-user-manager.h
|
||||
include/accountsservice-1.0/act/act-user.h
|
||||
lib/girepository-1.0/
|
||||
lib/girepository-1.0/AccountsService-1.0.typelib
|
||||
lib/libaccountsservice.a
|
||||
lib/libaccountsservice.la
|
||||
lib/pkgconfig/
|
||||
lib/pkgconfig/accountsservice.pc
|
||||
@bin libexec/accounts-daemon
|
||||
share/dbus-1/
|
||||
share/dbus-1/interfaces/
|
||||
share/dbus-1/interfaces/org.freedesktop.Accounts.User.xml
|
||||
share/dbus-1/interfaces/org.freedesktop.Accounts.xml
|
||||
share/dbus-1/system-services/
|
||||
share/dbus-1/system-services/org.freedesktop.Accounts.service
|
||||
share/examples/accountsservice/
|
||||
share/examples/accountsservice/dbus-1/
|
||||
@sample ${SYSCONFDIR}/dbus-1/
|
||||
share/examples/accountsservice/dbus-1/system.d/
|
||||
@sample ${SYSCONFDIR}/dbus-1/system.d/
|
||||
share/examples/accountsservice/dbus-1/system.d/org.freedesktop.Accounts.conf
|
||||
@sample ${SYSCONFDIR}/dbus-1/system.d/org.freedesktop.Accounts.conf
|
||||
share/gir-1.0/
|
||||
share/gir-1.0/AccountsService-1.0.gir
|
||||
share/locale/ar/
|
||||
share/locale/ar/LC_MESSAGES/
|
||||
share/locale/ar/LC_MESSAGES/accounts-service.mo
|
||||
share/locale/bg_BG/
|
||||
share/locale/bg_BG/LC_MESSAGES/
|
||||
share/locale/bg_BG/LC_MESSAGES/accounts-service.mo
|
||||
share/locale/bn_IN/
|
||||
share/locale/bn_IN/LC_MESSAGES/
|
||||
share/locale/bn_IN/LC_MESSAGES/accounts-service.mo
|
||||
share/locale/ca/LC_MESSAGES/accounts-service.mo
|
||||
share/locale/ca@valencia/
|
||||
share/locale/ca@valencia/LC_MESSAGES/
|
||||
share/locale/ca@valencia/LC_MESSAGES/accounts-service.mo
|
||||
share/locale/cs/LC_MESSAGES/accounts-service.mo
|
||||
share/locale/de/LC_MESSAGES/accounts-service.mo
|
||||
share/locale/el/LC_MESSAGES/accounts-service.mo
|
||||
share/locale/fa_IR/
|
||||
share/locale/fa_IR/LC_MESSAGES/
|
||||
share/locale/fa_IR/LC_MESSAGES/accounts-service.mo
|
||||
share/locale/fr/LC_MESSAGES/accounts-service.mo
|
||||
share/locale/ga/LC_MESSAGES/accounts-service.mo
|
||||
share/locale/hi/
|
||||
share/locale/hi/LC_MESSAGES/
|
||||
share/locale/hi/LC_MESSAGES/accounts-service.mo
|
||||
share/locale/hu/LC_MESSAGES/accounts-service.mo
|
||||
share/locale/id/LC_MESSAGES/accounts-service.mo
|
||||
share/locale/it/LC_MESSAGES/accounts-service.mo
|
||||
share/locale/kk/
|
||||
share/locale/kk/LC_MESSAGES/
|
||||
share/locale/kk/LC_MESSAGES/accounts-service.mo
|
||||
share/locale/ko/LC_MESSAGES/accounts-service.mo
|
||||
share/locale/pa/
|
||||
share/locale/pa/LC_MESSAGES/
|
||||
share/locale/pa/LC_MESSAGES/accounts-service.mo
|
||||
share/locale/pl/LC_MESSAGES/accounts-service.mo
|
||||
share/locale/ru/LC_MESSAGES/accounts-service.mo
|
||||
share/locale/sk/LC_MESSAGES/accounts-service.mo
|
||||
share/locale/sl/LC_MESSAGES/accounts-service.mo
|
||||
share/locale/sr/LC_MESSAGES/accounts-service.mo
|
||||
share/locale/sr@latin/
|
||||
share/locale/sr@latin/LC_MESSAGES/
|
||||
share/locale/sr@latin/LC_MESSAGES/accounts-service.mo
|
||||
share/locale/sv/LC_MESSAGES/accounts-service.mo
|
||||
share/locale/tr/LC_MESSAGES/accounts-service.mo
|
||||
share/locale/uk/LC_MESSAGES/accounts-service.mo
|
||||
share/locale/wa/
|
||||
share/locale/wa/LC_MESSAGES/
|
||||
share/locale/wa/LC_MESSAGES/accounts-service.mo
|
||||
share/locale/zh_CN/LC_MESSAGES/accounts-service.mo
|
||||
share/locale/zh_TW/LC_MESSAGES/accounts-service.mo
|
||||
share/polkit-1/
|
||||
share/polkit-1/actions/
|
||||
share/polkit-1/actions/org.freedesktop.accounts.policy
|
||||
@sample /var/db/AccountsService/
|
||||
@sample /var/db/AccountsService/icons/
|
||||
@sample /var/db/AccountsService/users/
|
Loading…
x
Reference in New Issue
Block a user