From eb2ef64801d4185f972e0cae16b827f632b3c81a Mon Sep 17 00:00:00 2001 From: Thierry Vignaud Date: Wed, 28 May 2008 14:53:18 +0000 Subject: split data structure (needed for next commits) --- lib/MDV/.perl_checker | 54 ++++ lib/MDV/Control_Center.pm | 685 ++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 739 insertions(+) create mode 100644 lib/MDV/.perl_checker create mode 100755 lib/MDV/Control_Center.pm (limited to 'lib') diff --git a/lib/MDV/.perl_checker b/lib/MDV/.perl_checker new file mode 100644 index 00000000..c105aa3d --- /dev/null +++ b/lib/MDV/.perl_checker @@ -0,0 +1,54 @@ +AutoLoader +base +Carp::Heavy +Compress::Zlib +Config::IniFiles +constant +Cwd +Date::Manip +Digest::base +Digest::Perl::MD5 +Discover +Encode +encoding +feature +File::Basename +File::Find +File::FnMatch +File::GlobMapper +File::MimeInfo::Magic +File::Path +File::Temp +Gtk2::Gdk::Keysyms +Gtk2::Pango +HTTP::Message +HTTP::Request +HTTP::Request::Common +install::gtk +install::pkgs +interactive::http +IO::Compress::Gzip +IO::Handle +IO::Socket::SSL +IO::Uncompress::Gunzip +LWP::UserAgent +LWP::UserlAgent +Net::DNS +Net::HTTP +Net::HTTP::Methods +Net::Ping +Net::SSL +Packdrakeng +RS::Handy +Scalar::Util +SOAP::Lite +Switch +Term::ReadKey +Text::ParseWords +Time::ZoneInfo +URI::Escape +urpm +urpm::cfg +urpm::download +urpm::prompt +warnings diff --git a/lib/MDV/Control_Center.pm b/lib/MDV/Control_Center.pm new file mode 100755 index 00000000..7fa7c399 --- /dev/null +++ b/lib/MDV/Control_Center.pm @@ -0,0 +1,685 @@ +package MDV::Control_Center; + +# Copyright (C) 1999-2008 Mandriva +# Daouda Lo +# Damien Krotkine +# Thierry Vignaud +# Yves Duret +# +# This program is free software; you can redistribute it and/or modify it under +# the terms of the GNU General Public License as published by the Free Software +# Foundation; either version 2, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + + +use strict; +use lib qw(/usr/lib/libDrakX); +use common; + + +use Exporter; +our @ISA = qw(Exporter); +our @EXPORT = qw( + $bindir $sbindir $xbindir + $mcc_dir $themes_dir + %programs + ); + +#------------------------------------------------------------- +# paths +our ($bindir, $sbindir, $xbindir) = ("/usr/bin", "/usr/sbin", "/usr/X11R6/bin"); +our $mcc_dir = "/usr/share/mcc"; +our $themes_dir = "$mcc_dir/themes/"; + + +# { key => { log_exp, binary, embedded?, description ] } +# embedded meaning: -1 => not embedded, 0 => external x11 app, 1 => proper embedding +our %programs = + ( + "3D" => + { + binary => "$sbindir/drak3d", + embedded => 1, + description => N("Configure 3D Desktop effects"), + long_description => N("Configure 3D Desktop effects"), + icon => 'drak3d', + }, + + + "Authentication" => + { + binary => "$sbindir/drakauth", + embedded => 1, + description => + #-PO: this message is already translated in drakx domain from which MCC will searchs it: + N("Authentication"), + long_description => N("Select the authentication method (local, NIS, LDAP, Windows Domain, ...)"), + icon => 'drakauth-mdk', + }, + + + "Auto Install" => + { + binary => "$sbindir/drakautoinst", + embedded => 1, + description => N("Auto Install floppy"), + long_description => N("Generate an Auto Install floppy"), + icon => 'drakautoinst-mdk', + }, + + + "Auto login Config" => + { + binary => "$sbindir/drakboot", + embedded => 1, + description => N("Set up autologin to automatically log in"), + long_description => N("Enable autologin and select the user to automatically log in"), + icon => 'autologin-mdk', + }, + + + "Backups" => + { + binary => "$sbindir/drakbackup", + embedded => 1, + description => N("Backups"), + long_description => N("Configure backups of the system and of the users' data"), + icon => 'backup-mdk', + application_driven_menu => 1, + }, + + + "Snapshots" => + { + binary => "$sbindir/draksnapshot-config", + embedded => 1, + description => N("Snapshots"), + long_description => '', + icon => 'snapshots', + }, + + + "Boot Config" => + { + binary => "$sbindir/drakboot --boot", + embedded => 1, + description => N("Set up boot system"), + long_description => N("Set up how the system boots"), + icon => 'drakboot-mdk', + }, + + + "Boot Theme" => + { + binary => "$sbindir/drakboot --splash", + embedded => 1, + description => N("Set up boot graphical theme of system"), + long_description => N("Select the graphical theme of the system while booting"), + icon => 'boot-theme-mdk', + }, + + + "Boot Disk" => + { + binary => "$sbindir/drakfloppy", + embedded => 1, + description => N("Boot floppy"), + long_description => N("Generate a standalone boot floppy"), + icon => 'drakfloppy-mdk', + }, + + + "Connection Sharing" => + { + binary => "$sbindir/drakgw", + embedded => 1, + description => N("Share the Internet connection with other local machines"), + long_description => N("Share the Internet connection with other local machines"), + icon => 'drakgw-mdk', + }, + + + "Add Connection" => + { + binary => "$sbindir/drakconnect --wizard", + embedded => 1, + description => N("Set up a new network interface (LAN, ISDN, ADSL, ...)"), + long_description => N("Set up a new network interface (LAN, ISDN, ADSL, ...)"), + icon => 'new-connection-mdk', + }, + + + "Configure Internet" => + { + binary => "$sbindir/drakconnect --internet", + embedded => 1, + description => N("Internet access"), + long_description => N("Alter miscellaneous internet settings"), + icon => 'internet-access-mdk', + }, + + + "Console" => + { + binary => "$sbindir/drakconsole", + embedded => 1, + description => N("Open a console as administrator"), + long_description => N("Open a console as administrator"), + icon => 'console-mdk', + #The Console will help you to solve issues + }, + + + "Date & Time" => + { + binary => "$sbindir/clock.pl", + embedded => 1, + description => N("Manage date and time"), + long_description => N("Manage date and time"), + icon => 'time-mdk', + }, + + + "Display Manager chooser" => + { + binary => "$sbindir/drakedm", + embedded => 1, + description => N("Set up display manager"), + long_description => N("Choose the display manager that enables to select which user to log in"), + icon => 'drakedm-mdk', + }, + + + "Fax" => + { + binary => "$sbindir/drakfax_server", + embedded => 1, + description => N("Configure a fax server"), + long_description => N("Configure a fax server"), + icon => 'drakfax-mdk', + }, + + + "Firewall" => + { + binary => "$sbindir/drakfirewall", + embedded => 1, + description => N("Set up your personal firewall"), + long_description => N("Set up a personal firewall in order to protect the computer and the network"), + icon => 'firewall-mdk', + }, + + + "Fonts" => + { + binary => "$sbindir/drakfont", + embedded => 1, + description => N("Manage, add and remove fonts. Import Windows(TM) fonts"), + long_description => N("Manage, add and remove fonts. Import Windows(TM) fonts"), + icon => 'drakfont-mdk', + }, + + + "Graphical server configuration" => + { + binary => "$sbindir/XFdrake", + embedded => 1, + description => N("Set up the graphical server"), + long_description => N("Set up the graphical server"), + icon => 'XFdrake-mdk' + }, + + + "Hard Drives" => + { + binary => "$sbindir/diskdrake --hd", + embedded => 1, + description => N("Manage disk partitions"), + long_description => N("Create, delete and resize hard disk partitions"), + icon => 'diskdrake_hd', + }, + + + "Hardware List" => + { + binary => "$sbindir/harddrake2", + embedded => 1, + description => N("Browse and configure hardware"), + long_description => N("Browse and configure hardware"), + icon => 'harddrake-mdk', + application_driven_menu => 1, + }, + + + "Sound" => + { + binary => "$sbindir/draksound", + embedded => 1, + description => N("Sound Configuration"), + long_description => N("Sound Configuration"), + icon => 'sound', + }, + + + "Hosts" => + { + binary => "$sbindir/drakhosts", + embedded => 1, + description => N("Hosts definitions"), + long_description => N("Manage hosts definitions"), + icon => 'drakhosts', + }, + + + "Install Software" => + { + binary => "$sbindir/rpmdrake", + embedded => 1, + description => N("Install & Remove Software"), + long_description => N("Install, uninstall software"), + icon => 'installremoverpm', + application_driven_menu => 1, + }, + + + "Invictus Firewall" => + { + binary => "$sbindir/drakinvictus", + embedded => 1, + description => N("Advanced setup for network interfaces and firewall"), + long_description => N("Set up network interfaces failover and firewall replication"), + icon => 'invictus', + }, + + + "Keyboard" => + { + binary => "$sbindir/keyboarddrake", + embedded => 1, + description => N("Set up the keyboard layout"), + long_description => N("Set up the keyboard layout"), + icon => 'keyboard-mdk', + }, + + + "Kolab" => + { + binary => "$sbindir/kolab", + embedded => 1, + description => N("Kolab"), + long_description => N("Set up a groupware server"), + }, + + + "Localization" => + { + binary => "$bindir/localedrake", + embedded => 1, + icon => 'localedrake', + description => N("Manage localization for your system"), + long_description => N("Select the language and the country or region of the system"), + }, + + + "Logs" => + { + binary => "$sbindir/logdrake", + embedded => 1, + description => N("View and search system logs"), + long_description => N("View and search system logs"), + icon => 'logdrake-mdk', + }, + + + "Manage Connection" => + { + binary => "$sbindir/drakconnect --skip-wizard", + embedded => 1, + description => N("Manage connections"), + long_description => N("Reconfigure a network interface"), + icon => 'manage-connections-mdk', + }, + + + "Mandriva Online" => + { + binary => "$xbindir/mdkonline", + embedded => 1, + description => N("Upload your configuration to get information on upgrades"), + long_description => N("Upload your configuration in order to keep you informed about security and useful upgrades"), + icon => 'mdkonline-mdk', + }, + + + "Manage park" => + { + binary => "$sbindir/park-rpmdrake", + embedded => 1, + description => N("Manage computer group"), + long_description => N("Manage installed software packages on a group of computers"), + icon => 'drakpark-mdk', + }, + + + "Mandriva Update" => + { + binary => "$sbindir/MandrivaUpdate", + embedded => 1, + description => N("Update your system"), + long_description => N("Look at available updates and apply any fixes or upgrades to installed packages"), + icon => 'MandrivaUpdate', + application_driven_menu => 1, + }, + + + "Menus" => + { + binary => "$bindir/drakmenustyle", + embedded => 1, + description => N("Menu Style"), + long_description => N("Menu Style Configuration"), + icon => 'drakmenustyle', + }, + + + "Migration" => + { + binary => "$sbindir/transfugdrake", + embedded => 1, + description => N("Import Windows(TM) documents and settings"), + long_description => N("Import Windows(TM) documents and settings"), + icon => 'migrationtools', + }, + + + "Monitor Connection" => + { + binary => "$sbindir/net_monitor", + embedded => 1, + description => N("Monitor connections"), + long_description => N("Monitor the network connections"), + icon => 'net_monitor-mdk', + }, + + + "Mouse" => + { + binary => "$sbindir/mousedrake", + embedded => 1, + description => N("Set up the pointer device (mouse, touchpad)"), + long_description => N("Set up the pointer device (mouse, touchpad)"), + icon => 'mousedrake-mdk', + }, + + + "Parental Controls" => { + binary => "$sbindir/drakguard", + embedded => 1, + description => N("Parental Controls"), + long_description => N("Parental Controls"), + icon => 'drakguard', + }, + + + "Network Center" => + { + binary => "$sbindir/draknetcenter", + embedded => 1, + description => N("Network Center"), + long_description => N("Manage your network devices"), + icon => 'netcenter', + }, + + + "Network Profiles" => + { + binary => "$sbindir/draknetprofile", + embedded => 1, + description => N("Manage different network profiles"), + long_description => N("Activate and manage network profiles"), + icon => 'draknetprofile', + }, + + + "NFS mount points" => + { + binary => "$sbindir/diskdrake --nfs", + embedded => 1, + description => N("Access NFS shared drives and directories"), + long_description => N("Set NFS mount points"), + icon => 'diskdrake_nfs', + }, + + + "NFS exports" => + { + binary => "$sbindir/draknfs", + embedded => 1, + description => N("Share drives and directories using NFS"), + long_description => N("Manage NFS shares"), + icon => 'draknfs', + application_driven_menu => 1, + }, + + + "Package stats" => + { + binary => "$sbindir/drakstats", + embedded => 1, + description => N("Package Stats"), + long_description => N("Show statistics about usage of installed software packages"), + icon => 'source-manager', + }, + + + "Partition Sharing" => + { + binary => "$sbindir/diskdrake --fileshare", + embedded => 1, + description => N("Share your hard disk partitions"), + long_description => N("Set up sharing of your hard disk partitions"), + icon => 'diskdrake_fileshare', + }, + + + "Printer" => + { + binary => "$sbindir/printerdrake", + embedded => 1, + description => N("Set up the printer(s), the print job queues, ..."), + icon => 'printer-mcc-mdk', + long_description => N("Set up the printer(s), the print job queues, ..."), + application_driven_menu => 1, + }, + + + "Programs scheduling" => + { + binary => "$xbindir/drakcronat", + embedded => 1, + description => N("Scheduled tasks"), + long_description => N("Schedule programs to run periodically or at given times"), + #DrakCronAt enables to schedule Programs execution through crond and atd daemons + icon => 'drakcronat-mdk', + }, + + "Proxy Configuration" => + { + binary => "$sbindir/drakproxy", + embedded => 1, + description => N("Proxy"), + long_description => N("Set up a proxy server for files and web browsing"), + icon => 'drakproxy-mdk', + }, + + "Remote Control" => + { + binary => "$bindir/rfbdrake", + embedded => 1, + description => N("Remote Control (Linux/Unix, Windows)"), + long_description => N("Remote Control of another machine (Linux/Unix, Windows)"), + icon => 'internet-access-mdk', + }, + + + "Remove Interface" => + { + binary => "$sbindir/drakconnect --del", + embedded => 1, + description => N("Remove a connection"), + long_description => N("Delete a network interface"), + icon => 'remove-connection-mdk', + }, + + + #- currently unused + "Roaming" => + { + binary => "$sbindir/drakroam", + embedded => 1, + description => N("Wireless connection"), + long_description => N("Wireless connection"), + icon => 'drakroam-mdk', + }, + + + "Access Windows shares" => + { + binary => "$sbindir/diskdrake --smb", + embedded => 1, + description => N("Access Windows (SMB) shared drives and directories"), + long_description => N("Configuration of Windows (Samba) shared drives and directories"), + icon => 'diskdrake_samba', + }, + + + "Samba configuration" => + { + binary => "$sbindir/draksambashare", + embedded => 1, + description => N("Share drives and directories with Windows (SMB) systems"), + long_description => N("Manage configuration of Samba"), + icon => 'draksambashare', + application_driven_menu => 1, + }, + + "Scanner" => + { + binary => "$sbindir/scannerdrake", + embedded => 1, + description => N("Set up scanner"), + long_description => N("Set up scanner"), + icon => 'scanner-mdk', + }, + + + "Security Level" => + { + binary => "$sbindir/draksec", + embedded => 1, + description => N("Set up security level and audit"), + long_description => N("Set the system security level and the periodic security audit"), + icon => 'draksec-mdk', + }, + + + "Security Permissions" => + { + binary => "$sbindir/drakperm", + embedded => 1, + description => N("Tune permissions on system"), + long_description => N("Fine tune the security permissions of the system"), + icon => 'drakperm-mdk', + }, + + + "Services" => + { + binary => "$sbindir/drakxservices", + embedded => 1, + description => N("Manage system services by enabling or disabling them"), + long_description => N("Manage system services by enabling or disabling them"), + icon => 'service-mdk', + }, + + + "Software Media Manager" => + { + binary => "$sbindir/edit-urpm-sources.pl", + embedded => 1, + description => N("Configure media sources for install and update"), + long_description => N("Select from where software packages are downloaded "), + icon => 'source-manager', + application_driven_menu => 1, + }, + + + "UPS" => + { + binary => "$sbindir/drakups --wizard", + embedded => 1, + description => + #-PO: UPS==Uninterruptible power supply + N("Set up a UPS for power monitoring"), + long_description => + #-PO: here power means electrical power + N("Set up a UPS for power monitoring"), + icon => 'drakups-mdk', + }, + + + "Users" => + { + # too big + binary => "$sbindir/userdrake", + embedded => 1, + description => N("Manage users on system"), + long_description => N("Add, remove or change users of the system"), + icon => 'user-mdk', + application_driven_menu => 1, + }, + + + "Virtualization" => + { + binary => "$sbindir/drakvirt", + embedded => 1, + description => N("Virtualization"), + long_description => N("Virtual machines management"), + icon => 'drakvirt', + }, + + + "VPN" => + { + binary => "$sbindir/drakvpn", + embedded => 1, + description => N("Configure VPN connection to secure network access"), + long_description => N("Configure VPN connection to secure network access"), + icon => 'drakvpn', + }, + + + "WebDAV mount points" => + { + binary => "$sbindir/diskdrake --dav", + embedded => 1, + description => N("Access WebDAV shared drives and directories"), + long_description => N("Set WebDAV mount points"), + icon => 'webdav-mdk', + }, + + ); + + + + +1; -- cgit v1.2.1