diff options
Diffstat (limited to 'drakxconf')
-rwxr-xr-x | drakxconf | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/drakxconf b/drakxconf new file mode 100755 index 00000000..616bef6d --- /dev/null +++ b/drakxconf @@ -0,0 +1,47 @@ +#!/usr/bin/perl + +use lib qw(/usr/lib/libDrakX); +use strict; + +# i18n: IMPORTANT: to get correct namespace (drakconf instead of libDrakX) +BEGIN { unshift @::textdomains, 'drakconf' } + +use standalone; #- warning, standalone must be loaded very first, for 'explanations' +use interactive; +use common; + +local $_ = join '', @ARGV; + +/-h/ and die "usage: drakxconf\n"; +/-version/ and die 'version: $Id: drakxconf 254567 2009-03-23 09:22:59Z tv $\n'; + +my $in = 'interactive'->vnew('su', 'default'); + +my @l = map { + my $path; + foreach my $i (split (":", $ENV{PATH})) { + my $j = "$i/$_->{cmd}"; + $path = $j if -x $j; + } + { des => $_->{des}, cmd => $path }; +} ( + { des => N("Display"), cmd => 'XFdrake' }, + { des => N("Keyboard"), cmd => 'keyboarddrake' }, + { des => N("Mouse"), cmd => 'mousedrake' }, + { des => N("Network & Internet"), cmd => 'drakconnect' }, + { des => N("Users and groups"), cmd => 'adduserdrake' }, + { des => N("Services"), cmd => 'drakxservices' }, + { des => N("Firewall"), cmd => 'drakfirewall' }, + { des => N("Boot loader"), cmd => 'drakboot' }, + { des => N("Auto Install"), cmd => 'drakautoinst' }, + { des => N("Internet connection sharing"), cmd => 'drakgw' }, + { des => N("3D Desktop effects"), cmd => 'drak3d' }, + { des => N("Partitions"), cmd => 'diskdrake' } + ); + +my $choice = $in->ask_from_listf(N("Control Center"), N("Choose the tool you want to use"), sub { $_[0]{des} }, \@l) + or $in->exit(1); +$in->end; + +-x $choice->{cmd} or die "$choice->{cmd} is not executable!\n"; +exec $choice->{cmd}, @ARGV or $in->exit(1); |