summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorColin Guthrie <colin@mageia.org>2012-04-24 20:10:29 +0000
committerColin Guthrie <colin@mageia.org>2012-04-24 20:10:29 +0000
commitdbcb518f94ece3943df4f0f661c72406997ec782 (patch)
tree265cda5f27177eb850c7e0568d5c2618eb0a6f20
parent0b74727f04f472467a084bb60fd177b17da691d8 (diff)
downloaddrakx-backup-do-not-use-dbcb518f94ece3943df4f0f661c72406997ec782.tar
drakx-backup-do-not-use-dbcb518f94ece3943df4f0f661c72406997ec782.tar.gz
drakx-backup-do-not-use-dbcb518f94ece3943df4f0f661c72406997ec782.tar.bz2
drakx-backup-do-not-use-dbcb518f94ece3943df4f0f661c72406997ec782.tar.xz
drakx-backup-do-not-use-dbcb518f94ece3943df4f0f661c72406997ec782.zip
services: Read descriptions from systemd units.
-rw-r--r--perl-install/services.pm22
1 files changed, 14 insertions, 8 deletions
diff --git a/perl-install/services.pm b/perl-install/services.pm
index 3814cedba..29e275d47 100644
--- a/perl-install/services.pm
+++ b/perl-install/services.pm
@@ -127,14 +127,20 @@ xinetd => N_("Starts other deamons on demand."),
if ($s) {
$s = translate($s);
} else {
- my $file = find { -e $_ } map { "$::prefix$_/$name" } '/etc/rc.d/init.d', '/etc/init.d', '/etc/xinetd.d';
- $s = cat_($file);
- $s =~ s/\\\s*\n#\s*//mg;
- $s =
- $s =~ /^#\s+(?:Short-)?[dD]escription:\s+(.*?)^(?:[^#]|# {0,2}\S)/sm ? $1 :
- $s =~ /^#\s*(.*?)^[^#]/sm ? $1 : '';
-
- $s =~ s/#\s*//mg;
+ my $file = "$::prefix/lib/systemd/system/$name.service";
+ if (-e $file) {
+ $s = cat_($file);
+ $s = $s =~ /^Description=(.*)/mg ? $1 : '';
+ } else {
+ $file = find { -e $_ } map { "$::prefix$_/$name" } '/etc/rc.d/init.d', '/etc/init.d', '/etc/xinetd.d';
+ $s = cat_($file);
+ $s =~ s/\\\s*\n#\s*//mg;
+ $s =
+ $s =~ /^#\s+(?:Short-)?[dD]escription:\s+(.*?)^(?:[^#]|# {0,2}\S)/sm ? $1 :
+ $s =~ /^#\s*(.*?)^[^#]/sm ? $1 : '';
+
+ $s =~ s/#\s*//mg;
+ }
}
$s =~ s/\n/ /gm; $s =~ s/\s+$//;
$s;