Mageia Bugzilla – Attachment 891 Details for
Bug 1148
finish-install takes too long or may hang at first reboot
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
Log In
[x]
|
New Account
|
Forgot Password
[patch]
(untested) example of better heuristik
1148.diff (text/plain), 1.94 KB, created by
Thierry Vignaud
on 2011-10-04 12:10:00 CEST
(
hide
)
Description:
(untested) example of better heuristik
Filename:
MIME Type:
Creator:
Thierry Vignaud
Created:
2011-10-04 12:10:00 CEST
Size:
1.94 KB
patch
obsolete
>(ask_users) instead of assuming firt user is the user that 'live' >should be renamed to, use some heuristic (first homedir with less than >10 files) (mga#1148) > >diff --git a/perl-install/standalone/finish-install b/perl-install/standalone/finish-install >index 9264436..093e1b3 100755 >--- a/perl-install/standalone/finish-install >+++ b/perl-install/standalone/finish-install >@@ -146,9 +146,13 @@ sub ask_users() { > my $superuser = to_bool(lc(get_conf('USERS')) eq 'with_root') && {}; > any::ask_user_and_root($in, $superuser, $users, $security); > my $old_user = get_conf('USER_RENAME_FROM'); >- if (@$users && $old_user) { >- $users->[0]{rename_from} = $old_user; >- $users->[0]{home} ||= '/home/' . $users->[0]{name}; >+ my $renamed_user; >+ if ($old_user) { >+ ($renamed_user) = find { my $p = "/home/$_->{name}"; !-d $p || glob_("$p/*") > 10 } @$users; >+ } >+ if ($renamed_user) { >+ $renamed_user->{rename_from} = $old_user; >+ $renamed_user->{home} ||= '/home/' . $renamed_user->{name}; > } > my $autologin = any::get_autologin(); > my $autologin_first = ($autologin->{user} eq $old_user || lc(get_conf('USER_AUTOLOGIN_FIRST')) eq "yes") && $autologin->{desktop}; >@@ -169,11 +173,11 @@ sub ask_users() { > if ($old_user) { > #- replace home path in user config files > my $old_home = "/home/$old_user"; >- my $new_home = "/home/$users->[0]{name}"; >+ my $new_home = "/home/$renamed_user->{name}"; > run_program::run(qq(grep -D skip -rl $old_home $new_home/.??* | while read f; do perl -pi -e 's,$old_home,$new_home,g' "\$f"; done)); > #- give console rights for current session > my $console_dir = "/var/run/console"; >- cp_f($console_dir . "/" . $old_user, $console_dir . "/" . $users->[0]{name}) if -e $console_dir . "/" . $old_user; >+ cp_f($console_dir . "/" . $old_user, $console_dir . "/" . $renamed_user->{name}) if -e $console_dir . "/" . $old_user; > } > } >
(ask_users) instead of assuming firt user is the user that 'live' should be renamed to, use some heuristic (first homedir with less than 10 files) (mga#1148) diff --git a/perl-install/standalone/finish-install b/perl-install/standalone/finish-install index 9264436..093e1b3 100755 --- a/perl-install/standalone/finish-install +++ b/perl-install/standalone/finish-install @@ -146,9 +146,13 @@ sub ask_users() { my $superuser = to_bool(lc(get_conf('USERS')) eq 'with_root') && {}; any::ask_user_and_root($in, $superuser, $users, $security); my $old_user = get_conf('USER_RENAME_FROM'); - if (@$users && $old_user) { - $users->[0]{rename_from} = $old_user; - $users->[0]{home} ||= '/home/' . $users->[0]{name}; + my $renamed_user; + if ($old_user) { + ($renamed_user) = find { my $p = "/home/$_->{name}"; !-d $p || glob_("$p/*") > 10 } @$users; + } + if ($renamed_user) { + $renamed_user->{rename_from} = $old_user; + $renamed_user->{home} ||= '/home/' . $renamed_user->{name}; } my $autologin = any::get_autologin(); my $autologin_first = ($autologin->{user} eq $old_user || lc(get_conf('USER_AUTOLOGIN_FIRST')) eq "yes") && $autologin->{desktop}; @@ -169,11 +173,11 @@ sub ask_users() { if ($old_user) { #- replace home path in user config files my $old_home = "/home/$old_user"; - my $new_home = "/home/$users->[0]{name}"; + my $new_home = "/home/$renamed_user->{name}"; run_program::run(qq(grep -D skip -rl $old_home $new_home/.??* | while read f; do perl -pi -e 's,$old_home,$new_home,g' "\$f"; done)); #- give console rights for current session my $console_dir = "/var/run/console"; - cp_f($console_dir . "/" . $old_user, $console_dir . "/" . $users->[0]{name}) if -e $console_dir . "/" . $old_user; + cp_f($console_dir . "/" . $old_user, $console_dir . "/" . $renamed_user->{name}) if -e $console_dir . "/" . $old_user; } }
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 1148
: 891