aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Changes2
-rw-r--r--MANIFEST1
-rw-r--r--Makefile.PL1
-rw-r--r--extras/desktop/manaclock.desktop4
-rw-r--r--extras/desktop/manahost.desktop4
-rw-r--r--extras/desktop/manalog.desktop4
-rw-r--r--extras/desktop/manaproxy.desktop4
-rw-r--r--extras/desktop/manaservice.desktop4
-rw-r--r--extras/desktop/manauser.desktop4
-rw-r--r--extras/desktop/manauserlog.desktop2
-rw-r--r--extras/desktop/mpan.desktop4
-rwxr-xr-xscripts/mana48
12 files changed, 67 insertions, 15 deletions
diff --git a/Changes b/Changes
index 0cf0a7e7..dbf37070 100644
--- a/Changes
+++ b/Changes
@@ -1,5 +1,7 @@
Revision history for AdminPanel-Shared
1.0.0-3
+ - added mana script to run pkexec into script for any tools
+ and as a single entry for desktop file
- dragora-urpm-sources.pl crashed updating media, if no media
are configured
- dragora-urpm-sources.pl crashed if no media are configured
diff --git a/MANIFEST b/MANIFEST
index f60d5e00..4c2fab2d 100644
--- a/MANIFEST
+++ b/MANIFEST
@@ -66,6 +66,7 @@ modules/rpmdragora/dragora-urpm-sources.pl
modules/rpmdragora/rpmdragora
modules/test.cpp
README.md
+scripts/mana
scripts/manaadduser
scripts/manaclock
scripts/manahost
diff --git a/Makefile.PL b/Makefile.PL
index 9f0b4133..cd92bfd4 100644
--- a/Makefile.PL
+++ b/Makefile.PL
@@ -61,6 +61,7 @@ WriteMakefile(
"autodie" => 2.20,
},
EXE_FILES => [ qw( scripts/mpan.pl
+ scripts/mana
scripts/manaadduser
scripts/manaclock
scripts/manadm
diff --git a/extras/desktop/manaclock.desktop b/extras/desktop/manaclock.desktop
index 91aae5c6..c193d614 100644
--- a/extras/desktop/manaclock.desktop
+++ b/extras/desktop/manaclock.desktop
@@ -1,8 +1,8 @@
[Desktop Entry]
Name=manaclock
Comment=AdminPanel clock manager
-Exec=pkexec /usr/bin/manaclock
-Icon=manaclock
+Exec=mana clock
+Icon=/usr/share/icons/manaclock.png
Type=Application
StartupNotify=true
Categories=System;X-MandrivaLinux-CrossDesktop;
diff --git a/extras/desktop/manahost.desktop b/extras/desktop/manahost.desktop
index f53c218f..0823c39c 100644
--- a/extras/desktop/manahost.desktop
+++ b/extras/desktop/manahost.desktop
@@ -1,8 +1,8 @@
[Desktop Entry]
Name=manahost
Comment=AdminPanel host manager
-Exec=pkexec /usr/bin/manahost
-Icon=manahost
+Exec=mana host
+Icon=/usr/share/icons/manahost.png
Type=Application
StartupNotify=true
Categories=System;X-MandrivaLinux-CrossDesktop;
diff --git a/extras/desktop/manalog.desktop b/extras/desktop/manalog.desktop
index 60429cb7..3dc6d88b 100644
--- a/extras/desktop/manalog.desktop
+++ b/extras/desktop/manalog.desktop
@@ -1,8 +1,8 @@
[Desktop Entry]
Name=manalog admin mode
Comment=AdminPanel log viewer
-Exec=pkexec /usr/bin/manalog
-Icon=manalog
+Exec=mana log
+Icon=/usr/share/icons/manalog.png
Type=Application
StartupNotify=true
Categories=System;X-MandrivaLinux-CrossDesktop;
diff --git a/extras/desktop/manaproxy.desktop b/extras/desktop/manaproxy.desktop
index a20281d5..23d39bb5 100644
--- a/extras/desktop/manaproxy.desktop
+++ b/extras/desktop/manaproxy.desktop
@@ -1,8 +1,8 @@
[Desktop Entry]
Name=manaproxy
Comment=AdminPanel proxy manager
-Exec=pkexec /usr/bin/manaproxy
-Icon=manaproxy
+Exec=mana proxy
+Icon=/usr/share/icons/manaproxy.png
Type=Application
StartupNotify=true
Categories=System;X-MandrivaLinux-CrossDesktop;
diff --git a/extras/desktop/manaservice.desktop b/extras/desktop/manaservice.desktop
index ad6cd637..e5dec7aa 100644
--- a/extras/desktop/manaservice.desktop
+++ b/extras/desktop/manaservice.desktop
@@ -1,8 +1,8 @@
[Desktop Entry]
Name=manaservice
Comment=AdminPanel service manager
-Exec=pkexec /usr/bin/manaservice
-Icon=manaservice
+Exec=mana service
+Icon=/usr/share/icons/manaservice.png
Type=Application
StartupNotify=true
Categories=System;X-MandrivaLinux-CrossDesktop;
diff --git a/extras/desktop/manauser.desktop b/extras/desktop/manauser.desktop
index 42145120..87397de8 100644
--- a/extras/desktop/manauser.desktop
+++ b/extras/desktop/manauser.desktop
@@ -1,8 +1,8 @@
[Desktop Entry]
Name=manauser
Comment=AdminPanel user manager
-Exec=pkexec /usr/bin/manauser
-Icon=manauser
+Exec=mana user
+Icon=/usr/share/icons/manauser.png
Type=Application
StartupNotify=true
Categories=System;X-MandrivaLinux-CrossDesktop;
diff --git a/extras/desktop/manauserlog.desktop b/extras/desktop/manauserlog.desktop
index 57de1653..3b33b9e4 100644
--- a/extras/desktop/manauserlog.desktop
+++ b/extras/desktop/manauserlog.desktop
@@ -2,7 +2,7 @@
Name=manalog user mode
Comment=AdminPanel log viewer
Exec=/usr/bin/manalog
-Icon=manalog
+Icon=/usr/share/icons/manalog.png
Type=Application
StartupNotify=true
Categories=System;X-MandrivaLinux-CrossDesktop;
diff --git a/extras/desktop/mpan.desktop b/extras/desktop/mpan.desktop
index e7c4890a..6ea03899 100644
--- a/extras/desktop/mpan.desktop
+++ b/extras/desktop/mpan.desktop
@@ -1,8 +1,8 @@
[Desktop Entry]
Name=Mageia AdminPanel
Comment=Administration panel - application launcher
-Exec=pkexec /usr/bin/mpan.pl
-Icon=mpan
+Exec=mana pan
+Icon=/usr/share/icons/mpan.png
Type=Application
StartupNotify=true
Categories=System;X-MandrivaLinux-CrossDesktop;
diff --git a/scripts/mana b/scripts/mana
new file mode 100755
index 00000000..ee3da644
--- /dev/null
+++ b/scripts/mana
@@ -0,0 +1,48 @@
+#!/usr/bin/perl
+
+use AdminPanel::Privileges;
+
+use yui;
+
+# TODO from configuration file?
+my %modules = (
+ log => '/usr/bin/manalog',
+ user => '/usr/bin/manauser',
+ service => '/usr/bin/manaservice',
+ clock => '/usr/bin/manaclock',
+ host => '/usr/bin/manahost',
+ pan => '/usr/bin/mpan.pl',
+ proxy => '/usr/bin/manaproxy',
+
+);
+
+my $cmdline = new yui::YCommandLine;
+
+usage() if($cmdline->find("--help") > 0 || $cmdline->find("-h") > 0);
+usage() if scalar(@ARGV) < 1;
+
+my $cmd = $ARGV[0];
+
+die "Command ". $cmd . " not found!\n" if !defined($modules{$cmd});
+
+my $mod = $modules{$cmd};
+shift(@ARGV);
+
+if(is_root_capability_required()) {
+ system("/usr/bin/pkexec", $mod, @ARGV);
+} else {
+ system($mod, @ARGV);
+}
+
+sub usage {
+ print "\n";
+ print "Usage mana --help | -h print this help\n";
+ print "Usage mana <command> [args...]\n\n";
+ print "valid <commands>:\n\t";
+# TODO better presentation
+ while ( my ($key, $value) = each(%modules) ) {
+ print " " . $key;
+ }
+ print "\n";
+ exit(0);
+}