2006-12-18 Darren Kenny <
[email protected]>
* patches/gnome-vfs-01-default-url-handler.diff:
Fixes Bug#6505616 - change entry for firefox to be full path of
/usr/lib/firefox/firefox.
* patches/gnome-system-tools-07-users.diff,
patches/system-tools-backends-08-users.diff:
Fix for Bug#6484287 - sets the default homedir location to /export/home
and also checks whether the basedir for the user's directory is autofs,
if so will generate an error.
--- a/ChangeLog Mon Dec 11 11:14:19 2006 +0000
+++ b/ChangeLog Mon Dec 18 16:19:03 2006 +0000
@@ -1,3 +1,14 @@
+2006-12-18 Darren Kenny <[email protected]>
+
+ * patches/gnome-vfs-01-default-url-handler.diff:
+ Fixes Bug#6505616 - change entry for firefox to be full path of
+ /usr/lib/firefox/firefox.
+ * patches/gnome-system-tools-07-users.diff,
+ patches/system-tools-backends-08-users.diff:
+ Fix for Bug#6484287 - sets the default homedir location to /export/home
+ and also checks whether the basedir for the user's directory is autofs,
+ if so will generate an error.
+
2006-12-11 Damien Carbery <[email protected]>
==== Vermillion Devel build 55b ====
--- a/patches/gnome-system-tools-07-users.diff Mon Dec 11 11:14:19 2006 +0000
+++ b/patches/gnome-system-tools-07-users.diff Mon Dec 18 16:19:03 2006 +0000
@@ -31,8 +31,19 @@
gtk_spin_button_set_value (GTK_SPIN_BUTTON (w0), g_strtod (txt, NULL));
/* Show group settings dialog */
---- /var/tmp/clean/gnome-system-tools-2.14.0/interfaces/users.glade.in 2006-01-11 22:44:19.000000000 +0000
-+++ gnome-system-tools-2.14.0/interfaces/users.glade.in 2006-03-29 16:41:41.597069000 +0100
+
+diff -u gnome-system-tools-2.14.0/interfaces/users.glade.in-orig gnome-system-tools-2.14.0/interfaces/users.glade.in
+--- gnome-system-tools-2.14.0/interfaces/users.glade.in-orig 2006-01-11 22:44:19.000000000 +0000
++++ gnome-system-tools-2.14.0/interfaces/users.glade.in 2006-12-18 12:54:09.200475000 +0000
+@@ -888,7 +888,7 @@
+ <property name="update_policy">GTK_UPDATE_ALWAYS</property>
+ <property name="snap_to_ticks">False</property>
+ <property name="wrap">False</property>
+- <property name="adjustment">0 0 99999 1 10 10</property>
++ <property name="adjustment">0 0 2147483647 1 10 10</property>
+ </widget>
+ <packing>
+ <property name="left_attach">2</property>
@@ -1447,7 +1447,7 @@
<child>
@@ -42,6 +53,52 @@
<property name="n_rows">5</property>
<property name="n_columns">3</property>
<property name="homogeneous">False</property>
+@@ -2542,7 +2542,7 @@
+ <property name="update_policy">GTK_UPDATE_ALWAYS</property>
+ <property name="snap_to_ticks">False</property>
+ <property name="wrap">False</property>
+- <property name="adjustment">0 0 99999 1 10 10</property>
++ <property name="adjustment">0 0 2147483647 1 10 10</property>
+ </widget>
+ <packing>
+ <property name="left_attach">2</property>
+@@ -3778,7 +3778,7 @@
+ <property name="update_policy">GTK_UPDATE_ALWAYS</property>
+ <property name="snap_to_ticks">False</property>
+ <property name="wrap">False</property>
+- <property name="adjustment">0 0 99999 1 10 10</property>
++ <property name="adjustment">0 0 2147483647 1 10 10</property>
+ </widget>
+ <packing>
+ <property name="left_attach">2</property>
+@@ -3800,7 +3800,7 @@
+ <property name="update_policy">GTK_UPDATE_ALWAYS</property>
+ <property name="snap_to_ticks">False</property>
+ <property name="wrap">False</property>
+- <property name="adjustment">0 0 99999 1 10 10</property>
++ <property name="adjustment">0 0 2147483647 1 10 10</property>
+ </widget>
+ <packing>
+ <property name="left_attach">2</property>
+@@ -3822,7 +3822,7 @@
+ <property name="update_policy">GTK_UPDATE_ALWAYS</property>
+ <property name="snap_to_ticks">False</property>
+ <property name="wrap">False</property>
+- <property name="adjustment">0 0 99999 1 10 10</property>
++ <property name="adjustment">0 0 2147483647 1 10 10</property>
+ </widget>
+ <packing>
+ <property name="left_attach">4</property>
+@@ -3844,7 +3844,7 @@
+ <property name="update_policy">GTK_UPDATE_ALWAYS</property>
+ <property name="snap_to_ticks">False</property>
+ <property name="wrap">False</property>
+- <property name="adjustment">0 0 99999 1 10 10</property>
++ <property name="adjustment">0 0 2147483647 1 10 10</property>
+ </widget>
+ <packing>
+ <property name="left_attach">4</property>
+
--- /usr/tmp/clean/gnome-system-tools-2.14.0/src/users/passwd.c Mon Aug 8 20:00:05 2005
+++ gnome-system-tools-2.14.0/src/users/passwd.c Mon Apr 10 13:49:57 2006
@@ -191,10 +191,14 @@
@@ -356,13 +413,15 @@
default:
node = NULL;
break;
---- gnome-system-tools-2.14.0/src/users/user-settings.c.orig 2006-11-18 01:55:41.782149000 +0800
-+++ gnome-system-tools-2.14.0/src/users/user-settings.c 2006-11-20 20:39:57.543970000 +0800
-@@ -154,8 +154,13 @@ user_set_profile (xmlNodePtr profile)
+
+diff -u gnome-system-tools-2.14.0/src/users/user-settings.c-orig gnome-system-tools-2.14.0/src/users/user-settings.c
+--- gnome-system-tools-2.14.0/src/users/user-settings.c-orig Mon Jan 16 16:17:27 2006
++++ gnome-system-tools-2.14.0/src/users/user-settings.c Wed Nov 29 11:03:39 2006
+@@ -154,8 +154,13 @@
g_free (buf);
*/
-+#ifndef __sun
++#if ! (defined(sun) && defined(__SVR4) )
populate_privileges_table_from_profile (gst_dialog_get_widget (tool->main_dialog, "user_privileges"),
profile);
+#else
@@ -372,7 +431,7 @@
value = gst_xml_get_child_content (profile, "group");
element = g_list_first (groups_list);
-@@ -185,6 +190,8 @@ user_new_prepare (ug_data *ud)
+@@ -185,6 +190,8 @@
GtkWidget *button;
gchar *buf;
GtkWidget *widget = gst_dialog_get_widget (tool->main_dialog, "user_settings_dialog");
@@ -381,13 +440,13 @@
gtk_window_set_title (GTK_WINDOW (widget), _("User Account Editor"));
g_object_set_data (G_OBJECT (widget), "data", ud);
-@@ -195,6 +202,16 @@ user_new_prepare (ug_data *ud)
+@@ -195,7 +202,17 @@
combo_add_groups (gst_dialog_get_widget (tool->main_dialog, "user_settings_group"), TRUE);
combo_add_shells (gst_dialog_get_widget (tool->main_dialog, "user_settings_shell"));
combo_add_profiles (gst_dialog_get_widget (tool->main_dialog, "user_settings_profile_menu"));
+
+ element = g_list_first (groups_list);
-+
+
+ while ((element != NULL) && (strcmp (element->data, "other") != 0)) {
+ element = element->next;
+ counter++;
@@ -395,10 +454,58 @@
+ if (element == NULL) /* here group_list should have some entries in, so element is Null only because not find "other" */
+ counter == 0;
+ gtk_combo_box_set_active (GTK_COMBO_BOX (gst_dialog_get_widget (tool->main_dialog, "user_settings_group")), counter);
-
++
#ifdef HAVE_LIBCRACK
/* If we have libcrack, password quality check is enabled */
-@@ -618,6 +635,9 @@ user_update (ug_data *ud)
+ button = gst_dialog_get_widget (tool->main_dialog, "user_passwd_quality");
+@@ -393,7 +410,14 @@
+ gchar *primary_text = NULL;
+ gchar *secondary_text = NULL;
+ struct stat s;
++#if defined(sun) && defined(__SVR4)
++ struct stat base_s;
++ gchar *basedir = NULL;
+
++ if ( home != NULL ) {
++ basedir = g_path_get_dirname( home );
++ }
++#endif /* sun & __SVR4 */
+ if (!home || (strlen (home) < 1)) {
+ primary_text = g_strdup (N_("Home directory should not be empty"));
+ secondary_text = g_strdup (N_("Make sure you provide a home directory."));
+@@ -405,7 +429,18 @@
+ primary_text = g_strdup (N_("Home directory of the \"root\" user should not be modified"));
+ secondary_text = g_strdup (N_("This would leave the system unusable."));
+ }
+-
++#if defined(sun) && defined(__SVR4)
++ else if ( home != NULL && basedir != NULL
++ && g_strncasecmp(basedir,".", 1 ) != 0 /* Do we actually have a basedir? */
++ && stat( home, &s ) == -1 /* If the home dir already exists skip */
++ && stat( basedir, &base_s ) == 0 ) { /* Now try stat the basedir */
++ /* Check whether homedir is auto mounted */
++ if ( g_strncasecmp(base_s.st_fstype, "autofs", strlen("autofs") ) == 0 ) {
++ primary_text = g_strdup (N_("Cannot create a home directory on an automounted filesystem."));
++ secondary_text = g_strdup (N_("Please pick an alternative base directory for the users home directory."));
++ }
++ }
++#endif /* sun & __SVR4 */
+ /* else if (stat (home, &s))
+ {
+ switch (errno) {
+@@ -416,6 +451,11 @@
+ }
+ }
+ */
++#if defined(sun) && defined(__SVR4)
++ if ( basedir != NULL ) {
++ g_free( basedir );
++ }
++#endif /* sun & __SVR4 */
+ if (primary_text) {
+ show_error_message ("user_settings_dialog", _(primary_text), _(secondary_text));
+ g_free (primary_text);
+@@ -618,6 +658,9 @@
/* get user main group GID*/
data->group = g_list_nth_data (groups_list, gtk_combo_box_get_active (GTK_COMBO_BOX (gst_dialog_get_widget (tool->main_dialog, "user_settings_group"))));
@@ -408,17 +515,17 @@
if (strcmp (data->group, "$user") == 0)
data->group = data->login;
-@@ -627,7 +647,9 @@ user_update (ug_data *ud)
+@@ -627,7 +670,9 @@
data->extra_groups = NULL;
data->extra_groups = user_get_groups (ud->node);
-+#ifndef __sun
++#if ! (defined(sun) && defined(__SVR4) )
data->extra_groups = user_privileges_get_list (data->extra_groups);
+#endif
data->pwd_maxdays = g_strdup_printf ("%i", gtk_spin_button_get_value_as_int (GTK_SPIN_BUTTON (gst_dialog_get_widget (tool->main_dialog, "user_passwd_max"))));
data->pwd_mindays = g_strdup_printf ("%i", gtk_spin_button_get_value_as_int (GTK_SPIN_BUTTON (gst_dialog_get_widget (tool->main_dialog, "user_passwd_min"))));
-@@ -718,6 +740,7 @@ user_settings_dialog_prepare (ug_data *u
+@@ -718,6 +763,7 @@
/* Set UID */
txt = gst_xml_get_child_content (ud->node, "uid");
w0 = gst_dialog_get_widget (tool->main_dialog, "user_settings_uid");
@@ -426,11 +533,11 @@
gtk_spin_button_set_value (GTK_SPIN_BUTTON (w0), g_strtod (txt, NULL));
g_free (txt);
-@@ -750,7 +773,11 @@ user_settings_dialog_prepare (ug_data *u
+@@ -750,7 +796,11 @@
}
w0 = gst_dialog_get_widget (tool->main_dialog, "user_privileges");
-+#ifndef __sun
++#if ! (defined(sun) && defined(__SVR4) )
populate_privileges_table (w0, name);
+#else
+ populate_privileges_table (w0, ud->node );
@@ -438,3 +545,4 @@
/* Set password */
user_settings_dialog_prepare_password ();
+
--- a/patches/gnome-vfs-01-default-url-handler.diff Mon Dec 11 11:14:19 2006 +0000
+++ b/patches/gnome-vfs-01-default-url-handler.diff Mon Dec 18 16:19:03 2006 +0000
@@ -6,7 +6,7 @@
<owner>gnome</owner>
<type>string</type>
- <default>epiphany %s</default>
-+ <default>firefox %s</default>
++ <default>/usr/lib/firefox/firefox %s</default>
<locale name="C">
<short>The handler for "http" URLs</short>
<long>The command used to handle "http" URLs, if enabled.</long>
@@ -15,7 +15,7 @@
<owner>gnome</owner>
<type>string</type>
- <default>epiphany %s</default>
-+ <default>firefox %s</default>
++ <default>/usr/lib/firefox/firefox %s</default>
<locale name="C">
<short>The handler for "https" URLs</short>
<long>The command used to handle "https" URLs, if enabled.</long>
--- a/patches/system-tools-backends-08-users.diff Mon Dec 11 11:14:19 2006 +0000
+++ b/patches/system-tools-backends-08-users.diff Mon Dec 18 16:19:03 2006 +0000
@@ -1,6 +1,6 @@
-diff -u system-tools-backends-1.4.2/users-conf.in-orig ./system-tools-backends-1.4.2/users-conf.in
---- system-tools-backends-1.4.2/users-conf.in-orig 2006-01-02 15:48:06.000000000 +0000
-+++ system-tools-backends-1.4.2/users-conf.in 2006-11-17 23:53:05.210238000 +0000
+diff -u system-tools-backends-1.4.2/users-conf.in-orig system-tools-backends-1.4.2/users-conf.in
+--- system-tools-backends-1.4.2/users-conf.in-orig Mon Jan 2 15:48:06 2006
++++ system-tools-backends-1.4.2/users-conf.in Mon Dec 18 12:15:13 2006
@@ -47,6 +47,8 @@
# pw: modifying users/groups and user/group data on FreeBSD.
@@ -26,7 +26,7 @@
@login_defs_names = ( "/etc/login.defs", "/etc/adduser.conf" );
@shell_names = ( "/etc/shells" );
@skel_dir = ( "/usr/share/skel", "/etc/skel" );
-@@ -111,13 +115,38 @@
+@@ -111,13 +115,17 @@
$cmd_gpasswd = &gst_file_locate_tool ("gpasswd");
$cmd_chfn = &gst_file_locate_tool ("chfn");
$cmd_pw = &gst_file_locate_tool ("pw");
@@ -42,6 +42,14 @@
-if ($$tool{"platform"} eq "Linux")
+if ($$tool{"system"} eq "Linux")
+ {
+ @users_prop_array = (
+ "key", 0,
+@@ -138,6 +146,28 @@
+ "is_shadow", 15,
+ "", "");
+ }
++if ($$tool{"system"} eq "SunOS")
+{
+ @users_prop_array = (
+ "key", 0,
@@ -60,20 +68,12 @@
+ "passwd_disable", 13,
+ "reserved", 14,
+ "is_shadow", 15,
++ "rbac", 16,
+ "", "");
+}
-+if ($$tool{"system"} eq "SunOS")
+ else
{
@users_prop_array = (
- "key", 0,
-@@ -136,6 +165,7 @@
- "passwd_disable", 13,
- "reserved", 14,
- "is_shadow", 15,
-+ "rbac", 16,
- "", "");
- }
- else
@@ -157,6 +187,7 @@
$users_prop_map {$users_prop_array[$i]} = $users_prop_array[$i + 1];
$users_prop_map {$users_prop_array[$i + 1]} = $users_prop_array[$i];
@@ -134,7 +134,7 @@
+ 'shell' => '/bin/bash',
+ 'group' => 'users',
+ 'skel_dir' => '/etc/skel/',
-+ 'home_prefix' => '/home/$user',
++ 'home_prefix' => '/export/home/$user',
+ 'gmin' => 1000,
+ 'gmax' => 2147483647, # Based on MAXUID from sys/param.h
+ 'umin' => 1000,