summaryrefslogtreecommitdiffstats
path: root/perl-install/install/steps_auto_install.pm
blob: ceaab7ed3fc112dfdc62ee36a80f197442efbabc (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
-rwxr-xr-xperl-install/standalone/drakbackup28
1 files changed, 20 insertions, 8 deletions
diff --git a/perl-install/standalone/drakbackup b/perl-install/standalone/drakbackup
index e14eb44cc..8d1f97f5b 100755
--- a/perl-install/standalone/drakbackup
+++ b/perl-install/standalone/drakbackup
@@ -83,7 +83,7 @@
# 2 - calcul disk space.
# use quota.
# 3 - ssh & rsync -> expect or .identity.pub/authorized_keys
-# 4 - write on cd
+# 4 - write on cd --> ! change Joliet to HFS for Apple
# 5 - cd writer detection -> cdrw: /sys/dev/cdrom/info /scsi/host0/bus0/target4/lun0
# /proc/sys/dev/cdrom/
# 6 - total backup.( all partitions wanted, windows partitions for example!)
@@ -449,10 +449,14 @@ sub read_conf_file {
sub complete_results {
system_state();
- $daemon or $results .= _("\n********************* DrakBackup Report *********************\n\n");
- $daemon and $results .= _("\n**************** DrakBackup Daemon Reppackage install::steps_auto_install; use diagnostics; use strict; use vars qw(@ISA $graphical @graphical_steps); @ISA = qw(install::steps); #-###################################################################################### #- misc imports #-###################################################################################### use common; use install::steps; sub new { my ($type, $o) = @_; $o->{interactive} ||= 'gtk' if $graphical || !is_empty_array_ref($o->{interactiveSteps}); # Handle legacy options push @{$o->{interactiveSteps}}, qw(setRootPassword_addUser) if intersection($o->{interactiveSteps}, ['addUser', 'setRootPassword']); push @{$o->{interactiveSteps}}, qw(installPackages configureNetwork), @graphical_steps, if_(!$o->{autoExitInstall}, 'exitInstall'); if ($o->{interactive}) { require "install/steps_$o->{interactive}.pm"; @ISA = ('install::steps_' . $o->{interactive}, @ISA); foreach my $f (@{$o->{orderedSteps}}) { $o->{steps}{$f}{auto} = 1 if !member($f, @{$o->{interactiveSteps}}); } goto &{$install::{'steps_' . $o->{interactive} . '::'}{new}}; } else { @ISA = ('install::steps_auto_install_non_interactive', @ISA); (bless {}, ref($type) || $type)->install::steps::new($o); } } sub exitInstall { my ($o, $alldone) = @_; if ($o->{interactive}) { $o->SUPER::exitInstall($alldone); } else { install::steps::exitInstall($o); return if $o->{autoExitInstall}; print "\a"; print "Auto installation complete\n"; print "Press <Enter>" , $::local_install ? '' : " to reboot", "\n"; <STDIN>; } } #-###################################################################################### #- install::steps_auto_install_non_interactive package #-###################################################################################### package install::steps_auto_install_non_interactive; use install::steps; use lang; use modules; use common; use log; my $iocharset; sub enteringStep { my ($o, $step) = @_; my ($s, $t) = (N_("Entering step `%s'\n"), common::remove_translate_context($o->{steps}{$step}{text})); my $txt; if ($iocharset && !$::local_install) { $txt = sprintf(translate($s), translate($t)); $txt = Locale::gettext::iconv($txt, "utf-8", $iocharset); } else { $txt = sprintf($s, $t); } print $txt; $o->install::steps::enteringStep($step); } sub rebootNeeded { my ($o) = @_; errorInStep($o, <<EOF); While partitioning, the partition table re-read failed, needing a reboot This is plain wrong for an auto_install EOF } sub ask_warn { my ($_o, $_title, $message) = @_; log::l(join(" ", deref_array($message)) . ' ' . backtrace()); } sub wait_message { my ($_o, $_title, $_message) = @_; } sub wait_message_with_progress_bar { my ($_o, $_title) = @_; undef, sub {}; } sub charsetChanged { my ($o) = @_; lang::load_console_font($o->{locale}); my ($name, $acm) = lang::l2console_font($o->{locale}, 1); my %fs_options = lang::fs_options($o->{locale}); $iocharset = $name && $acm && $fs_options{iocharset} ne 'utf8' ? $fs_options{iocharset} : ''; } sub errorInStep { my ($_o, $err) = @_; print "error :(\n"; print "$err\n\n"; print "switch to console f2 for a shell\n"; print "Press <Enter> to reboot\n"; my $answer = <STDIN>; if ($answer =~ /restart/i) { log::l("restarting install"); c::_exit(0x35); } c::_exit(1); } #-###################################################################################### #- Steps Functions #-###################################################################################### sub installPackages { my ($o) = @_; catch_cdie { $o->install::steps::installPackages } sub { print formatError($@), "\n"; 1 }; } 1;