From d91952b5c1a5abee2b432c6b35854ce5f52ceb3c Mon Sep 17 00:00:00 2001 From: Antoine Ginies Date: Fri, 6 Aug 2004 10:47:30 +0000 Subject: fix remove kernel and initrd add dialog box --- drakpxelinux.pl | 42 +++++++++++++++++++++++++++++------------- 1 file changed, 29 insertions(+), 13 deletions(-) diff --git a/drakpxelinux.pl b/drakpxelinux.pl index 9d8e51b..e7b9b09 100644 --- a/drakpxelinux.pl +++ b/drakpxelinux.pl @@ -38,8 +38,6 @@ use constant TRUE => 1; # KERNEL images/vmlinuz # APPEND initrd=images/all.rdz automatic=method:http,interface:eth0,network:dhcp,server:10.0.1.33,directory:/install/ ramdisk_size=64000 root=/dev/ram3 rw vga=788 display=:0 - - my $conf = "/var/lib/tftpboot/X86PC/linux/pxelinux.cfg/default"; #my $conf = "/tmp/tr"; my $HOSTNAME = chomp_(`hostname`); @@ -266,8 +264,8 @@ sub wizard_add_entry { undef $::WizardWindow; $::isWizard = 1; use wizards; - my $WPXENAME = "cooker"; - my $WINFO = "install cooker"; + my $WPXENAME = "Mandrakeclustering"; + my $WINFO = "install Mandrakeclustering"; my $WALLRDZ = "/home/nis/install/clic/isolinux/alt0/all.rdz"; my $WVMLINUZ = "/home/nis/install/clic/isolinux/alt0/vmlinuz"; my $w = wizards->new; @@ -362,17 +360,22 @@ sub remove_item { my $path = $model->get_path($iter); my $i = ($path->get_indices)[0]; ask_okcancel("Remove $listpxe[$i]{label} PXE entry ?") or return; - $model->remove($iter); - splice @listpxe, $i, 1; remove_in_help($listpxe[$i]{label}); - if (basename($listpxe[$i]{kernel} ne "memdisk")) { - rm_rf($listpxe[$i]{kernel}); - rm_rf($listpxe[$i]{initrd}); + my $k = "$X86/$listpxe[$i]{kernel}"; + my $i = "$X86/$listpxe[$i]{initrd}"; + if (basename($listpxe[$i]{kernel} ne "$X86/memdisk")) { + print "k: $k\n"; + print "i: $i\n"; + system("rm -vf $k"); + system("rm -vf $i"); } else { - rm_rf($listpxe[$i]{initrd}); + print "i: $i\n"; + system("rm -vf $i"); } + $model->remove($iter); + splice @listpxe, $i, 1; write_conf_pxe; - } + } } sub test_similar_label { @@ -859,6 +862,19 @@ sub add_columns { # Main # create model +if (! -f "$X86/drakwizard_pxe") { + info_dialog("Please confure a PXE server", "Its seems this is the first time you run this tool. +A wizard will apppear to configure your pxe server."); + eval { wizard_pxe_server() }; + my $err = $@; + $::WizardWindow->destroy if defined $::WizardWindow; + undef $::WizardWindow; + if ($err && $err !~ /wizcancel/) { + err_dialog(N("Error"), N("The PXE server wizard had unexpectly failled:") + . "\n\n" . $err); + } +} + $::isWizard = 0; my $model = create_model(); @@ -898,8 +914,8 @@ $W->add(gtkpack_(Gtk2::VBox->new(0,0), 0, gtkpack_(gtkset_border_width(Gtk2::HBox->new, 3), 0, Gtk2::Label->new(N("boot:")), 0, $labels, - 0, Gtk2::VSeparator->new, - 0, gtksignal_connect(new Gtk2::Button(N("PXE server")), + 0, Gtk2::VSeparator->new(), + 0, gtksignal_connect(new Gtk2::Button(N("Wizard PXE server")), clicked => sub { eval { wizard_pxe_server() }; my $err = $@; -- cgit v1.2.1