diff options
Diffstat (limited to 'perl-install/standalone/drakxservices')
-rwxr-xr-x | perl-install/standalone/drakxservices | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/perl-install/standalone/drakxservices b/perl-install/standalone/drakxservices new file mode 100755 index 000000000..621def75f --- /dev/null +++ b/perl-install/standalone/drakxservices @@ -0,0 +1,30 @@ +#!/usr/bin/perl + +use lib qw(/usr/lib/libDrakX); + +use common qw(:common :functional); +use interactive; + +local $_ = join '', @ARGV; + +/-h/ and die "usage: drakxservices\n"; + +$::isStandalone = 1; + +my $in = vnew interactive('su'); + +my @l = map { chop; $_ } `cd /etc/rc.d/init.d ; grep -l "chkconfig:" *`; +my @before = map { bool(@_ = glob("/etc/rc.d/rc*.d/*$_")) } @l; + +my $after = $in->ask_many_from_list("drakxservices", +_("Choose which services should be automatically started at boot time"), + \@l, \@before); + +mapn { + my ($name, $before, $after) = @_; + if ($before != $after) { + system("chkconfig", $after ? "--add" : "--del", $name); + } +} \@l, \@before, $after; + +$in->exit(0); |