diff options
author | Nicolás Reynolds <fauno@endefensadelsl.org> | 2013-05-07 22:31:25 -0300 |
---|---|---|
committer | Nicolás Reynolds <fauno@endefensadelsl.org> | 2013-05-07 22:31:25 -0300 |
commit | 9f7fb9c12e84f20cd108b933f1a51e216f76cd98 (patch) | |
tree | 06520d9024b40745b94f02d0d3419386e6496863 /extra/gdm | |
parent | 6cc893589a6bd208f2b7711f985e17df7a6df816 (diff) | |
parent | a86ff663185661ee304bb1f6d00d982102dd706d (diff) |
Merge branch 'master' of gparabola:abslibre-mips64el
Diffstat (limited to 'extra/gdm')
-rw-r--r-- | extra/gdm/PKGBUILD | 54 | ||||
-rwxr-xr-x | extra/gdm/gdm | 36 | ||||
-rw-r--r-- | extra/gdm/gdm-autologin.pam | 20 | ||||
-rw-r--r-- | extra/gdm/gdm-fingerprint.pam | 20 | ||||
-rw-r--r-- | extra/gdm/gdm-password.pam | 22 | ||||
-rw-r--r-- | extra/gdm/gdm-smartcard.pam | 20 | ||||
-rw-r--r-- | extra/gdm/gdm-vt-allocation-hack.patch | 118 | ||||
-rw-r--r-- | extra/gdm/gdm-welcome.pam | 12 | ||||
-rw-r--r-- | extra/gdm/gdm.pam | 10 | ||||
-rw-r--r-- | extra/gdm/gdm.service | 10 |
10 files changed, 37 insertions, 285 deletions
diff --git a/extra/gdm/PKGBUILD b/extra/gdm/PKGBUILD index 6bc85e9f8..471ef2a53 100644 --- a/extra/gdm/PKGBUILD +++ b/extra/gdm/PKGBUILD @@ -1,31 +1,26 @@ -# $Id: PKGBUILD 171020 2012-11-15 06:19:11Z heftig $ +# $Id: PKGBUILD 183315 2013-04-21 22:06:33Z heftig $ # Maintainer: Jan Alexander Steffens (heftig) <jan.steffens@gmail.com> # Maintainer: Jan de Groot <jgc@archlinux.org> -pkgname=gdm -pkgver=3.6.2 +pkgbase=gdm +pkgname=(gdm libgdm) +pkgver=3.8.1.1 pkgrel=1 pkgdesc="Gnome Display Manager" arch=('i686' 'x86_64' 'mips64el') license=(GPL) url="http://www.gnome.org" -backup=(etc/pam.d/gdm-autologin etc/pam.d/gdm-fingerprint etc/pam.d/gdm-launch-environment - etc/pam.d/gdm-password etc/pam.d/gdm-smartcard etc/gdm/custom.conf) -groups=(gnome) options=('!libtool') -depends=(libcanberra gnome-session gnome-settings-daemon metacity upower accountsservice systemd - xorg-xrdb nss polkit-gnome xorg-server gnome-icon-theme) +depends=(gnome-shell gnome-session upower xorg-xrdb xorg-server) makedepends=(itstool intltool gnome-doc-utils gobject-introspection) -optdepends=('gnome-shell: new login interface' - 'fprintd: fingerprint authentication') -install=gdm.install -source=(http://ftp.gnome.org/pub/gnome/sources/$pkgname/${pkgver%.*}/$pkgname-$pkgver.tar.xz +checkdepends=('check') +source=(http://ftp.gnome.org/pub/gnome/sources/$pkgbase/${pkgver::3}/$pkgbase-$pkgver.tar.xz fix_external_program_directories.patch) -sha256sums=('fbf41bd68299eccdcf456c0869771999f75d3d9bf0f57ce1038db08b54e8cbb9' +sha256sums=('16f8141040798ba00be0d718ba24cce927d6412b767d091f9ee5bf93f5800ba8' 'a878680734e35c1d66252cbcfe678c3961b5ff0fa16302f8796a5e7e65ffe4a2') build() { - cd "$pkgname-$pkgver" + cd $pkgbase-$pkgver patch -Np1 -i "$srcdir/fix_external_program_directories.patch" ./configure \ @@ -45,14 +40,39 @@ build() { sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0 /g' -e 's/ if test "$export_dynamic" = yes && test -n "$export_dynamic_flag_spec"; then/ func_append compile_command " -Wl,-O1,--as-needed"\n func_append finalize_command " -Wl,-O1,--as-needed"\n\0/' libtool - make -j1 # race condition building gdm-client.c, does not wait for gdm-client-glue.h + make } -package() { - cd "$pkgname-$pkgver" +check() { + cd $pkgbase-$pkgver + make check +} + +package_gdm() { + depends+=(libgdm) + optdepends=('fprintd: fingerprint authentication') + backup=(etc/pam.d/gdm-autologin etc/pam.d/gdm-fingerprint etc/pam.d/gdm-launch-environment + etc/pam.d/gdm-password etc/pam.d/gdm-smartcard etc/gdm/custom.conf + etc/gdm/Xsession + etc/gdm/PostSession/Default etc/gdm/PreSession/Default) + groups=(gnome) + install=gdm.install + + cd $pkgbase-$pkgver make DESTDIR="$pkgdir" install chmod 1770 "$pkgdir/var/log/gdm" chmod 700 "$pkgdir/var/lib/gdm/.config/dconf" rm -r "$pkgdir/var/run" "$pkgdir/var/gdm" + +### Split libgdm + make -C gui/libgdm DESTDIR="$pkgdir" uninstall +} + +package_libgdm() { + pkgdesc="GDM support library" + depends=(systemd) + + cd $pkgbase-$pkgver + make -C gui/libgdm DESTDIR="$pkgdir" install } diff --git a/extra/gdm/gdm b/extra/gdm/gdm deleted file mode 100755 index c3e635a6d..000000000 --- a/extra/gdm/gdm +++ /dev/null @@ -1,36 +0,0 @@ -#!/bin/bash - -. /etc/rc.conf -. /etc/rc.d/functions - -case "$1" in - start) - stat_busy "Starting GDM" - /usr/sbin/gdm & - if [ $? -gt 0 ]; then - stat_fail - else - - add_daemon gdm - stat_done - fi - ;; - stop) - stat_busy "Stopping GDM" - [ -f /var/run/gdm.pid ] && kill `cat /var/run/gdm.pid` &> /dev/null - if [ $? -gt 0 ]; then - stat_fail - else - rm_daemon gdm - stat_done - fi - ;; - restart) - $0 stop - sleep 2 - $0 start - ;; - *) - echo "usage: $0 {start|stop|restart}" -esac -exit 0 diff --git a/extra/gdm/gdm-autologin.pam b/extra/gdm/gdm-autologin.pam deleted file mode 100644 index bc0193df0..000000000 --- a/extra/gdm/gdm-autologin.pam +++ /dev/null @@ -1,20 +0,0 @@ -#%PAM-1.0 -auth requisite pam_nologin.so -auth required pam_env.so - -auth requisite pam_permit.so - -auth sufficient pam_succeed_if.so uid >= 1000 quiet -auth required pam_deny.so - -account required pam_access.so -account required pam_time.so -account required pam_unix.so - -password required pam_deny.so - -session required pam_loginuid.so --session optional pam_systemd.so -session optional pam_keyinit.so revoke -session required pam_limits.so -session required pam_unix.so diff --git a/extra/gdm/gdm-fingerprint.pam b/extra/gdm/gdm-fingerprint.pam deleted file mode 100644 index 38fab5782..000000000 --- a/extra/gdm/gdm-fingerprint.pam +++ /dev/null @@ -1,20 +0,0 @@ -#%PAM-1.0 -auth requisite pam_nologin.so -auth required pam_env.so - -auth requisite pam_fprintd.so - -auth sufficient pam_succeed_if.so uid >= 1000 quiet -auth required pam_deny.so - -account required pam_access.so -account required pam_time.so -account required pam_unix.so - -password required pam_deny.so - -session required pam_loginuid.so --session optional pam_systemd.so -session optional pam_keyinit.so revoke -session required pam_limits.so -session required pam_unix.so diff --git a/extra/gdm/gdm-password.pam b/extra/gdm/gdm-password.pam deleted file mode 100644 index eed5e1003..000000000 --- a/extra/gdm/gdm-password.pam +++ /dev/null @@ -1,22 +0,0 @@ -#%PAM-1.0 -auth requisite pam_nologin.so -auth required pam_env.so - -auth requisite pam_unix.so nullok -auth optional pam_gnome_keyring.so - -auth sufficient pam_succeed_if.so uid >= 1000 quiet -auth required pam_deny.so - -account required pam_access.so -account required pam_time.so -account required pam_unix.so - -password required pam_unix.so - -session required pam_loginuid.so --session optional pam_systemd.so -session optional pam_keyinit.so force revoke -session required pam_limits.so -session required pam_unix.so -session optional pam_gnome_keyring.so auto_start diff --git a/extra/gdm/gdm-smartcard.pam b/extra/gdm/gdm-smartcard.pam deleted file mode 100644 index c5c29e73f..000000000 --- a/extra/gdm/gdm-smartcard.pam +++ /dev/null @@ -1,20 +0,0 @@ -#%PAM-1.0 -auth requisite pam_nologin.so -auth required pam_env.so - -auth requisite pam_pkcs11.so wait_for_card card_only - -auth sufficient pam_succeed_if.so uid >= 1000 quiet -auth required pam_deny.so - -account required pam_access.so -account required pam_time.so -account required pam_unix.so - -password required pam_pkcs11.so - -session required pam_loginuid.so --session optional pam_systemd.so -session optional pam_keyinit.so revoke -session required pam_limits.so -session required pam_unix.so diff --git a/extra/gdm/gdm-vt-allocation-hack.patch b/extra/gdm/gdm-vt-allocation-hack.patch deleted file mode 100644 index 56fa5a151..000000000 --- a/extra/gdm/gdm-vt-allocation-hack.patch +++ /dev/null @@ -1,118 +0,0 @@ -diff --git a/daemon/gdm-server.c b/daemon/gdm-server.c -index 39def47..03488fd 100644 ---- a/daemon/gdm-server.c -+++ b/daemon/gdm-server.c -@@ -33,6 +33,8 @@ - #include <grp.h> - #include <signal.h> - #include <sys/resource.h> -+#include <sys/ioctl.h> -+#include <sys/vt.h> - - #include <glib.h> - #include <glib/gi18n.h> -@@ -150,6 +152,92 @@ _gdm_server_query_ck_for_display_device (GdmServer *server) - return out; - } - -+#ifndef O_NOCTTY -+# define O_NOCTTY 0 -+#endif -+ -+static int -+open_vt (int vtno) -+{ -+ char *vtname; -+ int fd; -+ -+ vtname = g_strdup_printf ("/dev/tty%d", vtno); -+ -+ do { -+ errno = 0; -+ fd = open (vtname, O_RDWR | O_NOCTTY, 0); -+ } while (errno == EINTR); -+ -+ g_free (vtname); -+ return fd; -+} -+ -+static gint -+find_first_probably_free_vt (void) -+{ -+ int fd, fdv; -+ int vtno; -+ unsigned short vtmask; -+ struct vt_stat vtstat; -+ guint v_state; -+ -+ fdv = -1; -+ -+ do { -+ errno = 0; -+ fd = open ("/dev/console", O_WRONLY | O_NOCTTY, 0); -+ } while (errno == EINTR); -+ -+ if (fd >= 0) { -+ if (ioctl (fd, VT_GETSTATE, &vtstat) >= 0) { -+ v_state = vtstat.v_state; -+ } else { -+ close (fd); -+ v_state = 0; -+ fd = -1; -+ } -+ } else { -+ v_state = 0; -+ } -+ -+ if (fd < 0) { -+ do { -+ errno = 0; -+ fd = open ("/dev/console", O_RDONLY | O_NOCTTY, 0); -+ } while (errno == EINTR); -+ -+ if (fd >= 0) { -+ if (ioctl (fd, VT_GETSTATE, &vtstat) >= 0) -+ v_state = vtstat.v_state; -+ } -+ } -+ -+ for (vtno = 7, vtmask = 1 << vtno; vtmask; vtno++, vtmask <<= 1) { -+ /* Is this console in use? */ -+ if (v_state & vtmask) -+ continue; -+ -+ /* No, try to open it */ -+ fdv = open_vt (vtno); -+ if (fdv >= 0) -+ break; -+ -+ /* If we're here, kernel indicated that the console was free, -+ * but we failed to open it. Just go on to higher VTs. */ -+ } -+ -+ if (fdv >= 0) -+ close (fdv); -+ else -+ vtno = -1; -+ -+ if (fd >= 0) -+ close (fd); -+ -+ return vtno; -+} -+ - char * - gdm_server_get_display_device (GdmServer *server) - { -@@ -310,6 +398,11 @@ gdm_server_resolve_command_line (GdmServer *server, - - if (vtarg != NULL && ! gotvtarg) { - argv[len++] = g_strdup (vtarg); -+ } else if (!query_in_arglist && !gotvtarg) { -+ gint vtnum = find_first_probably_free_vt (); -+ -+ if (vtnum > 0) -+ argv [len++] = g_strdup_printf ("vt%d", vtnum); - } - - argv[len++] = NULL; diff --git a/extra/gdm/gdm-welcome.pam b/extra/gdm/gdm-welcome.pam deleted file mode 100644 index cc3811c19..000000000 --- a/extra/gdm/gdm-welcome.pam +++ /dev/null @@ -1,12 +0,0 @@ -#%PAM-1.0 -auth required pam_env.so -auth required pam_permit.so - -account required pam_nologin.so -account required pam_unix.so - -password required pam_deny.so - -session required pam_loginuid.so --session optional pam_systemd.so -session optional pam_keyinit.so force revoke diff --git a/extra/gdm/gdm.pam b/extra/gdm/gdm.pam deleted file mode 100644 index 655299cb7..000000000 --- a/extra/gdm/gdm.pam +++ /dev/null @@ -1,10 +0,0 @@ -#%PAM-1.0 -auth requisite pam_nologin.so -auth required pam_env.so -auth required pam_unix.so -auth optional pam_gnome_keyring.so -account required pam_unix.so -session required pam_limits.so -session required pam_unix.so -session optional pam_gnome_keyring.so auto_start -password required pam_unix.so diff --git a/extra/gdm/gdm.service b/extra/gdm/gdm.service deleted file mode 100644 index 0125934d6..000000000 --- a/extra/gdm/gdm.service +++ /dev/null @@ -1,10 +0,0 @@ -[Unit] -Description=Gnome Display Manager -After=systemd-user-sessions.service - -[Service] -ExecStart=/usr/sbin/gdm -nodaemon -Restart=always - -[Install] -Alias=display-manager.service |