Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=xfcetesting.git;a=commitdiff;h=b77b8d7ee8f0f8b847ef697d343137143c0d043a
commit b77b8d7ee8f0f8b847ef697d343137143c0d043a Author: Baste <[email protected]> Date: Thu Oct 18 15:02:54 2012 +0200 gdm-3.6.1-2-x86_64 * Fix pam * Enable gdm.service diff --git a/source/gnome/gdm/FrugalBuild b/source/gnome/gdm/FrugalBuild index 3daa15d..f71ba81 100644 --- a/source/gnome/gdm/FrugalBuild +++ b/source/gnome/gdm/FrugalBuild @@ -4,29 +4,28 @@ pkgname=gdm pkgver=3.6.1 -pkgrel=1 +pkgrel=2 pkgdesc="GNOME Display Manager" url="http://www.gnome.org/" backup=(etc/gdm/custom.conf etc/pam.d/gdm etc/pam.d/gdm-autologin \ - etc/pam.d/gdm-welcome etc/pam.d/gdm-password) + etc/pam.d/gdm-welcome etc/pam.d/gdm-password etc/pam.d/gdm-launch-environment) depends=('dbus-glib' 'accountsservice' 'nss' 'xorg-server' 'libxrandr' 'gtk+3' \ 'libcanberra-gtk' 'pam' 'upower' 'libxklavier' 'polkit-gnome' 'gnome-session' 'systemd') makedepends=('intltool' 'gnome-doc-utils' 'gobject-introspection' 'dconf' 'gnome-settings-daemon' 'itstool') groups=('gnome' 'gnome-minimal') archs=('i686' 'x86_64') +#nofakeroot for recreate glib schema (use dbus...) +#will see for don't use nofakeroot +options=('nofakeroot' 'scriptlet' 'force') _F_gnome_git="n" _F_gnome_ext=".tar.xz" Finclude gnome -#source=($source org.gnome.login-screen.gschema.override gdmshell.patch) source=($source org.gnome.login-screen.gschema.override) sha1sums=('06d4732adce9a96db9213ba5252f57939da84a9b' \ '974832a3878a020c87a833f5ba99a0c7d5d27b57') if [ "$_F_gnome_git" != "n" ]; then unset sha1sums fi -#nofakeroot for recreate glib schema (use dbus...) -#will see for don't use nofakeroot -options=('nofakeroot' 'scriptlet' 'force') conflicts=('fast-user-switch-applet') provides=('fast-user-switch-applet' 'gdm-themes' 'somatic-gdm-themes' 'arc-colors-gdm-themes') @@ -45,22 +44,73 @@ build() { --with-lang-file=/etc/locale.conf \ --enable-more-warnings \ --enable-debug \ - --with-default-pam-config=exherbo \ --without-console-kit \ --with-initial-vt=12 -x# --disable-scrollkeeper \ -# --with-console-kit Fmakeinstall - chmod a+r $Fdestdir/var/lib/gdm || Fdie #chown root:root $Fdestdir/var/lib/gdm || Fdie #Fmkdir var/spool/gdm chmod 1770 $Fdestdir/var/log/gdm || Fdie -# add logo to shell greeter -Fcp ../org.gnome.login-screen.gschema.override usr/share/glib-2.0/schemas/ -# gets rebuilt in posttrans -Frm etc/dconf/db/gdm + # add logo to shell greeter + Fcp ../org.gnome.login-screen.gschema.override usr/share/glib-2.0/schemas/ + # gets rebuilt in posttrans + Frm etc/dconf/db/gdm + #delete PAM default rules + Frm etc/pam.d/* + +cat > $Fdestdir/etc/pam.d/gdm-autologin << "EOF" +#%PAM-1.0 +auth requisite pam_nologin.so +auth required pam_env.so +auth required pam_permit.so +account required pam_unix.so +password required pam_unix.so +session required pam_limits.so +session required pam_unix.so +session required pam_systemd.so +EOF + +cat > $Fdestdir/etc/pam.d/gdm-launch-environment << "EOF" +#%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 +EOF + +cat > $Fdestdir/etc/pam.d/gdm-password << "EOF" +#%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 +EOF + } # optimization OK diff --git a/source/gnome/gdm/gdm.install b/source/gnome/gdm/gdm.install index 7bb3dfb..4d9f60b 100644 --- a/source/gnome/gdm/gdm.install +++ b/source/gnome/gdm/gdm.install @@ -1,3 +1,5 @@ +systemd_units=(gdm=e) + UpdateIconCache() { if [ -f /usr/bin/gtk-update-icon-cache ] @@ -19,8 +21,12 @@ UpdateIconCache() fi fi } + post_install() { + local unit + local op + /usr/sbin/useradd -M -u 42 -d /var/lib/gdm -s /sbin/nologin -r gdm > /dev/null 2>&1 /usr/sbin/usermod -d /var/lib/gdm -s /sbin/nologin gdm >/dev/null 2>&1 # ignore errors, as we can't disambiguate between gdm already existe @@ -34,6 +40,18 @@ post_install() UpdateIconCache glib-compile-schemas /usr/share/glib-2.0/schemas dconf update + + for i in ${systemd_units[@]}; do + unit=$(echo $i | cut -f 1 -d '=') + op=$(echo $i | cut -f 2 -d '=') + if echo $op | grep -q 'e'; then + systemctl enable $unit.service >/dev/null 2>&1 + fi + if echo $op | grep -q 's'; then + systemctl start $unit.service >/dev/null 2>&1 + fi + done + } post_upgrade() @@ -41,6 +59,18 @@ post_upgrade() post_install } + +pre_remove() +{ + local unit + + for i in ${systemd_units[@]}; do + unit=$(echo $i | cut -f 1 -d '=') + systemctl --no-reload disable $unit.service >/dev/null 2>&1 + systemctl stop $unit.service >/dev/null 2>&1 + done +} + post_remove() { echo -n "updating scrollkeeper catalogue... " @@ -48,6 +78,8 @@ post_remove() echo "done." dconf update UpdateIconCache + systemctl daemon-reload >/dev/null 2>&1 + } op=$1 _______________________________________________ Frugalware-git mailing list [email protected] http://frugalware.org/mailman/listinfo/frugalware-git
