This commit is contained in:
commit
0222d4bcbc
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
|
211
gnome
Normal file
211
gnome
Normal file
@ -0,0 +1,211 @@
|
||||
#!/bin/bash
|
||||
#
|
||||
# This is not the original gnome2-session but a startscript
|
||||
# to install some preconfiguration for GNOME2
|
||||
# and some variables to check.
|
||||
#
|
||||
# For feedback on this script please see
|
||||
# http://www.suse.de/feedback
|
||||
#
|
||||
# set a background until the gnome-session becomes visible
|
||||
#xsetroot -cursor_name watch -solid "#6a83be"
|
||||
#
|
||||
# Help GNOME2 guessing where KDE resides on the filesystem
|
||||
export KDEDIR=/opt/kde3
|
||||
#
|
||||
# We use a cascaded KDE configuration while in GNOME,
|
||||
# to preconfigure some utilities better suited for GNOME
|
||||
export KDEDIRS=/opt/gnome/share/dist/kde-preconf
|
||||
#
|
||||
#
|
||||
# Manage GTK1 themes with gnome-theme-manager
|
||||
export GTK_RC_FILES=/etc/opt/gnome/gtk/gtkrc:$HOME/.gtkrc-1.2-gnome2
|
||||
#
|
||||
# Set STYLE variable for other applications.
|
||||
STYLE="$(gconftool-2 --get /desktop/gnome/interface/gtk_theme 2>/dev/null)"
|
||||
export STYLE="${STYLE:-Default}"
|
||||
#
|
||||
#
|
||||
# If gconfd 1 is still running, shut it down now
|
||||
if [ -e /opt/gnome/bin/gconftool-1 ]
|
||||
then
|
||||
/opt/gnome/bin/gconftool-1 --shutdown
|
||||
fi
|
||||
#
|
||||
#
|
||||
# make sure .skel is available
|
||||
mkdir -p $HOME/.skel
|
||||
|
||||
|
||||
#
|
||||
# use_gnome2_default_no_settings: Same as use_gnome2_default without
|
||||
# the wallpaper and fonts
|
||||
function use_gnome2_default_no_settings {
|
||||
# do this only one time
|
||||
[ -e $HOME/.skel/gnome2-run ] && return
|
||||
|
||||
# run possibly available addon-scripts
|
||||
if [ -d /opt/gnome/share/dist/addon-scripts ] ; then
|
||||
for scr in /opt/gnome/share/dist/addon-scripts/*; do
|
||||
[ -r "$scr" ] && . "$scr"
|
||||
done
|
||||
fi
|
||||
|
||||
|
||||
#
|
||||
# add compatibility and default settings for GNOME1
|
||||
# (set help browsers to epiphany & nautilus)
|
||||
if [ ! -d ~/.gnome ] ; then
|
||||
mkdir -p ~/.gnome
|
||||
cp /opt/gnome/share/dist/gnome1/* ~/.gnome/
|
||||
fi
|
||||
if [ ! -e ~/.gtkrc ] ; then
|
||||
cp /opt/gnome/share/dist/gnome1/gtkrc ~/.gtkrc
|
||||
fi
|
||||
|
||||
|
||||
|
||||
# we are done, set the flag
|
||||
touch ~/.skel/gnome2-run
|
||||
}
|
||||
|
||||
#
|
||||
#
|
||||
# use_gnome2_default: if the default preconfiguration is used,
|
||||
# some modifications need to be done to setup correct wallpapers
|
||||
#
|
||||
function use_gnome2_default {
|
||||
# do this only one time
|
||||
[ -e $HOME/.skel/gnome2-run ] && return
|
||||
# and only if no wallpaper is already set (or other background
|
||||
# option)
|
||||
[ -e $HOME/.gconf/desktop/gnome/background/%gconf.xml ] && return
|
||||
mkdir -p ~/.gconf/desktop/gnome/background
|
||||
# determine X-Resolution
|
||||
X=$(xdpyinfo |grep dimensions:|head -1|cut -d " " -f 7 |cut -d "x" -f 1)
|
||||
Y=$(xdpyinfo |grep dimensions:|head -1|cut -d " " -f 7 |cut -d "x" -f 2)
|
||||
# set default wallpaper to 1600x1200
|
||||
GNOME_WALLPAPER="default-1600x1200.jpg"
|
||||
[ $((($X * 10) / $Y)) -ge 15 ] && GNOME_WALLPAPER="default-1920x1200.jpg"
|
||||
GNOME_WALLPAPER="/usr/share/wallpapers/"$GNOME_WALLPAPER
|
||||
# check if a wallpaper is actually available
|
||||
if [ -e $GNOME_WALLPAPER ] ; then
|
||||
gconftool-2 -s /desktop/gnome/background/picture_filename --type string $GNOME_WALLPAPER
|
||||
gconftool-2 -s /desktop/gnome/background/picture_options --type string stretched
|
||||
fi
|
||||
|
||||
|
||||
# run possibly available addon-scripts
|
||||
if [ -d /opt/gnome/share/dist/addon-scripts ] ; then
|
||||
for scr in /opt/gnome/share/dist/addon-scripts/*; do
|
||||
[ -r "$scr" ] && . "$scr"
|
||||
done
|
||||
fi
|
||||
|
||||
|
||||
#
|
||||
# add compatibility and default settings for GNOME1
|
||||
# (set help browsers to epiphany & nautilus)
|
||||
if [ ! -d ~/.gnome ] ; then
|
||||
mkdir -p ~/.gnome
|
||||
cp /opt/gnome/share/dist/gnome1/* ~/.gnome/
|
||||
fi
|
||||
if [ ! -e ~/.gtkrc ] ; then
|
||||
cp /opt/gnome/share/dist/gnome1/gtkrc ~/.gtkrc
|
||||
fi
|
||||
|
||||
|
||||
|
||||
# we are done, set the flag
|
||||
touch ~/.skel/gnome2-run
|
||||
}
|
||||
|
||||
function fix_wallpapers_on_update {
|
||||
|
||||
# we do that only the first time
|
||||
[ -e $HOME/.skel/gnome2-run-9.2 ] && return
|
||||
|
||||
# we change to the new distribution wallpapers
|
||||
# if the 9.1 generation wallpapers are no longer
|
||||
# available
|
||||
WALLPAPER=$(gconftool-2 -g /desktop/gnome/background/picture_filename)
|
||||
WALLPAPER=$(echo $WALLPAPER | cut -b -30)
|
||||
if [ $WALLPAPER="/usr/share/wallpapers/suse9.1-" ] ; then
|
||||
# determine X-Resolution
|
||||
X=$(xdpyinfo |grep dimensions:|cut -d " " -f 7 |cut -d "x" -f 1)
|
||||
# if no config fits, use 1024x768
|
||||
GNOME_WALLPAPER="suse10-1027x768.jpg"
|
||||
[ $X -gt 799 ] && GNOME_WALLPAPER="suse10-800x600.jpg"
|
||||
[ $X -gt 1023 ] && GNOME_WALLPAPER="suse10-1024x768.jpg"
|
||||
[ $X -gt 1279 ] && GNOME_WALLPAPER="suse10-1280x1024.jpg"
|
||||
[ $X -gt 1399 ] && GNOME_WALLPAPER="suse10-1400x1050.jpg"
|
||||
[ $X -gt 1599 ] && GNOME_WALLPAPER="suse10-1600x1200.jpg"
|
||||
GNOME_WALLPAPER="/usr/share/wallpapers/"$GNOME_WALLPAPER
|
||||
# check if a wallpaper is actually available
|
||||
if [ -e $GNOME_WALLPAPER ] ; then
|
||||
gconftool-2 -s /desktop/gnome/background/picture_filename --type string $GNOME_WALLPAPER
|
||||
gconftool-2 -s /desktop/gnome/background/picture_options --type string stretched
|
||||
fi
|
||||
fi
|
||||
|
||||
# done, set the flag
|
||||
touch ~/.skel/gnome2-run-9.2
|
||||
|
||||
}
|
||||
|
||||
function use_sled10_default {
|
||||
# do this only for SLED 10
|
||||
([ -e /etc/SuSE-release ] && grep "SUSE Linux Enterprise Desktop 10" /etc/SuSE-release) || return
|
||||
|
||||
# do this only one time
|
||||
[ -e $HOME/.skel/sled10-run ] && return
|
||||
|
||||
# dump the existing config for backup
|
||||
PANEL_BACKUP=panel-settings-backup-`date '+%m%d%y%H%M%S'`.xml
|
||||
gconftool-2 --dump /apps/panel > $PANEL_BACKUP
|
||||
|
||||
# unset the current panel configuration
|
||||
gconftool-2 --recursive-unset /apps/panel/default_setup
|
||||
gconftool-2 --unset /apps/panel/general/toplevel_id_list
|
||||
gconftool-2 --unset /apps/panel/general/applet_id_list
|
||||
gconftool-2 --unset /apps/panel/general/object_id_list
|
||||
gconftool-2 --recursive-unset /apps/panel/profiles/default
|
||||
gconftool-2 --recursive-unset /apps/panel/toplevels
|
||||
gconftool-2 --unset /apps/metacity/general/num_workspaces
|
||||
|
||||
# we are done, set the flag
|
||||
touch ~/.skel/sled10-run
|
||||
}
|
||||
|
||||
|
||||
# set up an arbitrary icon path for nautilus, accessing YaST Icons and, if installed, common KDE icons
|
||||
KDE_CRYSTAL_32=/opt/kde3/share/icons/crystalsvg/32x32
|
||||
KDE_CRYSTAL_48=/opt/kde3/share/icons/crystalsvg/48x48
|
||||
GNOME_DEFAULT_32=/opt/gnome/share/icons/gnome/32x32
|
||||
GNOME_DEFAULT_48=/opt/gnome/share/icons/gnome/48x48
|
||||
YAST_ICONS=/usr/share/YaST2/theme/current/icons/48x48
|
||||
|
||||
export GNOME_ICON_PATH=/usr/share/images:$YAST_ICONS/apps:$KDE_CRYSTAL_32/apps:$KDE_CRYSTAL_32/devices:$KDE_CRYSTAL_32/mimetypes:$KDE_CRYSTAL_32/filesystems:$KDE_CRYSTAL_32/actions:$KDE_CRYSTAL_48/apps:$KDE_CRYSTAL_48/devices:$KDE_CRYSTAL_48/mimetypes:$KDE_CRYSTAL_48/filesystems:$KDE_CRYSTAL_48/actions:$GNOME_DEFAULT_48/apps:$GNOME_DEFAULT_32/apps:/opt/gnome/share/pixmaps
|
||||
|
||||
|
||||
# start up the gnome2 session
|
||||
|
||||
# reset the SLED 10 UI only if upgrading from NLD9/SLES9, anything newer we
|
||||
# ignore (like SL 9.3), the logic here is redundant but its low risk
|
||||
TRY_SLED10=1
|
||||
if [ ! -e $HOME/.skel/gnome2-run ] || [ -e $HOME/.skel/gnome2-run-9.2 ] ; then
|
||||
TRY_SLED10=0
|
||||
fi
|
||||
|
||||
fix_wallpapers_on_update
|
||||
use_gnome2_default
|
||||
if [ $TRY_SLED10 -gt 0 ] ; then
|
||||
use_sled10_default
|
||||
else
|
||||
touch ~/.skel/sled10-run
|
||||
fi
|
||||
|
||||
|
||||
|
||||
exec /opt/gnome/bin/gnome-session
|
||||
|
21
gnome-session-2.0.5-dithering.patch
Normal file
21
gnome-session-2.0.5-dithering.patch
Normal file
@ -0,0 +1,21 @@
|
||||
diff -Nru -x '*~' -x '*.o' -x '*.orig' -x '*.rej' gnome-session-2.0.8.orig/gnome-session/splash-widget.c gnome-session-2.0.8/gnome-session/splash-widget.c
|
||||
--- gnome-session-2.0.8.orig/gnome-session/splash-widget.c 2003-01-14 18:28:02.000000000 -0500
|
||||
+++ gnome-session-2.0.8/gnome-session/splash-widget.c 2003-01-14 18:27:50.000000000 -0500
|
||||
@@ -164,7 +164,7 @@
|
||||
exposed.y - si->position.y,
|
||||
exposed.x, exposed.y,
|
||||
exposed.width, exposed.height,
|
||||
- GDK_RGB_DITHER_NORMAL,
|
||||
+ GDK_RGB_DITHER_MAX,
|
||||
exposed.x, exposed.y);
|
||||
}
|
||||
|
||||
@@ -246,7 +246,7 @@
|
||||
sw->background, GDK_DRAWABLE (pm),
|
||||
widget->style->black_gc,
|
||||
0, 0, 0, 0, width, height,
|
||||
- GDK_RGB_DITHER_NORMAL,
|
||||
+ GDK_RGB_DITHER_MAX,
|
||||
0, 0);
|
||||
|
||||
gdk_window_set_back_pixmap (
|
316
gnome-session-2.12.0-kdm-support.patch
Normal file
316
gnome-session-2.12.0-kdm-support.patch
Normal file
@ -0,0 +1,316 @@
|
||||
--- gnome-session-2.15.91/gnome-session/gdm-logout-action.c
|
||||
+++ gnome-session-2.15.91/gnome-session/gdm-logout-action.c
|
||||
@@ -56,6 +56,8 @@
|
||||
#define GDM_ACTION_STR_REBOOT "REBOOT"
|
||||
#define GDM_ACTION_STR_SUSPEND "SUSPEND"
|
||||
|
||||
+#define KDM_PROTOCOL_MSG_QUERY_ACTION "caps"
|
||||
+
|
||||
typedef struct {
|
||||
int fd;
|
||||
char *auth_cookie;
|
||||
@@ -64,6 +66,8 @@
|
||||
GdmLogoutAction current_actions;
|
||||
|
||||
time_t last_update;
|
||||
+
|
||||
+ guint is_kdm : 1;
|
||||
} GdmProtocolData;
|
||||
|
||||
static GdmProtocolData gdm_protocol_data = {
|
||||
@@ -71,11 +75,12 @@
|
||||
NULL,
|
||||
GDM_LOGOUT_ACTION_NONE,
|
||||
GDM_LOGOUT_ACTION_NONE,
|
||||
- 0
|
||||
+ 0,
|
||||
+ FALSE
|
||||
};
|
||||
|
||||
static char *
|
||||
-gdm_send_protocol_msg (GdmProtocolData *data,
|
||||
+dm_send_protocol_msg (GdmProtocolData *data,
|
||||
const char *msg)
|
||||
{
|
||||
GString *retval;
|
||||
@@ -87,7 +92,7 @@
|
||||
if (write (data->fd, p, strlen (p)) < 0) {
|
||||
g_free (p);
|
||||
|
||||
- g_warning ("Failed to send message to GDM: %s",
|
||||
+ g_warning ("Failed to send message to display manager: %s",
|
||||
g_strerror (errno));
|
||||
return NULL;
|
||||
}
|
||||
@@ -153,7 +158,7 @@
|
||||
|
||||
msg = g_strdup_printf (GDM_PROTOCOL_MSG_AUTHENTICATE " %s",
|
||||
data->auth_cookie);
|
||||
- response = gdm_send_protocol_msg (data, msg);
|
||||
+ response = dm_send_protocol_msg (data, msg);
|
||||
g_free (msg);
|
||||
|
||||
if (response && !strcmp (response, "OK")) {
|
||||
@@ -195,7 +200,7 @@
|
||||
XauDisposeAuth (xau);
|
||||
|
||||
msg = g_strdup_printf (GDM_PROTOCOL_MSG_AUTHENTICATE " %s", buffer);
|
||||
- response = gdm_send_protocol_msg (data, msg);
|
||||
+ response = dm_send_protocol_msg (data, msg);
|
||||
g_free (msg);
|
||||
|
||||
if (response && !strcmp (response, "OK")) {
|
||||
@@ -218,7 +223,7 @@
|
||||
}
|
||||
|
||||
static void
|
||||
-gdm_shutdown_protocol_connection (GdmProtocolData *data)
|
||||
+dm_shutdown_protocol_connection (GdmProtocolData *data)
|
||||
{
|
||||
if (data->fd)
|
||||
close (data->fd);
|
||||
@@ -237,7 +242,7 @@
|
||||
if (data->fd < 0) {
|
||||
g_warning ("Failed to create GDM socket: %s",
|
||||
g_strerror (errno));
|
||||
- gdm_shutdown_protocol_connection (data);
|
||||
+ dm_shutdown_protocol_connection (data);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
@@ -247,29 +252,93 @@
|
||||
if (connect (data->fd, (struct sockaddr *) &addr, sizeof (addr)) < 0) {
|
||||
g_warning ("Failed to establish a connection with GDM: %s",
|
||||
g_strerror (errno));
|
||||
- gdm_shutdown_protocol_connection (data);
|
||||
+ dm_shutdown_protocol_connection (data);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
- response = gdm_send_protocol_msg (data, GDM_PROTOCOL_MSG_VERSION);
|
||||
+ response = dm_send_protocol_msg (data, GDM_PROTOCOL_MSG_VERSION);
|
||||
if (!response || strncmp (response, "GDM ", strlen ("GDM ") != 0)) {
|
||||
g_free (response);
|
||||
|
||||
g_warning ("Failed to get protocol version from GDM");
|
||||
- gdm_shutdown_protocol_connection (data);
|
||||
+ dm_shutdown_protocol_connection (data);
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
if (!gdm_authenticate_connection (data)) {
|
||||
g_warning ("Failed to authenticate with GDM");
|
||||
- gdm_shutdown_protocol_connection (data);
|
||||
+ dm_shutdown_protocol_connection (data);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
+static gboolean
|
||||
+kdm_init_protocol_connection (GdmProtocolData *data)
|
||||
+{
|
||||
+ struct sockaddr_un addr;
|
||||
+ char *response;
|
||||
+ char *dm_display;
|
||||
+ char *dm_control;
|
||||
+ char *p0 = NULL;
|
||||
+
|
||||
+ g_assert (data->fd <= 0);
|
||||
+
|
||||
+ data->fd = socket (AF_UNIX, SOCK_STREAM, 0);
|
||||
+ if (data->fd < 0) {
|
||||
+ g_warning ("Failed to create KDM socket: %s",
|
||||
+ g_strerror (errno));
|
||||
+ dm_shutdown_protocol_connection (data);
|
||||
+ return FALSE;
|
||||
+ }
|
||||
+
|
||||
+ dm_display = g_strdup (g_getenv ("DISPLAY"));
|
||||
+ dm_control = g_strdup (g_getenv ("DM_CONTROL"));
|
||||
+
|
||||
+ if (dm_display && (p0 = strchr (dm_display, ':')))
|
||||
+ p0 = strchr (p0, '.');
|
||||
+
|
||||
+ if (!dm_control || !strlen (dm_control) ||
|
||||
+ !dm_display || !strlen (dm_display)) {
|
||||
+ g_free (dm_control);
|
||||
+ g_free (dm_display);
|
||||
+
|
||||
+ g_warning ("Could not locate KDM socket.");
|
||||
+ dm_shutdown_protocol_connection (data);
|
||||
+ return FALSE;
|
||||
+ }
|
||||
+
|
||||
+ snprintf (addr.sun_path, sizeof (addr.sun_path), "%s/dmctl-%.*s/socket",
|
||||
+ dm_control, p0 ? p0 - dm_display : 512, dm_display);
|
||||
+ addr.sun_family = AF_UNIX;
|
||||
+
|
||||
+ g_free (dm_display);
|
||||
+ g_free (dm_control);
|
||||
+
|
||||
+ if (connect (data->fd, (struct sockaddr *) &addr, sizeof (addr)) < 0) {
|
||||
+ g_warning ("Failed to establish a connection with KDM: %s",
|
||||
+ g_strerror (errno));
|
||||
+ dm_shutdown_protocol_connection (data);
|
||||
+ return FALSE;
|
||||
+ }
|
||||
+
|
||||
+ return TRUE;
|
||||
+}
|
||||
+
|
||||
+static gboolean
|
||||
+dm_init_protocol_connection (GdmProtocolData *data)
|
||||
+{
|
||||
+ if (g_getenv ("DM_CONTROL") && !g_getenv ("GDMSESSION")) {
|
||||
+ data->is_kdm = TRUE;
|
||||
+ return kdm_init_protocol_connection (data);
|
||||
+ }
|
||||
+
|
||||
+ data->is_kdm = FALSE;
|
||||
+ return gdm_init_protocol_connection (data);
|
||||
+}
|
||||
+
|
||||
static void
|
||||
gdm_parse_query_response (GdmProtocolData *data,
|
||||
const char *response)
|
||||
@@ -317,7 +386,21 @@
|
||||
}
|
||||
|
||||
static void
|
||||
-gdm_update_logout_actions (GdmProtocolData *data)
|
||||
+kdm_parse_query_response (GdmProtocolData *data,
|
||||
+ const char *response)
|
||||
+{
|
||||
+ data->available_actions = GDM_LOGOUT_ACTION_NONE;
|
||||
+ data->current_actions = GDM_LOGOUT_ACTION_NONE;
|
||||
+
|
||||
+ if (!response)
|
||||
+ return;
|
||||
+
|
||||
+ if (strstr (response, "\tshutdown"))
|
||||
+ data->available_actions |= GDM_LOGOUT_ACTION_SHUTDOWN | GDM_LOGOUT_ACTION_REBOOT;
|
||||
+}
|
||||
+
|
||||
+static void
|
||||
+dm_update_logout_actions (GdmProtocolData *data)
|
||||
{
|
||||
time_t current_time;
|
||||
char *response;
|
||||
@@ -328,21 +411,30 @@
|
||||
|
||||
data->last_update = current_time;
|
||||
|
||||
- if (!gdm_init_protocol_connection (data))
|
||||
+ if (!dm_init_protocol_connection (data))
|
||||
return;
|
||||
-
|
||||
- if ((response = gdm_send_protocol_msg (data, GDM_PROTOCOL_MSG_QUERY_ACTION))) {
|
||||
- gdm_parse_query_response (data, response);
|
||||
- g_free (response);
|
||||
- }
|
||||
|
||||
- gdm_shutdown_protocol_connection (data);
|
||||
+ if (data->is_kdm) {
|
||||
+ /* KDM */
|
||||
+ if ((response = dm_send_protocol_msg (data, KDM_PROTOCOL_MSG_QUERY_ACTION))) {
|
||||
+ kdm_parse_query_response (data, response);
|
||||
+ g_free (response);
|
||||
+ }
|
||||
+ } else {
|
||||
+ /* GDM */
|
||||
+ if ((response = dm_send_protocol_msg (data, GDM_PROTOCOL_MSG_QUERY_ACTION))) {
|
||||
+ gdm_parse_query_response (data, response);
|
||||
+ g_free (response);
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
+ dm_shutdown_protocol_connection (data);
|
||||
}
|
||||
|
||||
gboolean
|
||||
gdm_supports_logout_action (GdmLogoutAction action)
|
||||
{
|
||||
- gdm_update_logout_actions (&gdm_protocol_data);
|
||||
+ dm_update_logout_actions (&gdm_protocol_data);
|
||||
|
||||
return (gdm_protocol_data.available_actions & action) != 0;
|
||||
}
|
||||
@@ -350,20 +442,15 @@
|
||||
GdmLogoutAction
|
||||
gdm_get_logout_action (void)
|
||||
{
|
||||
- gdm_update_logout_actions (&gdm_protocol_data);
|
||||
+ dm_update_logout_actions (&gdm_protocol_data);
|
||||
|
||||
return gdm_protocol_data.current_actions;
|
||||
}
|
||||
|
||||
-void
|
||||
-gdm_set_logout_action (GdmLogoutAction action)
|
||||
+static char *
|
||||
+gdm_logout_action_msg (GdmLogoutAction action)
|
||||
{
|
||||
char *action_str = NULL;
|
||||
- char *msg;
|
||||
- char *response;
|
||||
-
|
||||
- if (!gdm_init_protocol_connection (&gdm_protocol_data))
|
||||
- return;
|
||||
|
||||
switch (action) {
|
||||
case GDM_LOGOUT_ACTION_NONE:
|
||||
@@ -380,14 +467,48 @@
|
||||
break;
|
||||
}
|
||||
|
||||
- msg = g_strdup_printf (GDM_PROTOCOL_MSG_SET_ACTION " %s", action_str);
|
||||
+ return g_strdup_printf (GDM_PROTOCOL_MSG_SET_ACTION " %s", action_str);
|
||||
+}
|
||||
+
|
||||
+static char *
|
||||
+kdm_logout_action_msg (GdmLogoutAction action)
|
||||
+{
|
||||
+ char *msg = NULL;
|
||||
+
|
||||
+ if (action == GDM_LOGOUT_ACTION_SHUTDOWN)
|
||||
+ msg = g_strdup ("shutdown\thalt\task");
|
||||
+ else if (action == GDM_LOGOUT_ACTION_REBOOT)
|
||||
+ msg = g_strdup ("shutdown\treboot\task");
|
||||
+
|
||||
+ return msg;
|
||||
+}
|
||||
+
|
||||
+void
|
||||
+gdm_set_logout_action (GdmLogoutAction action)
|
||||
+{
|
||||
+ char *action_str = NULL;
|
||||
+ char *msg;
|
||||
+ char *response;
|
||||
+
|
||||
+ if (!dm_init_protocol_connection (&gdm_protocol_data))
|
||||
+ return;
|
||||
+
|
||||
+ if (gdm_protocol_data.is_kdm)
|
||||
+ msg = kdm_logout_action_msg (action);
|
||||
+ else
|
||||
+ msg = gdm_logout_action_msg (action);
|
||||
+
|
||||
+ if (!msg) {
|
||||
+ dm_shutdown_protocol_connection (&gdm_protocol_data);
|
||||
+ return;
|
||||
+ }
|
||||
|
||||
- response = gdm_send_protocol_msg (&gdm_protocol_data, msg);
|
||||
+ response = dm_send_protocol_msg (&gdm_protocol_data, msg);
|
||||
|
||||
g_free (msg);
|
||||
g_free (response);
|
||||
|
||||
gdm_protocol_data.last_update = 0;
|
||||
|
||||
- gdm_shutdown_protocol_connection (&gdm_protocol_data);
|
||||
+ dm_shutdown_protocol_connection (&gdm_protocol_data);
|
||||
}
|
23
gnome-session-2.12.0-su-session-management.patch
Normal file
23
gnome-session-2.12.0-su-session-management.patch
Normal file
@ -0,0 +1,23 @@
|
||||
diff -Nurp gnome-session-2.12.0-pre/gnome-session/ice.c gnome-session-2.12.0-post/gnome-session/ice.c
|
||||
--- gnome-session-2.12.0-pre/gnome-session/ice.c 2005-05-17 08:59:05.000000000 -0500
|
||||
+++ gnome-session-2.12.0-post/gnome-session/ice.c 2006-01-26 22:02:49.000000000 -0600
|
||||
@@ -379,6 +379,8 @@ initialize_ice (void)
|
||||
|
||||
p = g_strconcat (ENVNAME "=", ids, NULL);
|
||||
putenv (p);
|
||||
+
|
||||
+ putenv (g_strconcat (ICE_AUTHORITY_ENV_NAME "=", authfile, NULL));
|
||||
|
||||
ice_depth = 0; /* We are live */
|
||||
}
|
||||
diff -Nurp gnome-session-2.12.0-pre/gnome-session/ice.h gnome-session-2.12.0-post/gnome-session/ice.h
|
||||
--- gnome-session-2.12.0-pre/gnome-session/ice.h 2001-05-10 17:09:15.000000000 -0500
|
||||
+++ gnome-session-2.12.0-post/gnome-session/ice.h 2006-01-26 21:51:35.000000000 -0600
|
||||
@@ -24,6 +24,7 @@
|
||||
|
||||
#define MAGIC_COOKIE_LEN 16
|
||||
#define ENVNAME "SESSION_MANAGER"
|
||||
+#define ICE_AUTHORITY_ENV_NAME "ICEAUTHORITY"
|
||||
|
||||
/* List of all auth entries. */
|
||||
extern GSList *auth_entries;
|
163
gnome-session-2.12.0-unlock-keyring.patch
Normal file
163
gnome-session-2.12.0-unlock-keyring.patch
Normal file
@ -0,0 +1,163 @@
|
||||
--- gnome-session-2.15.91/gnome-session/Makefile.am
|
||||
+++ gnome-session-2.15.91/gnome-session/Makefile.am
|
||||
@@ -7,6 +7,7 @@
|
||||
$(STANDARD_PROPERTIES_CFLAGS) \
|
||||
$(WARN_CFLAGS) \
|
||||
$(DISABLE_DEPRECATED_CFLAGS) \
|
||||
+ -I/opt/novell/CASA/include \
|
||||
-DGNOMELOCALEDIR=\""$(prefix)/${DATADIRNAME}/locale\"" \
|
||||
-DGCONF_SANITY_CHECK=\""$(GCONF_SANITY_CHECK)"\" \
|
||||
-DGNOME_KEYRING_DAEMON=\""$(GNOME_KEYRING_DAEMON)"\" \
|
||||
--- gnome-session-2.15.91/gnome-session/main.c
|
||||
+++ gnome-session-2.15.91/gnome-session/main.c
|
||||
@@ -30,6 +30,10 @@
|
||||
#include <netdb.h>
|
||||
#include <time.h>
|
||||
|
||||
+/* added for CASA -- start */
|
||||
+#include <dlfcn.h>
|
||||
+/* added for CASA -- end */
|
||||
+
|
||||
#include <gconf/gconf-client.h>
|
||||
|
||||
#include <libgnome/libgnome.h>
|
||||
@@ -37,6 +41,9 @@
|
||||
|
||||
#include <libgnomeui/gnome-window-icon.h>
|
||||
|
||||
+#include <gnome-keyring.h>
|
||||
+#include <micasa_mgmd.h>
|
||||
+
|
||||
#include "manager.h"
|
||||
#include "ice.h"
|
||||
#include "save.h"
|
||||
@@ -50,6 +57,19 @@
|
||||
#include "gsm-at-startup.h"
|
||||
#include "gsm-remote-desktop.h"
|
||||
|
||||
+
|
||||
+/* added for CASA -- start */
|
||||
+SSCS_TYPEDEF_LIBCALL(int, CASA_GetCredential_T)
|
||||
+ (
|
||||
+ uint32_t ssFlags,
|
||||
+ SSCS_SECRET_ID_T * appSecretID,
|
||||
+ SSCS_SECRET_ID_T * sharedSecretID,
|
||||
+ uint32_t * credentialType,
|
||||
+ void * credential,
|
||||
+ SSCS_EXT_T * ext
|
||||
+ );
|
||||
+/* added for CASA -- end */
|
||||
+
|
||||
/* Flag indicating autosave - user won't be prompted on logout to
|
||||
* save the session */
|
||||
gboolean autosave = FALSE;
|
||||
@@ -78,6 +98,8 @@
|
||||
|
||||
gchar *session_name = NULL;
|
||||
|
||||
+gchar *default_keyring = NULL;
|
||||
+
|
||||
static const GOptionEntry options[] = {
|
||||
{"choose-session", '\0', 0, G_OPTION_ARG_STRING, &session_name, N_("Specify a session name to load"), N_("NAME")},
|
||||
{"failsafe", '\0', 0, G_OPTION_ARG_NONE, &failsafe, N_("Only read saved sessions from the default.session file"), NULL},
|
||||
@@ -321,6 +343,63 @@
|
||||
return (tm->tm_year >= 105); /* We start on Jan 1 2006 */
|
||||
}
|
||||
|
||||
+/* modified for CASA -- start */
|
||||
+static gchar *
|
||||
+get_casa_password (gboolean try_gnome_keyring)
|
||||
+{
|
||||
+ int rcode = 0;
|
||||
+ int32_t credtype = SSCS_CRED_TYPE_BASIC_F;
|
||||
+
|
||||
+ void *casaIDK = NULL;
|
||||
+
|
||||
+ CASA_GetCredential_T p_miCASAGetCredential = NULL;
|
||||
+
|
||||
+
|
||||
+ SSCS_BASIC_CREDENTIAL credential = { 0 };
|
||||
+ SSCS_SECRET_ID_T appSecretId = { 0 };
|
||||
+ SSCS_SECRET_ID_T sharedSecretId = { 0 };
|
||||
+ SSCS_EXT_T ext = {0};
|
||||
+
|
||||
+ g_strlcpy (appSecretId.id, "Gnome_Keyring_Default", sizeof (appSecretId.id));
|
||||
+ appSecretId.len = strlen (appSecretId.id) + 1;
|
||||
+
|
||||
+ g_strlcpy (sharedSecretId.id, "Desktop", sizeof (sharedSecretId.id));
|
||||
+ sharedSecretId.len = strlen (sharedSecretId.id) + 1;
|
||||
+
|
||||
+ credential.unFlags = USERNAME_TYPE_CN_F;
|
||||
+
|
||||
+ if((casaIDK = dlopen("libmicasa.so.1", RTLD_LAZY)))
|
||||
+ {
|
||||
+ p_miCASAGetCredential = (CASA_GetCredential_T)dlsym(casaIDK, "miCASAGetCredential");
|
||||
+ rcode = p_miCASAGetCredential (0,
|
||||
+ try_gnome_keyring ? &appSecretId : NULL,
|
||||
+ &sharedSecretId,
|
||||
+ &credtype,
|
||||
+ &credential,
|
||||
+ NULL);
|
||||
+
|
||||
+ dlclose(casaIDK);
|
||||
+ if (rcode == NSSCS_SUCCESS) {
|
||||
+ gchar *password = g_strdup (credential.password);
|
||||
+
|
||||
+ memset (credential.password, 0, strlen (credential.password));
|
||||
+ return password;
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
+ return NULL;
|
||||
+}
|
||||
+/* modified for CASA -- end */
|
||||
+
|
||||
+
|
||||
+static void
|
||||
+create_default_keyring (const gchar *password)
|
||||
+{
|
||||
+ gnome_keyring_create_sync ("default", password);
|
||||
+ gnome_keyring_set_default_keyring_sync ("default");
|
||||
+ default_keyring = g_strdup ("default");
|
||||
+}
|
||||
+
|
||||
int
|
||||
main (int argc, char *argv[])
|
||||
{
|
||||
@@ -492,6 +571,36 @@
|
||||
|
||||
gsm_remote_desktop_start ();
|
||||
|
||||
+ password = get_casa_password (TRUE);
|
||||
+
|
||||
+ if (password) {
|
||||
+ GnomeKeyringResult result;
|
||||
+
|
||||
+ result = gnome_keyring_get_default_keyring_sync (&default_keyring);
|
||||
+
|
||||
+ if (result != GNOME_KEYRING_RESULT_OK || !default_keyring || !strlen (default_keyring))
|
||||
+ create_default_keyring (password);
|
||||
+
|
||||
+ result = gnome_keyring_unlock_sync (default_keyring, password);
|
||||
+
|
||||
+ if (result == GNOME_KEYRING_RESULT_NO_SUCH_KEYRING) {
|
||||
+ create_default_keyring (password);
|
||||
+ gnome_keyring_unlock_sync (default_keyring, password);
|
||||
+ }
|
||||
+
|
||||
+ if (result != GNOME_KEYRING_RESULT_OK) {
|
||||
+ password = get_casa_password (FALSE);
|
||||
+ if (password) {
|
||||
+ gnome_keyring_unlock_sync (default_keyring, password);
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
+ if (password) {
|
||||
+ memset (password, 0, strlen (password));
|
||||
+ g_free (password);
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
if (splashing)
|
||||
splash_start ();
|
||||
|
66
gnome-session-2.12.0-xgl-display-modal-2.patch
Normal file
66
gnome-session-2.12.0-xgl-display-modal-2.patch
Normal file
@ -0,0 +1,66 @@
|
||||
diff -ur ../gnome-session-2.12.0/gnome-session/logout.c ./gnome-session/logout.c
|
||||
--- ../gnome-session-2.12.0/gnome-session/logout.c 2005-05-06 12:17:12.000000000 +0200
|
||||
+++ ./gnome-session/logout.c 2006-01-07 06:28:42.000000000 +0100
|
||||
@@ -26,6 +26,9 @@
|
||||
#include <gtk/gtkinvisible.h>
|
||||
#include <gdk/gdkx.h>
|
||||
|
||||
+#include <X11/Xlib.h>
|
||||
+#include <X11/Xatom.h>
|
||||
+
|
||||
#include <gconf/gconf-client.h>
|
||||
|
||||
#include <libgnome/libgnome.h>
|
||||
@@ -187,6 +190,10 @@
|
||||
int attr_mask;
|
||||
GdkGCValues values;
|
||||
FadeoutData *fadeout;
|
||||
+ GdkAtom property = gdk_atom_intern ("_NET_WM_STATE_DISPLAY_MODAL", FALSE);
|
||||
+
|
||||
+ if (gdk_x11_screen_supports_net_wm_hint (screen, property))
|
||||
+ return;
|
||||
|
||||
fadeout = g_new (FadeoutData, 1);
|
||||
|
||||
@@ -491,12 +498,31 @@
|
||||
*/
|
||||
if (!a11y_enabled)
|
||||
{
|
||||
- XGrabServer (GDK_DISPLAY ());
|
||||
+ /* Really necessary?
|
||||
+ XGrabServer (GDK_DISPLAY ());
|
||||
+ */
|
||||
gsm_foreach_screen (fadeout_screen);
|
||||
}
|
||||
|
||||
gtk_widget_show_all (box);
|
||||
|
||||
+ /* XXX: Appending experimental display modal state */
|
||||
+ {
|
||||
+ Display *xdisplay = GDK_WINDOW_XDISPLAY (box->window);
|
||||
+ Window xwindow = GDK_WINDOW_XID (box->window);
|
||||
+ Atom state_atom, display_modal_atom;
|
||||
+
|
||||
+ state_atom = XInternAtom (xdisplay, "_NET_WM_STATE", 0);
|
||||
+ display_modal_atom = XInternAtom (xdisplay,
|
||||
+ "_NET_WM_STATE_DISPLAY_MODAL", 0);
|
||||
+
|
||||
+ XChangeProperty (xdisplay,
|
||||
+ xwindow,
|
||||
+ state_atom,
|
||||
+ XA_ATOM, 32, PropModeAppend,
|
||||
+ (guchar *) &display_modal_atom, 1);
|
||||
+ }
|
||||
+
|
||||
if (!a11y_enabled)
|
||||
{
|
||||
/* Move the grabs to our message box */
|
||||
@@ -533,7 +559,7 @@
|
||||
if (!a11y_enabled)
|
||||
{
|
||||
hide_fadeout_windows ();
|
||||
- XUngrabServer (GDK_DISPLAY ());
|
||||
+ /* XUngrabServer (GDK_DISPLAY ()); */
|
||||
|
||||
gdk_pointer_ungrab (GDK_CURRENT_TIME);
|
||||
gdk_keyboard_ungrab (GDK_CURRENT_TIME);
|
3
gnome-session-2.16.1.tar.bz2
Normal file
3
gnome-session-2.16.1.tar.bz2
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:6d6d21c6b9a4a2fe7bc288e8fdf36159444370973b4aa71dfc4c48bc0ad7cdf3
|
||||
size 677501
|
14
gnome-session-DESKTOP_LAUNCH.patch
Normal file
14
gnome-session-DESKTOP_LAUNCH.patch
Normal file
@ -0,0 +1,14 @@
|
||||
--- gnome-session-2.11.90/gnome-session/main.c
|
||||
+++ gnome-session-2.11.90/gnome-session/main.c
|
||||
@@ -391,6 +391,11 @@
|
||||
g_free (display_str);
|
||||
putenv (ep);
|
||||
|
||||
+ /* We are in a Gnome session, we want gnome-open to be the default
|
||||
+ * launching application.
|
||||
+ */
|
||||
+ putenv ("DESKTOP_LAUNCH=gnome-open");
|
||||
+
|
||||
ignore (SIGPIPE);
|
||||
|
||||
/* Need DISPLAY set */
|
20
gnome-session-compiz.patch
Normal file
20
gnome-session-compiz.patch
Normal file
@ -0,0 +1,20 @@
|
||||
--- gnome-session/gnome-wm 2006/10/11 16:30:36 1.1
|
||||
+++ gnome-session/gnome-wm 2006/10/11 16:35:55
|
||||
@@ -43,6 +43,17 @@
|
||||
IFS=":"
|
||||
if [ -z "$WINDOW_MANAGER" ] ; then
|
||||
if [ -z "$DEFWM" -o "x$DEFWM" = "xgnome-wm" ]; then
|
||||
+
|
||||
+ if /usr/bin/xdpyinfo | /usr/bin/grep -q '^vendor release number: *70000001'; then
|
||||
+ if [ -x /usr/bin/compiz ]; then
|
||||
+ if [ -z "$SMID" ]; then
|
||||
+ exec /usr/bin/compiz --replace --sm-disable gconf
|
||||
+ else
|
||||
+ exec /usr/bin/compiz --replace --sm-client-id $SMID gconf
|
||||
+ fi
|
||||
+ fi
|
||||
+ fi
|
||||
+
|
||||
for wm in metacity sawfish sawmill enlightenment icewm wmaker fvwm2 qvwm fvwm twm kwm ; do
|
||||
for dir in $PATH ; do
|
||||
if [ -x "$dir/$wm" ] ; then
|
11
gnome-session-dist-splash.patch
Normal file
11
gnome-session-dist-splash.patch
Normal file
@ -0,0 +1,11 @@
|
||||
--- gnome-session/gnome-session.schemas.in
|
||||
+++ gnome-session/gnome-session.schemas.in
|
||||
@@ -50,7 +50,7 @@
|
||||
<applyto>/apps/gnome-session/options/splash_image</applyto>
|
||||
<owner>gnome</owner>
|
||||
<type>string</type>
|
||||
- <default>splash/gnome-splash.png</default>
|
||||
+ <default>/opt/gnome/share/dist/splash/dist-splash.png</default>
|
||||
<locale name="C">
|
||||
<short>Preferred Image to use for login splash screen</short>
|
||||
<long>This is a relative path value based off the $datadir/pixmaps/ directory. Sub-directories and image names are valid values. Changing this value will effect the next session login.</long>
|
14
gnome-session-migrate-session-manual.patch
Normal file
14
gnome-session-migrate-session-manual.patch
Normal file
@ -0,0 +1,14 @@
|
||||
diff -upr gnome-session-2.12.0-orig/gnome-session/save.c gnome-session-2.12.0/gnome-session/save.c
|
||||
--- gnome-session-2.12.0-orig/gnome-session/save.c 2006-06-12 16:15:02.000000000 +0200
|
||||
+++ gnome-session-2.12.0/gnome-session/save.c 2006-06-12 16:16:04.000000000 +0200
|
||||
@@ -657,6 +657,10 @@ read_session (const char *name)
|
||||
if (list) {
|
||||
char *path;
|
||||
|
||||
+ path = g_build_filename (g_get_user_config_dir (), "autostart", NULL);
|
||||
+ g_mkdir_with_parents (path, S_IRWXU);
|
||||
+ g_free (path);
|
||||
+
|
||||
/* migrate to newly desktop-based autostart system */
|
||||
while (list) {
|
||||
SmProp *prop;
|
257
gnome-session-motd.patch
Normal file
257
gnome-session-motd.patch
Normal file
@ -0,0 +1,257 @@
|
||||
--- /dev/null 2006-02-06 19:14:42.000000000 +0100
|
||||
+++ gnome-session/gsm-motd.h 2006-02-03 12:30:48.000000000 +0100
|
||||
@@ -0,0 +1,7 @@
|
||||
+#ifndef GSM_MOTD_H
|
||||
+#define GSM_MOTD_H
|
||||
+
|
||||
+void gsm_motd_start (void);
|
||||
+void gsm_motd_stop (void);
|
||||
+
|
||||
+#endif
|
||||
--- /dev/null 2006-02-06 19:14:42.000000000 +0100
|
||||
+++ gnome-session/gsm-motd.c 2006-02-15 14:57:58.000000000 +0100
|
||||
@@ -0,0 +1,179 @@
|
||||
+/* gdm-motd.c - Message of the Day support in gnome-session.
|
||||
+
|
||||
+ Copyright (C) 1998, 1999 Tom Tromey
|
||||
+
|
||||
+ This program is free software; you can redistribute it and/or modify
|
||||
+ it under the terms of the GNU General Public License as published by
|
||||
+ the Free Software Foundation; either version 2, or (at your option)
|
||||
+ any later version.
|
||||
+
|
||||
+ This program is distributed in the hope that it will be useful,
|
||||
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
+ GNU General Public License for more details.
|
||||
+
|
||||
+ You should have received a copy of the GNU General Public License
|
||||
+ along with this program; if not, write to the Free Software
|
||||
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||
+ 02111-1307, USA. */
|
||||
+
|
||||
+#include <config.h>
|
||||
+#include <glib/gi18n.h>
|
||||
+#include <gconf/gconf-client.h>
|
||||
+#include <gtk/gtkmessagedialog.h>
|
||||
+#include <libgnomevfs/gnome-vfs-ops.h>
|
||||
+#ifdef HAVE_LIBNOTIFY
|
||||
+#include <libnotify/notify.h>
|
||||
+#endif
|
||||
+#include "gsm-motd.h"
|
||||
+
|
||||
+static gchar *motd_contents = NULL;
|
||||
+static GnomeVFSMonitorHandle *monitor_handle = NULL;
|
||||
+
|
||||
+static void
|
||||
+display_message_of_the_day_dialog (void)
|
||||
+{
|
||||
+ GtkWidget *dialog;
|
||||
+
|
||||
+ if (motd_contents)
|
||||
+ {
|
||||
+ dialog = gtk_message_dialog_new_with_markup (NULL, 0, GTK_MESSAGE_INFO, GTK_BUTTONS_CLOSE,
|
||||
+ "<big><b>%s</b></big>\n%s",
|
||||
+ _("Message of the Day"), motd_contents);
|
||||
+ g_signal_connect (G_OBJECT (dialog), "response", G_CALLBACK (gtk_widget_destroy), NULL);
|
||||
+ gtk_widget_show (dialog);
|
||||
+ }
|
||||
+}
|
||||
+
|
||||
+#ifdef HAVE_LIBNOTIFY
|
||||
+static void
|
||||
+display_message_of_the_day_notification (void)
|
||||
+{
|
||||
+ NotifyNotification *n;
|
||||
+ GdkPixbuf *icon;
|
||||
+
|
||||
+ if (!motd_contents)
|
||||
+ return;
|
||||
+
|
||||
+ if (!notify_is_initted () && !notify_init (_("Session Manager")))
|
||||
+ {
|
||||
+ g_printerr ("Could not contact the notification daemon");
|
||||
+ display_message_of_the_day_dialog ();
|
||||
+ }
|
||||
+ else
|
||||
+ {
|
||||
+ icon = gtk_icon_theme_load_icon (gtk_icon_theme_get_default (),
|
||||
+ "gtk-info",
|
||||
+ 48,
|
||||
+ GTK_ICON_LOOKUP_USE_BUILTIN,
|
||||
+ NULL);
|
||||
+
|
||||
+ n = notify_notification_new (_("Message of the Day"), motd_contents, NULL, NULL);
|
||||
+ notify_notification_set_icon_from_pixbuf (n, icon);
|
||||
+ gdk_pixbuf_unref (icon);
|
||||
+
|
||||
+ if (!notify_notification_show (n, NULL))
|
||||
+ {
|
||||
+ display_message_of_the_day_dialog ();
|
||||
+ }
|
||||
+
|
||||
+ //g_object_unref (n);
|
||||
+ }
|
||||
+}
|
||||
+#endif
|
||||
+
|
||||
+static void
|
||||
+motd_changed_cb (GnomeVFSMonitorHandle *handle,
|
||||
+ const gchar *monitor_uri,
|
||||
+ const gchar *info_uri,
|
||||
+ GnomeVFSMonitorEventType event_type,
|
||||
+ gpointer user_data)
|
||||
+{
|
||||
+ gchar *contents;
|
||||
+ gsize length;
|
||||
+
|
||||
+ switch (event_type)
|
||||
+ {
|
||||
+ case GNOME_VFS_MONITOR_EVENT_CHANGED :
|
||||
+ case GNOME_VFS_MONITOR_EVENT_CREATED :
|
||||
+ if (g_file_get_contents ("/etc/motd", &contents, &length, NULL))
|
||||
+ {
|
||||
+ if (length > 0)
|
||||
+ {
|
||||
+ g_free (motd_contents);
|
||||
+ motd_contents = contents;
|
||||
+
|
||||
+#ifdef HAVE_LIBNOTIFY
|
||||
+ display_message_of_the_day_notification ();
|
||||
+#else
|
||||
+ display_message_of_the_day_dialog ();
|
||||
+#endif
|
||||
+ }
|
||||
+ }
|
||||
+ break;
|
||||
+ case GNOME_VFS_MONITOR_EVENT_DELETED :
|
||||
+ g_free (motd_contents);
|
||||
+ motd_contents = NULL;
|
||||
+ break;
|
||||
+ }
|
||||
+}
|
||||
+
|
||||
+static gboolean
|
||||
+on_login_cb (gpointer user_data)
|
||||
+{
|
||||
+#ifdef HAVE_LIBNOTIFY
|
||||
+ display_message_of_the_day_notification ();
|
||||
+#else
|
||||
+ display_message_of_the_day_dialog ();
|
||||
+#endif
|
||||
+
|
||||
+ return FALSE;
|
||||
+}
|
||||
+
|
||||
+void
|
||||
+gsm_motd_start (void)
|
||||
+{
|
||||
+ gchar *contents;
|
||||
+ gsize length;
|
||||
+ GConfClient *client;
|
||||
+ gboolean enabled;
|
||||
+
|
||||
+ client = gconf_client_get_default ();
|
||||
+ enabled = gconf_client_get_bool (client, "/apps/gnome-session/options/enable_motd", NULL);
|
||||
+ g_object_unref (client);
|
||||
+
|
||||
+ if (!enabled)
|
||||
+ return;
|
||||
+
|
||||
+ /* load the MOTD file */
|
||||
+ if (gnome_vfs_monitor_add (&monitor_handle, "file:///etc/motd", GNOME_VFS_MONITOR_FILE,
|
||||
+ (GnomeVFSMonitorCallback) motd_changed_cb, NULL) != GNOME_VFS_OK)
|
||||
+ {
|
||||
+ g_printerr ("Failed to setup monitor for /etc/motd file");
|
||||
+ }
|
||||
+
|
||||
+ if (g_file_get_contents ("/etc/motd", &contents, &length, NULL))
|
||||
+ {
|
||||
+ if (length > 0)
|
||||
+ motd_contents = contents;
|
||||
+ }
|
||||
+
|
||||
+ /* install a timeout to show the message first time */
|
||||
+ g_timeout_add (8000, (GSourceFunc) on_login_cb, NULL);
|
||||
+}
|
||||
+
|
||||
+void
|
||||
+gsm_motd_stop (void)
|
||||
+{
|
||||
+ if (monitor_handle)
|
||||
+ {
|
||||
+ gnome_vfs_monitor_cancel (monitor_handle);
|
||||
+ monitor_handle = NULL;
|
||||
+ }
|
||||
+
|
||||
+ if (motd_contents)
|
||||
+ {
|
||||
+ g_free (motd_contents);
|
||||
+ motd_contents = NULL;
|
||||
+ }
|
||||
+}
|
||||
? depcomp
|
||||
? stamp-h1
|
||||
? gnome-session/gsm-motd.c
|
||||
? gnome-session/gsm-motd.h
|
||||
? po/stamp-it
|
||||
Index: gnome-session/Makefile.am
|
||||
===================================================================
|
||||
RCS file: /cvs/gnome/gnome-session/gnome-session/Makefile.am,v
|
||||
retrieving revision 1.108
|
||||
diff -u -p -r1.108 Makefile.am
|
||||
--- gnome-session/Makefile.am 10 Jan 2005 16:36:40 -0000 1.108
|
||||
+++ gnome-session/Makefile.am 15 Feb 2006 14:01:55 -0000
|
||||
@@ -4,6 +4,7 @@ defaultdir = $(datadir)/gnome
|
||||
|
||||
INCLUDES = \
|
||||
$(GNOME_SESSION_CFLAGS) \
|
||||
+ $(LIBNOTIFY_CFLAGS) \
|
||||
$(STANDARD_PROPERTIES_CFLAGS) \
|
||||
$(WARN_CFLAGS) \
|
||||
$(DISABLE_DEPRECATED_CFLAGS) \
|
||||
@@ -26,7 +27,7 @@ STANDARD_PROPERTIES_CFLAGS =
|
||||
-DDATADIR=\""$(datadir)"\" \
|
||||
$(NULL)
|
||||
|
||||
-gnome_session_LDADD = $(X_LIBS) $(GNOME_SESSION_LIBS) $(LIBWRAP_LIBS)
|
||||
+gnome_session_LDADD = $(X_LIBS) $(GNOME_SESSION_LIBS) $(LIBWRAP_LIBS) $(LIBNOTIFY_LIBS)
|
||||
gnome_session_save_LDADD = $(GNOME_SESSION_LIBS)
|
||||
gnome_session_remove_LDADD = $(GNOME_SESSION_LIBS)
|
||||
gnome_session_properties_LDADD = $(GNOME_SESSION_LIBS)
|
||||
@@ -95,6 +96,8 @@ gnome_session_SOURCES = \
|
||||
gsm-keyring.h \
|
||||
gsm-gsd.c \
|
||||
gsm-gsd.h \
|
||||
+ gsm-motd.c \
|
||||
+ gsm-motd.h \
|
||||
gsm-protocol.c \
|
||||
gsm-protocol.h \
|
||||
gsm-remote-desktop.c \
|
||||
Index: gnome-session/main.c
|
||||
===================================================================
|
||||
RCS file: /cvs/gnome/gnome-session/gnome-session/main.c,v
|
||||
retrieving revision 1.70
|
||||
diff -u -p -r1.70 main.c
|
||||
--- gnome-session/main.c 30 Oct 2005 11:26:31 -0000 1.70
|
||||
+++ gnome-session/main.c 15 Feb 2006 14:01:56 -0000
|
||||
@@ -48,6 +48,7 @@
|
||||
#include "gsm-xrandr.h"
|
||||
#include "gsm-at-startup.h"
|
||||
#include "gsm-remote-desktop.h"
|
||||
+#include "gsm-motd.h"
|
||||
|
||||
/* Flag indicating autosave - user won't be prompted on logout to
|
||||
* save the session */
|
||||
@@ -465,7 +466,11 @@ main (int argc, char *argv[])
|
||||
if (a_t_support) /* the ATs are happier if the session has started */
|
||||
gsm_assistive_technologies_start ();
|
||||
|
||||
+ gsm_motd_start ();
|
||||
+
|
||||
gtk_main ();
|
||||
+
|
||||
+ gsm_motd_stop ();
|
||||
|
||||
gsm_remote_desktop_cleanup ();
|
||||
|
139
gnome-session-remove-dns-warning.patch
Normal file
139
gnome-session-remove-dns-warning.patch
Normal file
@ -0,0 +1,139 @@
|
||||
--- gnome-session/main.c
|
||||
+++ gnome-session/main.c
|
||||
@@ -162,126 +162,6 @@
|
||||
*bool_value ? "On" : "Off");
|
||||
}
|
||||
|
||||
-/* returns the hostname */
|
||||
-static gchar *
|
||||
-get_hostname (gboolean readable)
|
||||
-{
|
||||
- static gboolean init = FALSE;
|
||||
- static gchar *result = NULL;
|
||||
-
|
||||
- if (!init)
|
||||
- {
|
||||
- char hostname[256];
|
||||
-
|
||||
- if (gethostname (hostname, sizeof (hostname)) == 0)
|
||||
- result = g_strdup (hostname);
|
||||
-
|
||||
- init = TRUE;
|
||||
- }
|
||||
-
|
||||
- if (result)
|
||||
- return result;
|
||||
- else
|
||||
- return readable ? "(Unknown)" : NULL;
|
||||
-}
|
||||
-
|
||||
-#ifdef ENABLE_IPV6
|
||||
-/*Check whether the node is IPv6 enabled.*/
|
||||
-static gboolean
|
||||
-have_ipv6 (void)
|
||||
-{
|
||||
- int s;
|
||||
-
|
||||
- s = socket (AF_INET6, SOCK_STREAM, 0);
|
||||
- if (s != -1) {
|
||||
- close (s);
|
||||
- return TRUE;
|
||||
- }
|
||||
- return FALSE;
|
||||
-}
|
||||
-#endif
|
||||
-
|
||||
-/* Check if a DNS lookup on `hostname` can be done */
|
||||
-static gboolean
|
||||
-check_for_dns (void)
|
||||
-{
|
||||
- char *hostname;
|
||||
-
|
||||
- hostname = get_hostname (FALSE);
|
||||
-
|
||||
- if (!hostname)
|
||||
- return FALSE;
|
||||
-
|
||||
-#ifdef ENABLE_IPV6
|
||||
- if (have_ipv6 ())
|
||||
- {
|
||||
- struct addrinfo hints, *result = NULL;
|
||||
-
|
||||
- memset (&hints, 0, sizeof(hints));
|
||||
- hints.ai_socktype = SOCK_STREAM;
|
||||
- hints.ai_flags = AI_CANONNAME;
|
||||
-
|
||||
- if (getaddrinfo (hostname, NULL, &hints, &result) != 0)
|
||||
- return FALSE;
|
||||
-
|
||||
- if (!result->ai_canonname)
|
||||
- return FALSE;
|
||||
- }
|
||||
- else
|
||||
-#endif
|
||||
- {
|
||||
- /*
|
||||
- * FIXME:
|
||||
- * we should probably be a lot more robust here
|
||||
- */
|
||||
- if (!gethostbyname (hostname))
|
||||
- return FALSE;
|
||||
- }
|
||||
-
|
||||
- return TRUE;
|
||||
-}
|
||||
-
|
||||
-enum {
|
||||
- RESPONSE_LOG_IN,
|
||||
- RESPONSE_TRY_AGAIN
|
||||
-};
|
||||
-
|
||||
-static void
|
||||
-gnome_login_check (void)
|
||||
-{
|
||||
- GtkWidget *tmp_msgbox = NULL;
|
||||
-
|
||||
- while (!check_for_dns ())
|
||||
- {
|
||||
- if (!tmp_msgbox)
|
||||
- {
|
||||
- tmp_msgbox = gtk_message_dialog_new (NULL, 0,
|
||||
- GTK_MESSAGE_WARNING,
|
||||
- GTK_BUTTONS_NONE,
|
||||
- _("Could not look up internet address for %s.\n"
|
||||
- "This will prevent GNOME from operating correctly.\n"
|
||||
- "It may be possible to correct the problem by adding\n"
|
||||
- "%s to the file /etc/hosts."),
|
||||
- get_hostname(TRUE), get_hostname(TRUE));
|
||||
-
|
||||
- gtk_dialog_add_buttons (GTK_DIALOG (tmp_msgbox),
|
||||
- _("Log in Anyway"), RESPONSE_LOG_IN,
|
||||
- _("Try Again"), RESPONSE_TRY_AGAIN,
|
||||
- NULL);
|
||||
-
|
||||
- gtk_window_set_position (GTK_WINDOW (tmp_msgbox), GTK_WIN_POS_CENTER);
|
||||
- }
|
||||
-
|
||||
- gtk_dialog_set_default_response (GTK_DIALOG (tmp_msgbox), RESPONSE_TRY_AGAIN);
|
||||
-
|
||||
- if (RESPONSE_TRY_AGAIN != gtk_dialog_run (GTK_DIALOG (tmp_msgbox)))
|
||||
- break;
|
||||
- }
|
||||
-
|
||||
- if (tmp_msgbox)
|
||||
- gtk_widget_destroy (tmp_msgbox);
|
||||
-}
|
||||
-
|
||||
static void
|
||||
gsm_shutdown_gconfd (void)
|
||||
{
|
||||
@@ -370,9 +250,6 @@
|
||||
/* We need to do this as early as possible */
|
||||
gsm_set_display_properties ();
|
||||
|
||||
- if (ORBit_proto_use ("IPv4") || ORBit_proto_use ("IPv6"))
|
||||
- gnome_login_check ();
|
||||
-
|
||||
err = NULL;
|
||||
g_spawn_command_line_sync (GCONF_SANITY_CHECK, NULL, NULL, &status, &err);
|
||||
if (err != NULL)
|
198
gnome-session-speedup.patch
Normal file
198
gnome-session-speedup.patch
Normal file
@ -0,0 +1,198 @@
|
||||
? gnome-session-speedup.patch
|
||||
? stamp-h1
|
||||
Index: gnome-session/logout.c
|
||||
===================================================================
|
||||
RCS file: /cvs/gnome/gnome-session/gnome-session/logout.c,v
|
||||
retrieving revision 1.60
|
||||
diff -u -p -r1.60 logout.c
|
||||
--- gnome-session/logout.c 26 Apr 2005 10:56:50 -0000 1.60
|
||||
+++ gnome-session/logout.c 17 Aug 2005 16:37:52 -0000
|
||||
@@ -61,10 +61,12 @@ typedef struct {
|
||||
int rowstride;
|
||||
GdkWindow *root_window;
|
||||
GdkWindow *draw_window;
|
||||
- GdkPixbuf *start_pb, *end_pb, *frame;
|
||||
- guchar *start_p, *end_p, *frame_p;
|
||||
+ GdkPixmap *draw_pixmap;
|
||||
+ GdkPixbuf *start_pb, *frame;
|
||||
+ guchar *start_p, *frame_p;
|
||||
GTimeVal start_time;
|
||||
GdkGC *gc;
|
||||
+ int callback_id;
|
||||
} FadeoutData;
|
||||
|
||||
static GList *fadeout_windows = NULL;
|
||||
@@ -76,8 +78,10 @@ static void
|
||||
get_current_frame (FadeoutData *fadeout,
|
||||
double sat)
|
||||
{
|
||||
- guchar *sp, *ep, *fp;
|
||||
+ guchar *sp, *fp;
|
||||
int i, j, width, offset;
|
||||
+ const int FIXED = 8;
|
||||
+ int fixed_mult = (0.5 + (sat / 2)) * (1 << 8);
|
||||
|
||||
width = fadeout->area.width * 3;
|
||||
offset = 0;
|
||||
@@ -85,44 +89,17 @@ get_current_frame (FadeoutData *fadeout,
|
||||
for (i = 0; i < fadeout->area.height; i++)
|
||||
{
|
||||
sp = fadeout->start_p + offset;
|
||||
- ep = fadeout->end_p + offset;
|
||||
fp = fadeout->frame_p + offset;
|
||||
|
||||
- for (j = 0; j < width; j += 3)
|
||||
+ for (j = 0; j < width; j ++)
|
||||
{
|
||||
- guchar r = abs (*(sp++) - ep[0]);
|
||||
- guchar g = abs (*(sp++) - ep[1]);
|
||||
- guchar b = abs (*(sp++) - ep[2]);
|
||||
-
|
||||
- *(fp++) = *(ep++) + r * sat;
|
||||
- *(fp++) = *(ep++) + g * sat;
|
||||
- *(fp++) = *(ep++) + b * sat;
|
||||
+ *(fp++) = (*(sp++) * fixed_mult) >> FIXED;
|
||||
}
|
||||
|
||||
offset += fadeout->rowstride;
|
||||
}
|
||||
}
|
||||
|
||||
-static void
|
||||
-darken_pixbuf (GdkPixbuf *pb)
|
||||
-{
|
||||
- int width, height, rowstride;
|
||||
- int i, j;
|
||||
- guchar *p, *pixels;
|
||||
-
|
||||
- width = gdk_pixbuf_get_width (pb) * 3;
|
||||
- height = gdk_pixbuf_get_height (pb);
|
||||
- rowstride = gdk_pixbuf_get_rowstride (pb);
|
||||
- pixels = gdk_pixbuf_get_pixels (pb);
|
||||
-
|
||||
- for (i = 0; i < height; i++)
|
||||
- {
|
||||
- p = pixels + (i * rowstride);
|
||||
- for (j = 0; j < width; j++)
|
||||
- p [j] >>= 1;
|
||||
- }
|
||||
-}
|
||||
-
|
||||
static gboolean
|
||||
fadeout_callback (FadeoutData *fadeout)
|
||||
{
|
||||
@@ -141,30 +118,26 @@ fadeout_callback (FadeoutData *fadeout)
|
||||
|
||||
if (elapsed > FADE_DURATION)
|
||||
{
|
||||
- gdk_draw_pixbuf (fadeout->draw_window,
|
||||
+ get_current_frame (fadeout, 0.0);
|
||||
+ gdk_draw_pixbuf (fadeout->draw_pixmap,
|
||||
fadeout->gc,
|
||||
- fadeout->end_pb,
|
||||
+ fadeout->frame,
|
||||
0, 0,
|
||||
0, 0,
|
||||
fadeout->area.width,
|
||||
fadeout->area.height,
|
||||
GDK_RGB_DITHER_NONE,
|
||||
0, 0);
|
||||
+ gdk_window_clear (fadeout->draw_window);
|
||||
|
||||
- g_object_unref (fadeout->gc);
|
||||
- g_object_unref (fadeout->start_pb);
|
||||
- g_object_unref (fadeout->end_pb);
|
||||
- g_object_unref (fadeout->frame);
|
||||
-
|
||||
- g_free (fadeout);
|
||||
-
|
||||
+ fadeout->callback_id = 0;
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
percent = elapsed / FADE_DURATION;
|
||||
|
||||
get_current_frame (fadeout, 1.0 - percent);
|
||||
- gdk_draw_pixbuf (fadeout->draw_window,
|
||||
+ gdk_draw_pixbuf (fadeout->draw_pixmap,
|
||||
fadeout->gc,
|
||||
fadeout->frame,
|
||||
0, 0,
|
||||
@@ -173,6 +146,7 @@ fadeout_callback (FadeoutData *fadeout)
|
||||
fadeout->area.height,
|
||||
GDK_RGB_DITHER_NONE,
|
||||
0, 0);
|
||||
+ gdk_window_clear (fadeout->draw_window);
|
||||
|
||||
gdk_flush ();
|
||||
|
||||
@@ -211,7 +185,8 @@ fadeout_screen (GdkScreen *screen,
|
||||
attr_mask = GDK_WA_X | GDK_WA_Y | GDK_WA_VISUAL | GDK_WA_COLORMAP | GDK_WA_NOREDIR;
|
||||
|
||||
fadeout->draw_window = gdk_window_new (fadeout->root_window, &attr, attr_mask);
|
||||
- fadeout_windows = g_list_prepend (fadeout_windows, fadeout->draw_window);
|
||||
+ fadeout->draw_pixmap = gdk_pixmap_new (fadeout->draw_window, fadeout->area.width, fadeout->area.height, gdk_drawable_get_depth (fadeout->draw_window));
|
||||
+ fadeout_windows = g_list_prepend (fadeout_windows, fadeout);
|
||||
|
||||
fadeout->start_pb = gdk_pixbuf_get_from_drawable (NULL,
|
||||
fadeout->root_window,
|
||||
@@ -222,14 +197,10 @@ fadeout_screen (GdkScreen *screen,
|
||||
fadeout->area.width,
|
||||
fadeout->area.height);
|
||||
|
||||
- fadeout->end_pb = gdk_pixbuf_copy (fadeout->start_pb);
|
||||
- darken_pixbuf (fadeout->end_pb);
|
||||
-
|
||||
fadeout->frame = gdk_pixbuf_copy (fadeout->start_pb);
|
||||
fadeout->rowstride = gdk_pixbuf_get_rowstride (fadeout->start_pb);
|
||||
|
||||
fadeout->start_p = gdk_pixbuf_get_pixels (fadeout->start_pb);
|
||||
- fadeout->end_p = gdk_pixbuf_get_pixels (fadeout->end_pb);
|
||||
fadeout->frame_p = gdk_pixbuf_get_pixels (fadeout->frame);
|
||||
|
||||
values.subwindow_mode = GDK_INCLUDE_INFERIORS;
|
||||
@@ -238,7 +209,7 @@ fadeout_screen (GdkScreen *screen,
|
||||
|
||||
gdk_window_set_back_pixmap (fadeout->draw_window, NULL, FALSE);
|
||||
gdk_window_show (fadeout->draw_window);
|
||||
- gdk_draw_pixbuf (fadeout->draw_window,
|
||||
+ gdk_draw_pixbuf (fadeout->draw_pixmap,
|
||||
fadeout->gc,
|
||||
fadeout->frame,
|
||||
0, 0,
|
||||
@@ -247,9 +218,11 @@ fadeout_screen (GdkScreen *screen,
|
||||
fadeout->area.height,
|
||||
GDK_RGB_DITHER_NONE,
|
||||
0, 0);
|
||||
+ gdk_window_set_back_pixmap (fadeout->draw_window, fadeout->draw_pixmap, FALSE);
|
||||
+ gdk_window_clear (fadeout->draw_window);
|
||||
|
||||
g_get_current_time (&fadeout->start_time);
|
||||
- g_idle_add ((GSourceFunc) fadeout_callback, fadeout);
|
||||
+ fadeout->callback_id = g_idle_add ((GSourceFunc) fadeout_callback, fadeout);
|
||||
}
|
||||
|
||||
static void
|
||||
@@ -259,8 +232,20 @@ hide_fadeout_windows (void)
|
||||
|
||||
for (l = fadeout_windows; l; l = l->next)
|
||||
{
|
||||
- gdk_window_hide (GDK_WINDOW (l->data));
|
||||
- g_object_unref (l->data);
|
||||
+ FadeoutData *fadeout = l->data;
|
||||
+ gdk_window_hide (fadeout->draw_window);
|
||||
+
|
||||
+ if (fadeout->callback_id)
|
||||
+ g_source_remove (fadeout->callback_id);
|
||||
+
|
||||
+ g_object_unref (fadeout->gc);
|
||||
+ g_object_unref (fadeout->start_pb);
|
||||
+ g_object_unref (fadeout->frame);
|
||||
+
|
||||
+ g_object_unref (fadeout->draw_window);
|
||||
+ g_object_unref (fadeout->draw_pixmap);
|
||||
+
|
||||
+ g_free (fadeout);
|
||||
}
|
||||
|
||||
g_list_free (fadeout_windows);
|
37
gnome-session-splash-screen.diff
Normal file
37
gnome-session-splash-screen.diff
Normal file
@ -0,0 +1,37 @@
|
||||
--- gnome-session-2.11.90/gnome-session/manager.c
|
||||
+++ gnome-session-2.11.90/gnome-session/manager.c
|
||||
@@ -1381,8 +1381,10 @@
|
||||
if (pending_list)
|
||||
runlevel = client->priority;
|
||||
}
|
||||
- if (pending_list)
|
||||
+ if (pending_list) {
|
||||
+ splash_hide();
|
||||
goto out;
|
||||
+ }
|
||||
}
|
||||
save_state = MANAGER_IDLE;
|
||||
save_state_changed ();
|
||||
--- gnome-session-2.11.90/gnome-session/splash-widget.c
|
||||
+++ gnome-session-2.11.90/gnome-session/splash-widget.c
|
||||
@@ -604,3 +604,11 @@
|
||||
}
|
||||
}
|
||||
|
||||
+void
|
||||
+splash_hide (void)
|
||||
+{
|
||||
+ if (global_splash) {
|
||||
+ gtk_widget_hide (GTK_WIDGET (global_splash));
|
||||
+ }
|
||||
+}
|
||||
+
|
||||
--- gnome-session-2.11.90/gnome-session/splash-widget.h
|
||||
+++ gnome-session-2.11.90/gnome-session/splash-widget.h
|
||||
@@ -79,5 +79,6 @@
|
||||
void splash_start (void);
|
||||
void splash_update (const gchar *text);
|
||||
void splash_stop (void);
|
||||
+void splash_hide (void);
|
||||
|
||||
#endif /* SPLASH_WIDGET_H */
|
111
gnome-session-suspend.patch
Normal file
111
gnome-session-suspend.patch
Normal file
@ -0,0 +1,111 @@
|
||||
Index: gnome-session/logout.c
|
||||
===================================================================
|
||||
RCS file: /cvs/gnome/gnome-session/gnome-session/logout.c,v
|
||||
retrieving revision 1.60
|
||||
diff -u -p -r1.60 logout.c
|
||||
--- gnome-session/logout.c 26 Apr 2005 10:56:50 -0000 1.60
|
||||
+++ gnome-session/logout.c 9 Feb 2006 12:16:45 -0000
|
||||
@@ -43,14 +43,16 @@ enum
|
||||
{
|
||||
OPTION_LOGOUT,
|
||||
OPTION_HALT,
|
||||
- OPTION_REBOOT
|
||||
+ OPTION_REBOOT,
|
||||
+ OPTION_SUSPEND
|
||||
};
|
||||
|
||||
static GConfEnumStringPair logout_options_lookup_table[] =
|
||||
{
|
||||
- { OPTION_LOGOUT, "logout" },
|
||||
- { OPTION_HALT, "shutdown" },
|
||||
- { OPTION_REBOOT, "restart" },
|
||||
+ { OPTION_LOGOUT, "logout" },
|
||||
+ { OPTION_HALT, "shutdown" },
|
||||
+ { OPTION_REBOOT, "restart" },
|
||||
+ { OPTION_SUSPEND, "suspend" },
|
||||
{ 0, NULL }
|
||||
};
|
||||
|
||||
@@ -329,13 +331,16 @@ display_gui (void)
|
||||
gint response;
|
||||
GtkWidget *halt = NULL;
|
||||
GtkWidget *reboot = NULL;
|
||||
+ GtkWidget *suspend = NULL;
|
||||
GtkWidget *invisible;
|
||||
gboolean halt_supported = FALSE;
|
||||
gboolean reboot_supported = FALSE;
|
||||
+ gboolean suspend_supported = FALSE;
|
||||
gboolean retval = FALSE;
|
||||
gboolean save_active = FALSE;
|
||||
gboolean halt_active = FALSE;
|
||||
gboolean reboot_active = FALSE;
|
||||
+ gboolean suspend_active = FALSE;
|
||||
GdmLogoutAction logout_action = GDM_LOGOUT_ACTION_NONE;
|
||||
gboolean a11y_enabled;
|
||||
GError *error = NULL;
|
||||
@@ -431,8 +436,9 @@ display_gui (void)
|
||||
|
||||
halt_supported = gdm_supports_logout_action (GDM_LOGOUT_ACTION_SHUTDOWN);
|
||||
reboot_supported = gdm_supports_logout_action (GDM_LOGOUT_ACTION_REBOOT);
|
||||
+ suspend_supported = gdm_supports_logout_action (GDM_LOGOUT_ACTION_SUSPEND);
|
||||
|
||||
- if (halt_supported || reboot_supported)
|
||||
+ if (halt_supported || reboot_supported || suspend_supported)
|
||||
{
|
||||
GtkWidget *title, *spacer;
|
||||
GtkWidget *action_vbox, *hbox;
|
||||
@@ -482,6 +488,13 @@ display_gui (void)
|
||||
gtk_box_pack_start (GTK_BOX (action_vbox), r, FALSE, FALSE, 0);
|
||||
gtk_widget_show (r);
|
||||
}
|
||||
+ if (suspend_supported)
|
||||
+ {
|
||||
+ r = suspend = gtk_radio_button_new_with_mnemonic_from_widget (GTK_RADIO_BUTTON (r), _("_Suspend the computer"));
|
||||
+ gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (r), (selected_option == OPTION_SUSPEND));
|
||||
+ gtk_box_pack_start (GTK_BOX (action_vbox), r, FALSE, FALSE, 0);
|
||||
+ gtk_widget_show (r);
|
||||
+ }
|
||||
}
|
||||
|
||||
gsm_center_window_on_screen (GTK_WINDOW (box), screen, monitor);
|
||||
@@ -517,6 +530,9 @@ display_gui (void)
|
||||
if (reboot)
|
||||
reboot_active = GTK_TOGGLE_BUTTON (reboot)->active;
|
||||
|
||||
+ if (suspend)
|
||||
+ suspend_active = GTK_TOGGLE_BUTTON (suspend)->active;
|
||||
+
|
||||
if (toggle_button)
|
||||
save_active = GTK_TOGGLE_BUTTON (toggle_button)->active;
|
||||
|
||||
@@ -524,6 +540,8 @@ display_gui (void)
|
||||
selected_option = OPTION_REBOOT;
|
||||
else if (halt_active)
|
||||
selected_option = OPTION_HALT;
|
||||
+ else if (suspend_active)
|
||||
+ selected_option = OPTION_SUSPEND;
|
||||
else
|
||||
selected_option = OPTION_LOGOUT;
|
||||
|
||||
@@ -545,14 +563,20 @@ display_gui (void)
|
||||
case GTK_RESPONSE_OK:
|
||||
/* We want to know if we should trash changes (and lose forever)
|
||||
* or save them */
|
||||
+ retval = TRUE;
|
||||
if(save_active)
|
||||
save_selected = save_active;
|
||||
if (halt_active)
|
||||
logout_action = GDM_LOGOUT_ACTION_SHUTDOWN;
|
||||
else if (reboot_active)
|
||||
logout_action = GDM_LOGOUT_ACTION_REBOOT;
|
||||
+ else if (suspend_active)
|
||||
+ {
|
||||
+ logout_action = GDM_LOGOUT_ACTION_SUSPEND;
|
||||
+ g_spawn_command_line_async ("powersave --suspend-to-disk", NULL);
|
||||
+ retval = FALSE;
|
||||
+ }
|
||||
set_default_option (selected_option);
|
||||
- retval = TRUE;
|
||||
break;
|
||||
default:
|
||||
case GTK_RESPONSE_CANCEL:
|
113
gnome-session-wm-switch.patch
Normal file
113
gnome-session-wm-switch.patch
Normal file
@ -0,0 +1,113 @@
|
||||
--- gnome-session/main.c
|
||||
+++ gnome-session/main.c
|
||||
@@ -37,12 +37,16 @@
|
||||
|
||||
#include <libgnomeui/gnome-window-icon.h>
|
||||
|
||||
+#include <gdk/gdkx.h>
|
||||
+
|
||||
#include "manager.h"
|
||||
#include "ice.h"
|
||||
#include "save.h"
|
||||
#include "command.h"
|
||||
#include "splash-widget.h"
|
||||
#include "util.h"
|
||||
+#include "prop.h"
|
||||
+#include "session.h"
|
||||
#include "gsm-sound.h"
|
||||
#include "gsm-gsd.h"
|
||||
#include "gsm-keyring.h"
|
||||
@@ -322,6 +326,84 @@
|
||||
return (tm->tm_year >= 105); /* We start on Jan 1 2006 */
|
||||
}
|
||||
|
||||
+static void
|
||||
+fix_wm (Session *session)
|
||||
+{
|
||||
+ GSList *cl, *p;
|
||||
+ Client *client = NULL;
|
||||
+ SmProp *prop = NULL;
|
||||
+
|
||||
+ for (cl = session->client_list; cl; cl = cl->next)
|
||||
+ {
|
||||
+ client = cl->data;
|
||||
+ if (client->match_rule != MATCH_ID)
|
||||
+ continue;
|
||||
+
|
||||
+ prop = find_property_by_name (client, SmRestartCommand);
|
||||
+ if (!prop)
|
||||
+ continue;
|
||||
+
|
||||
+ if (!strcmp (prop->vals[0].value, "gnome-wm"))
|
||||
+ return;
|
||||
+ else if (!strcmp (prop->vals[0].value, "metacity") ||
|
||||
+ !strcmp (prop->vals[0].value, "compiz"))
|
||||
+ break;
|
||||
+ }
|
||||
+
|
||||
+ if (!cl)
|
||||
+ return;
|
||||
+
|
||||
+ if (VendorRelease (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ())) != 70000001)
|
||||
+ {
|
||||
+ /* Xorg */
|
||||
+ if (!strcmp (prop->vals[0].value, "metacity"))
|
||||
+ return;
|
||||
+ }
|
||||
+ else
|
||||
+ {
|
||||
+ /* Xgl */
|
||||
+ if (!strcmp (prop->vals[0].value, "compiz"))
|
||||
+ return;
|
||||
+ }
|
||||
+
|
||||
+ /* At this point, either client is compiz and we're using Xorg, or
|
||||
+ * client is metacity and we're using Xgl. Either way, replace it
|
||||
+ * with gnome-wm.
|
||||
+ */
|
||||
+
|
||||
+ for (p = client->properties; p; p = p->next)
|
||||
+ SmFreeProperty (p->data);
|
||||
+ g_slist_free (client->properties);
|
||||
+
|
||||
+ client->properties = NULL;
|
||||
+
|
||||
+ prop = malloc (sizeof (SmProp));
|
||||
+ prop->name = strdup (SmRestartCommand);
|
||||
+ prop->type = strdup (SmLISTofARRAY8);
|
||||
+ prop->num_vals = 5;
|
||||
+ prop->vals = malloc (5 * sizeof (SmPropValue));
|
||||
+ prop->vals[0].value = strdup ("gnome-wm");
|
||||
+ prop->vals[0].length = strlen (prop->vals[0].value);
|
||||
+ prop->vals[1].value = strdup ("--default-wm");
|
||||
+ prop->vals[1].length = strlen (prop->vals[1].value);
|
||||
+ prop->vals[2].value = strdup ("gnome-wm");
|
||||
+ prop->vals[2].length = strlen (prop->vals[2].value);
|
||||
+ prop->vals[3].value = strdup ("--sm-client-id");
|
||||
+ prop->vals[3].length = strlen (prop->vals[3].value);
|
||||
+ prop->vals[4].value = strdup (client->id);
|
||||
+ prop->vals[4].length = strlen (prop->vals[4].value);
|
||||
+ client->properties = g_slist_prepend (client->properties, prop);
|
||||
+
|
||||
+ prop = malloc (sizeof (SmProp));
|
||||
+ prop->name = strdup (GsmPriority);
|
||||
+ prop->type = strdup (SmCARD8);
|
||||
+ prop->num_vals = 1;
|
||||
+ prop->vals = malloc (sizeof (SmPropValue));
|
||||
+ prop->vals[0].value = calloc (2, 1);
|
||||
+ prop->vals[0].length = 1;
|
||||
+ client->properties = g_slist_prepend (client->properties, prop);
|
||||
+}
|
||||
+
|
||||
int
|
||||
main (int argc, char *argv[])
|
||||
{
|
||||
@@ -489,6 +571,8 @@
|
||||
putenv (session_name_env);
|
||||
the_session = read_session (session_name);
|
||||
|
||||
+ fix_wm (the_session);
|
||||
+
|
||||
gsm_sound_login ();
|
||||
|
||||
gsm_remote_desktop_start ();
|
1037
gnome-session.changes
Normal file
1037
gnome-session.changes
Normal file
File diff suppressed because it is too large
Load Diff
632
gnome-session.spec
Normal file
632
gnome-session.spec
Normal file
@ -0,0 +1,632 @@
|
||||
#
|
||||
# spec file for package gnome-session (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: gnome-session
|
||||
BuildRequires: CASA-devel control-center2-devel gnome-common gnome-desktop-devel gnome-keyring gnome-patch-translation intltool libglade2-devel libnotify-devel perl-XML-Parser tcpd-devel update-desktop-files
|
||||
%define prefix /opt/gnome
|
||||
%define sysconfdir /etc%{prefix}
|
||||
License: GNU General Public License (GPL), GNU Library General Public License v. 2.0 and 2.1 (LGPL)
|
||||
Group: System/GUI/GNOME
|
||||
Autoreqprov: on
|
||||
Version: 2.16.1
|
||||
Release: 36
|
||||
Summary: Session Tools for the GNOME 2.x Desktop
|
||||
Source: gnome-session-%{version}.tar.bz2
|
||||
Source1: gnome
|
||||
Source2: gnome.desktop
|
||||
Patch1: gnome-session-2.0.5-dithering.patch
|
||||
Patch4: gnome-session-suspend.patch
|
||||
Patch6: gnome-session-DESKTOP_LAUNCH.patch
|
||||
Patch7: gnome-session-splash-screen.diff
|
||||
Patch8: gnome-session-remove-dns-warning.patch
|
||||
Patch12: gnome-session-speedup.patch
|
||||
Patch16: gnome-session-2.12.0-xgl-display-modal-2.patch
|
||||
Patch18: gnome-session-2.12.0-su-session-management.patch
|
||||
Patch19: gnome-session-2.12.0-unlock-keyring.patch
|
||||
Patch21: gnome-session-2.12.0-kdm-support.patch
|
||||
Patch22: gnome-session-motd.patch
|
||||
Patch24: gnome-session-dist-splash.patch
|
||||
Patch26: gnome-session-compiz.patch
|
||||
Patch27: gnome-session-migrate-session-manual.patch
|
||||
Patch29: gnome-session-wm-switch.patch
|
||||
URL: http://www.gnome.org
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
PreReq: filesystem gconf2
|
||||
Requires: control-center2
|
||||
Obsoletes: gnome-core
|
||||
|
||||
%description
|
||||
This package provides the basic session tools, like session management
|
||||
functionality, for the GNOME 2.x Desktop.
|
||||
|
||||
|
||||
|
||||
Authors:
|
||||
--------
|
||||
Tom Tromey <tromey@cygnus.com>
|
||||
Felix Bellaby <felix@pooh.u-net.com>
|
||||
Ralph Mor, X Consortium
|
||||
|
||||
|
||||
%prep
|
||||
%setup -n gnome-session-%{version}
|
||||
gnome-patch-translation-prepare
|
||||
%patch1 -p1
|
||||
%patch4
|
||||
%patch6 -p1
|
||||
%patch7 -p1
|
||||
%patch8
|
||||
%patch12
|
||||
%patch16
|
||||
%patch18 -p1
|
||||
#%patch19 -p1
|
||||
%if %suse_version > 1000
|
||||
%patch21 -p1
|
||||
%patch22
|
||||
%patch24
|
||||
%patch26
|
||||
%patch27 -p1
|
||||
%patch29
|
||||
%endif
|
||||
gnome-patch-translation-update
|
||||
|
||||
%build
|
||||
autoreconf -f -i
|
||||
ac_cv_path_PATH_TO_XRDB=/usr/bin/xrdb \
|
||||
ac_cv_path_RSH_COMMAND=/usr/bin/rsh \
|
||||
CFLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing " \
|
||||
./configure \
|
||||
--prefix=%prefix \
|
||||
--sysconfdir=%sysconfdir \
|
||||
--mandir=%prefix/share/man \
|
||||
--localstatedir=/var/lib \
|
||||
--with-reboot-command=/sbin/reboot \
|
||||
--with-halt-command=/sbin/poweroff
|
||||
make
|
||||
|
||||
%install
|
||||
export GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1
|
||||
make install DESTDIR=$RPM_BUILD_ROOT
|
||||
unset GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL
|
||||
#
|
||||
# install startup script and xsession file
|
||||
install -d -m755 $RPM_BUILD_ROOT/usr/bin
|
||||
install -m755 %SOURCE1 $RPM_BUILD_ROOT/usr/bin/gnome
|
||||
install -d -m755 $RPM_BUILD_ROOT/usr/share/xsessions
|
||||
install -m644 %SOURCE2 $RPM_BUILD_ROOT/usr/share/xsessions/gnome.desktop
|
||||
gzip -9nf $RPM_BUILD_ROOT%{prefix}/share/man/man?/*.?
|
||||
%suse_update_desktop_file session-properties X-SuSE-ControlCenter-System
|
||||
%find_lang %{name}-2.0
|
||||
|
||||
%post
|
||||
export GCONF_CONFIG_SOURCE=`opt/gnome/bin/gconftool-2 --get-default-source`
|
||||
opt/gnome/bin/gconftool-2 --makefile-install-rule etc/opt/gnome/gconf/schemas/gnome-session.schemas >/dev/null
|
||||
|
||||
%clean
|
||||
rm -rf $RPM_BUILD_ROOT
|
||||
|
||||
%files -f %files -f %{name}-2.0.lang
|
||||
%defattr (-, root, root)
|
||||
%doc AUTHORS COPYING ChangeLog NEWS README
|
||||
/usr/bin/gnome
|
||||
%{prefix}/bin/*
|
||||
%{prefix}/share/pixmaps/*
|
||||
%{prefix}/share/gnome/default.session
|
||||
%{prefix}/share/gnome/default.wm
|
||||
/etc/%{prefix}/gconf/schemas/gnome-session.schemas
|
||||
%{prefix}/share/applications/session-properties.desktop
|
||||
%doc %{prefix}/share/man/man?/*.*
|
||||
/usr/share/xsessions/*.desktop
|
||||
# FIXME: should be in filesystem
|
||||
%dir /usr/share/xsessions
|
||||
|
||||
%changelog -n gnome-session
|
||||
* Fri Dec 22 2006 - federico@novell.com
|
||||
- Removed the part of /usr/bin/gnome that overwrites the
|
||||
/desktop/gnome/font_rendering/dpi setting in GConf upon the user's
|
||||
first login. With an updated control-center2 package,
|
||||
gnome-settings-daemon will take care of figuring out the right DPI
|
||||
value. Fixes the gnome-session part of
|
||||
https://bugzilla.novell.com/show_bug.cgi?id=217790.
|
||||
* Sat Oct 14 2006 - danw@suse.de
|
||||
- Remove dead patches
|
||||
- Update and re-enable gnome-session-remove-dns-warning.patch
|
||||
* Fri Oct 13 2006 - dreveman@suse.de
|
||||
- Update compiz patch so it works with compiz 0.2.
|
||||
* Wed Oct 11 2006 - danw@suse.de
|
||||
- Use a more explicit test for Xgl so that we don't try to run compiz
|
||||
under Xorg when compositing isn't enabled. #197093
|
||||
- Remove some patches that were disabled with the 2.16 update that
|
||||
are definitely no longer relevant
|
||||
* Tue Oct 03 2006 - jhargadon@suse.de
|
||||
- update to version 2.16.1
|
||||
- Updated man pages from Debian
|
||||
- translation updates
|
||||
* Thu Sep 14 2006 - jhargadon@suse.de
|
||||
- update to version 2.16.0
|
||||
- Updated splash screen
|
||||
- translation updates
|
||||
* Thu Aug 31 2006 - jhargadon@suse.de
|
||||
- update to version 2.15.92
|
||||
- Fix crash caused by debug output on Solaris
|
||||
- translation updates
|
||||
* Fri Aug 25 2006 - stbinner@suse.de
|
||||
- unbreak package by using new X.org 7.1 paths (#200466)
|
||||
* Wed Aug 23 2006 - jhargadon@suse.de
|
||||
- update to version 2.15.91
|
||||
- Fix leaks
|
||||
- Use GOption
|
||||
- Make it possible to really disable the login sound
|
||||
- Set the right parent window for an error dialog
|
||||
- Update keyring daemon DISPLAY environment variable if it's already
|
||||
running
|
||||
- Fix sensitivity of edit/delete buttons when editing sessions
|
||||
- Add support for e16 window manager in gnome-wm
|
||||
- Fix edition of startup programs containing a space in a command line
|
||||
argument
|
||||
- Add gnome-keyring dependency
|
||||
* Tue Aug 01 2006 - danw@suse.de
|
||||
- If the session explicitly specifies metacity or compiz, but
|
||||
the "wrong" X server for that wm is running, switch back to
|
||||
gnome-wm. #180506
|
||||
* Fri Jun 16 2006 - danw@suse.de
|
||||
- Pass --replace to compiz and gnome-window-decorator in case the
|
||||
copies run by gdm don't exit properly. #185296
|
||||
* Mon Jun 12 2006 - rodrigo@suse.de
|
||||
- Added patch to create ~/.config/autostart before starting the
|
||||
migration from previous versions (#169509)
|
||||
* Fri Jun 02 2006 - gekker@suse.de
|
||||
- Fix pager on upgrade (#181264)
|
||||
* Wed May 31 2006 - jpr@suse.de
|
||||
- Don't run the migration script for new users (#179332)
|
||||
* Wed May 24 2006 - joeshaw@suse.de
|
||||
- Fix the gnome script to not break when setting the background on
|
||||
multihead setups. Patch from Erik Jacobsen. (bnc #178388)
|
||||
* Sun May 21 2006 - jpr@suse.de
|
||||
- Reset the user's UI if upgrading from NLD9/SLES9 to SLED10, leave ui
|
||||
for SLES10 upgrades (#174123)
|
||||
* Sat May 13 2006 - hpj@suse.de
|
||||
- Update keyring unlockage patch to try both CASA's
|
||||
Gnome_Keyring_Default and Desktop passwords. Part of fix for
|
||||
Novell bug #174093.
|
||||
* Tue May 09 2006 - joeshaw@suse.de
|
||||
- Fix a bash arithmetic typo introduced in the March 27 commit.
|
||||
(bnc #173808)
|
||||
* Wed May 03 2006 - danw@suse.de
|
||||
- Update gnome-wm to pick metacity or compiz based on whether it's
|
||||
actually running under Xgl or not, regardless of what
|
||||
/etc/sysconfig/displaymanager says. Fixes Xnest logins. #170839.
|
||||
* Tue May 02 2006 - joeshaw@suse.de
|
||||
- Don't write out a font using raw XML to the gconf database,
|
||||
that's wrong and evil. Instead, try to set the desktop's DPI
|
||||
value using gconftool-2. (bnc #171096)
|
||||
* Fri Apr 28 2006 - rodrigo@suse.de
|
||||
- Save modified autostart files to user's home when they come from
|
||||
system-wide directories (170038).
|
||||
* Wed Apr 26 2006 - rodrigo@suse.de
|
||||
- Don't free session_name, since it's needed at the end for saving
|
||||
the session correctly (169672).
|
||||
* Thu Apr 13 2006 - sbrabec@suse.cz
|
||||
- Call %%suse_update_desktop_file.
|
||||
- Use new control-center Categories instead of old ones.
|
||||
* Fri Apr 07 2006 - danw@suse.de
|
||||
- Patch gnome-wm to prefer compiz when Xgl is running
|
||||
* Wed Apr 05 2006 - hpj@suse.de
|
||||
- Fix keyring unlock patch to use g_strlcpy() correctly again.
|
||||
Fixes bug #159593 together with a CASA fix.
|
||||
* Fri Mar 31 2006 - rodrigo@suse.de
|
||||
- Added missing "/" for /etc/xdg/autostart searching (#161322)
|
||||
* Mon Mar 27 2006 - jpr@suse.de
|
||||
- Handle only shipping 2 sizes of backgrounds
|
||||
* Tue Mar 21 2006 - rodrigo@suse.de
|
||||
- Added support for /etc/xdg/autostart directory, so that
|
||||
common services (zen-updater) can share it with GNOME/KDE.
|
||||
* Wed Mar 15 2006 - rodrigo@suse.de
|
||||
- Added gnome-session-code-review.patch, resulting from the code
|
||||
review done by some members of the desktop team. It fixes a few
|
||||
leaks, avoids spawning unnecessary processes and makes use of
|
||||
a shared GConfClient for all the modules.
|
||||
* Fri Mar 10 2006 - jpr@suse.de
|
||||
- Re-enable splash screen, point at the generically named splash in
|
||||
the gnome2-* packages so suse/sle[sd] branding is differentiated
|
||||
* Thu Mar 09 2006 - rodrigo@suse.de
|
||||
- Removed gnome-session-default-applications.patch, all needed
|
||||
applications are now started, if installed, via the autostart
|
||||
mechanism.
|
||||
* Mon Mar 06 2006 - rodrigo@suse.de
|
||||
- Fixed support for multiple system autostart directories.
|
||||
- Disable GUI operations for system-wide files (#154755).
|
||||
* Thu Mar 02 2006 - rodrigo@suse.de
|
||||
- Support GNOME 2.14 autostart directory also.
|
||||
- Use g_strlcpy instead of strcpy when copying passwords.
|
||||
* Wed Feb 22 2006 - rodrigo@suse.de
|
||||
- Added gnome-session-gsd-early-start.patch that fixes #150256.
|
||||
* Thu Feb 16 2006 - rodrigo@suse.de
|
||||
- Don't try to remove non-existing files (#145870)
|
||||
* Thu Feb 16 2006 - rodrigo@suse.de
|
||||
- Updated gnome-session-suspend-patch to make suspend work as
|
||||
expected (#117491)
|
||||
* Wed Feb 15 2006 - rodrigo@suse.de
|
||||
- Added MOTD on login, as requested by customer.
|
||||
* Mon Feb 13 2006 - hpj@suse.de
|
||||
- Added patch to support KDM's logout options.
|
||||
* Fri Feb 10 2006 - joeshaw@suse.de
|
||||
- Remove the beagled invocation from the /usr/X11R6/bin/gnome
|
||||
shell script; it gets invoked through the new autostart
|
||||
mechanism now. (bnc #150041)
|
||||
* Thu Feb 09 2006 - rodrigo@suse.de
|
||||
- Updated gnome-session-suspend.patch to not exit the X session
|
||||
when suspend is selected on the logout dialog (117491)
|
||||
* Wed Feb 08 2006 - joeshaw@suse.de
|
||||
- Add an "--indexing-delay 300" option when starting beagled.
|
||||
This will reduce disk thrash at login time by waiting 5 minutes
|
||||
before it starts to index.
|
||||
* Wed Feb 08 2006 - aj@suse.de
|
||||
- No need to link against micasa anymore.
|
||||
- Reduce BuildRequires.
|
||||
* Mon Feb 06 2006 - hpj@suse.de
|
||||
- Fixed gnome-keyring-unlock patch to give correct soname for
|
||||
casa.
|
||||
* Mon Feb 06 2006 - hpj@suse.de
|
||||
- Updated gnome-keyring-unlock patch with dlopen hack from CASA
|
||||
team. I have no idea why this is required.
|
||||
* Mon Feb 06 2006 - ro@suse.de
|
||||
- make it build on x86_64 (adding libdir to CASA unlock patch)
|
||||
* Fri Feb 03 2006 - rodrigo@suse.de
|
||||
- Added gnome-session-rdesktop.diff, that fixes hang on login when
|
||||
a11y enabled (147985)
|
||||
* Wed Feb 01 2006 - sbrabec@suse.cz
|
||||
- Use translation compendium gnome-patch-translation.
|
||||
* Wed Feb 01 2006 - rodrigo@suse.de
|
||||
- Remove duplicated processes by comparing the program name, not
|
||||
the whole command line.
|
||||
* Sat Jan 28 2006 - hpj@suse.de
|
||||
- Added patch to unlock default GNOME keyring using the CASA
|
||||
password, optionally creating it if it doesn't exist.
|
||||
* Fri Jan 27 2006 - hpj@suse.de
|
||||
- Set the ICEAUTHORITY env var so programs running as root can
|
||||
get to the cookies. Eliminates hangs on logout.
|
||||
* Wed Jan 25 2006 - mls@suse.de
|
||||
- converted neededforbuild to BuildRequires
|
||||
* Tue Jan 17 2006 - rodrigo@suse.de
|
||||
- Updated autostart patch with a simple fix for a crash found when
|
||||
starting the session.
|
||||
- Fixed build by depending on dbus-1-*
|
||||
* Mon Jan 16 2006 - rodrigo@suse.de
|
||||
- Fixed ia64 build by depending on hal/hal-devel.
|
||||
* Mon Jan 16 2006 - rodrigo@suse.de
|
||||
- Updated autostart patch to include user's ability to disable
|
||||
autostarted programs.
|
||||
* Thu Jan 12 2006 - rodrigo@suse.de
|
||||
- Added upstream patch for #105789.
|
||||
* Wed Jan 11 2006 - jpr@suse.de
|
||||
- Remove hardcoded susewatcher (130893)
|
||||
* Tue Jan 10 2006 - rodrigo@suse.de
|
||||
- Updated autostart patch that includes code to migrate from the
|
||||
old ~/.gnome2/session-manual to the .desktop file-based thing
|
||||
in the user's home directory.
|
||||
* Sun Jan 08 2006 - dreveman@suse.de
|
||||
- Improved logout effect patch
|
||||
* Thu Jan 05 2006 - rodrigo@suse.de
|
||||
- Small fix to previous patch to avoid crash.
|
||||
* Thu Jan 05 2006 - rodrigo@suse.de
|
||||
- Updated autostart patch to include usage of .config/autostart for
|
||||
user-specified autostarted programs in sessions capplet.
|
||||
* Wed Jan 04 2006 - dreveman@suse.de
|
||||
- Add patch with support for compositing manager logout effects
|
||||
* Tue Dec 13 2005 - rodrigo@suse.de
|
||||
- Fixed user's autostart directory.
|
||||
* Fri Dec 09 2005 - rodrigo@suse.de
|
||||
- Don't autostart beagle, it's now started via the autostart thing.
|
||||
* Wed Dec 07 2005 - rodrigo@suse.de
|
||||
- Don't autostart resapplet, it now includes its .desktop file
|
||||
in the autostart directory.
|
||||
* Tue Nov 22 2005 - rodrigo@suse.de
|
||||
- Don't start nm-applet and netapplet, now started via the autostart
|
||||
thing.
|
||||
* Wed Nov 16 2005 - jpr@suse.de
|
||||
- Use "default" links for wallpaper
|
||||
- Don't hard code background color during startup
|
||||
- Turn off splash screen by default
|
||||
* Mon Nov 14 2005 - rodrigo@suse.de
|
||||
- Updated autostart patch to support per user's autostart directory
|
||||
and to remove duplicated entries (based on command line).
|
||||
* Thu Nov 10 2005 - rodrigo@suse.de
|
||||
- Added support for X-GNOME-Autostart-enabled field in autostart
|
||||
.desktop files.
|
||||
* Wed Nov 09 2005 - rodrigo@suse.de
|
||||
- Added autostart implementation patch.
|
||||
- Removed execution of gnome-power/volume-manager, now started
|
||||
via the autostart thing.
|
||||
* Wed Nov 02 2005 - sreeves@suse.de
|
||||
- add gnome-session-login-sounds.patch to fix the default system
|
||||
sound playing when the user has selected no sound.
|
||||
* Wed Oct 26 2005 - rml@suse.de
|
||||
- Add "--sm-disable" to nm-applet spawning. No point in using
|
||||
session management if we are going to start the thing manually.
|
||||
Fix requested by Joey "Buckeye" Shaw.
|
||||
* Mon Oct 17 2005 - rodrigo@suse.de
|
||||
- Start gnome-power-manager also.
|
||||
* Tue Oct 04 2005 - rodrigo@suse.de
|
||||
- Don't launch gnome-session via dbus-launch.
|
||||
* Mon Sep 12 2005 - aj@suse.de
|
||||
- Use SUSE Linux 10.0 background [#102355].
|
||||
* Tue Sep 06 2005 - sbrabec@suse.cz
|
||||
- Updated to version 2.12.0.
|
||||
* Mon Aug 29 2005 - jpr@suse.de
|
||||
- Remove hacky workaround for 104161 (fixed upstream in gtk 2.8.2)
|
||||
- Update branding (102355)
|
||||
* Mon Aug 22 2005 - gekker@suse.de
|
||||
- Update path to autostart NetworkManager applet in new location
|
||||
* Fri Aug 19 2005 - jpr@suse.de
|
||||
- Update to blue splash screen coloring
|
||||
* Wed Aug 17 2005 - clahey@suse.de
|
||||
- Improve performance of logout fading.
|
||||
* Fri Aug 12 2005 - gekker@suse.de
|
||||
- Add --autostarted to beagled and best (102606)
|
||||
- Autostart nm-applet if it is installed
|
||||
- Remove suseplugger, no longer needed
|
||||
- Workaround crash in netapplet and best on startup
|
||||
* Thu Aug 11 2005 - jpr@suse.de
|
||||
- Update splash for 10.0
|
||||
* Tue Aug 09 2005 - rodrigo@suse.de
|
||||
- Update to 2.11.91, which includes fix for #102652
|
||||
* Fri Aug 05 2005 - gekker@suse.de
|
||||
- Start gnome-volume-manager with session
|
||||
* Thu Aug 04 2005 - gekker@suse.de
|
||||
- Start beagle by default, disable with ~/.dontrunbeagle
|
||||
* Tue Aug 02 2005 - gekker@suse.de
|
||||
- Update to 2.11.90
|
||||
* Mon Aug 01 2005 - rodrigo@suse.de
|
||||
- Use --exit-with-session when running dbus-launch, to avoid leaving
|
||||
running processes after terminating the session.
|
||||
* Fri Jul 22 2005 - rodrigo@suse.de
|
||||
- Start gnome-session with dbus-launch, to get the notification
|
||||
daemon working for new gnome-applets
|
||||
- Depend on dbus-1-x11, for dbus-launch
|
||||
* Thu Jun 23 2005 - gekker@suse.de
|
||||
- Update to version 2.11.1
|
||||
* Thu May 05 2005 - gekker@suse.de
|
||||
- Launch iprint-gnome-init by default
|
||||
* Mon Mar 21 2005 - gekker@suse.de
|
||||
- Don't run beagle unless ~/.runbeagle exists (#74029)
|
||||
* Sat Mar 19 2005 - jody@suse.de
|
||||
- Enable suspend if it is available. (#73000)
|
||||
* Thu Mar 17 2005 - clahey@suse.de
|
||||
- Patch fixes freeze on login.
|
||||
* Wed Mar 16 2005 - sbrabec@suse.cz
|
||||
- Fixed gnome-session-desktop-file.patch (#73047).
|
||||
* Mon Mar 14 2005 - clahey@suse.de
|
||||
- Update gnome splash from artists.
|
||||
* Thu Mar 10 2005 - gekker@suse.de
|
||||
- Update to version 2.10.0 (GNOME 2.10).
|
||||
* Mon Mar 07 2005 - gekker@suse.de
|
||||
- mv suseplugger to default-apps patch
|
||||
- launch netapplet, resapplet, and best on startup
|
||||
* Fri Feb 25 2005 - gekker@suse.de
|
||||
- Add launch wrapper to launch beagled if installed in file gnome
|
||||
* Wed Feb 09 2005 - sbrabec@suse.cz
|
||||
- Added session desktop file.
|
||||
* Tue Dec 21 2004 - gekker@suse.de
|
||||
- Update to version 2.9.2
|
||||
- Remove remove-purge-timeout patch, already upstream
|
||||
- Reworked a couple patches
|
||||
- Changed no -> nb to be like most other gnome modules
|
||||
* Thu Oct 21 2004 - ro@suse.de
|
||||
- locale rename: no -> nb
|
||||
* Wed Oct 06 2004 - hhetter@suse.de
|
||||
- call gconftool-2 instead of gconftool, don't trigger
|
||||
gconfd-1 on first startup with preconfiguration (#46917)
|
||||
* Mon Sep 27 2004 - hhetter@suse.de
|
||||
- also start susewatcher (#46161)
|
||||
* Sat Sep 25 2004 - hhetter@suse.de
|
||||
- use a cascaded KDE configuration in GNOME, allows to make
|
||||
things like suseplugger better suited for GNOME (part of #45420)
|
||||
* Tue Sep 21 2004 - hhetter@suse.de
|
||||
- force new 9.2 wallpapers when updating from 9.1
|
||||
* Mon Sep 20 2004 - hhetter@suse.de
|
||||
- adapt gnome session script for the new wallpapers
|
||||
* Fri Sep 17 2004 - hhetter@suse.de
|
||||
- use gconftool to set background in the pre session script
|
||||
- fix picture_scale string (partly #45418 )
|
||||
* Fri Sep 10 2004 - ro@suse.de
|
||||
- added shared-mime-info to neededforbuild
|
||||
* Fri Sep 10 2004 - hhetter@suse.de
|
||||
- run use_default_session again to make the 9.2 distribution
|
||||
wallpapers accessible
|
||||
* Thu Sep 09 2004 - federico@ximian.com
|
||||
- Added gnome-session-remove-purge-timeout.diff, to fix
|
||||
http://bugzilla.gnome.org/show_bug.cgi?id=151664
|
||||
- Changed gnome-session-suseplugger.patch to run suseplugger with
|
||||
better options.
|
||||
* Mon Aug 30 2004 - hhetter@suse.de
|
||||
- remove gnome-session-branding.patch, use the original
|
||||
gnome 2.6 splash (for now)
|
||||
* Wed Aug 25 2004 - shprasad@suse.de
|
||||
- Fixes bug #63860
|
||||
Fixes gnome-session crash at logout.
|
||||
* Fri Aug 20 2004 - shprasad@suse.de
|
||||
- Fixes bug #61567
|
||||
kdm shows 'Reboot' and 'Shutdown' options at the time
|
||||
of logout.
|
||||
* Fri Aug 06 2004 - clahey@suse.de
|
||||
- Added gnome-session-remove-dns-warning.patch from Federico.
|
||||
* Fri Jul 16 2004 - shprasad@suse.de
|
||||
- Fixes bug #59918
|
||||
Hides the splash-screen once the difault setting gets loaded.
|
||||
* Thu Jul 08 2004 - sbrabec@suse.cz
|
||||
- Added DESKTOP_LAUNCH patch from Jan Holesovsky.
|
||||
* Fri Jun 18 2004 - dave@suse.de
|
||||
- Don't set the wallpaper or font in the gnome startup script.
|
||||
* Fri Jun 11 2004 - clahey@suse.de
|
||||
- Added gnome-session-use-gdmctl.patch.
|
||||
* Fri Jun 04 2004 - clahey@suse.de
|
||||
- Switch to Novell session splash screen.
|
||||
* Thu Jun 03 2004 - mibarra@suse.de
|
||||
- Make GNOME use suseplugger
|
||||
* Tue May 11 2004 - clahey@suse.de
|
||||
- Added gnome-session-2.0.5-dithering.patch to use MAX dithering.
|
||||
- Added gnome-session-desktop-file.patch to make gnome-session show
|
||||
up in control-center.
|
||||
* Mon Apr 26 2004 - sbrabec@suse.cz
|
||||
- Updated to version 2.6.1 (GNOME 2.6).
|
||||
* Tue Apr 06 2004 - hhetter@suse.de
|
||||
- fix incomplete usage of YAST_DIR (#38374), to get visible
|
||||
YaST Icons
|
||||
* Thu Apr 01 2004 - hhetter@suse.de
|
||||
- change YAST_DIR for GNOME_ICON_PATH to reflect it's new
|
||||
location in ./theme/current/icons/
|
||||
* Wed Mar 24 2004 - hhetter@suse.de
|
||||
- extend arbitrary icon path with some more crystalsvg locations
|
||||
* Mon Mar 22 2004 - hhetter@suse.de
|
||||
- added arbitrary icon path to gnome session
|
||||
* Mon Mar 15 2004 - sbrabec@suse.cz
|
||||
- FHS 2.3 fix (mandir, infodir, #35821).
|
||||
* Thu Mar 11 2004 - sbrabec@suse.cz
|
||||
- Export STYLE variable in GNOME session, as startkde does.
|
||||
* Wed Mar 10 2004 - sbrabec@suse.cz
|
||||
- Fixed %%doc attributes (#33163).
|
||||
* Fri Mar 05 2004 - hhetter@suse.de
|
||||
- use new wallpaper path (now using desktop-data-SuSE) and
|
||||
filenames
|
||||
* Mon Feb 23 2004 - sbrabec@suse.cz
|
||||
- Removed incorrect initialization of LD_LIBRARY_PATH (bug #34777).
|
||||
* Thu Feb 12 2004 - hhetter@suse.de
|
||||
- gconf schema (de-)installation in %%post and %%postun
|
||||
* Thu Feb 05 2004 - hhetter@suse.de
|
||||
- updated to version 2.4.2 [GNOME2.4.2]
|
||||
* Sat Jan 10 2004 - adrian@suse.de
|
||||
- fix build as user
|
||||
* Thu Nov 06 2003 - hhetter@suse.de
|
||||
- no longer create .gnome-desktop
|
||||
* Mon Oct 27 2003 - sbrabec@suse.cz
|
||||
- Updated to version 2.4.1.
|
||||
* Tue Oct 07 2003 - sbrabec@suse.cz
|
||||
- Updated to version 2.4.0 (GNOME 2.4).
|
||||
* Mon Sep 22 2003 - hhetter@suse.de
|
||||
- obsolete gnome-core (Bug Id # 31480)
|
||||
- remove intro script from default session (Bug Id#29807)
|
||||
* Fri Sep 05 2003 - sbrabec@suse.cz
|
||||
- gnome: Prevent GTK1 theme overlay (bug 25645, comment #36).
|
||||
* Fri Sep 05 2003 - hhetter@suse.de
|
||||
- add support for preconfigured gnome1 settings
|
||||
* Tue Aug 05 2003 - sbrabec@suse.cz
|
||||
- Session start script gnome: don't use GNOMEPATH, updated GTK_RC_FILES.
|
||||
* Tue Jul 15 2003 - sbrabec@suse.cz
|
||||
- GNOME prefix change to /opt/gnome.
|
||||
* Wed Jun 25 2003 - sbrabec@suse.cz
|
||||
- Updated to version 2.2.2.
|
||||
- Updated neededforbuild.
|
||||
- Use %%find_lang.
|
||||
- Added support for tcpd.
|
||||
- Require control-center2.
|
||||
- Removed distribution desktop files.
|
||||
* Wed May 28 2003 - sbrabec@suse.cz
|
||||
- Compress manpages.
|
||||
* Wed May 28 2003 - ro@suse.de
|
||||
- added manpages to filelist
|
||||
* Tue Mar 18 2003 - sbrabec@suse.cz
|
||||
- Variables already set in profile files removed from session startup
|
||||
file (consequence of bugfixes #25086, #25170, #25575).
|
||||
- Manage GTK1 themes with gnome-theme-manager (set GTK_RC_FILES).
|
||||
* Mon Mar 17 2003 - sbrabec@suse.cz
|
||||
- Removed /opt/gnome2 from GNOME2_PATH (fixes #24601).
|
||||
* Mon Mar 03 2003 - hhetter@suse.de
|
||||
- remove documents directories (Bug Id#24589)
|
||||
- add search path for KDE icons (Bug Id#24590)
|
||||
* Mon Feb 24 2003 - hhetter@suse.de
|
||||
- mention feedback website in session script
|
||||
instead of feedback@suse.de
|
||||
* Thu Feb 20 2003 - hhetter@suse.de
|
||||
- set G_BROKEN_FILENAMES=1 to handle invalid UTF8
|
||||
filenames as local-specific
|
||||
* Tue Feb 18 2003 - hhetter@suse.de
|
||||
- fill solid color at first time
|
||||
* Fri Feb 14 2003 - hhetter@suse.de
|
||||
- use GTK_DATA_PREFIX while in GNOME Session
|
||||
* Thu Feb 13 2003 - hhetter@suse.de
|
||||
- set GNOME2_PATH in session
|
||||
* Tue Feb 11 2003 - hhetter@suse.de
|
||||
- fix documents-file creation
|
||||
* Mon Feb 10 2003 - hhetter@suse.de
|
||||
- updated to version 2.2.0.2 [GNOME 2.2.0]
|
||||
- removed Intro script (moving to preconfiguration package)
|
||||
- allow for different splash image via preconfiguration package
|
||||
* Tue Jan 28 2003 - hhetter@suse.de
|
||||
- updated to version 2.2.0.1
|
||||
- some SLOD feature backports
|
||||
(file type desktop links, Intro script)
|
||||
* Thu Jan 16 2003 - sbrabec@suse.cz
|
||||
- Added libjpeg to neededforbuild.
|
||||
* Thu Nov 28 2002 - hhetter@suse.de
|
||||
- updated to version 2.0.9 [GNOME 2.0.3]
|
||||
* Mon Nov 11 2002 - ro@suse.de
|
||||
- changed neededforbuild <xf86 xdevel> to <x-devel-packages>
|
||||
* Wed Nov 06 2002 - hhetter@suse.de
|
||||
- use correct kde-datadir
|
||||
- no longer create .gnome for gnome-vfs2
|
||||
- look for addon scripts to run on first start
|
||||
* Tue Oct 22 2002 - hhetter@suse.de
|
||||
- updated to version 2.0.10
|
||||
- removed wrong docdir
|
||||
* 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.
|
||||
* Tue Sep 17 2002 - hhetter@suse.de
|
||||
- added correct hu translations
|
||||
* Mon Sep 02 2002 - hhetter@suse.de
|
||||
- set background to gray until splash becomes visible
|
||||
(reviewed by Ken)
|
||||
* Thu Aug 29 2002 - hhetter@suse.de
|
||||
- rename gnome2 to gnome, to keep the GNOME session for
|
||||
users who are updating the distribution (Bug Id#18552)
|
||||
* Thu Aug 22 2002 - hhetter@suse.de
|
||||
- use jpg as wallpaper format for preconfiguration
|
||||
* Tue Aug 20 2002 - hhetter@suse.de
|
||||
- added PreReq: filesystem
|
||||
* Tue Aug 13 2002 - hhetter@suse.de
|
||||
- remove control-center deps from neededforbuild
|
||||
* Thu Aug 08 2002 - hhetter@suse.de
|
||||
- updated to version 2.0.5, bug id's relate to bugzilla.gnome.org
|
||||
* Fix crashing when starting emacs, #89968
|
||||
* Mon Aug 05 2002 - hhetter@suse.de
|
||||
- updated to version 2.0.4
|
||||
* amend global save to Both if user selects save session
|
||||
* capplet saving state fix
|
||||
* translation updates
|
||||
* Thu Aug 01 2002 - hhetter@suse.de
|
||||
- include the session startup script
|
||||
* Tue Jul 30 2002 - hhetter@suse.de
|
||||
- updated to version 2.0.3
|
||||
session-manager:
|
||||
* Re-write the splash screen to not use the canvas
|
||||
* Fix crash with logout dialog
|
||||
* Make file selector when editing startup programs modal
|
||||
* Increased initial client timeout to 30 seconds
|
||||
Translation updates
|
||||
* Tue Jul 23 2002 - hhetter@suse.de
|
||||
- updated to version 2.0.2
|
||||
* Thu Jun 20 2002 - hhetter@suse.de
|
||||
- updated to version 2.0.1
|
||||
- don't install schemas while make install
|
||||
* Mon Jun 17 2002 - ro@suse.de
|
||||
- use libpng-devel-packages in neededforbuild
|
||||
* Fri Jun 14 2002 - hhetter@suse.de
|
||||
- provide schema file
|
||||
- filelist rework
|
||||
* Tue Jun 11 2002 - hhetter@suse.de
|
||||
- updated to version 2.0.0
|
||||
* Tue Jun 04 2002 - hhetter@suse.de
|
||||
- updated to version 1.5.21, source frozen
|
||||
* Mon Apr 15 2002 - hhetter@suse.de
|
||||
- initial SuSE Release
|
65
gnome.desktop
Normal file
65
gnome.desktop
Normal file
@ -0,0 +1,65 @@
|
||||
[Desktop Entry]
|
||||
Encoding=UTF-8
|
||||
Type=XSession
|
||||
Exec=gnome
|
||||
TryExec=gnome
|
||||
Name=GNOME
|
||||
Name[ar]=جينوم
|
||||
Name[bn]=গনোম
|
||||
Name[cs]=GNOME
|
||||
Name[eo]=Gnomikuo
|
||||
Name[hi]=ग्नोम
|
||||
Name[mn]=ГНОМЕ
|
||||
Name[sv]=Gnome
|
||||
Name[ta]=க்னோம்
|
||||
Name[xx]=xxGNOMExx
|
||||
Comment=The GNU Network Object Model Environment. A complete, free and easy-to-use desktop environment
|
||||
Comment[ar]=بيئة نموذج الكائن الشبكي من GNU، بيئة سطح مكتبي حرّة وسهلة الاستخدام
|
||||
Comment[bn]=দি গনিউ নেটওয়ার্ক অবজেক্টমডেল এনভায়রনমেন্ট। একটি পূর্ণ, মুক্ত এবং সহজেই ব্যবহারযোগ্য ডেস্কটপ এনভায়রনমেন্ট
|
||||
Comment[bs]=GNU Network Object Model Environment. Kompletna, slobodna i jednostavna za upotrebu desktop okolina
|
||||
Comment[ca]=El GNU Network Object Model Environment. Un complet, lliure i fàcil d'usar entorn d'escriptori
|
||||
Comment[cs]=GNU Network Object Model Environment. Úplné, svobodné a snadno použitelné pracovní prostředí
|
||||
Comment[cy]=Yr Amgylchedd Model Gwrthrych Rhwydwaith GNU (GNU Network Object Model Environment). Amgylchedd penbwrdd cyflawn, rhydd, a hawdd ei ddefnyddio.
|
||||
Comment[da]=GNU Network Object Model Environment. Et fuldstænding, frit og nemt at bruge desktopmiljø
|
||||
Comment[de]=Das GNU Network Object Model Environment. Eine komplette, freie und leicht benutzbare Arbeitsumgebung
|
||||
Comment[el]=Το GNU Network Object Model Environment. Ένα πλήρης, ελεύθερο και εύκολο στη χρήση περιβάλλον επιφάνειας εργασίας
|
||||
Comment[eo]=Plena labortabla ĉirkaŭaĵo
|
||||
Comment[es]=El GNU Network Object Model Environment, un entorno de escritorio completo, libre y fácil de usar
|
||||
Comment[et]=GNU Network Object Model Environment on täielik, vaba ja väga hõlpsasti kasutatav töölaua keskkond
|
||||
Comment[eu]=GNU Network Object Model Environment. mahaigain-ingurune oso, libre eta erabilterreza
|
||||
Comment[fi]=GNU Network Object Model Environment. Valmis, vapaa ja helppokäyttöinen työpöytäympäristö
|
||||
Comment[fr]=The GNU Network Object Model Environment. Un environnement de bureau complet, gratuit et facile à utiliser
|
||||
Comment[fy]=De GNU Network Object Model Environment, In komplete, frije en ienfâldige te brûken buroblêd omwrâld
|
||||
Comment[gl]=O GNU Network Object Model Environment. Un entorno de escritorio completo, ceibe e de uso doado
|
||||
Comment[he]=The GNU Network Object Model Environment. סביבת עבודה מלאה, חופשית וקלה לשימוש
|
||||
Comment[hi]=जीएनयू नेटवर्क ऑब्जेक्ट मॉडल एनवायरनमेंट. एक संपूर्ण, उपयोग में आसान डेस्कटॉप वातावरण
|
||||
Comment[hu]=GNU Network Object Model Environment (GNOME), egy teljes, ingyenes, könnyen kezelhető grafikus környezet
|
||||
Comment[is]=GNU Network Object Model Environment er fullkomið og fjrálst skjáborðsumhverfi sem er auðvelt að nota
|
||||
Comment[it]=Il GNU Network Object Model Environment. Un ambiente desktop completo, libero e facile da usare
|
||||
Comment[ja]=GNUオブジェクトモデル環境,完全にフリーで使い易いデスクトップ環境
|
||||
Comment[lt]=GNU tinklo objektų modeliavimo aplinka. Savarankiška, laisva ir lengvai naudojama darbastalio aplinka
|
||||
Comment[mk]=GNU Network Object Model Environment. Работна околина која е комплетна, слободна и едноставна за користење
|
||||
Comment[mn]=GNU Network Object Model Environment. Бүрэн, үнэгүй хэрэглэхэд хялбар дэлгэцийн системийн орчин
|
||||
Comment[mt]=GNU Network Object Model Environment. Ambjent grafiku komplet, ħieles u faċli tużah.
|
||||
Comment[nb]=GNU Network Object Model Environment. Et skrivebordsmiljø som er komplett, fritt og lett å bruke.
|
||||
Comment[nds]=De GNU Network Object Model Environment. En kumplette Schriefdisch-Ümgeven, ümsunst un eenfach to bruken
|
||||
Comment[nl]=De GNU Network Object Model Environment, een complete, vrije en eenvoudig te gebruiken desktop environment.
|
||||
Comment[nn]=GNU Network Object Model Environment. Eit skrivebordsmiljø som er komplett, fritt og lett å bruka.
|
||||
Comment[pa]=GNU Network Object Model Environment ।ਇੱਕ ਸੰਪੂਰਨ, ਮੁਫਤ ਅਤ ਵਰਤਣ ਵਿੱਚ ਅਤਿ ਆਸਾਨ ਵਿਹੜਾ ਵਾਤਾਵਰਣ
|
||||
Comment[pl]=GNU Network Object Model Environment (GNOME). Pełne, wolne i łatwe w użyciu środowisko pulpitu
|
||||
Comment[pt]=O GNU Network Object Model Environment. Um ambiente de trabalho completo, livre e fácil de usar
|
||||
Comment[pt_BR]=Acrônimo para GNU Network Object Model Environment ou Ambiente de Modelo de Objetos de Rede GNU; um ambiente de trabalho completo, livre e fácil de usar
|
||||
Comment[ro]=GNU Network Object Model Environment. Un mediu grafic complet, gratuit şi uşor de utilizat
|
||||
Comment[ru]=GNU Network Object Model Environment - полная, свободная и легкая в использовании графическая среда
|
||||
Comment[sk]=The GNU Network Object Model Environment. Úplné, voľne šíriteľné a ľahko používateľné pracovné prostredie
|
||||
Comment[sl]=GNU Network Object Model Environment. Popolno, prosto in preposto namizno okolje
|
||||
Comment[sr]=„GNU Network Object Model Environment“(Gnome, Гном). Потпуно, бесплатно и лако за коришћење радно окружење
|
||||
Comment[sr@Latn]=„GNU Network Object Model Environment“(Gnome, Gnom). Potpuno, besplatno i lako za korišćenje radno okruženje
|
||||
Comment[sv]=GNU Network Object Model Environment. En fullständig, fri och lättanvänd skrivbordsmiljö
|
||||
Comment[ta]=GNU மாதிரி வலை பொருள் சூழல்.முழுமையான , இலவச சுலபமாக பயன்படுத்தக்கூடிய மேல்மேசை சூழல்
|
||||
Comment[tr]=GNU Network Object Model Environment (GNOME)
|
||||
Comment[uk]=The GNU Network Object Model Environment. Повнофункціональне, вільне та зручне графічне середовище
|
||||
Comment[uz]=GNOME (GNU Network Object Model Environment) - мукаммал, бепул ва фойдаланиш учун жуда қулай иш столи муҳити
|
||||
Comment[vi]=Môi trường kiểu đối tượng của GNU: Một môi trường desktop đầy đủ, miễn phí và dễ sử dụng
|
||||
Comment[xx]=xxThe GNU Network Object Model Environment. A complete, free and easy-to-use desktop environmentxx
|
||||
Comment[zh_CN]=GNU 网络对象模型环境。完整、自由、易用的桌面环境
|
Loading…
Reference in New Issue
Block a user