summaryrefslogtreecommitdiffstats
path: root/perl-install/standalone.pm
diff options
context:
space:
mode:
Diffstat (limited to 'perl-install/standalone.pm')
-rw-r--r--perl-install/standalone.pm106
1 files changed, 70 insertions, 36 deletions
diff --git a/perl-install/standalone.pm b/perl-install/standalone.pm
index 8f8299282..806ebf7cd 100644
--- a/perl-install/standalone.pm
+++ b/perl-install/standalone.pm
@@ -1,23 +1,28 @@
-package standalone; # $Id$
+package standalone;
use c;
use strict;
-use common qw(N N_ if_);
+use subs qw(exit);
+use common qw(N N_ if_ backtrace);
use Config;
+use drakbug;
+
+BEGIN { unshift @::textdomains, 'libDrakX-standalone' }
-#- for sanity (if a use standalone is made during install, MANY problems will happen)
require 'log.pm'; #- "require log" causes some pb, perl thinking that "log" is the log() function
+#- for sanity (if a use standalone is made during install, MANY problems will happen)
if ($::isInstall) {
log::l('ERROR: use standalone made during install :-(');
log::l('backtrace: ' . backtrace());
}
$::isStandalone = 1;
-$::noBorder = 1;
$ENV{SHARE_PATH} ||= "/usr/share";
-c::setlocale();
-c::bindtextdomain('libDrakX', "/usr/share/locale");
+eval { #- allow standalone.pm to be used in drakxtools-backend without perl-Locale-gettext
+ c::init_setlocale();
+ Locale::gettext::bindtextdomain('libDrakX', "/usr/share/locale");
+};
$::license = N_("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
@@ -31,7 +36,7 @@ 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.
+Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
");
my $progname = common::basename($0);
@@ -49,17 +54,30 @@ Backup and Restore application
--help : show this message.
--version : show version number.
"),
+
+ 'drakboot' => N_("[--boot]
+OPTIONS:
+ --boot - enable to configure boot loader
+default mode: offer to configure autologin feature"),
'drakbug' => N_("[OPTIONS] [PROGRAM_NAME]
OPTIONS:
--help - print this help message.
- --report - program should be one of mandrake tools
- --incident - program should be one of mandrake tools"),
- 'drakfont' => N_("Font Importation and monitoring application
+ --report - program should be one of %s tools
+ --incident - program should be one of %s tools"),
+ 'drakconnect' => N_("[--add]
+ --add - \"add a network interface\" wizard
+ --del - \"delete a network interface\" wizard
+ --skip-wizard - manage connections
+ --internet - configure internet
+ --wizard - like --add"),
+ 'drakfont' => N_("
+Font Importation and monitoring application
+
+OPTIONS:
--windows_import : import from all available windows partitions.
--xls_fonts : show all fonts that already exist from xls
---strong : strong verification of font.
---install : accept any font file and any directry.
+--install : accept any font file and any directory.
--uninstall : uninstall any font or any directory of font.
--replace : replace all font if already exist
--application : 0 none application.
@@ -69,7 +87,7 @@ OPTIONS:
'draksec' => "[--debug]
--debug: print debugging information",
'drakTermServ' => N_("[OPTIONS]...
-Mandrake Terminal Server Configurator
+%s Terminal Server Configurator
--enable : enable MTS
--disable : disable MTS
--start : start MTS
@@ -90,11 +108,11 @@ Network & Internet connection and monitoring application
--disconnect : disconnect to internet if already connected
--force : used with (dis)connect : force (dis)connection.
--status : returns 1 if connected 0 otherwise, then exit.
---quiet : don't be interactive. To be used with (dis)connect."),
- 'printerdrake' => N_(" [--skiptest] [--cups] [--lprng] [--lpd] [--pdq]"),
+--quiet : do not be interactive. To be used with (dis)connect."),
+ 'printerdrake' => " [--skiptest] [--cups] [--lprng] [--lpd] [--pdq]",
'rpmdrake' => N_("[OPTION]...
- --no-confirmation don't ask first confirmation question in MandrakeUpdate mode
- --no-verify-rpm don't verify packages signatures
+ --no-confirmation do not ask first confirmation question in %s Update mode
+ --no-verify-rpm do not verify packages signatures
--changelog-first display changelog before filelist in the description window
--merge-all-rpmnew propose to merge all .rpmnew/.rpmsave files found"),
'scannerdrake' => N_("[--manual] [--device=dev] [--update-sane=sane_source_dir] [--update-usbtable] [--dynamic=dev]"),
@@ -103,21 +121,45 @@ Network & Internet connection and monitoring application
XFdrake resolution"),
);
-$usages{$_} = $usages{rpmdrake} foreach qw(rpmdrake-remove MandrakeUpdate);
+$usages{$_} = $usages{rpmdrake} foreach qw(rpmdrake-remove MageiaUpdate);
$usages{Xdrakres} = $usages{XFdrake};
+sub exit {
+ explanations('### Program is exiting ###');
+ CORE::exit(@_);
+}
+
+sub __exit {
+ explanations('### Program is exiting ###');
+ c::_exit(@_);
+}
+
+
+sub real_version() {
+ return "VER"; # version automatically set from Makefile
+}
+
+sub version() {
+ print 'Drakxtools version ' . real_version() . '
+Copyright (C) 1999-2008 Mandriva by <install@mandriva.com>
+Copyright (C) 2010-2014 Mageia
+', $::license, "\n";
+}
+
+if (!$::no_global_argv_parsing) {
my ($i, @new_ARGV);
foreach (@ARGV) {
$i++;
if (/^-(-help|h)$/) {
version();
- print STDERR N("\nUsage: %s [--auto] [--beginner] [--expert] [-h|--help] [--noauto] [--testing] [-v|--version] ", $progname), if_($usages{$progname}, $usages{$progname}), "\n";
+ print N("\nUsage: %s [--auto] [--beginner] [--expert] [-h|--help] [--noauto] [--testing] [-v|--version] ", $progname),
+ if_($usages{$progname}, common::translate($usages{$progname})), "\n";
# print N("\nUsage: "), $::usage, "\n" if $::usage;
- exit(0);
+ CORE::exit(0);
} elsif (/^-(-version|v)$/) {
version();
- exit(0);
+ CORE::exit(0);
} elsif (/^--embedded$/) {
$::XID = splice @ARGV, $i, 1;
$::isEmbedded = 1;
@@ -137,12 +179,6 @@ foreach (@ARGV) {
}
@ARGV = @new_ARGV;
-
-
-sub version {
- print STDERR 'Drakxtools version 9.3.0
-Copyright (C) 1999-2003 MandrakeSoft by <install@mandrakesoft.com>
-', $::license, "\n";
}
################################################################################
@@ -152,21 +188,19 @@ my $standalone_name;
sub explanations { log::explanations("@_") }
our @common_functs = qw(renamef linkf symlinkf output substInFile mkdir_p rm_rf cp_af touch setVarsInSh setExportedVarsInSh setExportedVarsInCsh update_gnomekderc);
-our @builtin_functs = qw(chmod chown unlink link symlink rename system);
-our @drakx_modules = qw(Xconfig::card Xconfig::default Xconfig::main Xconfig::monitor Xconfig::parse Xconfig::proprietary Xconfig::resolution_and_depth Xconfig::screen Xconfig::test Xconfig::various Xconfig::xfree Xconfig::xfree3 Xconfig::xfree4 Xconfig::xfreeX any bootloader bootlook c class_discard commands crypto detect_devices devices diskdrake diskdrake::hd_gtk diskdrake::interactive diskdrake::removable diskdrake::removable_gtk diskdrake::smbnfs_gtk fs fsedit http keyboard lang log loopback lvm modules::parameters modules mouse my_gtk network network::adsl network::ethernet network::isdn_consts network::isdn network::modem network::netconnect network::network network::nfs network::smb network::tools partition_table partition_table_bsd partition_table::dos partition_table::empty partition_table::gpt partition_table::mac partition_table::raw partition_table::sun printer printerdrake proxy raid run_program scanner services steps swap timezone network::drakfirewall network::shorewall);
-
-$SIG{SEGV} = sub { my $progname = $0; $progname =~ s|.*/||; exec("drakbug --incident $progname") };
+our @builtin_functs = qw(chmod chown __exit exit unlink link symlink rename system);
+our @drakx_modules = qw(Xconfig::card Xconfig::default Xconfig::main Xconfig::monitor Xconfig::parse Xconfig::proprietary Xconfig::resolution_and_depth Xconfig::screen Xconfig::test Xconfig::various Xconfig::xfree any bootloader bootlook c commands crypto detect_devices devices diskdrake diskdrake::hd_gtk diskdrake::interactive diskdrake::removable diskdrake::removable_gtk diskdrake::smbnfs_gtk fs fsedit http keyboard lang log loopback lvm modules::parameters modules mouse my_gtk network network::adsl network::ethernet network::connection network::isdn_consts network::isdn network::modem network::netconnect network::network fs::remote::nfs fs::remote::smb network::tools partition_table partition_table_bsd partition_table::dos partition_table::empty partition_table::gpt partition_table::mac partition_table::raw partition_table::sun printer printerdrake proxy raid run_program scanner services steps swap timezone network::drakfirewall network::shorewall);
-sub import {
+sub import() {
($standalone_name = $0) =~ s|.*/||;
- c::openlog($standalone_name."[$$]");
+ c::openlog($standalone_name . "[$$]");
explanations('### Program is starting ###');
eval "*common::$_ = *$_" foreach @common_functs;
foreach my $f (@builtin_functs) {
- eval "*$_"."::$f = *$f" foreach @drakx_modules;
- eval "*".caller()."::$f = *$f";
+ eval "*$_" . "::$f = *$f" foreach @drakx_modules;
+ eval "*" . caller() . "::$f = *$f";
}
}
@@ -270,7 +304,7 @@ sub symlink {
}
sub rename {
- explanations "renamed file $_[0] to $_[1]";
+ explanations "renamed file $_[0] to $_[1]" if -r $_[0];
CORE::rename($_[0], $_[1]);
}