This commit is contained in:
commit
4a357dfffb
23
.gitattributes
vendored
Normal file
23
.gitattributes
vendored
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
## Default LFS
|
||||||
|
*.7z filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.bsp filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.bz2 filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.gem filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.gz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.jar filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.lz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.lzma filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.obscpio filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.oxt filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.pdf filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.png filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.rpm filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.tbz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.tbz2 filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.tgz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.ttf filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.txz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.whl filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.xz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.zip filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.zst filter=lfs diff=lfs merge=lfs -text
|
1
.gitignore
vendored
Normal file
1
.gitignore
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
.osc
|
306
SuSEconfig.gdm
Normal file
306
SuSEconfig.gdm
Normal file
@ -0,0 +1,306 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
#
|
||||||
|
# Copyright (c) 2004-2006 SuSE
|
||||||
|
# Author: Stanislav Brabec <sbrabec@suse.cz>
|
||||||
|
|
||||||
|
type -p awk &> /dev/null || {
|
||||||
|
echo "${0##*/}: No awk in PATH ... skipping"
|
||||||
|
exit 0
|
||||||
|
}
|
||||||
|
type -p cmp &> /dev/null || {
|
||||||
|
echo "${0##*/}: No cmp in PATH ... skipping"
|
||||||
|
exit 0
|
||||||
|
}
|
||||||
|
|
||||||
|
# Read old values. We will need one for correct updating of
|
||||||
|
if test -f $r/etc/opt/gnome/gdm/gdm_sysconfig.conf ; then
|
||||||
|
. $r/etc/opt/gnome/gdm/gdm_sysconfig.conf
|
||||||
|
fi
|
||||||
|
export OLD_DISPLAYMANAGER_AUTOLOGIN="$DISPLAYMANAGER_AUTOLOGIN"
|
||||||
|
|
||||||
|
r=$ROOT
|
||||||
|
# Set default values. (This overwrites all variables from gdm_sysconfig.conf.)
|
||||||
|
DISPLAYMANAGER_REMOTE_ACCESS="no"
|
||||||
|
DISPLAYMANAGER_ROOT_LOGIN_REMOTE="no"
|
||||||
|
DISPLAYMANAGER_STARTS_XSERVER="yes"
|
||||||
|
DISPLAYMANAGER_XSERVER_TCP_PORT_6000_OPEN="no"
|
||||||
|
DISPLAYMANAGER_AUTOLOGIN=""
|
||||||
|
DISPLAYMANAGER_PASSWORD_LESS_LOGIN="no"
|
||||||
|
DISPLAYMANAGER_AD_INTEGRATION="no"
|
||||||
|
DISPLAYMANAGER_SHUTDOWN=""
|
||||||
|
test -f $r/etc/sysconfig/displaymanager || {
|
||||||
|
echo "${0##*/}: No $r/etc/sysconfig/displaymanager found."
|
||||||
|
exit 1
|
||||||
|
}
|
||||||
|
. $r/etc/sysconfig/displaymanager
|
||||||
|
|
||||||
|
test -f $r/etc/sysconfig/security || {
|
||||||
|
echo "${0##*/}: No $r/etc/sysconfig/security found."
|
||||||
|
exit 1
|
||||||
|
}
|
||||||
|
. $r/etc/sysconfig/security
|
||||||
|
|
||||||
|
test -f $r/lib/YaST/SuSEconfig.functions || {
|
||||||
|
echo "${0##*/}: ERROR - can not find $r"'/lib/YaST/SuSEconfig.functions!!'
|
||||||
|
echo "${0##*/}: This should not happen. Exit..."
|
||||||
|
exit 1
|
||||||
|
}
|
||||||
|
. $r/lib/YaST/SuSEconfig.functions
|
||||||
|
|
||||||
|
GDM_IS_RUNNING=false
|
||||||
|
if test -z "$r" ; then
|
||||||
|
if test "$DISPLAYMANAGER" = gdm ; then
|
||||||
|
if /etc/init.d/xdm status >/dev/null ; then
|
||||||
|
GDM_IS_RUNNING=false
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Write new set of monitore variables.
|
||||||
|
echo -en "# custom.conf was last time updated with following sysconfig:\\nDISPLAYMANAGER_REMOTE_ACCESS=\"$DISPLAYMANAGER_REMOTE_ACCESS\"\\nDISPLAYMANAGER_ROOT_LOGIN_REMOTE=\"$DISPLAYMANAGER_ROOT_LOGIN_REMOTE\"\\nDISPLAYMANAGER_STARTS_XSERVER=\"$DISPLAYMANAGER_STARTS_XSERVER\"\\nDISPLAYMANAGER_XSERVER_TCP_PORT_6000_OPEN=\"$DISPLAYMANAGER_XSERVER_TCP_PORT_6000_OPEN\"\\nDISPLAYMANAGER_AUTOLOGIN=\"$DISPLAYMANAGER_AUTOLOGIN\"\\nDISPLAYMANAGER_PASSWORD_LESS_LOGIN=\"$DISPLAYMANAGER_PASSWORD_LESS_LOGIN\"\\nDISPLAYMANAGER_AD_INTEGRATION=\"$DISPLAYMANAGER_AD_INTEGRATION\"\\nDISPLAYMANAGER_SHUTDOWN=\"$DISPLAYMANAGER_SHUTDOWN\"\\nPERMISSION_SECURITY=\"$PERMISSION_SECURITY\"\\n" >$r/etc/opt/gnome/gdm/gdm_sysconfig.conf.new
|
||||||
|
|
||||||
|
# Are there any changes in monitored variables?
|
||||||
|
if cmp -s 2>/dev/null $r/etc/opt/gnome/gdm/gdm_sysconfig.conf $r/etc/opt/gnome/gdm/gdm_sysconfig.conf.new ; then
|
||||||
|
rm $r/etc/opt/gnome/gdm/gdm_sysconfig.conf.new
|
||||||
|
exit
|
||||||
|
fi
|
||||||
|
|
||||||
|
function sysconfig_yesno_to_gdm {
|
||||||
|
eval local suseval=\$$1
|
||||||
|
case "$suseval" in
|
||||||
|
yes )
|
||||||
|
export $2=true
|
||||||
|
;;
|
||||||
|
* )
|
||||||
|
export $2=false
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
export comment_$2="displaymanager:$1"
|
||||||
|
}
|
||||||
|
|
||||||
|
sysconfig_yesno_to_gdm DISPLAYMANAGER_REMOTE_ACCESS xdmcp_Enable
|
||||||
|
|
||||||
|
sysconfig_yesno_to_gdm DISPLAYMANAGER_ROOT_LOGIN_REMOTE security_AllowRemoteRoot
|
||||||
|
|
||||||
|
export comment_servers_0="displaymanager:DISPLAYMANAGER_STARTS_XSERVER"
|
||||||
|
case "$DISPLAYMANAGER_STARTS_XSERVER" in
|
||||||
|
"yes" )
|
||||||
|
export servers_0=@SKIP@
|
||||||
|
;;
|
||||||
|
* )
|
||||||
|
export servers_0=inactive
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
sysconfig_yesno_to_gdm DISPLAYMANAGER_XSERVER_TCP_PORT_6000_OPEN security_DisallowTCP
|
||||||
|
|
||||||
|
sysconfig_yesno_to_gdm DISPLAYMANAGER_AD_INTEGRATION greeter_ShowDomain
|
||||||
|
|
||||||
|
export comment_daemon_AutomaticLoginEnable="displaymanager:DISPLAYMANAGER_AUTOLOGIN"
|
||||||
|
export comment_daemon_AutomaticLogin="displaymanager:DISPLAYMANAGER_AUTOLOGIN"
|
||||||
|
case "$DISPLAYMANAGER_AUTOLOGIN" in
|
||||||
|
"" )
|
||||||
|
export daemon_AutomaticLoginEnable=false
|
||||||
|
export daemon_AutomaticLogin=@SKIP@
|
||||||
|
;;
|
||||||
|
* )
|
||||||
|
export daemon_AutomaticLoginEnable=true
|
||||||
|
export daemon_AutomaticLogin="$DISPLAYMANAGER_AUTOLOGIN"
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
export comment_greeter_AllowShutdown="displaymanager:DISPLAYMANAGER_SHUTDOWN"
|
||||||
|
export comment_greeter_SecureShutdown="displaymanager:DISPLAYMANAGER_SHUTDOWN"
|
||||||
|
case "$DISPLAYMANAGER_SHUTDOWN" in
|
||||||
|
root )
|
||||||
|
export greeter_AllowShutdown=true
|
||||||
|
export greeter_SecureShutdown=true
|
||||||
|
;;
|
||||||
|
# Remote users can never shutdown in GDM.
|
||||||
|
none )
|
||||||
|
export greeter_AllowShutdown=false
|
||||||
|
export greeter_SecureShutdown=true
|
||||||
|
;;
|
||||||
|
all )
|
||||||
|
export greeter_AllowShutdown=true
|
||||||
|
export greeter_SecureShutdown=false
|
||||||
|
;;
|
||||||
|
auto | * )
|
||||||
|
export comment_greeter_AllowShutdown="displaymanager:DISPLAYMANAGER_SHUTDOWN, security:PERMISSION_SECURITY"
|
||||||
|
export comment_greeter_SecureShutdown="displaymanager:DISPLAYMANAGER_SHUTDOWN, security:PERMISSION_SECURITY"
|
||||||
|
export comment_security_AllowRemoteRoot="displaymanager:DISPLAYMANAGER_ROOT_LOGIN_REMOTE,DISPLAYMANAGER_SHUTDOWN, security:PERMISSION_SECURITY"
|
||||||
|
case "$PERMISSION_SECURITY" in
|
||||||
|
paranoid )
|
||||||
|
export greeter_AllowShutdown=true
|
||||||
|
export greeter_SecureShutdown=true
|
||||||
|
export security_AllowRemoteRoot=false
|
||||||
|
;;
|
||||||
|
"easy local" )
|
||||||
|
export greeter_AllowShutdown=true
|
||||||
|
export greeter_SecureShutdown=false
|
||||||
|
;;
|
||||||
|
* )
|
||||||
|
export greeter_AllowShutdown=true
|
||||||
|
export greeter_SecureShutdown=true
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
|
||||||
|
unset unset ${!last_of_*} ${!custom_conf_*}
|
||||||
|
|
||||||
|
# Parse configuration file and record all items to environment values.
|
||||||
|
eval "$(
|
||||||
|
awk <$r/etc/opt/gnome/gdm/custom.conf '
|
||||||
|
BEGIN {
|
||||||
|
section="BEGIN";
|
||||||
|
section_last_line=0;
|
||||||
|
after_empty_line=0;
|
||||||
|
}
|
||||||
|
|
||||||
|
# Do not set last_of_ initial comments of a new section.
|
||||||
|
/^#/ {
|
||||||
|
if (after_empty_line == 0)
|
||||||
|
section_last_line=NR;
|
||||||
|
else
|
||||||
|
next;
|
||||||
|
}
|
||||||
|
|
||||||
|
/^\[.*\]/ {
|
||||||
|
print "export last_of_"section"="section_last_line;
|
||||||
|
section=$0;
|
||||||
|
gsub ("[][]", "", section);
|
||||||
|
section_last_line=NR;
|
||||||
|
after_empty_line=0;
|
||||||
|
next;
|
||||||
|
}
|
||||||
|
|
||||||
|
/^[a-zA-Z0-9_]*=/ {
|
||||||
|
item=$0;
|
||||||
|
gsub ("=.*", "", item);
|
||||||
|
value=$0;
|
||||||
|
gsub ("^[a-zA-Z0-9_]*=", "", value);
|
||||||
|
gsub ("'\''", "'\''\\'\'''\''", value);
|
||||||
|
section_last_line=NR;
|
||||||
|
after_empty_line=0;
|
||||||
|
print "export custom_conf_"section"_"item"_seen=true";
|
||||||
|
# print "export custom_conf_"section"_"item"='\''"value"'\''";
|
||||||
|
next;
|
||||||
|
}
|
||||||
|
|
||||||
|
# Do not set last_of_ for empty lines - we want to add missing stuff before the final empty line.
|
||||||
|
/^$/ {
|
||||||
|
after_empty_line=1;
|
||||||
|
next;
|
||||||
|
}
|
||||||
|
|
||||||
|
/.*/ {
|
||||||
|
section_last_line=NR;
|
||||||
|
after_empty_line=0;
|
||||||
|
}
|
||||||
|
|
||||||
|
END {
|
||||||
|
print "export last_of_"section"="section_last_line;
|
||||||
|
}
|
||||||
|
'
|
||||||
|
)"
|
||||||
|
|
||||||
|
# And now set what is required.
|
||||||
|
awk <$r/etc/opt/gnome/gdm/custom.conf >$r/etc/opt/gnome/gdm/custom.conf.new '
|
||||||
|
# Prepare array from variable.
|
||||||
|
function gdm_prepare_var(var) {
|
||||||
|
gdm_conf_var[var]=ENVIRON[var];
|
||||||
|
}
|
||||||
|
|
||||||
|
# Update configuration from gdm_conf_var array.
|
||||||
|
function update_item(section, item) {
|
||||||
|
if (gdm_conf_var[section"_"item] != "@SKIP@") {
|
||||||
|
print "# SuSEconfig: "ENVIRON["comment_"section"_"item];
|
||||||
|
print item"="gdm_conf_var[section"_"item];
|
||||||
|
if (ENVIRON["GDM_IS_RUNNING"] == "true")
|
||||||
|
# FIXME: If gdm is running and no session is active, command is executed too early.
|
||||||
|
system("$r/opt/gnome/bin/gdmflexiserver --command=\"UPDATE_CONFIG "section"/"item"\"")
|
||||||
|
return "DONE";
|
||||||
|
} else
|
||||||
|
return "KEEP_ORIG";
|
||||||
|
}
|
||||||
|
|
||||||
|
function process_unseen() {
|
||||||
|
# Print all items not seen in the section.
|
||||||
|
if (ENVIRON["last_of_"section] == NR)
|
||||||
|
for (item in gdm_conf_var) {
|
||||||
|
item_section = item;
|
||||||
|
gsub ("_.*", "", item_section);
|
||||||
|
gsub ("[^_]*_", "", item);
|
||||||
|
if (item_section == section && ENVIRON["custom_conf_"section"_"item"_seen"] != "true")
|
||||||
|
update_item(section, item);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
BEGIN {
|
||||||
|
section="BEGIN";
|
||||||
|
gdm_prepare_var("daemon_AutomaticLoginEnable");
|
||||||
|
gdm_prepare_var("daemon_AutomaticLogin");
|
||||||
|
gdm_prepare_var("security_AllowRemoteRoot");
|
||||||
|
gdm_prepare_var("security_DisallowTCP");
|
||||||
|
gdm_prepare_var("xdmcp_Enable");
|
||||||
|
gdm_prepare_var("greeter_AllowShutdown");
|
||||||
|
gdm_prepare_var("greeter_SecureShutdown");
|
||||||
|
gdm_prepare_var("greeter_ShowDomain");
|
||||||
|
gdm_prepare_var("servers_0");
|
||||||
|
}
|
||||||
|
|
||||||
|
# Remove invalid entry created by SuSEconfig.gdm in SuSE Linux 10.2.
|
||||||
|
/^enable=/ {
|
||||||
|
if (section == "xdmcp") {
|
||||||
|
# Remove old gdm_sysconfig.conf to force update of custom.conf.
|
||||||
|
system("rm -f $r/etc/opt/gnome/gdm/gdm_sysconfig.conf");
|
||||||
|
process_unseen();
|
||||||
|
next;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/^# SuSEconfig:/ {
|
||||||
|
process_unseen();
|
||||||
|
next;
|
||||||
|
}
|
||||||
|
|
||||||
|
/^\[.*\]/ {
|
||||||
|
section=$0;
|
||||||
|
gsub ("[][]", "", section);
|
||||||
|
print;
|
||||||
|
process_unseen();
|
||||||
|
next;
|
||||||
|
}
|
||||||
|
|
||||||
|
/^[a-zA-Z0-9_]*=/ {
|
||||||
|
item=$0;
|
||||||
|
gsub ("=.*", "", item);
|
||||||
|
value=$0;
|
||||||
|
gsub ("^[a-zA-Z0-9_]*=", "", value);
|
||||||
|
# Update value of item.
|
||||||
|
if (section"_"item in gdm_conf_var) {
|
||||||
|
if (update_item(section, item) == "KEEP_ORIG")
|
||||||
|
# This is actually used only for daemon_AutomaticLogin and servers_0:
|
||||||
|
if (item == "servers_0") {
|
||||||
|
if (value != "inactive")
|
||||||
|
print;
|
||||||
|
} else {
|
||||||
|
if (value != ENVIRON["OLD_DISPLAYMANAGER_AUTOLOGIN"])
|
||||||
|
print;
|
||||||
|
}
|
||||||
|
} else
|
||||||
|
print;
|
||||||
|
process_unseen();
|
||||||
|
next;
|
||||||
|
}
|
||||||
|
|
||||||
|
/.*/ {
|
||||||
|
print;
|
||||||
|
process_unseen();
|
||||||
|
next;
|
||||||
|
}
|
||||||
|
'
|
||||||
|
mv $r/etc/opt/gnome/gdm/custom.conf.new $r/etc/opt/gnome/gdm/custom.conf
|
||||||
|
mv $r/etc/opt/gnome/gdm/gdm_sysconfig.conf.new $r/etc/opt/gnome/gdm/gdm_sysconfig.conf
|
3
gdm-2.16.1.tar.bz2
Normal file
3
gdm-2.16.1.tar.bz2
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:9733a12aacf6995dc630daf108c357c5d906fdda30de05cd9b5c26a83cf3d5f6
|
||||||
|
size 3130299
|
15
gdm-2.8.0.0-any-hostname-auth.patch
Normal file
15
gdm-2.8.0.0-any-hostname-auth.patch
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
--- gdm-2.16.1/daemon/slave.c
|
||||||
|
+++ gdm-2.16.1/daemon/slave.c
|
||||||
|
@@ -3438,6 +3438,12 @@
|
||||||
|
g_setenv ("SHELL", pwent->pw_shell, TRUE);
|
||||||
|
g_unsetenv ("MAIL"); /* Unset $MAIL for broken shells */
|
||||||
|
|
||||||
|
+ if (d->hostname != NULL && d->hostname [0] != '\0') {
|
||||||
|
+ ve_setenv ("XAUTHLOCALHOSTNAME", d->hostname, TRUE);
|
||||||
|
+ } else {
|
||||||
|
+ ve_setenv ("XAUTHLOCALHOSTNAME", "localhost.localdomain", TRUE);
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
if (d->type == TYPE_STATIC) {
|
||||||
|
g_setenv ("GDM_XSERVER_LOCATION", "local", TRUE);
|
||||||
|
} else if (d->type == TYPE_XDMCP) {
|
11
gdm-2.8.0.0-list-users.patch
Normal file
11
gdm-2.8.0.0-list-users.patch
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
--- gdm-2.16.1/config/gdm.conf.in
|
||||||
|
+++ gdm-2.16.1/config/gdm.conf.in
|
||||||
|
@@ -362,7 +362,7 @@
|
||||||
|
# large numbers of users and this feature should not be used in such
|
||||||
|
# environments. The setting of IncludeAll does nothing if Include is set to a
|
||||||
|
# non-empty value.
|
||||||
|
-#IncludeAll=false
|
||||||
|
+IncludeAll=true
|
||||||
|
# If user or user.png exists in this dir it will be used as his picture.
|
||||||
|
#GlobalFaceDir=@datadir@/pixmaps/faces/
|
||||||
|
|
65
gdm-2.8.0.0-setup-no-flicker.patch
Normal file
65
gdm-2.8.0.0-setup-no-flicker.patch
Normal file
@ -0,0 +1,65 @@
|
|||||||
|
diff -upr gdm-2.16.1-pre/gui/gdmsetup.c gdm-2.16.1-post/gui/gdmsetup.c
|
||||||
|
--- gdm-2.16.1-pre/gui/gdmsetup.c 2006-09-27 17:02:46.000000000 -0500
|
||||||
|
+++ gdm-2.16.1-post/gui/gdmsetup.c 2006-11-07 18:27:08.000000000 -0600
|
||||||
|
@@ -60,6 +60,8 @@ static gboolean GdmAllowRoot;
|
||||||
|
static gboolean GdmAllowRemoteRoot;
|
||||||
|
static gboolean GdmUserChangesUnsaved;
|
||||||
|
|
||||||
|
+#define LONG_TIMEOUT G_MAXINT
|
||||||
|
+
|
||||||
|
/* set the DOING_GDM_DEVELOPMENT env variable if you want to
|
||||||
|
* search for the glade file in the current dir and not the system
|
||||||
|
* install dir, better then something you have to change
|
||||||
|
@@ -1069,7 +1071,7 @@ combobox_timeout (GtkWidget *combo_box)
|
||||||
|
static void
|
||||||
|
toggle_toggled (GtkWidget *toggle)
|
||||||
|
{
|
||||||
|
- run_timeout (toggle, 200, toggle_timeout);
|
||||||
|
+ run_timeout (toggle, LONG_TIMEOUT, toggle_timeout);
|
||||||
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
@@ -1097,13 +1099,13 @@ list_selection_toggled (GtkWidget *toggl
|
||||||
|
gtk_widget_set_sensitive (widget, FALSE);
|
||||||
|
}
|
||||||
|
|
||||||
|
- run_timeout (toggle, 200, toggle_timeout);
|
||||||
|
+ run_timeout (toggle, LONG_TIMEOUT, toggle_timeout);
|
||||||
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
intspin_changed (GtkWidget *spin)
|
||||||
|
{
|
||||||
|
- run_timeout (spin, 500, intspin_timeout);
|
||||||
|
+ run_timeout (spin, LONG_TIMEOUT, intspin_timeout);
|
||||||
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
@@ -1668,6 +1670,9 @@ setup_intspin (const char *name,
|
||||||
|
g_object_set_data_full (G_OBJECT (spin),
|
||||||
|
"key", g_strdup (key),
|
||||||
|
(GDestroyNotify) g_free);
|
||||||
|
+ g_object_set_data_full (G_OBJECT (toggle),
|
||||||
|
+ "notify_key", g_strdup (key),
|
||||||
|
+ (GDestroyNotify) g_free);
|
||||||
|
|
||||||
|
gtk_spin_button_set_value (GTK_SPIN_BUTTON (spin), val);
|
||||||
|
|
||||||
|
@@ -2252,7 +2257,7 @@ greeter_toggle_timeout (GtkWidget *toggl
|
||||||
|
static void
|
||||||
|
greeter_toggle_toggled (GtkWidget *toggle)
|
||||||
|
{
|
||||||
|
- run_timeout (toggle, 500, greeter_toggle_timeout);
|
||||||
|
+ run_timeout (toggle, LONG_TIMEOUT, greeter_toggle_timeout);
|
||||||
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
@@ -2595,7 +2600,7 @@ greeter_entry_untranslate_timeout (GtkWi
|
||||||
|
static void
|
||||||
|
greeter_entry_untranslate_changed (GtkWidget *entry)
|
||||||
|
{
|
||||||
|
- run_timeout (entry, 500, greeter_entry_untranslate_timeout);
|
||||||
|
+ run_timeout (entry, LONG_TIMEOUT, greeter_entry_untranslate_timeout);
|
||||||
|
}
|
||||||
|
|
||||||
|
static void
|
223
gdm-2.8.0.7-bg-4.patch
Normal file
223
gdm-2.8.0.7-bg-4.patch
Normal file
@ -0,0 +1,223 @@
|
|||||||
|
--- gdm-2.16.1/gui/greeter/greeter.c
|
||||||
|
+++ gdm-2.16.1/gui/greeter/greeter.c
|
||||||
|
@@ -1025,6 +1025,7 @@
|
||||||
|
const char *gdm_gtk_theme;
|
||||||
|
guint sid;
|
||||||
|
int r;
|
||||||
|
+ GdkColor black = { 0, 0, 0, 0 };
|
||||||
|
|
||||||
|
if (g_getenv ("DOING_GDM_DEVELOPMENT") != NULL)
|
||||||
|
DOING_GDM_DEVELOPMENT = TRUE;
|
||||||
|
@@ -1123,6 +1124,7 @@
|
||||||
|
}
|
||||||
|
|
||||||
|
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
|
||||||
|
+ gtk_widget_modify_bg (window, GTK_STATE_NORMAL, &black);
|
||||||
|
|
||||||
|
if G_UNLIKELY (DOING_GDM_DEVELOPMENT) {
|
||||||
|
g_signal_connect (G_OBJECT (window), "key_press_event",
|
||||||
|
@@ -1139,6 +1141,7 @@
|
||||||
|
gtk_window_set_default_size (GTK_WINDOW (window),
|
||||||
|
gdm_wm_screen.width,
|
||||||
|
gdm_wm_screen.height);
|
||||||
|
+ gtk_widget_modify_bg (canvas, GTK_STATE_NORMAL, &black);
|
||||||
|
gtk_container_add (GTK_CONTAINER (window), canvas);
|
||||||
|
|
||||||
|
/*
|
||||||
|
--- gdm-2.16.1/gui/greeter/greeter_canvas_item.c
|
||||||
|
+++ gdm-2.16.1/gui/greeter/greeter_canvas_item.c
|
||||||
|
@@ -24,6 +24,12 @@
|
||||||
|
#include <glib/gi18n.h>
|
||||||
|
#include <librsvg/rsvg.h>
|
||||||
|
|
||||||
|
+#include <gdk/gdk.h>
|
||||||
|
+#include <gdk/gdkx.h>
|
||||||
|
+
|
||||||
|
+#include <X11/Xlib.h>
|
||||||
|
+#include <X11/Xatom.h>
|
||||||
|
+
|
||||||
|
#include "gdm.h"
|
||||||
|
#include "gdmcommon.h"
|
||||||
|
#include "gdmconfig.h"
|
||||||
|
@@ -249,6 +255,127 @@
|
||||||
|
gtk_widget_grab_focus (entry);
|
||||||
|
}
|
||||||
|
|
||||||
|
+/* Create a persistent pixmap. We create a separate display
|
||||||
|
+ * and set the closedown mode on it to RetainPermanent
|
||||||
|
+ */
|
||||||
|
+static GdkPixmap *
|
||||||
|
+make_root_pixmap (GdkScreen *screen, gint width, gint height)
|
||||||
|
+{
|
||||||
|
+ Display *display;
|
||||||
|
+ char *display_name;
|
||||||
|
+ Pixmap result;
|
||||||
|
+ GdkPixmap *gdk_pixmap;
|
||||||
|
+ int screen_num;
|
||||||
|
+
|
||||||
|
+ screen_num = gdk_screen_get_number (screen);
|
||||||
|
+
|
||||||
|
+ gdk_flush ();
|
||||||
|
+
|
||||||
|
+ display_name = DisplayString (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()));
|
||||||
|
+
|
||||||
|
+ display = XOpenDisplay (display_name);
|
||||||
|
+
|
||||||
|
+ if (display == NULL) {
|
||||||
|
+ g_warning ("Unable to open display '%s' when setting background pixmap\n",
|
||||||
|
+ (display_name) ? display_name : "NULL");
|
||||||
|
+ return NULL;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ XSetCloseDownMode (display, RetainPermanent);
|
||||||
|
+
|
||||||
|
+ result = XCreatePixmap (display,
|
||||||
|
+ RootWindow (display, screen_num),
|
||||||
|
+ width, height,
|
||||||
|
+ DefaultDepth (display, screen_num));
|
||||||
|
+
|
||||||
|
+ XCloseDisplay (display);
|
||||||
|
+
|
||||||
|
+ gdk_pixmap = gdk_pixmap_foreign_new (result);
|
||||||
|
+ gdk_drawable_set_colormap (GDK_DRAWABLE (gdk_pixmap),
|
||||||
|
+ gdk_drawable_get_colormap (gdk_screen_get_root_window (screen)));
|
||||||
|
+
|
||||||
|
+ return gdk_pixmap;
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+/* Set the root pixmap, and properties pointing to it. We
|
||||||
|
+ * do this atomically with XGrabServer to make sure that
|
||||||
|
+ * we won't leak the pixmap if somebody else it setting
|
||||||
|
+ * it at the same time. (This assumes that they follow the
|
||||||
|
+ * same conventions we do)
|
||||||
|
+ */
|
||||||
|
+static gboolean
|
||||||
|
+set_root_pixmap (GdkPixmap *pixmap)
|
||||||
|
+{
|
||||||
|
+ Atom type;
|
||||||
|
+ gulong nitems, bytes_after;
|
||||||
|
+ gint format;
|
||||||
|
+ guchar *data_esetroot;
|
||||||
|
+ Pixmap pixmap_id;
|
||||||
|
+ Display *display;
|
||||||
|
+ GdkScreen *screen;
|
||||||
|
+ int screen_num;
|
||||||
|
+
|
||||||
|
+ screen = (GdkScreen *) g_object_get_data (G_OBJECT (pixmap),
|
||||||
|
+ "gdkscreen");
|
||||||
|
+
|
||||||
|
+ screen_num = gdk_screen_get_number (screen);
|
||||||
|
+
|
||||||
|
+ if (pixmap != NULL)
|
||||||
|
+ pixmap_id = GDK_WINDOW_XWINDOW (pixmap);
|
||||||
|
+ else
|
||||||
|
+ pixmap_id = 0;
|
||||||
|
+
|
||||||
|
+ display = GDK_DISPLAY_XDISPLAY (gdk_display_get_default ());
|
||||||
|
+
|
||||||
|
+ XGrabServer (display);
|
||||||
|
+
|
||||||
|
+ XGetWindowProperty (display, RootWindow (display, screen_num),
|
||||||
|
+ XInternAtom (display, "ESETROOT_PMAP_ID", False),
|
||||||
|
+ 0L, 1L, False, XA_PIXMAP,
|
||||||
|
+ &type, &format, &nitems, &bytes_after,
|
||||||
|
+ &data_esetroot);
|
||||||
|
+
|
||||||
|
+ if (type == XA_PIXMAP) {
|
||||||
|
+ if (format == 32 && nitems == 1) {
|
||||||
|
+ Pixmap old_pixmap;
|
||||||
|
+
|
||||||
|
+ old_pixmap = *((Pixmap *) data_esetroot);
|
||||||
|
+
|
||||||
|
+ if (pixmap != NULL && old_pixmap != pixmap_id)
|
||||||
|
+ XKillClient (display, old_pixmap);
|
||||||
|
+ else if (pixmap == NULL)
|
||||||
|
+ pixmap_id = old_pixmap;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ XFree (data_esetroot);
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ if (pixmap != NULL) {
|
||||||
|
+ XChangeProperty (display, RootWindow (display, screen_num),
|
||||||
|
+ XInternAtom (display, "ESETROOT_PMAP_ID", FALSE),
|
||||||
|
+ XA_PIXMAP, 32, PropModeReplace,
|
||||||
|
+ (guchar *) &pixmap_id, 1);
|
||||||
|
+ XChangeProperty (display, RootWindow (display, screen_num),
|
||||||
|
+ XInternAtom (display, "_XROOTPMAP_ID", FALSE),
|
||||||
|
+ XA_PIXMAP, 32, PropModeReplace,
|
||||||
|
+ (guchar *) &pixmap_id, 1);
|
||||||
|
+
|
||||||
|
+ XSetWindowBackgroundPixmap (display, RootWindow (display, screen_num),
|
||||||
|
+ pixmap_id);
|
||||||
|
+ } else if (pixmap == NULL) {
|
||||||
|
+ XDeleteProperty (display, RootWindow (display, screen_num),
|
||||||
|
+ XInternAtom (display, "ESETROOT_PMAP_ID", FALSE));
|
||||||
|
+ XDeleteProperty (display, RootWindow (display, screen_num),
|
||||||
|
+ XInternAtom (display, "_XROOTPMAP_ID", FALSE));
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ XClearWindow (display, RootWindow (display, screen_num));
|
||||||
|
+ XUngrabServer (display);
|
||||||
|
+ XFlush (display);
|
||||||
|
+
|
||||||
|
+ return FALSE;
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
void
|
||||||
|
greeter_item_create_canvas_item (GreeterItemInfo *item)
|
||||||
|
{
|
||||||
|
@@ -346,12 +473,53 @@
|
||||||
|
}
|
||||||
|
|
||||||
|
if (item->data.pixmap.pixbufs[GREETER_ITEM_STATE_NORMAL] != NULL)
|
||||||
|
+ {
|
||||||
|
+ static int bg_set = 1; /* disabled */
|
||||||
|
+
|
||||||
|
item->item = gnome_canvas_item_new (group,
|
||||||
|
GNOME_TYPE_CANVAS_PIXBUF,
|
||||||
|
"x", (gdouble) x1,
|
||||||
|
"y", (gdouble) y1,
|
||||||
|
"pixbuf", item->data.pixmap.pixbufs[GREETER_ITEM_STATE_NORMAL],
|
||||||
|
NULL);
|
||||||
|
+
|
||||||
|
+ if (!bg_set)
|
||||||
|
+ {
|
||||||
|
+ GdkPixmap *pixmap;
|
||||||
|
+ GdkPixbuf *pixbuf;
|
||||||
|
+ GdkScreen *screen;
|
||||||
|
+ GdkGC *gc;
|
||||||
|
+ gint width, height;
|
||||||
|
+
|
||||||
|
+ screen = gtk_widget_get_screen (GTK_WIDGET (canvas));
|
||||||
|
+
|
||||||
|
+ pixbuf = item->data.pixmap.pixbufs[GREETER_ITEM_STATE_NORMAL];
|
||||||
|
+
|
||||||
|
+ width = gdk_pixbuf_get_width (pixbuf);
|
||||||
|
+ height = gdk_pixbuf_get_height (pixbuf);
|
||||||
|
+
|
||||||
|
+ pixmap = make_root_pixmap (screen, width, height);
|
||||||
|
+
|
||||||
|
+ gc = gdk_gc_new (GDK_DRAWABLE (pixmap));
|
||||||
|
+
|
||||||
|
+ gdk_draw_pixbuf (GDK_DRAWABLE (pixmap),
|
||||||
|
+ gc,
|
||||||
|
+ pixbuf,
|
||||||
|
+ 0, 0, 0, 0,
|
||||||
|
+ width,
|
||||||
|
+ height,
|
||||||
|
+ GDK_RGB_DITHER_NORMAL,
|
||||||
|
+ 0, 0);
|
||||||
|
+
|
||||||
|
+ g_object_set_data (G_OBJECT (pixmap), "gdkscreen", screen);
|
||||||
|
+
|
||||||
|
+ g_timeout_add (1000, set_root_pixmap, pixmap);
|
||||||
|
+
|
||||||
|
+ g_object_unref (gc);
|
||||||
|
+
|
||||||
|
+ bg_set = 1;
|
||||||
|
+ }
|
||||||
|
+ }
|
||||||
|
break;
|
||||||
|
case GREETER_ITEM_TYPE_LABEL:
|
||||||
|
text = gdm_common_expand_text (item->data.text.orig_text);
|
975
gdm-2.8.0.7-domain-entry.patch
Normal file
975
gdm-2.8.0.7-domain-entry.patch
Normal file
@ -0,0 +1,975 @@
|
|||||||
|
diff -upr gdm-2.16.1-pre/config/gdm.conf.in gdm-2.16.1-post/config/gdm.conf.in
|
||||||
|
--- gdm-2.16.1-pre/config/gdm.conf.in 2006-11-08 00:02:48.000000000 -0600
|
||||||
|
+++ gdm-2.16.1-post/config/gdm.conf.in 2006-11-08 00:02:57.000000000 -0600
|
||||||
|
@@ -498,6 +498,9 @@ SoundOnLogin=false
|
||||||
|
# list of libraries, one per line, and load each library in the file.
|
||||||
|
PreFetchProgram=@GDMPREFETCHCMD@
|
||||||
|
|
||||||
|
+# Set to true to show the domain login GUI elements.
|
||||||
|
+#ShowDomain=false
|
||||||
|
+
|
||||||
|
# The chooser is what's displayed when a user wants an indirect XDMCP session,
|
||||||
|
# or selects Run XDMCP chooser from the system menu
|
||||||
|
[chooser]
|
||||||
|
diff -upr gdm-2.16.1-pre/config/gdm.conf.in.orig gdm-2.16.1-post/config/gdm.conf.in.orig
|
||||||
|
--- gdm-2.16.1-pre/config/gdm.conf.in.orig 2006-08-03 12:36:26.000000000 -0500
|
||||||
|
+++ gdm-2.16.1-post/config/gdm.conf.in.orig 2006-11-08 00:02:57.000000000 -0600
|
||||||
|
@@ -67,11 +67,11 @@ TimedLoginDelay=30
|
||||||
|
|
||||||
|
# The greeter for local (non-xdmcp) logins. Change gdmlogin to gdmgreeter to
|
||||||
|
# get the new graphical greeter.
|
||||||
|
-#Greeter=@libexecdir@/gdmlogin
|
||||||
|
+Greeter=@libexecdir@/gdmgreeter
|
||||||
|
|
||||||
|
# The greeter for xdmcp logins, usually you want a less graphically intensive
|
||||||
|
# greeter here so it's better to leave this with gdmlogin
|
||||||
|
-#RemoteGreeter=@libexecdir@/gdmlogin
|
||||||
|
+RemoteGreeter=@libexecdir@/gdmgreeter
|
||||||
|
|
||||||
|
# Launch the greeter with an additional list of colon separated GTK+ modules.
|
||||||
|
# This is useful for enabling additional feature support e.g. GNOME
|
||||||
|
@@ -85,10 +85,12 @@ TimedLoginDelay=30
|
||||||
|
# This value will be overridden with the value from /etc/default/login if it
|
||||||
|
# contains "ROOT=<pathvalue>".
|
||||||
|
#DefaultPath=@GDM_USER_PATH@
|
||||||
|
+DefaultPath=/usr/local/bin:/usr/bin:/usr/X11R6/bin:/bin:/var/lib/dosemu:/usr/games:/opt/bin:/opt/gnome/bin:/opt/kde3/bin:/opt/kde2/bin:/opt/kde/bin:/usr/openwin/bin:/opt/cross/bin
|
||||||
|
# Default path for root. The profile scripts will likely override this value.
|
||||||
|
# This value will be overridden with the value from /etc/default/login if it
|
||||||
|
# contains "SUROOT=<pathvalue>".
|
||||||
|
#RootPath=/sbin:/usr/sbin:@GDM_USER_PATH@
|
||||||
|
+RootPath=/usr/local/bin:/usr/bin:/usr/X11R6/bin:/bin:/usr/local/bin:/usr/bin:/usr/X11R6/bin:/bin:/var/lib/dosemu:/usr/games:/opt/bin:/opt/gnome/bin:/opt/kde3/bin:/opt/kde2/bin:/opt/kde/bin:/usr/openwin/bin:/opt/cross/bin
|
||||||
|
|
||||||
|
# If you are having trouble with using a single server for a long time and want
|
||||||
|
# GDM to kill/restart the server, turn this on. On Solaris, this value is
|
||||||
|
@@ -127,6 +129,9 @@ XKeepsCrashing=@gdmconfdir@/XKeepsCrashi
|
||||||
|
#RebootCommand=@REBOOT_COMMAND@
|
||||||
|
#HaltCommand=@HALT_COMMAND@
|
||||||
|
#SuspendCommand=@SUSPEND_COMMAND@
|
||||||
|
+RebootCommand=/sbin/shutdown -r now
|
||||||
|
+HaltCommand=/sbin/shutdown -h now
|
||||||
|
+SuspendCommand=/usr/bin/powersave --suspend-to-disk
|
||||||
|
# Probably should not touch the below this is the standard setup.
|
||||||
|
ServAuthDir=@authdir@
|
||||||
|
# This is our standard startup script. A bit different from a normal X
|
||||||
|
@@ -137,7 +142,7 @@ BaseXsession=@gdmconfdir@/Xsession
|
||||||
|
# really a PATH style variable since 2.4.4.2 to allow actual interoperability
|
||||||
|
# with KDM. Note that <dmconfdir>/Sessions is there for backwards
|
||||||
|
# compatibility reasons with 2.4.4.x.
|
||||||
|
-#SessionDesktopDir=/etc/X11/sessions/:@dmconfdir@/Sessions/:@datadir@/gdm/BuiltInSessions/:@datadir@/xsessions/
|
||||||
|
+SessionDesktopDir=/usr/share/xsessions/:@EXPANDED_SYSCONFDIR@/dm/Sessions/:@EXPANDED_DATADIR@/gdm/BuiltInSessions/
|
||||||
|
# This is the default .desktop session. One of the ones in SessionDesktopDir
|
||||||
|
#DefaultSession=gnome.desktop
|
||||||
|
# Better leave this blank and HOME will be used. You can use syntax ~/ below
|
||||||
|
@@ -220,7 +225,7 @@ RelaxPermissions=0
|
||||||
|
# example, home directories owned by some other user.
|
||||||
|
CheckDirOwner=true
|
||||||
|
# Number of seconds to wait after a failed login
|
||||||
|
-#RetryDelay=1
|
||||||
|
+RetryDelay=1
|
||||||
|
# Maximum size of a file we wish to read. This makes it hard for a user to DoS
|
||||||
|
# us by using a large file.
|
||||||
|
#UserMaxFile=65536
|
||||||
|
@@ -281,17 +286,18 @@ Enable=false
|
||||||
|
#PingIntervalSeconds=15
|
||||||
|
# The port. 177 is the standard port so better keep it that way.
|
||||||
|
#Port=177
|
||||||
|
-# Willing script, none is shipped and by default we'll send hostname system id.
|
||||||
|
-# But if you supply something here, the output of this script will be sent as
|
||||||
|
-# status of this host so that the chooser can display it. You could for
|
||||||
|
-# example send load, or mail details for some user, or some such.
|
||||||
|
-#Willing=@gdmconfdir@/Xwilling
|
||||||
|
+#Willing script, none is shipped, X11's one is used by default. If
|
||||||
|
+# none is present we'll send hostname system id. But if you supply
|
||||||
|
+# something here, the output of this script will be sent as status of
|
||||||
|
+# this host so that the chooser can display it. You could for example
|
||||||
|
+# send load, or mail details for some user, or some such.
|
||||||
|
+Willing=/etc/X11/xdm/Xwilling
|
||||||
|
|
||||||
|
[gui]
|
||||||
|
# The specific gtkrc file we use. It should be the full path to the gtkrc that
|
||||||
|
# we need. Unless you need a specific gtkrc that doesn't correspond to a
|
||||||
|
# specific theme, then just use the GtkTheme key.
|
||||||
|
-#GtkRC=@datadir@/themes/Default/gtk-2.0/gtkrc
|
||||||
|
+GtkRC=@datadir@/themes/Industrial/gtk-2.0/gtkrc
|
||||||
|
|
||||||
|
# The GTK+ theme to use for the GUI.
|
||||||
|
#GtkTheme=Default
|
||||||
|
@@ -318,7 +324,7 @@ Enable=false
|
||||||
|
#TitleBar=true
|
||||||
|
# Don't allow user to move the standard login window. Only makes sense if
|
||||||
|
# TitleBar is on.
|
||||||
|
-#LockPosition=false
|
||||||
|
+LockPosition=true
|
||||||
|
# Set a position for the standard login window rather then just centering the
|
||||||
|
# window. If you enter negative values for the position it is taken as an
|
||||||
|
# offset from the right or bottom edge.
|
||||||
|
@@ -339,7 +345,7 @@ Browser=false
|
||||||
|
# User ID's less than the MinimalUID value will not be included in the face
|
||||||
|
# browser or in the gdmselection list for Automatic/Timed login. They will not
|
||||||
|
# be displayed regardless of the settings for Include and Exclude.
|
||||||
|
-#MinimalUID=100
|
||||||
|
+MinimalUID=500
|
||||||
|
# Users listed in Include will be included in the face browser and in the
|
||||||
|
# gdmsetup selection list for Automatic/Timed login. Users should be separated
|
||||||
|
# by commas.
|
||||||
|
@@ -356,7 +362,7 @@ Browser=false
|
||||||
|
# large numbers of users and this feature should not be used in such
|
||||||
|
# environments. The setting of IncludeAll does nothing if Include is set to a
|
||||||
|
# non-empty value.
|
||||||
|
-#IncludeAll=false
|
||||||
|
+IncludeAll=true
|
||||||
|
# If user or user.png exists in this dir it will be used as his picture.
|
||||||
|
#GlobalFaceDir=@datadir@/pixmaps/faces/
|
||||||
|
|
||||||
|
@@ -370,7 +376,7 @@ Browser=false
|
||||||
|
#ChooserButtonLogo=@pixmapdir@/gdm-foot-logo.png
|
||||||
|
# The standard greeter should shake if a user entered the wrong username or
|
||||||
|
# password. Kind of cool looking
|
||||||
|
-#Quiver=true
|
||||||
|
+Quiver=false
|
||||||
|
|
||||||
|
# The Actions menu (formerly system menu) is shown in the greeter, this is the
|
||||||
|
# menu that contains reboot, shutdown, suspend, config and chooser. None of
|
||||||
|
@@ -407,12 +413,12 @@ DefaultRemoteWelcome=true
|
||||||
|
# Background settings for the standard greeter:
|
||||||
|
# Type can be 0=None, 1=Image & Color, 2=Color, 3=Image
|
||||||
|
#BackgroundType=2
|
||||||
|
-#BackgroundImage=
|
||||||
|
+BackgroundImage=0
|
||||||
|
#BackgroundScaleToFit=true
|
||||||
|
# The Standard greeter (gdmlogin) uses BackgroundColor as the background
|
||||||
|
# color, while the themed greeter (gdmgreeter) uses GraphicalThemedColor
|
||||||
|
# as the background color.
|
||||||
|
-BackgroundColor=#76848F
|
||||||
|
+BackgroundColor=#000000
|
||||||
|
GraphicalThemedColor=#76848F
|
||||||
|
# XDMCP session should only get a color, this is the sanest setting since you
|
||||||
|
# don't want to take up too much bandwidth
|
||||||
|
@@ -454,7 +460,7 @@ GraphicalThemedColor=#76848F
|
||||||
|
# list then provide a list that is delimited by /: to the GraphicalThemes
|
||||||
|
# key and set GraphicalThemeRand to true. Otherwise use GraphicalTheme
|
||||||
|
# and specify just one theme.
|
||||||
|
-#GraphicalTheme=circles
|
||||||
|
+GraphicalTheme=GDM-SuSE
|
||||||
|
#GraphicalThemes=circles/:happygnome
|
||||||
|
GraphicalThemeDir=@datadir@/gdm/themes/
|
||||||
|
GraphicalThemeRand=false
|
||||||
|
@@ -471,6 +477,7 @@ GraphicalThemeRand=false
|
||||||
|
# executable (see daemon/SoundProgram) it will play that file instead of just
|
||||||
|
# beeping.
|
||||||
|
#SoundOnLogin=true
|
||||||
|
+SoundOnLogin=false
|
||||||
|
#SoundOnLoginFile=
|
||||||
|
# If SoundOnLoginSuccess, then the greeter will play a sound (as above) when a
|
||||||
|
# user successfully logs in.
|
||||||
|
@@ -558,7 +565,7 @@ Gestures=false
|
||||||
|
# Definition of the standard X server.
|
||||||
|
[server-Standard]
|
||||||
|
name=Standard server
|
||||||
|
-command=@X_SERVER@ @X_CONFIG_OPTIONS@ @XEVIE_OPTION@
|
||||||
|
+command=@X_SERVER@ @X_CONFIG_OPTIONS@ @XEVIE_OPTION@ -br
|
||||||
|
flexible=true
|
||||||
|
# Indicates that the X server should be started at a different process
|
||||||
|
# priority. Values can be any integer value accepted by the setpriority C
|
||||||
|
diff -upr gdm-2.16.1-pre/configure.ac gdm-2.16.1-post/configure.ac
|
||||||
|
--- gdm-2.16.1-pre/configure.ac 2006-11-08 00:02:48.000000000 -0600
|
||||||
|
+++ gdm-2.16.1-post/configure.ac 2006-11-08 00:02:57.000000000 -0600
|
||||||
|
@@ -844,6 +844,9 @@ AC_SUBST(GDMPREFETCH)
|
||||||
|
AC_SUBST(GDMPREFETCHLIST)
|
||||||
|
AC_SUBST(GDMPREFETCHCMD)
|
||||||
|
|
||||||
|
+GDM_SCRATCH_DIR="${localstatedir}/gdm"
|
||||||
|
+AC_DEFINE_UNQUOTED(GDM_SCRATCH_DIR, "$GDM_SCRATCH_DIR", [GDM scratch dir])
|
||||||
|
+
|
||||||
|
AC_ARG_ENABLE(secureremote,
|
||||||
|
[ --enable-secureremote=[yes/no] Enable to offer a secure X connection through ssh [default=no]],,
|
||||||
|
enable_secureremote=no)
|
||||||
|
diff -upr gdm-2.16.1-pre/daemon/gdmconfig.c gdm-2.16.1-post/daemon/gdmconfig.c
|
||||||
|
--- gdm-2.16.1-pre/daemon/gdmconfig.c 2006-07-17 13:43:51.000000000 -0500
|
||||||
|
+++ gdm-2.16.1-post/daemon/gdmconfig.c 2006-11-08 00:04:46.000000000 -0600
|
||||||
|
@@ -231,6 +231,7 @@ static gint GdmFlexiReapDelayMinutes;
|
||||||
|
static gint GdmBackgroundProgramInitialDelay = 30;
|
||||||
|
static gint GdmBackgroundProgramRestartDelay = 30;
|
||||||
|
|
||||||
|
+static gboolean GdmShowDomain;
|
||||||
|
static gboolean GdmAllowGtkThemeChange;
|
||||||
|
static gboolean GdmTitleBar;
|
||||||
|
static gboolean GdmIncludeAll;
|
||||||
|
@@ -348,6 +349,7 @@ gdm_config_init (void)
|
||||||
|
realkey_hash = g_hash_table_new (g_str_hash, g_str_equal);
|
||||||
|
|
||||||
|
/* boolean values */
|
||||||
|
+ gdm_config_add_hash (GDM_KEY_SHOW_DOMAIN, &GdmShowDomain, &bool_type);
|
||||||
|
gdm_config_add_hash (GDM_KEY_ALLOW_REMOTE_ROOT, &GdmAllowRemoteRoot, &bool_type);
|
||||||
|
gdm_config_add_hash (GDM_KEY_ALLOW_ROOT, &GdmAllowRoot, &bool_type);
|
||||||
|
gdm_config_add_hash (GDM_KEY_ALLOW_REMOTE_AUTOLOGIN,
|
||||||
|
diff -upr gdm-2.16.1-pre/daemon/gdm.h gdm-2.16.1-post/daemon/gdm.h
|
||||||
|
--- gdm-2.16.1-pre/daemon/gdm.h 2006-08-23 22:47:43.000000000 -0500
|
||||||
|
+++ gdm-2.16.1-post/daemon/gdm.h 2006-11-08 00:02:57.000000000 -0600
|
||||||
|
@@ -384,6 +384,8 @@ enum {
|
||||||
|
#define GDM_KEY_GRAPHICAL_THEME_DIR "greeter/GraphicalThemeDir=" DATADIR "/gdm/themes/"
|
||||||
|
#define GDM_KEY_GRAPHICAL_THEMED_COLOR "greeter/GraphicalThemedColor=#76848F"
|
||||||
|
|
||||||
|
+#define GDM_KEY_SHOW_DOMAIN "greeter/ShowDomain=false"
|
||||||
|
+
|
||||||
|
#define GDM_KEY_INFO_MSG_FILE "greeter/InfoMsgFile="
|
||||||
|
#define GDM_KEY_INFO_MSG_FONT "greeter/InfoMsgFont="
|
||||||
|
|
||||||
|
@@ -725,6 +727,7 @@ void gdm_final_cleanup (void);
|
||||||
|
#define GDM_NOTIFY_TIMED_LOGIN_DELAY "TimedLoginDelay" /* <seconds> */
|
||||||
|
#define GDM_NOTIFY_TIMED_LOGIN_ENABLE "TimedLoginEnable" /* <true/false as int> */
|
||||||
|
#define GDM_NOTIFY_DISALLOW_TCP "DisallowTCP" /* <true/false as int> */
|
||||||
|
+#define GDM_NOTIFY_SHOW_DOMAIN "ShowDomain" /* <trye/false as int> */
|
||||||
|
#define GDM_NOTIFY_SOUND_ON_LOGIN_FILE "SoundOnLoginFile" /* <sound file> */
|
||||||
|
#define GDM_NOTIFY_SOUND_ON_LOGIN_SUCCESS_FILE "SoundOnLoginSuccessFile" /* <sound file> */
|
||||||
|
#define GDM_NOTIFY_SOUND_ON_LOGIN_FAILURE_FILE "SoundOnLoginFailureFile" /* <sound file> */
|
||||||
|
diff -upr gdm-2.16.1-pre/daemon/verify-pam.c gdm-2.16.1-post/daemon/verify-pam.c
|
||||||
|
--- gdm-2.16.1-pre/daemon/verify-pam.c 2006-06-09 16:07:41.000000000 -0500
|
||||||
|
+++ gdm-2.16.1-post/daemon/verify-pam.c 2006-11-08 00:02:57.000000000 -0600
|
||||||
|
@@ -57,6 +57,8 @@ static char *tmp_PAM_USER = NULL;
|
||||||
|
|
||||||
|
/* this is another hack */
|
||||||
|
static gboolean did_we_ask_for_password = FALSE;
|
||||||
|
+static gboolean is_account_disabled = FALSE;
|
||||||
|
+static gboolean is_account_expired = FALSE;
|
||||||
|
|
||||||
|
static char *selected_user = NULL;
|
||||||
|
|
||||||
|
@@ -430,6 +432,7 @@ perhaps_translate_message (const char *m
|
||||||
|
g_hash_table_insert (hash, "You are required to change your password immediately (password aged)", _("You are required to change your password immediately (password aged)"));
|
||||||
|
g_hash_table_insert (hash, "You are required to change your password immediately (root enforced)", _("You are required to change your password immediately (root enforced)"));
|
||||||
|
g_hash_table_insert (hash, "Your account has expired; please contact your system administrator", _("Your account has expired; please contact your system administrator"));
|
||||||
|
+ g_hash_table_insert (hash, "Your account is disabled. Please contact your system administrator", _("Your account is disabled. Please contact your system administrator"));
|
||||||
|
g_hash_table_insert (hash, "No password supplied", _("No password supplied"));
|
||||||
|
g_hash_table_insert (hash, "Password unchanged", _("Password unchanged"));
|
||||||
|
g_hash_table_insert (hash, "Can not get username", _("Can not get username"));
|
||||||
|
@@ -502,8 +505,9 @@ gdm_verify_pam_conv (int num_msg, struct
|
||||||
|
|
||||||
|
for (replies = 0; replies < num_msg; replies++) {
|
||||||
|
gboolean islogin = FALSE;
|
||||||
|
- const char *m = msg[replies]->msg;
|
||||||
|
- m = perhaps_translate_message (m);
|
||||||
|
+ const char *m_untranslated = msg[replies]->msg;
|
||||||
|
+ const char *m;
|
||||||
|
+ m = perhaps_translate_message (m_untranslated);
|
||||||
|
|
||||||
|
switch (msg[replies]->msg_style) {
|
||||||
|
|
||||||
|
@@ -589,6 +593,12 @@ gdm_verify_pam_conv (int num_msg, struct
|
||||||
|
|
||||||
|
case PAM_ERROR_MSG:
|
||||||
|
/* PAM sent a message that should displayed to the user */
|
||||||
|
+
|
||||||
|
+ if (strstr (m_untranslated, "account is disabled"))
|
||||||
|
+ is_account_disabled = TRUE;
|
||||||
|
+ else if (strstr (m_untranslated, "account has expired"))
|
||||||
|
+ is_account_expired = TRUE;
|
||||||
|
+
|
||||||
|
gdm_slave_greeter_ctl_no_ret (GDM_ERRDLG, m);
|
||||||
|
reply[replies].resp_retcode = PAM_SUCCESS;
|
||||||
|
reply[replies].resp = NULL;
|
||||||
|
@@ -1125,7 +1135,11 @@ authenticate_again:
|
||||||
|
/* Only give this message if we actually asked for
|
||||||
|
password, otherwise it would be silly to say that
|
||||||
|
the password may have been wrong */
|
||||||
|
- if (did_we_ask_for_password) {
|
||||||
|
+ if (is_account_disabled) {
|
||||||
|
+ basemsg = _("\nYour account has been disabled.");
|
||||||
|
+ } else if (is_account_expired) {
|
||||||
|
+ basemsg = _("\nYour account has expired.");
|
||||||
|
+ } else if (did_we_ask_for_password) {
|
||||||
|
basemsg = _("\nIncorrect username or password. "
|
||||||
|
"Letters must be typed in the correct "
|
||||||
|
"case.");
|
||||||
|
@@ -1134,7 +1148,7 @@ authenticate_again:
|
||||||
|
"Letters must be typed in the correct "
|
||||||
|
"case.");
|
||||||
|
}
|
||||||
|
- if (is_capslock) {
|
||||||
|
+ if (is_capslock && !is_account_disabled && !is_account_expired) {
|
||||||
|
msg = g_strconcat (basemsg, " ",
|
||||||
|
_("Caps Lock is on."),
|
||||||
|
NULL);
|
||||||
|
@@ -1250,6 +1264,8 @@ gdm_verify_setup_user (GdmDisplay *d, co
|
||||||
|
|
||||||
|
/* Start authentication session */
|
||||||
|
did_we_ask_for_password = FALSE;
|
||||||
|
+ is_account_disabled = FALSE;
|
||||||
|
+ is_account_expired = FALSE;
|
||||||
|
if ((pamerr = pam_authenticate (pamh, null_tok)) != PAM_SUCCESS) {
|
||||||
|
if (gdm_slave_action_pending ()) {
|
||||||
|
gdm_error (_("Couldn't authenticate user"));
|
||||||
|
diff -upr gdm-2.16.1-pre/gui/greeter/greeter.c gdm-2.16.1-post/gui/greeter/greeter.c
|
||||||
|
--- gdm-2.16.1-pre/gui/greeter/greeter.c 2006-11-08 00:02:48.000000000 -0600
|
||||||
|
+++ gdm-2.16.1-post/gui/greeter/greeter.c 2006-11-08 00:02:57.000000000 -0600
|
||||||
|
@@ -121,6 +121,53 @@ get_random_theme ()
|
||||||
|
return theme;
|
||||||
|
}
|
||||||
|
|
||||||
|
+static gchar *errdlg_message = NULL;
|
||||||
|
+
|
||||||
|
+static void
|
||||||
|
+show_errdlg_messages (void)
|
||||||
|
+{
|
||||||
|
+ gchar *tmp;
|
||||||
|
+ GtkWidget *dlg;
|
||||||
|
+
|
||||||
|
+ if (!errdlg_message)
|
||||||
|
+ return;
|
||||||
|
+
|
||||||
|
+ /* we should be now fine for focusing new windows */
|
||||||
|
+ gdm_wm_focus_new_windows (TRUE);
|
||||||
|
+
|
||||||
|
+ tmp = ve_locale_to_utf8 (errdlg_message);
|
||||||
|
+ dlg = ve_hig_dialog_new (NULL /* parent */,
|
||||||
|
+ GTK_DIALOG_MODAL /* flags */,
|
||||||
|
+ GTK_MESSAGE_ERROR,
|
||||||
|
+ GTK_BUTTONS_OK,
|
||||||
|
+ tmp,
|
||||||
|
+ "");
|
||||||
|
+ g_free (tmp);
|
||||||
|
+ g_free (errdlg_message);
|
||||||
|
+ errdlg_message = NULL;
|
||||||
|
+
|
||||||
|
+ gdm_wm_center_window (GTK_WINDOW (dlg));
|
||||||
|
+
|
||||||
|
+ gdm_wm_no_login_focus_push ();
|
||||||
|
+ gtk_dialog_run (GTK_DIALOG (dlg));
|
||||||
|
+ gtk_widget_destroy (dlg);
|
||||||
|
+ gdm_wm_no_login_focus_pop ();
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+static void
|
||||||
|
+append_errdlg_message (const gchar *message)
|
||||||
|
+{
|
||||||
|
+ if (errdlg_message) {
|
||||||
|
+ gchar *tmp;
|
||||||
|
+
|
||||||
|
+ tmp = g_strjoin ("\n\n", errdlg_message, message, NULL);
|
||||||
|
+ g_free (errdlg_message);
|
||||||
|
+ errdlg_message = tmp;
|
||||||
|
+ } else {
|
||||||
|
+ errdlg_message = g_strdup (message);
|
||||||
|
+ }
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
static gboolean
|
||||||
|
greeter_ctrl_handler (GIOChannel *source,
|
||||||
|
GIOCondition cond,
|
||||||
|
@@ -184,6 +231,8 @@ process_operation (guchar op_code,
|
||||||
|
break;
|
||||||
|
|
||||||
|
case GDM_PROMPT:
|
||||||
|
+ show_errdlg_messages ();
|
||||||
|
+
|
||||||
|
tmp = ve_locale_to_utf8 (args);
|
||||||
|
if (tmp != NULL && strcmp (tmp, _("Username:")) == 0) {
|
||||||
|
gdm_common_login_sound (gdm_config_get_string (GDM_KEY_SOUND_PROGRAM),
|
||||||
|
@@ -205,6 +254,8 @@ process_operation (guchar op_code,
|
||||||
|
break;
|
||||||
|
|
||||||
|
case GDM_NOECHO:
|
||||||
|
+ show_errdlg_messages ();
|
||||||
|
+
|
||||||
|
tmp = ve_locale_to_utf8 (args);
|
||||||
|
|
||||||
|
if (tmp != NULL && strcmp (tmp, _("Password:")) == 0)
|
||||||
|
@@ -217,6 +268,8 @@ process_operation (guchar op_code,
|
||||||
|
break;
|
||||||
|
|
||||||
|
case GDM_MSG:
|
||||||
|
+ show_errdlg_messages ();
|
||||||
|
+
|
||||||
|
tmp = ve_locale_to_utf8 (args);
|
||||||
|
greeter_item_pam_message (tmp);
|
||||||
|
g_free (tmp);
|
||||||
|
@@ -225,6 +278,8 @@ process_operation (guchar op_code,
|
||||||
|
break;
|
||||||
|
|
||||||
|
case GDM_ERRBOX:
|
||||||
|
+ show_errdlg_messages ();
|
||||||
|
+
|
||||||
|
tmp = ve_locale_to_utf8 (args);
|
||||||
|
greeter_item_pam_error (tmp);
|
||||||
|
g_free (tmp);
|
||||||
|
@@ -234,30 +289,17 @@ process_operation (guchar op_code,
|
||||||
|
break;
|
||||||
|
|
||||||
|
case GDM_ERRDLG:
|
||||||
|
- /* we should be now fine for focusing new windows */
|
||||||
|
- gdm_wm_focus_new_windows (TRUE);
|
||||||
|
-
|
||||||
|
tmp = ve_locale_to_utf8 (args);
|
||||||
|
- dlg = ve_hig_dialog_new (NULL /* parent */,
|
||||||
|
- GTK_DIALOG_MODAL /* flags */,
|
||||||
|
- GTK_MESSAGE_ERROR,
|
||||||
|
- GTK_BUTTONS_OK,
|
||||||
|
- tmp,
|
||||||
|
- "");
|
||||||
|
+ append_errdlg_message (tmp);
|
||||||
|
g_free (tmp);
|
||||||
|
|
||||||
|
- gdm_wm_center_window (GTK_WINDOW (dlg));
|
||||||
|
-
|
||||||
|
- gdm_wm_no_login_focus_push ();
|
||||||
|
- gtk_dialog_run (GTK_DIALOG (dlg));
|
||||||
|
- gtk_widget_destroy (dlg);
|
||||||
|
- gdm_wm_no_login_focus_pop ();
|
||||||
|
-
|
||||||
|
printf ("%c\n", STX);
|
||||||
|
fflush (stdout);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case GDM_SESS:
|
||||||
|
+ show_errdlg_messages ();
|
||||||
|
+
|
||||||
|
tmp = ve_locale_to_utf8 (args);
|
||||||
|
session = gdm_session_lookup (tmp);
|
||||||
|
g_free (tmp);
|
||||||
|
@@ -274,6 +316,8 @@ process_operation (guchar op_code,
|
||||||
|
break;
|
||||||
|
|
||||||
|
case GDM_LANG:
|
||||||
|
+ show_errdlg_messages ();
|
||||||
|
+
|
||||||
|
language = greeter_language_get_language (args);
|
||||||
|
if (greeter_language_get_save_language () == GTK_RESPONSE_CANCEL)
|
||||||
|
printf ("%c%s\n", STX, GDM_RESPONSE_CANCEL);
|
||||||
|
@@ -284,6 +328,8 @@ process_operation (guchar op_code,
|
||||||
|
break;
|
||||||
|
|
||||||
|
case GDM_SSESS:
|
||||||
|
+ show_errdlg_messages ();
|
||||||
|
+
|
||||||
|
if (gdm_get_save_session () == GTK_RESPONSE_YES)
|
||||||
|
printf ("%cY\n", STX);
|
||||||
|
else
|
||||||
|
@@ -293,6 +339,8 @@ process_operation (guchar op_code,
|
||||||
|
break;
|
||||||
|
|
||||||
|
case GDM_SLANG:
|
||||||
|
+ show_errdlg_messages ();
|
||||||
|
+
|
||||||
|
if (greeter_language_get_save_language () == GTK_RESPONSE_YES)
|
||||||
|
printf ("%cY\n", STX);
|
||||||
|
else
|
||||||
|
@@ -325,6 +373,8 @@ process_operation (guchar op_code,
|
||||||
|
break;
|
||||||
|
|
||||||
|
case GDM_QUIT:
|
||||||
|
+ show_errdlg_messages ();
|
||||||
|
+
|
||||||
|
greeter_item_timed_stop ();
|
||||||
|
|
||||||
|
if (require_quarter) {
|
||||||
|
@@ -429,6 +479,8 @@ process_operation (guchar op_code,
|
||||||
|
break;
|
||||||
|
|
||||||
|
case GDM_SAVEDIE:
|
||||||
|
+ show_errdlg_messages ();
|
||||||
|
+
|
||||||
|
/* Set busy cursor */
|
||||||
|
gdm_common_setup_cursor (GDK_WATCH);
|
||||||
|
|
||||||
|
@@ -448,6 +500,8 @@ process_operation (guchar op_code,
|
||||||
|
break;
|
||||||
|
|
||||||
|
default:
|
||||||
|
+ show_errdlg_messages ();
|
||||||
|
+
|
||||||
|
gdm_common_fail_greeter ("Unexpected greeter command received: '%c'", op_code);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
@@ -773,6 +827,7 @@ gdm_read_config (void)
|
||||||
|
gdm_config_get_bool (GDM_KEY_SOUND_ON_LOGIN);
|
||||||
|
gdm_config_get_bool (GDM_KEY_DEFAULT_WELCOME);
|
||||||
|
gdm_config_get_bool (GDM_KEY_DEFAULT_REMOTE_WELCOME);
|
||||||
|
+ gdm_config_get_bool (GDM_KEY_SHOW_DOMAIN);
|
||||||
|
|
||||||
|
/* Keys not to include in reread_config */
|
||||||
|
gdm_config_get_string (GDM_KEY_SESSION_DESKTOP_DIR);
|
||||||
|
@@ -832,7 +887,8 @@ greeter_reread_config (int sig, gpointer
|
||||||
|
gdm_config_reload_bool (GDM_KEY_GRAPHICAL_THEME_RAND) ||
|
||||||
|
gdm_config_reload_bool (GDM_KEY_SHOW_LAST_SESSION) ||
|
||||||
|
gdm_config_reload_bool (GDM_KEY_ALLOW_ROOT) ||
|
||||||
|
- gdm_config_reload_bool (GDM_KEY_ALLOW_REMOTE_ROOT)) {
|
||||||
|
+ gdm_config_reload_bool (GDM_KEY_ALLOW_REMOTE_ROOT) ||
|
||||||
|
+ gdm_config_reload_bool (GDM_KEY_SHOW_DOMAIN)) {
|
||||||
|
|
||||||
|
/* Set busy cursor */
|
||||||
|
gdm_common_setup_cursor (GDK_WATCH);
|
||||||
|
diff -upr gdm-2.16.1-pre/gui/greeter/greeter_canvas_item.c gdm-2.16.1-post/gui/greeter/greeter_canvas_item.c
|
||||||
|
--- gdm-2.16.1-pre/gui/greeter/greeter_canvas_item.c 2006-11-08 00:02:48.000000000 -0600
|
||||||
|
+++ gdm-2.16.1-post/gui/greeter/greeter_canvas_item.c 2006-11-08 00:02:57.000000000 -0600
|
||||||
|
@@ -20,6 +20,8 @@
|
||||||
|
|
||||||
|
#include <math.h>
|
||||||
|
#include <string.h>
|
||||||
|
+#include <unistd.h>
|
||||||
|
+#include <fcntl.h>
|
||||||
|
#include <gtk/gtk.h>
|
||||||
|
#include <glib/gi18n.h>
|
||||||
|
#include <librsvg/rsvg.h>
|
||||||
|
@@ -40,6 +42,10 @@
|
||||||
|
#include "greeter_canvas_item.h"
|
||||||
|
#include "greeter_configuration.h"
|
||||||
|
#include "greeter_canvas_text.h"
|
||||||
|
+#include "greeter_parser.h"
|
||||||
|
+
|
||||||
|
+#define WBINFO_DOMAINS_MAX 64
|
||||||
|
+#define WBINFO_READ_MAX 256
|
||||||
|
|
||||||
|
static void
|
||||||
|
apply_tint (GdkPixbuf *pixbuf, guint32 tint_color)
|
||||||
|
@@ -376,6 +382,189 @@ set_root_pixmap (GdkPixmap *pixmap)
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
|
|
||||||
|
+gboolean greeter_can_do_domain_login = FALSE;
|
||||||
|
+gchar *greeter_domain_separator = NULL;
|
||||||
|
+
|
||||||
|
+gboolean greeter_wbinfo_was_run = FALSE;
|
||||||
|
+gboolean greeter_wbinfo_is_running = FALSE;
|
||||||
|
+GPid greeter_wbinfo_pid;
|
||||||
|
+GIOChannel *greeter_wbinfo_channel;
|
||||||
|
+GString *greeter_wbinfo_output;
|
||||||
|
+
|
||||||
|
+static void
|
||||||
|
+wbinfo_end (void)
|
||||||
|
+{
|
||||||
|
+ GreeterItemInfo *domain_entry_item_info;
|
||||||
|
+ GtkWidget *domain_entry = NULL;
|
||||||
|
+ gint wbinfo_status = 0;
|
||||||
|
+ gchar *wbinfo_output;
|
||||||
|
+ GtkListStore *domain_list_store;
|
||||||
|
+ gchar **tokens = NULL;
|
||||||
|
+ gchar *own_domain = NULL;
|
||||||
|
+ gint select_index = 0;
|
||||||
|
+ GtkTreeIter iter;
|
||||||
|
+ const gchar *text;
|
||||||
|
+ gint i;
|
||||||
|
+
|
||||||
|
+ if (!greeter_wbinfo_is_running)
|
||||||
|
+ return;
|
||||||
|
+
|
||||||
|
+ greeter_wbinfo_is_running = FALSE;
|
||||||
|
+ waitpid (greeter_wbinfo_pid, &wbinfo_status, 0);
|
||||||
|
+ g_spawn_close_pid (greeter_wbinfo_pid);
|
||||||
|
+
|
||||||
|
+ wbinfo_output = g_string_free (greeter_wbinfo_output, FALSE);
|
||||||
|
+
|
||||||
|
+ domain_entry_item_info = greeter_lookup_id ("domain-entry");
|
||||||
|
+ if (domain_entry_item_info && domain_entry_item_info->item &&
|
||||||
|
+ GNOME_IS_CANVAS_WIDGET (domain_entry_item_info->item)) {
|
||||||
|
+ domain_entry = GNOME_CANVAS_WIDGET (domain_entry_item_info->item)->widget;
|
||||||
|
+ } else {
|
||||||
|
+ g_free (wbinfo_output);
|
||||||
|
+ return;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ /* Set up the domain store model */
|
||||||
|
+
|
||||||
|
+ domain_list_store = gtk_list_store_new (1, G_TYPE_STRING);
|
||||||
|
+
|
||||||
|
+ /* The "local login" entry */
|
||||||
|
+
|
||||||
|
+ gtk_list_store_append (domain_list_store, &iter);
|
||||||
|
+ gtk_list_store_set (domain_list_store, &iter,
|
||||||
|
+ 0, _("<Local>"),
|
||||||
|
+ -1);
|
||||||
|
+
|
||||||
|
+ /* Process wbinfo output, if any */
|
||||||
|
+
|
||||||
|
+ if (WEXITSTATUS (wbinfo_status) == 0 && wbinfo_output && *wbinfo_output) {
|
||||||
|
+ /* The first line of output should be the domain separator,
|
||||||
|
+ * and any remaining lines are trusted domains. */
|
||||||
|
+ tokens = g_strsplit_set (wbinfo_output, "\n\r", WBINFO_DOMAINS_MAX + 1);
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ g_free (wbinfo_output);
|
||||||
|
+ g_free (greeter_domain_separator);
|
||||||
|
+ greeter_domain_separator = NULL;
|
||||||
|
+
|
||||||
|
+ if (tokens && tokens [0]) {
|
||||||
|
+ greeter_can_do_domain_login = TRUE;
|
||||||
|
+ greeter_domain_separator = g_strdup (tokens [0]);
|
||||||
|
+
|
||||||
|
+ own_domain = tokens [1];
|
||||||
|
+
|
||||||
|
+ /* Generate a sorted list of domains for the domain selector combo. */
|
||||||
|
+
|
||||||
|
+ g_qsort_with_data (&tokens [1],
|
||||||
|
+ g_strv_length (tokens) - 1,
|
||||||
|
+ sizeof (gchar *),
|
||||||
|
+ (GCompareDataFunc) g_ascii_strcasecmp,
|
||||||
|
+ NULL);
|
||||||
|
+
|
||||||
|
+ for (i = 1; tokens [i]; i++) {
|
||||||
|
+ /* Ensure no blank entries */
|
||||||
|
+ if (!strlen (tokens [i]))
|
||||||
|
+ continue;
|
||||||
|
+
|
||||||
|
+ gtk_list_store_append (domain_list_store, &iter);
|
||||||
|
+ gtk_list_store_set (domain_list_store, &iter,
|
||||||
|
+ 0, tokens [i],
|
||||||
|
+ -1);
|
||||||
|
+
|
||||||
|
+ if (tokens [i] == own_domain)
|
||||||
|
+ select_index = i;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ } else {
|
||||||
|
+ greeter_can_do_domain_login = FALSE;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ if (tokens)
|
||||||
|
+ g_strfreev (tokens);
|
||||||
|
+
|
||||||
|
+ /* Assign model and default selection to widget */
|
||||||
|
+
|
||||||
|
+ gtk_combo_box_set_model (GTK_COMBO_BOX (domain_entry),
|
||||||
|
+ GTK_TREE_MODEL (domain_list_store));
|
||||||
|
+ gtk_combo_box_entry_set_text_column (GTK_COMBO_BOX_ENTRY (domain_entry), 0);
|
||||||
|
+
|
||||||
|
+ /* Default to our own domain, but only if the entry was empty */
|
||||||
|
+ text = gtk_entry_get_text (GTK_ENTRY (gtk_bin_get_child (GTK_BIN (domain_entry))));
|
||||||
|
+ if (!text || !*text)
|
||||||
|
+ gtk_combo_box_set_active (GTK_COMBO_BOX (domain_entry), select_index);
|
||||||
|
+
|
||||||
|
+ g_object_unref (domain_list_store);
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+static gboolean
|
||||||
|
+wbinfo_on_output (GIOChannel *channel, GIOCondition condition, gpointer data)
|
||||||
|
+{
|
||||||
|
+ gchar buf [WBINFO_READ_MAX];
|
||||||
|
+ gsize bytes_read;
|
||||||
|
+ GIOStatus status;
|
||||||
|
+
|
||||||
|
+ status = g_io_channel_read_chars (channel, buf, WBINFO_READ_MAX, &bytes_read, NULL);
|
||||||
|
+
|
||||||
|
+ if (bytes_read < 1) {
|
||||||
|
+ wbinfo_end ();
|
||||||
|
+ return FALSE;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ g_string_append_len (greeter_wbinfo_output, buf, bytes_read);
|
||||||
|
+ return TRUE;
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+static void
|
||||||
|
+wbinfo_begin (void)
|
||||||
|
+{
|
||||||
|
+ gchar *wbinfo_args [] = { "wbinfo", "--separator", "--own-domain", "--trusted-domains", NULL };
|
||||||
|
+ gchar *wbinfo_env [] = { NULL };
|
||||||
|
+ gint wbinfo_stdout_fd;
|
||||||
|
+
|
||||||
|
+ if (greeter_wbinfo_was_run)
|
||||||
|
+ return;
|
||||||
|
+
|
||||||
|
+ greeter_wbinfo_was_run = TRUE;
|
||||||
|
+
|
||||||
|
+ /* Lame guess, in case winbind isn't running, but gets started later. This
|
||||||
|
+ * is a workaround for testing and broken systems. */
|
||||||
|
+ greeter_domain_separator = g_strdup ("\\");
|
||||||
|
+
|
||||||
|
+ if (!g_spawn_async_with_pipes ("/",
|
||||||
|
+ wbinfo_args,
|
||||||
|
+ wbinfo_env,
|
||||||
|
+ G_SPAWN_SEARCH_PATH | G_SPAWN_STDERR_TO_DEV_NULL |
|
||||||
|
+ G_SPAWN_DO_NOT_REAP_CHILD,
|
||||||
|
+ NULL /* child setup function */,
|
||||||
|
+ NULL /* child setup user_data */,
|
||||||
|
+ &greeter_wbinfo_pid,
|
||||||
|
+ NULL /* &wbinfo_stdin_fd */,
|
||||||
|
+ &wbinfo_stdout_fd,
|
||||||
|
+ NULL /* &wbinfo_stderr_fd */,
|
||||||
|
+ NULL))
|
||||||
|
+ return;
|
||||||
|
+
|
||||||
|
+ greeter_wbinfo_is_running = TRUE;
|
||||||
|
+ greeter_wbinfo_output = g_string_new ("");
|
||||||
|
+
|
||||||
|
+ fcntl (wbinfo_stdout_fd, F_SETFL, O_NONBLOCK);
|
||||||
|
+
|
||||||
|
+ greeter_wbinfo_channel = g_io_channel_unix_new (wbinfo_stdout_fd);
|
||||||
|
+ g_io_channel_set_encoding (greeter_wbinfo_channel, NULL, NULL);
|
||||||
|
+ g_io_channel_set_close_on_unref (greeter_wbinfo_channel, TRUE);
|
||||||
|
+ g_io_add_watch (greeter_wbinfo_channel, G_IO_IN | G_IO_HUP, wbinfo_on_output, NULL);
|
||||||
|
+ g_io_channel_unref (greeter_wbinfo_channel); /* Watch holds remaining ref */
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+static gboolean
|
||||||
|
+deselect_entry_text (GtkEntry *entry)
|
||||||
|
+{
|
||||||
|
+ gtk_editable_select_region (GTK_EDITABLE (entry), 0, 0);
|
||||||
|
+ gtk_editable_set_position (GTK_EDITABLE (entry), -1);
|
||||||
|
+
|
||||||
|
+ return FALSE;
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
void
|
||||||
|
greeter_item_create_canvas_item (GreeterItemInfo *item)
|
||||||
|
{
|
||||||
|
@@ -661,6 +850,48 @@ greeter_item_create_canvas_item (Greeter
|
||||||
|
|
||||||
|
break;
|
||||||
|
|
||||||
|
+ case GREETER_ITEM_TYPE_COMBO_BOX_ENTRY:
|
||||||
|
+ entry = gtk_combo_box_entry_new ();
|
||||||
|
+
|
||||||
|
+ gtk_widget_set_name (entry, "domain-entry");
|
||||||
|
+
|
||||||
|
+ gtk_entry_set_has_frame (GTK_ENTRY (gtk_bin_get_child (GTK_BIN (entry))), FALSE);
|
||||||
|
+ gtk_widget_modify_font (entry, item->data.text.fonts[GREETER_ITEM_STATE_NORMAL]);
|
||||||
|
+
|
||||||
|
+ get_gdk_color_from_rgb (&c, item->data.text.colors[GREETER_ITEM_STATE_NORMAL]);
|
||||||
|
+ gtk_widget_modify_text (entry, GTK_STATE_NORMAL, &c);
|
||||||
|
+
|
||||||
|
+ item->item = gnome_canvas_item_new (group,
|
||||||
|
+ GNOME_TYPE_CANVAS_WIDGET,
|
||||||
|
+ "widget", entry,
|
||||||
|
+ "x", x1,
|
||||||
|
+ "y", y1,
|
||||||
|
+ "height", (double)rect.height,
|
||||||
|
+ "width", (double)rect.width,
|
||||||
|
+ NULL);
|
||||||
|
+
|
||||||
|
+ /* cursor blinking is evil on remote displays, don't do it forever */
|
||||||
|
+ gdm_common_setup_blinking_entry (gtk_bin_get_child (GTK_BIN (entry)));
|
||||||
|
+
|
||||||
|
+ /* Recall the last used domain */
|
||||||
|
+ if (g_file_get_contents (GDM_SCRATCH_DIR "/last_domain", &text, NULL, NULL)) {
|
||||||
|
+ GtkWidget *temp_entry;
|
||||||
|
+
|
||||||
|
+ temp_entry = gtk_bin_get_child (GTK_BIN (entry));
|
||||||
|
+
|
||||||
|
+ gtk_entry_set_text (GTK_ENTRY (temp_entry), text);
|
||||||
|
+
|
||||||
|
+ /* The set text gets selected. It looks bad. Avoid that. */
|
||||||
|
+ g_idle_add_full (G_PRIORITY_LOW, (GSourceFunc) deselect_entry_text, temp_entry, NULL);
|
||||||
|
+
|
||||||
|
+ g_free (text);
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ /* Query wbinfo */
|
||||||
|
+ wbinfo_begin ();
|
||||||
|
+
|
||||||
|
+ break;
|
||||||
|
+
|
||||||
|
case GREETER_ITEM_TYPE_LIST:
|
||||||
|
/* Note a list type must be setup later and we will add the list store
|
||||||
|
* to it then, depending on the type. Likely userlist is the
|
||||||
|
Only in gdm-2.16.1-post/gui/greeter: greeter_canvas_item.c.orig
|
||||||
|
diff -upr gdm-2.16.1-pre/gui/greeter/greeter_configuration.h gdm-2.16.1-post/gui/greeter/greeter_configuration.h
|
||||||
|
--- gdm-2.16.1-pre/gui/greeter/greeter_configuration.h 2005-04-18 21:57:56.000000000 -0500
|
||||||
|
+++ gdm-2.16.1-post/gui/greeter/greeter_configuration.h 2006-11-08 00:02:57.000000000 -0600
|
||||||
|
@@ -62,6 +62,7 @@ extern gchar *GdmSoundOnLoginFailureFile
|
||||||
|
extern gboolean GdmSoundOnLoginReady;
|
||||||
|
extern gboolean GdmSoundOnLoginSuccess;
|
||||||
|
extern gboolean GdmSoundOnLoginFailure;
|
||||||
|
+extern gboolean GdmShowDomain;
|
||||||
|
|
||||||
|
extern gboolean GDM_IS_LOCAL;
|
||||||
|
extern gboolean DOING_GDM_DEVELOPMENT;
|
||||||
|
diff -upr gdm-2.16.1-pre/gui/greeter/greeter.h gdm-2.16.1-post/gui/greeter/greeter.h
|
||||||
|
--- gdm-2.16.1-pre/gui/greeter/greeter.h 2005-10-06 16:30:26.000000000 -0500
|
||||||
|
+++ gdm-2.16.1-post/gui/greeter/greeter.h 2006-11-08 00:02:57.000000000 -0600
|
||||||
|
@@ -27,6 +27,9 @@ extern GtkWidget *window;
|
||||||
|
|
||||||
|
extern gboolean greeter_probably_login_prompt;
|
||||||
|
|
||||||
|
+extern gboolean greeter_can_do_domain_login;
|
||||||
|
+extern gchar *greeter_domain_separator;
|
||||||
|
+
|
||||||
|
void greeter_ignore_buttons (gboolean val);
|
||||||
|
|
||||||
|
#endif
|
||||||
|
diff -upr gdm-2.16.1-pre/gui/greeter/greeter_item.c gdm-2.16.1-post/gui/greeter/greeter_item.c
|
||||||
|
--- gdm-2.16.1-pre/gui/greeter/greeter_item.c 2006-04-26 21:10:16.000000000 -0500
|
||||||
|
+++ gdm-2.16.1-post/gui/greeter/greeter_item.c 2006-11-08 00:02:57.000000000 -0600
|
||||||
|
@@ -209,6 +209,10 @@ greeter_item_is_visible (GreeterItemInfo
|
||||||
|
strcmp (info->show_type, "suspend") == 0))
|
||||||
|
return FALSE;
|
||||||
|
|
||||||
|
+ if ( ! gdm_config_get_bool (GDM_KEY_SHOW_DOMAIN) &&
|
||||||
|
+ g_str_has_prefix (info->show_type, "domain"))
|
||||||
|
+ return FALSE;
|
||||||
|
+
|
||||||
|
if (( ! gdm_config_get_bool (GDM_KEY_TIMED_LOGIN_ENABLE) ||
|
||||||
|
ve_string_empty (gdm_config_get_string (GDM_KEY_TIMED_LOGIN))) &&
|
||||||
|
(info->show_type != NULL &&
|
||||||
|
diff -upr gdm-2.16.1-pre/gui/greeter/greeter_item.h gdm-2.16.1-post/gui/greeter/greeter_item.h
|
||||||
|
--- gdm-2.16.1-pre/gui/greeter/greeter_item.h 2006-04-26 21:10:16.000000000 -0500
|
||||||
|
+++ gdm-2.16.1-post/gui/greeter/greeter_item.h 2006-11-08 00:02:57.000000000 -0600
|
||||||
|
@@ -47,7 +47,8 @@ enum _GreeterItemType {
|
||||||
|
GREETER_ITEM_TYPE_LABEL,
|
||||||
|
GREETER_ITEM_TYPE_ENTRY,
|
||||||
|
GREETER_ITEM_TYPE_LIST,
|
||||||
|
- GREETER_ITEM_TYPE_BUTTON
|
||||||
|
+ GREETER_ITEM_TYPE_BUTTON,
|
||||||
|
+ GREETER_ITEM_TYPE_COMBO_BOX_ENTRY
|
||||||
|
};
|
||||||
|
|
||||||
|
/* Make sure to adjust the bitfield in the structure if
|
||||||
|
@@ -147,7 +148,7 @@ struct _GreeterItemInfo {
|
||||||
|
union {
|
||||||
|
/* Note: we want to have alphas, colors and have_color coincide for all types
|
||||||
|
that have it */
|
||||||
|
-#define GREETER_ITEM_TYPE_IS_TEXT(info) ((info)->item_type == GREETER_ITEM_TYPE_LABEL || (info)->item_type == GREETER_ITEM_TYPE_ENTRY)
|
||||||
|
+#define GREETER_ITEM_TYPE_IS_TEXT(info) ((info)->item_type == GREETER_ITEM_TYPE_LABEL || (info)->item_type == GREETER_ITEM_TYPE_ENTRY || (info)->item_type == GREETER_ITEM_TYPE_COMBO_BOX_ENTRY)
|
||||||
|
struct {
|
||||||
|
guint8 alphas[GREETER_ITEM_STATE_MAX];
|
||||||
|
guint32 colors[GREETER_ITEM_STATE_MAX];
|
||||||
|
diff -upr gdm-2.16.1-pre/gui/greeter/greeter_item_pam.c gdm-2.16.1-post/gui/greeter/greeter_item_pam.c
|
||||||
|
--- gdm-2.16.1-pre/gui/greeter/greeter_item_pam.c 2006-06-09 16:07:42.000000000 -0500
|
||||||
|
+++ gdm-2.16.1-post/gui/greeter/greeter_item_pam.c 2006-11-08 00:02:57.000000000 -0600
|
||||||
|
@@ -36,6 +36,7 @@
|
||||||
|
#include "gdm.h"
|
||||||
|
#include "gdmwm.h"
|
||||||
|
#include "gdmcommon.h"
|
||||||
|
+#include "gdmconfig.h"
|
||||||
|
|
||||||
|
static gboolean messages_to_give = FALSE;
|
||||||
|
static gboolean replace_msg = TRUE;
|
||||||
|
@@ -115,11 +116,29 @@ set_text (GreeterItemInfo *info, const c
|
||||||
|
info->item);
|
||||||
|
}
|
||||||
|
|
||||||
|
+static void
|
||||||
|
+domain_entry_set_sensitive (gboolean sensitive)
|
||||||
|
+{
|
||||||
|
+ if (gdm_config_get_bool (GDM_KEY_SHOW_DOMAIN))
|
||||||
|
+ {
|
||||||
|
+ GreeterItemInfo *domain_entry_item_info;
|
||||||
|
+ GtkWidget *domain_entry = NULL;
|
||||||
|
+
|
||||||
|
+ domain_entry_item_info = greeter_lookup_id ("domain-entry");
|
||||||
|
+ if (domain_entry_item_info && domain_entry_item_info->item &&
|
||||||
|
+ GNOME_IS_CANVAS_WIDGET (domain_entry_item_info->item))
|
||||||
|
+ domain_entry = GNOME_CANVAS_WIDGET (domain_entry_item_info->item)->widget;
|
||||||
|
+
|
||||||
|
+ if (domain_entry)
|
||||||
|
+ gtk_widget_set_sensitive (domain_entry, sensitive);
|
||||||
|
+ }
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
void
|
||||||
|
greeter_item_pam_login (GtkEntry *entry, GreeterItemInfo *info)
|
||||||
|
{
|
||||||
|
const char *str;
|
||||||
|
- char *tmp;
|
||||||
|
+ char *tmp, *tmp2;
|
||||||
|
GreeterItemInfo *error_info;
|
||||||
|
|
||||||
|
greeter_ignore_buttons (TRUE);
|
||||||
|
@@ -146,6 +165,7 @@ greeter_item_pam_login (GtkEntry *entry,
|
||||||
|
}
|
||||||
|
|
||||||
|
gtk_widget_set_sensitive (GTK_WIDGET (entry), FALSE);
|
||||||
|
+ domain_entry_set_sensitive (FALSE);
|
||||||
|
|
||||||
|
/* clear the err_box */
|
||||||
|
if (err_box_clear_handler > 0)
|
||||||
|
@@ -160,6 +180,33 @@ greeter_item_pam_login (GtkEntry *entry,
|
||||||
|
}
|
||||||
|
|
||||||
|
tmp = ve_locale_from_utf8 (str);
|
||||||
|
+
|
||||||
|
+ /* Prepend the domain if applicable */
|
||||||
|
+ if (greeter_probably_login_prompt && gdm_config_get_bool (GDM_KEY_SHOW_DOMAIN))
|
||||||
|
+ {
|
||||||
|
+ GreeterItemInfo *domain_entry_item_info;
|
||||||
|
+ GtkWidget *domain_entry = NULL;
|
||||||
|
+
|
||||||
|
+ domain_entry_item_info = greeter_lookup_id ("domain-entry");
|
||||||
|
+ if (domain_entry_item_info && domain_entry_item_info->item &&
|
||||||
|
+ GNOME_IS_CANVAS_WIDGET (domain_entry_item_info->item))
|
||||||
|
+ domain_entry = GNOME_CANVAS_WIDGET (domain_entry_item_info->item)->widget;
|
||||||
|
+
|
||||||
|
+ if (domain_entry && (str = gtk_combo_box_get_active_text (GTK_COMBO_BOX (domain_entry))) && *str &&
|
||||||
|
+ strcmp (str, _("<Local>")))
|
||||||
|
+ {
|
||||||
|
+ g_file_set_contents (GDM_SCRATCH_DIR "/last_domain", str, strlen (str), NULL);
|
||||||
|
+
|
||||||
|
+ tmp2 = g_strdup_printf ("%s%s%s", str, greeter_domain_separator, tmp);
|
||||||
|
+ g_free (tmp);
|
||||||
|
+ tmp = tmp2;
|
||||||
|
+ }
|
||||||
|
+ else
|
||||||
|
+ {
|
||||||
|
+ g_remove (GDM_SCRATCH_DIR "/last_domain");
|
||||||
|
+ }
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
printf ("%c%s\n", STX, tmp);
|
||||||
|
fflush (stdout);
|
||||||
|
g_free (tmp);
|
||||||
|
@@ -213,6 +260,7 @@ greeter_item_pam_setup (void)
|
||||||
|
|
||||||
|
/* initially insensitive */
|
||||||
|
gtk_widget_set_sensitive (entry, FALSE);
|
||||||
|
+ domain_entry_set_sensitive (FALSE);
|
||||||
|
}
|
||||||
|
|
||||||
|
g_signal_connect (entry, "activate",
|
||||||
|
@@ -252,6 +300,9 @@ greeter_item_pam_prompt (const char *mes
|
||||||
|
gtk_entry_set_max_length (GTK_ENTRY (entry), entry_len);
|
||||||
|
gtk_entry_set_text (GTK_ENTRY (entry), "");
|
||||||
|
gtk_widget_grab_focus (entry);
|
||||||
|
+
|
||||||
|
+ /* Domain selector should only be accessed when entering the user name */
|
||||||
|
+ domain_entry_set_sensitive (entry_visible);
|
||||||
|
}
|
||||||
|
|
||||||
|
messages_to_give = FALSE;
|
||||||
|
diff -upr gdm-2.16.1-pre/gui/greeter/greeter_parser.c gdm-2.16.1-post/gui/greeter/greeter_parser.c
|
||||||
|
--- gdm-2.16.1-pre/gui/greeter/greeter_parser.c 2006-08-02 21:32:39.000000000 -0500
|
||||||
|
+++ gdm-2.16.1-post/gui/greeter/greeter_parser.c 2006-11-08 00:02:57.000000000 -0600
|
||||||
|
@@ -394,6 +394,11 @@ parse_stock (xmlNodePtr node,
|
||||||
|
g_free (*translated_text);
|
||||||
|
*translated_text = g_strdup (_("Username:"));
|
||||||
|
}
|
||||||
|
+ else if (g_ascii_strcasecmp ((char *) prop, "domain-label") == 0)
|
||||||
|
+ {
|
||||||
|
+ g_free (*translated_text);
|
||||||
|
+ *translated_text = g_strdup (_("Domain:"));
|
||||||
|
+ }
|
||||||
|
else if (g_ascii_strcasecmp ((char *) prop, "ok") == 0)
|
||||||
|
{
|
||||||
|
g_free (*translated_text);
|
||||||
|
@@ -1552,6 +1557,15 @@ parse_entry (xmlNodePtr node,
|
||||||
|
}
|
||||||
|
|
||||||
|
static gboolean
|
||||||
|
+parse_combo_box_entry (xmlNodePtr node,
|
||||||
|
+ GreeterItemInfo *info,
|
||||||
|
+ GError **error)
|
||||||
|
+{
|
||||||
|
+ /* A ComboBoxEntry is just an Entry with a dropdown list */
|
||||||
|
+ return parse_entry (node, info, error);
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+static gboolean
|
||||||
|
parse_items (xmlNodePtr node,
|
||||||
|
GList **items_out,
|
||||||
|
GreeterItemInfo *parent,
|
||||||
|
@@ -1606,6 +1620,8 @@ parse_items (xmlNodePtr node,
|
||||||
|
item_type = GREETER_ITEM_TYPE_LIST;
|
||||||
|
else if (strcmp ((char *) type, "button") == 0)
|
||||||
|
item_type = GREETER_ITEM_TYPE_BUTTON;
|
||||||
|
+ else if (strcmp ((char *) type, "combo-box-entry") == 0)
|
||||||
|
+ item_type = GREETER_ITEM_TYPE_COMBO_BOX_ENTRY;
|
||||||
|
else
|
||||||
|
{
|
||||||
|
g_set_error (error,
|
||||||
|
@@ -1650,6 +1666,9 @@ parse_items (xmlNodePtr node,
|
||||||
|
case GREETER_ITEM_TYPE_BUTTON:
|
||||||
|
res = parse_gtkbutton (child, info, error);
|
||||||
|
break;
|
||||||
|
+ case GREETER_ITEM_TYPE_COMBO_BOX_ENTRY:
|
||||||
|
+ res = parse_combo_box_entry (child, info, error);
|
||||||
|
+ break;
|
||||||
|
default:
|
||||||
|
g_set_error (error,
|
||||||
|
GREETER_PARSER_ERROR,
|
766
gdm-2.8.0.7-halt-needs-root.patch
Normal file
766
gdm-2.8.0.7-halt-needs-root.patch
Normal file
@ -0,0 +1,766 @@
|
|||||||
|
diff -upr gdm-2.16.1-pre/daemon/gdm.c gdm-2.16.1-post/daemon/gdm.c
|
||||||
|
--- gdm-2.16.1-pre/daemon/gdm.c 2006-09-11 15:36:16.000000000 -0500
|
||||||
|
+++ gdm-2.16.1-post/daemon/gdm.c 2006-11-07 19:19:53.000000000 -0600
|
||||||
|
@@ -2347,6 +2347,9 @@ gdm_handle_message (GdmConnection *conn,
|
||||||
|
return;
|
||||||
|
d = gdm_display_lookup (slave_pid);
|
||||||
|
|
||||||
|
+ if (!gdm_get_value_bool (GDM_KEY_ALLOW_SHUTDOWN))
|
||||||
|
+ return;
|
||||||
|
+
|
||||||
|
gdm_info (_("Master suspending..."));
|
||||||
|
|
||||||
|
sysmenu = gdm_get_value_bool_per_display (d->name, GDM_KEY_SYSTEM_MENU);
|
||||||
|
@@ -3242,21 +3245,24 @@ gdm_handle_user_message (GdmConnection *
|
||||||
|
if (logout_action == GDM_LOGOUT_ACTION_NONE)
|
||||||
|
logout_action = safe_logout_action;
|
||||||
|
|
||||||
|
- if (sysmenu && disp->attached &&
|
||||||
|
+ if (sysmenu && disp->attached && gdm_get_value_bool (GDM_KEY_ALLOW_SHUTDOWN) &&
|
||||||
|
+ !gdm_get_value_bool (GDM_KEY_SECURE_SHUTDOWN) &&
|
||||||
|
! ve_string_empty (gdm_get_value_string (GDM_KEY_HALT))) {
|
||||||
|
g_string_append_printf (msg, "%s%s", sep, GDM_SUP_LOGOUT_ACTION_HALT);
|
||||||
|
if (logout_action == GDM_LOGOUT_ACTION_HALT)
|
||||||
|
g_string_append (msg, "!");
|
||||||
|
sep = ";";
|
||||||
|
}
|
||||||
|
- if (sysmenu && disp->attached &&
|
||||||
|
+ if (sysmenu && disp->attached && gdm_get_value_bool (GDM_KEY_ALLOW_SHUTDOWN) &&
|
||||||
|
+ !gdm_get_value_bool (GDM_KEY_SECURE_SHUTDOWN) &&
|
||||||
|
! ve_string_empty (gdm_get_value_string (GDM_KEY_REBOOT))) {
|
||||||
|
g_string_append_printf (msg, "%s%s", sep, GDM_SUP_LOGOUT_ACTION_REBOOT);
|
||||||
|
if (logout_action == GDM_LOGOUT_ACTION_REBOOT)
|
||||||
|
g_string_append (msg, "!");
|
||||||
|
sep = ";";
|
||||||
|
}
|
||||||
|
- if (sysmenu && disp->attached &&
|
||||||
|
+ if (sysmenu && disp->attached && gdm_get_value_bool (GDM_KEY_ALLOW_SHUTDOWN) &&
|
||||||
|
+ !gdm_get_value_bool (GDM_KEY_SECURE_SHUTDOWN) &&
|
||||||
|
! ve_string_empty (gdm_get_value_string (GDM_KEY_SUSPEND))) {
|
||||||
|
g_string_append_printf (msg, "%s%s", sep, GDM_SUP_LOGOUT_ACTION_SUSPEND);
|
||||||
|
if (logout_action == GDM_LOGOUT_ACTION_SUSPEND)
|
||||||
|
@@ -3292,21 +3298,24 @@ gdm_handle_user_message (GdmConnection *
|
||||||
|
disp->logout_action = GDM_LOGOUT_ACTION_NONE;
|
||||||
|
was_ok = TRUE;
|
||||||
|
} else if (strcmp (action, GDM_SUP_LOGOUT_ACTION_HALT) == 0) {
|
||||||
|
- if (sysmenu && disp->attached &&
|
||||||
|
+ if (sysmenu && disp->attached && gdm_get_value_bool (GDM_KEY_ALLOW_SHUTDOWN) &&
|
||||||
|
+ !gdm_get_value_bool (GDM_KEY_SECURE_SHUTDOWN) &&
|
||||||
|
! ve_string_empty (gdm_get_value_string (GDM_KEY_HALT))) {
|
||||||
|
disp->logout_action =
|
||||||
|
GDM_LOGOUT_ACTION_HALT;
|
||||||
|
was_ok = TRUE;
|
||||||
|
}
|
||||||
|
} else if (strcmp (action, GDM_SUP_LOGOUT_ACTION_REBOOT) == 0) {
|
||||||
|
- if (sysmenu && disp->attached &&
|
||||||
|
+ if (sysmenu && disp->attached && gdm_get_value_bool (GDM_KEY_ALLOW_SHUTDOWN) &&
|
||||||
|
+ !gdm_get_value_bool (GDM_KEY_SECURE_SHUTDOWN) &&
|
||||||
|
! ve_string_empty (gdm_get_value_string (GDM_KEY_REBOOT))) {
|
||||||
|
disp->logout_action =
|
||||||
|
GDM_LOGOUT_ACTION_REBOOT;
|
||||||
|
was_ok = TRUE;
|
||||||
|
}
|
||||||
|
} else if (strcmp (action, GDM_SUP_LOGOUT_ACTION_SUSPEND) == 0) {
|
||||||
|
- if (sysmenu && disp->attached &&
|
||||||
|
+ if (sysmenu && disp->attached && gdm_get_value_bool (GDM_KEY_ALLOW_SHUTDOWN) &&
|
||||||
|
+ !gdm_get_value_bool (GDM_KEY_SECURE_SHUTDOWN) &&
|
||||||
|
! ve_string_empty (gdm_get_value_string (GDM_KEY_SUSPEND))) {
|
||||||
|
disp->logout_action =
|
||||||
|
GDM_LOGOUT_ACTION_SUSPEND;
|
||||||
|
diff -upr gdm-2.16.1-pre/daemon/gdmconfig.c gdm-2.16.1-post/daemon/gdmconfig.c
|
||||||
|
--- gdm-2.16.1-pre/daemon/gdmconfig.c 2006-07-17 13:43:51.000000000 -0500
|
||||||
|
+++ gdm-2.16.1-post/daemon/gdmconfig.c 2006-11-07 23:19:19.000000000 -0600
|
||||||
|
@@ -251,6 +251,8 @@ static gboolean GdmGraphicalThemeRand;
|
||||||
|
static gboolean GdmBroadcast;
|
||||||
|
static gboolean GdmAllowAdd;
|
||||||
|
static gboolean GdmRestartBackgroundProgram;
|
||||||
|
+static gboolean GdmAllowShutdown;
|
||||||
|
+static gboolean GdmSecureShutdown;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* gdm_config_add_hash
|
||||||
|
@@ -418,6 +420,8 @@ gdm_config_init (void)
|
||||||
|
gdm_config_add_hash (GDM_KEY_SOUND_ON_LOGIN, &GdmSoundOnLogin, &bool_type);
|
||||||
|
gdm_config_add_hash (GDM_KEY_RESTART_BACKGROUND_PROGRAM,
|
||||||
|
&GdmRestartBackgroundProgram, &bool_type);
|
||||||
|
+ gdm_config_add_hash (GDM_KEY_ALLOW_SHUTDOWN, &GdmAllowShutdown, &bool_type);
|
||||||
|
+ gdm_config_add_hash (GDM_KEY_SECURE_SHUTDOWN, &GdmSecureShutdown, &bool_type);
|
||||||
|
|
||||||
|
/* string values */
|
||||||
|
gdm_config_add_hash (GDM_KEY_PATH, &GdmPath, &string_type);
|
||||||
|
@@ -1277,6 +1281,10 @@ _gdm_set_value_bool (gchar *key, gboolea
|
||||||
|
notify_displays_int (GDM_NOTIFY_ADD_GTK_MODULES, *setting);
|
||||||
|
else if (is_key (key, GDM_KEY_TIMED_LOGIN_ENABLE))
|
||||||
|
notify_displays_int (GDM_NOTIFY_TIMED_LOGIN_ENABLE, *setting);
|
||||||
|
+ else if (is_key (key, GDM_KEY_ALLOW_SHUTDOWN))
|
||||||
|
+ notify_displays_int (GDM_NOTIFY_ALLOW_SHUTDOWN, *setting);
|
||||||
|
+ else if (is_key (key, GDM_KEY_SECURE_SHUTDOWN))
|
||||||
|
+ notify_displays_int (GDM_NOTIFY_SECURE_SHUTDOWN, *setting);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (*setting)
|
||||||
|
diff -upr gdm-2.16.1-pre/daemon/gdm.h gdm-2.16.1-post/daemon/gdm.h
|
||||||
|
--- gdm-2.16.1-pre/daemon/gdm.h 2006-11-07 18:31:11.000000000 -0600
|
||||||
|
+++ gdm-2.16.1-post/daemon/gdm.h 2006-11-07 20:04:54.000000000 -0600
|
||||||
|
@@ -123,6 +123,8 @@ enum {
|
||||||
|
/* Different login interruptions */
|
||||||
|
#define GDM_INTERRUPT_TIMED_LOGIN 'T'
|
||||||
|
#define GDM_INTERRUPT_CONFIGURE 'C'
|
||||||
|
+#define GDM_INTERRUPT_HALT 'K'
|
||||||
|
+#define GDM_INTERRUPT_REBOOT 'B'
|
||||||
|
#define GDM_INTERRUPT_SUSPEND 'S'
|
||||||
|
#define GDM_INTERRUPT_SELECT_USER 'U'
|
||||||
|
#define GDM_INTERRUPT_LOGIN_SOUND 'L'
|
||||||
|
@@ -418,6 +420,9 @@ enum {
|
||||||
|
#define GDM_KEY_SHOW_XTERM_FAILSAFE "greeter/ShowXtermFailsafeSession=true"
|
||||||
|
#define GDM_KEY_SHOW_LAST_SESSION "greeter/ShowLastSession=true"
|
||||||
|
|
||||||
|
+#define GDM_KEY_ALLOW_SHUTDOWN "security/AllowShutdown=true"
|
||||||
|
+#define GDM_KEY_SECURE_SHUTDOWN "security/SecureShutdown=false"
|
||||||
|
+
|
||||||
|
#define GDM_SESSION_FAILSAFE_GNOME "GDM_Failsafe.GNOME"
|
||||||
|
#define GDM_SESSION_FAILSAFE_XTERM "GDM_Failsafe.XTERM"
|
||||||
|
|
||||||
|
@@ -733,6 +738,8 @@ void gdm_final_cleanup (void);
|
||||||
|
#define GDM_NOTIFY_SOUND_ON_LOGIN_FAILURE_FILE "SoundOnLoginFailureFile" /* <sound file> */
|
||||||
|
#define GDM_NOTIFY_ADD_GTK_MODULES "AddGtkModules" /* <true/false as int> */
|
||||||
|
#define GDM_NOTIFY_GTK_MODULES_LIST "GtkModulesList" /* <modules list> */
|
||||||
|
+#define GDM_NOTIFY_ALLOW_SHUTDOWN "AllowShutdown" /* <true/false as int> */
|
||||||
|
+#define GDM_NOTIFY_SECURE_SHUTDOWN "SecureShutdown" /* <true/false as int> */
|
||||||
|
|
||||||
|
/* commands, seel GDM_SLAVE_NOTIFY_COMMAND */
|
||||||
|
#define GDM_NOTIFY_DIRTY_SERVERS "DIRTY_SERVERS"
|
||||||
|
diff -upr gdm-2.16.1-pre/daemon/slave.c gdm-2.16.1-post/daemon/slave.c
|
||||||
|
--- gdm-2.16.1-pre/daemon/slave.c 2006-11-07 18:31:11.000000000 -0600
|
||||||
|
+++ gdm-2.16.1-post/daemon/slave.c 2006-11-07 19:56:06.000000000 -0600
|
||||||
|
@@ -101,6 +101,8 @@ static gboolean do_timed_login = FALSE;
|
||||||
|
login the timed login */
|
||||||
|
static gboolean do_configurator = FALSE; /* if this is true, login as root
|
||||||
|
* and start the configurator */
|
||||||
|
+static gboolean do_system_halt = FALSE;
|
||||||
|
+static gboolean do_system_reboot = FALSE;
|
||||||
|
static gboolean do_cancel = FALSE; /* if this is true, go back to
|
||||||
|
username entry & unselect face
|
||||||
|
browser (if present) */
|
||||||
|
@@ -1893,6 +1895,97 @@ play_login_sound (const char *sound_file
|
||||||
|
return TRUE;
|
||||||
|
}
|
||||||
|
|
||||||
|
+static gboolean
|
||||||
|
+get_root_auth (const gchar *message, struct passwd **pwent)
|
||||||
|
+{
|
||||||
|
+ gboolean oldAllowRoot;
|
||||||
|
+
|
||||||
|
+ /* clear any error */
|
||||||
|
+ gdm_slave_greeter_ctl_no_ret (GDM_ERRBOX, "");
|
||||||
|
+ gdm_slave_greeter_ctl_no_ret (GDM_MSG, message);
|
||||||
|
+
|
||||||
|
+ /* we always allow root for this */
|
||||||
|
+ oldAllowRoot = gdm_get_value_bool (GDM_KEY_ALLOW_ROOT);
|
||||||
|
+ gdm_set_value_bool (GDM_KEY_ALLOW_ROOT, TRUE);
|
||||||
|
+
|
||||||
|
+ *pwent = getpwuid (0);
|
||||||
|
+ if G_UNLIKELY (*pwent == NULL) {
|
||||||
|
+ /* what? no "root" ?? */
|
||||||
|
+ gdm_slave_greeter_ctl_no_ret (GDM_RESET, "");
|
||||||
|
+ gdm_set_value_bool (GDM_KEY_ALLOW_ROOT, oldAllowRoot);
|
||||||
|
+ return FALSE; /* continue */
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ gdm_slave_greeter_ctl_no_ret (GDM_SETLOGIN, (*pwent)->pw_name);
|
||||||
|
+ login = gdm_verify_user (d,
|
||||||
|
+ (*pwent)->pw_name,
|
||||||
|
+ d->name,
|
||||||
|
+ d->attached);
|
||||||
|
+ gdm_set_value_bool (GDM_KEY_ALLOW_ROOT, oldAllowRoot);
|
||||||
|
+
|
||||||
|
+ /* Clear message */
|
||||||
|
+ gdm_slave_greeter_ctl_no_ret (GDM_MSG, "");
|
||||||
|
+
|
||||||
|
+ if G_UNLIKELY (do_restart_greeter) {
|
||||||
|
+ g_free (login);
|
||||||
|
+ login = NULL;
|
||||||
|
+ do_restart_greeter = FALSE;
|
||||||
|
+ restart_the_greeter ();
|
||||||
|
+ return FALSE; /* continue */
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ check_notifies_now ();
|
||||||
|
+
|
||||||
|
+ /* The wanker can't remember his password */
|
||||||
|
+ if (login == NULL) {
|
||||||
|
+ gdm_debug ("gdm_slave_wait_for_login: No login/Bad login");
|
||||||
|
+ gdm_slave_greeter_ctl_no_ret (GDM_RESET, "");
|
||||||
|
+ return FALSE; /* continue */
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ /* Wipe the login */
|
||||||
|
+ g_free (login);
|
||||||
|
+ login = NULL;
|
||||||
|
+
|
||||||
|
+ /* Note that this can still fall through to
|
||||||
|
+ * the timed login if the user doesn't type in the
|
||||||
|
+ * password fast enough and there is timed login
|
||||||
|
+ * enabled */
|
||||||
|
+ if (do_timed_login) {
|
||||||
|
+ return FALSE; /* break; */
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ /* The user is a wanker */
|
||||||
|
+ if G_UNLIKELY (do_configurator || do_system_halt || do_system_reboot) {
|
||||||
|
+ do_configurator = FALSE;
|
||||||
|
+ do_system_halt = FALSE;
|
||||||
|
+ do_system_reboot = FALSE;
|
||||||
|
+ gdm_slave_greeter_ctl_no_ret (GDM_RESET, "");
|
||||||
|
+ return FALSE; /* continue */
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ /* Now running as root */
|
||||||
|
+
|
||||||
|
+ /* Get the root pwent */
|
||||||
|
+ *pwent = getpwuid (0);
|
||||||
|
+
|
||||||
|
+ if G_UNLIKELY (*pwent == NULL) {
|
||||||
|
+ /* What? No "root" ?? This is not possible
|
||||||
|
+ * since we logged in, but I'm paranoid */
|
||||||
|
+ gdm_slave_greeter_ctl_no_ret (GDM_RESET, "");
|
||||||
|
+ return FALSE; /* continue */
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ d->logged_in = TRUE;
|
||||||
|
+ logged_in_uid = 0;
|
||||||
|
+ logged_in_gid = 0;
|
||||||
|
+ gdm_slave_send_num (GDM_SOP_LOGGED_IN, TRUE);
|
||||||
|
+ /* Note: nobody really logged in */
|
||||||
|
+ gdm_slave_send_string (GDM_SOP_LOGIN, "");
|
||||||
|
+
|
||||||
|
+ return TRUE;
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
static void
|
||||||
|
gdm_slave_wait_for_login (void)
|
||||||
|
{
|
||||||
|
@@ -1949,88 +2042,13 @@ gdm_slave_wait_for_login (void)
|
||||||
|
do_configurator = FALSE;
|
||||||
|
g_free (login);
|
||||||
|
login = NULL;
|
||||||
|
- /* clear any error */
|
||||||
|
- gdm_slave_greeter_ctl_no_ret (GDM_ERRBOX, "");
|
||||||
|
- gdm_slave_greeter_ctl_no_ret
|
||||||
|
- (GDM_MSG,
|
||||||
|
- _("You must authenticate as root to run configuration."));
|
||||||
|
-
|
||||||
|
- /* we always allow root for this */
|
||||||
|
- oldAllowRoot = gdm_get_value_bool (GDM_KEY_ALLOW_ROOT);
|
||||||
|
- gdm_set_value_bool (GDM_KEY_ALLOW_ROOT, TRUE);
|
||||||
|
-
|
||||||
|
- pwent = getpwuid (0);
|
||||||
|
- if G_UNLIKELY (pwent == NULL) {
|
||||||
|
- /* what? no "root" ?? */
|
||||||
|
- gdm_slave_greeter_ctl_no_ret (GDM_RESET, "");
|
||||||
|
- continue;
|
||||||
|
- }
|
||||||
|
|
||||||
|
- gdm_slave_greeter_ctl_no_ret (GDM_SETLOGIN, pwent->pw_name);
|
||||||
|
- login = gdm_verify_user (d,
|
||||||
|
- pwent->pw_name,
|
||||||
|
- d->name,
|
||||||
|
- d->attached);
|
||||||
|
- gdm_set_value_bool (GDM_KEY_ALLOW_ROOT, oldAllowRoot);
|
||||||
|
-
|
||||||
|
- /* Clear message */
|
||||||
|
- gdm_slave_greeter_ctl_no_ret (GDM_MSG, "");
|
||||||
|
-
|
||||||
|
- if G_UNLIKELY (do_restart_greeter) {
|
||||||
|
- g_free (login);
|
||||||
|
- login = NULL;
|
||||||
|
- do_restart_greeter = FALSE;
|
||||||
|
- restart_the_greeter ();
|
||||||
|
+ if (!get_root_auth (_("You must authenticate as root to run configuration."), &pwent)) {
|
||||||
|
+ if (do_timed_login)
|
||||||
|
+ break;
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
- check_notifies_now ();
|
||||||
|
-
|
||||||
|
- /* The wanker can't remember his password */
|
||||||
|
- if (login == NULL) {
|
||||||
|
- gdm_debug ("gdm_slave_wait_for_login: No login/Bad login");
|
||||||
|
- gdm_slave_greeter_ctl_no_ret (GDM_RESET, "");
|
||||||
|
- continue;
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- /* Wipe the login */
|
||||||
|
- g_free (login);
|
||||||
|
- login = NULL;
|
||||||
|
-
|
||||||
|
- /* Note that this can still fall through to
|
||||||
|
- * the timed login if the user doesn't type in the
|
||||||
|
- * password fast enough and there is timed login
|
||||||
|
- * enabled */
|
||||||
|
- if (do_timed_login) {
|
||||||
|
- break;
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- /* The user is a wanker */
|
||||||
|
- if G_UNLIKELY (do_configurator) {
|
||||||
|
- do_configurator = FALSE;
|
||||||
|
- gdm_slave_greeter_ctl_no_ret (GDM_RESET, "");
|
||||||
|
- continue;
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- /* Now running as root */
|
||||||
|
-
|
||||||
|
- /* Get the root pwent */
|
||||||
|
- pwent = getpwuid (0);
|
||||||
|
-
|
||||||
|
- if G_UNLIKELY (pwent == NULL) {
|
||||||
|
- /* What? No "root" ?? This is not possible
|
||||||
|
- * since we logged in, but I'm paranoid */
|
||||||
|
- gdm_slave_greeter_ctl_no_ret (GDM_RESET, "");
|
||||||
|
- continue;
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- d->logged_in = TRUE;
|
||||||
|
- logged_in_uid = 0;
|
||||||
|
- logged_in_gid = 0;
|
||||||
|
- gdm_slave_send_num (GDM_SOP_LOGGED_IN, TRUE);
|
||||||
|
- /* Note: nobody really logged in */
|
||||||
|
- gdm_slave_send_string (GDM_SOP_LOGIN, "");
|
||||||
|
-
|
||||||
|
/* Disable the login screen, we don't want people to
|
||||||
|
* log in in the meantime */
|
||||||
|
gdm_slave_greeter_ctl_no_ret (GDM_DISABLE, "");
|
||||||
|
@@ -2069,6 +2087,49 @@ gdm_slave_wait_for_login (void)
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
+ if (do_system_halt) {
|
||||||
|
+ struct passwd *pwent;
|
||||||
|
+
|
||||||
|
+ do_system_halt = FALSE;
|
||||||
|
+ g_free (login);
|
||||||
|
+ login = NULL;
|
||||||
|
+
|
||||||
|
+ if (!gdm_get_value_bool (GDM_KEY_ALLOW_SHUTDOWN))
|
||||||
|
+ continue;
|
||||||
|
+
|
||||||
|
+ if (!gdm_get_value_bool (GDM_KEY_SECURE_SHUTDOWN) ||
|
||||||
|
+ get_root_auth (_("You must authenticate as root to shut down."), &pwent)) {
|
||||||
|
+ exit_code_to_use = DISPLAY_HALT;
|
||||||
|
+ term_quit ();
|
||||||
|
+ } else if (do_timed_login) {
|
||||||
|
+ break;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ continue;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ if (do_system_reboot) {
|
||||||
|
+ struct passwd *pwent;
|
||||||
|
+
|
||||||
|
+ do_system_reboot = FALSE;
|
||||||
|
+ g_free (login);
|
||||||
|
+ login = NULL;
|
||||||
|
+
|
||||||
|
+ if (!gdm_get_value_bool (GDM_KEY_ALLOW_SHUTDOWN))
|
||||||
|
+ continue;
|
||||||
|
+
|
||||||
|
+ if (!gdm_get_value_bool (GDM_KEY_SECURE_SHUTDOWN) ||
|
||||||
|
+ get_root_auth (_("You must authenticate as root to restart the computer."), &pwent)) {
|
||||||
|
+ exit_code_to_use = DISPLAY_REBOOT;
|
||||||
|
+ term_quit ();
|
||||||
|
+ } else if (do_timed_login) {
|
||||||
|
+ break;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ continue;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+
|
||||||
|
/* The user timed out into a timed login during the
|
||||||
|
* conversation */
|
||||||
|
if (do_timed_login) {
|
||||||
|
@@ -4943,9 +5004,20 @@ check_for_interruption (const char *msg)
|
||||||
|
do_configurator = TRUE;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
+ case GDM_INTERRUPT_HALT:
|
||||||
|
+ if (d->attached) {
|
||||||
|
+ do_system_halt = TRUE;
|
||||||
|
+ }
|
||||||
|
+ break;
|
||||||
|
+ case GDM_INTERRUPT_REBOOT:
|
||||||
|
+ if (d->attached) {
|
||||||
|
+ do_system_reboot = TRUE;
|
||||||
|
+ }
|
||||||
|
+ break;
|
||||||
|
case GDM_INTERRUPT_SUSPEND:
|
||||||
|
if (d->attached &&
|
||||||
|
gdm_get_value_bool_per_display (d->name, GDM_KEY_SYSTEM_MENU) &&
|
||||||
|
+ gdm_get_value_bool (GDM_KEY_ALLOW_SHUTDOWN) &&
|
||||||
|
! ve_string_empty (gdm_get_value_string (GDM_KEY_SUSPEND))) {
|
||||||
|
gchar *msg = g_strdup_printf ("%s %ld",
|
||||||
|
GDM_SOP_SUSPEND_MACHINE,
|
||||||
|
@@ -5358,6 +5430,8 @@ gdm_slave_action_pending (void)
|
||||||
|
{
|
||||||
|
if (do_timed_login ||
|
||||||
|
do_configurator ||
|
||||||
|
+ do_system_halt ||
|
||||||
|
+ do_system_reboot ||
|
||||||
|
do_restart_greeter ||
|
||||||
|
do_cancel)
|
||||||
|
return FALSE;
|
||||||
|
@@ -5629,6 +5703,12 @@ gdm_slave_handle_notify (const char *msg
|
||||||
|
remanage_asap = TRUE;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
+ } else if (sscanf (msg, GDM_NOTIFY_ALLOW_SHUTDOWN " %d", &val) == 1) {
|
||||||
|
+ gdm_set_value_bool (GDM_KEY_ALLOW_SHUTDOWN, val);
|
||||||
|
+ if (d->greetpid > 1)
|
||||||
|
+ kill (d->greetpid, SIGHUP);
|
||||||
|
+ } else if (sscanf (msg, GDM_NOTIFY_SECURE_SHUTDOWN " %d", &val) == 1) {
|
||||||
|
+ gdm_set_value_bool (GDM_KEY_SECURE_SHUTDOWN, val);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
diff -upr gdm-2.16.1-pre/gui/gdmlogin.c gdm-2.16.1-post/gui/gdmlogin.c
|
||||||
|
--- gdm-2.16.1-pre/gui/gdmlogin.c 2006-07-21 12:56:26.000000000 -0500
|
||||||
|
+++ gdm-2.16.1-post/gui/gdmlogin.c 2006-11-07 21:19:38.000000000 -0600
|
||||||
|
@@ -658,14 +658,20 @@ gdm_run_gdmconfig (GtkWidget *w, gpointe
|
||||||
|
static void
|
||||||
|
gdm_login_restart_handler (void)
|
||||||
|
{
|
||||||
|
- if (gdm_wm_warn_dialog (
|
||||||
|
- _("Are you sure you want to restart the computer?"), "",
|
||||||
|
- _("_Restart"), NULL, TRUE) == GTK_RESPONSE_YES) {
|
||||||
|
+ if (!gdm_config_get_bool (GDM_KEY_ALLOW_SHUTDOWN))
|
||||||
|
+ return;
|
||||||
|
|
||||||
|
- closelog ();
|
||||||
|
+ if (!gdm_config_get_bool (GDM_KEY_SECURE_SHUTDOWN)) {
|
||||||
|
+ if (gdm_wm_warn_dialog (_("Are you sure you want to restart the computer?"), "",
|
||||||
|
+ _("_Restart"), NULL, TRUE) == GTK_RESPONSE_YES) {
|
||||||
|
+ closelog ();
|
||||||
|
|
||||||
|
- gdm_kill_thingies ();
|
||||||
|
- _exit (DISPLAY_REBOOT);
|
||||||
|
+ gdm_kill_thingies ();
|
||||||
|
+ _exit (DISPLAY_REBOOT);
|
||||||
|
+ }
|
||||||
|
+ } else {
|
||||||
|
+ printf ("%c%c%c\n", STX, BEL, GDM_INTERRUPT_REBOOT);
|
||||||
|
+ fflush (stdout);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@@ -673,14 +679,20 @@ gdm_login_restart_handler (void)
|
||||||
|
static void
|
||||||
|
gdm_login_halt_handler (void)
|
||||||
|
{
|
||||||
|
- if (gdm_wm_warn_dialog (
|
||||||
|
- _("Are you sure you want to Shut Down the computer?"), "",
|
||||||
|
- _("Shut _Down"), NULL, TRUE) == GTK_RESPONSE_YES) {
|
||||||
|
+ if (!gdm_config_get_bool (GDM_KEY_ALLOW_SHUTDOWN))
|
||||||
|
+ return;
|
||||||
|
|
||||||
|
- closelog ();
|
||||||
|
+ if (!gdm_config_get_bool (GDM_KEY_SECURE_SHUTDOWN)) {
|
||||||
|
+ if (gdm_wm_warn_dialog (_("Are you sure you want to Shut Down the computer?"), "",
|
||||||
|
+ _("Shut _Down"), NULL, TRUE) == GTK_RESPONSE_YES) {
|
||||||
|
+ closelog ();
|
||||||
|
|
||||||
|
- gdm_kill_thingies ();
|
||||||
|
- _exit (DISPLAY_HALT);
|
||||||
|
+ gdm_kill_thingies ();
|
||||||
|
+ _exit (DISPLAY_HALT);
|
||||||
|
+ }
|
||||||
|
+ } else {
|
||||||
|
+ printf ("%c%c%c\n", STX, BEL, GDM_INTERRUPT_HALT);
|
||||||
|
+ fflush (stdout);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@@ -696,11 +708,17 @@ gdm_login_use_chooser_handler (void)
|
||||||
|
static void
|
||||||
|
gdm_login_suspend_handler (void)
|
||||||
|
{
|
||||||
|
- if (gdm_wm_warn_dialog (
|
||||||
|
- _("Are you sure you want to suspend the computer?"), "",
|
||||||
|
- _("_Suspend"), NULL, TRUE) == GTK_RESPONSE_YES) {
|
||||||
|
+ if (!gdm_config_get_bool (GDM_KEY_ALLOW_SHUTDOWN))
|
||||||
|
+ return;
|
||||||
|
|
||||||
|
- /* suspend interruption */
|
||||||
|
+ if (!gdm_config_get_bool (GDM_KEY_SECURE_SHUTDOWN)) {
|
||||||
|
+ if (gdm_wm_warn_dialog (_("Are you sure you want to suspend the computer?"), "",
|
||||||
|
+ _("_Suspend"), NULL, TRUE) == GTK_RESPONSE_YES) {
|
||||||
|
+ /* suspend interruption */
|
||||||
|
+ printf ("%c%c%c\n", STX, BEL, GDM_INTERRUPT_SUSPEND);
|
||||||
|
+ fflush (stdout);
|
||||||
|
+ }
|
||||||
|
+ } else {
|
||||||
|
printf ("%c%c%c\n", STX, BEL, GDM_INTERRUPT_SUSPEND);
|
||||||
|
fflush (stdout);
|
||||||
|
}
|
||||||
|
@@ -2369,7 +2387,8 @@ gdm_login_gui_init (void)
|
||||||
|
got_anything = TRUE;
|
||||||
|
}
|
||||||
|
|
||||||
|
- if (gdm_working_command_exists (gdm_config_get_string (GDM_KEY_REBOOT))) {
|
||||||
|
+ if (gdm_config_get_bool (GDM_KEY_ALLOW_SHUTDOWN) &&
|
||||||
|
+ gdm_working_command_exists (gdm_config_get_string (GDM_KEY_REBOOT))) {
|
||||||
|
item = gtk_menu_item_new_with_mnemonic (_("_Restart"));
|
||||||
|
gtk_menu_shell_append (GTK_MENU_SHELL (menu), item);
|
||||||
|
g_signal_connect (G_OBJECT (item), "activate",
|
||||||
|
@@ -2379,7 +2398,8 @@ gdm_login_gui_init (void)
|
||||||
|
got_anything = TRUE;
|
||||||
|
}
|
||||||
|
|
||||||
|
- if (gdm_working_command_exists (gdm_config_get_string (GDM_KEY_HALT))) {
|
||||||
|
+ if (gdm_config_get_bool (GDM_KEY_ALLOW_SHUTDOWN) &&
|
||||||
|
+ gdm_working_command_exists (gdm_config_get_string (GDM_KEY_HALT))) {
|
||||||
|
item = gtk_menu_item_new_with_mnemonic (_("Shut _Down"));
|
||||||
|
gtk_menu_shell_append (GTK_MENU_SHELL (menu), item);
|
||||||
|
g_signal_connect (G_OBJECT (item), "activate",
|
||||||
|
@@ -2389,7 +2409,8 @@ gdm_login_gui_init (void)
|
||||||
|
got_anything = TRUE;
|
||||||
|
}
|
||||||
|
|
||||||
|
- if (gdm_working_command_exists (gdm_config_get_string (GDM_KEY_SUSPEND))) {
|
||||||
|
+ if (gdm_config_get_bool (GDM_KEY_ALLOW_SHUTDOWN) &&
|
||||||
|
+ gdm_working_command_exists (gdm_config_get_string (GDM_KEY_SUSPEND))) {
|
||||||
|
item = gtk_menu_item_new_with_mnemonic (_("_Suspend"));
|
||||||
|
gtk_menu_shell_append (GTK_MENU_SHELL (menu), item);
|
||||||
|
g_signal_connect (G_OBJECT (item), "activate",
|
||||||
|
Only in gdm-2.16.1-post/gui: gdmlogin.c~
|
||||||
|
diff -upr gdm-2.16.1-pre/gui/gdmsetup.c gdm-2.16.1-post/gui/gdmsetup.c
|
||||||
|
--- gdm-2.16.1-pre/gui/gdmsetup.c 2006-11-07 18:31:11.000000000 -0600
|
||||||
|
+++ gdm-2.16.1-post/gui/gdmsetup.c 2006-11-07 21:23:24.000000000 -0600
|
||||||
|
@@ -1670,9 +1670,6 @@ setup_intspin (const char *name,
|
||||||
|
g_object_set_data_full (G_OBJECT (spin),
|
||||||
|
"key", g_strdup (key),
|
||||||
|
(GDestroyNotify) g_free);
|
||||||
|
- g_object_set_data_full (G_OBJECT (toggle),
|
||||||
|
- "notify_key", g_strdup (key),
|
||||||
|
- (GDestroyNotify) g_free);
|
||||||
|
|
||||||
|
gtk_spin_button_set_value (GTK_SPIN_BUTTON (spin), val);
|
||||||
|
|
||||||
|
Only in gdm-2.16.1-post/gui: gdmsetup.c~
|
||||||
|
diff -upr gdm-2.16.1-pre/gui/greeter/greeter_item.c gdm-2.16.1-post/gui/greeter/greeter_item.c
|
||||||
|
--- gdm-2.16.1-pre/gui/greeter/greeter_item.c 2006-11-07 18:31:11.000000000 -0600
|
||||||
|
+++ gdm-2.16.1-post/gui/greeter/greeter_item.c 2006-11-07 21:28:38.000000000 -0600
|
||||||
|
@@ -196,15 +196,15 @@ greeter_item_is_visible (GreeterItemInfo
|
||||||
|
strcmp (info->show_type, "system") == 0)
|
||||||
|
return FALSE;
|
||||||
|
|
||||||
|
- if (( ! sysmenu || ! GdmHaltFound) &&
|
||||||
|
+ if (( ! sysmenu || ! GdmHaltFound || !gdm_config_get_bool (GDM_KEY_ALLOW_SHUTDOWN)) &&
|
||||||
|
(info->show_type != NULL &&
|
||||||
|
strcmp (info->show_type, "halt") == 0))
|
||||||
|
return FALSE;
|
||||||
|
- if (( ! sysmenu || ! GdmRebootFound) &&
|
||||||
|
+ if (( ! sysmenu || ! GdmRebootFound || !gdm_config_get_bool (GDM_KEY_ALLOW_SHUTDOWN)) &&
|
||||||
|
(info->show_type != NULL &&
|
||||||
|
strcmp (info->show_type, "reboot") == 0))
|
||||||
|
return FALSE;
|
||||||
|
- if (( ! sysmenu || ! GdmSuspendFound) &&
|
||||||
|
+ if (( ! sysmenu || ! GdmSuspendFound || !gdm_config_get_bool (GDM_KEY_ALLOW_SHUTDOWN)) &&
|
||||||
|
(info->show_type != NULL &&
|
||||||
|
strcmp (info->show_type, "suspend") == 0))
|
||||||
|
return FALSE;
|
||||||
|
Only in gdm-2.16.1-post/gui/greeter: greeter_item.c~
|
||||||
|
diff -upr gdm-2.16.1-pre/gui/greeter/greeter_system.c gdm-2.16.1-post/gui/greeter/greeter_system.c
|
||||||
|
--- gdm-2.16.1-pre/gui/greeter/greeter_system.c 2006-08-02 21:32:39.000000000 -0500
|
||||||
|
+++ gdm-2.16.1-post/gui/greeter/greeter_system.c 2006-11-07 21:26:35.000000000 -0600
|
||||||
|
@@ -68,61 +68,63 @@ bin_exists (const char *command)
|
||||||
|
* cannot depend on callback data being passed in.
|
||||||
|
*/
|
||||||
|
static void
|
||||||
|
-query_greeter_restart_handler (void)
|
||||||
|
+greeter_restart_handler (void)
|
||||||
|
{
|
||||||
|
- if (gdm_wm_warn_dialog (_("Are you sure you want to restart the computer?"), "",
|
||||||
|
- _("_Restart"), NULL, TRUE) == GTK_RESPONSE_YES) {
|
||||||
|
- closelog ();
|
||||||
|
+ if (!gdm_config_get_bool (GDM_KEY_ALLOW_SHUTDOWN))
|
||||||
|
+ return;
|
||||||
|
+
|
||||||
|
+ if (!gdm_config_get_bool (GDM_KEY_SECURE_SHUTDOWN)) {
|
||||||
|
+ if (gdm_wm_warn_dialog (_("Are you sure you want to restart the computer?"), "",
|
||||||
|
+ _("_Restart"), NULL, TRUE) == GTK_RESPONSE_YES) {
|
||||||
|
+ closelog ();
|
||||||
|
|
||||||
|
- _exit (DISPLAY_REBOOT);
|
||||||
|
+ _exit (DISPLAY_REBOOT);
|
||||||
|
+ }
|
||||||
|
+ } else {
|
||||||
|
+ printf ("%c%c%c\n", STX, BEL, GDM_INTERRUPT_REBOOT);
|
||||||
|
+ fflush (stdout);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
-query_greeter_halt_handler (void)
|
||||||
|
+greeter_halt_handler (void)
|
||||||
|
{
|
||||||
|
- if (gdm_wm_warn_dialog (_("Are you sure you want to Shut Down the computer?"), "",
|
||||||
|
- _("Shut _Down"), NULL, TRUE) == GTK_RESPONSE_YES) {
|
||||||
|
- closelog ();
|
||||||
|
+ if (!gdm_config_get_bool (GDM_KEY_ALLOW_SHUTDOWN))
|
||||||
|
+ return;
|
||||||
|
|
||||||
|
- _exit (DISPLAY_HALT);
|
||||||
|
+ if (!gdm_config_get_bool (GDM_KEY_SECURE_SHUTDOWN)) {
|
||||||
|
+ if (gdm_wm_warn_dialog (_("Are you sure you want to Shut Down the computer?"), "",
|
||||||
|
+ _("Shut _Down"), NULL, TRUE) == GTK_RESPONSE_YES) {
|
||||||
|
+ closelog ();
|
||||||
|
+
|
||||||
|
+ _exit (DISPLAY_HALT);
|
||||||
|
+ }
|
||||||
|
+ } else {
|
||||||
|
+ printf ("%c%c%c\n", STX, BEL, GDM_INTERRUPT_HALT);
|
||||||
|
+ fflush (stdout);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
-query_greeter_suspend_handler (void)
|
||||||
|
+greeter_suspend_handler (void)
|
||||||
|
{
|
||||||
|
- if (gdm_wm_warn_dialog (_("Are you sure you want to suspend the computer?"), "",
|
||||||
|
- _("_Suspend"), NULL, TRUE) == GTK_RESPONSE_YES) {
|
||||||
|
- /* suspend interruption */
|
||||||
|
+ if (!gdm_config_get_bool (GDM_KEY_ALLOW_SHUTDOWN))
|
||||||
|
+ return;
|
||||||
|
+
|
||||||
|
+ if (!gdm_config_get_bool (GDM_KEY_SECURE_SHUTDOWN)) {
|
||||||
|
+ if (gdm_wm_warn_dialog (_("Are you sure you want to suspend the computer?"), "",
|
||||||
|
+ _("_Suspend"), NULL, TRUE) == GTK_RESPONSE_YES) {
|
||||||
|
+ /* suspend interruption */
|
||||||
|
+ printf ("%c%c%c\n", STX, BEL, GDM_INTERRUPT_SUSPEND);
|
||||||
|
+ fflush (stdout);
|
||||||
|
+ }
|
||||||
|
+ } else {
|
||||||
|
printf ("%c%c%c\n", STX, BEL, GDM_INTERRUPT_SUSPEND);
|
||||||
|
fflush (stdout);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
-greeter_restart_handler (void)
|
||||||
|
-{
|
||||||
|
- closelog ();
|
||||||
|
- _exit (DISPLAY_REBOOT);
|
||||||
|
-}
|
||||||
|
-
|
||||||
|
-
|
||||||
|
-static void
|
||||||
|
-greeter_halt_handler (void)
|
||||||
|
-{
|
||||||
|
- closelog ();
|
||||||
|
- _exit (DISPLAY_HALT);
|
||||||
|
-}
|
||||||
|
-
|
||||||
|
-static void
|
||||||
|
-greeter_suspend_handler (void)
|
||||||
|
-{
|
||||||
|
- printf ("%c%c%c\n", STX, BEL, GDM_INTERRUPT_SUSPEND);
|
||||||
|
- fflush (stdout);
|
||||||
|
-}
|
||||||
|
-
|
||||||
|
-static void
|
||||||
|
greeter_config_handler (void)
|
||||||
|
{
|
||||||
|
greeter_item_ulist_disable ();
|
||||||
|
@@ -174,36 +176,36 @@ greeter_system_append_system_menu (GtkWi
|
||||||
|
NULL);
|
||||||
|
}
|
||||||
|
|
||||||
|
- if (GdmRebootFound || GdmHaltFound || GdmSuspendFound) {
|
||||||
|
+ if (gdm_config_get_bool (GDM_KEY_ALLOW_SHUTDOWN) && (GdmRebootFound || GdmHaltFound || GdmSuspendFound)) {
|
||||||
|
sep = gtk_separator_menu_item_new ();
|
||||||
|
gtk_menu_shell_append (GTK_MENU_SHELL (menu), sep);
|
||||||
|
gtk_widget_show (sep);
|
||||||
|
}
|
||||||
|
|
||||||
|
- if (GdmRebootFound) {
|
||||||
|
+ if (gdm_config_get_bool (GDM_KEY_ALLOW_SHUTDOWN) && GdmRebootFound) {
|
||||||
|
w = gtk_menu_item_new_with_mnemonic (_("_Restart"));
|
||||||
|
gtk_menu_shell_append (GTK_MENU_SHELL (menu), w);
|
||||||
|
gtk_widget_show (GTK_WIDGET (w));
|
||||||
|
g_signal_connect (G_OBJECT (w), "activate",
|
||||||
|
- G_CALLBACK (query_greeter_restart_handler),
|
||||||
|
+ G_CALLBACK (greeter_restart_handler),
|
||||||
|
NULL);
|
||||||
|
}
|
||||||
|
|
||||||
|
- if (GdmHaltFound) {
|
||||||
|
+ if (gdm_config_get_bool (GDM_KEY_ALLOW_SHUTDOWN) && GdmHaltFound) {
|
||||||
|
w = gtk_menu_item_new_with_mnemonic (_("Shut _Down"));
|
||||||
|
gtk_menu_shell_append (GTK_MENU_SHELL (menu), w);
|
||||||
|
gtk_widget_show (GTK_WIDGET (w));
|
||||||
|
g_signal_connect (G_OBJECT (w), "activate",
|
||||||
|
- G_CALLBACK (query_greeter_halt_handler),
|
||||||
|
+ G_CALLBACK (greeter_halt_handler),
|
||||||
|
NULL);
|
||||||
|
}
|
||||||
|
|
||||||
|
- if (GdmSuspendFound) {
|
||||||
|
+ if (gdm_config_get_bool (GDM_KEY_ALLOW_SHUTDOWN) && GdmSuspendFound) {
|
||||||
|
w = gtk_menu_item_new_with_mnemonic (_("Sus_pend"));
|
||||||
|
gtk_menu_shell_append (GTK_MENU_SHELL (menu), w);
|
||||||
|
gtk_widget_show (GTK_WIDGET (w));
|
||||||
|
g_signal_connect (G_OBJECT (w), "activate",
|
||||||
|
- G_CALLBACK (query_greeter_suspend_handler),
|
||||||
|
+ G_CALLBACK (greeter_suspend_handler),
|
||||||
|
NULL);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
@@ -281,7 +283,7 @@ greeter_system_handler (GreeterItemInfo
|
||||||
|
vbox,
|
||||||
|
TRUE, TRUE, 0);
|
||||||
|
|
||||||
|
- if (GdmHaltFound) {
|
||||||
|
+ if (GdmHaltFound && gdm_config_get_bool (GDM_KEY_ALLOW_SHUTDOWN)) {
|
||||||
|
if (group_radio != NULL)
|
||||||
|
radio_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (group_radio));
|
||||||
|
halt_radio = gtk_radio_button_new_with_mnemonic (radio_group,
|
||||||
|
@@ -299,7 +301,7 @@ greeter_system_handler (GreeterItemInfo
|
||||||
|
gtk_widget_show (halt_radio);
|
||||||
|
}
|
||||||
|
|
||||||
|
- if (GdmRebootFound) {
|
||||||
|
+ if (GdmRebootFound && gdm_config_get_bool (GDM_KEY_ALLOW_SHUTDOWN)) {
|
||||||
|
if (group_radio != NULL)
|
||||||
|
radio_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (group_radio));
|
||||||
|
restart_radio = gtk_radio_button_new_with_mnemonic (radio_group,
|
||||||
|
@@ -316,7 +318,7 @@ greeter_system_handler (GreeterItemInfo
|
||||||
|
gtk_widget_show (restart_radio);
|
||||||
|
}
|
||||||
|
|
||||||
|
- if (GdmSuspendFound) {
|
||||||
|
+ if (GdmSuspendFound && gdm_config_get_bool (GDM_KEY_ALLOW_SHUTDOWN)) {
|
||||||
|
if (group_radio != NULL)
|
||||||
|
radio_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (group_radio));
|
||||||
|
suspend_radio = gtk_radio_button_new_with_mnemonic (radio_group,
|
||||||
|
@@ -414,13 +416,13 @@ void
|
||||||
|
greeter_item_system_setup (void)
|
||||||
|
{
|
||||||
|
greeter_item_register_action_callback ("reboot_button",
|
||||||
|
- (ActionFunc)query_greeter_restart_handler,
|
||||||
|
+ (ActionFunc)greeter_restart_handler,
|
||||||
|
NULL);
|
||||||
|
greeter_item_register_action_callback ("halt_button",
|
||||||
|
- (ActionFunc)query_greeter_halt_handler,
|
||||||
|
+ (ActionFunc)greeter_halt_handler,
|
||||||
|
NULL);
|
||||||
|
greeter_item_register_action_callback ("suspend_button",
|
||||||
|
- (ActionFunc)query_greeter_suspend_handler,
|
||||||
|
+ (ActionFunc)greeter_suspend_handler,
|
||||||
|
NULL);
|
||||||
|
greeter_item_register_action_callback ("system_button",
|
||||||
|
(ActionFunc)greeter_system_handler,
|
||||||
|
Only in gdm-2.16.1-post/gui/greeter: greeter_system.c~
|
23
gdm-2.8.0.7-onlyshow-in-gnome.diff
Normal file
23
gdm-2.8.0.7-onlyshow-in-gnome.diff
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
Index: gdm-2.8.0.7/gui/gdmflexiserver-xnest.desktop.in
|
||||||
|
================================================================================
|
||||||
|
--- gdm-2.16.1/gui/gdmflexiserver-xnest.desktop.in
|
||||||
|
+++ gdm-2.16.1/gui/gdmflexiserver-xnest.desktop.in
|
||||||
|
@@ -14,3 +14,4 @@
|
||||||
|
X-GNOME-Bugzilla-Bugzilla=GNOME
|
||||||
|
X-GNOME-Bugzilla-Product=gdm
|
||||||
|
X-GNOME-Bugzilla-Component=general
|
||||||
|
+OnlyShowIn=GNOME;
|
||||||
|
--- gdm-2.16.1/gui/gdmflexiserver.desktop.in
|
||||||
|
+++ gdm-2.16.1/gui/gdmflexiserver.desktop.in
|
||||||
|
@@ -11,3 +11,4 @@
|
||||||
|
X-GNOME-Bugzilla-Bugzilla=GNOME
|
||||||
|
X-GNOME-Bugzilla-Product=gdm
|
||||||
|
X-GNOME-Bugzilla-Component=general
|
||||||
|
+OnlyShowIn=GNOME;
|
||||||
|
--- gdm-2.16.1/gui/gdmphotosetup.desktop.in
|
||||||
|
+++ gdm-2.16.1/gui/gdmphotosetup.desktop.in
|
||||||
|
@@ -13,3 +13,4 @@
|
||||||
|
X-GNOME-Bugzilla-Bugzilla=GNOME
|
||||||
|
X-GNOME-Bugzilla-Product=gdm
|
||||||
|
X-GNOME-Bugzilla-Component=general
|
||||||
|
+OnlyShowIn=GNOME;
|
11
gdm-2.8.0.7-some-info-in-dialog.patch
Normal file
11
gdm-2.8.0.7-some-info-in-dialog.patch
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
--- gdm-2.16.1/daemon/verify-pam.c
|
||||||
|
+++ gdm-2.16.1/daemon/verify-pam.c
|
||||||
|
@@ -595,7 +595,7 @@
|
||||||
|
break;
|
||||||
|
case PAM_TEXT_INFO:
|
||||||
|
/* PAM sent a message that should displayed to the user */
|
||||||
|
- gdm_slave_greeter_ctl_no_ret (GDM_MSG, m);
|
||||||
|
+ gdm_slave_greeter_ctl_no_ret (GDM_ERRDLG, m);
|
||||||
|
reply[replies].resp_retcode = PAM_SUCCESS;
|
||||||
|
reply[replies].resp = NULL;
|
||||||
|
break;
|
14
gdm-X_SERVER.patch
Normal file
14
gdm-X_SERVER.patch
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
--- configure.ac
|
||||||
|
+++ configure.ac
|
||||||
|
@@ -987,6 +987,11 @@
|
||||||
|
X_SERVER="/usr/X11R6/bin/X"
|
||||||
|
GDM_USER_PATH="$GDM_USER_PATH:/usr/X11R6/bin"
|
||||||
|
X_CONFIG_OPTIONS="-audit 0"
|
||||||
|
+elif test -x /usr/bin/X; then
|
||||||
|
+ X_PATH="/usr/bin"
|
||||||
|
+ X_SERVER_PATH="/usr/bin"
|
||||||
|
+ X_SERVER="/usr/bin/X"
|
||||||
|
+ X_CONFIG_OPTIONS="-audit 0"
|
||||||
|
elif test -x /usr/bin/Xorg; then
|
||||||
|
X_PATH="/usr/bin"
|
||||||
|
X_SERVER_PATH="/usr/bin"
|
22
gdm-autobuild-warning.patch
Normal file
22
gdm-autobuild-warning.patch
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
--- gui/gdmchooser.c
|
||||||
|
+++ gui/gdmchooser.c
|
||||||
|
@@ -1798,6 +1798,9 @@
|
||||||
|
gdm_config_get_bool (GDM_KEY_MULTICAST);
|
||||||
|
|
||||||
|
gdmcomm_comm_bulk_stop ();
|
||||||
|
+
|
||||||
|
+ return TRUE;
|
||||||
|
+
|
||||||
|
}
|
||||||
|
|
||||||
|
static gboolean
|
||||||
|
--- gui/greeter/greeter_action_language.c
|
||||||
|
+++ gui/greeter/greeter_action_language.c
|
||||||
|
@@ -31,6 +31,7 @@
|
||||||
|
#include "greeter_configuration.h"
|
||||||
|
#include "greeter_item_pam.h"
|
||||||
|
#include "greeter_action_language.h"
|
||||||
|
+#include "greeter_parser.h"
|
||||||
|
|
||||||
|
#define LAST_LANGUAGE "Last"
|
||||||
|
#define DEFAULT_LANGUAGE "Default"
|
7
gdm-autologin.pamd
Normal file
7
gdm-autologin.pamd
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
#%PAM-1.0
|
||||||
|
auth required pam_permit.so
|
||||||
|
account include common-account
|
||||||
|
password include common-password
|
||||||
|
session required pam_loginuid.so
|
||||||
|
session include common-session
|
||||||
|
session required pam_resmgr.so
|
80
gdm-bash-profile.patch
Normal file
80
gdm-bash-profile.patch
Normal file
@ -0,0 +1,80 @@
|
|||||||
|
diff -upr gdm-2.16.1-pre/daemon/slave.c gdm-2.16.1-post/daemon/slave.c
|
||||||
|
--- gdm-2.16.1-pre/daemon/slave.c 2006-08-07 14:49:29.000000000 -0500
|
||||||
|
+++ gdm-2.16.1-post/daemon/slave.c 2006-11-07 16:54:20.000000000 -0600
|
||||||
|
@@ -3358,7 +3358,7 @@ session_child_run (struct passwd *pwent,
|
||||||
|
#ifndef HAVE_TSOL
|
||||||
|
char *argv[4];
|
||||||
|
#else
|
||||||
|
- char *argv[7];
|
||||||
|
+ char *argv[9];
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef CAN_USE_SETPENV
|
||||||
|
@@ -3584,10 +3584,12 @@ session_child_run (struct passwd *pwent,
|
||||||
|
argv[1] = NULL;
|
||||||
|
argv[2] = NULL;
|
||||||
|
argv[3] = NULL;
|
||||||
|
-#ifdef HAVE_TSOL
|
||||||
|
argv[4] = NULL;
|
||||||
|
argv[5] = NULL;
|
||||||
|
+#ifdef HAVE_TSOL
|
||||||
|
argv[6] = NULL;
|
||||||
|
+ argv[7] = NULL;
|
||||||
|
+ argv[8] = NULL;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
exec = NULL;
|
||||||
|
@@ -3640,11 +3642,27 @@ session_child_run (struct passwd *pwent,
|
||||||
|
argv[3] = argv[4] = argv[5] = argv[6] = NULL;
|
||||||
|
} else {
|
||||||
|
#endif
|
||||||
|
- argv[0] = basexsession;
|
||||||
|
- argv[1] = exec;
|
||||||
|
- argv[2] = NULL;
|
||||||
|
+ /* If it looks like we are using bash, then run the Xsession
|
||||||
|
+ script in a login shell and pass it 'no-fake-login' as its
|
||||||
|
+ second argument. This keeps Xsession from sourcing .profile or
|
||||||
|
+ otherwise trying to pretend to be a login shell. */
|
||||||
|
+
|
||||||
|
+ if (strlen (pwent->pw_shell) > 4
|
||||||
|
+ && ! strcmp (pwent->pw_shell + strlen (pwent->pw_shell) - 5, "/bash")
|
||||||
|
+ && g_file_test (pwent->pw_shell, G_FILE_TEST_EXISTS | G_FILE_TEST_IS_EXECUTABLE)) {
|
||||||
|
+ argv[0] = pwent->pw_shell;
|
||||||
|
+ argv[1] = "--login";
|
||||||
|
+ argv[2] = basexsession;
|
||||||
|
+ argv[3] = exec;
|
||||||
|
+ argv[4] = "no-fake-login";
|
||||||
|
+ argv[5] = NULL;
|
||||||
|
+ } else {
|
||||||
|
+ argv[0] = basexsession;
|
||||||
|
+ argv[1] = exec;
|
||||||
|
+ argv[2] = NULL;
|
||||||
|
+ }
|
||||||
|
#ifdef HAVE_TSOL
|
||||||
|
- argv[3] = argv[4] = argv[5] = argv[6] = NULL;
|
||||||
|
+ argv [3] = argv [4] = argv[5] = argv[6] = argv[7] = argv[8] = NULL;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
@@ -3793,7 +3811,6 @@ session_child_run (struct passwd *pwent,
|
||||||
|
failsafe = TRUE;
|
||||||
|
}
|
||||||
|
|
||||||
|
-#ifdef HAVE_TSOL
|
||||||
|
gdm_debug ("Running %s %s %s %s %s %s for %s on %s",
|
||||||
|
argv[0],
|
||||||
|
ve_sure_string (argv[1]),
|
||||||
|
@@ -3802,13 +3819,6 @@ session_child_run (struct passwd *pwent,
|
||||||
|
ve_sure_string (argv[4]),
|
||||||
|
ve_sure_string (argv[5]),
|
||||||
|
login, d->name);
|
||||||
|
-#else
|
||||||
|
- gdm_debug ("Running %s %s %s for %s on %s",
|
||||||
|
- argv[0],
|
||||||
|
- ve_sure_string (argv[1]),
|
||||||
|
- ve_sure_string (argv[2]),
|
||||||
|
- login, d->name);
|
||||||
|
-#endif
|
||||||
|
|
||||||
|
if ( ! ve_string_empty (pwent->pw_shell)) {
|
||||||
|
shell = pwent->pw_shell;
|
15
gdm-bufferoverrun.patch
Normal file
15
gdm-bufferoverrun.patch
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
--- gdm-2.17.3/vicious-extensions/ve-miscui.c-orig 2006-12-05 16:28:27.460459000 -0600
|
||||||
|
+++ gdm-2.17.3/vicious-extensions/ve-miscui.c 2006-12-05 16:28:38.677749000 -0600
|
||||||
|
@@ -76,10 +76,10 @@ ve_hig_dialog_new (GtkWindow *paren
|
||||||
|
GTK_DIALOG_DESTROY_WITH_PARENT,
|
||||||
|
type,
|
||||||
|
buttons,
|
||||||
|
- primary_message);
|
||||||
|
+ "%s", primary_message);
|
||||||
|
|
||||||
|
gtk_message_dialog_format_secondary_text (GTK_MESSAGE_DIALOG (dialog),
|
||||||
|
- secondary_message);
|
||||||
|
+ "%s", secondary_message);
|
||||||
|
|
||||||
|
gtk_window_set_title (GTK_WINDOW (dialog), "");
|
||||||
|
gtk_container_set_border_width (GTK_CONTAINER (dialog), 5);
|
15
gdm-conf-custom-sysconfig.patch
Normal file
15
gdm-conf-custom-sysconfig.patch
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
--- config/gdm.conf-custom
|
||||||
|
+++ config/gdm.conf-custom
|
||||||
|
@@ -37,6 +37,12 @@
|
||||||
|
#
|
||||||
|
# NOTE: Lines that begin with "#" are considered comments.
|
||||||
|
#
|
||||||
|
+# SuSEconfig comments: Some of entries in this file are updated by SuSEconfig,
|
||||||
|
+# whenever sysconfig entry change. To edit these entries, please use sysconfig
|
||||||
|
+# (or never touch these sysconfig variables).
|
||||||
|
+# Comment for each of this entry contains related /etc/sysconfig file and
|
||||||
|
+# variable.
|
||||||
|
+#
|
||||||
|
# Have fun!
|
||||||
|
|
||||||
|
[daemon]
|
150
gdm-conf.patch
Normal file
150
gdm-conf.patch
Normal file
@ -0,0 +1,150 @@
|
|||||||
|
--- gdm-2.15.7/config/gdm.conf.in
|
||||||
|
+++ gdm-2.15.7/config/gdm.conf.in
|
||||||
|
@@ -61,11 +61,11 @@
|
||||||
|
|
||||||
|
# The greeter for local (non-xdmcp) logins. Change gdmlogin to gdmgreeter to
|
||||||
|
# get the new graphical greeter.
|
||||||
|
-#Greeter=@libexecdir@/gdmlogin
|
||||||
|
+Greeter=@libexecdir@/gdmgreeter
|
||||||
|
|
||||||
|
# The greeter for xdmcp logins, usually you want a less graphically intensive
|
||||||
|
# greeter here so it's better to leave this with gdmlogin
|
||||||
|
-#RemoteGreeter=@libexecdir@/gdmlogin
|
||||||
|
+RemoteGreeter=@libexecdir@/gdmgreeter
|
||||||
|
|
||||||
|
# Launch the greeter with an additional list of colon separated GTK+ modules.
|
||||||
|
# This is useful for enabling additional feature support e.g. GNOME
|
||||||
|
@@ -79,10 +79,12 @@
|
||||||
|
# This value will be overridden with the value from /etc/default/login if it
|
||||||
|
# contains "ROOT=<pathvalue>".
|
||||||
|
#DefaultPath=@GDM_USER_PATH@
|
||||||
|
+DefaultPath=/usr/local/bin:/usr/bin:/usr/X11R6/bin:/bin:/var/lib/dosemu:/usr/games:/opt/bin:/opt/gnome/bin:/opt/kde3/bin:/opt/kde2/bin:/opt/kde/bin:/usr/openwin/bin:/opt/cross/bin
|
||||||
|
# Default path for root. The profile scripts will likely override this value.
|
||||||
|
# This value will be overridden with the value from /etc/default/login if it
|
||||||
|
# contains "SUROOT=<pathvalue>".
|
||||||
|
#RootPath=/sbin:/usr/sbin:@GDM_USER_PATH@
|
||||||
|
+RootPath=/usr/local/bin:/usr/bin:/usr/X11R6/bin:/bin:/usr/local/bin:/usr/bin:/usr/X11R6/bin:/bin:/var/lib/dosemu:/usr/games:/opt/bin:/opt/gnome/bin:/opt/kde3/bin:/opt/kde2/bin:/opt/kde/bin:/usr/openwin/bin:/opt/cross/bin
|
||||||
|
|
||||||
|
# If you are having trouble with using a single server for a long time and want
|
||||||
|
# GDM to kill/restart the server, turn this on. On Solaris, this value is
|
||||||
|
@@ -121,6 +123,9 @@
|
||||||
|
#RebootCommand=@REBOOT_COMMAND@
|
||||||
|
#HaltCommand=@HALT_COMMAND@
|
||||||
|
#SuspendCommand=@SUSPEND_COMMAND@
|
||||||
|
+RebootCommand=/sbin/shutdown -r now
|
||||||
|
+HaltCommand=/sbin/shutdown -h now
|
||||||
|
+SuspendCommand=/usr/bin/powersave --suspend-to-disk
|
||||||
|
# Probably should not touch the below this is the standard setup.
|
||||||
|
ServAuthDir=@authdir@
|
||||||
|
# This is our standard startup script. A bit different from a normal X
|
||||||
|
@@ -131,7 +136,7 @@
|
||||||
|
# really a PATH style variable since 2.4.4.2 to allow actual interoperability
|
||||||
|
# with KDM. Note that <dmconfdir>/Sessions is there for backwards
|
||||||
|
# compatibility reasons with 2.4.4.x.
|
||||||
|
-#SessionDesktopDir=/etc/X11/sessions/:@dmconfdir@/Sessions/:@datadir@/gdm/BuiltInSessions/:@datadir@/xsessions/
|
||||||
|
+SessionDesktopDir=/usr/share/xsessions/:@EXPANDED_SYSCONFDIR@/dm/Sessions/:@EXPANDED_DATADIR@/gdm/BuiltInSessions/
|
||||||
|
# This is the default .desktop session. One of the ones in SessionDesktopDir
|
||||||
|
#DefaultSession=gnome.desktop
|
||||||
|
# Better leave this blank and HOME will be used. You can use syntax ~/ below
|
||||||
|
@@ -214,7 +219,7 @@
|
||||||
|
# example, home directories owned by some other user.
|
||||||
|
CheckDirOwner=true
|
||||||
|
# Number of seconds to wait after a failed login
|
||||||
|
-#RetryDelay=1
|
||||||
|
+RetryDelay=1
|
||||||
|
# Maximum size of a file we wish to read. This makes it hard for a user to DoS
|
||||||
|
# us by using a large file.
|
||||||
|
#UserMaxFile=65536
|
||||||
|
@@ -275,17 +280,18 @@
|
||||||
|
#PingIntervalSeconds=15
|
||||||
|
# The port. 177 is the standard port so better keep it that way.
|
||||||
|
#Port=177
|
||||||
|
-# Willing script, none is shipped and by default we'll send hostname system id.
|
||||||
|
-# But if you supply something here, the output of this script will be sent as
|
||||||
|
-# status of this host so that the chooser can display it. You could for
|
||||||
|
-# example send load, or mail details for some user, or some such.
|
||||||
|
-#Willing=@gdmconfdir@/Xwilling
|
||||||
|
+# Willing script, none is shipped, X11's one is used by default. If
|
||||||
|
+# none is present we'll send hostname system id. But if you supply
|
||||||
|
+# something here, the output of this script will be sent as status of
|
||||||
|
+# this host so that the chooser can display it. You could for example
|
||||||
|
+# send load, or mail details for some user, or some such.
|
||||||
|
+Willing=/etc/X11/xdm/Xwilling
|
||||||
|
|
||||||
|
[gui]
|
||||||
|
# The specific gtkrc file we use. It should be the full path to the gtkrc that
|
||||||
|
# we need. Unless you need a specific gtkrc that doesn't correspond to a
|
||||||
|
# specific theme, then just use the GtkTheme key.
|
||||||
|
-#GtkRC=@datadir@/themes/Default/gtk-2.0/gtkrc
|
||||||
|
+GtkRC=@datadir@/themes/Industrial/gtk-2.0/gtkrc
|
||||||
|
|
||||||
|
# The GTK+ theme to use for the GUI.
|
||||||
|
#GtkTheme=Default
|
||||||
|
@@ -312,7 +318,7 @@
|
||||||
|
#TitleBar=true
|
||||||
|
# Don't allow user to move the standard login window. Only makes sense if
|
||||||
|
# TitleBar is on.
|
||||||
|
-#LockPosition=false
|
||||||
|
+LockPosition=true
|
||||||
|
# Set a position for the standard login window rather then just centering the
|
||||||
|
# window. If you enter negative values for the position it is taken as an
|
||||||
|
# offset from the right or bottom edge.
|
||||||
|
@@ -333,7 +339,7 @@
|
||||||
|
# User ID's less than the MinimalUID value will not be included in the face
|
||||||
|
# browser or in the gdmselection list for Automatic/Timed login. They will not
|
||||||
|
# be displayed regardless of the settings for Include and Exclude.
|
||||||
|
-#MinimalUID=100
|
||||||
|
+MinimalUID=500
|
||||||
|
# Users listed in Include will be included in the face browser and in the
|
||||||
|
# gdmsetup selection list for Automatic/Timed login. Users should be separated
|
||||||
|
# by commas.
|
||||||
|
@@ -364,7 +370,7 @@
|
||||||
|
#ChooserButtonLogo=@pixmapdir@/gdm-foot-logo.png
|
||||||
|
# The standard greeter should shake if a user entered the wrong username or
|
||||||
|
# password. Kind of cool looking
|
||||||
|
-#Quiver=true
|
||||||
|
+Quiver=false
|
||||||
|
|
||||||
|
# The Actions menu (formerly system menu) is shown in the greeter, this is the
|
||||||
|
# menu that contains reboot, shutdown, suspend, config and chooser. None of
|
||||||
|
@@ -401,12 +407,12 @@
|
||||||
|
# Background settings for the standard greeter:
|
||||||
|
# Type can be 0=None, 1=Image & Color, 2=Color, 3=Image
|
||||||
|
#BackgroundType=2
|
||||||
|
-#BackgroundImage=
|
||||||
|
+BackgroundImage=0
|
||||||
|
#BackgroundScaleToFit=true
|
||||||
|
# The Standard greeter (gdmlogin) uses BackgroundColor as the background
|
||||||
|
# color, while the themed greeter (gdmgreeter) uses GraphicalThemedColor
|
||||||
|
# as the background color.
|
||||||
|
-BackgroundColor=#76848F
|
||||||
|
+BackgroundColor=#000000
|
||||||
|
GraphicalThemedColor=#76848F
|
||||||
|
# XDMCP session should only get a color, this is the sanest setting since you
|
||||||
|
# don't want to take up too much bandwidth
|
||||||
|
@@ -448,7 +454,7 @@
|
||||||
|
# list then provide a list that is delimited by /: to the GraphicalThemes
|
||||||
|
# key and set GraphicalThemeRand to true. Otherwise use GraphicalTheme
|
||||||
|
# and specify just one theme.
|
||||||
|
-#GraphicalTheme=circles
|
||||||
|
+GraphicalTheme=GDM-SuSE
|
||||||
|
#GraphicalThemes=circles/:happygnome
|
||||||
|
GraphicalThemeDir=@datadir@/gdm/themes/
|
||||||
|
GraphicalThemeRand=false
|
||||||
|
@@ -465,6 +471,7 @@
|
||||||
|
# executable (see daemon/SoundProgram) it will play that file instead of just
|
||||||
|
# beeping.
|
||||||
|
#SoundOnLogin=true
|
||||||
|
+SoundOnLogin=false
|
||||||
|
#SoundOnLoginFile=
|
||||||
|
# If SoundOnLoginSuccess, then the greeter will play a sound (as above) when a
|
||||||
|
# user successfully logs in.
|
||||||
|
@@ -552,7 +559,7 @@
|
||||||
|
# Definition of the standard X server.
|
||||||
|
[server-Standard]
|
||||||
|
name=Standard server
|
||||||
|
-command=@X_SERVER@ @X_CONFIG_OPTIONS@ @XEVIE_OPTION@
|
||||||
|
+command=@X_SERVER@ @X_CONFIG_OPTIONS@ @XEVIE_OPTION@ -br
|
||||||
|
flexible=true
|
||||||
|
# Indicates that the X server should be started at a different process
|
||||||
|
# priority. Values can be any integer value accepted by the setpriority C
|
10
gdm-gdmsetup-rootonly.patch
Normal file
10
gdm-gdmsetup-rootonly.patch
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
--- gui/gdmsetup.desktop.in.in
|
||||||
|
+++ gui/gdmsetup.desktop.in.in
|
||||||
|
@@ -5,6 +5,7 @@
|
||||||
|
_Comment=Configure the login window (GNOME Display Manager)
|
||||||
|
TryExec=@sbindir@/gdmsetup
|
||||||
|
Exec=gdmsetup
|
||||||
|
+X-KDE-RootOnly=true
|
||||||
|
Icon=gdm-setup
|
||||||
|
StartupNotify=true
|
||||||
|
Terminal=false
|
11
gdm-gdmsetup.patch
Normal file
11
gdm-gdmsetup.patch
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
--- gui/gdmsetup.desktop.in.in
|
||||||
|
+++ gui/gdmsetup.desktop.in.in
|
||||||
|
@@ -3,7 +3,7 @@
|
||||||
|
_Name=Login Window
|
||||||
|
_GenericName=Login Window Preferences
|
||||||
|
_Comment=Configure the login window (GNOME Display Manager)
|
||||||
|
-TryExec=@sbindir@/gdmsetup
|
||||||
|
+TryExec=gdmsetup
|
||||||
|
Exec=gdmsetup
|
||||||
|
X-KDE-RootOnly=true
|
||||||
|
Icon=gdm-setup
|
29
gdm-language-dialog-size.patch
Normal file
29
gdm-language-dialog-size.patch
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
--- gdm-2.8.0.4/gui/greeter/greeter_action_language.c
|
||||||
|
+++ gdm-2.8.0.4/gui/greeter/greeter_action_language.c
|
||||||
|
@@ -212,6 +212,7 @@
|
||||||
|
GtkWidget *swindow;
|
||||||
|
GtkWidget *label;
|
||||||
|
char *s;
|
||||||
|
+ int y_size;
|
||||||
|
|
||||||
|
dialog = gtk_dialog_new_with_buttons (_("Select a language"),
|
||||||
|
#ifdef TODO
|
||||||
|
@@ -264,9 +265,17 @@
|
||||||
|
gtk_container_add (GTK_CONTAINER (swindow), view);
|
||||||
|
gtk_box_pack_start (GTK_BOX (GTK_DIALOG (dialog)->vbox),
|
||||||
|
swindow, TRUE, TRUE, 0);
|
||||||
|
+
|
||||||
|
+ y_size = gdm_wm_screen.height;
|
||||||
|
+ /* If our screen has any sort of reasonable y-resolution,
|
||||||
|
+ don't make the dialog as tall as the screen. This is a
|
||||||
|
+ silly hack, but does make things a bit prettier. */
|
||||||
|
+ if (y_size > 600)
|
||||||
|
+ y_size = 8 * y_size / 10;
|
||||||
|
+
|
||||||
|
gtk_window_set_default_size (GTK_WINDOW (dialog),
|
||||||
|
MIN (400, gdm_wm_screen.width),
|
||||||
|
- MIN (600, gdm_wm_screen.height));
|
||||||
|
+ y_size);
|
||||||
|
g_signal_connect (G_OBJECT (gtk_tree_view_get_selection (GTK_TREE_VIEW (view))),
|
||||||
|
"changed",
|
||||||
|
(GCallback) selection_changed,
|
22
gdm-logdir.patch
Normal file
22
gdm-logdir.patch
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
--- config/Makefile.am
|
||||||
|
+++ config/Makefile.am
|
||||||
|
@@ -5,7 +5,7 @@
|
||||||
|
instsessdir = $(datadir)/xsessions
|
||||||
|
initdir = $(gdmconfdir)/Init
|
||||||
|
authdir = $(localstatedir)/gdm
|
||||||
|
-logdir = $(localstatedir)/log/gdm
|
||||||
|
+logdir = @logdir@
|
||||||
|
gnomercdir = $(gdmconfdir)
|
||||||
|
postdir = $(gdmconfdir)/PostSession
|
||||||
|
predir = $(gdmconfdir)/PreSession
|
||||||
|
--- configure.ac
|
||||||
|
+++ configure.ac
|
||||||
|
@@ -791,7 +791,7 @@
|
||||||
|
#
|
||||||
|
AC_SUBST(authdir, ${localstatedir}/gdm)
|
||||||
|
AC_SUBST(gdmlocaledir, ${gdmconfdir})
|
||||||
|
-AC_SUBST(logdir, ${localstatedir}/log/gdm)
|
||||||
|
+AC_SUBST(logdir, /var/log/gdm)
|
||||||
|
AC_SUBST(pixmapdir, ${datadir}/pixmaps)
|
||||||
|
|
||||||
|
withval=""
|
11
gdm-presession-kde-path.patch
Normal file
11
gdm-presession-kde-path.patch
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
--- gdm-2.16.1/config/PreSession.in
|
||||||
|
+++ gdm-2.16.1/config/PreSession.in
|
||||||
|
@@ -6,7 +6,7 @@
|
||||||
|
#
|
||||||
|
# Note that output goes into the .xsession-errors file for easy debugging
|
||||||
|
#
|
||||||
|
-PATH="@X_PATH@:$PATH:/bin:/usr/bin"
|
||||||
|
+PATH="@X_PATH@:$PATH:/bin:/usr/bin:/opt/kde3/bin"
|
||||||
|
OLD_IFS=$IFS
|
||||||
|
|
||||||
|
gdmwhich () {
|
11
gdm-server-timeout.patch
Normal file
11
gdm-server-timeout.patch
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
--- daemon/gdm.h
|
||||||
|
+++ daemon/gdm.h
|
||||||
|
@@ -270,7 +270,7 @@
|
||||||
|
#define GDM_KEY_CONSOLE_CANNOT_HANDLE "daemon/ConsoleCannotHandle=am,ar,az,bn,el,fa,gu,hi,ja,ko,ml,mr,pa,ta,zh"
|
||||||
|
|
||||||
|
/* How long to wait before assuming an Xserver has timed out */
|
||||||
|
-#define GDM_KEY_XSERVER_TIMEOUT "daemon/GdmXserverTimeout=10"
|
||||||
|
+#define GDM_KEY_XSERVER_TIMEOUT "daemon/GdmXserverTimeout=30"
|
||||||
|
|
||||||
|
/* Per server definitions */
|
||||||
|
#define GDM_KEY_SERVER_PREFIX "server-"
|
251
gdm-xdm-sessions.patch
Normal file
251
gdm-xdm-sessions.patch
Normal file
@ -0,0 +1,251 @@
|
|||||||
|
--- gdm-2.16.1/config/Xsession.in
|
||||||
|
+++ gdm-2.16.1/config/Xsession.in
|
||||||
|
@@ -1,247 +1,3 @@
|
||||||
|
#!@XSESSION_SHELL@
|
||||||
|
-#
|
||||||
|
-# This is SORT OF LIKE an X session, but not quite. You get a command as the
|
||||||
|
-# first argument (it could be multiple words, so run it with "eval"). As a
|
||||||
|
-# special case, the command can be:
|
||||||
|
-# failsafe - Run an xterm only
|
||||||
|
-# default - Run the appropriate Xclients startup (see the code below)
|
||||||
|
-# custom - Run ~/.xsession and if that's not available run 'default'
|
||||||
|
-#
|
||||||
|
-# (Note that other arguments could also follow, but only the command one is
|
||||||
|
-# right now relevant and supported)
|
||||||
|
-#
|
||||||
|
-# The output is ALREADY redirected to .xsession-errors in GDM. This way
|
||||||
|
-# .xsession-errors actually gets more output such as if the PreSession script
|
||||||
|
-# is failing. This also prevents DoS attacks if some app in the users session
|
||||||
|
-# can be prodded to dump lots of stuff on the stdout/stderr. We wish to be
|
||||||
|
-# robust don't we? In case you wish to use an existing script for other DM's,
|
||||||
|
-# you can just not redirect when GDMSESSION is set. GDMSESSION will always
|
||||||
|
-# be set from gdm.
|
||||||
|
-#
|
||||||
|
-# Also note that this is not run as a login shell, this is just executed.
|
||||||
|
-# This is why we source the profile files below.
|
||||||
|
-#
|
||||||
|
-# based on:
|
||||||
|
-# $XConsortium: Xsession /main/10 1995/12/18 18:21:28 gildea $
|
||||||
|
|
||||||
|
-command="$@"
|
||||||
|
-
|
||||||
|
-if [ -z "$command" ] ; then
|
||||||
|
- command=failsafe
|
||||||
|
-fi
|
||||||
|
-
|
||||||
|
-# this will go into the .xsession-errors along with all other echo's
|
||||||
|
-# good for debugging where things went wrong
|
||||||
|
-echo "$0: Beginning session setup..."
|
||||||
|
-
|
||||||
|
-# First read /etc/profile and .profile
|
||||||
|
-test -f /etc/profile && . /etc/profile
|
||||||
|
-test -f "$HOME/.profile" && . "$HOME/.profile"
|
||||||
|
-# Second read /etc/xprofile and .xprofile for X specific setup
|
||||||
|
-test -f /etc/xprofile && . /etc/xprofile
|
||||||
|
-test -f "$HOME/.xprofile" && . "$HOME/.xprofile"
|
||||||
|
-
|
||||||
|
-# Translation stuff
|
||||||
|
-if [ -x "@libexecdir@/gdmtranslate" ] ; then
|
||||||
|
- gdmtranslate="@libexecdir@/gdmtranslate"
|
||||||
|
-else
|
||||||
|
- gdmtranslate=
|
||||||
|
-fi
|
||||||
|
-
|
||||||
|
-# Note that this should only go to zenity dialogs which always expect utf8
|
||||||
|
-gettextfunc () {
|
||||||
|
- if [ "x$gdmtranslate" != "x" ] ; then
|
||||||
|
- "$gdmtranslate" --utf8 "$1"
|
||||||
|
- else
|
||||||
|
- echo "$1"
|
||||||
|
- fi
|
||||||
|
-}
|
||||||
|
-
|
||||||
|
-OLD_IFS=$IFS
|
||||||
|
-
|
||||||
|
-gdmwhich () {
|
||||||
|
- COMMAND="$1"
|
||||||
|
- OUTPUT=
|
||||||
|
- IFS=:
|
||||||
|
- for dir in $PATH
|
||||||
|
- do
|
||||||
|
- if test -x "$dir/$COMMAND" ; then
|
||||||
|
- if test "x$OUTPUT" = "x" ; then
|
||||||
|
- OUTPUT="$dir/$COMMAND"
|
||||||
|
- fi
|
||||||
|
- fi
|
||||||
|
- done
|
||||||
|
- IFS=$OLD_IFS
|
||||||
|
- echo "$OUTPUT"
|
||||||
|
-}
|
||||||
|
-
|
||||||
|
-zenity=`gdmwhich zenity`
|
||||||
|
-
|
||||||
|
-if [ x"$command" = xfailsafe ] ; then
|
||||||
|
- if [ -n "$zenity" ] ; then
|
||||||
|
- disptext=`gettextfunc "This is the failsafe xterm session. Windows now have focus only if you have your cursor above them. To get out of this mode type 'exit' in the window in the upper left corner"`
|
||||||
|
- "$zenity" --info --text "$disptext"
|
||||||
|
- else
|
||||||
|
- echo "$0: Starting the failsafe xterm session."
|
||||||
|
- fi
|
||||||
|
- exec xterm -geometry 80x24+0+0
|
||||||
|
-fi
|
||||||
|
-
|
||||||
|
-# Note: ~/.xsession-errors is now done in the daemon so that it
|
||||||
|
-# works for ALL sessions (except ones named 'Failsafe')
|
||||||
|
-
|
||||||
|
-# clean up after xbanner
|
||||||
|
-freetemp=`gdmwhich freetemp`
|
||||||
|
-if [ -n "$freetemp" ] ; then
|
||||||
|
- "$freetemp"
|
||||||
|
-fi
|
||||||
|
-
|
||||||
|
-userresources="$HOME/.Xresources"
|
||||||
|
-usermodmap="$HOME/.Xmodmap"
|
||||||
|
-userxkbmap="$HOME/.Xkbmap"
|
||||||
|
-
|
||||||
|
-sysresources=/etc/X11/Xresources
|
||||||
|
-sysmodmap=/etc/X11/Xmodmap
|
||||||
|
-sysxkbmap=/etc/X11/Xkbmap
|
||||||
|
-
|
||||||
|
-rh6sysresources=/etc/X11/xinit/Xresources
|
||||||
|
-rh6sysmodmap=/etc/X11/xinit/Xmodmap
|
||||||
|
-
|
||||||
|
-
|
||||||
|
-# merge in defaults
|
||||||
|
-if [ -f "$rh6sysresources" ]; then
|
||||||
|
- xrdb -merge "$rh6sysresources"
|
||||||
|
-fi
|
||||||
|
-
|
||||||
|
-if [ -f "$sysresources" ]; then
|
||||||
|
- xrdb -merge "$sysresources"
|
||||||
|
-fi
|
||||||
|
-
|
||||||
|
-if [ -f "$userresources" ]; then
|
||||||
|
- xrdb -merge "$userresources"
|
||||||
|
-fi
|
||||||
|
-
|
||||||
|
-# merge in keymaps
|
||||||
|
-if [ -f "$sysxkbmap" ]; then
|
||||||
|
- setxkbmap `cat "$sysxkbmap"`
|
||||||
|
- XKB_IN_USE=yes
|
||||||
|
-fi
|
||||||
|
-
|
||||||
|
-if [ -f "$userxkbmap" ]; then
|
||||||
|
- setxkbmap `cat "$userxkbmap"`
|
||||||
|
- XKB_IN_USE=yes
|
||||||
|
-fi
|
||||||
|
-
|
||||||
|
-#
|
||||||
|
-# Eeek, this seems like too much magic here
|
||||||
|
-#
|
||||||
|
-if [ -z "$XKB_IN_USE" -a ! -L /etc/X11/X ]; then
|
||||||
|
- if grep '^exec.*/Xsun' /etc/X11/X > /dev/null 2>&1 && [ -f /etc/X11/XF86Config ]; then
|
||||||
|
- xkbsymbols=`sed -n -e 's/^[ ]*XkbSymbols[ ]*"\(.*\)".*$/\1/p' /etc/X11/XF86Config`
|
||||||
|
- if [ -n "$xkbsymbols" ]; then
|
||||||
|
- setxkbmap -symbols "$xkbsymbols"
|
||||||
|
- XKB_IN_USE=yes
|
||||||
|
- fi
|
||||||
|
- fi
|
||||||
|
-fi
|
||||||
|
-
|
||||||
|
-# xkb and xmodmap don't play nice together
|
||||||
|
-if [ -z "$XKB_IN_USE" ]; then
|
||||||
|
- if [ -f "$rh6sysmodmap" ]; then
|
||||||
|
- xmodmap "$rh6sysmodmap"
|
||||||
|
- fi
|
||||||
|
-
|
||||||
|
- if [ -f "$sysmodmap" ]; then
|
||||||
|
- xmodmap "$sysmodmap"
|
||||||
|
- fi
|
||||||
|
-
|
||||||
|
- if [ -f "$usermodmap" ]; then
|
||||||
|
- xmodmap "$usermodmap"
|
||||||
|
- fi
|
||||||
|
-fi
|
||||||
|
-
|
||||||
|
-unset XKB_IN_USE
|
||||||
|
-
|
||||||
|
-# Normalize languages, some places/distros screw us up in /etc/profile,
|
||||||
|
-# so in case the user did select a language
|
||||||
|
-if [ -n "$GDM_LANG" ]; then
|
||||||
|
- LANG="$GDM_LANG"
|
||||||
|
- export LANG
|
||||||
|
-
|
||||||
|
- if [ -n "$LC_ALL" ]; then
|
||||||
|
- if [ "$LC_ALL" != "$LANG" ]; then
|
||||||
|
- LC_ALL="$LANG"
|
||||||
|
- fi
|
||||||
|
- else
|
||||||
|
- unset LC_ALL
|
||||||
|
- fi
|
||||||
|
-
|
||||||
|
- if [ -n "$LANGUAGE" ]; then
|
||||||
|
- if [ "$LANGUAGE" != "$LANG" ]; then
|
||||||
|
- LANGUAGE="$LANG"
|
||||||
|
- fi
|
||||||
|
- else
|
||||||
|
- unset LANGUAGE
|
||||||
|
- fi
|
||||||
|
-
|
||||||
|
- if [ -n "$LINGUAS" ]; then
|
||||||
|
- if [ "$LINGUAS" != "$LANG" ]; then
|
||||||
|
- LINGUAS="$LANG"
|
||||||
|
- fi
|
||||||
|
- else
|
||||||
|
- unset LINGUAS
|
||||||
|
- fi
|
||||||
|
-fi
|
||||||
|
-
|
||||||
|
-# run all system xinitrc shell scripts.
|
||||||
|
-if [ -d /etc/X11/xinit/xinitrc.d ]; then
|
||||||
|
- for i in /etc/X11/xinit/xinitrc.d/* ; do
|
||||||
|
- if [ -x "$i" ]; then
|
||||||
|
- . "$i"
|
||||||
|
- fi
|
||||||
|
- done
|
||||||
|
-fi
|
||||||
|
-
|
||||||
|
-if [ "x$command" = "xcustom" ] ; then
|
||||||
|
- if [ -x "$HOME/.xsession" ]; then
|
||||||
|
- command="$HOME/.xsession"
|
||||||
|
- else
|
||||||
|
- echo "$0: Cannot find ~/.xsession will try the default session"
|
||||||
|
- command="default"
|
||||||
|
- fi
|
||||||
|
-fi
|
||||||
|
-
|
||||||
|
-if [ "x$command" = "xdefault" ] ; then
|
||||||
|
- if [ -x "$HOME/.Xclients" ]; then
|
||||||
|
- command="$HOME/.Xclients"
|
||||||
|
- elif [ -x /etc/X11/xinit/Xclients ]; then
|
||||||
|
- command="/etc/X11/xinit/Xclients"
|
||||||
|
- elif [ -x /etc/X11/Xclients ]; then
|
||||||
|
- command="/etc/X11/Xclients"
|
||||||
|
- else
|
||||||
|
- echo "$0: Cannot find Xclients"
|
||||||
|
- # FIXME: kind of an evil failsafe
|
||||||
|
- command="xsm"
|
||||||
|
- fi
|
||||||
|
-fi
|
||||||
|
-
|
||||||
|
-# add ssh-agent if found
|
||||||
|
-sshagent="`gdmwhich ssh-agent`"
|
||||||
|
-if [ -n "$sshagent" ] && [ -x "$sshagent" ] && [ -z "$SSH_AUTH_SOCK" ]; then
|
||||||
|
- command="$sshagent -- $command"
|
||||||
|
-elif [ -z "$sshagent" ] ; then
|
||||||
|
- echo "$0: ssh-agent not found!"
|
||||||
|
-fi
|
||||||
|
-
|
||||||
|
-echo "$0: Setup done, will execute: $command"
|
||||||
|
-
|
||||||
|
-eval exec $command
|
||||||
|
-
|
||||||
|
-echo "$0: Executing $command failed, will run xterm"
|
||||||
|
-
|
||||||
|
-if [ -n "$zenity" ] ; then
|
||||||
|
- disptext=`gettextfunc "Failed to start the session, so starting a failsafe xterm session. Windows will have focus only if the mouse pointer is above them. To get out of this mode type 'exit' in the window in the upper left corner"`
|
||||||
|
- "$zenity" --info --text "$disptext"
|
||||||
|
-fi
|
||||||
|
-
|
||||||
|
-exec xterm -geometry 80x24+0+0
|
||||||
|
+exec /etc/X11/xdm/Xsession $1 $GDM_LANG
|
987
gdm.changes
Normal file
987
gdm.changes
Normal file
@ -0,0 +1,987 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Dec 28 17:42:47 CET 2006 - jhargadon@suse.de
|
||||||
|
|
||||||
|
- added klogd to Requires (#214295)
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Dec 12 14:29:39 CET 2006 - sbrabec@suse.cz
|
||||||
|
|
||||||
|
- Fixed SuSEconfig typo in XDMCP Enable (#221350).
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Dec 11 18:15:07 CET 2006 - maw@suse.de
|
||||||
|
|
||||||
|
- Add gdm-bufferoverrun.patch, fixing a format string exploit
|
||||||
|
(#226360).
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Nov 30 19:13:34 CET 2006 - jhargadon@suse.de
|
||||||
|
|
||||||
|
- removed unneeded files from the package (#223687)
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Nov 21 08:29:57 CET 2006 - jpr@suse.de
|
||||||
|
|
||||||
|
- Fix missing comment in config file (rest of #221383)
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Nov 17 12:40:55 CET 2006 - jpr@suse.de
|
||||||
|
|
||||||
|
- Fix where last_domain is saved (#221543)
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Nov 16 19:59:22 CET 2006 - danw@suse.de
|
||||||
|
|
||||||
|
- Remove the ssh session, which has never worked correctly on SUSE.
|
||||||
|
#220731
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Nov 8 08:08:14 CET 2006 - hpj@suse.de
|
||||||
|
|
||||||
|
- Update and re-enable gdm-bash-profile.patch.
|
||||||
|
- Update and re-enable gdm-2.8.0.0-setup-no-flicker.patch.
|
||||||
|
- Drop gdm-2.8.0.0-timed-login-enact.patch (similar fix upstream).
|
||||||
|
- Update and re-enable gdm-2.8.0.7-domain-entry.patch.
|
||||||
|
- Update and re-enable gdm-2.8.0.7-hald-needs-root.patch.
|
||||||
|
- Drop gdm-2.8.0.7-user-must-own-iceauthority (upstream).
|
||||||
|
- Update gdm-autobuild-warning.patch (conflict with previous patch).
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Oct 31 16:53:31 CET 2006 - sbrabec@suse.cz
|
||||||
|
|
||||||
|
- Rewritten SuSEconfig.gdm to work better with new custom.conf
|
||||||
|
(#213037).
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Oct 27 17:33:35 CEST 2006 - jhargadon@suse.de
|
||||||
|
|
||||||
|
- changed TryExec to be the same as Exec in gdmsetup.desktop to
|
||||||
|
resolve bug #210943
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Oct 23 22:20:32 CEST 2006 - jhargadon@suse.de
|
||||||
|
|
||||||
|
- mkdir /var/log/gdm (#213737)
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Oct 12 21:52:14 CEST 2006 - danw@suse.de
|
||||||
|
|
||||||
|
- Remove some dead patches. Rename a few for consistency
|
||||||
|
- Update and re-enable gdm-server-timeout.patch
|
||||||
|
- Update and re-enable gdm-logdir.patch (#211223)
|
||||||
|
- Add gdm-X_SERVER.patch to fix Xorg/Xgl switching
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Oct 3 17:57:55 CEST 2006 - jhargadon@suse.de
|
||||||
|
|
||||||
|
- update to version 2.16.1
|
||||||
|
- Use g_markup_printf_escaped so gdmsetup better handles
|
||||||
|
description strings that contains things similar to a tag
|
||||||
|
like an email address
|
||||||
|
- Fix gdmsetup so that the window manager close button works
|
||||||
|
as the Close button in the dialog
|
||||||
|
- Fix for bug #352838, avoid crashing by moving call to get
|
||||||
|
GDM_KEY_SYSTEM_MENU until after authentication check.
|
||||||
|
- Add g_type_init() to gdmflexiserver since this is needed
|
||||||
|
for -a (authentication) code to work.
|
||||||
|
- Translation updates
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Sep 26 17:47:04 CEST 2006 - jhargadon@suse.de
|
||||||
|
|
||||||
|
- removed am_devperm.so from gdm.pamd and gdm-autologin.pamd
|
||||||
|
to resolve bug #206963
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Sep 20 22:26:54 CEST 2006 - jhargadon@suse.de
|
||||||
|
|
||||||
|
- modified SuSEconfig.gdm to reflect the name change of gdm.conf
|
||||||
|
to custom.conf. bug #206904
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Sep 14 19:08:38 CEST 2006 - jhargadon@suse.de
|
||||||
|
|
||||||
|
- update to version 2.16.0
|
||||||
|
- Minor improvements to SDTLOGIN logic, used on Solaris to drop the
|
||||||
|
Xserver to user permissions for added security
|
||||||
|
- Translation updates
|
||||||
|
- 327530 - Ensure login window always has focus.
|
||||||
|
- 341619 - No longer save "Failsafe" sessions as user's default login
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Sep 4 10:58:24 CEST 2006 - kukuk@suse.de
|
||||||
|
|
||||||
|
- Add pam_loginuid.so to gdm.pamd and gdm-autologin.pamd
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Aug 30 23:46:48 CEST 2006 - jhargadon@suse.de
|
||||||
|
|
||||||
|
- update to version 2.15.10
|
||||||
|
- Now gdmlogin centers cursor in the GUI to ensure that the login
|
||||||
|
window always has focus
|
||||||
|
- Translation updates
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Aug 24 18:56:28 CEST 2006 - sbrabec@suse.cz
|
||||||
|
|
||||||
|
- Include xorg-x11-server to BuildRequires to properly detect Xorg
|
||||||
|
version (#201125).
|
||||||
|
- Enabled parallel build.
|
||||||
|
- Enabled secure remote session support.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Aug 23 17:07:34 CEST 2006 - jhargadon@suse.de
|
||||||
|
|
||||||
|
- update to version 2.15.9
|
||||||
|
- Fix so that focus never leaves the user/password entry when using
|
||||||
|
the gdmgreeter Options button.
|
||||||
|
- Fix error message that gets printed when you try to run GDM
|
||||||
|
daemon as a non-root user.
|
||||||
|
- Remove calls to syslog/malloc that are called from inside signal
|
||||||
|
handlers, since they are not safe.
|
||||||
|
- Translation updates
|
||||||
|
- Fix to bugs causing gdmchooser to core dump when started.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Aug 10 19:07:00 CEST 2006 - jhargadon@suse.de
|
||||||
|
|
||||||
|
- update to version 2.15.7
|
||||||
|
- Now GDM does not save Failsafe GNOME or Failsafe Xterm as the
|
||||||
|
user's default session
|
||||||
|
- Updated GDM's slave/daemon message handling so it uses
|
||||||
|
giochannel internal buffering.
|
||||||
|
- Performance improvements to gdmsetup start-up.
|
||||||
|
- Translation updates
|
||||||
|
- Timed Login message fixed so it works when TimedLogin is set to a
|
||||||
|
piped script.
|
||||||
|
- Fix decoding of suspend command so it works.
|
||||||
|
- Make sure that focus is returned to entry after dialogs are launched
|
||||||
|
from the new Options button.
|
||||||
|
- NoHost icon updated to use official GNOME logo. New default face
|
||||||
|
image with a facelift.
|
||||||
|
- Scrolling regions in gdmsetup User tab are now scrollable
|
||||||
|
vertically, improving UI experience.
|
||||||
|
- Correction to autologin PAM service name so automatic login works.
|
||||||
|
- Fix compiler warnings that were causing core dumping issues on
|
||||||
|
some platforms
|
||||||
|
- Correction for serious security issue where the user can enter the
|
||||||
|
GDM configuration GUI with a user password when the Face Browser
|
||||||
|
is enabled.
|
||||||
|
- Fixed bug where when the "Include All" button is modified in the
|
||||||
|
Users tab, the Automatic/Timed login dropdown lists update
|
||||||
|
properly.
|
||||||
|
- Now gdmflexiserver calls gdmcomm_check with FALSE so it will not
|
||||||
|
pop up a dialog.
|
||||||
|
- Added gestures to the AccessKeyMouseEvents configuration file
|
||||||
|
so that users can access more accessibility features using
|
||||||
|
dwell gestures.
|
||||||
|
- Now Welcome message is saved in the configuration file in
|
||||||
|
UTF-8 format for better readibility.
|
||||||
|
- Improvements to Face Browser.
|
||||||
|
- Now when GTK+ style buttons are used in gdmgreeter themes,
|
||||||
|
focus always returns to the entry field after clicking on
|
||||||
|
a button.
|
||||||
|
- Now per-display configuration works for greeter/SystemMenu
|
||||||
|
and greeter/ChooserButton keys.
|
||||||
|
- "make install" no longer fails if chown fails.
|
||||||
|
- If authdir is the fallback dir. If not, and GDM cannot
|
||||||
|
access the user's $HOME directory, then try and use the
|
||||||
|
fallback directory.
|
||||||
|
- No longer use popt in favor of glib's GOption command line parsing.
|
||||||
|
- Fix bug that was causing ShowGnomeFailsafeSession and
|
||||||
|
ShowGnomeXtermSession configuration values to not work.
|
||||||
|
- Now add gdm-ssh-session to distribution tarball, and fix the
|
||||||
|
ssh-session.desktop file so that it sets the right TryExec
|
||||||
|
value even if --libexecdir isn't passed into configure.
|
||||||
|
- Fix layout of new buttons in gdmgreeter themes.
|
||||||
|
- Improvements to signal handling, fixing problem where GDM slave can
|
||||||
|
hang on read.
|
||||||
|
- Better configure support for FreeBSD.
|
||||||
|
- Fix security/AllowRemoteAutoLogin and fix SuspendCommand configuration
|
||||||
|
so it honors SystemMenu.
|
||||||
|
- Explicitly adjust the effective GID before running the child session
|
||||||
|
program to avoid remaining with high privileges.
|
||||||
|
- Now allow the PAM Stack to be specified in the GDM configuration instead
|
||||||
|
of being hardcoded to "gdm"
|
||||||
|
- Per-display configuration is now supported.
|
||||||
|
- Greeter themes now support real GTK+ button types, making gdmgreeter
|
||||||
|
better support a11y and allow GTK themeable buttons.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Jun 9 23:36:47 CEST 2006 - hpj@suse.de
|
||||||
|
|
||||||
|
- Update domain entry patch to default to the currently joined
|
||||||
|
Active Directory domain if there was no stored preference. Fixes
|
||||||
|
Novell bug #167344.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Jun 1 01:06:50 CEST 2006 - hpj@suse.de
|
||||||
|
|
||||||
|
- Don't let any user configure GDM from the login screen if a
|
||||||
|
theme with user list is in effect. Fixes Novell bug #180219.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Jun 1 00:29:36 CEST 2006 - dreveman@suse.de
|
||||||
|
|
||||||
|
- Fix bg patch and change gdm.conf patch so we pass -br to X
|
||||||
|
server for black root window. (bnc 179847)
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed May 24 17:43:36 CEST 2006 - sbrabec@suse.cz
|
||||||
|
|
||||||
|
- Do not display Japanese string in terminal, which doesn't support
|
||||||
|
it (#168736).
|
||||||
|
- Disabled beep on start (#174786).
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri May 19 03:14:51 CEST 2006 - hpj@suse.de
|
||||||
|
|
||||||
|
- Made GDM use the more graphically intensive, but prettier,
|
||||||
|
gdmgreeter for remote logins. Fixes Novell bug #176661.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue May 16 17:12:18 CEST 2006 - sbrabec@suse.cz
|
||||||
|
|
||||||
|
- Do not require exact UID 50 (it can fail, if already assigned).
|
||||||
|
- Do not fail, if group gdm already exists.
|
||||||
|
- Behave properly, if gdm.conf defines server 1 (#175829).
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri May 12 15:41:56 CEST 2006 - sbrabec@suse.cz
|
||||||
|
|
||||||
|
- Store value of PERMISSION_SECURITY by SuSEconfig in
|
||||||
|
gdm_sysconfig.conf (169639#c20).
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue May 9 04:37:58 CEST 2006 - hpj@suse.de
|
||||||
|
|
||||||
|
- Made GDM use the "gdm" group instead of shadow. Fixes Novell bug
|
||||||
|
#119651.
|
||||||
|
- Made use of the tab key work like pressing enter if there is no
|
||||||
|
other entry to tab to. Part of fix for Novell bug #160879 and
|
||||||
|
#167343.
|
||||||
|
- Made use of the enter key in the domain entry work like it does
|
||||||
|
in the user/password entry. Par of fix for Novell bug #160879
|
||||||
|
and #167343.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Apr 26 20:30:17 CEST 2006 - hpj@suse.de
|
||||||
|
|
||||||
|
- Added patch to show info messages in dialog. Needed for AD,
|
||||||
|
resolves bug #162146.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Apr 10 19:30:20 CEST 2006 - hpj@suse.de
|
||||||
|
|
||||||
|
- Update .ICEauthority fixup patch, corrects serious security
|
||||||
|
problem (bug #164520).
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Apr 7 14:44:49 CEST 2006 - sbrabec@suse.cz
|
||||||
|
|
||||||
|
- Use translation compendium gnome-patch-translation.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Apr 6 17:20:22 CEST 2006 - hpj@suse.de
|
||||||
|
|
||||||
|
- Add patch to fix logic for .ICEauthority permissions correction.
|
||||||
|
Fixes bug #162952.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Mar 31 20:32:14 CEST 2006 - jpr@suse.de
|
||||||
|
|
||||||
|
- Extend gdm timeout to 30 seconds, 10 seconds is too short for the
|
||||||
|
ATI driver to respond under Xgl
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Mar 20 18:55:07 CET 2006 - federico@novell.com
|
||||||
|
|
||||||
|
- Fixed uninstallation of symbolic links for the earlygdm startup
|
||||||
|
service, bug #158786.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Sat Mar 11 09:37:56 CET 2006 - coolo@suse.de
|
||||||
|
|
||||||
|
- fix the only-show-in-gnome patch to patch the .desktop.in
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Mar 7 01:10:57 CET 2006 - federico@novell.com
|
||||||
|
|
||||||
|
- Fix installation of the earlygdm service; we were not calling
|
||||||
|
fillup_and_insserv with "displaymanager" for the configuration
|
||||||
|
filename.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Mar 1 17:26:22 CET 2006 - sbrabec@suse.cz
|
||||||
|
|
||||||
|
- KDM_SHUTDOWN renamed to DISPLAYMANAGER_SHUTDOWN, use fillup only
|
||||||
|
in PLUS (148468#c17).
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Feb 28 15:25:33 CET 2006 - sbrabec@suse.cz
|
||||||
|
|
||||||
|
- Use kdelibs3-doc in BuildRequires for meinproc (#153635#c14).
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Sat Feb 25 00:39:07 CET 2006 - hpj@suse.de
|
||||||
|
|
||||||
|
- Add patch to fix tab keynav.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Feb 17 22:49:27 CET 2006 - sreeves@suse.de
|
||||||
|
|
||||||
|
- Update .desktop file (Name, GenericName, Comment, DocPath)
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Feb 17 18:45:57 CET 2006 - gekker@suse.de
|
||||||
|
|
||||||
|
- Fix background color in GDM, it should be black
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Feb 17 13:26:52 CET 2006 - sbrabec@suse.cz
|
||||||
|
|
||||||
|
- Added sysconfig fillup template (148468#c15).
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Feb 13 19:59:06 CET 2006 - sbrabec@suse.cz
|
||||||
|
|
||||||
|
- Implemented KDM_SHUTDOWN to SuSEconfig.gdm (#148468).
|
||||||
|
- Set AllowRemoteRoot=false in gdm.conf to follow default
|
||||||
|
sysconfig.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Feb 13 08:54:30 CET 2006 - hpj@suse.de
|
||||||
|
|
||||||
|
- Updated shutdown options patch: Whether to allow shutdown,
|
||||||
|
and whether this requires root auth, are the two new options.
|
||||||
|
- Enforce shutdown options on logout as well.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Feb 10 13:56:01 CET 2006 - coolo@suse.de
|
||||||
|
|
||||||
|
- don't show gdm desktop files in KDE
|
||||||
|
- use the new way to call preload
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Feb 6 15:56:05 CET 2006 - sbrabec@suse.cz
|
||||||
|
|
||||||
|
- Implemented DISPLAYMANAGER_AD_INTEGRATION to SuSEconfig.gdm
|
||||||
|
(#139338).
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Feb 6 08:03:56 CET 2006 - hpj@suse.de
|
||||||
|
|
||||||
|
- Updated domain entry patch to use --all-domains with wbinfo.
|
||||||
|
- Updated domain entry patch to show "<Local>" for local login.
|
||||||
|
- Added patch to require root auth to halt or reboot.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Jan 25 21:31:32 CET 2006 - mls@suse.de
|
||||||
|
|
||||||
|
- converted neededforbuild to BuildRequires
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Jan 19 03:10:27 CET 2006 - hpj@suse.de
|
||||||
|
|
||||||
|
- Updated the domain logon patch with numerous new features and
|
||||||
|
cosmetic fixes.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Jan 17 00:53:36 CET 2006 - hpj@suse.de
|
||||||
|
|
||||||
|
- Fixed a bug in logon code that prevented domain logons from
|
||||||
|
working. Updated domain logon patch.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Jan 13 14:20:36 CET 2006 - schwab@suse.de
|
||||||
|
|
||||||
|
- Don't strip binaries.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Jan 10 19:34:58 CET 2006 - hpj@suse.de
|
||||||
|
|
||||||
|
- Added domain logon patch for ADS.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Dec 5 19:00:47 CET 2005 - gekker@suse.de
|
||||||
|
|
||||||
|
- Updated background patch from David Reveman
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Nov 30 21:46:13 CET 2005 - gekker@suse.de
|
||||||
|
|
||||||
|
- Update o version 2.8.0.7
|
||||||
|
- Remove upstream patch
|
||||||
|
- Fixup patch for background colors
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Nov 10 20:42:49 CET 2005 - rml@suse.de
|
||||||
|
|
||||||
|
- Add earlygdm init script. Right now, we just preload gnome bits.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Nov 2 19:08:30 CET 2005 - gekker@suse.de
|
||||||
|
|
||||||
|
- Fix so ctrl-alt-backspacing restarts the xserver (#113718)
|
||||||
|
- Patch from upstream b.g.o (#152906)
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Oct 17 18:12:52 CEST 2005 - gekker@suse.de
|
||||||
|
|
||||||
|
- Make gdm.conf %config(noreplace)
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Oct 14 04:03:05 CEST 2005 - hpj@suse.de
|
||||||
|
|
||||||
|
- Updated xauthority-across-hostname-changes patch to use
|
||||||
|
XAUTHLOCALHOSTNAME environment variable.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Oct 13 23:31:08 CEST 2005 - gekker@suse.de
|
||||||
|
|
||||||
|
- Update to version 2.8.0.5
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Oct 5 00:45:28 CEST 2005 - gekker@suse.de
|
||||||
|
|
||||||
|
- Rediff patch for background colors
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Oct 4 18:32:54 CEST 2005 - gekker@suse.de
|
||||||
|
|
||||||
|
- Fix background colors to be consistent on startup
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Sep 20 18:02:09 CEST 2005 - sbrabec@suse.cz
|
||||||
|
|
||||||
|
- Removed references to build directory in installed .la files.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Sep 15 22:04:29 CEST 2005 - gekker@suse.de
|
||||||
|
|
||||||
|
- Make Industrial the default Gtk+ theme (114173)
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Sep 6 10:59:31 CEST 2005 - sbrabec@suse.cz
|
||||||
|
|
||||||
|
- Updated to version 2.8.0.4.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Aug 23 00:13:52 CEST 2005 - gekker@suse.de
|
||||||
|
|
||||||
|
- Update to version 2.8.0.3
|
||||||
|
- Remove upstreamed autologin patch
|
||||||
|
- Now installs .desktop files in correct location no need to move
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Sat Aug 20 02:32:02 CEST 2005 - hpj@suse.de
|
||||||
|
|
||||||
|
- Make the default session option work on autologin; we now get GNOME.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Aug 16 15:03:33 CEST 2005 - sbrabec@suse.cz
|
||||||
|
|
||||||
|
- Use gnome-screensaver instead of xscreensaver.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Aug 12 23:17:00 CEST 2005 - hpj@suse.de
|
||||||
|
|
||||||
|
- Made gdm-autologin.pam not require a password.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Aug 12 14:45:24 CEST 2005 - jpr@suse.de
|
||||||
|
|
||||||
|
- require xorg-x11-xnest for the gdmflexiserver -n option
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Aug 11 22:43:50 CEST 2005 - gekker@suse.de
|
||||||
|
|
||||||
|
- Update to version 2.8.0.2
|
||||||
|
- Make 64bit clean
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Sun Jul 31 04:07:41 CEST 2005 - jpr@suse.de
|
||||||
|
|
||||||
|
- turn on compatibility symlink for all products
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Jul 5 18:43:34 CEST 2005 - gekker@suse.de
|
||||||
|
|
||||||
|
- Update to version 2.8.0.1
|
||||||
|
- Do not use hostname in authentication cookie (82688).
|
||||||
|
- Disabling of "timed login" doesn't work (8060).
|
||||||
|
- Issues with "timed login" being set to zero (8024).
|
||||||
|
- Display flickers for every letter typed (6354).
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Jun 24 16:28:36 CEST 2005 - sbrabec@suse.cz
|
||||||
|
|
||||||
|
- Added compatibility symlink %{prefix}/bin/gdm for older products.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Jun 22 18:46:39 CEST 2005 - gekker@suse.de
|
||||||
|
|
||||||
|
- Update to version 2.8.0.0
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Apr 22 17:17:20 CEST 2005 - sbrabec@suse.cz
|
||||||
|
|
||||||
|
- Implemended DISPLAYMANAGER_PASSWORD_LESS_LOGIN using SuSEconfig
|
||||||
|
and PAM configuration (#74198).
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Apr 22 14:52:13 CEST 2005 - sbrabec@suse.cz
|
||||||
|
|
||||||
|
- Fixed logdir (#56205).
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Mar 21 17:56:58 CET 2005 - jody@suse.de
|
||||||
|
|
||||||
|
- Fix typo in upstream package that broke Shutdown
|
||||||
|
- Repaired Suspend command to actually work
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Mar 18 13:02:29 CET 2005 - sbrabec@suse.cz
|
||||||
|
|
||||||
|
- Removed X-Ximian-Settings (#73047).
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Mar 16 18:15:11 CET 2005 - sbrabec@suse.cz
|
||||||
|
|
||||||
|
- Fixed capplets desktop files path.
|
||||||
|
- Added X-Ximian-Settings to gdmsetup and gdmphotosetup (#73047).
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Mar 15 15:16:21 CET 2005 - sbrabec@suse.cz
|
||||||
|
|
||||||
|
- Fixed X-KDE-RootOnly in gdmsetup.desktop (#66693).
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Mar 9 18:00:50 CET 2005 - gekker@suse.de
|
||||||
|
|
||||||
|
- Update to version 2.6.0.8 (GNOME 2.10).
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Feb 18 14:17:47 CET 2005 - sbrabec@suse.cz
|
||||||
|
|
||||||
|
- Remove gdm_sysconfig.conf before update to force gdm.conf configuration.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Feb 11 14:20:37 CET 2005 - sbrabec@suse.cz
|
||||||
|
|
||||||
|
- Resource only /usr/share/xsessions for session desktop files.
|
||||||
|
- Fixed tcp_wrappers support on bi-arch.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Feb 10 23:41:34 CET 2005 - gekker@suse.de
|
||||||
|
|
||||||
|
- Update to version 2.6.0.7
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Feb 9 17:44:01 CET 2005 - sbrabec@suse.cz
|
||||||
|
|
||||||
|
- Cleaned-up configuration and patches.
|
||||||
|
- Prepared moving of session files to windowmanager packages.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Feb 8 19:54:09 CET 2005 - gekker@suse.de
|
||||||
|
|
||||||
|
- Add patch back to fix Xsession file
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Jan 24 13:49:37 CET 2005 - meissner@suse.de
|
||||||
|
|
||||||
|
- added missing NULL in a g_strconcat.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Jan 20 18:37:53 CET 2005 - gekker@suse.de
|
||||||
|
|
||||||
|
- Update to version 2.6.0.6
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Nov 17 11:48:08 CET 2004 - hhetter@suse.de
|
||||||
|
|
||||||
|
- add X-KDE-RootOnly to gdmsetup.desktop (#45807)
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Nov 15 14:32:03 CET 2004 - kukuk@suse.de
|
||||||
|
|
||||||
|
- Use common-* PAM config files for gdm and gdm-autologin
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Oct 26 22:31:11 CEST 2004 - mmj@suse.de
|
||||||
|
|
||||||
|
- Locale rename no to nb
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Oct 15 15:54:08 CEST 2004 - sbrabec@suse.cz
|
||||||
|
|
||||||
|
- Implemented sysconfig displaymanager support.
|
||||||
|
|
||||||
|
------------------------------------------------------------------
|
||||||
|
Fri Sep 24 09:42:35 CEST 2004 - hhetter@suse.de
|
||||||
|
|
||||||
|
- gdm must require gnome-themes, to ensure availability of
|
||||||
|
the industrial theme (#44330)
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Aug 25 08:03:50 CEST 2004 - clahey@suse.de
|
||||||
|
|
||||||
|
- Cache gdm help and show gdm in khelpcenter.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Aug 16 23:32:05 CEST 2004 - ro@suse.de
|
||||||
|
|
||||||
|
- fixed specfile
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Aug 16 07:03:59 CEST 2004 - shprasad@suse.de
|
||||||
|
|
||||||
|
- Fixes bug #60020
|
||||||
|
Invalid username/passwd input doen't bring the password dialog
|
||||||
|
for timed login user.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Jul 30 11:54:42 CEST 2004 - ro@suse.de
|
||||||
|
|
||||||
|
- fix spec file, list gdm-session-startkde.diff as patch
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Jul 30 05:39:33 CEST 2004 - shprasad@suse.de
|
||||||
|
|
||||||
|
- Fixes bug #60867.
|
||||||
|
Shows the 'KDE' option when the user clicks on 'Session' at the
|
||||||
|
time of login.
|
||||||
|
(In the spec file, the diff file, gdm-session-startkde.diff, is
|
||||||
|
applied at the %install section)
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Jun 24 00:03:24 CEST 2004 - dave@suse.de
|
||||||
|
|
||||||
|
- Added gdm-presession-kde-path.patch, adds /opt/kde3/bin to the
|
||||||
|
gdm path
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Jun 11 23:31:01 CEST 2004 - clahey@suse.de
|
||||||
|
|
||||||
|
- Added gdm-support-gdmctl.patch.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Jun 2 21:26:45 CEST 2004 - mibarra@suse.de
|
||||||
|
|
||||||
|
- Fixed gdm.conf to use the correct group
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Jun 2 16:43:29 CEST 2004 - clahey@suse.de
|
||||||
|
|
||||||
|
- Set theme to industrial (as well as a few other small changes.)
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri May 7 15:33:13 CEST 2004 - hhetter@suse.de
|
||||||
|
|
||||||
|
- updated to version 2.6.0.0 [GNOME2.6]
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Mar 31 13:44:10 CEST 2004 - hhetter@suse.de
|
||||||
|
|
||||||
|
- startup in graphical theme (#37668)
|
||||||
|
- Require gnome2-SuSE for the Default Theme (#37707)
|
||||||
|
- honor xdm scripts (#37852)
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Mar 23 13:43:10 CET 2004 - sbrabec@suse.cz
|
||||||
|
|
||||||
|
- Non-UTF-8 locales removed from language menu.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Mar 22 22:09:39 CET 2004 - hhetter@suse.de
|
||||||
|
|
||||||
|
- remove SuSEconfig.gdm; it's no longer needed to manage
|
||||||
|
the available sessions for gdm, as it is now using desktop
|
||||||
|
files to define it's sessions (#36267)
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Mar 15 14:35:34 CET 2004 - sbrabec@suse.cz
|
||||||
|
|
||||||
|
- FHS 2.3 fix (mandir, infodir, #35821).
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Mar 10 10:34:27 CET 2004 - sbrabec@suse.cz
|
||||||
|
|
||||||
|
- Fixed %doc attributes (#33163).
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Mar 9 15:37:48 CET 2004 - hhetter@suse.de
|
||||||
|
|
||||||
|
- include desktop files for sessions
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Mar 2 10:18:38 CET 2004 - hhetter@suse.de
|
||||||
|
|
||||||
|
- updated to version 2.4.4.7 [GNOME 2.4.2]
|
||||||
|
- applied adapted bash-login-shell patch
|
||||||
|
- adapted desktop file patch
|
||||||
|
- adapted configuration file (use tools from powersave)
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Feb 26 09:49:01 CET 2004 - hhetter@suse.de
|
||||||
|
|
||||||
|
- attached patch: gdm-2.4.1.6-bash-login-shell.patch,
|
||||||
|
make sure a login shell is available when using
|
||||||
|
bash
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Feb 20 14:08:05 CET 2004 - sbrabec@suse.cz
|
||||||
|
|
||||||
|
- Package renamed to gdm.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Jan 16 13:08:32 CET 2004 - kukuk@suse.de
|
||||||
|
|
||||||
|
- Add pam-devel to neededforbuild
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Sat Jan 10 15:01:34 CET 2004 - adrian@suse.de
|
||||||
|
|
||||||
|
- add %defattr
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Sep 18 18:31:26 CEST 2003 - adrian@suse.de
|
||||||
|
|
||||||
|
- add Categories
|
||||||
|
- show entries only in Gnome (#31287)
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Sep 5 09:55:00 CEST 2003 - hhetter@suse.de
|
||||||
|
|
||||||
|
- added Obsoletes: gdm
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Aug 19 15:25:30 CEST 2003 - sbrabec@suse.cz
|
||||||
|
|
||||||
|
- Updated neededforbuild (rename of librsvg2, eel2).
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Aug 12 14:37:38 CEST 2003 - hhetter@suse.de
|
||||||
|
|
||||||
|
- updated to version 2.4.1.6
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Jul 28 09:09:58 CEST 2003 - kukuk@suse.de
|
||||||
|
|
||||||
|
- Make sure /var/lib/gdm has correct permissions
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Jul 25 01:49:59 CEST 2003 - hhetter@suse.de
|
||||||
|
|
||||||
|
- move capplets to correct position
|
||||||
|
- fix build
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Jul 16 12:53:49 CEST 2003 - sbrabec@suse.cz
|
||||||
|
|
||||||
|
- Fixed prefix in configuration files.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Jul 14 14:24:54 CEST 2003 - sbrabec@suse.cz
|
||||||
|
|
||||||
|
- GNOME prefix change to /opt/gnome.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Jun 25 19:07:07 CEST 2003 - sbrabec@suse.cz
|
||||||
|
|
||||||
|
- Updated to version 2.4.1.4.
|
||||||
|
- Fixed default path to Xwilling.
|
||||||
|
- Updated neededforbuild.
|
||||||
|
- Use %find_lang.
|
||||||
|
- Prefix clash fix (capplets).
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed May 28 00:56:41 CEST 2003 - ro@suse.de
|
||||||
|
|
||||||
|
- remove unpackaged files from buildroot
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon May 26 18:48:33 CEST 2003 - sbrabec@suse.cz
|
||||||
|
|
||||||
|
- Re-enabled UTF-8 alternatives for all locales.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Sun Mar 16 19:19:16 CET 2003 - adrian@suse.de
|
||||||
|
|
||||||
|
- add resmgr support to pam
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Mar 10 11:29:12 CET 2003 - hhetter@suse.de
|
||||||
|
|
||||||
|
- use LC_MESSAGES instead of LC_ALL for setlocale
|
||||||
|
( Bug Id#24889 )
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Feb 27 14:34:09 CET 2003 - sbrabec@suse.cz
|
||||||
|
|
||||||
|
- Removed gdm wrapper (fixes problems with default language and init
|
||||||
|
script - bug #23875).
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Feb 25 17:09:22 CET 2003 - sbrabec@suse.cz
|
||||||
|
|
||||||
|
- Don't offer UTF-8 locales.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Feb 24 12:10:44 CET 2003 - hhetter@suse.de
|
||||||
|
|
||||||
|
- use graphical greeter by default
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Feb 20 15:52:52 CET 2003 - sbrabec@suse.cz
|
||||||
|
|
||||||
|
- Use system language for GDM login from /etc/sysconfig/language.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Feb 18 17:58:13 CET 2003 - sbrabec@suse.cz
|
||||||
|
|
||||||
|
- Updated default config and locale aliases (UTF-8 locales).
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Feb 7 13:39:25 CET 2003 - hhetter@suse.de
|
||||||
|
|
||||||
|
- updated to 2.4.1.3 [GNOME 2.2.0]
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Feb 7 11:31:37 CET 2003 - kukuk@suse.de
|
||||||
|
|
||||||
|
- Use pam_unix2.so instead of pam_unix.so
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Jan 16 00:33:18 CET 2003 - ro@suse.de
|
||||||
|
|
||||||
|
- use gtk2-devel-packages and libjpeg in neededforbuild
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Jan 07 15:26:36 CET 2003 - sbrabec@suse.cz
|
||||||
|
|
||||||
|
- Update to version 2.4.1.0.
|
||||||
|
- Make Default session file executable.
|
||||||
|
- Added UTF-8 as alternative for all locales.
|
||||||
|
- Turned on TCP wrappers support.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Jan 06 16:48:09 CET 2003 - sbrabec@suse.cz
|
||||||
|
|
||||||
|
- Install SuSE specific PAM configuration (from xdm), fix its install
|
||||||
|
place.
|
||||||
|
- Removed sox from neededforbuild.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Nov 28 14:35:02 CET 2002 - hhetter@suse.de
|
||||||
|
|
||||||
|
- updated to version 2.4.0.12 [GNOME 2.0.3]
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Nov 11 23:49:53 CET 2002 - ro@suse.de
|
||||||
|
|
||||||
|
- changed neededforbuild <xf86 xdevel> to <x-devel-packages>
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Sun Nov 3 15:24:01 CET 2002 - mfabian@suse.de
|
||||||
|
|
||||||
|
- Bug Id #21407: correct wrong spelling of UTF-8 locale names
|
||||||
|
in /etc/opt/gnome2/gdm/locale.alias. de_DE.utf8 was used
|
||||||
|
instead of de_DE.UTF-8 etc., but de_DE.UTF-8 is not supported
|
||||||
|
by X11, although de_DE.utf8 and de_DE.UTF-8 is the same
|
||||||
|
as far as glibc is concerned, the correct spelling is important
|
||||||
|
for X11.
|
||||||
|
- Bug Id #21408: When using gdm2 the usual intialization file
|
||||||
|
of an X session, i.e. ~/.xinitrc, ~/.xsession, ~/.Xmodmap
|
||||||
|
~/.xim etc. were not read. Because of this, inputservers for CJK
|
||||||
|
languages did not start automatically and other default
|
||||||
|
settings were not correct either.
|
||||||
|
I fixed this by improving /etc/opt/gnome2/gdm/Sessions/Default
|
||||||
|
to use 'exec /etc/X11/xdm/Xsession $WINDOWMANGER $GDM_LANG'.
|
||||||
|
This makes the default behaviour when using gdm2 the same
|
||||||
|
as when using kdm or xdm.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Sep 24 16:11:25 CEST 2002 - sbrabec@suse.cz
|
||||||
|
|
||||||
|
- Added alsa-devel to neededforbuild, because esound-devel can require it.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Sep 19 10:54:28 CEST 2002 - sbrabec@suse.cz
|
||||||
|
|
||||||
|
- Added alsa to neededforbuild, because esound can depend on it.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Sep 5 08:36:52 CEST 2002 - hhetter@suse.de
|
||||||
|
|
||||||
|
- updated to version 2.4.0.11, fixing a security issue
|
||||||
|
(no longer open the logging file descriptor as root in
|
||||||
|
slave.c ) ( Bug Id #18908 )
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Sep 2 13:54:12 CEST 2002 - hhetter@suse.de
|
||||||
|
|
||||||
|
- if no session was chosen or previously saved, choose
|
||||||
|
the gnome session ( Bug Id #18729)
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Aug 30 09:28:16 CEST 2002 - hhetter@suse.de
|
||||||
|
|
||||||
|
- fix default script and session linking (Bug Id#18602)
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Aug 22 12:40:32 CEST 2002 - hhetter@suse.de
|
||||||
|
|
||||||
|
- parse correct Session directory (Bug Id#18181)
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Aug 20 09:39:08 CEST 2002 - hhetter@suse.de
|
||||||
|
|
||||||
|
- fix prereq
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Aug 12 15:35:26 CEST 2002 - hhetter@suse.de
|
||||||
|
|
||||||
|
- updated to version 2.4.0.7
|
||||||
|
- fix neddedforbuild
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Aug 7 08:45:36 CEST 2002 - hhetter@suse.de
|
||||||
|
|
||||||
|
- updated to version 2.4.0.5
|
||||||
|
- fix typo in SuSEconfig script (#17438)
|
||||||
|
- fix linking of sessions
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Jul 17 08:29:51 CEST 2002 - hhetter@suse.de
|
||||||
|
|
||||||
|
- updated to version 2.4.0.2
|
||||||
|
* busy cursor when start X
|
||||||
|
* 'System Default' language choice
|
||||||
|
* fix unresponsive behaviour when first asking for
|
||||||
|
username in graphical greeter #83187 (bugzilla.gnome.org)
|
||||||
|
* 'Last' language choice in graphical greeter
|
||||||
|
* 24 hour clock setting in graphical greeter
|
||||||
|
* Happy Gnome Theme Update
|
||||||
|
* more languages supported #84290 (bugzilla.gnome.org)
|
||||||
|
* Translation updates
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Jul 11 09:21:58 CEST 2002 - hhetter@suse.de
|
||||||
|
|
||||||
|
- fix default session
|
||||||
|
- activate graphical gdmgreeter for local logins by default
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Jul 10 08:29:10 CEST 2002 - hhetter@suse.de
|
||||||
|
|
||||||
|
- updated to version 2.4.0.1, bugfix release
|
||||||
|
- SuSEconfig.gdm2 to manage the GDM sessions
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Jul 9 08:44:52 CEST 2002 - hhetter@suse.de
|
||||||
|
|
||||||
|
- initial SuSE package
|
||||||
|
- create gdm user
|
||||||
|
|
7
gdm.pamd
Normal file
7
gdm.pamd
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
#%PAM-1.0
|
||||||
|
auth include common-auth
|
||||||
|
account include common-account
|
||||||
|
password include common-password
|
||||||
|
session required pam_loginuid.so
|
||||||
|
session include common-session
|
||||||
|
session required pam_resmgr.so
|
759
gdm.spec
Normal file
759
gdm.spec
Normal file
@ -0,0 +1,759 @@
|
|||||||
|
#
|
||||||
|
# spec file for package gdm (Version 2.16.1)
|
||||||
|
#
|
||||||
|
# Copyright (c) 2006 SUSE LINUX Products GmbH, Nuernberg, Germany.
|
||||||
|
# This file and all modifications and additions to the pristine
|
||||||
|
# package are under the same license as the package itself.
|
||||||
|
#
|
||||||
|
# Please submit bugfixes or comments via http://bugs.opensuse.org/
|
||||||
|
#
|
||||||
|
|
||||||
|
# norootforbuild
|
||||||
|
|
||||||
|
Name: gdm
|
||||||
|
BuildRequires: gnome-common gnome-doc-utils-devel gnome-patch-translation gnutls-devel intltool kdelibs3-doc libglade2-devel libgnomeprintui-devel libgnomeui-devel librsvg-devel libwnck-devel mDNSResponder-devel pam-devel perl-XML-Parser scrollkeeper tcpd-devel update-desktop-files xorg-x11-server zenity
|
||||||
|
%define prefix /opt/gnome
|
||||||
|
%define sysconfdir /etc%{prefix}
|
||||||
|
PreReq: /usr/sbin/groupadd
|
||||||
|
PreReq: /usr/sbin/useradd
|
||||||
|
PreReq: /usr/sbin/usermod
|
||||||
|
PreReq: %fillup_prereq
|
||||||
|
License: GNU General Public License (GPL)
|
||||||
|
Group: System/GUI/GNOME
|
||||||
|
Autoreqprov: on
|
||||||
|
Version: 2.16.1
|
||||||
|
Release: 44
|
||||||
|
Summary: The GNOME 2.x Display Manager
|
||||||
|
Source: %{name}-%{version}.tar.bz2
|
||||||
|
Source1: gdm.pamd
|
||||||
|
Source2: gdm-autologin.pamd
|
||||||
|
Source3: SuSEconfig.gdm
|
||||||
|
Source4: init.earlygdm
|
||||||
|
Source5: sysconfig.displaymanager-gdm
|
||||||
|
Patch: gdm-conf.patch
|
||||||
|
Patch2: gdm-bash-profile.patch
|
||||||
|
Patch3: gdm-language-dialog-size.patch
|
||||||
|
Patch4: gdm-logdir.patch
|
||||||
|
Patch5: gdm-xdm-sessions.patch
|
||||||
|
Patch9: gdm-presession-kde-path.patch
|
||||||
|
Patch12: gdm-gdmsetup-rootonly.patch
|
||||||
|
Patch13: gdm-2.8.0.0-any-hostname-auth.patch
|
||||||
|
Patch14: gdm-2.8.0.0-list-users.patch
|
||||||
|
Patch15: gdm-2.8.0.0-setup-no-flicker.patch
|
||||||
|
Patch19: gdm-2.8.0.7-bg-4.patch
|
||||||
|
Patch20: gdm-2.8.0.7-domain-entry.patch
|
||||||
|
Patch21: gdm-2.8.0.7-halt-needs-root.patch
|
||||||
|
Patch22: gdm-2.8.0.7-onlyshow-in-gnome.diff
|
||||||
|
Patch24: gdm-server-timeout.patch
|
||||||
|
Patch26: gdm-2.8.0.7-some-info-in-dialog.patch
|
||||||
|
Patch27: gdm-autobuild-warning.patch
|
||||||
|
Patch28: gdm-X_SERVER.patch
|
||||||
|
Patch29: gdm-gdmsetup.patch
|
||||||
|
Patch30: gdm-conf-custom-sysconfig.patch
|
||||||
|
Patch31: gdm-bufferoverrun.patch
|
||||||
|
URL: http://www.gnome.org/
|
||||||
|
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||||
|
Docdir: %{_defaultdocdir}
|
||||||
|
Provides: gdm2
|
||||||
|
Obsoletes: gdm2
|
||||||
|
Requires: gnome2-SuSE gnome-themes klogd xorg-x11-Xnest
|
||||||
|
|
||||||
|
%description
|
||||||
|
This version of GDM, the GNOME display manager, is based on GTK2 and is
|
||||||
|
suited for the GNOME 2.x Desktop. GDM is a flexible X Window System
|
||||||
|
display manager that has many options, is usable for remote login, and
|
||||||
|
provides a good looking graphical interface.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Authors:
|
||||||
|
--------
|
||||||
|
George (Jiri) Lebl <jirka@5z.com>
|
||||||
|
Martin K. Petersen <mkp@mkp.net>
|
||||||
|
Alex Larsson <alexl@redhat.com>
|
||||||
|
|
||||||
|
%prep
|
||||||
|
%setup
|
||||||
|
gnome-patch-translation-prepare
|
||||||
|
%patch -p1
|
||||||
|
%patch2 -p1
|
||||||
|
%patch3 -p1
|
||||||
|
%patch4
|
||||||
|
%patch5 -p1
|
||||||
|
%patch9 -p1
|
||||||
|
%patch12
|
||||||
|
%patch13 -p1
|
||||||
|
%patch14 -p1
|
||||||
|
%patch15 -p1
|
||||||
|
%patch19 -p1
|
||||||
|
%if %suse_version > 1000
|
||||||
|
%patch20 -p1
|
||||||
|
%patch21 -p1
|
||||||
|
%endif
|
||||||
|
%patch22 -p1
|
||||||
|
%patch24
|
||||||
|
%patch26 -p1
|
||||||
|
%patch27
|
||||||
|
%patch28
|
||||||
|
%patch29
|
||||||
|
%patch30
|
||||||
|
%patch31 -p1
|
||||||
|
gnome-patch-translation-update
|
||||||
|
|
||||||
|
%build
|
||||||
|
libtoolize --force
|
||||||
|
aclocal -I .
|
||||||
|
automake --add-missing -c
|
||||||
|
autoreconf
|
||||||
|
export ac_aux_dir=$RPM_BUILD_DIR/gdm-%{version}
|
||||||
|
CFLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing " \
|
||||||
|
LDFLAGS=-L/usr/%_lib \
|
||||||
|
./configure \
|
||||||
|
--prefix=%prefix \
|
||||||
|
--libdir=%prefix/%_lib \
|
||||||
|
--sysconfdir=%sysconfdir \
|
||||||
|
--mandir=%prefix/share/man \
|
||||||
|
--localstatedir=/var/lib \
|
||||||
|
--enable-ipv6 \
|
||||||
|
--libexecdir=/opt/gnome/%_lib/gdm \
|
||||||
|
--enable-secureremote
|
||||||
|
make %{?jobs:-j %jobs}
|
||||||
|
|
||||||
|
%install
|
||||||
|
export GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1
|
||||||
|
make -i install DESTDIR=$RPM_BUILD_ROOT
|
||||||
|
unset GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL
|
||||||
|
# Remove wrapper, it is not needed.
|
||||||
|
mv $RPM_BUILD_ROOT%{prefix}/sbin/gdm-binary $RPM_BUILD_ROOT%{prefix}/sbin/gdm
|
||||||
|
# Install PAM files and remove examples.
|
||||||
|
mkdir -p $RPM_BUILD_ROOT/etc/pam.d
|
||||||
|
cp %{S:1} $RPM_BUILD_ROOT/etc/pam.d/gdm
|
||||||
|
cp %{S:2} $RPM_BUILD_ROOT/etc/pam.d/gdm-autologin
|
||||||
|
rm -f $RPM_BUILD_ROOT/etc/opt/gnome/pam.d/gdm
|
||||||
|
rm -f $RPM_BUILD_ROOT/etc/opt/gnome/pam.d/gdm-autologin
|
||||||
|
rmdir $RPM_BUILD_ROOT/etc/opt/gnome/pam.d
|
||||||
|
# Install earlygdm init script.
|
||||||
|
install -D -m 0744 %SOURCE4 $RPM_BUILD_ROOT/etc/init.d/earlygdm
|
||||||
|
# Install PostLogin script.
|
||||||
|
mv $RPM_BUILD_ROOT/etc/opt/gnome/gdm/PostLogin/Default.sample $RPM_BUILD_ROOT/etc/opt/gnome/gdm/PostLogin/Default
|
||||||
|
# Install SuSEconfig script.
|
||||||
|
mkdir -p $RPM_BUILD_ROOT/sbin/conf.d
|
||||||
|
cp %{S:3} $RPM_BUILD_ROOT/sbin/conf.d
|
||||||
|
chmod +x $RPM_BUILD_ROOT/sbin/conf.d/SuSEconfig.gdm
|
||||||
|
%if %suse_version <1010
|
||||||
|
mkdir -p $RPM_BUILD_ROOT/var/adm/fillup-templates
|
||||||
|
cp %{S:5} $RPM_BUILD_ROOT/var/adm/fillup-templates
|
||||||
|
%endif
|
||||||
|
touch $RPM_BUILD_ROOT/etc/opt/gnome/gdm/gdm_sysconfig.conf
|
||||||
|
# gnome.desktop should be in gnome-session, ssh.desktop doesn't work
|
||||||
|
rm $RPM_BUILD_ROOT%{prefix}/share/xsessions/ssh.desktop
|
||||||
|
rm $RPM_BUILD_ROOT%{prefix}/share/xsessions/gnome.desktop
|
||||||
|
mkdir -p $RPM_BUILD_ROOT/usr/share
|
||||||
|
mv $RPM_BUILD_ROOT%{prefix}/share/xsessions $RPM_BUILD_ROOT/usr/share/
|
||||||
|
rmdir $RPM_BUILD_ROOT/etc%{prefix}/dm
|
||||||
|
gzip -9nf $RPM_BUILD_ROOT%{prefix}/share/man/man?/*.?
|
||||||
|
for xml in $RPM_BUILD_ROOT%{prefix}/share/gnome/help/gdm/*/gdm.xml; do
|
||||||
|
meinproc --check --cache `echo $xml | sed 's/xml$/cache.bz2/'` $xml || :
|
||||||
|
done
|
||||||
|
%suse_update_desktop_file gdmsetup SystemSetup
|
||||||
|
%suse_update_desktop_file -G "" gdmphotosetup SystemSetup
|
||||||
|
%suse_update_desktop_file -G "" gdmflexiserver RemoteAccess
|
||||||
|
%suse_update_desktop_file -G "" gdmflexiserver-xnest RemoteAccess
|
||||||
|
echo DocPath=gdm >> $RPM_BUILD_ROOT%{prefix}/share/applications/gdmsetup.desktop
|
||||||
|
echo DocPath=gdm >> $RPM_BUILD_ROOT%{prefix}/share/applications/gdmphotosetup.desktop
|
||||||
|
mkdir -p $RPM_BUILD_ROOT/var/log/gdm
|
||||||
|
%find_lang %{name}
|
||||||
|
ln -s ../sbin/gdm $RPM_BUILD_ROOT%{prefix}/bin/gdm
|
||||||
|
rm $RPM_BUILD_ROOT%{prefix}/%_lib/gtk-2.0/modules/libdwellmouselistener.a
|
||||||
|
rm $RPM_BUILD_ROOT%{prefix}/%_lib/gtk-2.0/modules/libdwellmouselistener.la
|
||||||
|
rm $RPM_BUILD_ROOT%{prefix}/%_lib/gtk-2.0/modules/libkeymouselistener.a
|
||||||
|
rm $RPM_BUILD_ROOT%{prefix}/%_lib/gtk-2.0/modules/libkeymouselistener.la
|
||||||
|
|
||||||
|
%clean
|
||||||
|
rm -rf $RPM_BUILD_ROOT
|
||||||
|
|
||||||
|
%pre
|
||||||
|
# Remove old logs (#56205).
|
||||||
|
rm -f var/lib/gdm/*.log*
|
||||||
|
# Remove old gdm_sysconfig.conf to update custom.conf from sysconfig settings.
|
||||||
|
rm -f etc/opt/gnome/gdm/gdm_sysconfig.conf
|
||||||
|
/usr/sbin/groupadd -r gdm 2> /dev/null || :
|
||||||
|
/usr/sbin/useradd -r -o -g gdm -s /bin/false \
|
||||||
|
-c "Gnome Display Manager daemon" -d /var/lib/gdm gdm 2> /dev/null || :
|
||||||
|
/usr/sbin/usermod -g gdm -G gdm -s /bin/false gdm 2> /dev/null
|
||||||
|
%if %suse_version <1010
|
||||||
|
|
||||||
|
%post
|
||||||
|
%{fillup_only -n displaymanager -s gdm}
|
||||||
|
%{fillup_and_insserv -npY displaymanager earlygdm}
|
||||||
|
|
||||||
|
%postun
|
||||||
|
%insserv_cleanup
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%files -f %files -f %{name}.lang
|
||||||
|
%defattr(-,root,root)
|
||||||
|
%doc AUTHORS COPYING ChangeLog NEWS README TODO
|
||||||
|
%dir %config /etc/opt/gnome/gdm
|
||||||
|
%dir %{prefix}/share/omf/gdm
|
||||||
|
/opt/gnome/share/locale/si
|
||||||
|
/opt/gnome/share/locale/si/LC_MESSAGES
|
||||||
|
%config /etc/%{prefix}/gdm/[IPXl]*
|
||||||
|
#%config(noreplace) /etc/%{prefix}/gdm/gdm.conf
|
||||||
|
%config(noreplace) /etc/%{prefix}/gdm/custom.conf
|
||||||
|
#/etc/%{prefix}/gdm/factory-gdm.conf
|
||||||
|
#/etc/%{prefix}/gdm/custom.conf
|
||||||
|
/etc/%{prefix}/gdm/Xsession
|
||||||
|
%ghost /etc/%{prefix}/gdm/gdm_sysconfig.conf
|
||||||
|
%dir %config /etc/%{prefix}/gdm/modules
|
||||||
|
%config /etc/%{prefix}/gdm/modules/A*
|
||||||
|
/etc/%{prefix}/gdm/modules/factory*
|
||||||
|
/etc/init.d/earlygdm
|
||||||
|
%{prefix}/share/omf/gdm/gdm-*.omf
|
||||||
|
%{prefix}/sbin/*
|
||||||
|
%{prefix}/bin/*
|
||||||
|
%{prefix}/share/gdm
|
||||||
|
%{prefix}/share/applications/*.desktop
|
||||||
|
%{prefix}/share/pixmaps/*.png
|
||||||
|
%{prefix}/share/icons/*
|
||||||
|
%{prefix}/%_lib/gtk-2.0/modules/*
|
||||||
|
%dir %{prefix}/%_lib/gdm
|
||||||
|
%{prefix}/%_lib/gdm/*
|
||||||
|
%doc %{prefix}/share/man/man1/*.*
|
||||||
|
%attr(750,gdm,gdm) %dir /var/lib/gdm
|
||||||
|
%attr(750,gdm,gdm) %dir /var/log/gdm
|
||||||
|
%config /etc/pam.d/*
|
||||||
|
/sbin/conf.d/SuSEconfig.gdm
|
||||||
|
%{prefix}/share/pixmaps/faces
|
||||||
|
%if %suse_version <1010
|
||||||
|
/var/adm/fillup-templates/*
|
||||||
|
%endif
|
||||||
|
# FIXME: Should be moved to filesystem:
|
||||||
|
%dir /usr/share/xsessions
|
||||||
|
|
||||||
|
%changelog -n gdm
|
||||||
|
* Thu Dec 28 2006 - jhargadon@suse.de
|
||||||
|
- added klogd to Requires (#214295)
|
||||||
|
* Tue Dec 12 2006 - sbrabec@suse.cz
|
||||||
|
- Fixed SuSEconfig typo in XDMCP Enable (#221350).
|
||||||
|
* Mon Dec 11 2006 - maw@suse.de
|
||||||
|
- Add gdm-bufferoverrun.patch, fixing a format string exploit
|
||||||
|
(#226360).
|
||||||
|
* Thu Nov 30 2006 - jhargadon@suse.de
|
||||||
|
- removed unneeded files from the package (#223687)
|
||||||
|
* Tue Nov 21 2006 - jpr@suse.de
|
||||||
|
- Fix missing comment in config file (rest of #221383)
|
||||||
|
* Fri Nov 17 2006 - jpr@suse.de
|
||||||
|
- Fix where last_domain is saved (#221543)
|
||||||
|
* Thu Nov 16 2006 - danw@suse.de
|
||||||
|
- Remove the ssh session, which has never worked correctly on SUSE.
|
||||||
|
[#220731]
|
||||||
|
* Wed Nov 08 2006 - hpj@suse.de
|
||||||
|
- Update and re-enable gdm-bash-profile.patch.
|
||||||
|
- Update and re-enable gdm-2.8.0.0-setup-no-flicker.patch.
|
||||||
|
- Drop gdm-2.8.0.0-timed-login-enact.patch (similar fix upstream).
|
||||||
|
- Update and re-enable gdm-2.8.0.7-domain-entry.patch.
|
||||||
|
- Update and re-enable gdm-2.8.0.7-hald-needs-root.patch.
|
||||||
|
- Drop gdm-2.8.0.7-user-must-own-iceauthority (upstream).
|
||||||
|
- Update gdm-autobuild-warning.patch (conflict with previous patch).
|
||||||
|
* Tue Oct 31 2006 - sbrabec@suse.cz
|
||||||
|
- Rewritten SuSEconfig.gdm to work better with new custom.conf
|
||||||
|
(#213037).
|
||||||
|
* Fri Oct 27 2006 - jhargadon@suse.de
|
||||||
|
- changed TryExec to be the same as Exec in gdmsetup.desktop to
|
||||||
|
resolve bug #210943
|
||||||
|
* Mon Oct 23 2006 - jhargadon@suse.de
|
||||||
|
- mkdir /var/log/gdm (#213737)
|
||||||
|
* Thu Oct 12 2006 - danw@suse.de
|
||||||
|
- Remove some dead patches. Rename a few for consistency
|
||||||
|
- Update and re-enable gdm-server-timeout.patch
|
||||||
|
- Update and re-enable gdm-logdir.patch (#211223)
|
||||||
|
- Add gdm-X_SERVER.patch to fix Xorg/Xgl switching
|
||||||
|
* Tue Oct 03 2006 - jhargadon@suse.de
|
||||||
|
- update to version 2.16.1
|
||||||
|
- Use g_markup_printf_escaped so gdmsetup better handles
|
||||||
|
description strings that contains things similar to a tag
|
||||||
|
like an email address
|
||||||
|
- Fix gdmsetup so that the window manager close button works
|
||||||
|
as the Close button in the dialog
|
||||||
|
- Fix for bug #352838, avoid crashing by moving call to get
|
||||||
|
GDM_KEY_SYSTEM_MENU until after authentication check.
|
||||||
|
- Add g_type_init() to gdmflexiserver since this is needed
|
||||||
|
for -a (authentication) code to work.
|
||||||
|
- Translation updates
|
||||||
|
* Tue Sep 26 2006 - jhargadon@suse.de
|
||||||
|
- removed am_devperm.so from gdm.pamd and gdm-autologin.pamd
|
||||||
|
to resolve bug #206963
|
||||||
|
* Wed Sep 20 2006 - jhargadon@suse.de
|
||||||
|
- modified SuSEconfig.gdm to reflect the name change of gdm.conf
|
||||||
|
to custom.conf. bug #206904
|
||||||
|
* Thu Sep 14 2006 - jhargadon@suse.de
|
||||||
|
- update to version 2.16.0
|
||||||
|
- Minor improvements to SDTLOGIN logic, used on Solaris to drop the
|
||||||
|
Xserver to user permissions for added security
|
||||||
|
- Translation updates
|
||||||
|
- 327530 - Ensure login window always has focus.
|
||||||
|
- 341619 - No longer save "Failsafe" sessions as user's default login
|
||||||
|
* Mon Sep 04 2006 - kukuk@suse.de
|
||||||
|
- Add pam_loginuid.so to gdm.pamd and gdm-autologin.pamd
|
||||||
|
* Wed Aug 30 2006 - jhargadon@suse.de
|
||||||
|
- update to version 2.15.10
|
||||||
|
- Now gdmlogin centers cursor in the GUI to ensure that the login
|
||||||
|
window always has focus
|
||||||
|
- Translation updates
|
||||||
|
* Thu Aug 24 2006 - sbrabec@suse.cz
|
||||||
|
- Include xorg-x11-server to BuildRequires to properly detect Xorg
|
||||||
|
version (#201125).
|
||||||
|
- Enabled parallel build.
|
||||||
|
- Enabled secure remote session support.
|
||||||
|
* Wed Aug 23 2006 - jhargadon@suse.de
|
||||||
|
- update to version 2.15.9
|
||||||
|
- Fix so that focus never leaves the user/password entry when using
|
||||||
|
the gdmgreeter Options button.
|
||||||
|
- Fix error message that gets printed when you try to run GDM
|
||||||
|
daemon as a non-root user.
|
||||||
|
- Remove calls to syslog/malloc that are called from inside signal
|
||||||
|
handlers, since they are not safe.
|
||||||
|
- Translation updates
|
||||||
|
- Fix to bugs causing gdmchooser to core dump when started.
|
||||||
|
* Thu Aug 10 2006 - jhargadon@suse.de
|
||||||
|
- update to version 2.15.7
|
||||||
|
- Now GDM does not save Failsafe GNOME or Failsafe Xterm as the
|
||||||
|
user's default session
|
||||||
|
- Updated GDM's slave/daemon message handling so it uses
|
||||||
|
giochannel internal buffering.
|
||||||
|
- Performance improvements to gdmsetup start-up.
|
||||||
|
- Translation updates
|
||||||
|
- Timed Login message fixed so it works when TimedLogin is set to a
|
||||||
|
piped script.
|
||||||
|
- Fix decoding of suspend command so it works.
|
||||||
|
- Make sure that focus is returned to entry after dialogs are launched
|
||||||
|
from the new Options button.
|
||||||
|
- NoHost icon updated to use official GNOME logo. New default face
|
||||||
|
image with a facelift.
|
||||||
|
- Scrolling regions in gdmsetup User tab are now scrollable
|
||||||
|
vertically, improving UI experience.
|
||||||
|
- Correction to autologin PAM service name so automatic login works.
|
||||||
|
- Fix compiler warnings that were causing core dumping issues on
|
||||||
|
some platforms
|
||||||
|
- Correction for serious security issue where the user can enter the
|
||||||
|
GDM configuration GUI with a user password when the Face Browser
|
||||||
|
is enabled.
|
||||||
|
- Fixed bug where when the "Include All" button is modified in the
|
||||||
|
Users tab, the Automatic/Timed login dropdown lists update
|
||||||
|
properly.
|
||||||
|
- Now gdmflexiserver calls gdmcomm_check with FALSE so it will not
|
||||||
|
pop up a dialog.
|
||||||
|
- Added gestures to the AccessKeyMouseEvents configuration file
|
||||||
|
so that users can access more accessibility features using
|
||||||
|
dwell gestures.
|
||||||
|
- Now Welcome message is saved in the configuration file in
|
||||||
|
UTF-8 format for better readibility.
|
||||||
|
- Improvements to Face Browser.
|
||||||
|
- Now when GTK+ style buttons are used in gdmgreeter themes,
|
||||||
|
focus always returns to the entry field after clicking on
|
||||||
|
a button.
|
||||||
|
- Now per-display configuration works for greeter/SystemMenu
|
||||||
|
and greeter/ChooserButton keys.
|
||||||
|
- "make install" no longer fails if chown fails.
|
||||||
|
- If authdir is the fallback dir. If not, and GDM cannot
|
||||||
|
access the user's $HOME directory, then try and use the
|
||||||
|
fallback directory.
|
||||||
|
- No longer use popt in favor of glib's GOption command line parsing.
|
||||||
|
- Fix bug that was causing ShowGnomeFailsafeSession and
|
||||||
|
ShowGnomeXtermSession configuration values to not work.
|
||||||
|
- Now add gdm-ssh-session to distribution tarball, and fix the
|
||||||
|
ssh-session.desktop file so that it sets the right TryExec
|
||||||
|
value even if --libexecdir isn't passed into configure.
|
||||||
|
- Fix layout of new buttons in gdmgreeter themes.
|
||||||
|
- Improvements to signal handling, fixing problem where GDM slave can
|
||||||
|
hang on read.
|
||||||
|
- Better configure support for FreeBSD.
|
||||||
|
- Fix security/AllowRemoteAutoLogin and fix SuspendCommand configuration
|
||||||
|
so it honors SystemMenu.
|
||||||
|
- Explicitly adjust the effective GID before running the child session
|
||||||
|
program to avoid remaining with high privileges.
|
||||||
|
- Now allow the PAM Stack to be specified in the GDM configuration instead
|
||||||
|
of being hardcoded to "gdm"
|
||||||
|
- Per-display configuration is now supported.
|
||||||
|
- Greeter themes now support real GTK+ button types, making gdmgreeter
|
||||||
|
better support a11y and allow GTK themeable buttons.
|
||||||
|
* Fri Jun 09 2006 - hpj@suse.de
|
||||||
|
- Update domain entry patch to default to the currently joined
|
||||||
|
Active Directory domain if there was no stored preference. Fixes
|
||||||
|
Novell bug #167344.
|
||||||
|
* Thu Jun 01 2006 - hpj@suse.de
|
||||||
|
- Don't let any user configure GDM from the login screen if a
|
||||||
|
theme with user list is in effect. Fixes Novell bug #180219.
|
||||||
|
* Thu Jun 01 2006 - dreveman@suse.de
|
||||||
|
- Fix bg patch and change gdm.conf patch so we pass -br to X
|
||||||
|
server for black root window. (bnc 179847)
|
||||||
|
* Wed May 24 2006 - sbrabec@suse.cz
|
||||||
|
- Do not display Japanese string in terminal, which doesn't support
|
||||||
|
it (#168736).
|
||||||
|
- Disabled beep on start (#174786).
|
||||||
|
* Fri May 19 2006 - hpj@suse.de
|
||||||
|
- Made GDM use the more graphically intensive, but prettier,
|
||||||
|
gdmgreeter for remote logins. Fixes Novell bug #176661.
|
||||||
|
* Tue May 16 2006 - sbrabec@suse.cz
|
||||||
|
- Do not require exact UID 50 (it can fail, if already assigned).
|
||||||
|
- Do not fail, if group gdm already exists.
|
||||||
|
- Behave properly, if gdm.conf defines server 1 (#175829).
|
||||||
|
* Fri May 12 2006 - sbrabec@suse.cz
|
||||||
|
- Store value of PERMISSION_SECURITY by SuSEconfig in
|
||||||
|
gdm_sysconfig.conf (169639#c20).
|
||||||
|
* Tue May 09 2006 - hpj@suse.de
|
||||||
|
- Made GDM use the "gdm" group instead of shadow. Fixes Novell bug
|
||||||
|
[#119651].
|
||||||
|
- Made use of the tab key work like pressing enter if there is no
|
||||||
|
other entry to tab to. Part of fix for Novell bug #160879 and
|
||||||
|
[#167343].
|
||||||
|
- Made use of the enter key in the domain entry work like it does
|
||||||
|
in the user/password entry. Par of fix for Novell bug #160879
|
||||||
|
and #167343.
|
||||||
|
* Wed Apr 26 2006 - hpj@suse.de
|
||||||
|
- Added patch to show info messages in dialog. Needed for AD,
|
||||||
|
resolves bug #162146.
|
||||||
|
* Mon Apr 10 2006 - hpj@suse.de
|
||||||
|
- Update .ICEauthority fixup patch, corrects serious security
|
||||||
|
problem (bug #164520).
|
||||||
|
* Fri Apr 07 2006 - sbrabec@suse.cz
|
||||||
|
- Use translation compendium gnome-patch-translation.
|
||||||
|
* Thu Apr 06 2006 - hpj@suse.de
|
||||||
|
- Add patch to fix logic for .ICEauthority permissions correction.
|
||||||
|
Fixes bug #162952.
|
||||||
|
* Fri Mar 31 2006 - jpr@suse.de
|
||||||
|
- Extend gdm timeout to 30 seconds, 10 seconds is too short for the
|
||||||
|
ATI driver to respond under Xgl
|
||||||
|
* Mon Mar 20 2006 - federico@novell.com
|
||||||
|
- Fixed uninstallation of symbolic links for the earlygdm startup
|
||||||
|
service, bug #158786.
|
||||||
|
* Sat Mar 11 2006 - coolo@suse.de
|
||||||
|
- fix the only-show-in-gnome patch to patch the .desktop.in
|
||||||
|
* Tue Mar 07 2006 - federico@novell.com
|
||||||
|
- Fix installation of the earlygdm service; we were not calling
|
||||||
|
fillup_and_insserv with "displaymanager" for the configuration
|
||||||
|
filename.
|
||||||
|
* Wed Mar 01 2006 - sbrabec@suse.cz
|
||||||
|
- KDM_SHUTDOWN renamed to DISPLAYMANAGER_SHUTDOWN, use fillup only
|
||||||
|
in PLUS (148468#c17).
|
||||||
|
* Tue Feb 28 2006 - sbrabec@suse.cz
|
||||||
|
- Use kdelibs3-doc in BuildRequires for meinproc (#153635#c14).
|
||||||
|
* Sat Feb 25 2006 - hpj@suse.de
|
||||||
|
- Add patch to fix tab keynav.
|
||||||
|
* Fri Feb 17 2006 - sreeves@suse.de
|
||||||
|
- Update .desktop file (Name, GenericName, Comment, DocPath)
|
||||||
|
* Fri Feb 17 2006 - gekker@suse.de
|
||||||
|
- Fix background color in GDM, it should be black
|
||||||
|
* Fri Feb 17 2006 - sbrabec@suse.cz
|
||||||
|
- Added sysconfig fillup template (148468#c15).
|
||||||
|
* Mon Feb 13 2006 - sbrabec@suse.cz
|
||||||
|
- Implemented KDM_SHUTDOWN to SuSEconfig.gdm (#148468).
|
||||||
|
- Set AllowRemoteRoot=false in gdm.conf to follow default
|
||||||
|
sysconfig.
|
||||||
|
* Mon Feb 13 2006 - hpj@suse.de
|
||||||
|
- Updated shutdown options patch: Whether to allow shutdown,
|
||||||
|
and whether this requires root auth, are the two new options.
|
||||||
|
- Enforce shutdown options on logout as well.
|
||||||
|
* Fri Feb 10 2006 - coolo@suse.de
|
||||||
|
- don't show gdm desktop files in KDE
|
||||||
|
- use the new way to call preload
|
||||||
|
* Mon Feb 06 2006 - sbrabec@suse.cz
|
||||||
|
- Implemented DISPLAYMANAGER_AD_INTEGRATION to SuSEconfig.gdm
|
||||||
|
(#139338).
|
||||||
|
* Mon Feb 06 2006 - hpj@suse.de
|
||||||
|
- Updated domain entry patch to use --all-domains with wbinfo.
|
||||||
|
- Updated domain entry patch to show "<Local>" for local login.
|
||||||
|
- Added patch to require root auth to halt or reboot.
|
||||||
|
* Wed Jan 25 2006 - mls@suse.de
|
||||||
|
- converted neededforbuild to BuildRequires
|
||||||
|
* Thu Jan 19 2006 - hpj@suse.de
|
||||||
|
- Updated the domain logon patch with numerous new features and
|
||||||
|
cosmetic fixes.
|
||||||
|
* Tue Jan 17 2006 - hpj@suse.de
|
||||||
|
- Fixed a bug in logon code that prevented domain logons from
|
||||||
|
working. Updated domain logon patch.
|
||||||
|
* Fri Jan 13 2006 - schwab@suse.de
|
||||||
|
- Don't strip binaries.
|
||||||
|
* Tue Jan 10 2006 - hpj@suse.de
|
||||||
|
- Added domain logon patch for ADS.
|
||||||
|
* Mon Dec 05 2005 - gekker@suse.de
|
||||||
|
- Updated background patch from David Reveman
|
||||||
|
* Wed Nov 30 2005 - gekker@suse.de
|
||||||
|
- Update o version 2.8.0.7
|
||||||
|
- Remove upstream patch
|
||||||
|
- Fixup patch for background colors
|
||||||
|
* Thu Nov 10 2005 - rml@suse.de
|
||||||
|
- Add earlygdm init script. Right now, we just preload gnome bits.
|
||||||
|
* Wed Nov 02 2005 - gekker@suse.de
|
||||||
|
- Fix so ctrl-alt-backspacing restarts the xserver (#113718)
|
||||||
|
- Patch from upstream b.g.o (#152906)
|
||||||
|
* Mon Oct 17 2005 - gekker@suse.de
|
||||||
|
- Make gdm.conf %%config(noreplace)
|
||||||
|
* Fri Oct 14 2005 - hpj@suse.de
|
||||||
|
- Updated xauthority-across-hostname-changes patch to use
|
||||||
|
XAUTHLOCALHOSTNAME environment variable.
|
||||||
|
* Thu Oct 13 2005 - gekker@suse.de
|
||||||
|
- Update to version 2.8.0.5
|
||||||
|
* Wed Oct 05 2005 - gekker@suse.de
|
||||||
|
- Rediff patch for background colors
|
||||||
|
* Tue Oct 04 2005 - gekker@suse.de
|
||||||
|
- Fix background colors to be consistent on startup
|
||||||
|
* Tue Sep 20 2005 - sbrabec@suse.cz
|
||||||
|
- Removed references to build directory in installed .la files.
|
||||||
|
* Thu Sep 15 2005 - gekker@suse.de
|
||||||
|
- Make Industrial the default Gtk+ theme (114173)
|
||||||
|
* Tue Sep 06 2005 - sbrabec@suse.cz
|
||||||
|
- Updated to version 2.8.0.4.
|
||||||
|
* Tue Aug 23 2005 - gekker@suse.de
|
||||||
|
- Update to version 2.8.0.3
|
||||||
|
- Remove upstreamed autologin patch
|
||||||
|
- Now installs .desktop files in correct location no need to move
|
||||||
|
* Sat Aug 20 2005 - hpj@suse.de
|
||||||
|
- Make the default session option work on autologin; we now get GNOME.
|
||||||
|
* Tue Aug 16 2005 - sbrabec@suse.cz
|
||||||
|
- Use gnome-screensaver instead of xscreensaver.
|
||||||
|
* Fri Aug 12 2005 - hpj@suse.de
|
||||||
|
- Made gdm-autologin.pam not require a password.
|
||||||
|
* Fri Aug 12 2005 - jpr@suse.de
|
||||||
|
- require xorg-x11-xnest for the gdmflexiserver -n option
|
||||||
|
* Thu Aug 11 2005 - gekker@suse.de
|
||||||
|
- Update to version 2.8.0.2
|
||||||
|
- Make 64bit clean
|
||||||
|
* Sun Jul 31 2005 - jpr@suse.de
|
||||||
|
- turn on compatibility symlink for all products
|
||||||
|
* Tue Jul 05 2005 - gekker@suse.de
|
||||||
|
- Update to version 2.8.0.1
|
||||||
|
- Do not use hostname in authentication cookie (82688).
|
||||||
|
- Disabling of "timed login" doesn't work (8060).
|
||||||
|
- Issues with "timed login" being set to zero (8024).
|
||||||
|
- Display flickers for every letter typed (6354).
|
||||||
|
* Fri Jun 24 2005 - sbrabec@suse.cz
|
||||||
|
- Added compatibility symlink %%{prefix}/bin/gdm for older products.
|
||||||
|
* Wed Jun 22 2005 - gekker@suse.de
|
||||||
|
- Update to version 2.8.0.0
|
||||||
|
* Fri Apr 22 2005 - sbrabec@suse.cz
|
||||||
|
- Implemended DISPLAYMANAGER_PASSWORD_LESS_LOGIN using SuSEconfig
|
||||||
|
and PAM configuration (#74198).
|
||||||
|
* Fri Apr 22 2005 - sbrabec@suse.cz
|
||||||
|
- Fixed logdir (#56205).
|
||||||
|
* Mon Mar 21 2005 - jody@suse.de
|
||||||
|
- Fix typo in upstream package that broke Shutdown
|
||||||
|
- Repaired Suspend command to actually work
|
||||||
|
* Fri Mar 18 2005 - sbrabec@suse.cz
|
||||||
|
- Removed X-Ximian-Settings (#73047).
|
||||||
|
* Wed Mar 16 2005 - sbrabec@suse.cz
|
||||||
|
- Fixed capplets desktop files path.
|
||||||
|
- Added X-Ximian-Settings to gdmsetup and gdmphotosetup (#73047).
|
||||||
|
* Tue Mar 15 2005 - sbrabec@suse.cz
|
||||||
|
- Fixed X-KDE-RootOnly in gdmsetup.desktop (#66693).
|
||||||
|
* Wed Mar 09 2005 - gekker@suse.de
|
||||||
|
- Update to version 2.6.0.8 (GNOME 2.10).
|
||||||
|
* Fri Feb 18 2005 - sbrabec@suse.cz
|
||||||
|
- Remove gdm_sysconfig.conf before update to force gdm.conf configuration.
|
||||||
|
* Fri Feb 11 2005 - sbrabec@suse.cz
|
||||||
|
- Resource only /usr/share/xsessions for session desktop files.
|
||||||
|
- Fixed tcp_wrappers support on bi-arch.
|
||||||
|
* Thu Feb 10 2005 - gekker@suse.de
|
||||||
|
- Update to version 2.6.0.7
|
||||||
|
* Wed Feb 09 2005 - sbrabec@suse.cz
|
||||||
|
- Cleaned-up configuration and patches.
|
||||||
|
- Prepared moving of session files to windowmanager packages.
|
||||||
|
* Tue Feb 08 2005 - gekker@suse.de
|
||||||
|
- Add patch back to fix Xsession file
|
||||||
|
* Mon Jan 24 2005 - meissner@suse.de
|
||||||
|
- added missing NULL in a g_strconcat.
|
||||||
|
* Thu Jan 20 2005 - gekker@suse.de
|
||||||
|
- Update to version 2.6.0.6
|
||||||
|
* Wed Nov 17 2004 - hhetter@suse.de
|
||||||
|
- add X-KDE-RootOnly to gdmsetup.desktop (#45807)
|
||||||
|
* Mon Nov 15 2004 - kukuk@suse.de
|
||||||
|
- Use common-* PAM config files for gdm and gdm-autologin
|
||||||
|
* Tue Oct 26 2004 - mmj@suse.de
|
||||||
|
- Locale rename no to nb
|
||||||
|
* Fri Oct 15 2004 - sbrabec@suse.cz
|
||||||
|
- Implemented sysconfig displaymanager support.
|
||||||
|
* Fri Sep 24 2004 - hhetter@suse.de
|
||||||
|
- gdm must require gnome-themes, to ensure availability of
|
||||||
|
the industrial theme (#44330)
|
||||||
|
* Wed Aug 25 2004 - clahey@suse.de
|
||||||
|
- Cache gdm help and show gdm in khelpcenter.
|
||||||
|
* Mon Aug 16 2004 - ro@suse.de
|
||||||
|
- fixed specfile
|
||||||
|
* Mon Aug 16 2004 - shprasad@suse.de
|
||||||
|
- Fixes bug #60020
|
||||||
|
Invalid username/passwd input doen't bring the password dialog
|
||||||
|
for timed login user.
|
||||||
|
* Fri Jul 30 2004 - ro@suse.de
|
||||||
|
- fix spec file, list gdm-session-startkde.diff as patch
|
||||||
|
* Fri Jul 30 2004 - shprasad@suse.de
|
||||||
|
- Fixes bug #60867.
|
||||||
|
Shows the 'KDE' option when the user clicks on 'Session' at the
|
||||||
|
time of login.
|
||||||
|
(In the spec file, the diff file, gdm-session-startkde.diff, is
|
||||||
|
applied at the %%install section)
|
||||||
|
* Thu Jun 24 2004 - dave@suse.de
|
||||||
|
- Added gdm-presession-kde-path.patch, adds /opt/kde3/bin to the
|
||||||
|
gdm path
|
||||||
|
* Fri Jun 11 2004 - clahey@suse.de
|
||||||
|
- Added gdm-support-gdmctl.patch.
|
||||||
|
* Wed Jun 02 2004 - mibarra@suse.de
|
||||||
|
- Fixed gdm.conf to use the correct group
|
||||||
|
* Wed Jun 02 2004 - clahey@suse.de
|
||||||
|
- Set theme to industrial (as well as a few other small changes.)
|
||||||
|
* Fri May 07 2004 - hhetter@suse.de
|
||||||
|
- updated to version 2.6.0.0 [GNOME2.6]
|
||||||
|
* Wed Mar 31 2004 - hhetter@suse.de
|
||||||
|
- startup in graphical theme (#37668)
|
||||||
|
- Require gnome2-SuSE for the Default Theme (#37707)
|
||||||
|
- honor xdm scripts (#37852)
|
||||||
|
* Tue Mar 23 2004 - sbrabec@suse.cz
|
||||||
|
- Non-UTF-8 locales removed from language menu.
|
||||||
|
* Mon Mar 22 2004 - hhetter@suse.de
|
||||||
|
- remove SuSEconfig.gdm; it's no longer needed to manage
|
||||||
|
the available sessions for gdm, as it is now using desktop
|
||||||
|
files to define it's sessions (#36267)
|
||||||
|
* Mon Mar 15 2004 - sbrabec@suse.cz
|
||||||
|
- FHS 2.3 fix (mandir, infodir, #35821).
|
||||||
|
* Wed Mar 10 2004 - sbrabec@suse.cz
|
||||||
|
- Fixed %%doc attributes (#33163).
|
||||||
|
* Tue Mar 09 2004 - hhetter@suse.de
|
||||||
|
- include desktop files for sessions
|
||||||
|
* Tue Mar 02 2004 - hhetter@suse.de
|
||||||
|
- updated to version 2.4.4.7 [GNOME 2.4.2]
|
||||||
|
- applied adapted bash-login-shell patch
|
||||||
|
- adapted desktop file patch
|
||||||
|
- adapted configuration file (use tools from powersave)
|
||||||
|
* Thu Feb 26 2004 - hhetter@suse.de
|
||||||
|
- attached patch: gdm-2.4.1.6-bash-login-shell.patch,
|
||||||
|
make sure a login shell is available when using
|
||||||
|
bash
|
||||||
|
* Fri Feb 20 2004 - sbrabec@suse.cz
|
||||||
|
- Package renamed to gdm.
|
||||||
|
* Fri Jan 16 2004 - kukuk@suse.de
|
||||||
|
- Add pam-devel to neededforbuild
|
||||||
|
* Sat Jan 10 2004 - adrian@suse.de
|
||||||
|
- add %%defattr
|
||||||
|
* Thu Sep 18 2003 - adrian@suse.de
|
||||||
|
- add Categories
|
||||||
|
- show entries only in Gnome (#31287)
|
||||||
|
* Fri Sep 05 2003 - hhetter@suse.de
|
||||||
|
- added Obsoletes: gdm
|
||||||
|
* Tue Aug 19 2003 - sbrabec@suse.cz
|
||||||
|
- Updated neededforbuild (rename of librsvg2, eel2).
|
||||||
|
* Tue Aug 12 2003 - hhetter@suse.de
|
||||||
|
- updated to version 2.4.1.6
|
||||||
|
* Mon Jul 28 2003 - kukuk@suse.de
|
||||||
|
- Make sure /var/lib/gdm has correct permissions
|
||||||
|
* Fri Jul 25 2003 - hhetter@suse.de
|
||||||
|
- move capplets to correct position
|
||||||
|
- fix build
|
||||||
|
* Wed Jul 16 2003 - sbrabec@suse.cz
|
||||||
|
- Fixed prefix in configuration files.
|
||||||
|
* Mon Jul 14 2003 - sbrabec@suse.cz
|
||||||
|
- GNOME prefix change to /opt/gnome.
|
||||||
|
* Wed Jun 25 2003 - sbrabec@suse.cz
|
||||||
|
- Updated to version 2.4.1.4.
|
||||||
|
- Fixed default path to Xwilling.
|
||||||
|
- Updated neededforbuild.
|
||||||
|
- Use %%find_lang.
|
||||||
|
- Prefix clash fix (capplets).
|
||||||
|
* Wed May 28 2003 - ro@suse.de
|
||||||
|
- remove unpackaged files from buildroot
|
||||||
|
* Mon May 26 2003 - sbrabec@suse.cz
|
||||||
|
- Re-enabled UTF-8 alternatives for all locales.
|
||||||
|
* Sun Mar 16 2003 - adrian@suse.de
|
||||||
|
- add resmgr support to pam
|
||||||
|
* Mon Mar 10 2003 - hhetter@suse.de
|
||||||
|
- use LC_MESSAGES instead of LC_ALL for setlocale
|
||||||
|
( Bug Id#24889 )
|
||||||
|
* Thu Feb 27 2003 - sbrabec@suse.cz
|
||||||
|
- Removed gdm wrapper (fixes problems with default language and init
|
||||||
|
script - bug #23875).
|
||||||
|
* Tue Feb 25 2003 - sbrabec@suse.cz
|
||||||
|
- Don't offer UTF-8 locales.
|
||||||
|
* Mon Feb 24 2003 - hhetter@suse.de
|
||||||
|
- use graphical greeter by default
|
||||||
|
* Thu Feb 20 2003 - sbrabec@suse.cz
|
||||||
|
- Use system language for GDM login from /etc/sysconfig/language.
|
||||||
|
* Tue Feb 18 2003 - sbrabec@suse.cz
|
||||||
|
- Updated default config and locale aliases (UTF-8 locales).
|
||||||
|
* Fri Feb 07 2003 - hhetter@suse.de
|
||||||
|
- updated to 2.4.1.3 [GNOME 2.2.0]
|
||||||
|
* Fri Feb 07 2003 - kukuk@suse.de
|
||||||
|
- Use pam_unix2.so instead of pam_unix.so
|
||||||
|
* Thu Jan 16 2003 - ro@suse.de
|
||||||
|
- use gtk2-devel-packages and libjpeg in neededforbuild
|
||||||
|
* Tue Jan 07 2003 - sbrabec@suse.cz
|
||||||
|
- Update to version 2.4.1.0.
|
||||||
|
- Make Default session file executable.
|
||||||
|
- Added UTF-8 as alternative for all locales.
|
||||||
|
- Turned on TCP wrappers support.
|
||||||
|
* Mon Jan 06 2003 - sbrabec@suse.cz
|
||||||
|
- Install SuSE specific PAM configuration (from xdm), fix its install
|
||||||
|
place.
|
||||||
|
- Removed sox from neededforbuild.
|
||||||
|
* Thu Nov 28 2002 - hhetter@suse.de
|
||||||
|
- updated to version 2.4.0.12 [GNOME 2.0.3]
|
||||||
|
* Mon Nov 11 2002 - ro@suse.de
|
||||||
|
- changed neededforbuild <xf86 xdevel> to <x-devel-packages>
|
||||||
|
* Sun Nov 03 2002 - mfabian@suse.de
|
||||||
|
- Bug Id #21407: correct wrong spelling of UTF-8 locale names
|
||||||
|
in /etc/opt/gnome2/gdm/locale.alias. de_DE.utf8 was used
|
||||||
|
instead of de_DE.UTF-8 etc., but de_DE.UTF-8 is not supported
|
||||||
|
by X11, although de_DE.utf8 and de_DE.UTF-8 is the same
|
||||||
|
as far as glibc is concerned, the correct spelling is important
|
||||||
|
for X11.
|
||||||
|
- Bug Id #21408: When using gdm2 the usual intialization file
|
||||||
|
of an X session, i.e. ~/.xinitrc, ~/.xsession, ~/.Xmodmap
|
||||||
|
~/.xim etc. were not read. Because of this, inputservers for CJK
|
||||||
|
languages did not start automatically and other default
|
||||||
|
settings were not correct either.
|
||||||
|
I fixed this by improving /etc/opt/gnome2/gdm/Sessions/Default
|
||||||
|
to use 'exec /etc/X11/xdm/Xsession $WINDOWMANGER $GDM_LANG'.
|
||||||
|
This makes the default behaviour when using gdm2 the same
|
||||||
|
as when using kdm or xdm.
|
||||||
|
* Tue Sep 24 2002 - sbrabec@suse.cz
|
||||||
|
- Added alsa-devel to neededforbuild, because esound-devel can require it.
|
||||||
|
* Thu Sep 19 2002 - sbrabec@suse.cz
|
||||||
|
- Added alsa to neededforbuild, because esound can depend on it.
|
||||||
|
* Thu Sep 05 2002 - hhetter@suse.de
|
||||||
|
- updated to version 2.4.0.11, fixing a security issue
|
||||||
|
(no longer open the logging file descriptor as root in
|
||||||
|
slave.c ) ( Bug Id #18908 )
|
||||||
|
* Mon Sep 02 2002 - hhetter@suse.de
|
||||||
|
- if no session was chosen or previously saved, choose
|
||||||
|
the gnome session ( Bug Id #18729)
|
||||||
|
* Fri Aug 30 2002 - hhetter@suse.de
|
||||||
|
- fix default script and session linking (Bug Id#18602)
|
||||||
|
* Thu Aug 22 2002 - hhetter@suse.de
|
||||||
|
- parse correct Session directory (Bug Id#18181)
|
||||||
|
* Tue Aug 20 2002 - hhetter@suse.de
|
||||||
|
- fix prereq
|
||||||
|
* Mon Aug 12 2002 - hhetter@suse.de
|
||||||
|
- updated to version 2.4.0.7
|
||||||
|
- fix neddedforbuild
|
||||||
|
* Wed Aug 07 2002 - hhetter@suse.de
|
||||||
|
- updated to version 2.4.0.5
|
||||||
|
- fix typo in SuSEconfig script (#17438)
|
||||||
|
- fix linking of sessions
|
||||||
|
* Wed Jul 17 2002 - hhetter@suse.de
|
||||||
|
- updated to version 2.4.0.2
|
||||||
|
* busy cursor when start X
|
||||||
|
* 'System Default' language choice
|
||||||
|
* fix unresponsive behaviour when first asking for
|
||||||
|
username in graphical greeter #83187 (bugzilla.gnome.org)
|
||||||
|
* 'Last' language choice in graphical greeter
|
||||||
|
* 24 hour clock setting in graphical greeter
|
||||||
|
* Happy Gnome Theme Update
|
||||||
|
* more languages supported #84290 (bugzilla.gnome.org)
|
||||||
|
* Translation updates
|
||||||
|
* Thu Jul 11 2002 - hhetter@suse.de
|
||||||
|
- fix default session
|
||||||
|
- activate graphical gdmgreeter for local logins by default
|
||||||
|
* Wed Jul 10 2002 - hhetter@suse.de
|
||||||
|
- updated to version 2.4.0.1, bugfix release
|
||||||
|
- SuSEconfig.gdm2 to manage the GDM sessions
|
||||||
|
* Tue Jul 09 2002 - hhetter@suse.de
|
||||||
|
- initial SuSE package
|
||||||
|
- create gdm user
|
121
init.earlygdm
Normal file
121
init.earlygdm
Normal file
@ -0,0 +1,121 @@
|
|||||||
|
#! /bin/sh
|
||||||
|
# Copyright (c) 2004 SuSE Linux AG, Nuernberg, Germany.
|
||||||
|
# All rights reserved.
|
||||||
|
#
|
||||||
|
# Author: Werner Fink <werner@suse.de>, 2004
|
||||||
|
# Stephan Kulow <coolo@suse.de>, 2004
|
||||||
|
# Robert Love, 2005
|
||||||
|
#
|
||||||
|
# Please send feedback to http://www.suse.de/feedback
|
||||||
|
#
|
||||||
|
# /etc/init.d/earlygdm
|
||||||
|
#
|
||||||
|
### BEGIN INIT INFO
|
||||||
|
# Provides: earlygdm
|
||||||
|
# Required-Start: earlysyslog earlykbd $local_fs
|
||||||
|
# Should-Start: gpm firstboot resmgr
|
||||||
|
# Required-Stop:
|
||||||
|
# Default-Start: 5
|
||||||
|
# Default-Stop:
|
||||||
|
# Description: Quick X Display Manager
|
||||||
|
### END INIT INFO
|
||||||
|
|
||||||
|
. /etc/rc.status
|
||||||
|
. /etc/sysconfig/displaymanager
|
||||||
|
|
||||||
|
check_nfs()
|
||||||
|
{
|
||||||
|
# Check if important mount point is NFS mounted
|
||||||
|
while read where what type options rest ; do
|
||||||
|
test "$type" = "nfs" || continue
|
||||||
|
case "$where" in
|
||||||
|
\#*|"") ;;
|
||||||
|
*) case "$options" in
|
||||||
|
*noauto*) ;;
|
||||||
|
*) case "$where" in
|
||||||
|
/usr*|/opt*|/home*) return 1 ;;
|
||||||
|
esac
|
||||||
|
esac
|
||||||
|
esac
|
||||||
|
done < /etc/fstab
|
||||||
|
|
||||||
|
return 0 # False - default
|
||||||
|
}
|
||||||
|
|
||||||
|
check_remote_autologin()
|
||||||
|
{
|
||||||
|
if test -n "$DISPLAYMANAGER_AUTOLOGIN"; then
|
||||||
|
grep -q "^$DISPLAYMANAGER_AUTOLOGIN:" /etc/passwd || return 1
|
||||||
|
fi
|
||||||
|
return 0
|
||||||
|
}
|
||||||
|
|
||||||
|
check_kbd()
|
||||||
|
{
|
||||||
|
test -s /var/run/keymap
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
check_syslog()
|
||||||
|
{
|
||||||
|
. /etc/sysconfig/syslog
|
||||||
|
|
||||||
|
case "$SYSLOG_DAEMON" in
|
||||||
|
syslog-ng)
|
||||||
|
config=/etc/syslog-ng/syslog-ng.conf
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
config=/etc/syslog.conf
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
case "$SYSLOG_DAEMON" in
|
||||||
|
syslog-ng)
|
||||||
|
while read line ; do
|
||||||
|
case "$line" in
|
||||||
|
\#*|"") continue ;;
|
||||||
|
*udp\ *|*udp\(*) return 1 ;;
|
||||||
|
*tcp\ *|*tcp\(*) return 1 ;;
|
||||||
|
esac
|
||||||
|
done < ${config}
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
while read select action ; do
|
||||||
|
case "$select" in \#*|"") continue ;; esac
|
||||||
|
case "$action" in *@*) return 1 ;; esac
|
||||||
|
done < ${config}
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
return 0
|
||||||
|
}
|
||||||
|
|
||||||
|
check()
|
||||||
|
{
|
||||||
|
check_nfs || return 1
|
||||||
|
check_kbd || return 1
|
||||||
|
check_syslog || return 1
|
||||||
|
check_remote_autologin || return 1
|
||||||
|
# ...
|
||||||
|
return 0
|
||||||
|
}
|
||||||
|
|
||||||
|
# default
|
||||||
|
if test -z "$DISPLAYMANAGER" && test -x /opt/gnome/bin/gdm; then
|
||||||
|
DISPLAYMANAGER=gdm
|
||||||
|
fi
|
||||||
|
|
||||||
|
case "$DISPLAYMANAGER" in
|
||||||
|
gdm|gnome|GDM|GNOME) ;;
|
||||||
|
*) exit 0;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
case "$1" in
|
||||||
|
start)
|
||||||
|
if test -x /sbin/preload && test -f /etc/preload.d/gdm; then
|
||||||
|
/sbin/preload /etc/preload.d/gdm
|
||||||
|
echo i!
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
*) ;;
|
||||||
|
esac
|
48
sysconfig.displaymanager-gdm
Normal file
48
sysconfig.displaymanager-gdm
Normal file
@ -0,0 +1,48 @@
|
|||||||
|
## Path: Desktop/Display manager
|
||||||
|
## Description: settings to generate a proper displaymanager config
|
||||||
|
## Config: gdm
|
||||||
|
|
||||||
|
## Type: yesno
|
||||||
|
## Default: no
|
||||||
|
#
|
||||||
|
# Allow remote access of the user root to your display manager. Note
|
||||||
|
# that root can never login if DISPLAYMANAGER_SHUTDOWN is "auto" and
|
||||||
|
# System/Security/Permissions/PERMISSION_SECURITY is "paranoid"
|
||||||
|
#
|
||||||
|
DISPLAYMANAGER_ROOT_LOGIN_REMOTE="no"
|
||||||
|
|
||||||
|
## Type: string
|
||||||
|
## Default:
|
||||||
|
#
|
||||||
|
# Define the user whom should get logged in without request. If string
|
||||||
|
# is empty, display standard login dialog.
|
||||||
|
#
|
||||||
|
DISPLAYMANAGER_AUTOLOGIN=""
|
||||||
|
|
||||||
|
## Type: yesno
|
||||||
|
## Default: no
|
||||||
|
#
|
||||||
|
# Allow all users to login without password, but ask for the user, if
|
||||||
|
# DISPLAYMANAGER_AUTOLOGIN is empty.
|
||||||
|
#
|
||||||
|
DISPLAYMANAGER_PASSWORD_LESS_LOGIN="no"
|
||||||
|
|
||||||
|
## Type: yesno
|
||||||
|
## Default: no
|
||||||
|
#
|
||||||
|
# Display a combobox for Active Directory domains.
|
||||||
|
#
|
||||||
|
DISPLAYMANAGER_AD_INTEGRATION="no"
|
||||||
|
|
||||||
|
## Type: list(root,all,none,auto)
|
||||||
|
## Default: auto
|
||||||
|
#
|
||||||
|
# Determine who will be able to shutdown or reboot the system in kdm
|
||||||
|
# and gdm. Valid values are: "root" (only root can shutdown), "all"
|
||||||
|
# (everybody can shutdown), "none" (nobody can shutdown from
|
||||||
|
# displaymanager), "auto" (follow
|
||||||
|
# System/Security/Permissions/PERMISSION_SECURITY to decide: "easy
|
||||||
|
# local" is equal to "all", everything else is equal to "root") Note
|
||||||
|
# that remote user can never shutdown in GDM.
|
||||||
|
#
|
||||||
|
DISPLAYMANAGER_SHUTDOWN="auto"
|
Loading…
x
Reference in New Issue
Block a user