diff options
-rw-r--r-- | Changes | 2 | ||||
-rw-r--r-- | MANIFEST | 1 | ||||
-rw-r--r-- | Makefile.PL | 1 | ||||
-rw-r--r-- | extras/desktop/manaclock.desktop | 4 | ||||
-rw-r--r-- | extras/desktop/manahost.desktop | 4 | ||||
-rw-r--r-- | extras/desktop/manalog.desktop | 4 | ||||
-rw-r--r-- | extras/desktop/manaproxy.desktop | 4 | ||||
-rw-r--r-- | extras/desktop/manaservice.desktop | 4 | ||||
-rw-r--r-- | extras/desktop/manauser.desktop | 4 | ||||
-rw-r--r-- | extras/desktop/manauserlog.desktop | 2 | ||||
-rw-r--r-- | extras/desktop/mpan.desktop | 4 | ||||
-rwxr-xr-x | scripts/mana | 48 |
12 files changed, 67 insertions, 15 deletions
@@ -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 @@ -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); +} |