From 4834a30427640c750b4a9401272a37346ec08dd3 Mon Sep 17 00:00:00 2001 From: silvan Date: Tue, 26 Apr 2011 13:25:32 +0200 Subject: [PATCH] First commit --- ChangeLog | 747 ++++++++ Makefile | 308 ++++ SRPMS/b43-firmware/LICENSE | 10 + SRPMS/b43-firmware/b43-firmware.spec.in | 74 + SRPMS/b43-firmware/distroutils.sysconfig | 9 + SRPMS/flashplugin/LICENSE | 101 + SRPMS/flashplugin/distroutils.sysconfig | 13 + SRPMS/flashplugin/flashplugin.spec.in | 106 ++ SRPMS/jre.pregpl/LICENSE | 189 ++ SRPMS/jre.pregpl/distroutils.sysconfig | 9 + SRPMS/jre.pregpl/java-profile.in | 13 + SRPMS/jre.pregpl/jre.spec.in | 140 ++ SRPMS/msttcorefonts/LICENSE | 43 + SRPMS/msttcorefonts/distroutils.sysconfig | 19 + SRPMS/msttcorefonts/msttcorefonts.spec.in | 159 ++ SRPMS/skype/LICENSE | 89 + SRPMS/skype/distroutils.sysconfig | 8 + SRPMS/skype/skype.spec.in | 91 + SRPMS/win32codecs/LICENSE | 17 + SRPMS/win32codecs/distroutils.sysconfig | 15 + SRPMS/win32codecs/win32codecs.spec.in | 127 ++ SRPMSVERSIONS | 3 + VERSION | 2 + apt/post-install.conf | 2 + apt/post-install.lua | 12 + apt/post-install.sh | 7 + bootrecover.lang | 2 + bootrecover/bootrecover-128x128.png | Bin 0 -> 20041 bytes bootrecover/bootrecover-16x16.png | Bin 0 -> 964 bytes bootrecover/bootrecover-22x22.png | Bin 0 -> 1481 bytes bootrecover/bootrecover-32x32.png | Bin 0 -> 2464 bytes bootrecover/bootrecover-48x48.png | Bin 0 -> 4685 bytes bootrecover/bootrecover-64x64.png | Bin 0 -> 7127 bytes bootrecover/bootrecover.kmdr | 1231 +++++++++++++ bootrecover/bootrecover.po | 166 ++ bootrecover/bootrecover.sh | 270 +++ bootrecover/bootrecover.sh~ | 270 +++ bootrecover/openmamba-bootrecover.desktop | 14 + bootrecover/po/es.po | 671 +++++++ bootrecover/po/it.po | 628 +++++++ bootrecover/po/it.po~ | 650 +++++++ .../60-desktop-policy.conf | 10 + .../10-vendor.d/60-desktop-policy.pkla | 14 + gpl-es.html | 298 +++ gpl-it.html | 1032 +++++++++++ gpl.html | 694 +++++++ gpl.txt | 674 +++++++ .../color-schemes/openmamba_green.kcsrc | 28 + kde/apps/konqueror/profiles/resourcesbrowsing | 25 + .../openmamba-green.preview.png | Bin 0 -> 145773 bytes .../openmamba-green/openmamba-green.xml | 227 +++ kde/autostart/kmix.desktop | 95 + kde/bin/konsole-nofork | 66 + kde/config/compizrc | 142 ++ kde/config/kcmartsrc | 14 + kde/config/kcmfonts | 3 + kde/config/kcmthememanagerrc | 2 + kde/config/kdeglobals | 267 +++ kde/config/kdesktoprc.in | 28 + kde/config/kickerrc | 66 + kde/config/kmilodrc | 3 + kde/config/kmixrc | 4 + kde/config/knotifyrc | 10 + kde/config/konsolerc | 2 + kde/config/kpagerrc | 6 + kde/config/kwinrc | 6 + kde/desktop/desktop-common.tar.bz2 | Bin 0 -> 435 bytes kde/desktop/desktop-en.tar.bz2 | Bin 0 -> 368 bytes kde/desktop/desktop-es.tar.bz2 | Bin 0 -> 412 bytes kde/desktop/desktop-fr.tar.bz2 | Bin 0 -> 414 bytes kde/desktop/desktop-it.tar.bz2 | Bin 0 -> 426 bytes kde/scripts/showlog | 21 + kde/scripts/startkde.firsttime.in | 30 + kde/wallpapers/openmamba-wallpaper.desktop.in | 7 + kde/wallpapers/openmamba_bottom.png | Bin 0 -> 78670 bytes kde/wallpapers/openmamba_gray.png | Bin 0 -> 27444 bytes kde/wallpapers/openmamba_green.jpg | Bin 0 -> 79186 bytes kde/wallpapers/openmamba_skydome.png | Bin 0 -> 115265 bytes kde/wallpapers/openmamba_top.png | Bin 0 -> 75958 bytes kde/wallpapers/openmamba_transparent.png | Bin 0 -> 26905 bytes mambabase.lang | 7 + mambabase/mamba-128x128.png | Bin 0 -> 12127 bytes mambabase/mamba-16x16.png | Bin 0 -> 859 bytes mambabase/mamba-22x22.png | Bin 0 -> 1296 bytes mambabase/mamba-32x32.png | Bin 0 -> 2138 bytes mambabase/mamba-48x48.png | Bin 0 -> 3819 bytes mambabase/mamba-64x64.png | Bin 0 -> 5308 bytes mambabase/mambabase-autostart.desktop | 13 + mambabase/mambabase.db | 41 + mambabase/mambabase.desktop | 13 + mambabase/mambabase.kmdr | 1412 ++++++++++++++ mambabase/mambabase.po | 194 ++ mambabase/mambabase.sh | 213 +++ mambabase/po/es.po | 354 ++++ mambabase/po/it.po | 354 ++++ mambabase/po/it.po~ | 350 ++++ mambareport/mambareport.desktop | 13 + mambareport/mambareport.kmdr | 943 ++++++++++ mambareport/openmamba-makereport | 224 +++ mambawelcome.lang | 2 + mambawelcome/config.sample | 15 + mambawelcome/crypth.pl | 14 + mambawelcome/mambawelcome-128x128.png | Bin 0 -> 3851 bytes mambawelcome/mambawelcome-16x16.png | Bin 0 -> 613 bytes mambawelcome/mambawelcome-22x22.png | Bin 0 -> 738 bytes mambawelcome/mambawelcome-32x32.png | Bin 0 -> 992 bytes mambawelcome/mambawelcome-48x48.png | Bin 0 -> 1543 bytes mambawelcome/mambawelcome-64x64.png | Bin 0 -> 1967 bytes mambawelcome/mambawelcome-init | 36 + mambawelcome/mambawelcome.kmdr | 1638 +++++++++++++++++ mambawelcome/mambawelcome.po | 206 +++ mambawelcome/mambawelcome.sh | 162 ++ mambawelcome/po/es.po | 282 +++ mambawelcome/po/it.po | 282 +++ mambawelcome/po/it.po~ | 282 +++ .../distroutils-logs.directory.in | 12 + .../distroutils-netinstall.directory.in | 8 + menu/applications/distroutils.directory.in | 5 + menu/applications/distroutils.menu.in | 18 + menu/applications/logs/dmesg-log.desktop.in | 14 + .../applications/logs/runlevel-log.desktop.in | 14 + .../logs/runlevel0-log.desktop.in | 14 + .../logs/runlevel6-log.desktop.in | 14 + menu/applications/logs/sysinit-log.desktop.in | 14 + .../netinstall/b43-firmware.desktop.in | 19 + .../netinstall/flashplugin.desktop.in | 19 + .../netinstall/jre.desktop.pregpl.in | 14 + .../netinstall/msttcorefonts.desktop.in | 14 + menu/applications/netinstall/skype.desktop.in | 19 + .../netinstall/win32codecs.desktop.in | 14 + .../hicolor/16x16/apps/distromenu-flash.png | Bin 0 -> 811 bytes .../16x16/apps/distromenu-netinstall.png | Bin 0 -> 1094 bytes .../hicolor/16x16/apps/distromenu-skype.png | Bin 0 -> 702 bytes menu/icons/hicolor/16x16/apps/openmamba.png | Bin 0 -> 613 bytes .../hicolor/22x22/apps/distromenu-flash.png | Bin 0 -> 1139 bytes .../22x22/apps/distromenu-netinstall.png | Bin 0 -> 1192 bytes menu/icons/hicolor/22x22/apps/openmamba.png | Bin 0 -> 738 bytes .../hicolor/32x32/apps/distromenu-flash.png | Bin 0 -> 1629 bytes .../32x32/apps/distromenu-netinstall.png | Bin 0 -> 2259 bytes .../hicolor/32x32/apps/distromenu-skype.png | Bin 0 -> 1734 bytes menu/icons/hicolor/32x32/apps/openmamba.png | Bin 0 -> 992 bytes .../hicolor/48x48/apps/distromenu-flash.png | Bin 0 -> 2461 bytes .../48x48/apps/distromenu-netinstall.png | Bin 0 -> 3778 bytes .../hicolor/48x48/apps/distromenu-skype.png | Bin 0 -> 3101 bytes menu/icons/hicolor/48x48/apps/openmamba.png | Bin 0 -> 1543 bytes .../64x64/apps/distromenu-netinstall.png | Bin 0 -> 5013 bytes menu/icons/hicolor/64x64/apps/openmamba.png | Bin 0 -> 1967 bytes menu/netsrpm-install.sh.in | 118 ++ usbinstall.lang | 1 + usbinstall/po/it.po | 85 + usbinstall/usbinstall.desktop | 13 + usbinstall/usbinstall.sh | 149 ++ xramdr/70521-xramdr.kmdr | 638 +++++++ xramdr/README | 1 + xramdr/xramdr-16x16.png | Bin 0 -> 647 bytes xramdr/xramdr-32x32.png | Bin 0 -> 1509 bytes xramdr/xramdr-48x48.png | Bin 0 -> 2429 bytes xramdr/xramdr-64x64.png | Bin 0 -> 3212 bytes xramdr/xramdr.desktop | 12 + 159 files changed, 18268 insertions(+) create mode 100644 ChangeLog create mode 100644 Makefile create mode 100644 SRPMS/b43-firmware/LICENSE create mode 100644 SRPMS/b43-firmware/b43-firmware.spec.in create mode 100644 SRPMS/b43-firmware/distroutils.sysconfig create mode 100644 SRPMS/flashplugin/LICENSE create mode 100644 SRPMS/flashplugin/distroutils.sysconfig create mode 100644 SRPMS/flashplugin/flashplugin.spec.in create mode 100644 SRPMS/jre.pregpl/LICENSE create mode 100644 SRPMS/jre.pregpl/distroutils.sysconfig create mode 100755 SRPMS/jre.pregpl/java-profile.in create mode 100644 SRPMS/jre.pregpl/jre.spec.in create mode 100644 SRPMS/msttcorefonts/LICENSE create mode 100644 SRPMS/msttcorefonts/distroutils.sysconfig create mode 100644 SRPMS/msttcorefonts/msttcorefonts.spec.in create mode 100644 SRPMS/skype/LICENSE create mode 100644 SRPMS/skype/distroutils.sysconfig create mode 100644 SRPMS/skype/skype.spec.in create mode 100644 SRPMS/win32codecs/LICENSE create mode 100644 SRPMS/win32codecs/distroutils.sysconfig create mode 100644 SRPMS/win32codecs/win32codecs.spec.in create mode 100644 SRPMSVERSIONS create mode 100644 VERSION create mode 100644 apt/post-install.conf create mode 100755 apt/post-install.lua create mode 100755 apt/post-install.sh create mode 100644 bootrecover.lang create mode 100644 bootrecover/bootrecover-128x128.png create mode 100644 bootrecover/bootrecover-16x16.png create mode 100644 bootrecover/bootrecover-22x22.png create mode 100644 bootrecover/bootrecover-32x32.png create mode 100644 bootrecover/bootrecover-48x48.png create mode 100644 bootrecover/bootrecover-64x64.png create mode 100755 bootrecover/bootrecover.kmdr create mode 100644 bootrecover/bootrecover.po create mode 100755 bootrecover/bootrecover.sh create mode 100755 bootrecover/bootrecover.sh~ create mode 100644 bootrecover/openmamba-bootrecover.desktop create mode 100644 bootrecover/po/es.po create mode 100644 bootrecover/po/it.po create mode 100644 bootrecover/po/it.po~ create mode 100644 etc/polkit-1/localauthority.conf.d/60-desktop-policy.conf create mode 100644 etc/polkit-1/localauthority/10-vendor.d/60-desktop-policy.pkla create mode 100644 gpl-es.html create mode 100644 gpl-it.html create mode 100644 gpl.html create mode 100644 gpl.txt create mode 100644 kde/apps/kdisplay/color-schemes/openmamba_green.kcsrc create mode 100644 kde/apps/konqueror/profiles/resourcesbrowsing create mode 100644 kde/apps/kthememanager/themes/openmamba-green/openmamba-green.preview.png create mode 100644 kde/apps/kthememanager/themes/openmamba-green/openmamba-green.xml create mode 100644 kde/autostart/kmix.desktop create mode 100755 kde/bin/konsole-nofork create mode 100644 kde/config/compizrc create mode 100755 kde/config/kcmartsrc create mode 100644 kde/config/kcmfonts create mode 100644 kde/config/kcmthememanagerrc create mode 100644 kde/config/kdeglobals create mode 100644 kde/config/kdesktoprc.in create mode 100644 kde/config/kickerrc create mode 100644 kde/config/kmilodrc create mode 100644 kde/config/kmixrc create mode 100755 kde/config/knotifyrc create mode 100644 kde/config/konsolerc create mode 100644 kde/config/kpagerrc create mode 100644 kde/config/kwinrc create mode 100644 kde/desktop/desktop-common.tar.bz2 create mode 100644 kde/desktop/desktop-en.tar.bz2 create mode 100644 kde/desktop/desktop-es.tar.bz2 create mode 100644 kde/desktop/desktop-fr.tar.bz2 create mode 100644 kde/desktop/desktop-it.tar.bz2 create mode 100644 kde/scripts/showlog create mode 100644 kde/scripts/startkde.firsttime.in create mode 100644 kde/wallpapers/openmamba-wallpaper.desktop.in create mode 100644 kde/wallpapers/openmamba_bottom.png create mode 100644 kde/wallpapers/openmamba_gray.png create mode 100644 kde/wallpapers/openmamba_green.jpg create mode 100644 kde/wallpapers/openmamba_skydome.png create mode 100644 kde/wallpapers/openmamba_top.png create mode 100644 kde/wallpapers/openmamba_transparent.png create mode 100644 mambabase.lang create mode 100644 mambabase/mamba-128x128.png create mode 100644 mambabase/mamba-16x16.png create mode 100644 mambabase/mamba-22x22.png create mode 100644 mambabase/mamba-32x32.png create mode 100644 mambabase/mamba-48x48.png create mode 100644 mambabase/mamba-64x64.png create mode 100755 mambabase/mambabase-autostart.desktop create mode 100644 mambabase/mambabase.db create mode 100644 mambabase/mambabase.desktop create mode 100755 mambabase/mambabase.kmdr create mode 100644 mambabase/mambabase.po create mode 100644 mambabase/mambabase.sh create mode 100644 mambabase/po/es.po create mode 100644 mambabase/po/it.po create mode 100644 mambabase/po/it.po~ create mode 100644 mambareport/mambareport.desktop create mode 100755 mambareport/mambareport.kmdr create mode 100755 mambareport/openmamba-makereport create mode 100644 mambawelcome.lang create mode 100644 mambawelcome/config.sample create mode 100755 mambawelcome/crypth.pl create mode 100644 mambawelcome/mambawelcome-128x128.png create mode 100644 mambawelcome/mambawelcome-16x16.png create mode 100644 mambawelcome/mambawelcome-22x22.png create mode 100644 mambawelcome/mambawelcome-32x32.png create mode 100644 mambawelcome/mambawelcome-48x48.png create mode 100644 mambawelcome/mambawelcome-64x64.png create mode 100755 mambawelcome/mambawelcome-init create mode 100755 mambawelcome/mambawelcome.kmdr create mode 100644 mambawelcome/mambawelcome.po create mode 100755 mambawelcome/mambawelcome.sh create mode 100644 mambawelcome/po/es.po create mode 100644 mambawelcome/po/it.po create mode 100644 mambawelcome/po/it.po~ create mode 100644 menu/applications/distroutils-logs.directory.in create mode 100644 menu/applications/distroutils-netinstall.directory.in create mode 100644 menu/applications/distroutils.directory.in create mode 100644 menu/applications/distroutils.menu.in create mode 100644 menu/applications/logs/dmesg-log.desktop.in create mode 100644 menu/applications/logs/runlevel-log.desktop.in create mode 100644 menu/applications/logs/runlevel0-log.desktop.in create mode 100644 menu/applications/logs/runlevel6-log.desktop.in create mode 100644 menu/applications/logs/sysinit-log.desktop.in create mode 100644 menu/applications/netinstall/b43-firmware.desktop.in create mode 100644 menu/applications/netinstall/flashplugin.desktop.in create mode 100644 menu/applications/netinstall/jre.desktop.pregpl.in create mode 100644 menu/applications/netinstall/msttcorefonts.desktop.in create mode 100644 menu/applications/netinstall/skype.desktop.in create mode 100644 menu/applications/netinstall/win32codecs.desktop.in create mode 100644 menu/icons/hicolor/16x16/apps/distromenu-flash.png create mode 100644 menu/icons/hicolor/16x16/apps/distromenu-netinstall.png create mode 100644 menu/icons/hicolor/16x16/apps/distromenu-skype.png create mode 100755 menu/icons/hicolor/16x16/apps/openmamba.png create mode 100644 menu/icons/hicolor/22x22/apps/distromenu-flash.png create mode 100644 menu/icons/hicolor/22x22/apps/distromenu-netinstall.png create mode 100755 menu/icons/hicolor/22x22/apps/openmamba.png create mode 100644 menu/icons/hicolor/32x32/apps/distromenu-flash.png create mode 100644 menu/icons/hicolor/32x32/apps/distromenu-netinstall.png create mode 100644 menu/icons/hicolor/32x32/apps/distromenu-skype.png create mode 100755 menu/icons/hicolor/32x32/apps/openmamba.png create mode 100644 menu/icons/hicolor/48x48/apps/distromenu-flash.png create mode 100644 menu/icons/hicolor/48x48/apps/distromenu-netinstall.png create mode 100644 menu/icons/hicolor/48x48/apps/distromenu-skype.png create mode 100755 menu/icons/hicolor/48x48/apps/openmamba.png create mode 100644 menu/icons/hicolor/64x64/apps/distromenu-netinstall.png create mode 100755 menu/icons/hicolor/64x64/apps/openmamba.png create mode 100644 menu/netsrpm-install.sh.in create mode 100644 usbinstall.lang create mode 100644 usbinstall/po/it.po create mode 100644 usbinstall/usbinstall.desktop create mode 100644 usbinstall/usbinstall.sh create mode 100644 xramdr/70521-xramdr.kmdr create mode 100644 xramdr/README create mode 100644 xramdr/xramdr-16x16.png create mode 100644 xramdr/xramdr-32x32.png create mode 100644 xramdr/xramdr-48x48.png create mode 100644 xramdr/xramdr-64x64.png create mode 100644 xramdr/xramdr.desktop diff --git a/ChangeLog b/ChangeLog new file mode 100644 index 0000000..0db8a08 --- /dev/null +++ b/ChangeLog @@ -0,0 +1,747 @@ +Changes in version 2.2.19 20110423 +- xramdr: removed (now correctly managed by KDE interface/graphics drivers) +- added current version information in SRPMS flash, win32codecs and skype specfiles to allow automatic upgrade +--------------------------------------------------------------------------------- + +Changes in version 2.2.18 20110419 +- mambawelcome.sh: + * revert 2.2.13 domain chanche: don't happen domain to hostname which is not correct +--------------------------------------------------------------------------------- + +Changes in version 2.2.17 20110419 +- compizrc: disable screensaver plugin in default configuration +--------------------------------------------------------------------------------- + +Changes in version 2.2.16 20110321 +- moved pam files for KDM to desktop-base-kde4 +--------------------------------------------------------------------------------- + +Changes in version 2.2.15 20110318 +- mambawelcome.sh: + * update grub.cfg to add other O.S. + * don't run mkinitramfs/mkinitrd, shouldn't be needed anymore with UUID's +--------------------------------------------------------------------------------- + +Changes in version 2.2.14 20110310 +- win32codecs: + * fix specfile broken with codecs containing spaces in name +--------------------------------------------------------------------------------- + +Changes in version 2.2.13 20110310 +- usbinstall.sh: + * format using ext3 filesystem + * fix broken symlink after install +- mambawelcome.sh: + * set domain in /etc/sysconfig/network HOSTNAME for NetworkManager +--------------------------------------------------------------------------------- + +Changes in version 2.2.12 20101205 +- mambareport: + * launch application as user and launch script after as root + * added suport for reporting a brief text describing the problem +--------------------------------------------------------------------------------- + +Changes in version 2.2.11 20101110 +- usbinstall: + * fixed dialog text translation + * change globbing for bootusb archive to also show openmamba-milestone* in + file picker +--------------------------------------------------------------------------------- + +Changes in version 2.2.10 20101028 +- fixed polkit-1 files location +--------------------------------------------------------------------------------- + +Changes in version 2.2.9 20101027 +- usbinstall: + * fixed unmounting of device before formatting + * fixed some texts +- desktop entries: added better texts for Name fields +- mambawelcome: + * fixed output to logfile + * don't abort if user creation fails to allow OEM system reset by removing + added fields from /root/.installer.conf +--------------------------------------------------------------------------------- + +Changes in version 2.2.8 20101023 +- usbinstall: + * installation updated with new kernel 2.6.33 and Dracut based boot + * make texts and translation more professional +--------------------------------------------------------------------------------- + +Changes in version 2.2.7 20100919 +- bootrecover: + * sync with updates incorrectly applied in livecd-tools package + * added core to recreate initramfs's +--------------------------------------------------------------------------------- + +Changes in version 2.2.6 20100824 +- mambareport: + * replace cat with tail of /var/log/wicd.log +--------------------------------------------------------------------------------- + +Changes in version 2.2.5 20100813 +- mambareport: + * updated name for /var/log/initd.sysinit.start + * added rootdir support using $ROOT environment variable +--------------------------------------------------------------------------------- + +Changes in version 2.2.4 20100724 +- added polkit-1 localauthority configuration file for group sysadmin +- added PackageKit configuration (no password) for sysadmin group +--------------------------------------------------------------------------------- + +Changes in version 2.2.3 20100721 +- added usbinstall tool for preparing USB storage devices with openmamba live +--------------------------------------------------------------------------------- + +Changes in version 2.2.2 20100618 +- flash plugin: updated to 10.1 and renamed to flashplayer.so +--------------------------------------------------------------------------------- + +Changes in version 2.2.1 20100526 +- sysinit-log.desktop: fixed sysinit file name +--------------------------------------------------------------------------------- + +Changes in version 2.2 20100218 +- mambabase: now uses smart instead of apt +--------------------------------------------------------------------------------- + +Changes in version 2.1.24 20100219 +- kdeglobals: fixed to use default openmamba settings with QtCurve-KDE3 +--------------------------------------------------------------------------------- + +Changes in version 2.1.23 20100103 +- mambabase: fixed Autostart file to comply with KDE 4.3 +- restore konsole.nofork, still needed by installnetsrpm +--------------------------------------------------------------------------------- + +Changes in version 2.1.22 20091230 +- removed kde4 components startkde.firsttime and konsole.nofork +- removed installation of default desktop templates +--------------------------------------------------------------------------------- + +Changes in version 2.1.21 20091221 +- compizrc: + * window resizer set to start when mouse goes to bottom-right corner + * screen saver set to start whit left mouse click in bottom-right corner +--------------------------------------------------------------------------------- + +Changes in version 2.1.20 20091120 +- mambawelcome: added spanish translation (thanks to Natalia) +- mambabase: added spanish trasnlation (thanks to Natalia) +- mambawelcome: added support for html licenses and italian and spanish translations +--------------------------------------------------------------------------------- + +Changes in version 2.1.19 20091112 +- openmamba-makereport: + * remove old references to modprobe.conf.d and modprobe.conf + * add WICD log file +--------------------------------------------------------------------------------- + +Changes in version 2.1.18 20091112 +- mambabase.kmdr: launch wicd-client in configure network button +- mambabase.kmdr: remove references tu SUN java check buttons removed in previous release +--------------------------------------------------------------------------------- + +Changes in version 2.1.17 20091104 +- mambabase.kmdr: removed SUN java non open source installation choice as it is installed by default +--------------------------------------------------------------------------------- + +Changes in version 2.1.16 20091031 +- fixed icons for desktop entries +- fixed showlog script for KDE 4 +--------------------------------------------------------------------------------- + +Changes in version 2.1.15 20091020 +- mambawelcome: don't create user in plugdev group because it does not exist any longer +- mambawelcome: include /etc/sysconfg/i18n as a workaround for missing translation problem +--------------------------------------------------------------------------------- + +Changes in version 2.1.14 20091010 +- added pam.d configuration files for kde taken from kdebase +--------------------------------------------------------------------------------- + +Changes in version 2.1.13 20090929 +- switch default theme to QtCurve +--------------------------------------------------------------------------------- + +Changes in version 2.1.12 20090913 +- added apt post-install script +--------------------------------------------------------------------------------- + +Changes in version 2.1.11 20090910 +- skype: fixed specfile for current (2.1.0.47) release +--------------------------------------------------------------------------------- + +Changes in version 2.1.10 20090905 +- mambawelcome: fixed typo in italian translation +--------------------------------------------------------------------------------- + +Changes in version 2.1.9 20090810 +- mambawelcome: export HOME=/root before launching kde3 stuff or dcop server won't start +--------------------------------------------------------------------------------- + +Changes in version 2.1.8 20090803 +- flash plugin: remove --strip-components tar option to work with recent upstream packages +- netsrmps install desktop files: added KDE4 support using konsole-nofork +--------------------------------------------------------------------------------- + +Changes in version 2.1.7 20090719 +- compizrc: set sync_to_vblank=false to fix slowness with intel driver and DRI2 +--------------------------------------------------------------------------------- + +Changes in version 2.1.6 20090623 +- mambawelcome: start in rc5.d instead of inside postplug because Xorg 1.6 requires HAL running +--------------------------------------------------------------------------------- + +Changes in version 2.1.5 20090615 +- mambabase: use rpm -q --whatprovides to check for existing packages +--------------------------------------------------------------------------------- + +Changes in version 2.1.4 20090521 +- compizrc: added openmamba 2 cube skydome, top and bottom images +--------------------------------------------------------------------------------- + +Changes in version 2.1.3 20090519 +- compizrc: added configuration with screensaver module enabled +--------------------------------------------------------------------------------- + +Changes in version 2.1.2 20090512 +- mambabase.sh: support KDE4 home dir location (fixes removal from autostart after first run) +- mambabase: fixed konsole options for KDE4 and set background mode +- added workaround script konsole-nofork +- netsrpminstall.sh: support KDE4 kdialog options using workaround script konsole-nofork +--------------------------------------------------------------------------------- + +Changes in version 2.1.1 20090331 +- b43-firmware: added specfile for automatic firmware download and extraction +--------------------------------------------------------------------------------- + +Changes in version 2.1.0 20090305 +- mambawelcome: switch configuration from KDE3 to KDE4 +--------------------------------------------------------------------------------- + +Changes in version 2.0.41 20090303 +- kdeglobals: add default shortcut settings to avoid wrong keyboard hotkeys on first boot from + live media +--------------------------------------------------------------------------------- + +Changes in version 2.0.40 20090127 +- openmamba-makereport: added more informations +--------------------------------------------------------------------------------- + +Changes in version 2.0.39 20090120 +- mambareport: added kommander based interface for openmamba-makereport +- openmamba-makereport: add /etc/asound.* info +- openmamba-makereport: add installed kernel packages list +--------------------------------------------------------------------------------- + +Changes in version 2.0.38 20090118 +- xramdr: added script for dual-head display configuration +--------------------------------------------------------------------------------- + +Changes in version 2.0.37 20090116 +- Makefile: fixed installation of recently added config files +--------------------------------------------------------------------------------- + +Changes in version 2.0.36 20090111 +- openmamba-makereport: add /proc/cpuinfo information +--------------------------------------------------------------------------------- + +Changes in version 2.0.35 20090107 +- kcmartsrc: added default file with server disabled +- knotifyrc: added default configuration for use of external player +- kpagerrc: added default configuration for single desktop +--------------------------------------------------------------------------------- + +Changes in version 2.0.34 20081230 +- mambawelcome: restore mixer status before starting to prevent value loss in case of + shutdown from mambawelcome +--------------------------------------------------------------------------------- + +Changes in version 2.0.33 20081219 +- network installations: give full patch of KDE3 konsole and kdialog for KDE4 + compatibility as a temporary workaround +--------------------------------------------------------------------------------- + +Changes in version 2.0.32 20081212 +- openmamba-makereport: added script for generating system reports +--------------------------------------------------------------------------------- + +Changes in version 2.0.31 +- flashplugin: change pointers to latest release +- kickerrc: revert compizpagerapplet change +- kickerrc: replace konqueror button with firefox +--------------------------------------------------------------------------------- + +Changes in version 2.0.30 +- flashplugin: change pointers to latest release, as 9.0.48 download is no longer available +--------------------------------------------------------------------------------- + +Changes in version 2.0.29 +- kickerrc: enable use of compizpagerapplet in place of default minpagerapplet +- kdeglobals: fix configuration of standard font +--------------------------------------------------------------------------------- + +Changes in version 2.0.28 +- kdeglobals: set Standard Font font size to 9pt as default +--------------------------------------------------------------------------------- + +Changes in version 2.0.27 +- kcmfonts: add file to set 96dpi as default KDE font size +--------------------------------------------------------------------------------- + +Changes in version 2.0.26 +- mambawelcome.sh: remove livecd hostname when configuring /etc/hosts +--------------------------------------------------------------------------------- + +Changes in version 2.0.25 +- kmilodrc: added default configuration to support "Front" mixer channel +--------------------------------------------------------------------------------- + +Changes in version 2.0.24 +- compizrc: modify to support cubeaddon plugin in compiz 0.7.6 +--------------------------------------------------------------------------------- + +Changes in version 2.0.23 +- added skype SRPM installation +- mambabase: added skype to non open source installations +- mambabase: set busy cursor during script execution +- compizrc: scale bottom image and top image +--------------------------------------------------------------------------------- + +Changes in version 2.0.22 +- mambabase: updated groups and descriptions; added server group +- mambawelcome: restore pre-livecd location of kde configuration +--------------------------------------------------------------------------------- + +Changes in version 2.0.21 +- mambawelcome: allow to go back to user dialog from system dialog +--------------------------------------------------------------------------------- + +Changes in version 2.0.20 +- kmix.desktop: added autostart file +- kickerrc: added kontact; removed oo writer +--------------------------------------------------------------------------------- + +Changes in version 2.0.19 +- kickerrc: default config file with many customizations +- konsolerc: added default konsole settings with transparent background +--------------------------------------------------------------------------------- + +Changes in version 2.0.18 +- bootrecover: removed "reboot" button in final dialog +- Flash SRPMS: revert to 9.0.48; 9.0.124 still has lots of problems with + konqueror +--------------------------------------------------------------------------------- + +Changes in version 2.0.17 +- Flash SRPMS: update pointers to current release (9.0.124) +--------------------------------------------------------------------------------- + +Changes in version 2.0.16 +- compizrc: replace ccsrc to support compiz >= 0.7.0 +--------------------------------------------------------------------------------- + +Changes in version 2.0.15 +- bootrecover: + * moved from livecd-tools + * added italian translation + * desktop file: run as root +--------------------------------------------------------------------------------- + +Changes in version 2.0.14 +- mambawelcome.sh: configure swap device in suspend.conf and recreate initramfs +--------------------------------------------------------------------------------- + +Changes in version 2.0.13 +- kdesktoprc: enable desktop device icons by default +--------------------------------------------------------------------------------- + +Changes in version 2.0.12 +- mambawelcome.sh: run grub-mkdevicemap to recreate the mappings +- postplug/mambawelcome: launch dcopserver with full path +- mambawelcome.sh: install kdeglobals and kxkbrc from root configuration +--------------------------------------------------------------------------------- + +Changes in version 2.0.11 +- mambawelcome.kmdr: don't launch mambawelcome.sh in the background +- mambawelcome.kmdr: fix standard error redirection +--------------------------------------------------------------------------------- + +Changes in version 2.0.10 +- mambawelcome.kmdr: fix error logging when launching mambawelcome.sh +- mambawelcome.kmdr: added checks for invalid chars in some fields +--------------------------------------------------------------------------------- + +Changes in version 2.0.9 +- mambabase.sh: added italian translation +- flash plugins: added new download pointer + (commented out because still old 9.0.48 is the best working) +--------------------------------------------------------------------------------- + +Changes in version 2.0.8 +- mambawelcome.sh: added italian translation +--------------------------------------------------------------------------------- + +Changes in version 2.0.7 +- mambabase.kmdr: add button for network configuration if network is down +- mambabase.kmdr and mambabase.sh: add checks for installed packages +--------------------------------------------------------------------------------- + +Changes in version 2.0.6 +- rename mamba to mambabase +- added mambabase.db for external inclusion +--------------------------------------------------------------------------------- + +Changes in version 2.0.5 +- mambabase.sh: added pcmcia-utils and mambatray to base packages +- kdesktoprc: set openmambass as default screen saver +- mambawelcome: disable DPMS features +--------------------------------------------------------------------------------- + +Changes in version 2.0.4 +- mamba.desktop: replace category X-OpenMamba with X-openmamba +--------------------------------------------------------------------------------- + +Changes in version 2.0.3 +- menu: openmamba menu moved under System menu +- mamba: script renamed to mambabase.sh and logfile to ~/.mambabase.log +- mamba: cosmethic fixes and translations +--------------------------------------------------------------------------------- + +Changes in version 2.0.2 +- install2.sh: parse apt-get output for every installation group +--------------------------------------------------------------------------------- + +Changes in version 2.0.1 +- mambawelcome.kmdr: minor cosmetic fixes +- mambawelcome.kmdr: set static /root dir for configuration and log file +- mambawelcome postplug: enable dcopserver during session +--------------------------------------------------------------------------------- + +Changes in version 2.0 +- mambawelcome: new tool that handles OEM installations (get details at first boot) +--------------------------------------------------------------------------------- + +Changes in version 1.8.12 +- install default kwin settings with default settings for compiz: + * ClickToFocus and ClickRaise behaviour on + * ElectricBorders on +- Makefile: give full path as %_sourcedir to work with more recent rpm (4.4.7) +- install default kickerrc to set small sized kicker by default +- set default screen saver in kdesktoprc +--------------------------------------------------------------------------------- + +Changes in version 1.8.11 +- install default ccsm settings +- add config shortcuts support in kdeglobals +- added openmamba_transparent wallpaper +- mamba: + * install compiz-fusion-plugins-main and compiz-fusion-plugins-extra +--------------------------------------------------------------------------------- + +Changes in version 1.8.10 +- installer2.sh: + * add ndisgtk and ftp to base installs + * add libqt4 to base installs (so skype installs automatically) + * add rpm-devel to devel installs + * add alsaplayer-output-alsa and alsaplayer-output-oss to base installs +--------------------------------------------------------------------------------- + +Changes in version 1.8.9 +- mamba: + * added specific desktop icons +--------------------------------------------------------------------------------- + +Changes in version 1.8.8 +- installer2.sh: + * update packages group lists + * added Check Again button when network check fails +--------------------------------------------------------------------------------- + +Changes in version 1.8.7 +- installer2.sh: + * move qjackctl from professional audio to general install group + * Office group: install OpenOffice-help for current language +--------------------------------------------------------------------------------- + +Changes in version 1.8.6 +- mamba.kmdr: + * bugfix: set 'checked' variables for Sun Java Runtime and Developers Kit +--------------------------------------------------------------------------------- + +Changes in version 1.8.5 +- mamba.kmdr: + * added audio players and base development install groups + * added installation options for Sun Java Developers Kit and Runtime Environment + * Flash plugin: remove gnash if present + * initial url check: send new installation and processor type information +--------------------------------------------------------------------------------- + +Changes in version 1.8.4 +- flash plugin: nspluginscan: don't execute; +- mamba: execute nspluginscan as user after installing flash plugin +--------------------------------------------------------------------------------- + +Changes in version 1.8.3 +- mamba: + * added italian translation +--------------------------------------------------------------------------------- + +Changes in version 1.8.2 +- mamba: + * add Details log box under progress indicator + * add "system update" option +--------------------------------------------------------------------------------- + +Changes in version 1.8.1 +- flash plugin: run nspluginscan after installation +--------------------------------------------------------------------------------- + +Changes in version 1.8.0 +- flash plugin update from Adobe Labs (082207) + (FIXME: does not work: just added commented) +- rpms release changed to mamba +- added mamba base network installer/updater +- netsrmpinstall script: use sudo to run rpm +- SRPM installations: don't require root privileges anymore +--------------------------------------------------------------------------------- + +Changes in version 1.7.6 +- startkde.firsttime: launch keyboard setup tool if LANG is set to en +--------------------------------------------------------------------------------- + +Changes in version 1.7.5 +- set default fonts in kdeglobals and icon size (32) +--------------------------------------------------------------------------------- + +Changes in version 1.7.4 +- install global kcmthememanagerrc with openmamba-green theme +- install startkde.firsttime in kdebindir +--------------------------------------------------------------------------------- + +Changes in version 1.7.3 +- openmamba-green theme: set default fonts to size 9 +- openmamba-green theme: disable most kwin sounds +--------------------------------------------------------------------------------- + +Changes in version 1.7.2 +- flashplugin: update to 9.0.48.0 +--------------------------------------------------------------------------------- + +Changes in version 1.7.1 +- openmamba-green theme update to 1.1, added Borealis sounds +--------------------------------------------------------------------------------- + +Changes in version 1.7.0 +- added new system wide theme openmamba-green +- remove extension (.png) from wallpaper file references +--------------------------------------------------------------------------------- + +Changes in version 1.6.25 +- ldap scripts removed (they have been moved to the new package ldap-scripts) +- removed the link menu for jre: now is provided by the gpl package java-runtime +--------------------------------------------------------------------------------- + +Changes in version 1.6.24 +- added some missing translations in the desktop files +- fixed categories of QiLinux desktop files +- Makefile: install the sysconfig file +- set title and icon in kdialog windows used to show software licences +--------------------------------------------------------------------------------- + +Changes in version 1.6.23 +- dinamically build srpm packages from sources :) +- sync variable paths (@path@) between Makefile and .in desktop files +- showlog: display a better icon than the empty one +- create the distro menu using the new freedesktop standard instead of the + obsolete kde technology +--------------------------------------------------------------------------------- + +Changes in version 1.6.22 +- updated flash srpm package +- created the file /etc/sysconfig/qilinuxutils +- win32codecs: added support for network connections trough a proxy server +- updated/fixed jre srpm package (jre version 1.6.0) +--------------------------------------------------------------------------------- + +Changes in version 1.6.21 +- fplash update to 7.0.69 +--------------------------------------------------------------------------------- + +Changes in version 1.6.20 +- updated jre srpm package +--------------------------------------------------------------------------------- + +Changes in version 1.6.19 +- owner changed for SRPMS packages +--------------------------------------------------------------------------------- + +Changes in version 1.6.18 +- added kde configuration file kdeglobals (moved from kdebase) +- the jre srpm now provides j2re (needed for instance by the limewire rpm) +--------------------------------------------------------------------------------- + +Changes in version 1.6.17 +- added support for multiple QiLinux platforms +- updated Makefile: added DISTROID, DISTROICON paramethers, 'make all' label, + a rule to generate files from .in sources +- moved qilinux icons from crystalsvg to hicolor folders +- added desktop files for KDE wallpapers +--------------------------------------------------------------------------------- + +Changes in version 1.6.16 +- flash srpm: yet another fix in build and installation paths +--------------------------------------------------------------------------------- + +Changes in version 1.6.15 +- fixes in flash srpm package +--------------------------------------------------------------------------------- + +Changes in version 1.6.14 +- updated flash srpm package +--------------------------------------------------------------------------------- + +Changes in version 1.6.13 +- updated jre srpm package +--------------------------------------------------------------------------------- + +Changes in version 1.6.12 +- fixes to background image and kdesktoprc +--------------------------------------------------------------------------------- + +Changes in version 1.6.11 +- add new default background image (QiLinux Supernova) +--------------------------------------------------------------------------------- + +Changes in version 1.6.10 +- removed comps.xml (it's now provided by qilinux-comps-%{platform} packages) +--------------------------------------------------------------------------------- + +Changes in version 1.6.9 +- comps.xml: added kdebluetooth,don't set kat as default,update package names +--------------------------------------------------------------------------------- + +Changes in version 1.6.8 +- comps.xml: added kdeaddons and kat +--------------------------------------------------------------------------------- + +Changes in version 1.6.7 +- added spanish localization +--------------------------------------------------------------------------------- + +Changes in version 1.6.6 +- added french localization +--------------------------------------------------------------------------------- + +Changes in version 1.6.5 +- jre: fixed symlink in the /usr/lib/mozilla/plugins +--------------------------------------------------------------------------------- + +Changes in version 1.6.4 +- netsrpm-install.sh: added function to check if package is already installed +- w32codecs: added others repositories +- flash-plugin: new version updates +- kdetools: icon name changed in msttcorefonts.desktop.in +- kdetools: added qilinux icons (size 22x22) +--------------------------------------------------------------------------------- + +Changes in version 1.6.3 +- startkde.firsttime: first copy default KDE desktop files, then ours +--------------------------------------------------------------------------------- + +Changes in version 1.6.2 +- win32codes: try downloading from alternative repositories in case of failure +- add shutdown and reboot QiLinux menu entries +--------------------------------------------------------------------------------- + +Changes in version 1.6.1 +- jre: new version updates +- Makefile: minor fix +--------------------------------------------------------------------------------- + +Changes in version 1.6.0 +- resourcesbrowsing: add support for KDE 3.4 + Note: this breaks compatibility of this release of QiLinux-utils and KDE 3.3 +--------------------------------------------------------------------------------- + +Changes in version 1.5.3 +- jre: new version, fixes some build problems +--------------------------------------------------------------------------------- + +Changes in version 1.5.2 +- added jdk SRPM package +--------------------------------------------------------------------------------- + +Changes in version 1.5.1 +- comps.xml file update +--------------------------------------------------------------------------------- + +Changes in version 1.5.0 +- comps.xml file update +--------------------------------------------------------------------------------- + +Changes in version 1.4.9 +- comps.xml file update +--------------------------------------------------------------------------------- + +Changes in version 1.4.8 +- added LICENSE to msttcorefonts +--------------------------------------------------------------------------------- + +Changes in version 1.4.7 +- jre SRPM fixes +--------------------------------------------------------------------------------- + +Changes in version 1.4.6 +- comps.xml file update +--------------------------------------------------------------------------------- + +Changes in version 1.4.5 +- comps.xml file update +--------------------------------------------------------------------------------- + +Changes in version 1.4.4 +- comps.xml file update +--------------------------------------------------------------------------------- + +Changes in version 1.4.3 +- new comps.xml file +--------------------------------------------------------------------------------- + +Changes in version 1.4.2 +- added automatic downloader for Java Runtime Environment +--------------------------------------------------------------------------------- + +Changes in version 1.4.1 +- added default KDE desktop configuration and wallpaper (QiBubbles) +--------------------------------------------------------------------------------- + +Changes in version 1.4.0 +- added LICENSE to flash +- added kdialog based addons installation with EULA support +--------------------------------------------------------------------------------- + +Changes in version 1.3.4 +- added comps.xml file in qilinuxdir/comps/i586 +--------------------------------------------------------------------------------- + +Changes in version 1.3.3 +- ldap_functions: read and store LDAPHOSTDC from /etc/sysconfig/ldap +--------------------------------------------------------------------------------- + +Changes in version 1.3.2 +- changed description for QiLinux desktop menu entry for system startup logs +- added QiLinux icons under crystalsvg 16x16,32x32,48x48,64x64 dirs +--------------------------------------------------------------------------------- + +Changes in version 1.3.1 +- ldap_sysadmin_conf.sh: configure sysadmin rootbinddn in /etc/ldap.conf +--------------------------------------------------------------------------------- + +Changes in version 1.3 +- w32codecs +- Makefile cleanups +--------------------------------------------------------------------------------- diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..5de010e --- /dev/null +++ b/Makefile @@ -0,0 +1,308 @@ +# Makefile for openmamba-desktop-base +# Copyright (C) 2004-2009 by Silvan Calarco +# Copyright (C) 2005-2007 by Davide Madrisan + +include VERSION +include SRPMSVERSIONS + +PACKAGE = desktop-base-openmamba + +DISTROID = openmamba + +RPM_VENDOR = openmamba +RPM_DISTRIBUTION = openmamba +RPM_DISTROEXT = mamba + +SYSCONFIGFILE = netsrpminstall + +WALLPAPER = openmamba-wallpaper +WALLPAPERS = openmamba_green.jpg,openmamba_gray.png,openmamba_transparent.png +DEFAULT_WALLPAPER = openmamba_green.jpg +COMPIZ_WALLPAPERS = openmamba_skydome.png,openmamba_top.png,openmamba_bottom.png + +#SCREENSAVER = $(DISTROid).desktop +SCREENSAVER = + +DISTROid = $(shell echo $(DISTROID) | tr A-Z a-z) +DISTROICON = $(DISTROid) + +DESTDIR = + +prefix = /usr +exec_prefix = ${prefix} +sysconfdir = /etc +sbindir = ${exec_prefix}/sbin +bindir = ${exec_prefix}/bin +datadir = ${prefix}/share +initrddir = ${sysconfdir}/rc.d/init.d +mandir = ${prefix}/usr/share/man +sysconfigdir= ${sysconfdir}/sysconfig +mambabasedatadir = ${datadir}/openmamba/mambabase +mambareportdatadir = ${datadir}/openmamba/mambareport +mambawelcomedatadir = ${datadir}/openmamba/mambawelcome +mambaimagesdir = ${datadir}/openmamba/images +xramdrdatadir = ${datadir}/openmamba/xramdr +bootrecoverdatadir = ${datadir}/openmamba/bootrecover +usbinstalldatadir = ${datadir}/openmamba/usbinstall +iconsdir = ${datadir}/icons/hicolor +kdeprefixdir = $(shell kde-config --prefix) +kde4prefixdir = $(shell kde4-config --prefix) +kdedatadir = $(kdeprefixdir)/share +kde4bindir = $(kde4prefixdir)/bin +kdeautostartdir = ${kdedatadir}/autostart +kdeconfigdir = ${kdedatadir}/config +kdewallpapersdir = ${kdedatadir}/wallpapers +localesdir = ${datadir}/locale +kdelocalesdir = ${kdedatadir}/locale +aptconfdir = ${sysconfdir}/apt/apt.conf.d +aptscriptsdir = ${datadir}/apt/scripts + +xdg_appsdir = ${datadir}/applications +xdg_directorydir = ${datadir}/desktop-directories +xdg_menudir = ${sysconfdir}/xdg/menus +xdg_mergedmenudir = $(xdg_menudir)/applications-merged + +distrorootdir = ${datadir}/$(DISTROid) +distrobindir = ${distrorootdir}/bin +distrosrpmsdir = ${distrorootdir}/SRPMS +distrokdedir = ${distrorootdir}/kde +srcdir = . + +INSTALL = /usr/bin/install +INSTALL_PROGRAM = ${INSTALL} -m 755 +INSTALL_DATA = ${INSTALL} -m 644 +INSTALL_DIR = ${INSTALL} -d -m 755 +INSTALL_SCRIPT = ${INSTALL_PROGRAM} + +pck_kdedesktop = $(wildcard kde/desktop/*) +#pck_srpms = flashplugin jre msttcorefonts win32codecs +pck_srpms = flashplugin msttcorefonts win32codecs skype b43-firmware + +pck_infiles := $(wildcard kde/config/*.in \ + kde/scripts/*.in \ + kde/wallpapers/*.in \ + menu/*.in menu/applications/*.in menu/applications/*/*.in \ + SRPMS/*/*.in) +pck_sysconfigfile := distroutils.sysconfig + +distdir = $(PACKAGE)-$(VERSION) +dist_archive = $(distdir).tar.bz2 + +pck_catalogs := $(wildcard mambabase/po/*.po) +pck_catalogs1 := $(wildcard mambawelcome/po/*.po) +pck_catalogs2 := $(wildcard bootrecover/po/*.po) +pck_catalogs3 := $(wildcard usbinstall/po/*.po) + +.SUFFIXES: +.SUFFIXES: .in .po .mo + +.in:; @echo "generating $@..."; \ + sed "s,@distroID@,$(DISTROID),g;\ + s,@distroid@,$(DISTROid),g;\ + s,@distroicon@,$(DISTROICON),g;\ + s,@distribution@,$(RPM_DISTRIBUTION),g;\ + s,@distroext@,$(RPM_DISTROEXT),g;\ + s,@vendor@,$(RPM_VENDOR),g;\ + s,@sysconfigfile@,$(SYSCONFIGFILE),g;\ + s,@datadir@,${datadir},g;\ + s,@distrobindir@,$(distrobindir),g;\ + s,@distrokdedir@,$(distrokdedir),g;\ + s,@distrosrpmsdir@,$(distrosrpmsdir),g;\ + s,@wallpaper@,$(DEFAULT_WALLPAPER),g;\ + s,@screensaver@,${SCREENSAVER},g;\ + s,@flashpluginver@,${FLASHPLUGIN_VERSION},g;\ + s,@win32codecsver@,${WIN32CODECS_VERSION},g;\ + s,@skypever@,${SKYPE_VERSION},g" $< > $@ + +all: dist-update locales + +dist-update: $(pck_infiles:.in=) + +.po.mo:; msgfmt $< -o $@ + +locales: $(pck_catalogs:.po=.mo) $(pck_catalogs1:.po=.mo) $(pck_catalogs2:.po=.mo) $(pck_catalogs3:.po=.mo) + +install-locales: locales + @for f in $(pck_catalogs); do\ + lang=`echo $$f | sed 's,.*/\(.*\)\.po,\1,'`;\ + echo "installing i18n file for language \`$$lang'...";\ + dir="$(DESTDIR)$(kdelocalesdir)/$$lang/LC_MESSAGES";\ + $(INSTALL_DIR) $$dir;\ + $(INSTALL_DATA) $${f/.po/.mo} $$dir/mambabase.mo;\ + done + @for f in $(pck_catalogs1); do\ + lang=`echo $$f | sed 's,.*/\(.*\)\.po,\1,'`;\ + echo "installing i18n file for language \`$$lang'...";\ + dir="$(DESTDIR)$(kdelocalesdir)/$$lang/LC_MESSAGES";\ + $(INSTALL_DIR) $$dir;\ + $(INSTALL_DATA) $${f/.po/.mo} $$dir/mambawelcome.mo;\ + done + @for f in $(pck_catalogs2); do\ + lang=`echo $$f | sed 's,.*/\(.*\)\.po,\1,'`;\ + echo "installing i18n file for language \`$$lang'...";\ + dir="$(DESTDIR)$(kdelocalesdir)/$$lang/LC_MESSAGES";\ + $(INSTALL_DIR) $$dir;\ + $(INSTALL_DATA) $${f/.po/.mo} $$dir/bootrecover.mo;\ + done + @for f in $(pck_catalogs3); do\ + lang=`echo $$f | sed 's,.*/\(.*\)\.po,\1,'`;\ + echo "installing i18n file for language \`$$lang'...";\ + dir="$(DESTDIR)$(localesdir)/$$lang/LC_MESSAGES";\ + $(INSTALL_DIR) $$dir;\ + $(INSTALL_DATA) $${f/.po/.mo} $$dir/usbinstall.mo;\ + done + +install-kde-distro-addons: dist-update + @$(INSTALL_DIR) $(DESTDIR)$(sysconfdir) + @$(INSTALL_DIR) $(DESTDIR)$(bindir) + @$(INSTALL_DIR) $(DESTDIR)$(datadir) + @$(INSTALL_DIR) $(DESTDIR)$(sbindir) + @$(INSTALL_DIR) $(DESTDIR)$(distrobindir) + @$(INSTALL_DIR) $(DESTDIR)$(kde4bindir) + @$(INSTALL_DIR) $(DESTDIR)$(kdedatadir) + @$(INSTALL_DIR) $(DESTDIR)$(kdeautostartdir) + @$(INSTALL_DIR) $(DESTDIR)$(kdeconfigdir) + @$(INSTALL_DIR) $(DESTDIR)$(kdewallpapersdir) + @$(INSTALL_DIR) $(DESTDIR)$(mambaimagesdir) + cp -r etc/polkit-1 $(DESTDIR)$(sysconfdir)/ + $(INSTALL_SCRIPT) kde/scripts/showlog $(DESTDIR)$(distrobindir) + cp -r menu/icons/ $(DESTDIR)$(datadir)/icons/ + cp -r kde/apps $(DESTDIR)$(kdedatadir) + $(INSTALL_DATA) kde/autostart/kmix.desktop $(DESTDIR)$(kdeautostartdir)/kmix.desktop + $(INSTALL_DATA) kde/config/*rc $(DESTDIR)$(kdeconfigdir)/ + $(INSTALL_DATA) kde/config/kcmfonts $(DESTDIR)$(kdeconfigdir)/kcmfonts + $(INSTALL_DATA) kde/config/kdeglobals $(DESTDIR)$(kdeconfigdir)/kdeglobals + $(INSTALL_DATA) kde/wallpapers/$(WALLPAPER).desktop $(DESTDIR)$(kdewallpapersdir) + $(INSTALL_DATA) kde/wallpapers/{$(WALLPAPERS)} $(DESTDIR)$(kdewallpapersdir) + $(INSTALL_DATA) kde/wallpapers/{$(COMPIZ_WALLPAPERS)} $(DESTDIR)$(mambaimagesdir) + $(INSTALL_SCRIPT) kde/bin/konsole-nofork $(DESTDIR)$(kde4bindir) + +install-netsrpm: menu/netsrpm-install.sh + @$(INSTALL_DIR) $(DESTDIR)$(distrobindir) + $(INSTALL_PROGRAM) menu/netsrpm-install.sh $(DESTDIR)$(distrobindir)/netsrpm-install.sh + +install-distromenu: dist-update + @$(INSTALL_DIR) $(DESTDIR)$(xdg_directorydir) + $(INSTALL_DATA) menu/applications/distroutils.directory \ + $(DESTDIR)$(xdg_directorydir)/$(DISTROID).directory + $(INSTALL_DATA) menu/applications/distroutils-netinstall.directory \ + $(DESTDIR)$(xdg_directorydir)/$(DISTROID)-NetInstall.directory + $(INSTALL_DATA) menu/applications/distroutils-logs.directory \ + $(DESTDIR)$(xdg_directorydir)/$(DISTROID)-Logs.directory + @$(INSTALL_DIR) $(DESTDIR)$(xdg_mergedmenudir) + $(INSTALL_DATA) menu/applications/distroutils.menu \ + $(DESTDIR)$(xdg_mergedmenudir)/$(DISTROid).menu + @$(INSTALL_DIR) $(DESTDIR)$(xdg_appsdir) + for pck in $(pck_srpms); do\ + $(INSTALL_DATA) menu/applications/netinstall/$$pck.desktop \ + $(DESTDIR)$(xdg_appsdir)/$(DISTROid)-$$pck.desktop;\ + done + cp menu/applications/logs/*.desktop $(DESTDIR)$(xdg_appsdir) + +install-srpms: + @$(INSTALL_DIR) $(DESTDIR)$(distrosrpmsdir) + @$(INSTALL_DIR) $(DESTDIR)$(sysconfigdir) + @cat SRPMSVERSIONS > $(DESTDIR)$(sysconfigdir)/$(SYSCONFIGFILE) + for pck in $(pck_srpms); do\ + rpmbuild -bs SRPMS/$$pck/$${pck}.spec \ + --define="_sourcedir `pwd`/SRPMS/$$pck" \ + --define="_srcrpmdir $(DESTDIR)$(distrosrpmsdir)" || exit 1;\ + cat SRPMS/$$pck/$(pck_sysconfigfile) >> \ + $(DESTDIR)$(sysconfigdir)/$(SYSCONFIGFILE);\ + done + +install-icons: + @for i in 16x16 22x22 32x32 48x48 64x64 128x128; do \ + $(INSTALL_DIR) $(DESTDIR)$(iconsdir)/$$i/apps/; \ + $(INSTALL_DATA) mambabase/mamba-$$i.png $(DESTDIR)$(iconsdir)/$$i/apps/mamba.png; \ + $(INSTALL_DATA) mambawelcome/mambawelcome-$$i.png $(DESTDIR)$(iconsdir)/$$i/apps/mambawelcome.png; \ +# $(INSTALL_DATA) xramdr/xramdr-$$i.png $(DESTDIR)$(iconsdir)/$$i/apps/xramdr.png; \ + $(INSTALL_DATA) bootrecover/bootrecover-$$i.png $(DESTDIR)$(iconsdir)/$$i/apps/bootrecover.png; \ + done + +install-mambabase: + @$(INSTALL_DIR) $(DESTDIR)$(mambabasedatadir) + $(INSTALL_SCRIPT) mambabase/mambabase.kmdr $(DESTDIR)$(mambabasedatadir) + $(INSTALL_DATA) mambabase/mambabase.db $(DESTDIR)$(mambabasedatadir) + $(INSTALL_SCRIPT) mambabase/mambabase.sh $(DESTDIR)$(mambabasedatadir) + $(INSTALL_DATA) mambabase/mambabase.desktop $(DESTDIR)$(xdg_appsdir) + $(INSTALL_DATA) mambabase/mambabase-autostart.desktop $(DESTDIR)$(mambabasedatadir) + +install-mambareport: + @$(INSTALL_DIR) $(DESTDIR)$(mambareportdatadir) + $(INSTALL_SCRIPT) mambareport/mambareport.kmdr $(DESTDIR)$(mambareportdatadir) + $(INSTALL_SCRIPT) mambareport/openmamba-makereport $(DESTDIR)$(bindir) + $(INSTALL_DATA) mambareport/mambareport.desktop $(DESTDIR)$(xdg_appsdir) + +install-mambawelcome: + @$(INSTALL_DIR) $(DESTDIR)$(mambawelcomedatadir) + @$(INSTALL_DIR) $(DESTDIR)$(sysconfdir)/rc.d/{init.d,rc5.d} + $(INSTALL_SCRIPT) mambawelcome/mambawelcome.kmdr $(DESTDIR)$(mambawelcomedatadir) + $(INSTALL_SCRIPT) mambawelcome/mambawelcome.sh $(DESTDIR)$(mambawelcomedatadir) + $(INSTALL_SCRIPT) mambawelcome/mambawelcome-init $(DESTDIR)$(sysconfdir)/rc.d/init.d/mambawelcome + $(INSTALL_DATA) gpl.html $(DESTDIR)$(mambawelcomedatadir)/gpl.html + $(INSTALL_DATA) gpl-it.html $(DESTDIR)$(mambawelcomedatadir)/gpl-it.html + $(INSTALL_DATA) gpl-es.html $(DESTDIR)$(mambawelcomedatadir)/gpl-es.html + ln -s ../init.d/mambawelcome $(DESTDIR)$(sysconfdir)/rc.d/rc5.d/S99mambawelcome + +install-xramdr: + @$(INSTALL_DIR) $(DESTDIR)$(xramdrdatadir) + $(INSTALL_SCRIPT) xramdr/70521-xramdr.kmdr $(DESTDIR)$(xramdrdatadir)/xramdr.kmdr + $(INSTALL_DATA) xramdr/xramdr.desktop $(DESTDIR)$(xdg_appsdir) + +install-bootrecover: + @$(INSTALL_DIR) $(DESTDIR)$(bootrecoverdatadir) + $(INSTALL_SCRIPT) bootrecover/bootrecover.kmdr $(DESTDIR)$(bootrecoverdatadir) + $(INSTALL_SCRIPT) bootrecover/bootrecover.sh $(DESTDIR)$(bootrecoverdatadir) + $(INSTALL_DATA) bootrecover/openmamba-bootrecover.desktop $(DESTDIR)$(xdg_appsdir) + +install-apt-extras: + @$(INSTALL_DIR) $(DESTDIR)$(aptconfdir) $(DESTDIR)$(aptscriptsdir) + $(INSTALL_DATA) apt/post-install.conf $(DESTDIR)$(aptconfdir) + $(INSTALL_SCRIPT) apt/post-install.lua $(DESTDIR)$(aptscriptsdir) + $(INSTALL_SCRIPT) apt/post-install.sh $(DESTDIR)$(aptscriptsdir) + +install-usbinstall: + @$(INSTALL_DIR) $(DESTDIR)$(usbinstalldatadir) + $(INSTALL_SCRIPT) usbinstall/usbinstall.sh $(DESTDIR)$(usbinstalldatadir) + $(INSTALL_DATA) usbinstall/usbinstall.desktop $(DESTDIR)$(xdg_appsdir) + +install: $(pck_infiles:.in=) \ + install-kde-distro-addons \ + install-netsrpm \ + install-distromenu \ + install-srpms \ + install-mambabase \ + install-mambawelcome \ + install-mambareport \ + install-usbinstall \ + install-bootrecover \ + install-locales \ + install-icons \ + install-apt-extras + +dist: clean + @case `sed 15q ChangeLog` in \ + *"$(VERSION)"*) : ;; \ + *) \ + echo "ChangeLog not updated; not releasing" 1>&2;\ + exit 1;; \ + esac + @rm -f $(dist_archive);\ + tar cf - --exclude=$(dist_archive) -C .. $(distdir) | \ + bzip2 -9 -c > $(dist_archive) + @echo "file \`$(dist_archive)' created" + +dist-rpm: dist + @rpm_sourcedir=`rpm --eval=%{_sourcedir}`;\ + mv -f $(dist_archive) $$rpm_sourcedir;\ + echo "and saved as \`$$rpm_sourcedir/$(dist_archive)'" + +clean: + rm -f $(dist_archive) + rm -f $(patsubst %.in,%,$(pck_infiles)) + rm -f $(pck_catalogs:.po=.mo) + rm -f $(pck_catalogs1:.po=.mo) + rm -f $(pck_catalogs2:.po=.mo) + rm -f $(pck_catalogs3:.po=.mo) + diff --git a/SRPMS/b43-firmware/LICENSE b/SRPMS/b43-firmware/LICENSE new file mode 100644 index 0000000..f3af83f --- /dev/null +++ b/SRPMS/b43-firmware/LICENSE @@ -0,0 +1,10 @@ +Broadcom wireless chip firmware - please read carefully +======================================================= + +The firmware from the binary drivers is Copyright by Broadcom Corporation and must not be redistributed. + +======================================================= + +Press the "I agree" button if you have read and understood this text and accept to download and install the Adobe Flash Plugin. + +Press "I do not agree" if you want this script to terminate immediately without performing any futher operation. diff --git a/SRPMS/b43-firmware/b43-firmware.spec.in b/SRPMS/b43-firmware/b43-firmware.spec.in new file mode 100644 index 0000000..70202ac --- /dev/null +++ b/SRPMS/b43-firmware/b43-firmware.spec.in @@ -0,0 +1,74 @@ +Name: b43-firmware +Version: 1 +Release: 1@distroext@ +Epoch: 1 +Summary: Broadcom firmware files for the b43 and b43legacy drivers +Group: System/Kernel and Hardware +Vendor: @vendor@ +Distribution: @distribution@ +Packager: Silvan Calarco +URL: http://macromedia.rediris.es/ +Source: LICENSE +License: Non Distributable +BuildPrereq: /usr/bin/b43-fwcutter +BuildPrereq: /usr/bin/tempfile +# NOTE: requires the backward compatible version of the libstdc++ library +BuildRoot: %{_tmppath}/%{name}-%{version}-root + +%description +Broadcom firmware files for the b43 and b43legacy drivers. + +%prep +%setup -c -n %{name}-%{version} -T + +[ -r /etc/sysconfig/@sysconfigfile@ ] || exit 1 +. /etc/sysconfig/@sysconfigfile@ + +[ "${B43_FIRMWARE_PCK}" ] || exit 1 +[ "${B43_FIRMWARE_URL}" ] || exit 1 + +tmpdir=$(mktemp -q -d -t flashplugin.XXXXXXXX) +[ $? -eq 0 ] || exit 1 + +[ -f ${tmpdir}/${B43_FIRMWARE_PCK} ] || + wget -nv --timeout=10 --tries=2 \ + ${B43_FIRMWARE_URL}${B43_FIRMWARE_PCK} -O ${tmpdir}/${B43_FIRMWARE_PCK} +[ -f ${tmpdir}/${B43_FIRMWARE_PCK} ] || exit 1 +ls +mkdir b43 +cd b43 +if [ `echo ${B43_FIRMWARE_PCK} | grep "tar.bz2$"` ]; then + tar xjf ${tmpdir}/${B43_FIRMWARE_PCK} --strip-components=1 +else + tar xzf ${tmpdir}/${B43_FIRMWARE_PCK} --strip-components=1 +fi +cd .. + +%build -q + +%install +[ "%{buildroot}" != / ] && rm -rf %{buildroot} + +install -d %{buildroot}/lib/firmware/ +b43-fwcutter -w %{buildroot}/lib/firmware/ b43/driver/wl_apsta_mimo.o + +#cd b43 +# +#install -D libflashplayer.so \ +# %{buildroot}%{_libdir}/mozilla/plugins/libflashplayer.so + +cp %{S:0} LICENSE + +rm -fr ${tmpdir} + +%clean +[ "%{buildroot}" != / ] && rm -rf %{buildroot} + +%files +%defattr(-,root,root) +/lib/firmware/b43/*.fw +%doc LICENSE + +%changelog +* Tue Mar 31 2009 Silvan Calarco 1-1mamba +- specfile created diff --git a/SRPMS/b43-firmware/distroutils.sysconfig b/SRPMS/b43-firmware/distroutils.sysconfig new file mode 100644 index 0000000..afaff4d --- /dev/null +++ b/SRPMS/b43-firmware/distroutils.sysconfig @@ -0,0 +1,9 @@ +## Broadcom B43 firmware + +# package name (do not modify unless you know what you're doing) +B43_FIRMWARE_PCK=broadcom-wl-4.150.10.5.tar.bz2 + +# package URL (do not modify unless you know what you're doing) +B43_FIRMWARE_URL=http://mirror2.openwrt.org/sources/ + + \ No newline at end of file diff --git a/SRPMS/flashplugin/LICENSE b/SRPMS/flashplugin/LICENSE new file mode 100644 index 0000000..826f3ed --- /dev/null +++ b/SRPMS/flashplugin/LICENSE @@ -0,0 +1,101 @@ +Adobe Flash Plugin installation - please read carefully +======================================================= + +ADOBE® SOFTWARE LICENSE AGREEMENT + +NOTICE TO USER: PLEASE READ THIS CONTRACT CAREFULLY. BY USING, COPYING OR DISTRIBUTING ALL OR ANY PORTION OF THE ADOBE SOFTWARE ("SOFTWARE") YOU ACCEPT ALL THE TERMS AND CONDITIONS OF THIS AGREEMENT, INCLUDING, IN PARTICULAR THE LIMITATIONS ON: USE CONTAINED IN SECTION 2; TRANSFERABILITY IN SECTION 4; WARRANTY IN SECTION 7; AND LIABILITY IN SECTION 8. YOU AGREE THAT THIS AGREEMENT IS ENFORCEABLE LIKE ANY WRITTEN NEGOTIATED AGREEMENT SIGNED BY YOU. THIS AGREEMENT IS ENFORCEABLE AGAINST YOU AND ANY LEGAL ENTITY THAT OBTAINED THE SOFTWARE AND ON WHOSE BEHALF IT IS USED. IF YOU DO NOT AGREE, DO NOT USE THIS SOFTWARE. + +Adobe and its suppliers own all intellectual property in the Software. Adobe permits you to Use the Software only in accordance with the terms of this Agreement. Use of some third party materials included in the Software may be subject to other terms and conditions typically found in a separate license agreement, a “Read Me” file located near such materials or in the “Third Party Software Notices and/or Additional Terms and Conditions” found at www.adobe.com/go/thirdparty/ + +1. Definitions. "Software" means (a) all of the contents of the files (provided either by electronic download, on physical media or any other method of distribution), disk(s), CD-ROM(s) or other media with which this Agreement is provided, including but not limited to (i) Adobe or third party computer information or software, including the Adobe Reader® ("Adobe Reader"), Adobe Flash® Player, Shockwave® Player and Authorware® Player (collectively, the Flash, Shockwave and Authorware players, are the "Web Players"); (ii) related explanatory written materials or files ("Documentation"); and (iii) fonts; and (b) upgrades, modified versions, updates, additions, and copies of the Software, if any, licensed to you by Adobe (collectively, "Updates"). "Use" or "Using" means to access, install, download, copy, or otherwise benefit from using the functionality of the Software in accordance with the Documentation. "Permitted Number" means one (1) unless otherwise indicated under a valid license (e.g., volume license) granted by Adobe. "Computer" means an electronic device that accepts information in digital or similar form and manipulates it for a specific result based on a sequence of instructions. "Adobe" means Adobe Systems Incorporated, a Delaware corporation, 345 Park Avenue, San Jose, California 95110, if subsection 9(a) of this Agreement applies; otherwise it means Adobe Systems Software Ireland Limited, Unit 3100, Lake Drive, City West Campus, Saggart D24, Republic of Ireland, a company organized under the laws of Ireland and an affiliate and licensee of Adobe Systems Incorporated. + +2. Software License. If you obtained the Software from Adobe or one of its authorized licensees, and subject to your compliance with the terms of this agreement (this "Agreement"), including the restrictions in Setion 3, Adobe grants to you a non-exclusive license to Use the Software for the purposes described in the Documentation as follows. + +2.1 General Use. You may install and Use a copy of the Software on your compatible Computer, up to the Permitted Number of computers. The Software may not be shared, installed or used concurrently on different computers. See Section 3 for important restrictions on the Use of Adobe Reader and Web Players. + +2.2 Server Use and Distribution. + +2.2.1 You may install one copy of the Adobe Reader on a computer file server within your internal network for the sole and exclusive purpose of (a) using the Software (from an unlimited number of client computers on your internal network) via (i) the Network File System (NFS) for UNIX versions of the Software or (ii) Windows Terminal Services and (b) allowing for printing within your internal network. Unless otherwise expressly permitted hereunder, no other server or network use of the Software is permitted, including but not limited to use of the Software (i) either directly or through commands, data or instructions from or to another computer or (ii) for internal network, internet or web hosting services. + +2.2.2 For information on how to distribute the Software on tangible media or through an internal network please refer to the sections entitled "How to Distribute Adobe Reader" at http://www.adobe.com/products/acrobat/distribute.html; or "Distribute Macromedia Web Players" at http://www.adobe.com/licensing. + +2.3 Backup Copy. You may make one backup copy of the Software, provided your backup copy is not installed or used on any Computer. You may not transfer the rights to a backup copy unless you transfer all rights in the Software as provided under Section 4. + +2.4 Portable or Home Computer Use. If and only if the Software is Adobe Reader, in addition to the single copy permitted under Sections 2.1 and 2.2, the primary user of the Computer on which the Software is installed may make a second copy of the Software for his or her exclusive Use on either a portable Computer or a Computer located at his or her home, provided the Software on the portable or home Computer is not used at the same time as the Software on the primary computer. + +2.5 No Modification. + +2.5.1 You may not modify, adapt, translate or create derivative works based upon the Software. You may not reverse engineer, decompile, disassemble or otherwise attempt to discover the source code of the Software except to the extent you may be expressly permitted to decompile under applicable law, it is essential to do so in order to achieve operability of the Software with another software program, and you have first requested Adobe to provide the information necessary to achieve such operability and Adobe has not made such information available. Adobe has the right to impose reasonable conditions and to request a reasonable fee before providing such information. Any such information supplied by Adobe and any information obtained by you by such permitted decompilation may only be used by you for the purpose described herein and may not be disclosed to any third party or used to create any software which is substantially similar to the expression of the Software. Requests for information should be directed to the Adobe Customer Support Department. + + 2.5.2 As an exception to the above, you may customize or extend the functionality of the installer for the Adobe Reader as specifically allowed by instructions found at http://www.adobe.com/support/main.html or http://partners.adobe.com (e.g., installation of additional plug-in and help files). You may not otherwise alter or modify the Software or create a new installer for the Software. The Adobe Reader is licensed and distributed by Adobe for viewing, distributing and sharing PDF files. + +2.6 Third Party Website Access. The Software may allow you to access third party websites ("Third Party Sites"). Your access to and use of any Third Party Sites, including any goods, services or information made available from such sites, is governed by the terms and conditions found at each Third Party Site, if any. Third Party Sites are not owned or operated by Adobe. YOUR USE OF THIRD PARTY SITES IS AT YOUR OWN RISK. ADOBE MAKES NO WARRANTIES, CONDITIONS, INDEMNITIES, REPRESENTATIONS OR TERMS, EXPRESS OR IMPLIED, WHETHER BY STATUTE, COMMON LAW, CUSTOM, USAGE OR OTHERWISE AS TO ANY OTHER MATTERS, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT OF THIRD PARTY RIGHTS, TITLE, INTEGRATION, ACCURACY, SECURITY, AVAILABILITY, SATISFACTORY QUALITY, MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE WITH RESPECT TO THE THIRD PARTY SITES. + +2.7 Certified Documents. + +2.7.1 Certified Documents and CD Services. The Software may allow you to validate Certified Documents. A "Certified Document" or “CD” is a PDF file that has been digitally signed using (a) a certificate and (b) a “private” encryption key that corresponds to the “public” key in the certificate. Validation of a CD requires CD Services from the CD Service Provider that issued the certificate. “CD Service Provider” is an independent third party service vendor listed at http://www.adobe.com/security/partners_cds.html. “CD Services” are services provided by CD Service Providers, including without limitation (i) certificates issued by such CD Service Provider for use with the Software's CD feature set, (ii) services related to issuance of certificates, and (iii) other services related to certificates, including without limitation verification services. + +2.7.2 CD Service Providers. Although the Software may provide validation features, Adobe does not supply the necessary CD Services required to use these features. Purchasing, availability and responsibility for the CD Services are between you and the CD Service Provider. Before you rely upon any CD, any digital signature applied thereto, and/or any related CD Services, you must first review and agree to the applicable Issuer Statement and this Agreement. “Issuer Statement” means the terms and conditions under which each CD Service Provider offers CD Services (see the links on http://www.adobe.com/security/partners_cds.html), including for example any subscriber agreements, relying party agreements, certificate policies and practice statements, and Section 2.7 of this Agreement. By validating a CD using CD Services, you acknowledge and agree that (a) the certificate used to digitally sign a CD may be revoked at the time of verification, making the digital signature on the CD appear valid when in fact it is not, (b) the security or integrity of a CD may be compromised due to an act or omission by the signer of the CD, the applicable CD Service Provider, or any other third party and (c) you must read, understand, and be bound by the applicable Issuer Statement. + +2.7.3 Warranty Disclaimer. CD Service Providers offer CD Services solely in accordance with the applicable Issuer Statement. ACCESS TO THE CD SERVICES THROUGH THE USE OF THE SOFTWARE IS MADE AVAILABLE ON AN “AS IS” BASIS ONLY AND WITHOUT ANY WARRANTY OR INDEMNITY OF ANY KIND (EXCEPT AS SUPPLIED BY A CD SERVICES PROVIDER IN ITS ISSUER STATEMENT). ADOBE AND EACH CD SERVICE PROVIDER (EXCEPT AS EXPRESSLY PROVIDED IN ITS ISSUER STATEMENT) MAKE NO WARRANTIES, CONDITIONS, INDEMNITIES, REPRESENTATIONS OR TERMS, EXPRESS OR IMPLIED, WHETHER BY STATUTE, COMMON LAW, CUSTOM, USAGE OR OTHERWISE AS TO ANY OTHER MATTERS, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT OF THIRD PARTY RIGHTS, TITLE, INTEGRATION, ACCURACY, SECURITY, AVAILABILITY, SATISFACTORY QUALITY, MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE WITH RESPECT TO THE CD SERVICES. + +2.7.4 Indemnity. You agree to hold Adobe and any applicable CD Service Provider (except as expressly provided in its Issuer Statement) harmless from any and all liabilities, losses, actions, damages, or claims (including all reasonable expenses, costs, and attorneys fees) arising out of or relating to any use of, or reliance on, any CD Service, including, without limitation (a) reliance on an expired or revoked certificate, (b) improper verification of a certificate, (c) use of a certificate other than as permitted by any applicable Issuer Statement, this Agreement or applicable law; (d) failure to exercise reasonable judgment under the circumstances in relying on the CD Services or (e) failure to perform any of the obligations as required in an applicable Issuer Statement. + +2.7.5 Limit of Liability. UNDER NO CIRCUMSTANCES WILL ADOBE OR ANY CD SERVICE PROVIDER (EXCEPT AS EXPRESSLY SET FORTH IN ITS ISSUER STATEMENT) BE LIABLE TO YOU, OR ANY OTHER PERSON OR ENTITY, FOR ANY LOSS OF USE, REVENUE OR PROFIT, LOST OR DAMAGED DATA, OR OTHER COMMERCIAL OR ECONOMIC LOSS OR FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, STATUTORY, PUNITIVE, EXEMPLARY OR CONSEQUENTIAL DAMAGES WHATSOEVER RELATED TO YOUR USE OR RELIANCE UPON CD SERVICES, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES OR IF SUCH DAMAGES ARE FORESEEABLE. THIS LIMITATION SHALL APPLY EVEN IN THE EVENT OF A FUNDAMENTAL OR MATERIAL BREACH OR A BREACH OF THE FUNDAMENTAL OR MATERIALTERMS OF THIS AGREEMENT. + +2.7.6 Third Party Beneficiaries. You agree that any CD Service Provider you utilize shall be a third party beneficiary with respect to this Section 2.7 of this Agreement, and that such CD Service Provider shall have the right to enforce such provisions in its own name as if the CD Service Provider were Adobe. + +3. Restrictions. + +3.1 Web Player Prohibited Devices. You may not Use any Web Player on any non-PC device or with any embedded or device version of any operating system. For the avoidance of doubt, and by example only, you may not use a Web Player on any (a) mobile devices, set top boxes (STB), handhelds, phones, web pads, tablets and Tablet PCs that are not running Windows XP Tablet PC Edition, game consoles, TVs, DVD players, media centers (excluding Windows XP Media Center Edition and its successors), electronic billboards or other digital signage, internet appliances or other internet-connected devices, PDAs, medical devices, ATMs, telematic devices, gaming machines, home automation systems, kiosks, remote control devices, or any other consumer electronics device, (b) operator-based mobile, cable, satellite, or television systems or (c) other closed system devices. + +3.2 Notices. You shall not copy the Software except as set forth in Section 2. Any copy of the Software that you make must contain the same copyright and other proprietary notices that appear on or in the Software. + +3.3 Document Features. The Software may contain features and functionality (the “Document Features”) that appear disabled or “grayed out.” These Document Features will only activate when opening a PDF document that was created using corresponding enabling technology available only from Adobe (“Keys”). You agree not to access, or attempt to access, disabled Document Features or otherwise circumvent the permissions that control activation of such Document Features. You may only use the Document Features with PDF documents that have been enabled using Keys obtained under a valid license from Adobe. No other use is permitted. + +3.4 Adobe Reader Restrictions. You are not authorized to integrate or use the Adobe Reader with any other software, plug-in or enhancement that uses or relies upon the the Adobe Reader when converting or transforming PDF files into other file formats (e.g., a PDF file into a TIFF, JPEG, or SVG file). You are not authorized to integrate or use the Adobe Reader with any plug-in software not developed in accordance with the Adobe Integration Key License Agreement. Further, you are not permitted to integrate or use the Adobe Reader with other software, or access PDF files that contain instructions (e.g., JavaScript), in order to (a) save data locally (on the same Computer), (b) create a file that contains data (e.g., an XML or comments file) or (c) save modifications to a PDF file, except when such saving or creation is allowed through the use of Document Feature(s) enabled by Adobe. + +4. Transfer. You may not rent, lease, sublicense, assign or transfer your rights in the Software, or authorize all or any portion of the Software to be copied onto another user's Computer except as may be expressly permitted herein. You may, however, transfer all your rights to Use the Software to another person or legal entity provided that: (a) you also transfer (i) this Agreement, and (ii) the Software and all other software or hardware bundled or pre-installed with the Software, including all copies, Updates and prior versions, to such person or entity, (b) you retain no copies, including backups and copies stored on a Computer, and (c) the receiving party accepts the terms and conditions of this Agreement and any other terms and conditions upon which you legally purchased a license to the Software. Notwithstanding the foregoing, you may not transfer education, pre-release, or not for resale copies of the Software. + +5. Intellectual Property Ownership, Copyright Protection. The Software and any authorized copies that you make are the intellectual property of and are owned by Adobe Systems Incorporated and its suppliers. The structure, organization and code of the Software are the valuable trade secrets and confidential information of Adobe Systems Incorporated and its suppliers. The Software is protected by law, including without limitation the copyright laws of the United States and other countries, and by international treaty provisions. Except as expressly stated herein, this Agreement does not grant you any intellectual property rights in the Software and all rights not expressly granted are reserved by Adobe and its suppliers. + +6. Updates. If the Software is an Update to a previous version of the Software, you must possess a valid license to such previous version in order to Use such Update. All Updates are provided to you on a license exchange basis. You agree that by Using an Update you voluntarily terminate your right to use any previous version of the Software. As an exception, you may continue to Use previous versions of the Software on your Computer after you Use the Update but only to assist you in the transition to the Update, provided that: (a) the Update and the previous versions are installed on the same computer; (b) the previous versions or copies thereof are not transferred to another party or Computer unless all copies of the Update are also transferred to such party or Computer; and (c) you acknowledge that any obligation Adobe may have to support the previous versions of the Software may be ended upon availability of the Update. + +7. NO WARRANTY. The Software is being delivered to you "AS IS" and Adobe makes no warranty as to its use or performance. Adobe provides no technical support, warranties or remedies for the Software. ADOBE AND ITS SUPPLIERS DO NOT AND CANNOT WARRANT THE PERFORMANCE OR RESULTS YOU MAY OBTAIN BY USING THE SOFTWARE. EXCEPT FOR ANY WARRANTY, CONDITION, REPRESENTATION OR TERM TO THE EXTENT TO WHICH THE SAME CANNOT OR MAY NOT BE EXCLUDED OR LIMITED BY LAW APPLICABLE TO YOU IN YOUR JURISDICTION, ADOBE AND ITS SUPPLIERS MAKE NO WARRANTIES CONDITIONS, REPRESENTATIONS, OR TERMS (EXPRESS OR IMPLIED WHETHER BY STATUTE, COMMON LAW, CUSTOM, USAGE OR OTHERWISE) AS TO ANY MATTER INCLUDING WITHOUT LIMITATION NONINFRINGEMENT OF THIRD PARTY RIGHTS, MERCHANTABILITY, INTEGRATION, SATISFACTORY QUALITY, OR FITNESS FOR ANY PARTICULAR PURPOSE. The provisions of Section 7 and Section 8 shall survive the termination of this Agreement, howsoever caused, but this shall not imply or create any continued right to Use the Software after termination of this Agreement. + +8. LIMITATION OF LIABILITY. IN NO EVENT WILL ADOBE OR ITS SUPPLIERS BE LIABLE TO YOU FOR ANY DAMAGES, CLAIMS OR COSTS WHATSOEVER OR ANY CONSEQUENTIAL, INDIRECT, INCIDENTAL DAMAGES, OR ANY LOST PROFITS OR LOST SAVINGS, EVEN IF AN ADOBE REPRESENTATIVE HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH LOSS, DAMAGES, CLAIMS OR COSTS OR FOR ANY CLAIM BY ANY THIRD PARTY. THE FOREGOING LIMITATIONS AND EXCLUSIONS APPLY TO THE EXTENT PERMITTED BY APPLICABLE LAW IN YOUR JURISDICTION. ADOBE'S AGGREGATE LIABILITY AND THAT OF ITS SUPPLIERS UNDER OR IN CONNECTION WITH THIS AGREEMENT SHALL BE LIMITED TO THE AMOUNT PAID FOR THE SOFTWARE, IF ANY. Nothing contained in this Agreement limits Adobe's liability to you in the event of death or personal injury resulting from Adobe's negligence or for the tort of deceit (fraud). Adobe is acting on behalf of its suppliers for the purpose of disclaiming, excluding and/or limiting obligations, warranties and liability as provided in this Agreement, but in no other respects and for no other purpose. For further information, please see the jurisdiction specific information at the end of this Agreement, if any, or contact Adobe's Customer Support Department. + +9. Export Rules. You agree that the Software will not be shipped, transferred or exported into any country or used in any manner prohibited by the United States Export Administration Act or any other export laws, restrictions or regulations (collectively the "Export Laws"). In addition, if the Software is identified as export controlled items under the Export Laws, you represent and warrant that you are not a citizen, or otherwise located within, an embargoed nation (including without limitation Iran, Syria, Sudan, Libya, Cuba, and North Korea) and that you are not otherwise prohibited under the Export Laws from receiving the Software. All rights to Use the Software are granted on condition that such rights are forfeited if you fail to comply with the terms of this Agreement. + +10. Governing Law. This Agreement will be governed by and construed in accordance with the substantive laws in force: (a) in the State of California, if a license to the Software is obtained when you are in the United States, Canada, or Mexico; or (b) in Japan, if a license to the Software is obtained when you are in Japan, China, Korea, or other Southeast Asian country where all official languages are written in either an ideographic script (e.g., hanzi, kanji, or hanja), and/or other script based upon or similar in structure to an ideographic script, such as hangul or kana; or (c) England, if a license to the Software is purchased when you are in any other jurisdiction not described above. The respective courts of Santa Clara County, California when California law applies, Tokyo District Court in Japan, when Japanese law applies, and the competent courts of England, when the law of England applies, shall each have non-exclusive jurisdiction over all disputes relating to this Agreement. This Agreement will not be governed by the conflict of law rules of any jurisdiction or the United Nations Convention on Contracts for the International Sale of Goods, the application of which is expressly excluded. + +11. General Provisions. If any part of this Agreement is found void and unenforceable, it will not affect the validity of the balance of this Agreement, which shall remain valid and enforceable according to its terms. This Agreement shall not prejudice the statutory rights of any party dealing as a consumer. This Agreement may only be modified by a writing signed by an authorized officer of Adobe. Updates may be licensed to you by Adobe with additional or different terms. This is the entire agreement between Adobe and you relating to the Software and it supersedes any prior representations, discussions, undertakings, communications or advertising relating to the Software. + +12. Notice to U.S. Government End Users. The Software and Documentation are "Commercial Items," as that term is defined at 48 C.F.R. §2.101, consisting of "Commercial Computer Software" and "Commercial Computer Software Documentation," as such terms are used in 48 C.F.R. §12.212 or 48 C.F.R. §227.7202, as applicable. Consistent with 48 C.F.R. §12.212 or 48 C.F.R. §§227.7202-1 through 227.7202-4, as applicable, the Commercial Computer Software and Commercial Computer Software Documentation are being licensed to U.S. Government end users (a) only as Commercial Items and (b) with only those rights as are granted to all other end users pursuant to the terms and conditions herein. Unpublished-rights reserved under the copyright laws of the United States. Adobe Systems Incorporated, 345 Park Avenue, San Jose, CA 95110-2704, USA. For U.S. Government End Users, Adobe agrees to comply with all applicable equal opportunity laws including, if appropriate, the provisions of Executive Order 11246, as amended, Section 402 of the Vietnam Era Veterans Readjustment Assistance Act of 1974 (38 USC 4212), and Section 503 of the Rehabilitation Act of 1973, as amended, and the regulations at 41 CFR Parts 60-1 through 60-60, 60-250, and 60-741. The affirmative action clause and regulations contained in the preceding sentence shall be incorporated by reference in this Agreement. + +13. Compliance with Licenses. If you are a business or organization, you agree that upon request from Adobe or Adobe's authorized representative, you will within thirty (30) days fully document and certify that use of any and all Software at the time of the request is in conformity with your valid licenses from Adobe. + +14. Specific Provisions and Exceptions. + +14.1 Limited Warranty for Users Residing in Germany or Austria. If you obtained the Software in Germany or Austria, and you usually reside in such country, then Section 7 does not apply, instead, Adobe warrants that the Software provides the functionalities set forth in the Documentation (the "agreed upon functionalities") for the limited warranty period following receipt of the Software when used on the recommended hardware configuration. As used in this Section, "limited warranty period" means one (1) year if you are a business user and two (2) years if you are not a business user. Non-substantial variation from the agreed upon functionalities shall not be considered and does not establish any warranty rights. THIS LIMITED WARRANTY DOES NOT APPLY TO SOFTWARE PROVIDED TO YOU FREE OF CHARGE, FOR EXAMPLE, UPDATES, PRE-RELEASE, TRYOUT, PRODUCT SAMPLER, NOT FOR RESALE (NFR) COPIES OF SOFTWARE, OR SOFTWARE THAT HAS BEEN ALTERED BY YOU, TO THE EXTENT SUCH ALTERATIONS CAUSED A DEFECT. To make a warranty claim, during the limited warranty period you must return, at our expense, the Software and proof of purchase to the location where you obtained it. If the functionalities of the Software vary substantially from the agreed upon functionalities, Adobe is entitled -- by way of re-performance and at its own discretion -- to repair or replace the Software. If this fails, you are entitled to a reduction of the purchase price (reduction) or to cancel the purchase agreement (rescission). For further warranty information, please contact Adobe's Customer Support Department + +14.2 Limitation of Liability for Users Residing in Germany and Austria. + +14.2.1 If you obtained the Software in Germany or Austria, and you usually reside in such country, then Section 8 does not apply, Instead, subject to the provisions in Section 14.2.2, Adobe's statutory liability for damages shall be limited as follows: (i) Adobe shall be liable only up to the amount of damages as typically foreseeable at the time of entering into the purchase agreement in respect of damages caused by a slightly negligent breach of a material contractual obligation and (ii) Adobe shall not be liable for damages caused by a slightly negligent breach of a non-material contractual obligation. + +14.2.2 The aforesaid limitation of liability shall not apply to any mandatory statutory liability, in particular, to liability under the German Product Liability Act, liability for assuming a specific guarantee or liability for culpably caused personal injuries. + +14.2.3 You are required to take all reasonable measures to avoid and reduce damages, in particular to make back-up copies of the Software and your computer data subject to the provisions of this Agreement. + +14.3 Pre-release Product Additional Terms. If the product you have received with this license is pre-commercial release or beta Software ("Pre-release Software"), then the following Section applies. To the extent that any provision in this Section is in conflict with any other term or condition in this Agreement, this Section shall supercede such other term(s) and condition(s) with respect to the Pre-release Software, but only to the extent necessary to resolve the conflict. You acknowledge that the Software is a pre-release version, does not represent final product from Adobe, and may contain bugs, errors and other problems that could cause system or other failures and data loss. Consequently, the Pre-release Software is provided to you "AS-IS", and Adobe disclaims any warranty or liability obligations to you of any kind. WHERE LIABILITY CANNOT BE EXCLUDED FOR PRE-RELEASE SOFTWARE, BUT IT MAY BE LIMITED, ADOBE'S LIABILITY AND THAT OF ITS SUPPLIERS SHALL BE LIMITED TO THE SUM OF FIFTY DOLLARS (U.S. $50) IN TOTAL. You acknowledge that Adobe has not promised or guaranteed to you that Pre-release Software will be announced or made available to anyone in the future, Adobe has no express or implied obligation to you to announce or introduce the Pre-release Software and that Adobe may not introduce a product similar to or compatible with the Pre-release Software. Accordingly, you acknowledge that any research or development that you perform regarding the Pre-release Software or any product associated with the Pre-release Software is done entirely at your own risk. During the term of this Agreement, if requested by Adobe, you will provide feedback to Adobe regarding testing and use of the Pre-release Software, including error or bug reports. If you have been provided the Pre-release Software pursuant to a separate written agreement, such as the Adobe Systems Incorporated Serial Agreement for Unreleased Products, your use of the Software is also governed by such agreement. You agree that you may not and certify that you will not sublicense, lease, loan, rent, assign or transfer the Pre-release Software. Upon receipt of a later unreleased version of the Pre-release Software or release by Adobe of a publicly released commercial version of the Software, whether as a stand-alone product or as part of a larger product, you agree to return or destroy all earlier Pre-release Software received from Adobe and to abide by the terms of the license agreement for any such later versions of the Pre-release Software. Notwithstanding anything in this Section to the contrary, if you are located outside the United States of America, you agree that you will return or destroy all unreleased versions of the Pre-release Software within thirty (30) days of the completion of your testing of the Software when such date is earlier than the date for Adobe's first commercial shipment of the publicly released (commercial) Software. + +14.4 Settings Manager. Use of the Web Players, specifically the Flash Player, will enable the Software to store certain user settings as a local shared object on a your Computer. These settings are not associated with you, but allow you to configure certain settings within the Flash Player. You can find more information on local shared objects at http://www.adobe.com/software/flashplayer/security/ and more information on the Settings Manager at www.adobe.com/go/settingsmanager. + +If you have any questions regarding this Agreement or if you wish to request any information from Adobe please use the address and contact information included with this product or via the web at www.adobe.com to contact the Adobe office serving your jurisdiction +Adobe, Authorware, Flash, Reader, and Shockwave are either registered trademarks or trademarks of Adobe Systems Incorporated in the United States and/or other countries. + +======================================================= + +Press the "I agree" button if you have read and understood this text and accept to download and install the Adobe Flash Plugin. + +Press "I do not agree" if you want this script to terminate immediately without performing any futher operation. diff --git a/SRPMS/flashplugin/distroutils.sysconfig b/SRPMS/flashplugin/distroutils.sysconfig new file mode 100644 index 0000000..56ee682 --- /dev/null +++ b/SRPMS/flashplugin/distroutils.sysconfig @@ -0,0 +1,13 @@ +## Adobe Flash Plugin + +# package name (do not modify unless you know what you're doing) +#FLASH_PLUGIN_PCK=flashplayer9_install_linux_082207.tar.gz +#FLASH_PLUGIN_PCK=flash-player-plugin-9.0.48.0.tar.bz2 +#FLASH_PLUGIN_PCK=install_flash_player_9_linux.tar.gz +FLASH_PLUGIN_PCK=install_flash_player_10_linux.tar.gz + +# package URL (do not modify unless you know what you're doing) +#FLASH_PLUGIN_URL=http://download.macromedia.com/pub/labs/flashplayer9_update/ +#FLASH_PLUGIN_URL=http://macromedia.rediris.es/rpmsource/ +#FLASH_PLUGIN_URL=http://fpdownload.macromedia.com/get/flashplayer/current/ +FLASH_PLUGIN_URL=http://fpdownload.macromedia.com/get/flashplayer/current/ diff --git a/SRPMS/flashplugin/flashplugin.spec.in b/SRPMS/flashplugin/flashplugin.spec.in new file mode 100644 index 0000000..dff0e04 --- /dev/null +++ b/SRPMS/flashplugin/flashplugin.spec.in @@ -0,0 +1,106 @@ +Name: flashplugin +Version: @flashpluginver@ +Release: 1@distroext@ +Epoch: 1 +Summary: Macromedia Flash plugin for web browsers +Group: Applications/Web +Vendor: @vendor@ +Distribution: @distribution@ +Packager: Silvan Calarco +URL: http://macromedia.rediris.es/ +Source: LICENSE +License: Non Distributable +BuildPrereq: wget +BuildPrereq: /usr/bin/tempfile +# NOTE: requires the backward compatible version of the libstdc++ library +Obsoletes: flash +Provides: flash = %{version} +BuildRoot: %{_tmppath}/%{name}-%{version}-root + +%description +Macromedia Flash plugin for web browsers. + +%prep +%setup -c -n %{name}-%{version} -D -T + +[ -r /etc/sysconfig/@sysconfigfile@ ] || exit 1 +. /etc/sysconfig/@sysconfigfile@ + +[ "${FLASH_PLUGIN_PCK}" ] || exit 1 +[ "${FLASH_PLUGIN_URL}" ] || \ + FLASH_PLUGIN_URL="http://macromedia.rediris.es/rpmsource/" + +tmpdir=$(mktemp -q -d -t flashplugin.XXXXXXXX) +[ $? -eq 0 ] || exit 1 + +[ -f ${tmpdir}/${FLASH_PLUGIN_PCK} ] || + wget -nv --timeout=10 --tries=2 \ + ${FLASH_PLUGIN_URL}${FLASH_PLUGIN_PCK} -O ${tmpdir}/${FLASH_PLUGIN_PCK} +[ -f ${tmpdir}/${FLASH_PLUGIN_PCK} ] || exit 1 + +if [ `echo ${FLASH_PLUGIN_PCK} | grep "tar.bz2$"` ]; then + tar xjf ${tmpdir}/${FLASH_PLUGIN_PCK} +else + tar xzf ${tmpdir}/${FLASH_PLUGIN_PCK} +fi + +%build -q + +%install +[ "%{buildroot}" != / ] && rm -rf %{buildroot} + +install -D libflashplayer.so \ + %{buildroot}%{_libdir}/mozilla/plugins/flashplayer.so + +cp %{S:0} LICENSE + +rm -fr ${tmpdir} + +%clean +[ "%{buildroot}" != / ] && rm -rf %{buildroot} + +%files +%defattr(-,root,root) +%{_libdir}/mozilla/plugins/flashplayer.so +%doc LICENSE + +%changelog +* Fri Jun 18 2010 Silvan Calarco 10.1-1mamba +- changed version to 10.1 +- rename plugin from libflashplayer.so to flashplayer.so + +* Fri Dec 05 2008 Silvan Calarco 10-1mamba +- changed version to 10 + +* Mon Oct 01 2007 Silvan Calarco 9-1mamba +- changed version to 9 +- added support for both bz2 and gzip source archives + +* Thu Feb 01 2007 Davide Madrisan 0.9-1qilnx +- get download parameters from a sysconfig file + +* Sun Dec 24 2006 Silvan Calarco 7.0.69-1qilnx +- update to 7.0.69 + +* Tue May 09 2006 Silvan Calarco 7.0.63-2qilnx +- fix installation paths +- add LICENSE file + +* Tue May 02 2006 Silvan Calarco 7.0.63-1qilnx + +* Tue May 02 2006 Silvan Calarco 7.0.63-1qilnx +- new version build +- download flash from macromedia.rediris.es + +* Mon Nov 28 2005 Massimo Pintore 7.0.61-1qilnx +- new version build +- changed repository + +* Fri May 28 2004 Silvan Calarco 7.0.25-1qilnx +- new version build + +* Wed Nov 06 2003 Davide Madrisan 6.0r79-2qilnx +- specfile + +* Tue Jul 22 2003 Silvan Calarco 6.0r79-1qilnx +- first build for Flash diff --git a/SRPMS/jre.pregpl/LICENSE b/SRPMS/jre.pregpl/LICENSE new file mode 100644 index 0000000..742075e --- /dev/null +++ b/SRPMS/jre.pregpl/LICENSE @@ -0,0 +1,189 @@ +Sun JRE installation - please read carefully +============================================ + +Sun Microsystems, Inc. Binary Code License Agreement + +READ THE TERMS OF THIS AGREEMENT AND ANY PROVIDED SUPPLEMENTAL LICENSE +TERMS (COLLECTIVELY "AGREEMENT") CAREFULLY BEFORE OPENING THE SOFTWARE +MEDIA PACKAGE. BY OPENING THE SOFTWARE MEDIA PACKAGE, YOU AGREE TO THE +TERMS OF THIS AGREEMENT. IF YOU ARE ACCESSING THE SOFTWARE +ELECTRONICALLY, INDICATE YOUR ACCEPTANCE OF THESE TERMS BY SELECTING +THE "ACCEPT" BUTTON AT THE END OF THIS AGREEMENT. IF YOU DO NOT AGREE +TO ALL THESE TERMS, PROMPTLY RETURN THE UNUSED SOFTWARE TO YOUR PLACE +OF PURCHASE FOR A REFUND OR, IF THE SOFTWARE IS ACCESSED +ELECTRONICALLY, SELECT THE "DECLINE" BUTTON AT THE END OF THIS +AGREEMENT. + +1. LICENSE TO USE. Sun grants you a non-exclusive and +non-transferable license for the internal use only of the accompanying +software and documentation and any error corrections provided by Sun +(collectively "Software"), by the number of users and the class of +computer hardware for which the corresponding fee has been paid. + +2. RESTRICTIONS Software is confidential and copyrighted. Title to +Software and all associated intellectual property rights is retained by +Sun and/or its licensors. Except as specifically authorized in any +Supplemental License Terms, you may not make copies of Software, other +than a single copy of Software for archival purposes. Unless +enforcement is prohibited by applicable law, you may not modify, +decompile, or reverse engineer Software. You acknowledge that Software +is not designed, licensed or intended for use in the design, +construction, operation or maintenance of any nuclear facility. Sun +disclaims any express or implied warranty of fitness for such uses. No +right, title or interest in or to any trademark, service mark, logo or +trade name of Sun or its licensors is granted under this Agreement. " +3. LIMITED WARRANTY. Sun warrants to you that for a period of ninety +(90) days from the date of purchase, as evidenced by a copy of the +receipt, the media on which Software is furnished (if any) will be free +of defects in materials and workmanship under normal use. Except for +the foregoing, Software is provided "AS IS". Your exclusive remedy and +Sun's entire liability under this limited warranty will be at Sun's +option to replace Software media or refund the fee paid for Software. + +4. DISCLAIMER OF WARRANTY. UNLESS SPECIFIED IN THIS AGREEMENT, ALL +EXPRESS OR IMPLIED CONDITIONS, REPRESENTATIONS AND WARRANTIES, +INCLUDING ANY IMPLIED WARRANTY OF MERCHANTABILITY, FITNESS FOR A +PARTICULAR PURPOSE OR NON-INFRINGEMENT ARE DISCLAIMED, EXCEPT TO THE +EXTENT THAT THESE DISCLAIMERS ARE HELD TO BE LEGALLY INVALID. + +5. LIMITATION OF LIABILITY. TO THE EXTENT NOT PROHIBITED BY LAW, IN +NO EVENT WILL SUN OR ITS LICENSORS BE LIABLE FOR ANY LOST REVENUE, +PROFIT OR DATA, OR FOR SPECIAL, INDIRECT, CONSEQUENTIAL, INCIDENTAL OR +PUNITIVE DAMAGES, HOWEVER CAUSED REGARDLESS OF THE THEORY OF LIABILITY, +ARISING OUT OF OR RELATED TO THE USE OF OR INABILITY TO USE SOFTWARE, +EVEN IF SUN HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. In no +event will Sun's liability to you, whether in contract, tort (including +negligence), or otherwise, exceed the amount paid by you for Software +under this Agreement. The foregoing limitations will apply even if the +above stated warranty fails of its essential purpose. + +6. Termination. This Agreement is effective until terminated. You +may terminate this Agreement at any time by destroying all copies of +Software. This Agreement will terminate immediately without notice +from Sun if you fail to comply with any provision of this Agreement. +Upon Termination, you must destroy all copies of Software. + +7. Export Regulations. All Software and technical data delivered +under this Agreement are subject to US export control laws and may be +subject to export or import regulations in other countries. You agree +to comply strictly with all such laws and regulations and acknowledge +that you have the responsibility to obtain such licenses to export, +re-export, or import as may be required after delivery to you. + +8. U.S. Government Restricted Rights. If Software is being acquired +by or on behalf of the U.S. Government or by a U.S. Government prime +contractor or subcontractor (at any tier), then the Government's rights +in Software and accompanying documentation will be only as set forth in +this Agreement; this is in accordance with 48 CFR 227.7201 through +227.7202-4 (for Department of Defense (DOD) acquisitions) and with 48 +CFR 2.101 and 12.212 (for non-DOD acquisitions). + +9. Governing Law. Any action related to this Agreement will be +governed by California law and controlling U.S. federal law. No choice +of law rules of any jurisdiction will apply. + +10. Severability. If any provision of this Agreement is held to be +unenforceable, this Agreement will remain in effect with the provision +omitted, unless omission would frustrate the intent of the parties, in +which case this Agreement will immediately terminate. + +11. Integration. This Agreement is the entire agreement between you +and Sun relating to its subject matter. It supersedes all prior or +contemporaneous oral or written communications, proposals, +representations and warranties and prevails over any conflicting or +additional terms of any quote, order, acknowledgment, or other +communication between the parties relating to its subject matter during +the term of this Agreement. No modification of this Agreement will be +binding, unless in writing and signed by an authorized representative +of each party. + +For inquiries please contact: Sun Microsystems, Inc. 901 San Antonio +Road, Palo Alto, California 94303 + +JAVATM 2 RUNTIME ENVIRONMENT VERSION 1.3 +SUPPLEMENTAL LICENSE TERMS + +These supplemental license terms ("Supplemental Terms") add to or +modify the terms of the Binary Code License Agreement (collectively, +the "Agreement"). Capitalized terms not defined in these Supplemental +Terms shall have the same meanings ascribed to them in the Agreement. +These Supplemental Terms shall supersede any inconsistent or +conflicting terms in the Agreement, or in any license contained within +the Software. + +1. License to Distribute. Subject to the terms and conditions of this +Agreement, including, but not limited to, Section 2 (Redistributables) +and Section 3 (Java Technology Restrictions) of these Supplemental +Terms, Sun grants you a non-exclusive, non-transferable, limited +license to reproduce and distribute the Software in binary code form +only, provided that you (i) distribute the Software complete and +unmodified, only as part of, and for the sole purpose of running your +Java applet or application ("Program") into which the Software is +incorporated, (ii) do not distribute additional software intended to +replace any component(s) of the Software, (iii) do not remove or alter +any proprietary legends or notices contained in the Software, (iv) only +distribute the Program subject to a license agreement that protects +Sun's interests consistent with the terms contained in this Agreement, +and (v) agree to defend and indemnify Sun and its licensors from and +against any damages, costs, ! liabilities, settlement amounts and/or +expenses (including attorneys' fees) incurred in connection with any +claim, lawsuit or action by any third party that arises or results from +the use or distribution of any and all Programs and/or Software. + +2. Redistributables. In addition to the license granted in Paragraph 1 +above, Sun grants you a non-exclusive, non-transferable, limited +license to reproduce and distribute, only as part of Software, those +files specifically identified as redistributable in the Software +"README" file (the "Redistributables") provided that: (a) you +distribute the Redistributables complete and unmodified (unless +otherwise specified in the applicable README file), and only bundled as +part of the JavaTM applets and applications that you develop (the +"Programs:); (b) you do not distribute additional software intended to +supersede any component(s) of the Redistributables; (c) you do not +remove or alter any proprietary legends or notices contained in or on +the Redistributables; (d) you only distribute the Redistributables +pursuant to a license agreement that protects Sun's interests +consistent with the terms contained in the Agreement; and (e) you +agree to defend and indemnify Sun and its licensor! s from and against +any damages, costs, liabilities, settlement amounts and/or expenses +(including attorneys' fees) incurred in connection with any claim, +lawsuit or action by any third party that arises or results from the +use or distribution of any and all Programs and/or Software. + +3. Java Technology Restrictions. You may not modify the Java Platform +Interface ("JPI", identified as classes contained within the "java" +package or any subpackages of the "java" package), by creating +additional classes within the JPI or otherwise causing the addition to +or modification of the classes in the JPI. In the event that you +create an additional class and associated API(s) which (i) extends the +functionality of a Java platform, and (ii) is exposed to third party +software developers for the purpose of developing additional software +which invokes such additional API, you must promptly publish broadly an +accurate specification for such API for free use by all developers. +You may not create, or authorize your licensees to create additional +classes, interfaces, or subpackages that are in any way identified as +"java", "javax", "sun" or similar convention as specified by Sun in any +class file naming convention. + +4. Trademarks and Logos. You acknowledge and agree as between you and +Sun that Sun owns the Java trademark and all Java-related trademarks, +service marks, logos and other brand designations including the Coffee +Cup logo and Duke logo ("Java Marks"), and you agree to comply with the +Sun Trademark and Logo Usage Requirements currently located at +http://www.sun.com/policies/trademarks. Any use you make of the Java +Marks inures to Sun's benefit. + +5. Source Code. Software may contain source code that is provided +solely for reference purposes pursuant to the terms of this Agreement. +Source code may not be redistributed. + +6. Termination. Sun may terminate this Agreement immediately should any +Software become, or in Sun's opinion be likely to become, the subject +of a claim of infringement of a patent, trade secret, copyright or +other intellectual property right. + +============================================ + +Press the "I agree" button if you have read and understood this text and accept to download and install the SUN Java Runtime Environment (JRE). + +Press "I do not agree" if you want this script to terminate immediately without performing any futher operation diff --git a/SRPMS/jre.pregpl/distroutils.sysconfig b/SRPMS/jre.pregpl/distroutils.sysconfig new file mode 100644 index 0000000..ed86e07 --- /dev/null +++ b/SRPMS/jre.pregpl/distroutils.sysconfig @@ -0,0 +1,9 @@ +## Java Runtime Environment (JRE) + +#download parameters (do not modify unless you know what you're doing) +JRE_VER=6 +JRE_ARCH=i586 +JRE_NSVER=7 +JRE_URL=http://mirror.ncc.up.pt/Java/Java${JRE_VER}/JRE +JRE_PCK=jre-${JRE_VER}-linux-${JRE_ARCH}.bin + diff --git a/SRPMS/jre.pregpl/java-profile.in b/SRPMS/jre.pregpl/java-profile.in new file mode 100755 index 0000000..21496fa --- /dev/null +++ b/SRPMS/jre.pregpl/java-profile.in @@ -0,0 +1,13 @@ +# @distroID@ configuration: +# Silvan Calarco +# Davide Madrisan +# +# Java Environment definitions for @distroID@ +# +if ! echo ${PATH} |grep -q /usr/java/jre/bin ; then + PATH="$PATH:/usr/java/jre/bin" +fi + +JAVA_HOME=/usr/java/jre + +export JAVA_HOME diff --git a/SRPMS/jre.pregpl/jre.spec.in b/SRPMS/jre.pregpl/jre.spec.in new file mode 100644 index 0000000..c65097d --- /dev/null +++ b/SRPMS/jre.pregpl/jre.spec.in @@ -0,0 +1,140 @@ +Name: jre +Version: 0.9 +Release: 1@distroext@ +Epoch: 1 +Summary: The Java Runtime Environment +Group: System/Libraries/Java +Vendor: @vendor@ +Distribution: @distribution@ +Packager: Silvan Calarco +URL: http://java.sun.com +Source0: java-profile +Source1: LICENSE +License: JAVA +Obsoletes: j2re +Provides: j2re = %{version} +AutoReqProv: no +BuildRoot: %{_tmppath}/%{name}-%{version}-root + +%description +The Java Runtime Environment consists of the Java virtual machine, the Java +platform core classes, and supporting files. +It is the runtime part of the Java SDK, but without the development tools +such as compilers and debuggers. + +%prep +%setup -q -D -T -c +[ -r /etc/sysconfig/@sysconfigfile@ ] || exit 1 +. /etc/sysconfig/@sysconfigfile@ + +[ -z "$JRE_URL" -o -z "$JRE_PCK" ] && exit 1 + +# get the file list available at %{URL}... +wget -nv --timeout=5 --tries=2 -c ${JRE_URL}/${JRE_PCK} || { + rm -f $JRE_PCK + wget -nv --timeout=5 --tries=2 --progress=bar ${JRE_URL}/${JRE_PCK}; +} + +#find . -name ${JRE_PCK}* -exec mv {} ${JRE_PCK} \; + +%build + +%install +[ "%{buildroot}" != / ] && rm -rf %{buildroot} + +[ -r /etc/sysconfig/@sysconfigfile@ ] || exit 1 +. /etc/sysconfig/@sysconfigfile@ + +[ -z "$JRE_URL" -o -z "$JRE_PCK" ] && exit 1 + +install -d %{buildroot}%{_prefix}/java +pushd %{buildroot}%{_prefix}/java + +MORE="-400" sh %{_builddir}/%{name}-%{version}/${JRE_PCK} << EOF +yes +EOF + +popd + +javapath="$(\ + find %{buildroot}%{_prefix}/java/ -maxdepth 1 -name jre\* -type d | \ + sed "s|^%{buildroot}||" 2>/dev/null)" + +[ "$javapath" ] || exit 1 + +ln -s ${javapath} %{buildroot}%{_prefix}/java/jre + +install -d %{buildroot}%{_sysconfdir}/profile.d +cp %{S:0} %{buildroot}%{_sysconfdir}/profile.d/java.sh + +# see +install -d %{buildroot}%{_libdir}/mozilla/plugins +ln -s %{_prefix}/java/jre/plugin/i386/ns${JRE_NSVER}/libjavaplugin_oji.so \ + %{buildroot}%{_libdir}/mozilla/plugins +ln -s %{_prefix}/java/jre/plugin/i386/ns${JRE_NSVER}/libjavaplugin_oji.so \ + %{buildroot}%{_libdir}/mozilla/plugins/libjavaplugin.so + +#ln -s /usr/java/jre/plugin/i386/ns7-gcc29/libjavaplugin_oji.so \ +# %{buildroot}%{_libdir}/mozilla/plugins + +rm -rf %{buildroot}${javapath}/.systemPrefs + +# get the list of the installed files +find %{buildroot}${javapath} \( -type f -or -type l \) | \ + sed "s|^%{buildroot}||" > jrefiles.list +echo "%dir ${javapath}" >> jrefiles.list + +%clean +[ "%{buildroot}" != / ] && rm -rf %{buildroot} + +%post +if [ $1 -eq 1 ]; then +# new install + if ! echo ${PATH} | grep -q /usr/java/jre/bin; then + export PATH="$PATH:/usr/java/jre/bin" + fi +fi +exit 0 + +%files -f jrefiles.list +%defattr(-,root,root) +%{_prefix}/java/jre +%{_libdir}/mozilla/plugins/libjavaplugin_oji.so +%{_libdir}/mozilla/plugins/libjavaplugin.so +%{_sysconfdir}/profile.d/java.sh + +%changelog +* Fri Feb 02 2007 Davide Madrisan 0.9-1qilnx +- get download parameters from a sysconfig file + +* Tue Oct 31 2006 Davide Madrisan 1.5.0-8qilnx +- specfile updated to donwload latest jre version (1.5.0_09) + +* Wed Jul 12 2006 Davide Madrisan 1.5.0-7qilnx +- added "provides j2re" (needed by the limewire rpm) + +* Mon Apr 03 2006 Davide Madrisan 1.5.0-6qilnx +- updated javaurl + +* Thu Feb 02 2006 Davide Madrisan 1.5.0-5qilnx +- fixed symbolic link in %{_libdir}/mozilla/plugins + +* Tue Aug 23 2005 Davide Madrisan 1.5.0-4qilnx +- specfile updates for last jre version (1.5.0_04) + +* Thu Jul 07 2005 Silvan Calarco 1.5.0-3qilnx +- remove %{javapath}/.systemPrefs if found + +* Wed Apr 20 2005 Silvan Calarco 1.5.0-2qilnx +- enable resume of download +- remove requirements and provides + +* Wed Apr 20 2005 Silvan Calarco 1.5.0-1qilnx +- specfile for new jre version (1.5.0) +- added automatic download and build support (this is a non distributable package) + +* Mon Jul 12 2004 Silvan Calarco 1.4.2-2qilnx +- create symlinks for browser plugins to /usr/lib/mozilla/plugins + +* Mon Oct 13 2003 Silvan Calarco 1.4.2-1qilnx +- first build diff --git a/SRPMS/msttcorefonts/LICENSE b/SRPMS/msttcorefonts/LICENSE new file mode 100644 index 0000000..ba595e6 --- /dev/null +++ b/SRPMS/msttcorefonts/LICENSE @@ -0,0 +1,43 @@ +Microsoft Core Fonts installation - please read carefully +========================================================= + +TrueType core fonts for the Web EULA + +END-USER LICENSE AGREEMENT FOR MICROSOFT SOFTWARE + +IMPORTANT-READ CAREFULLY: This Microsoft End-User License Agreement ("EULA") is a legal agreement between you (either an individual or a single entity) and Microsoft Corporation for the Microsoft software accompanying this EULA, which includes computer software and may include associated media, printed materials, and "on-line" or electronic documentation ("SOFTWARE PRODUCT" or "SOFTWARE"). By exercising your rights to make and use copies of the SOFTWARE PRODUCT, you agree to be bound by the terms of this EULA. If you do not agree to the terms of this EULA, you may not use the SOFTWARE PRODUCT. + +SOFTWARE PRODUCT LICENSE + +The SOFTWARE PRODUCT is protected by copyright laws and international copyright treaties, as well as other intellectual property laws and treaties. The SOFTWARE PRODUCT is licensed, not sold. + +1. GRANT OF LICENSE. This EULA grants you the following rights: +Installation and Use. You may install and use an unlimited number of copies of the SOFTWARE PRODUCT. +Reproduction and Distribution. You may reproduce and distribute an unlimited number of copies of the SOFTWARE PRODUCT; provided that each copy shall be a true and complete copy, including all copyright and trademark notices, and shall be accompanied by a copy of this EULA. Copies of the SOFTWARE PRODUCT may not be distributed for profit either on a standalone basis or included as part of your own product. + +2. DESCRIPTION OF OTHER RIGHTS AND LIMITATIONS. +Limitations on Reverse Engineering, Decompilation, and Disassembly. You may not reverse engineer, decompile, or disassemble the SOFTWARE PRODUCT, except and only to the extent that such activity is expressly permitted by applicable law notwithstanding this limitation. +Restrictions on Alteration. You may not rename, edit or create any derivative works from the SOFTWARE PRODUCT, other than subsetting when embedding them in documents. +Software Transfer. You may permanently transfer all of your rights under this EULA, provided the recipient agrees to the terms of this EULA. +Termination. Without prejudice to any other rights, Microsoft may terminate this EULA if you fail to comply with the terms and conditions of this EULA. In such event, you must destroy all copies of the SOFTWARE PRODUCT and all of its component parts. + +3. COPYRIGHT. All title and copyrights in and to the SOFTWARE PRODUCT (including but not limited to any images, text, and "applets" incorporated into the SOFTWARE PRODUCT), the accompanying printed materials, and any copies of the SOFTWARE PRODUCT are owned by Microsoft or its suppliers. The SOFTWARE PRODUCT is protected by copyright laws and international treaty provisions. Therefore, you must treat the SOFTWARE PRODUCT like any other copyrighted material. + +4. U.S. GOVERNMENT RESTRICTED RIGHTS. The SOFTWARE PRODUCT and documentation are provided with RESTRICTED RIGHTS. Use, duplication, or disclosure by the Government is subject to restrictions as set forth in subparagraph (c)(1)(ii) of the Rights in Technical Data and Computer Software clause at DFARS 252.227-7013 or subparagraphs (c)(1) and (2) of the Commercial Computer Software - Restricted Rights at 48 CFR 52.227-19, as applicable. Manufacturer is Microsoft Corporation/One Microsoft Way/Redmond, WA 98052-6399. + +LIMITED WARRANTY + +NO WARRANTIES. Microsoft expressly disclaims any warranty for the SOFTWARE PRODUCT. The SOFTWARE PRODUCT and any related documentation is provided "as is" without warranty of any kind, either express or implied, including, without limitation, the implied warranties or merchantability, fitness for a particular purpose, or noninfringement. The entire risk arising out of use or performance of the SOFTWARE PRODUCT remains with you. +NO LIABILITY FOR CONSEQUENTIAL DAMAGES. In no event shall Microsoft or its suppliers be liable for any damages whatsoever (including, without limitation, damages for loss of business profits, business interruption, loss of business information, or any other pecuniary loss) arising out of the use of or inability to use this Microsoft product, even if Microsoft has been advised of the possibility of such damages. Because some states/jurisdictions do not allow the exclusion or limitation of liability for consequential or incidental damages, the above limitation may not apply to you. + +MISCELLANEOUS + +If you acquired this product in the United States, this EULA is governed by the laws of the State of Washington. +If this product was acquired outside the United States, then local laws may apply. +Should you have any questions concerning this EULA, or if you desire to contact Microsoft for any reason, please contact the Microsoft subsidiary serving your country, or write: Microsoft Sales Information Center/One Microsoft Way/Redmond, WA 98052-6399. + +========================================================= + +Press the "I agree" button if you have read and understood this text and accept to download and install the Microsoft Core Fonts. + +Press "I do not agree" if you want this script to terminate immediately without performing any futher operation. diff --git a/SRPMS/msttcorefonts/distroutils.sysconfig b/SRPMS/msttcorefonts/distroutils.sysconfig new file mode 100644 index 0000000..e976832 --- /dev/null +++ b/SRPMS/msttcorefonts/distroutils.sysconfig @@ -0,0 +1,19 @@ +## Microsoft TrueType core fonts for the Web + +# Set this define to "yes" if you have a windows license. +# This will install the Tahoma font also (that is distributed under +# the ie license, which requires a valid windows license) +HAS_MS_LICENSE=no + +# Select the server that is closest to you by removing the '#' +# character in one of the following lines: +#MSTTCF_URL=http://aleron.dl.sourceforge.net/sourceforge/corefonts +#MSTTCF_URL=http://belnet.dl.sourceforge.net/sourceforge/corefonts +#MSTTCF_URL=http://cesnet.dl.sourceforge.net/sourceforge/corefonts +#MSTTCF_URL=http://flow.dl.sourceforge.net/sourceforge/corefonts +#MSTTCF_URL=http://switch.dl.sourceforge.net/sourceforge/corefonts +#MSTTCF_URL=http://twtelecom.dl.sourceforge.net/sourceforge/corefonts +#MSTTCF_URL=http://unc.dl.sourceforge.net/sourceforge/corefonts +#MSTTCF_URL=http://umn.dl.sourceforge.net/sourceforge/corefonts +MSTTCF_URL=http://easynews.dl.sourceforge.net/sourceforge/corefonts/ + diff --git a/SRPMS/msttcorefonts/msttcorefonts.spec.in b/SRPMS/msttcorefonts/msttcorefonts.spec.in new file mode 100644 index 0000000..4cf0db2 --- /dev/null +++ b/SRPMS/msttcorefonts/msttcorefonts.spec.in @@ -0,0 +1,159 @@ +# This is taken from the msttcorefonts spec file as distributed from +# http://corefonts.sourceforge.net/. Use it and enjoy! +# corefonts@resare.com +# +# Original packager: Daniel Resare +# +# Modified for QiLinux by Silvan Calarco +# Modified by Davide Madrisan + +# No ttmkfdir required with XFree 4.3 + +%define fontdir %{_datadir}/fonts/%{name} +%define name msttcorefonts + +Name: %{name} +Version: 1.3 +Release: 5@distroext@ +Summary: TrueType core fonts for the web +Group: Graphical Desktop/Fonts +Vendor: @vendor@ +Distribution: @distribution@ +Packager: Silvan Calarco +URL: http://corefonts.sourceforge.net/ +Source: LICENSE +License: Spec file is GPL, binary rpm is gratis but non-distributable +BuildPrereq: wget, cabextract +PreReq: /usr/bin/fc-cache +# BuildPrereq: %{ttmkfdir} +BuildArch: noarch +BuildRoot: %{_tmppath}/%{name}-%{version}-root + +%description +The TrueType core fonts for the web that was once available from +http://www.microsoft.com/typography/fontpack/. The src rpm is cleverly +constructed so that the actual fonts are downloaded from Sourceforge's site +at build time. Therefore this package technically does not 'redistribute' +the fonts, it just makes it easy to install them on a linux system. + +%prep +rm -rf %{name} +mkdir %{name} +cd %{name} +fonts=' + andale32.exe + webdin32.exe + trebuc32.exe + georgi32.exe + verdan32.exe + comic32.exe + arialb32.exe + impact32.exe + arial32.exe + times32.exe + courie32.exe' + +[ -r /etc/sysconfig/@sysconfigfile@ ] && . /etc/sysconfig/@sysconfigfile@ + +# best effort +[ "$MSTTCF_URL" ] || \ + MSTTCF_URL="http://easynews.dl.sourceforge.net/sourceforge/corefonts" + +for i in $fonts; do + wget -nv --timeout=10 --tries=2 ${MSTTCF_URL}/$i 2>&1 +done + +[ "${HAS_MS_LICENSE}" = "yes" ] && + wget -nv --timeout=10 --tries=2 \ +http://download.microsoft.com/download/ie6sp1/finrel/6_sp1/W98NT42KMeXP/EN-US/IELPKTH.CAB + +%build +cd %{name} +install -d %{name}/cab-contents +for i in *.exe *.CAB; do + [ -f $i ] && cabextract --lowercase --directory=cab-contents $i +done + +install -d fonts +cd fonts +cp ../cab-contents/*.ttf . +# %{ttmkfdir} > fonts.dir + +%install +[ "%{buildroot}" != / ] && rm -rf %{buildroot} +cd %{name}/fonts +install -d %{buildroot}%{fontdir} +cp *.ttf %{buildroot}%{fontdir} + +%clean +[ "%{buildroot}" != / ] && rm -rf %{buildroot} + +%post +/usr/bin/fc-cache +exit 0 + +%postun +/usr/bin/fc-cache +exit 0 + +%files +%attr(-,root,root) %{fontdir} +%dir %{fontdir} + +%changelog +* Fri Feb 02 2007 Davide Madrisan 1.3-6qilnx +- get download parameters from a sysconfig file + +* Tue May 03 2005 Silvan Calarco 1.3-5qilnx +- added LICENSE file + +* Mon Feb 23 2004 Davide Madrisan 1.3-4qilnx +- added missing preun script + +* Mon Oct 03 2003 Silvan Calarco 1.3-3qilnx +- removed XFree configuration (these fonts are handled now by fontconfig) + +* Wed Oct 01 2003 Davide Madrisan 1.3-2qilnx +- wget commands modified to avoid verbose output + +* Mon Jul 14 2003 Silvan Calarco 1.3-1qilnx +- first build for QiLinux + +* Mon Mar 31 2003 Daniel Resare 1.3-4 +- updated microsoft link +- updated sourceforge mirrors + +* Mon Nov 25 2002 Daniel Resare 1.3-3 +- the install dir is now deleted when the package is uninstalled +- executable permission removed from the fonts +- executes fc-cache after install if it is available + +* Thu Nov 07 2002 Daniel Resare 1.3-2 +- Microsoft released a new service-pack. New url for Tahoma font. + +* Thu Oct 24 2002 Daniel Resare 1.3-1 +- removed python hack +- removed python hack info from description +- made tahoma inclusion depend on define +- added some info on the ttmkfdir define + +* Tue Aug 27 2002 Daniel Resare 1.2-3 +- fixed spec error when tahoma is not included + +* Tue Aug 27 2002 Daniel Resare 1.2-2 +- removed tahoma due to unclear licensing +- parametrized ttmkfdir path (for mandrake users) +- changed description text to reflect the new microsoft policy + +* Thu Aug 15 2002 Daniel Resare 1.2-1 +- changed distserver because microsoft no longer provides them + +* Tue Apr 09 2002 Daniel Resare 1.1-3 +- fixed post/preun script to actually do what they were supposed to do + +* Tue Mar 12 2002 Daniel Resare 1.1-2 +- removed cabextact from this package +- added tahoma font from ie5.5 update + +* Fri Aug 25 2001 Daniel Resare +- initial version diff --git a/SRPMS/skype/LICENSE b/SRPMS/skype/LICENSE new file mode 100644 index 0000000..d9fb943 --- /dev/null +++ b/SRPMS/skype/LICENSE @@ -0,0 +1,89 @@ +Skype End User License Agreement +IMPORTANT – PLEASE READ CAREFULLY + +* IMPORTANT: version française sur (French version available at) + http://www.skype.com/go/eula-fr +* IMPORTANT: 注意:简体中文《最终用户许可协议》在此浏览 (Simplified Chinese version + available at) http://www.skype.com/go/eula-sc + +No Emergency Calls: The Skype software is not intended to support or carry emergency calls to any type of hospital, law enforcement agency, medical care unit or any other kind of emergency services. Additional arrangements must be made to access emergency services. It is your responsibility to purchase, separately from Skype Software, traditional wireless or landline telephone service that offers access to emergency services. + +This Agreement: This agreement, and any new versions, between Skype Software S.a.r.l (Skype) and you, covers all your use of Skype Software from any terminals where Skype Software has been installed, by you or by third parties, and by using Skype software you accept the following. + +Jurisdiction’s Restrictions: If the law of your country prohibits you from downloading or using our software because you’re under the age limit or because our products are not allowed in your country, please don’t use it. + +License and Restrictions +License. Subject to the terms of this Agreement, Skype hereby grants you a limited, personal, non-commercial, non-exclusive, non-sublicensable, non-assignable, free of charge license to download, install and use the Skype Software on your computer, phone or PDA for the sole purpose of personally using the internet communication applications provided by Skype and any other applications that may be explicitly provided by Skype. For the avoidance of doubt, you are allowed to use Skype software at work, in accordance with the terms of this Agreement. The Skype software is the software distributed by Skype for internet communication applications, including without limitation the Skype API, UI and documentation (online or offline), as well as any future programming fixes, updates and upgrades thereof. + +No Modifications. You will not undertake, cause, permit or authorize the modification, creation of derivative works, translation, reverse engineering, decompiling, disassembling or hacking of the Skype Software or any part thereof. + +Third Parties. The Skype Software may be incorporated into, and may incorporate itself, software and other technology owned and controlled by third parties. Any such third party software or technology that is incorporated in the Skype Software falls under the scope of this Agreement. + +Exclusive Ownership. Any and all IP rights to or arising from the Skype Software are and shall remain the exclusive property of Skype and/or its licensors. Nothing in this Agreement intends to transfer any such IP rights to, or to vest any such IP rights in, you. You are only entitled to the limited use of the IP rights granted to you in this Agreement. You will not take any action to jeopardize, limit or interfere with Skype’s IP rights. Any unauthorized use of Skype’s IP rights is a violation of this Agreement as well as a violation of intellectual property laws and treaties, including without limitation copyright laws and trademark laws. All title and IP rights in and to any third party content that is not contained in the Skype Software, but may be accessed through use of the Skype Software, is the property of the respective content owners and may be protected by applicable copyright or other intellectual property laws and treaties. + +Additional Terms +The following policies are incorporated into this Agreement and provide additional terms and conditions: + +The Skype Etiquette provides guidelines to treat properly and respectfully the other members of Skype’s community +Distribution of Skype Software. You will not sell, assign, rent, lease, distribute, export, import, act as an intermediary or provider, or otherwise grant rights to third parties with regard to the Skype Software or any part thereof. For the right to distribute you will have to agree to and meet with the Distribution Terms +Skype API. Under this Agreement you are not allowed to use the Skype API unless you agreed to and comply with the API Terms of Use +Skype Promotional Materials. Nothing in this Agreement will give you any right to use the Skype Promotional Materials. +Your Confidential Information and Your Privacy. Skype is committed to respecting your privacy and the confidentiality of your personal data. The Privacy Policy sets out how Skype may use of your personal data, the traffic data as well as the content contained in your communication(s). +The following agreements are related to additional services provided by Skype’s affiliates: + +Additional services (SkypeIn, SkypeOut, Voicemail, Skypecasts, etc.) are provided by Skype Communications s.a.r.l. and subject to the Terms of Service +The use of www.skype.com website is subject to the Terms of Use +Any other exceptions. If you are interested in doing anything else than permitted under this Agreement or by one of the above agreements, you will have to obtain Skype’s prior written consent and explicitly agree upon any further (commercial) terms. + +What you should and should not expect from Skype +No Warranties. Installing Skype Software enables you to communicate with other Skype Software users. Skype cannot guarantee that you will always be able to communicate with other Skype Software users, nor can Skype guarantee that you can communicate without disruptions, delays or communication-related flaws or that all your communications shall always be delivered to other Skype Software users. Skype will not be liable for any such disruptions, delays or other omissions in any communication experienced when using Skype Software. + +Content of Communications. You acknowledge and understand that the content of the communication spread by the use of the Skype Software is entirely the responsibility of the person from whom such content originated. You, therefore, may be exposed to content that is offensive, harmful to minors, indecent or otherwise objectionable. Skype will not be liable for any type of communication spread by means of the Skype Software. + +Utilization of Your Computer. Skype Software may utilize the processor and bandwidth of the computer (or other applicable device) you are utilizing, for the limited purpose of facilitating the communication between Skype Software users. Skype Software will use its commercially reasonable efforts to protect the privacy and integrity of the computer resources (or other applicable device) you are utilizing and of your communication, however Skype cannot give any warranties in this respect. + +New Versions of the Skype Software. Skype, in its sole discretion, reserves the right to add additional features or functions, or to provide programming fixes, updates and upgrades, to the Skype Software. Skype, in its sole discretion, may modify or discontinue or suspend your ability to use any version of the Skype Software, and/or disable any Skype Software you may already have accessed or installed without any notice to you, for the repair, improvement, and/or upgrade of the underlying technology or for any other justifiable reason, Skype will not accept any liability in relation to the direct or indirect damages caused by the release and/or the absence of release of new versions of the Skype Software. + +What we expect from you +Lawful purposes. You will at any and all times meet with your obligations hereunder, as well as any and all laws, regulations and policies that may apply to the use of the Skype Software in your country, including applicable rules that govern the export or import of software. You will use the Skype Software solely for lawful purposes. In this respect you may not, without limitation (a) intercept or monitor, damage or modify any communication which is not intended for you, (b) use any type of spider, virus, worm, trojan-horse, time bomb or any other codes or instructions that are designed to distort, delete, damage or disassemble the Skype Software or the communication, (c) send any unsolicited commercial communication not permitted by applicable law, (d) expose any other user to material which is offensive, harmful to minors, indecent or otherwise objectionable or (e) endanger any part of any system or Internet connection of Skype or any third party. + +Indemnification. You agree on demand to indemnify, defend and hold Skype, affiliates and Skype staff harmless from and against any and all liability and costs, including reasonable attorneys’ fees incurred by such parties, in connection with or arising out of your (a) violation or breach of any term of this Agreement or any applicable law or regulation, whether or not referenced herein, or (b) violation of any rights of any third party, or (c) use or misuse of the Skype Software, or (d) communication spread by means of the Skype Software. + +Term, Termination, Updates +Term. This Agreement will be effective as of the date you first install Skype software and will remain effective until terminated by either Skype or you as set forth below. + +Termination You may terminate this Agreement with immediate effect at any time. Without limiting other remedies, Skype may limit, suspend, or terminate this license and your use of Skype Software, prohibit access to Skype Website and delete your user account and/or user ID, with immediate effect, if we think that you are in breach of this Agreement, creating problems, legal liabilities (actual or potential), acting inconsistently with the letter or spirit of our policies, which can be found at www.skype.com/company/legal/terms/etiquette.html, infringing someone else’s intellectual property rights, engaging in fraudulent, immoral or illegal activities, or for other similar reasons. Skype shall effect such termination by providing notice to you to the email address you have provided (if any), and/or by preventing your access to your account. We reserve the right to cancel user accounts that have been inactive for more than one (1) year. + +Upon termination of this Agreement, (a) all licenses and rights to use the Skype Software shall immediately terminate, and (b) you will immediately cease any and all use of the Skype Software, and (c) you will immediately remove the Skype Software from all hard drives, networks and other storage media and destroy all copies of the Skype Software in your possession or under your control. + +Skype will not be liable in respect of any damage caused by the termination of this Agreement. + +Update. Skype reserves the right to modify this Agreement at any time by publishing the revised Agreement on the Skype Website. The revised Agreement shall become effective within thirty (30) days of such publication or provision to you, unless you expressly accept the revised Agreement earlier by clicking on the accept button. Your express acceptance or your continued use of the Skype Software after expiry of the notice period of thirty (30) days, shall constitute your acceptance to be bound by the terms and conditions of the revised Agreement. You can find the latest version of this Agreement at www.skype.com/company/legal/eula. + +Disclaimer of Warranties and Limitation of Liability +No warranties. THE SKYPE SOFTWARE IS PROVIDED “AS IS” WITH ALL FAULT AND WITH NO WARRANTIES WHATSOEVER; SKYPE DOES NOT, EITHER EXPRESSED, IMPLIED OR STATUTORY, MAKE ANY WARRANTIES, CLAIMS OR REPRESENTATIONS WITH RESPECT TO THE SKYPE SOFTWARE, INCLUDING, WITHOUT LIMITATION, WARRANTIES OR CONDITIONS OF QUALITY, PERFORMANCE, NON-INFRINGEMENT, MERCHANTABILITY, OR FITNESS FOR USE OR A PARTICULAR PURPOSE. SKYPE FURTHER DOES NOT REPRESENT OR WARRANT THAT THE SKYPE SOFTWARE WILL ALWAYS BE AVAILABLE, ACCESSIBLE, UNINTERRUPTED, TIMELY, SECURE, ACCURATE, COMPLETE AND ERROR-FREE OR WILL OPERATE WITHOUT PACKET LOSS, NOR DOES SKYPE WARRANT ANY CONNECTION TO OR TRANSMISSION FROM THE INTERNET, OR ANY QUALITY OF CALLS MADE THROUGH THE SKYPE SOFTWARE. + +Specific Disclaimer of Liability for Emergency Services. Skype does not provide connections to emergency services in conjunction with the Skype Software. Neither Skype nor its officers or employees may be held liable for any claim, damage, or loss, and you hereby waive any and all such claims or causes of action, arising from or relating to the use of Skype Software to contact emergency services’ personnel. + +Your own Risk. You acknowledge and agree that the entire risk arising out of the use or performance of the Skype Software remains with you, to the maximum extent permitted by law. + +No Liability. The Skype Software is being provided to you free of charge. ACCORDINGLY, YOU ACKNOWLEDGE AND AGREE THAT SKYPE, ITS AFFILIATES, ITS LICENSORS AND THE SKYPE STAFF WILL HAVE NO LIABILITY IN CONNECTION WITH OR ARISING FROM YOUR USE OF THE SKYPE SOFTWARE, AS SET FORTH BELOW. YOUR ONLY RIGHT OR REMEDY WITH RESPECT TO ANY PROBLEMS OR DISSATISFACTION WITH THE SKYPE SOFTWARE IS TO IMMEDIATELY UNINSTALL AND CEASE USE OF SUCH SKYPE SOFTWARE. + +Limitation of Liability. IN NO EVENT SHALL SKYPE, ITS AFFILIATES, ITS LICENSORS OR THE SKYPE STAFF BE LIABLE, WHETHER IN CONTRACT, WARRANTY, TORT (INCLUDING NEGLIGENCE), PRODUCT LIABILITY OR ANY OTHER FORM OF LIABILITY, FOR ANY INDIRECT, INCIDENTAL, SPECIAL OR CONSEQUENTIAL DAMAGES (INCLUDING WITHOUT LIMITATION ANY LOSS OF OR CORRUPTION TO DATA, INTERRUPTION, COMPUTER FAILURE OR PECUNIARY LOSS) ARISING OUT OF THE USE OR INABILITY TO USE THE SKYPE SOFTWARE, EVEN IF SKYPE, ITS AFFILIATES OR THE SKYPE STAFF HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. + +Jurisdiction Limitations. As some jurisdictions do not allow some of the exclusions or limitations as set forth above, some of these exclusions or limitations may not apply to you. In such event the liability will be limited as far as legally possible under the applicable legislation. + +Miscellaneous +Entire Agreement. The terms and conditions of this Agreement constitute the entire agreement between you and Skype with respect to the subject matter hereof and will supersede and replace all prior understandings and agreements, in whatever form, regarding the subject matter. + +Partial Invalidity. Should any term or provision hereof be deemed invalid, void or enforceable either in its entirety or in a particular application, the remainder of this Agreement shall nonetheless remain in full force and effect. + +No waiver. If Skype does not take action against all breaches of these Agreement, it does not mean that is waives its right at a later time to enforce the same. + +Assignment You are not allowed to assign this Agreement or any rights hereunder. Skype is allowed at its sole discretion to assign this Agreement or any rights hereunder to any third party, without giving prior notice. + +Applicable Law and Competent Court. This Agreement shall be governed by and construed in accordance with the laws of Luxembourg without giving effect to any conflict of laws or provisions whether contained in Luxembourg law or the laws of your current state or country of residence. Any legal proceedings arising out of or relating to this Agreement will be subject to the jurisdiction of the courts of the district of Luxembourg. + +Language. The original English version of this Agreement may have been translated into other languages. In the event of inconsistency or discrepancy between the English version and any other language version of this Agreement, the English language version shall prevail. + +© Skype – Last revised: 15.03 2007. diff --git a/SRPMS/skype/distroutils.sysconfig b/SRPMS/skype/distroutils.sysconfig new file mode 100644 index 0000000..000a6a9 --- /dev/null +++ b/SRPMS/skype/distroutils.sysconfig @@ -0,0 +1,8 @@ +## Skype + +# package name (do not modify unless you know what you're doing) +#SKYPE_PCK=skype-2.0.0.68.tar.bz2 + +# package URL (do not modify unless you know what you're doing) +#SKYPE_URL=http://download.skype.com/linux/ +SKYPE_URL=http://www.skype.com/go/getskype-linux-dynamic diff --git a/SRPMS/skype/skype.spec.in b/SRPMS/skype/skype.spec.in new file mode 100644 index 0000000..973ee16 --- /dev/null +++ b/SRPMS/skype/skype.spec.in @@ -0,0 +1,91 @@ +Name: skype +Version: @skypever@ +Release: 2@distroext@ +Epoch: 1 +Summary: An Internet voice and video communication software +Group: Graphical Desktop/Applications/Internet +Vendor: @vendor@ +Distribution: @distribution@ +Packager: Silvan Calarco +URL: http://macromedia.rediris.es/ +Source: LICENSE +License: Non Distributable +BuildPrereq: wget +BuildPrereq: /usr/bin/tempfile +# NOTE: requires the backward compatible version of the libstdc++ library +BuildRoot: %{_tmppath}/%{name}-%{version}-root + +%description +An Internet voice and video communication software. + +%prep +%setup -c -n %{name}-%{version} -D -T + +# don't strip files to prevent breaking internal binary CRC ckeck +%define __os_install_post /usr/lib/rpm/brp-infodir + +[ -r /etc/sysconfig/@sysconfigfile@ ] || exit 1 +. /etc/sysconfig/@sysconfigfile@ + +[ "${SKYPE_PCK}" ] && \ + SKYPE_PCK_DEST=${SKYPE_PCK} || + SKYPE_PCK_DEST=skype-latest.tar.bz2 +[ "${SKYPE_URL}" ] || \ + SKYPE_URL="http://www.skype.com/go/getskype-linux-dynamic" + +tmpdir=$(mktemp -q -d -t skype.XXXXXXXX) +[ $? -eq 0 ] || exit 1 + +wget -nv --timeout=10 --tries=2 \ + ${SKYPE_URL}${SKYPE_PCK} -P ${tmpdir} + +SKYPE_ARCHIVE="`ls ${tmpdir}/skype-*`" +[ -f ${SKYPE_ARCHIVE} ] || exit 1 + +if [ `echo ${SKYPE_ARCHIVE} | grep "tar.bz2$"` ]; then + tar xjf ${SKYPE_ARCHIVE} --strip-components=1 +else + tar xzf ${SKYPE_ARCHIVE} --strip-components=1 +fi + +%build -q + +%install +[ "%{buildroot}" != / ] && rm -rf %{buildroot} + +install -D skype \ + %{buildroot}%{_bindir}/skype +install -D skype.desktop \ + %{buildroot}%{_datadir}/applications/skype.desktop +install -D icons/SkypeBlue_48x48.png \ + %{buildroot}%{_datadir}/icons/skype.png +install -D icons/SkypeBlue_48x48.png \ + %{buildroot}%{_datadir}/pixmaps/skype.png +install -d %{buildroot}%{_datadir}/skype +cp -a avatars lang sounds %{buildroot}%{_datadir}/skype/ + +cp %{S:0} LICENSE + +rm -fr ${tmpdir} + +%clean +[ "%{buildroot}" != / ] && rm -rf %{buildroot} + +%files +%defattr(-,root,root) +%{_bindir}/skype +%{_datadir}/applications/skype.desktop +%{_datadir}/icons/skype.png +%{_datadir}/pixmaps/skype.png +%dir %{_datadir}/skype +%{_datadir}/skype/avatars/*.png +%{_datadir}/skype/lang/* +%{_datadir}/skype/sounds/*.wav +%doc LICENSE README + +%changelog +* Thu Sep 10 2009 Silvan Calarco 2-2mamba +- specfile fixed for 2.1.0.47 + +* Wed May 28 2008 Silvan Calarco 2.0.0.68-1mamba +- specfile creation diff --git a/SRPMS/win32codecs/LICENSE b/SRPMS/win32codecs/LICENSE new file mode 100644 index 0000000..8d138cb --- /dev/null +++ b/SRPMS/win32codecs/LICENSE @@ -0,0 +1,17 @@ +Win32 Codecs installation - please read carefully +================================================= + +The present script will download and install binary codecs for use with multimedia players. + +The full (all) codecs package will be downloaded from ftp://ftp1.mplayerhq.hu/MPlayer/releases/codecs/ or one of its mirrors. + +Please be warned that those files may be covered by copyright laws and thus unauthorized download and use may be illegal in your country. + +This installation script was provided to simplify codecs installation to end users but we do not distribute proprietary files. + +================================================= + +Press the "I agree" button if you have read and understood this text and accept to download and install the codecs. + +Press "I do not agree" if you want this script to terminate immediately without performing any futher operation. + diff --git a/SRPMS/win32codecs/distroutils.sysconfig b/SRPMS/win32codecs/distroutils.sysconfig new file mode 100644 index 0000000..a8cd3fa --- /dev/null +++ b/SRPMS/win32codecs/distroutils.sysconfig @@ -0,0 +1,15 @@ +## Win32 Codecs + +# Select the ftp server that is closest to you by removing the '#' +# character in one of the following lines: +W32CODS_URL=ftp://ftp1.mplayerhq.hu/MPlayer/releases/codecs/ +#W32CODS_URL=ftp://ftp2.mplayerhq.hu/MPlayer/releases/codecs/ +#W32CODS_URL=ftp://ftp3.mplayerhq.hu/MPlayer/releases/codecs/ +#W32CODS_URL=ftp://ftp4.mplayerhq.hu/MPlayer/releases/codecs/ +#W32CODS_URL=ftp://ftp5.mplayerhq.hu/MPlayer/releases/codecs/ +#W32CODS_URL=ftp://ftp6.mplayerhq.hu/MPlayer/releases/codecs/ +#W32CODS_URL=ftp://ftp7.mplayerhq.hu/MPlayer/releases/codecs/ +#W32CODS_URL=ftp://ftp8.mplayerhq.hu/MPlayer/releases/codecs/ +#W32CODS_URL=ftp://ftp9.mplayerhq.hu/MPlayer/releases/codecs/ +#W32CODS_URL=ftp://ftp10.mplayerhq.hu/MPlayer/releases/codecs/ + diff --git a/SRPMS/win32codecs/win32codecs.spec.in b/SRPMS/win32codecs/win32codecs.spec.in new file mode 100644 index 0000000..180d92e --- /dev/null +++ b/SRPMS/win32codecs/win32codecs.spec.in @@ -0,0 +1,127 @@ +%define win32dir %{_libdir}/win32 + +%define alt_url1 ftp://ftp1.mplayerhq.hu/MPlayer/releases/codecs/ +%define alt_url2 ftp://ftp2.mplayerhq.hu/MPlayer/releases/codecs/ +%define alt_url3 ftp://ftp3.mplayerhq.hu/MPlayer/releases/codecs/ +%define alt_url4 ftp://ftp4.mplayerhq.hu/MPlayer/releases/codecs/ +%define alt_url5 ftp://ftp5.mplayerhq.hu/MPlayer/releases/codecs/ +%define alt_url6 ftp://ftp6.mplayerhq.hu/MPlayer/releases/codecs/ +%define alt_url7 ftp://ftp7.mplayerhq.hu/MPlayer/releases/codecs/ +%define alt_url8 ftp://ftp8.mplayerhq.hu/MPlayer/releases/codecs/ +%define alt_url9 ftp://ftp9.mplayerhq.hu/MPlayer/releases/codecs/ +%define alt_url10 ftp://ftp10.mplayerhq.hu/MPlayer/releases/codecs/ + +Name: win32codecs +Version: @win32codecsver@ +Release: 1@distroext@ +Summary: Win32 native dll codecs +Group: System/Multimedia +Vendor: @vendor@ +Distribution: @distribution@ +Packager: Silvan Calarco +URL: ftp://www.mplayerhq.hu/MPlayer/releases/codecs/ +License: Non Distributable +Source: LICENSE +BuildPrereq: /usr/bin/curl +BuildPrereq: /usr/bin/tempfile +Provides: win32_codecs +BuildRoot: %{_tmppath}/%{name}-%{version}-root + +%description +These are binary multimedia codecs for use with Unix players such as MPlayer,Xine, and avifile. +They are useless for normal Windows players as they only contain the DLLs without installer and other fancy stuff needed to use them with common Windows players. + +%prep + +%setup -q -D -T -c +[ -r /etc/sysconfig/@sysconfigfile@ ] && . /etc/sysconfig/@sysconfigfile@ + +# best effort in W32CODS_URL is undefined +[ "$W32CODS_URL" ] || W32CODS_URL="\ +%{alt_url1} %{alt_url2} %{alt_url3} %{alt_url4} %{alt_url5} \ +%{alt_url6} %{alt_url7} %{alt_url8} %{alt_url9} %{alt_url10}" + +#tmpfile=`/usr/bin/tempfile 2>/dev/null` || exit 1 +tmpfile=urlfiles.lst + +# get the file list available at %{URL}... +for URL in $W32CODS_URL; do + curl -s -f -L --connect-timeout 10 --retry 2 \ + --url $URL --list-only -o $tmpfile 2>/dev/null && break +done + +[ -s $tmpfile ] || { rm -f $tmpfile; exit 1; } + +sed -i 's/\x0D$//' $tmpfile +# ...download the most recent tarball `all-[0-9]{8}.tar.bz2' + +if cat $tmpfile | grep -Eq '/dev/null` +else + tarball=`sort -r $tmpfile | \ + grep -E -m1 'all-[0-9]{8}.tar.bz2' 2>/dev/null` +fi + +rm -f $tmpfile + +[ "$tarball" ] || exit 1 + +# check if the latest version is already installed +if [ -r %{win32dir}/VERSION_w32codecs ]; then + currver="$(cat %{win32dir}/VERSION_w32codecs)" + case "$tarball" in + "all-${currver}.tar.bz2") + echo "the latest version is already installed" + exit 1 ;; + esac +fi + +curl --url $URL/$tarball -o $tarball || exit 1 +echo $tarball | sed 's/all-\([0-9]*\).tar.*/\1/' > VERSION_w32codecs + +tar xjf $tarball && rm -f $tarball + +%build + +%install +[ "%{buildroot}" != / ] && rm -rf %{buildroot} +find . -type f -exec install -D "{}" "%{buildroot}%{win32dir}/{}" \; + +%clean +[ "%{buildroot}" != / ] && rm -rf %{buildroot} + +%files +%defattr(-,root,root) +%{win32dir}/* + +%changelog +* Thu Mar 10 2011 Silvan Calarco 0.9.3-1mamba +- fixed installation of codecs containing spaces in name + +* Tue Oct 16 2007 Silvan Calarco 0.9.2-1mamba +- update release to avoid permission problems now this script is run by user + +* Fri Feb 02 2007 Davide Madrisan 0.9.1-5qilnx +- get download parameters from a sysconfig file +- added support for connections trough a proxy server + +* Mon Nov 28 2005 Massimo Pintore 0.9.1-4qilnx +- added alternative repositories + +* Mon Aug 29 2005 Silvan Calarco 0.9.1-3qilnx +- download from alternative repositories + +* Wed Apr 06 2005 Silvan Calarco 0.9.1-2qilnx +- added LICENSE file + +* Thu Mar 10 2005 Davide Madrisan 0.9.1-1qilnx +- update to version 0.9.1 by autospec +- check the current version of win32 codecs installed before download +- removed the source entry in the specfiles preamble to permit the srpm + rebuilding + +* Mon Feb 21 2005 Davide Madrisan 0.9-1qilnx +- package creation diff --git a/SRPMSVERSIONS b/SRPMSVERSIONS new file mode 100644 index 0000000..5dcba5e --- /dev/null +++ b/SRPMSVERSIONS @@ -0,0 +1,3 @@ +FLASHPLUGIN_VERSION=10.2.153.1 +WIN32CODECS_VERSION=20110131 +SKYPE_VERSION=2.2.0.25 diff --git a/VERSION b/VERSION new file mode 100644 index 0000000..104736a --- /dev/null +++ b/VERSION @@ -0,0 +1,2 @@ +VERSION = 2.2.19 + diff --git a/apt/post-install.conf b/apt/post-install.conf new file mode 100644 index 0000000..87b6d21 --- /dev/null +++ b/apt/post-install.conf @@ -0,0 +1,2 @@ +Scripts::PM::Post:: "post-install.lua"; +Apt::Get::post-install "true"; diff --git a/apt/post-install.lua b/apt/post-install.lua new file mode 100755 index 0000000..c559999 --- /dev/null +++ b/apt/post-install.lua @@ -0,0 +1,12 @@ +-- This script will perform operations after new packages have been installed +-- +-- Author: Silvan Calarco Copyright (c) 2009 +-- + +-- Allow someone to disable this without removing the script. +if confget("APT::Get::post-install/b", "true") == "false" then + return +end + +os.execute("/usr/share/apt/scripts/post-install.sh") +return diff --git a/apt/post-install.sh b/apt/post-install.sh new file mode 100755 index 0000000..fc6f890 --- /dev/null +++ b/apt/post-install.sh @@ -0,0 +1,7 @@ +#!/bin/bash +[ -x /usr/bin/update-mime-database ] && update-mime-database /usr/share/mime >/dev/null +IFS=":" +for d in $XDG_DATA_DIRS; do + [ -x /usr/bin/update-desktop-database ] && update-desktop-database -q $d/applications/ >/dev/null +done +exit 0 diff --git a/bootrecover.lang b/bootrecover.lang new file mode 100644 index 0000000..fc1cf9f --- /dev/null +++ b/bootrecover.lang @@ -0,0 +1,2 @@ +%lang(es) /opt/kde3/share/locale/es/LC_MESSAGES/bootrecover.mo +%lang(it) /opt/kde3/share/locale/it/LC_MESSAGES/bootrecover.mo diff --git a/bootrecover/bootrecover-128x128.png b/bootrecover/bootrecover-128x128.png new file mode 100644 index 0000000000000000000000000000000000000000..c058c3d197db0ed079d32bc240e1aa987fe48913 GIT binary patch literal 20041 zcmV)dK&QWnP)Px#24YJ`L;(K){{a7>y{D4^000SaNLh0L01FcU01FcV0GgZ_00007bV*G`2iFS` z4H+|VlH7p+03ZNKL_t(|+U&h|oLyIW_xoLCmvhea8I3d}X(U;aEy;4n1#FB>2}!`D zKwd%;Lm>Btya`Ee-rVpe5FjKZc@s>yX@tba1QL2E4hC#6?oGB_WXrNFs~4-xjHaEo z%UbLHvG+N1W;CiUAYgw!`*YfyIp^%(Q-9C1o&`TSescWe_{s6(c8Hc!=4a#ai}5+L zKjV}>=gqhK;wR8Oe?TOl01xn6PA`96z5s%7tk2Q;^UcrrrMrFIxc>{c`eF0_cVB$K z#g7~KZ~uS3-Lr7%%RVNgx)vN!ed_;w?7hqW8Zfg?m!GHfIsf;2A9$zK;q^F2nns^{ z>X9$~$%D85f8!lXg`3>z62M&bkJ|5CCVF)!Cc{1vRrb4uLSl;jV&BwW*A{e9`N}Kf zc&-mQ=iOR7`LC(_i2$6q8CHMt@q-_d+J6tw>6`@|)|$!h{nwvd{K&mG9tIL12GU#z z>?wi&$LrpyRd~I17M#Q3FlqGEhMn)bcF)ec4vcMf)mQwb9&8^HXR3gzbHq}MCAqcO zliwynvQa9eiK&16_3_A0EWj!H-#@x;*VTnW*Y!@Y#9Ehuk_&)yj>_c7*Z$!HtN#$F z12rJZg~6VL6%c^@%|CwVo!Sepch=Dm04rilu%Fb8Zr@w`><8t_2ZFGNHPXWunu-)G zMTlMm+jIBO4XgvkfN>mKfCJK_{MA>-)t?B!iTx(|dmnk~jIN%=Hz4GdIE%w!tz%Jt z%G#AN-?_)fIft{3ryu+JyKegIyYB)jKs6VF^aQOy2L7Ks{7$Wd>j9i~3@sF#xptIq zKDZgle z>LjkkF$GxvDEj$#zW27Cg+mwqzS80Q8(Iz!`i`Hzyvl{E>Hs{uOY-b41;Dbiu6hsf zaBlirUBK~T0RhN&zyFax&?@+7W?5kIBFE4D@)n*Qf0DEHAs*Rs0MoXOw6xumPOWk1 z3Mvf*!ovXq4FviB^bjn^u@5L9*pFZ%4x@Z_1CO1+weVVEnICxz&@}fS_{7++OC4M% zoaoGe&jjF=7fkWmORF<}@vub|F=Kz z#HWSS*WxVBS>`W3#AQG8Fq_98V)&<7C@~XK5#5~(5PQMLfhy!!qBG;+1?7e6SZekCsVzrgarDsQ@Sl+Mny zB^}SQz0RWHs+T3)@lbXd7M*eF|5~!*itq2*dT*Rx{Du{b@TxtP(I!T zRHwVS|Mfq-rSBKsb^RwizjU1tVoBr0&`qEy!oAQPp#R1~?{(SSN zq|(o#RVu=@O;`_L_4`F|g1u>id1!<+tDD*daKu3MSv|4*WhM}81j!~m;> zxxm-%j99FTQz?KE=e~CrOLjeo$9N2|*w=yGEXH@wWfASHu%so=5yQ0XGACkC*=aFk1ith!0;s zd|{#3{V}Av5;v{&oneJHuJ|^KdiG`-Zt}EFO0elHt)I&Zh?%i~Ys3bELdkH|`Qv#}Z_V5Qr8RA!Z3j z%m4VB&z{NXgu*#T!eqJDb$eU6``gsIZa=m9;0vi85=;!+Z!!lqf8O>cWv76z1AmeG z{gXO=C@p|g`c17*tnGe+*DkyXPe;>!UdUO#{AgAn_w%hlyTKWm zkm_M7UAMGN^?aGs-}eItzaap%L(U#t?-nFw2XF_1Pvh7yi~e<|qW}m%q)Gi|-z!}S z5Gr`h{4e1VW#-<_Hs9$Sz~(8QQ!~@Q6LJwLD;E#5@{E}E;}28mzL_N0iIepoyy*v$ z3g*B=)=lhiGEepH1IB@i^EhAxn96DF_{*vvLJJ@PbMmm9EbN76WJG+W*iA2V6g70?;Jv|L%`3xTjv7{BGlg`$pc>)X=8( zH?2T4t<`Bm%adu%Zd!pPI~$gwX+84i%e&dM?Gt?N&~2=bM~Pn~YEMWII{S*A(g-1r zs}@oVs?TZ0o=&l;6-xQi3)*^f(|-wYS$_Yd_~#!+9-wIjI(rs9xp3J`ui5^+8qQjz(s*8Rewx$j0;v1)zm)u+S-dN-A*7ULu#7}_(_Q8 zsbe>a3s6F#ssU5GQcRlhJJuxBs-u!d$v8WvfP;B(e?r~OKdb`KD8t6Lf8($I#ia2* zfXI0~GWPnWNpA>(OJ|w$6LAss9WeG?C_h8$V0}8trex|x{b9<7fRJcgK=m09Pima7 z$4uIU0O=Hy`whc8>Mdl@obG8KFwAuO`EiBdhcXLj5rX7_@BPd0bGtTtxETvfyqU3j z7dCA~@mVDAOpG%TuIc}iX-m+m_3=TNTnFVRvtUsQ?o7wHH9o|+OJ1}eBz5M2CN>GS zelw=B8&uH}C&_W$MKonNu&qL6p*UoS!y5G{IWA3GpEA_P9nqvaij`1w_bz8>`K!+Q+5d6<$MSff zz|4gx@^lh_8CC#@p4o8AhZ-;Jj?d=V>dR*Mdut=C$%LYj1vK45vJ0a1kdDlthz}C; zy?B@jm%gY!L@0=MdF=X{X7rhq`7e|7zp+NuRk79`(>^-~GS%qV!_?jm+-?b08K0KpMU?BN2kUPe7f=C9aF!R0c^5Z zfEFu|S%ny3#t`X7u=}%r*UI`Kxi=nT`->Uz=W1+IICQ^YbZg9tSC%;I9S{s9C-PP> z0$*!L1u9i&ok1prKng*z;PKWsF6S42>MT6JEsHgjzv`k_{Pq_Ihc0aug4QKz;)gj6 zoP7-%U9uvoO+B&d{5QNEL=f3FoU;t+N3s-9Os9K_1S$7|7|r?pmf{c!i{##Pg3m{L zsX6B}F1tU20kl>jwr+5Xy+5aP?{lW;7I*!*dCKQlLw2&O$;+T9! zV1+{fVc_9u#oD#=`OROul()aB7aMCf?+J1NQGJ6$m;6ext#93dy^jpf=2=b`0hn<; z_U(KmzUcCIxI(G>RRD+56`ZASB@hz`=MXMMs|kd6C=&>o7md&}3P$4?K2zV#eiJ?K zFI94a9u%ICbfH+|LIz}kSOs(jC880@`hTi1zSD5#PZe1C7D+WqNXr6MI1UpiGELW> zU}}3t8YMM{NF^Qp9_L-&$J^g}0k6AcCGDZlxhty-b*0?@bg2Px(AhQg#<1AC?%=*h zhffzG=$Jxq-*^9E!`0Wk?`=}5j)Z_oGoMxZ7Cc=;hU1{4Ty<1S8CbSd0~L41quiN{ zV4g>LuiylIPBG*>2GOjx0av+pR=SXqbF2_0x_cM#)IC!?_KivUmIR#rivcb$j6W&y zilEzb2KyL^n)bjL@P$X%rl?IB`p%ZD{n<8t@#oLt^%tMTK-keFwiYj_vA8o~!;S)R zDiDaEqkHHL3l?5Dxohj~n_INsot6Rs$ctY2PQOsIFasgryQcw(6d6~^*Fj^iDj;ze%DS(crye5 zXK5?NT)tw8hqty(MxqyPy8C}<`@_;~)B!aCw zWA=?C2w>_^LamxGF;!=BG=WH9#qk5sM%TO12Cu`BVyKl3)C6tDqu|7JIy~!~KW~yx z{^rvx=$z&_if#SB(@GTS(@X#wX<<57f&Sj{U!&?e`PqTLq`3r4PPcmfM}0S=?&Jxd zE+<)QJ6F zDVRpn9=ul<>DNUynJQ|BlTJH-)et-Yrh+PNcCg`nJzSyHs zy(#$i#QFhRnqnKmut;^#M}W3RTe=AMKe>R9-n_gCeiB!=KX}*Q{I6DaP@ZPsyQU>* z5rB)<2nOd(hcla|Ud0XD{~kyIw>LZTF8;-{ZI7q(QlpEd`}WrcHDo* zU;Xj;==P~rE7de5a? zY(tco9`+?#?n}`+1WX|0v>P}yo?_=fw-87=S35+>%<)T3?3XXp?JSiY)1~fN=lxIi zbKQ5=Hs2D*<(>E6_L28Zj_n%DO@Cv_TPja?@LP{1s|54=r_1BdRhRR(8~>f}mIcH1 z#G5+XRKOLb<*W$jPiuT0+_h@?bl^8_`Wx0@qGIW4o9SVLKrr+QP1o6?$r_$)9#jyT z)w+)!^qiXiz{UZt`|kNO!T;Vz-ZweE`!LfZa2jK9($m!f%pI+3=w1R#hWzGpHB;h? z6W$4vKB3h7O#3P>Yg>jV{g&V^2mKgm7ciPcVOeQ#(xUzjk z27aS@dJ=(O<5h&Z8T!uD46m)QMbuAifr*22bPwl>PP(k5b>Z&= z&#vTScU{rU1~TwJd^GS|2Vj{WNdagaQyMO~pva?-R`AmyymT?+yB4u(>HlW4*f2u~ zJfXOz^K8xx7POdqby9&}g zDImGk@V)GRIN`9VAaN%j{DnwfDSNn#4muspXn)<-Rs7upub%<_-M4)3q`?2N5deTG z2WMZ{P9YTd=@9MZpC+iEjkawJ=uXZlEX>QuEpwiQY|;MX2Yz`0f7)f_uPLYS5NILM zc}jUAM*+pFMK3=^7Xwy-NpL3Szn{FEkFUFCCivg^z)6D-KYD{Ak1GThyrP3Gk5@)*oncAY;1{5!w>r|+N0NS=C&090F}eU38wSn^|b9InC8*(DZq_t9Sd z8M+Vu25RKZ{QJ6h5ZAkpoGma{;Kz}HUqh{@ACtc?yUe~&tW}+~3lDi5H_#z{ULFi` zO>qTF!}-YGWgs=5TK{Hl+jT(;_)|OY{Pz1lI5DC|V@S5K zLUj-u%altG#?JL6Wxdw-5d<8~4sTB89l{74Lq75GswL zsXb9`VuvyDp~oKh*GF3b_ww7>{eTW|Kb8W}5Q4(u0?Vyn%k~~XQcE-+zw^!f!PPg> z*)s-09TE7=Nc-jp{2KS=^vr4iO46g>7FeshX_FqiY?-a;Bqia|D?@rz$bf9)?4XZT zULPGY+c)CAEi3rUeHT-S)DhtOLHp9a`D>Pf%O|N=oO3Ka^R-|d#>7uKYbP9TJWZpG zIOpos@q2|3u2Md<>!G`^+jTn53YI|d7oVzsPwL=u=NzxSL~!Y9xMMr)JIQ9BKtpmc z=E;p?*u3sq&~@H&;e)JQv4i;0&op}q1!B677 zwEkZ*>#^m)LjLQK^Vzh2esjEibJRU9FA-Z@KIp1d02~f%J`&$KY-3=ywY1Jpw$Acn zYXMqW!(hJ8t9$2j+g%4T>yQL|_JLROcA+_QM&QShfnRGVH7oF&;ci9i{nogl@wd5O zPXhj9-R0c5Wkp^q&a}Q%RQ$%T&g0SxIswa$J=r4GZ98gIDk%qsV-6h5x|}yWHF?6n z|A%oz%p4@>$sZF{=q#SN5F7+9xnw>Mtvk?s{xkPo#?KDCnak(hlpB0?WZ>7D_RR|X z5F(cmIn5i07GY@yn%VuE9>0`ZH=RQ{_L>2EsVI5l>pHpSb=@s7yJXqo5bKO4*6W$br6I%AX|1eks-R&p-#cBn?&%Azs zJMTC^wUz3;CEDw7h=Yxczn-tKKJmI442zx{M4&2FY(Ji z-$SwBosurh?<+9BFS~#4*=_vur*^V+d*vm!0JA}E04V?G2iGla?_99NS}Uwgg)>H2 zvNmalV`60YuFrh@XLiksU)p{iz>c zyJ>{4-aNuoc_tNItByXPUu58$p#T0~Z(7#gF>saE-j!16bA?dnWC2Ys*$yl=w|oxg zpu2Y|ANphklg1m zhzxY|{D9xSIpJ?_7-#=*(%dx#vi7iD+wQo2^AlfrRJ@45%Rjts+p><%!FMR_UyBn% zU~x9WCSyoj22(}42;owUDI@SfD4g&>h9C=AQNqX);OEgTBx!w95QLpx(7q7KoLRu; zy)(a5F@!}ub9X_?X>4fC>=t*z!}koccYhV@EY3Oxi#zzOv;TsEu4f?UH3Qk0L7Zm> zt*L-r{0BZUdbJ;R{H~Px8s`jAbsuqUFD^cWwiS9i0y+u`tt9P5fpwN7 zjj`6@tFUQatC1v5p&nbRX-G;JiR{J5p61^urMU9qc3$(cV+#O4=)usuX(4C?->rdu z(}?GPGp`5_-F=V)hpO4uGB^f`J9*p6e`Bz;=NM_9nkI;ZV#~-U%_jn6iSQjs(ssGR? z$FKJN(g#ucl}S8Gt-6U?c^iRB>225amOT19HJe9AFiNg1y=60v|(58_lC&cTYIkkVkO+2b^q004wO4E8`Hu9^Y7oVM1j&le<& z@0#G@$48qvbU{`5?Q{Q{!M44~Sz0by^83T}9=`d^tGRF2c^N1<*AV&%zx48bTzSz8 zvmM|AkGAojx0N_>Sj^x7rY82?zUlEVet!R+hxfJ6#r4MdLTr&L-u?c&dl#>`>|;uL z*T(67YSl-GqkXg&1Pi(a-6e%q3SW8nO5+I+g~GLT*jwvJt)*Ivn5a5D6(VvqbWY#^ z>0Gu7*gB>vj^Xi$$+#0&SdLIVI2=6-+nK*4WXpl0Czx8ovi{5>%mDo;u0R6aCD^xV zoQF4z(%7UTkW;+p{OefMwzpYC5-nxqZ$0}uZrk>9s!5n>V=e$!p0$^2uhrCc{mmSa+53H%}mF+Jri z-}f){9X55C*fCzV92$$Lnr?L4YNT$*3pJ*v7g0QV)k`W^(g*F+9%oMAn?*pN6vD*r z3U}YXKWE|$7RRrx`V5y0KGfs`o;Y+4U*7a4Mk-xR=FU0Gyi%FpdgVhb9vFQA7%a`_ z?_a_<9-2Rc2~3juq5XT;f9c`7K7Q+58lRtyVo`Fc0w4kTkx$2eC#C$|Bzc@D*+AeK zmM?^2kmMPUKuaHxD3=L9CI}MgvQh8C3Y>-1fH8(j-BGSu;-rp{3Mu?-%7)7}V-x~H z&ta@3wHA{&lE^VWX*oC+;lkzk?Pq1Kqqi5`Jm2r4mO z|JLrN0AS%)&i)V1?B2?MJoz@BJ-nROokI&=oj0#t&lRhmdO^(n_a9%*=hv;ITvtsh zI5nnn_|WE?A76LF*C!6|9G^qu>n+bE`Dso?0OWiAe0|Tr(D`3=l&`GUZ^zhShUN)2aL~k4D~^8 z+f2fu+59^zSVVxY!JCZv+RZzf0^o8p)fnH_5P&NeKf$k@cL#XSf7tYn{R77H||)!R`z zX7v*2Y!gW3vTC^io14DWruaHUN}W?B3gHye$!s$xD{zUxCXl9%u}Mc9SquVW3{g@e zH7QyZ5kgQ5vUtH-i?O*N*o-$Qc!H!RICL0BCKH0L3sK>GWEc=EnU}?7N8y}%+h9rm z(Loop;)Fm$w}LNxc`MawdQ<_xIr@r+=`D;?QZ(HnG-Sh9Jvdc6Q=@x6m34YQn`mx!Lo7)+KZw| zX*c+AkrNF(~sI)_q%o)SnQnV6D{jS2P)*9bb+qDxDVVMt-=Od*)<7JA#W z;84tw3DCmlv|5sR9(>_TTc}jcQ3aq81GHuVjWn>q1K=!cdUxV*%qtwGzc^0Gt5JzU zZhH1*RARqb4NQ{S@Xjr_-}uOVpSbTRrhc}$Kk8Pv;$+PJ;F1fzU#&iVZl(MnrGns` z6%OBnvKVKxyAO@#Y;`5$;s8PjYHpInat%@`o=WZ^7IoGHub}QKRP7X#W`s5RO13<{ zkKH@=6ICP1<%Ffn&q4{0#~*u)APiZyd<8qUZX>E!D3*#yrP;D&GxO&4lf(%ZUVIsS zogNQ8^bjUBy!z@_;Rl_JjwtpH*PytPplv0x5Kvq`|41v)auqrXuwp@$DTt$hKHDlR zX@i~HGA*uD6CT`D0c#l>o;WE1Xgs#gWxm}_|9xvYc;lmA_|V4n|M^%8=+zd^xZa}i zvv)r|f@M-C811W{d;33szFOUM<>dH%6hm0GG{IK_hv07aSyqcz61aAru-|9D-Ad{b zB#NiZJsdRK5l+&r`+1=D4G>UqV-#fJ$tv`9fD+S%i_f+7UP>{563&uci3BmS;@*pb8uwW%t#N)_iUWBZ30TrotgT;-Yd8}rYV zHU~J$L9e!eKO6MtwSBz!&?m>QPR-Px9@zI?lrpSYD$&v-HI8zvLg^t}{odZ`<+vo7wmZJ-E6GZ~3#_;q$ID0X)1#|NRqJ=VU41ySW9&;z#dIaFp zy}$>$vL`Rd7O-r6v^xF$gs?f#t$|;}%w0}TsHkwP7(l%H{de~*UViENo!h=R6epvs zS}Iu3BeBvUr6f&jSzhjkXswVk>zTX9`!uhX??MTMROHX+1ryySr`DEsEV89xakf0Vhs_Uf z1m}2q!&m?JhIKbK_6nLHTLVyIdb|1O-4P@Jx#*0GfB(?_2Zm~u!_4az^tC}Pa!Bb= z${=NkH8D{XlcbW+50T2TP_4--Vp2BS=cN!$K`5#c#$|cFR>dqe%$MSMekL$d=HN+# zbydn~1?{!rlDySbf)d$~y#)*A=ajL4_(GS%*{(DLj%S!bcND3BK>KTwd0Ulms#d6r_}yw&x2iQU_5| zrx>h^>!CFTY*D$FePGdZk zv4GZQ%;LOxA@!)l?t|M2ON-!upg6A`q36yBT8}NyWiJhM9i1+IzS`c}LLlU<=Vl1# z5%ZBw3H+l8fB-~C_rebx*zp}asad)JeCbFNha{WJo24oaD=kv`#Bs(kIOk9@%r``8 zEUb{Z0ElLvoD>r2BvBeuk7@*d2+l_$Z~{Cn2)qIv#V(?#hA&IhqB4QkLr0sJ)e-XK z##%#a3~6GB3T|Sk1iSqc9DDMiYhbCzo>^LfdtxrGm z98A_=&ES!mFXZzx@eOTnU4u_&>5_=^roHE>s2b1D&?s|*~jY!flN`5a!IwD&q&BengjcXIW%0(I*Pg_^;!qxm2D`mpUQy=+81^n9k5y2y?;FGH9UW4deWje3BTU3 z7_!yR&(e0$VpXJg@#eYBWdW2(4!DQwn94;esCrz=vf6?62!aCETB0Q4jFpQSSUka@L!$%*ORW+x zRvyJ9qtu4|83HgD=(DZEcm>K4^mxa%7&H9(37B}%(r`T68oU$&AV2u8lkf22XWG5M zXK_CSA-Gy4+q3|Mv5Hhmr0Ap;Rfys`O36$JtiTC@CqitRQme*j8D&-?_t{n}l*$A^ zN(D|}oxmAGJxz$C3KLTm(j+BGD>w&ADzva9vBDY0?n4pt7DzfuKECWD^yc9yOWlkk zq=!xGIfz+vhEhJp8cL-_oUwEX{R{R|iw-d|UZh;#O{%+zryOCsm=kz$lqVV>%?3xF zfQg^s3TAA#Q-qWVA&H|psdEUe zu~uLr&BR1Rc`{+-;8ywvcC&QxYT6226vJMmb4XDmH8or+34$V8`b1Gm6psN3T6y#@ zPANX?F*Q1jwK28PQNqr?W5)rr$RZ&!x|mt!T8U|{;6zP)Q(*GHsX3?_=<{1x$d|$b zC?>8^0ty91F@TY>!}C0Z6vRm_tM3cd@}=8|;u>)pp_Rtvz8oxpE|HpuTCI+?P)tLN zZ_%E^YJt*%)LNptrB;hLJXR%6B7~H=pg4Tb&-MV460D_Ow_tn{YZxA`a(JrF$l*zr zEMCCS;7Uq``S`v=+Byh{672{l3EB(PV@I_~GtT`A>plYEg^LoTflm&?Qer)&oo;lnmaP)U&!wjvcp(N0axazYB=b7g&=q!LbwV{RQ}X)IN|DAL5L<*9Wa-Mij2_%iG&+t2Y7FT=(-EbS%D zRDGIak|LimAY>k3>5O{H(Y*5N!j77<;HXt#C z8VXvH*lZh>ICfcm0IThNTBD@-#0)#Dr0O+YJGgKi^B^tXf<^tLdLeVR#PU2SVu08<#67?1*40p99&E&#XG3<h{$*hp6MHmqi*9|y{F)8)> zIDrbN*QeOK=Mcr>cBGPog%D$9wgb1YD3MY=oZ#zuL`j``xjf@a%j2bjVrCTI4BXU_ z4J6M+a|17Ojo)9-I*XdX2wkYwN@&$!kzzMjN!XkQhTf zsy65AI+v~2lTsq3%4lFDo(8QnT4|&(OjIoU4n~+{YJBJBuiq|3T=zU>CPts$Q7!M@ zxA2TNUbB5~rEOro&e%pH@O_1`DV}E#BE>ogf&$7bkfdarFA0Yf4&Rr=HA`YN2`O4x z$`!KjF9Z%t5J-Zsn+h&VHJv>^=(Bs}W(9#w3or)})BwIO$b@4ghJ7`N?M&bYi`nVR zm$nul1j!L5P^u7@MpWukc&dODBI`$Y4wEL-qHO=$ECuvXN)dP(ttCn+lvLRk>B8ZA z8ZXg+W%s@mEF9ST#Fk2Vs_ywJ&H93ck+L4u%e$W}b+3APxgzN9il|2*t%p*Y&{KFy zQ%mYp%Vi#aWFx)(Jya`oCMT!ppWn~^y?g2D>%j{Om{+YMnegZzzZ$RIqT&vo8~i4L zZKF%9Mv04XE}dCV6~`|Q33+4?*bD$?5kY6QL7SJoHX6a+qX56Cn0?^E8blUWcC?HZ zc(I8fk$0hryu$1pU>!neqzE$FS1OcHSRBR*1X-XbB`75b10Ub>&{E`GLRo`jpamk3 zDCuKTMA&wq&TueNXsL0{Z1c7<^VpFu%sR4hhSVbn_yoBQU_gr7Gu0rL{JvjJJFcefUymq zZ!@5g#7T^j9wM*X2SJf2o+9uHAX21C2s}q;dk3BXV{BF@!XbqQ97b3=+694i_YuzJ7eaw_NSR=)$;hA};LLN*q!_eeox_-B z-y9%FsIyINMw>R2@JRd#{Gm<%us&$dAyfKZ%4L1Km9#&XlQ^!+2rNATb1YSos zS{tl^_OKnKz_}EecjP$dGMA7_w2}xkix>Djxy7Sz{;IRaMxNa{HnRPIwa!Jg#Fg65 zSS0nlHEEI%sF+$!VNIrLzET7_BcrV6@I6J6q}0RTR&f`BfpC~ zazT%HVFUmVYaP{kzQ>%&z;`$T&*5t*cmdW~d}UEGr4SU5LLwy8Bha2CHCdV1IfGIf z=NuwU8!gQ^6rR?czq*Tc8&ZGe+BaP@HnL+&wK_SWy<%Hi$KYy{7}l(5C#omJsm)n8 z3EE*&fosg+0el@Ggd#BsTKZTeP}0xm4mgx`IHzy|q|sO`U8N2>iY3Mm8?3civa9uR zK|cbdS?yr5HFXoy*+7>M3ktBHm{HtYreJ^d_yEmS3+V1WV>xi&95Lzh6M!@ohomw6 zQIw50?QK@MV(a#MM}Xh5QHJV_EB0Rq##Kxm3obGwSu*>xuiT>nJfr>AFaJCE-~56 zpEQLuwMf5!@bodYy%qRo7BK7Y=OTh6uxb3nfuCUkX2lx06F8X>dnYUaF0$U^zH=9V zBT58HB`D9!;_bYdQwWKY8M&jRmr<)OCJ;e>Q3P#;4(f3|UqE6psl%9TY>5<*I+wRx zOQKkkq=JrifiW^$6Oanh)HP?qIVZCI0q64O&J6HSdxV7m-}mu6AE`9fSjyE3)u@he znp%{QCWh2ntZ^hsk_C%4TZLSUvgqH*B8B$$qj&d+xu26Qe!dB~JhHjtRKRcTAUaAG z@PfGj2e^8o9_bFlcS=$wYnuKZhftEx3um%jiLCn*#Z-l5l@A% zfORl7Ie|?jsj)54;GXp8I zrVy0}gr`d5%B({NEsiTg;`s`I1KgMX<(GHHu5>^O$z<80m7)}uvIUoE9VZ-0WusoQ zFPCxt4)8o5PZu%{!8#I?k{XMWK1mW2#WfIFWzm>yn1t_Tw@SL{%9&_%0zv3!Rl~+) zuEt==QrM0X9-i{CHp^6mbGb%l`GJ%W1|h!oNKC%^w$aBRvVWVzj!L}-x|?N7dwAt) zIB)1UYSuFCRkf}bZXtfOn$F*qcz!&7>t~#x*En?x0N8TP`?io0V+G^otZh3Cig?Nc zmu43@U*aWDS&HYfegQ2NxQsxu`ScFwEWQqK&LV{%GODTZ#$`V)@C9MeI3f7|n>+Iu zzpCqwf9_jh@&I~B_yrdv{VUF)u>X`Dr!=NNL7}u z(56sA+9p(lGzlVg0tq!3u+3s)L%iE#du-3*+2=RE@kk+O)Uwx_k~^x0`#+eIcZj^z-=+Ick8jFzzsosP~qE;+|V z#sP_nTUtT}f_fv;0V8V>YcKD@FyP8%@SasC7kaz*)l&J!Y$wo4htcdl_XaMJ(I)3A z7m(Ee36Km7?Eg`q79bFu7)!KZg+boQw_ZDpeVr3P%~baaF_R%|riK&Mipsfm4qxgh zW1{p?Eg2^$AzJ>060JaVtK4k1pDW0oigGL)FZ2)?_+bM-YUrZS)N?k|@U&%UaK>?n zN;H9$^bIB}(+H~*gvHv+7PVCR>cw!w8gT5_3Vp76Kp|!~6KM+FG_*E&qZ&Y@yMS|< z3uxB>@k9S~>nrtm!3l(5cw7fzn$Aw%Ev2V+Onm9Ln;;5WvnH51FQ7zPV~{$5A~XGIdV)C7b%CYaJQQG=4pK@QL7g<=hnfDZ zFa)+~VVVX}5)pces+SOiA1ckdozsW^17 zm;U~K`i~DVJ~2k`{(}HaPEN9K-+n5UX$A%cc>1ZQ>Fw>+022b+bTNcU!>`sLL?@^BABj`uuQcdk z806g&hGAnFHeTQ%BdLL)Xi<|pwnN1a3BrgKD=xxuTu=hjb~)PD2MAu+yoJ5H_tD>f zj0Ye10h=~G$JQ6Ovhk^BF${y=-b1{y<5kM#dCf#fOG`Lb4$E?gWJnxq;Az4ooyyh) z8v@G^>FFhdYDF+SJ^`YP6!R!`bh2UdB>Q`#)+A3)>%2x&#k&@K^lHr_W@J`=);}=X zasgJF7B){~0-Azfw-S~XW(&P3cu&IQRB&E2K#O?bp08d0?eRwUkPw2=Ny$_#J?oFr zvi+`=BUUkqigig<*~4#l?xer}DEOe1ZYYUna=%Ww%rL=;KFFvPWUtw>(g7YM_|R5`8z@eL00 zfA96&c;k&oWwK=XCA|Ckn_5}LKfd!$A{p`7&wrj;qk_O>{0CEx000fKNkl{jU@td`8XC?+P zR|xl#g>Xf;F8?-8vU!)lu|XIf@i9;g4OQqndP;s_)pkGgIK!#J(64Oy;gKtD__M1! zigKk=iiRiX>D19O&F>rOf>0%hB1tSIjle@-Q4I`zb|0Y`O%!-R13%CO5J~FA+mrl~8At<Q#b`2(Cow^o&_5J&_}CbM zw1~`$86VlVe*ME=dN}Z>U%ueNYu8woyFdY>6CndbA*)stuuO@_qF2aiP5>JhbCz=mfIu;ryA)EhyIIc{R~ z;FHG=J-eG3p1_b97SPwd)tpoK=#G=QE8qROCF^eg=1UiMj+F!nmt0h2d5=gLJOlio zK^R6zncxLJe(2-J24Upl*t*NdwrwxrdkumpB9ID07=&pF_PgJC6+5!Dv*dyvA{i0*0Z|~4GQzejmM>q<%8M=}?>OXLhn(xADdrf%G(l_MEIy(#fvj2^buSkWvx&l2>*P^5V;VuOW(@96R*buYdNZ_W)Hi zK~#m=6mjZo0njQ&NkLG!{ZAf#|Jp0Adw5yL7$l0zR^{nlAc?|=hVRkv^u9li69O4A z+0ZLE?`YRKjuT`ese2MXlmyb#MI0Cu-I#i=IQT`IdZ&0Z{GlQRv=ZezV+FE`K!IJ z{CqDnw5oFXs_V<2{K60Kcih67W|PIvg*G32ZztUgO_CG@o%2u6t|{9b!&3=zmcompNGlVsGZLi?7G6A#V9=l)u z*}(G4ZXM0#yFZY(8w?KDDHlx)BP0kzJU=3gBBD5Eq7E|BYamV{loCX7jFd5TKPF{B zMal?;Aa5%y+t%CxY0rQJg()ly!yr*HdAC3#tm0aEEZf2|bw!b7nysViN+rlR!nAB0 z+aXpl<6{;>Cp?by57AH;AXz})!HxHCd+xsHnW0#10FBDT@#+g3?)mR4-}SlWPOfwb zN>Ojb>_1%N!nYMD-RXsS;A2U9w17`h0)BN%```EQ_m?%zK zOrbLJM-J`%^*tLN`-=z1NA{m+d+yVA2S1zS!7Nh%6z}@_j(e9bGC$E_4-4CBV+0mK6q7G^F+Mh&3Jna?Wc7ue?A@~$C+AYF zRx#6k)Y7F(85rnCB{8;ZAe4z^8zfOesZ=8GI7k`sJ6Ej5woC*HKlHFI2gfN>t6GeX z1spy$#H7D~x?I4K15e%i%&)%jcsg-4X885ObmiDU?n__a{|$;&`LFAT49pi;DlXZ>SM!imTx`Nm6 z@EQS?=?armRZ1O;@Vy4L>NJ(g1XB|ethjI~Cx(W}=Ufs6#c~V|@cs?|{Osd* zKar~Zc7EMileq1f`=45M`GOw&9*`?_f3!d^`VtmJB*M8vwjs zC8hwjZ+dXkvNazZD=b`lvkWGvRH}@O1uW<&u&69h${>nW>ios{VS-GwRg982^=M;~ zq=94UpA}~61H>dswYGlxM7r)b5Gx&#v`w3s2*=XQV7>?AV~UY+$^OGbG<=h(Xc<9d z)cX!@ygya@en$A&RTT1CO7#R#JGVZv@1iv~jh4z?*CB+9f`ff^{2*cFvH~bww}_!r z*zMQo1PqSE1c82^7Srt;?I-(kg|5xr7vB6{!?4PsKgGzHPZ$ci7ueWloR)4S)I-fQLVB1q znW*pI8zk%x!E@E?W;@N{GKix zTNlRIwjcYJ2ei*MlL>NhWItwiBDzcu9&DasMb78XCYQ@1;Q*7_|+r(e*5V6w{L!6 z2eaF#oKA(F>OGsgpu#(Ex@+}yzx&1SS$2L+vu#}0LWkRLU5;xTq_{H?8Oq~&BvlSU+(~vu#}W0+-uAx(vrQIW}11=`BNyjQO*A2E}n$A2|HtBTxMF%RgtP*~6&>e=_sL zTMdBr$;oPiToVW%|NRF)*}3@ATity5sw9{okrNP2BBPonm53uc%DRxFRCF}avy6!2 zgfNm+>pqE$nVj}?m(Kira>Xw4#l<-8A`k+vKC$aq@1|dD`QPtsPA9Bg_}PigPU@LX zX!bqr84$d$=L4Vm)_ty9en*op!L9Ow*{*6MNQg{N*?PYhvW!$@=+a z!Fk#~KmQ*9kliAhnF-1QAqTi`zvi|JFS+t#H!td5eT(CkE>2{KimOD?G)np;v8RuH z%P@@&8u~c8;bNG1EW3o`&PSNq&Gu?zyT(TkzHngY`YnA2o*qn9WR$U&KC`=MwA;|v zyPC3F;imsn01AKfm1qApU+!9Wvc7?}>d5XL&;Q_oU0WYMa0+mq%+7PJg@3jH$o_p+ z8)Siyy*oW`yK2Ge%RhYC;-yzyW4YxX$0_t!c7CyC=N9WjsOdW=iYW3%qM$Jx2GtSI zs|*kKzw+Cy&wlUK%p}Q-@WaeR2ARm&TrJbi7VLHgdzqyIoeS7B;e8`*7_~ESr0COb0vOusifXLpn^$*#aiuUli%2q6AY8B#)aKj7; zqPDHln>ndj5Lj6U_)}ka=#HLc*W8`NQEhZ+_oF|3@Qxp)-y3DLlE=yW`Nij3@NYH% z+HIzhaTK$oUHDlL7-s;0cn$!_wx8q7|9!J3RkYi|HuPfq(t&Vw4wes0wEd@==qMXOMLmTz)iwsmhc0NN)? zWx!yZVu;h2fVqIsKF;TaCT&r}CIEtrIZNiyP;ZHyKc6PxOw?!lFxvk8RA4&Qc&p~G kUAq}=+VEVOq_e*M4Px#24YJ`L;(K){{a7>y{D4^000SaNLh0L01FcU01FcV0GgZ_00007bV*G`2iFS` z4I3!P!FTTf00TrxL_t(I%XN`!Xj^q0hM$vj{>eGHF6m`!db91ibzaJ1hqc41!?r7I zGDPuG5Ea}$6a~SdU&e-xO%PGaphE=RCez7uvQHiLHg&BNq!y*^R@#_$ZPGPOn>P28 zwg!C<2zB&+EoqD?IrM%x+Dg7KCGAz>n;djoY zTK3ir{CaOyNXG7CCh9RpRzumr;tBiBO!%LWiE;I<{PD;y=FwXgT>E`s@sWo*J2#u( z)JW+`7P14<$+fd$wUEFl0C}0UkSRqjY^)V(N#896iTHxqu&aO3E2ewg+9-z;W2DUj zJ0vHe9|V?a9eqjSKu)oa^{@nPG1mq3##KJ?Yu^_?872d-aFce%_g&T=@~PY3jEQz_w{ZG;FWhdHEb)jjwd%Bl4l%ua++^V7JcIY!4blb@bD|9tTJ;Hc8| zU~jMA=V^DW>iDaDs5^25T4d@fEBGrk&e)O>*uIBlS*ke5KS{^!bKf~KlAsyCIP;9%&d ziE)RmgmltEII@DkK*-?HK(<2G1iRp0`HHaluGLl8Tb5VWC=_x8n(LZ+)Z7=S2I&8H!W~XMZTsronuBVm&W7p$Hyql`F m@Bi-N;q!~(KWBmBI`=neGD?|8&Jn=?0000Px#24YJ`L;(K){{a7>y{D4^000SaNLh0L01FcU01FcV0GgZ_00007bV*G`2iFS` z4I2}A%AU&r00l`&L_t(I%Z-$6a9m{>hOhIUbM~A)XTP%DZJK0FL)tD4jo7pf6|e!F zqICQvKZF^WIs?Opj)NmJSnLc{5j#blGFC;Ph>QrM#4)wWv=m57TZeu@ol09x8eo?+ z*=(}e&1TPj?>WaGAqB)zpMUSnJ=fgxJokIU|2YpmKG}2YeSZopyzkz8JhbV%L*0P% zzx2xGfLnh%*A@vie!6C5>5l%&%3lKye(T}Wq4*WbKx?zoT?%e~sJwc|fX9%=`fsi| zmjyraOinkw`u(e8=eJz<*@>X;^HM5C?tTC67x#6=J=@mY_{N&S@uv{i5C6*3(6&2H z?E%%tb9D@v!3uSM#;CnVSMl z?cexRu-6FHTRWoe9_yF)5Bx^?foPFI`s6aHFwN@BHVXv zJ|LPFEe+JFB^hkbhMTTVPD_%Cm?f7PWnEz(UkL9;s0MFIC3coaXtR2`dC69UBr%yT zH+BzRn7Igk_=$`s;IDqa$sD=QbW5#Ot09%Da?w$njcm9}YHBix2B4HF(lYrJH^g4! zK=R87vzZOoR!~(qbw0o|eT9<;hF<=K1n}csmcKQUe$@;PuB$6qRG~9*S|*#WP%aiJ zHNu3}-cCnn8|@J&Wy`$xb^^mm67!DYle7FI8O`^-I`YWL!#n$2*O^oRqM^!@qB69u zU|Z;6fo5t%Iy@jdNL3G&QkAiP{*AQ%n<&EM$`&t6TDnNgbTQ|;WUCF{PaGdVap>DG z08@ag{AgEcMJzaaTP1HYSEzvves37Xl+j`yOidxaEKVX>;NZDaWW4L~>ktcrs(>m> zD5i?;kpUVo|8o>Yhz(vjFO0wy~RZ*KagLy6TY2Tf~=LM_8SN4{~I9 zz|f!!*b;dDs~m*S>qHxkI;EP8Bng@qMM#cJB@VuJ;zYHgP)QUwhKU5`+!+w`nn)e&e4wcAyf*5)Owh{Z`~EJkxOLd>tg z)Id`qnFpT=sx0Xr?PihBrVk2ri5m#`QB{q+RYM3{3WpTgwQV$6p)C@|t;=+G#b^(I z=-8FOabd9m>U`^b2!8U>b!Sih+cThg0$Al5)A<_73n|9OQ%s~%;7U|0RZ+l`v5238$XeVrQ%Rw_E4&VmpahK5jNBuQcP z-AeJ;@uLr(9Zqg5H9Eiex#hm*kWbLC>J09Euk!S>gMZxL|LB&YHFW{7FZS{9=>aP> zZTCrfx6h+`<3bWz!K#wY$+h8kif;`K?fuS?*I(L`7=C@CL2yr|*mBKG&Taqwi^mSX z^uo{YKeB)O?~2w`@`Jd2d?yRXH2u-=%GI|la~)e7J-0tKmm8Y~@(WG?dal2-DI8tC jerWfWlfd*xfeZ5=AVDkBbi?i?00000NkvXXu0mjfAI-+p literal 0 HcmV?d00001 diff --git a/bootrecover/bootrecover-32x32.png b/bootrecover/bootrecover-32x32.png new file mode 100644 index 0000000000000000000000000000000000000000..d5beaf3461036f59775a33d890a637ee7700a542 GIT binary patch literal 2464 zcmV;R319Y!P)Px#24YJ`L;(K){{a7>y{D4^000SaNLh0L01FcU01FcV0GgZ_00007bV*G`2iFS` z4H`NkV>jji00|&TL_t(o!=;yba8>mc$3J(!_q~^wg(M_A5+ey)zydBs1xr<6WWb^f zV@s`8TRV2Ktvb`u>Qt&C?qz7ltvZ@&aRCGdswj#mh*B1dAt8Yz67oX!^|5LY`W*U zhc12@Fad7-{T409U$oYB&En5@uUpcZdi?10KgsU8Ii_&qzVzAXWx6V?ylmRQ zv}qGE{H12p0~OOQC+b>Y1W z&ePv7(d-ad=`5u?U|=UntAS^u8)-7TPs=CNDAK$t$I7HrAz<4X1BirKo^*hzLCfLT(0tqZ^=ef819%a#BFk{WYm%$UI{w z-1Yu5!RonBT@XS72P6SkHmFGj*_G}&QO(GLfNP1gu7TY1Gl*(-zwKWjB~<== z$MprK_nN86L}-h677>`SZF~F1$m1MJTm`buVb|onWc%y4GnVUaEkqcyfa*%5_ugWEy6fP>ZOtEk1oQ%q{H*}E z*(x%sd;)gI8V=TFnB==1Q53TP1etul#yC5lJ;{Dl+edNdEnHOn18GWedU@Z%YaR@R z5`C>lBkd;zaQ*MrNnf$v>hz!h_jYeT1}Pm^AJ%_*)s&{Fq}RJ`m(b8)UO{%E1M zc}%VpM!{q->R{m~mhzJnOG)I7AZAOH=0jml)-O{133?9f=4aI_NZNi@*Ds*B02a>d zz@ujip=n8M__&zY-$@>9sC{>3W9^#l!vKDG>nq~aORrlwuB`SpP2G>{fFb&kOqGtV z3@Ot=RUnbD>5G>WE1ZUs=cP0c0tFxnkPfG)+gV4?pv(oO^_*AIf?p4lr$uQUD5Pe` z#O}{(KmYrl?JL(gj@1qf4g+}TrPRY?N8@;v#-f`AgpL2}Y`w+|v_%1K5e$g<4H+#rV7y!~=X-H%-vD9NX3#p6-DFM~=kmt$A zqp7%v_{Vt}Q*NS4X>z?IurdxkJt0D|R-&C9_{#!>V$jqDCF6z~4FO~cWHC#cG91C~ zS308GmpAyz^Ll3cl|0O}PAED^CXuGQBg%-PJP;JRdxN-k94qNkQQ_a> zv-Yie^2!4sfN6mufuVpcgCb@{4LhKnBH-nm+>%MU*r>>|jw&n2qDV9m#m?9Sj||e* z8BNHttrQok3YI`)a~nO8Fx6GFP?UTMa}FR1AP8AiD-w8Ah}+O_fhJ}5P6@zq9iJkm zu^kuN0n@TEbOW!ZvcIvDcQ(Dcxpee|!a1|2&yr*ahoc08oirV5!jqHFU|gY8%yzeu zkaZ!C3YiQj?hr8HGyv?3nXxSgukIo^X$rgsvJ8@_QdOSM)Ts+*$f{^aj)b8I*j^us zWRP-WM3W&h=|ENkfHWknSA!HFSkRl!0w|V2QZ(c1ow(f9exNZ?qPc-0S5Or%x+)`z z60vv+MOB%8VO2>u9Kz1H7?PjLF=KE=iJtx_=`_^2859W|H+#`>6Lch@H}$1MYBC6d zqziAa)wfQakbloaISGj#g;l2la% zm^&GCvz|+ANgb#V4Z9*u~W9bS@oPdKOPSi^@pSM_J^^NQ56S4 zlrS?Uk|5&Ib2xZ7!r`XYZLhC-(6KU8=UC-uP7OvfUi0Ukgfdbh}icj9D{oM6%dzzc+c e7+{~SyZSFOsp4rhE=$D#0000Px#24YJ`L;(K){{a7>y{D4^000SaNLh0L01FcU01FcV0GgZ_00007bV*G`2iFS` z4H_ab53jHQ01?eeL_t(&-qo6Elw4(*$A9l~@2#b)x_V1@XX);ceK8OMfq;m};9B1L^pl3#B#yK+{kIN_{;KETE6hTH9Hc^yC5JZ*`K@22hPdc6MPVb#ws;g_i z+dChs5;}wc1M$P$bKX<;)VX!vXZb(>XL$?$pI_on_2PfJu6Mp=NB?rT|CL|-^gHkG z0eryBeCETK-z;0(PWy1+l~d3C<{Q74xCjK{FE4V<>pEW z

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 N002ovPDHLkV1kBa*v9|> literal 0 HcmV?d00001 diff --git a/bootrecover/bootrecover.kmdr b/bootrecover/bootrecover.kmdr new file mode 100755 index 0000000..68ad886 --- /dev/null +++ b/bootrecover/bootrecover.kmdr @@ -0,0 +1,1231 @@ + +bootrecover +Silvan Calarco +GPL +0.5 + + + bootrecover + + + + 0 + 0 + 593 + 514 + + + + + 5 + 5 + 0 + 0 + + + + openmamba boot loader recovery wizard + + + image0 + + + + introduction + + + Welcome! + + + + BackBox + + + + 180 + 50 + 20 + 20 + + + + + + + false + + + + + + + + + + + + NextBox + + + + 130 + 50 + 20 + 20 + + + + + + + true + + + + + GroupBox2 + + + + 10 + 10 + 560 + 160 + + + + + 7 + 7 + 0 + 0 + + + + + 255 + 255 + 255 + + + + + + + + AcceptScript + + + + 10 + 280 + 32 + 32 + + + + + @dcop(@dcopid, KommanderIf, enableWidget(QString,bool), next, true) + + + + + + + Label21 + + + + 410 + 390 + 130 + 21 + + + + Version 0.4 + + + AlignVCenter|AlignRight + + + + + Label29 + + + + 420 + 130 + 130 + 16 + + + + + 40 + 96 + 6 + + + + + 8 + + + + www.openmamba.org + + + + + wizardScript + + + + 10 + 50 + 32 + 32 + + + + + @dcop(@dcopid, KommanderIf, setEnabled(QString,bool), next, @NextBox.checked) +@dcop(@dcopid, KommanderIf, setEnabled(QString,bool), back, @BackBox.checked) +@dcop(@dcopid, KommanderIf, setEnabled(QString,bool), finish, true) +@dcop(@dcopid, KommanderIf, setVisible(QString,bool), help, false) + + + + + + + PixmapLabel2 + + + + 80 + 40 + 400 + 74 + + + + image1 + + + + + + + + + + Label1_2 + + + + 280 + 100 + 230 + 20 + + + + + 11 + 1 + + + + GNU/Linux distribution + + + AlignCenter + + + + + + + + + + Label1 + + + + 10 + 10 + 540 + 34 + + + + + 0 + 0 + 0 + + + + + 20 + + + + Boot loader recovery tool for + + + AlignVCenter|AlignLeft + + + + + + + + + + Label18_2_2_2 + + + + 10 + 120 + 400 + 29 + + + + + 8 + 1 + + + + Copyright (c) 2007-2010 by Silvan Calarco +Released under the terms of the GNU GPL v3 license + + + AutoText + + + WordBreak|AlignVCenter + + + + + + Label30 + + + + 10 + 190 + 560 + 20 + + + + + 1 + + + + This program will recover the openmamba boot loader. + + + + + Label18_2 + + + + 10 + 220 + 560 + 200 + + + + This operation is normally needed after the very first sector of the disk (Master Boot Record) has been rewritten by the installation of another operating system. + +Usually you will need to use this program only after the installation of a release of Microsoft Windows to restore the openmamba boot menu. + +This tool is also useful before the installation of a third party boot manager in the Master Boot Record, by moving the openmamba boot loader installation from the MBR to its own partition. + + + WordBreak|AlignTop + + + + + + + + + + + disk_choice + + + System partition choice + + + + removablebox + + + + 420 + 240 + 150 + 20 + + + + removab&le devices + + + + + driverlabel + + + + 404 + 155 + 121 + 31 + + + + + + Label21_2 + + + + 20 + 10 + 540 + 30 + + + + + 15 + + + + Choose openmamba system partition + + + AlignCenter + + + + + setlabel + + + + 540 + 40 + 32 + 32 + + + + + + + + @execBegin +@if (@devicesbox.currentItem >= 0) + currdev=@String.section(@devicesbox.item(@devicesbox.currentItem)," ",0) + @showdevice.setText(@String.section(@devicesbox.item(@devicesbox.currentItem)," ",0)) + @dcop(@dcopid, KommanderIf, enableWidget(QString,bool), next, true) + @BackBox.setChecked(true) + + parent_udi=`hal-find-by-property --key block.device --string /dev/$currdev` + # + # set MBR combo box + # + dcop @dcopid KommanderIf "clear(QString)" mbrbox + storages=`hal-find-by-capability --capability storage` + dcop @dcopid KommanderIf "addListItem(QString,QString,int)" mbrbox "$currdev (@i18n("System partition"))" 0 + for udi in $storages; do + device=`hal-get-property --udi $udi --key block.device` + hotpluggable=`hal-get-property --udi $udi --key storage.hotpluggable` || hotpluggable="false" + partscheme=`hal-get-property --udi $udi --key storage.partitioning_scheme` + if [ "$partscheme" == "mbr" -a "$hotpluggable" != "true" ]; then + dcop @dcopid KommanderIf "addListItem(QString,QString,int)" mbrbox "${device:5:5} (master boot record)" 0 + fi + done + dcop @dcopid KommanderIf "setCurrentItem(int)" 0 +@endif +@execEnd +@setBootableCheckbox.execute() + + + + + + scanDevices + + + + 540 + 0 + 32 + 32 + + + + + @devicesbox.clear +@BackBox.setChecked(false) +@NextBox.setChecked(false) +@execBegin +volumes=`hal-find-by-capability --capability volume` +partlabel= + +for udi in $volumes; do + device=`hal-get-property --udi $udi --key block.device` + parent_udi=`hal-get-property --udi $udi --key block.storage_device` + hotpluggable=`hal-get-property --udi $parent_udi --key storage.hotpluggable` || hotpluggable="false" + blocksize=`hal-get-property --udi $udi --key volume.block_size` + numblocks=`hal-get-property --udi $udi --key volume.num_blocks` + volsize=`expr $blocksize \* $numblocks / 1024 / 1024` + volname=`hal-get-property --udi $udi --key volume.label` + [ "$volname" ] || volname="unnamed" + parttype=`hal-get-property --udi $udi --key volume.partition.type` + [ "$parttype" ] || parttype="unknown" + partscheme=`hal-get-property --udi $udi --key volume.partition.scheme` + [ "$partscheme" ] || partscheme="unknown" + fstype=`hal-get-property --udi $udi --key volume.fstype` + [ "$fstype" ] || fstype="unformatted" + is_mounted=`hal-get-property --udi $udi --key volume.is_mounted` + [ "$is_mounted" = "true" ] || { + mkdir /mnt/${device:5:5} && mount $device /mnt/${device:5:5} + } + mount_point=`hal-get-property --udi $udi --key volume.mount_point` + add_info="" + [ "$hotpluggable" = "true" ] && { + add_info=",removable" + [ @removablebox.checked == 1 ] || continue + } + if [ "$partscheme" == "mbr" -o "$partscheme" == "embr" ]; then + partlabel="$partlabel<br>${device:5:5} $fstype $volname $volsize MB" + case "$parttype" in + 0x82) ;; + 0x83) + [ "$mount_point" -a -e $mount_point/etc/openmamba-release ] && { + release=`cat $mount_point/etc/openmamba-release` + dcop @dcopid KommanderIf "addListItem(QString,QString,int)" devicesbox "${device:5:5} $mount_point ($fstype,$volname,$volsize MB${add_info})" 0 + } + ;; + *) ;; + esac + elif [ "$partscheme" == "gpt" -o "$partscheme" == "unknown" -a $volsize -gt 0 ]; then + case "$fstype" in + swap|iso9660) ;; + ext2|ext3|reiserfs|unformatted) + [ "$mount_point" -a -e $mount_point/etc/openmamba-release ] && { + release=`cat $mount_point/etc/openmamba-release` + dcop @dcopid KommanderIf "addListItem(QString,QString,int)" devicesbox "${device:5:5} $mount_point $volsize MB ($release)" 0 + } + ;; + *) ;; + esac + fi +done +@execEnd + + + + + + + PartitionBox + + + true + + + + 10 + 60 + 560 + 370 + + + + + 3 + 7 + 0 + 0 + + + + Where do you want to install the boot loader from? + + + + + + + + + Label24 + + + + 10 + 30 + 540 + 40 + + + + Please, select the openmamba system partition where you want the boot loader to be installed from. + + + RichText + + + WordBreak|AlignTop + + + + + showdevice + + + + 230 + 340 + 280 + 20 + + + + + + + + + + + + + + Label3 + + + + 10 + 340 + 180 + 20 + + + + + 1 + + + + Install bootloader from: + + + AlignVCenter|AlignLeft + + + + + devicesbox + + + + 10 + 90 + 540 + 230 + + + + + + + + + + + + + + + + bootloader + + + Computer startup configuration + + + + Label21_2_2 + + + + 20 + 10 + 540 + 30 + + + + + 15 + + + + Configure the boot manager + + + AlignCenter + + + + + BootloaderBox + + + + 10 + 50 + 560 + 370 + + + + + 3 + 4 + 0 + 0 + + + + Bootloader configuration + + + + Layout5_2 + + + + 10 + 330 + 530 + 26 + + + + + unnamed + + + 0 + + + 6 + + + + Label3_2_3 + + + + 1 + 1 + 0 + 0 + + + + Install bootloader on: + + + + + mbrbox + + + + 3 + 1 + 0 + 0 + + + + + + + + + + + bootableBox + + + false + + + set &bootable + + + true + + + + + + + + + + + + + + Label3_2_2_2 + + + + 10 + 70 + 290 + 24 + + + + Please select the boot menu options: + + + + + Label28 + + + + 10 + 30 + 540 + 40 + + + + Below is a list of other operating systems found on this computer, you may configure them to appear as a choice when the computer starts. + + + WordBreak|AlignTop + + + + + setBootableCheckbox + + + false + + + + 520 + 70 + 32 + 32 + + + + + @execBegin +mbrdevice=@String.section(@mbrbox.item(@mbrbox.currentItem)," ",0) +mbrpart=${mbrdevice:3:2} +if [ "$mbrpart" ]; then + if [ $mbrpart -le 4 ]; then + dcop @dcopid KommanderIf setEnabled bootableBox true + else + dcop @dcopid KommanderIf setEnabled bootableBox false + dcop @dcopid KommanderIf setChecked bootableBox false + fi +else + dcop @dcopid KommanderIf setEnabled bootableBox false +fi +@execEnd + + + + + + + chainloadbox + + + + 10 + 100 + 540 + 170 + + + + Multi + + + + + Label29_2 + + + + 10 + 280 + 531 + 40 + + + + Please select where you want to install the boot manager. + + + WordBreak|AlignVCenter + + + + + + scanbootloader + + + + 10 + 10 + 32 + 32 + + + + + @BackBox.setChecked(true) +@NextBox.setChecked(true) +@chainloadbox.clear +@setBootableCheckbox.execute() +@execBegin +installdevice=@String.section(@devicesbox.item(@devicesbox.currentItem)," ",0) +volumes=`hal-find-by-capability --capability volume` +partlabel= + +for udi in $volumes; do + device=`hal-get-property --udi $udi --key block.device` + [ "${device:5:5}" = "$installdevice" ] && continue + parent_udi=`hal-get-property --udi $udi --key block.storage_device` + hotpluggable=`hal-get-property --udi $parent_udi --key storage.hotpluggable` || hotpluggable="false" + blocksize=`hal-get-property --udi $udi --key volume.block_size` + numblocks=`hal-get-property --udi $udi --key volume.num_blocks` + volsize=`expr $blocksize \* $numblocks / 1024 / 1024` + [ $volsize = 0 ] && continue + volname=`hal-get-property --udi $udi --key volume.label` + mount_point=`hal-get-property --udi $udi --key volume.mount_point` + [ "$volname" ] || volname="unnamed" + parttype=`hal-get-property --udi $udi --key volume.partition.type` + [ "$parttype" ] || parttype="unknown" + partscheme=`hal-get-property --udi $udi --key volume.partition.scheme` + [ "$partscheme" ] || partscheme="unknown" + fstype=`hal-get-property --udi $udi --key volume.fstype` + [ "$fstype" ] || fstype="unformatted" + add_info="" + [ "$hotpluggable" = "true" ] && { + add_info=",removable" + [ @removablebox.checked == 1 ] || continue + } + if [ "$partscheme" == "mbr" -o "$partscheme" == "embr" ]; then + partlabel="$partlabel<br>${device:5:5} $fstype $volname $volsize MB" + case "$parttype" in + 0x82) ;; + 0x83) ;; + *) dcop @dcopid KommanderIf "addListItem(QString,QString,int)" chainloadbox "${device:5:5} ($fstype,$volname,$volsize MB${add_info})" 0 + dcop @dcopid KommanderIf "setSelection" chainloadbox "${device:5:5} ($fstype,$volname,$volsize MB${add_info})" + ;; + esac + elif [ "$partscheme" == "gpt" -o "$partscheme" == "unknown" -a $volsize -gt 0 ]; then + case "$fstype" in + swap|iso9660|unformatted) ;; + ext2|ext3|reiserfs) ;; + *) dcop @dcopid KommanderIf "addListItem(QString,QString,int)" chainloadbox "${device:5:5} ($fstype,$volname,$volsize MB${add_info})" 0 + dcop @dcopid KommanderIf "setSelection" chainloadbox "${device:5:5} ($fstype,$volname,$volsize MB${add_info})" + ;; + esac + fi +done +@execEnd + + + + + + + endinstall + + + End of installation + + + + confirmBox + + + + 104 + 135 + 20 + 20 + + + + + + + + + finallabel + + + + 20 + 0 + 540 + 50 + + + + + 18 + + + + Installation completed. + + + AlignCenter + + + + + launchinstall + + + + 20 + 20 + 32 + 32 + + + + + @NextBox.setChecked(false) +@execBegin +conffile=~/.bootrecover.conf +cat > $conffile << _EOF +# +# openmamba installation file +# +# created by openmamba bootrecover wizard +# +_EOF +@dcop(@dcopid, KommanderIf, enableWidget(QString,bool), back,false) + +installdevice=@String.section(@devicesbox.item(@devicesbox.currentItem)," ",0) +mountpoint=@String.section(@devicesbox.item(@devicesbox.currentItem)," ",1) +mbrdevice=@String.section(@mbrbox.item(@mbrbox.currentItem)," ",0) + +IFS=$'\n' +CHAINLOAD_SELECTED=(`dcop @dcopid KommanderIf selection chainloadbox`) +for i in ${CHAINLOAD_SELECTED[*]}; do + chainloaddevices="/dev/${i:0:4} $chainloaddevices" +done +IFS=$' \t\n' + +cat >>$conffile << _EOF +INSTALL_DEVICE='/dev/$installdevice' +INSTALL_MOUNTPOINT='$mountpoint' +INSTALL_BOOTLOADER_DEVICE='/dev/$mbrdevice' +INSTALL_BOOTLOADER_DEVICE_SETBOOTABLE=@bootableBox.checked +INSTALL_BOOTLOADER_CHAINLOAD=($chainloaddevices) +_EOF +@execEnd + +@if (@Message.question(@i18n("Boot loader from") @String.section(@devicesbox.item(@devicesbox.currentItem)," ",0) @i18n("will installed to ") @mbrbox.item(@mbrbox.currentItem). +@i18n("OK to continue?"), @i18n("Warning"), @i18n("OK"), @i18n("Abort")) == 1) + @confirmBox.setChecked(true) +@endif + +@if (@confirmBox.checked); then + @dcop(@dcopid, KommanderIf, setEnabled(QString,bool), back, false) + @exec("/usr/share/openmamba/bootrecover/bootrecover.sh -y @dcopid &> ~/.bootrecover.log") + @execBegin + dcop @dcopid KommanderIf setText installlog "`cat ~/.bootrecover.log`" + @execEnd +@endif + +@if (!@confirmBox.checked); then + @Message.info(@i18n("Installation aborted.")) + @dcop(@dcopid, MainApplication-Interface, quit()) +@endif + +@BackBox.setChecked(false) + + + + + + + ScriptObject7 + + + + 540 + 20 + 32 + 32 + + + + + dcop @dcopid KommanderIf setText installlog "`cat ~/.bootrecover.log`" + + + + + + + installlog + + + + 20 + 60 + 540 + 360 + + + + AlwaysOn + + + LogText + + + + + + + + + + + + + + + 789cc59c57afdd46d6a6effb5718cdbbc680df662631988b9373ce6730171599c913f68983f9ef53bbde5525d9966459ddc067360c3d665ab5f22a6ef57ffdebb7dbd3a3dffef55fff785eb2652b7e130d7bfaed5ff2651c3ffef7fff95ffff71fffccd3dfccffa24595fe16fff37ffce39f67cbdfc46fc7f3a4561006068285fd67c5f2d672e4f9ce72b248893f2c679e99e56aa116d18a27dccfdd799d1267747d4c5c804565594505ee979f2b8e165106eeecf551b22871fd545a4eddfdf360992d24389c2d737307de175996b15ed8c5eb35cbdac88bf30fc41a1cd8ebe3242279e7de72e69eaff62de7510c6eb9651e45f4fe5362ba5eec581669b1482ddbfb9328d6919567b2eb4f5444ef9fdf579ca65145f29d58ce627a7e6be54ff388d3f3b7c155b6c856fc202d174623b85e582e13ba5fae5bae2a89eb8dafac58c624afbcb7ac58b6282c872bce162c5ee4f67d7b96a35247b0d71a98315cdf9e807989ebd9367105960bcb312fe8fc16b13b6ffd314b780cf9c416319d178167fbbed9ea374b23b2678be7e731d967b2fe9b15b1207f6cc1ee7e7d64b9e47cc1ecf3772d33777eb2f6c8b8d37ffd06e66c5159ffb4face24570b69cf6bcb9a0b3c2fb0facda394e4a995e5d8bd8f6d121b0fb4fe65e5c9d394e2474d60f33c6edf67f59d673c22f91f88c542d8e7597de439cfa13ffd482c219fee2c17ee7dad8d97bc1411ec391d5aae128ab7f9ccb28829ded425d8ddcf62b0301ebbe2e6deb3cd2fc2ea2f976ebdcd022c4c84d9f36fc46964e5532f9695f14ffbfce9c0b28e499e07464cfedf419fdaf89ff58f6e5c71b170fecc2e2c4729d9af3925a6f3cd1a586491d5676dd75ba46281f8acadfc4526e2c8c66f238849fedae68b224f28dfb0c47221ca18febd6199890afae86c7e2b8cff4489b5c7b1652118ce4f3796654cfe3ce7e0c4f9b3cdbf8572fed1623daad2c82fccfa6fb9e009b8b1f158462efe3b1bbf659c507ed3579613a37fbb7e6efdb94c53d2af5c828d3eacbcb3b56f59262e3f6d800b1dc3ff71be4a5cfedb040b9340ec796bff92bbf353615938fd35365e4a99e4e46faf9695d117ec61e3b9d4ce9eaa01e7a49f6e1d5ca50b2b2fb7fe5d2da459b1d5cfb3e528a7f7b5c76019c5d67fb9e33829ad3cb83ec95dbd7b071709fc415e818dfeecf5b38dafaa48285ef83a3873f588832b7a7e5d834509fb3fd8fc5695eefef91cecf2477307965962e35ddb78ad98895ff8a3adbf154fe9fed6c64b2513ca7f8d04cb38b6f1d8597fab7429501f671b8f6c9150fd089fc139c59fbe060b1edbebd93a5856b41e2b2ff3fad4365fb0d85daf7bb0396fdf1fda7cc5929cfc899f8025c3fa1e6cbcb1d4f94bfb0976f6e7d69f5896d1fd0dce67d218d8fa87d507cb4541f9e58e98c536dff107b0e429fcdbc60f2b9dffb33db08863bb3e61e38f55ee7e0d792b93d0acbc13f4c7128a5fa5c099abbf365e192f28fe266b6f2672773e0117e606cbd09f34f5d2e6ffc9f60f4c25d42fd431b870f6b6f1c774eae26704f38cf2a3ad4f7c5146888f76021b7fb2eb11365e789491be6b5bbf79ecfc5727c4140fb3d5074fdcf9f0065cd07a440a36f910ebb5fec3bdfd1e3831dddfd97e8e6729f99fb6f6e47946eb91787e5e4511f46df3232f5c7c88126c146ed73b597fe3a57bfeb800e7f47cf90c568b0cf16bfb035eb9ebc506581689d5d783ed873873f9b77924a6f810908f65649fd1da977377fd9c5916a9b3bfe31cfd6e734cecea6f414cfedded12937f69c8239cffcf23b18bdf065cd0f583cd575c3aff981be212fed03c1093ffab3db07bfe007b2827cf5c79b6f1dd06c4eefd4b7049f619705ebbe7cfafc412fed9d8fe472cfcf99258523d9b895d7d5c1093be259d77fa6fad7f0a5fef03092e487eb5045726e1dbeb6d7e10b17bded4818dbfdb7c3587e09ce6a3701d5cba7eed9098ecdb8057e5163c1193ffcf36be8c3b64e8dfe43131bdbfb3f951642ebe9a9198de273ec1a641b0f5a3b9052b53712cdb78123e7ee688b8a07ef7006c2c867ac7c1c6dfd14fd0f5aaccecf5bdcd3f263d51be995e8915fa3581f717a5cb470f605622ff37361e4599917f771131a3fa734aac50ef05f45daa2ab7fed1c31f2a9fef3b6237efbc13733c6fba07e7b4fe50834b773fec57a904f97fb0fda76019f95f7d43ece68b337011235ec6736237cfe279ccd443cc27b00fcfa8fe0ea7c4e48f3de437ed3afaf5f9823842feafe1cfbc74f148e74d3f8678b1f94a0873bfcd1ff31d718e7e7cda23ae70fd60eb9590cebf66f8a374f52780bcb270f3ee15d8f803fa0b3b8f09e5faadf69698e63985f8d2aebf1a8e89c95ffb3d629a0794cd6726f85d7e0c88297e8633629a9fa72362d2e774052ee2c8d647c1c04a64b0afad3f3272f69ff78805f5fb1f60c913ab2f89e7c739d973704cfeda34c482ec85e79bf108f9a3bb059712f5a9b6fe207d7fd33e1293bf0fafc48aea730f36fe857c60ed63d235d9bf2fc00543ff192cc025e517b10676fea707b01918d0ffa6c432c7fc67fb6d9915344ff61531cdfb21de97556efec5f3f29ce2613a26a6fd95e913eceaff70481c53fece8829ff349ab85a60fe498915f245afc025cd279aeeaf5cbdb7fd845c851fecbb465ca2df0b5b70e5e6333aaf74867c69fb6f597a79b68839cdd3b057e9f43b2c8973f433fa146cfa69abcfba212e13c49b8d6f5915246fbf4eecfa8b8998fc7f1a88c95f07c8cfdcf93e2676f3db823887fef93db1cbcf6b9eadfdfbc433f2e906b1a079fe9cd8d59f6d7049fdd480f571275f774d4cf1c1d788291ff7079eadfd46c41f2f5d3ddb242ef0fc1af1c0e522b6f1cc6dff2f85cb47c38167e457d84f940cf384823f99844ffac57a858e0aecb7ec3b2e6dbc0fb85fba7e6062c42ede06628af711f69025e5d3f1999863fe1b3f8925f2d114126bc83722dfc96a81796f3c238ee14fe33d714af96483388f613fd85b39f9064d2ca87f3cf06ce34dbf102bb27fef19fdf10836e6b3fa9867e23cb6fa1d2e890bd4a331242eb11fd0207f2a55a07fe86dfe97daf59b1af1a24dff87f8bd27ce115fc38767ab8fa127e698b718fc4d57e4efcaae5ff9f9a53f264e17f6fa2124ce302fd53db144beece8fe2a83be9b8498e2b9b7f2a9c8f97fff0e76f11f9c822bd78fd7601641dedefabf8a5dbfabde3c5bfbb421710e7955445c42ffc33e7105fdcc2f603390d8f5d6f4fc8af60b7adb9fa8c4c59312c429e5834f628a777e475ce2fd13276688ffdefabf690629df8c17c4a4ff3e2276fb1bdcb3954f8cc48cfa657a5e95611e0fd688a97ed7d0676ae6756b9fdee61395f9f7dd12533c8f6bc4945f06452ca13f71e5d9be7f18c06660c3fe143d9fe5c82f7d4bccd03f331b8f2a37fab1f61a97c44ede0db031bfbd5fbd1327d0dfb0e718f1326f11f3c45eafd789ddfe17de9fb318f56284fd0bd79f7617c4947fe448aca97f3a00bbe7f5587f5952ffdb7f1093fc9d3b4ff139c29e6545f9bd7d232eb01f3ce4c412fd647b0e6602fa6a214fa9930af5d2f6fbaa72fd6aff464cef1fe10fabf041fced1347f0c7e08cd8dd0f7f65a55b5f40ac687df03fe69ed70b628a3f79e819f9ec9a98e2a5de24a67c11d2fdccd5fbc27164f5dd3e837984f50f2371965b7902e40f5ebafcf10836f2d9f3dd39b1cb5f9fc4146fdd0b714ef9c05dafd1ff28f80b77f24d0be282f69fe87ea612ebef7d0ae625cd4fbbc43a41bcc35ec2e807f22d8913c837ac11533c8e976046f56b3e21ce52f40778bee07186e7c1dea6a1217d4fc415f4dd43ff522c20df40e7cd848dfa08fd4999627f2a803f2bafaf8298e46bbf30fce38998c1bf3a773fc5537fe919f502f6542c427d1b2431edff0f1931f597ed0d31eddf378817c573ec870f3bc40cf3b32679a44cecf50ae77555923c27c46e7fa222a6fe497f1073ac47c7c4f4bda92d8935ea6987f8d0c65fd07fac1347e857da03625a5fc888293e7a0d36131ee4473ed29225e01b629d229e894d41c77e8a5d9f5e54f47d3710c4d42ff62331c57b58839d7f377b9e916f0e8973cab76f8e91bfe698b8ccd1af1d105731ea7f40ecbeb7ec82573b84f67d0a2c2a709f83658cfd143d13e798873b3b1feac8ada74b88295f7525b1cbd7585fc45cbf7f02e605e2a7966021b17faef0bed57c8afd729bbf74ecf5b54d4cf9bcdb2776fb5feb60e6e68f67cf365f849cd8c5cf2e7189fd97f18558609e9d6f896586fdef8858231eba77304fd0af0e903f361332fcd3e62f532ddcfe209e973057df3b6209ff1c52b0791efadb6d62eaf73b9b1fb4ef27ba09ccdcf7f288d8ed5f4b62ca47dd3171897add5f1073c4c3c88925cd3ff0df94c7d047f04e5c605e0dee8805fac1ae2356b1bdbed900cb3cb5dcd1f592e5d87fb3f55967ce7e21aecf9cfce10331f94f3811bbfd8a756201fb0d379eed7ada8e58d1f7cc5dcfd65e01d69bb9f531d82f1334dfea86388bb07f00fbe44edfe113b1db1f92c4645f1d1053bc0c8c5840ffe115b1843c1d3dcfc883fdf98438c9adfcf325719aa3bf7a2596985f263a2fd2d4facbb4eed9fa2b3b25a6fdfd11facd65061e88cd04017d3e1347a84f9d20ceb1dfd41e1157880f293ce3f70b8e8d0aed7aa1ffc2e9a35f1273e4bbfe9458101f7a46fe433c14c6bfec7abb2db090c8171dd65fc832c5f779e4cbd2e7f7899853ffb3e519f50cf9a6e409fc5fdd83459960be60c40cfd7b8bfc53ca32b7fa6d908f4b9561fddd26718e7e89d3fbb5c03cdec2df2b978fc21762ca175d4accd11fb519d8b83bea73e219f3ad639622df4fc41af6096dbfa999f3cff091d8e58799b8c23c1dc4c44e9e07cf58df81676b8fb02376bf57382496f47b0ed41766fc1bf9ed9db8247fdf27d6d8af6b604f2632e497b621ce910fdb6de202f38d227905277b7d100bd86b443d32e1867e563f1327e827bb10ac52f8fb40fa510af6d2a8df4c6719e62bd43beef4d7c6c4257d1f4a882bf497a12426fdf00d62cae73df4cf9d3ec24d620d793bc8cbc502f37b784e1c637d61e919f58813537d6a73e214fec26f8905e6d5593b463f3b217eb92c33c41bf20d576586fea22156d007837e85f397567946bd70ecd60b7f37fd33ea737746cc307fd515b1a0dfdbec102bda0fc0fa85d347f34a9c62bd6220aee02ff3bae302f23c130bece704e79eb17fd67ab6f2b5b087900be85b7d1097e86f45465c211f8d3131c3f7564deb33fd0d7ecf7047acd00f35c82fc2942bd4837be238b5fedd5e1057a4ff3762817adad3fb4d4540fee5c415ea87863da5d37f7847ece64df8bfe4f43dbea98869ffab2ec0c69fb0df78499c51bf49d7bbdf030d253143fcce4b62097d8cf0372923f8df3813e7d81f68dd7995229ed01f1b847dea8eb8a07a44ef37fe69f34b0fff947a91617ff591581596d9a767c433f295f2fa792576bf0f7820a6feb377e7357dcf857d158fc0f511b1c43c2be18f4ad0f7fc96ee37fe8afd870be21cfba1434c2cd14f314d4cbf3f1a50bf94f147c42fc9675e87fdd413e204fe3a35c4658679e18a58903d68fd52a27ed5f07f65fc0ff9a3f78cdf2fa6c4648f76499cc35f9b73c7f057754d5c209e6ae85f69fa3d4278494cfd73c088f302fdda1b31a3fa101173cc3ffd0eb1c86dbee8493fc6c3b1bf7a40ac18ec8b7ca49d3d6b46ac31bf856f9ef1fb9fa567cc475fae47bd84beb549ef38bfeb19fdc4197144fbd57b9eadfc614f9ca09e068967ab4ff9e819bfefe1c4f4bdbe597ab6fa55dbc4b4ff5c079eadfe8275c78877cd3de3f74deefd05fa6b551297f4fb4de698e68923e28a9ef74ecc50efd596677cef7ef06c9fc7371d537d1b8939dd7feed9de2f0f3c5b7dd64bcff0df1dcfd057414cf381def70cffd29e31bf3a7dd13ca406cfe81fdcf50ae7f59b67ec5f6d7ac67c94116bb0a4f78b05ea9bca3d23bfd1fa4cbec0fb761ca31fa81f1d23feb9f26cf513923f8a98d6137ac6fc507b867f70cff89e78ef98fa4db2a748489f1b9ead3c92fcd9fd1e561f7886bf9c3a86fc8af421e8fb44fd424cdf2764e519f345ef19bf8f14c4348fb24bc7a8c7f38de31cf6207f37f5c9c6a7dcf50c7f70fa2b51bfd5b167cc83ce3e25f25d4ff12c68bf45a59ead3f04ce3e0ce765e919df9bf73c5b7dceee7d0cfb49835b3fc7bc233bcff89eb2464cf3777dec19dff7773c633e72fa97607141ace87b62e219f9a6f08cfd904dc7f89eac9dfd558e7ec1ad4fe3fa21f28cfed0d95723ff4bd4172d1738af9e3d633fb421267f97db9e310f6e3886ff0bca0f320637a167d4d74dcf888f77cff8de70e63843bfbfedd9ca3b3e1127789ecc3d231f397953707de219df8b7acf981faf8933b0a4fce8f6dbc49967f853ea18fdf8704b5ce0bccc3ce3fc9d67f45f478e0bc84ff16ffa57e4a317cff83eca1da39f989dbc65699fdf907f987e17dfa33acfd8bf1b3c5b7f9a9d7d2bccc3d2d983f6579bc0337edf72ea19fee7eccdb03f2bdcfa5881fd912bc715e64de75fd46f73ca07eef7aba3f06cfd4f6acf989f978ed10f4d3b9ef13d5e79463c38ffa3fd6ed17ab6fe3a3af925cd57179e11cf9fc40ad70be75f0afbcd53e4b840bfece4a1fd6871e219dff37acf9887c97e6a011e4f3d231f2acf98972bc7e8af830dc7b0df48f635f30aee7ff50c7fbe709ce3f7b6141fa67f44be7cf06cfd9dbf7b46ff4ffea812f0f8ea19fb5db563f4973c725cc15f0f3cc31e941f4dbf8a78b9f68cbf0f70e519fdb0748cef1993d317ed0fe82dc715fa69aaff2ac3fd527ac6f7ad7bc7d8bf1b9567d8dbad27477d1185675c3f3a267f7cf60cf99d3c7985fa42f5c1f4dbf679fccd33eaffad67c4c3a6671b0f8193a7403f3d4e8e313f0bca27aaa4f9f8cab3bd9f5f7ac67ecac27189fd47aa17aac2f5f2cd33e26fdb31f43fbe7bc63c47f942d17e977af40c7d6ac7f0dfc9f92fe58ff1c37181feaef78c7ce1fc8de3fef1c833e6e1d071897e95e25509cc9fe2d0337e0feafc99e693d1ad4f14f8fb184e5e51597d8ccefe942ff885677c6fbaf40cff77f228b0509ead7f4ee79e918f9cbf50fd0e179e617f172f1af7d7179e118fd79ea1cf13c798a739add7cc77d0ef8d67ebafecc433e22d710c79a6d8b35def347bc6f3fcfd88f796d6a3233c6f7af20c7d1f3bc6fdb33f0ffb73d28f8e291f3f79b6f7b3ca33f281744cfbf35f18f174e718fe51a79e919f1e1d57d8ef227bea04cf17d233e2ffc633eae1a1e30afa72cf4b293e969eb17f70ec19fdfdbe639237770cf9d8956366edaf3acf98a7c9bfdc7e685b7b467edc742c104fd4cfe81ce759e919fee8f493c3fee3ad67cc43cf8e4bf4bb4ebe82fc453b467f320bc715e603ca5fab1f6059969ef1f7639e3da37f73fa29b11f51ef3a463d61af8e99d55740f941537fd35c7846becb1ca37e0754ff34f5fbfcd433f6733f3ce3f70efefa12f238ff64d8ef939e05d647f9c3ed8f30e119f3b1b337873cda5f2facff04cebf04aee74f9eb13f71eb19f1e6e24f94563f815baf1970ac3f3bff1412dfc75d3c4b3c2fcc3ce379cebf24f67f26e73f12f1c49cbe15ae0f8f3d235eb9677cbf9f3ce3f78ace3f15e23f74f652a8e761e519f5dce507da3fd2fe3c87fda9df300e8afdabc933be37a59ef13decc833e2f1d333f4b7ef19fb35a363d88be59eb15f75e819fefee57ac433f38cfdaa3dcfd8ff183c431f8967d8c7afaf40fc679ea1efc033d6bfeb19fed47bc6fa63cf980fbfc88ffd8d2fcfc7fa5dfed3b07fb0e319fed479c6ef616acff8fe1279c6dff7f8f08cf8083d63dedaf60c7fbff68cef05ad67bbfec0af1ff1c9bc3e4bacbff28cefe9af9e516fb73cc3fe8d67acdfe53b8d7c3f3c79c6fabdfcc87741e919feb9e919f3a7970ffe1ebc78c6dfe75d7846bd7ef78cf55f7ac6fa0bcfe837bd7f631ee3de1fe9f773de1fd0efb07bcf58ffd233d6effd1df1d77bfb30acffc233fa25bf3ee4e7dafb3b83fdef3cc3fede7f18f29db717437fedfd93a15ff3f233d8fbd633d6f7e619fd90b707b3ebe33e9e38f6effcfbb95d0ff3fece913f7dbc20df08ef3f1cfd9fd73fea01f7f983437eefaf1cf1ebfd99a3dff0f6e7b097d73747fdf6fae390dffb27c7fe985f1fea8ff0f126d00f7b7b0ad8c7c7b780fc3e5f08cc833e7e05be67797f14f8fba9cf9e610f9f5f51bfb8cf0fe83f84f72f81f9c0c78f84fe7dbe9390cffb97847c5effd2beef6cf9df7bfcaa0c6110b2909b7f9be3bf4306f35e11ca509943ff5906f35feab0f93bb2fd5d19ccb3dbb0336fefc3211cc3299c7fff36430fe163f8143effbc147f4706f3d465f812be866fe17bf8117e866b4696f5afed61feb46124d80cb7c2ed70e7672df5f33298e7ed9af7ab702fdc0f0fc2c3f0283c0e4f8c4ca7ee4d5682b3f03cbc082fc3abf03abcf939297e4e06f3a4dbf0cebcff3e5c845118878991210db330373a29f02692a00c2bf3c72060010f44207f468abf9661150181f1bf400775d0046dd0057d300463300573f0103c062a78721204cfc13278095ec3c85cf316bc071fc1e75f4bf16319cc82d6561110ac071b667d9bc156b01dec04bbc15eb01f1c0487c151701c9c04c61ac19991e03cb8082e83abe03ab8091323e56d7017dc078b20fab114df97611501416cde9f046990057950046550b130b8610163e127e34c30c914d3ac664d78c65ad6b13ed86443d0992bc6300d0ed9c466f6c01ed9d38fa4f89e0cec7915016cc95ed82b7b635db064efc62803fb609f6c8dadb30db6c9b6d8b639b6d80edb657b6c9f1d986b1a16b2c36030321e0547ec989db05376c6ced9c5f7a5f8960ce6ea691501ec925db16b76c36ed91dbb670ba3e580452cb66ffed691b0d478e30ecb581e1cb0c28c62150f79c019e7666c92df93e28f32b808e08a6b5ef386b7bce33d1ff818bcf089cfdf7d3f1dfc813f1a4b1df127fecc97fc85bff237fece3ff8275fe3ebdff6cf3fcac037ccfb37f916dfe63b7c97eff17d7ec00f830b7e146cf2e3bf92c04a71128c66e1a7fc8c9ff30b7ec9aff835bfe1b7fc8edff3c5b7a4f8bd0cb612291ef198273ce519cf79c14b5ead3c52843f2301db168160820b21a450428b5a34a2159de8c520463189f9cf52fc4986207c110fe2513c8967b1142fc27ba478fbdd9bdec587f8146b625d6c884db125b6c58ed8a5737b625f1cb01371288ec4b13811a7e24c9c8b0b7129aec4b5f853f6fcb33f88db50893b712f162262d72286478ae42b09b6442a3291f3775198952a5689525492f42403c9249762e58d524a25b5ac65235bd9c95e0e7294939ce5c3d7527cc3278390cb47f9f47b8f94cf5f64904bf9629efc6adef0662c7ececfe4bbfc909f72cd9eb59e2737c27ce58d22979b724b6ecb1db92bf7e4be3c9087f2481ecb932f52fc3936cdfda7a192675f3c529ecb0b79f9950c57c6c7aee5b53832ef79e14b26e58dbc9577f2de9e5dc848c6329129bc51663297852c65b54af88a9990134a2af547199456b56a7ced0954cb96aa8347aa5e0da152e31719d4a466f5206af5c843f5c44a7eaa9ed552bd7cb1957a556fea5d7da8cf95379ab36b6a5d6da84db5a5b6d58eda557b6aff8f32ac72b239baf0561da84323c351a0d4b1785127cae8449da97375f1b547aa4b75a5aec5a1ba3139e0993fc9dcbce9f6abf377ea5e2d54a4e29537aa44a52a53b92a54a92ab5ab43f8c31ff470a4835069a6f94a162d42ae4da5d22bb9ded4b6697e6bdde8f6f731a83bddeb418facd0933893b59ef5039d79d44fea413feba57ed1aff046f38437fdae3f8c049f7acde9fb6b1956acd7cd5b37f4a6ded2db7a47ef5a69f654a9f755ae0fe4ae3efc5636d047fa589fe8537da6cff585bed457fa5adff02b51eb5b7da7eff54247f04655e8d84890e8f4f7127c2d839122336fcd75c1533384577558073533dadbac792d6457cb5a7d3f33d5baaeeba66e576fe76fe2c834305a1cd65dddd7433dea5a05f5f46d09bec405fe7b3dd70ff563fdc4f7d91b1feae77a69a428ea1759aa449cd7aff5dbf7a5b092bcd71ff26df57613b3217f6127f567bd56afd71bf566bd556f7f4b82af6393ce2e0355efd4bbf59ee917aeeafdfaa03eac8fea63f55c9fc8ba3eadcffe2a57d7e73cac2fd8897aaa2f8dc79ed557f5b5da3512dcd4b7f55d7d5f2feae84b04aea4f93a3f902ee250d6499d9a3f5ed7599dd7455dd655138ab3261079c31ade881f4bd148f7762683a34635bade6aeaa669daa66bfa6668c6666ae6e6a1796c6c6ff38d7a1134a67f6996cd8bedc8f683c3e6b5796bdebfce8dcd47f3d9acfd408a75360547fcb4d96836d56eb3d56caff2944a9b9d66b7d96bf69b83e6b0396a8e9b933fcbe0a5380d779bb3e63c18c3e3e6821d3797cd55736df2ee57b9d1c876d3dc3677cdfd3764583451133749933659938bb62964d394c6ab4c9668aa366cc63668594bb3e277faa8a015ad6c55abf9695bb393306f9bb66dbbb65fe54656ad7263781cec85513bb0ae1ddba9fd4377d33eb48fed53fbdc2edb1791235bcaae7d6ddfdaf7f6a3fd6cd7be78c4b7fb492bc57af8d86eb49bedd6aa06b72fed76bbd3eeb67b2e3706fba66fdc0a96ed7e7bd01eb647adef70da93f6b43d6bcfdb8bf6b2bd32ba3b3123c1b57a6e6fdadbf6aebd6f17dff7c9df4bd1466ddc266dda66f639a6feb5795bb4655b195f33b9313c08aebbb0334db43d78273ab992a0539deeeaae6193f1ccd0788fa95c5ddb755ddf4cddd08d5fbf1f31fa7d19baa99bd576f7d03d764f261e825505ee9ebb65f7d2bdb2a3f0b07bebdee9fd383ebacf6ead5bef36ba4d338b66ab7eb2be508f52765bdd76b7d3ed767b5ff2c38ffa87af64d8ef0e4c9d3bef0ebba3eeb83b11e7dda9dcedcebaf3eea2bb34eb62bf3baebaebeea6bbedee821da3a171d5d9af7adaeebe5b7451b76374107febfd7f2143d2a55d668fbc2bbab2ab5679bfcbfab00f7ad6f32fefef452fc575af7a6de6bcaaafcd8493afbadabee9dbde6404f3cfd0de7dfbfd3f96a11ffbc9d41a7bf473ffd03ff64ffd73bfec5ffad7fead7fef3fecfb3ffbb57ebddfe837fbad7edbcc205b66d6dc0d0ffb9d7eb7dfebf7fb83feb03fea8fdb8fef49f043194e7aa3fbd5d19f99e3bcbfe82ffbabfebabfe96ffbbbfebe5ff49139e23ee9d33e438531d366c33e82becffba22ffbaabf30155b2b33760ddf95e087b630835d77ea0ed38724a6232b063e88410e6ad0433d34433b74433f0cc3384cc33c3c0c8fc3d3f03c2c8797e175781bde8777d3379863f8187e307f7f5f86616d581f36860dd395d3316c9a8c8ba319b686ed6167d81df686fde160381c8e9a7438aeb78693e174381bce870bb55e8bd561bae96ab81cae7e4986ebe1c67462740cb7c3adcc863bd3a7fb63b81f16a6577c1ea2a61ce22119d2211bf2a118cafad854da35d33f7543b5faff5c19c3f1976c31b2919be9e4d4e4177b985efa6614a66e99c3f44ce618e5a8446f6a7a03ed8c7aac8db636e4f6d8ac648374a64e1463fb6b32745763274e46131ea643f7c73898da690e33c135e3384e4e27e33c3e8c8f2b8dc9adf6babd26d9ac74e3d3f8fc8b7a588e2fe3abbc36b9d61ee3dbea9052d4ee18dfc70f7d2ef56806497eb3d295c9a69bab4374a652c25e77c682b7e3e72fcab036ae8f1be3a6a9166f3878b03ad4a3e9d5ec316e8ddbf2751c4843bdd1da8ea991b9992ada95ad56d241b671f71765d81bf7c783f1703c6a4dedf9fa10aabe581de3f17822e5b8aa4aabaa766c6aab39ccf463ecb4b2d7780ae98c6c67bf268391e27cbc182fc7abf1da740c74d497ab635cd5efe5783bde99b9d668a8bd3213b639cc84f9063bad64fb22dd78ffab32182916fdfb188df1988ca9e94dedc126734853159fc76ccc7968b4743116a6c738341dd6ebea10da743a56b6b16cafc6cdb19a7e29369d1453605ec92731492682c3af8e39cc263569f5c4cfdbad76cbf4d137a6c77ba92f8263a1c86a17e270aaa7666aa76eea7f450627055f9f86699ca6690ed3f0c81e9f38827e7ae067fccc747bab717ab93aa6c795ad56569b9ea6e76939bd4caf6330bd4defbf2683d7c5c7f439ad4debd3c6b41926e1c1ea6099393ea62d7eca4f8387e06875f067264df7b4b257396d4f3bd3eeb467debf3f1d7cbf6effb50c5e8ac3e9683a9e4ea6d3e9ac37e35b188591a98fcdf0c47878cc8e4c5f9505b3e9318d9558319d4f17d3e57465de7f3ddd4cb73f96e0e7f6ccad1477d37dbd3e2da6687a089ae02ab81a9e4ca57e090f591e8cc1beb58eb1d3149bf727533a65533e1553f9bddee9efca405254733807339bf92cf8c84c2b55eff1d1b4548139b2957d6639ab59cff5dccceddccdfdcfbcffe7658014f3308ff334cff3c3fcc80f79cf0ff8c042f6b1b2ccfc343fcfcbf965361e38bfcdef7fee9eff7d199c67cc1ff3e7bc36af73cdf7c50bef8d45aeea74de9837e7ad797b1501f3cedf79ffdf93c14bb1dbf4f3debc3f1ff09a77f3e17c341fcf27f3e92a02e6b3bffbfebf2b8397e2bc19e78bf972be9aafe79bf976befb7304fc9d2f8ebff05d6f25c5fdbc98a3399e93399dff4604fc6764f052e473319773f5103e043f1f01ff29199c140fec813f8807f92b1ef0efcbe0f78d827ffffdbf2ec39fe5f8d5f7ff7b327c91e2df79ffbf2bc37feaf8e7fffb9ffff8ff5ccd2287 + + + 789ced5d5b53db4c93be7f7f45ea9dbbafb6e6b32c5987dada8b70720c04128209646b2f66743027070810025bfbdfb7d52dc933a3912c270136fba93a60da927a5aa3e7e99e9326fffcc79be30fefdffce39f7fddde89bbb3f84d7c2abebdf947723f9f3ffee77ffdc77ffff5b73718bc09bc374377f066f8f7bffdf5379fbd89dfb0c160e00c06a85f14fa9074b18fba37080678be9ca03e1a84030f8f9fa11e0ca2c1087507f5702007019e4ff6c5201e84a80bd453282ec6f333d433c719a4a89fe4bae338ae83e5b331eaaee339583edb43dd73468e8bfe5ea23e727c07fd911275df091df4879fa21e3a9183fe081f75e1c44e84fa77d463277124eaef514f870327c1eb37727d38183a4e86f6dfa1ee0cdd21d5cf08f5e1d01b3ae8df17d45dd0a97eef51f786a321f9fb80fa68180cc9df5bd4fd6138447f19d6371c0d873edaff887a349443ac3fb6857a3c4c86e42fd94f86e910eb53929e0eb321fa2f19ea99eb0ca97e835c771dd775a97e87a80f4127fff1fe41f35cf45f84a87baeefa2ff6c8abaef062efa2b63d4033772c9dfafa847ae70c9df0fa80b57ba58df92a31ebb898bfe4bbc1fd03217fd6758bf6eea0d5cf45f60fd7b03cf71b1fec526ea8e37f4c8ffcfa87b9eefa17f721bf591177884cf0875df0b3daadf75d4434f7884871475e1498ff08078f5622ff5d03fbe837a22a381c0e3f35c1f0d46430ffde158dec891b183f527cf511f8ebc11d5e72eeaa35130427ff815eafe281c51fddda11e8ca211d61f3b465d8ce211fac327a44b49f8e7583f2309e5a13d36403d1ea523f2f710f544a60ed6bfb8413df50723c233f993c9cca1fb417ef8037f38a2fb413cfa8eeffa58bf12f909dac8273ce0fdf99eeffb58df02cb072df0a97ef1798116fa743f88773f8a87845786fcf3055417e2917f2a74b7c02f3e1f5fc61ee19753f9b19ff874bd8b7ae2673ee125223df609cf129f8f9f06039ff083f7130c032fc0e721309e80e607c447d247714078e4885f381a06743f21e9709ce21fc68b2008a200ef8f23fee16c11209ed80fd2e3c8a5fbc3fa82b36540cf03eb03b424c0fa67882fd0b280e221f225c84227c0ebd93de9b1f4287e227ec241380c880fc8c7d089b311ddcf37d487a117e2fdf203d2e3c4a3e78d780ddd7014129e12d4fd300ce97e112f6114a7845786f80b452843c2e37bd2a13c8af78fa427c311dd2fc65f383b09e9fe46a42703c2b7407c8671e28c887f18bfe1ec2ca4fbbf463d8b9c10ed49accfc889dc88e22de225729321e1935d17bae7137ff17e222ff223aa0fbc9f68140511c55bcc57a04511f983f107341951bc42fc80964474bf53d29380f022111f511ca511c5df5dd213bfc027c66bb83a8bf07e38d94f92a8c0d31aeaa91844884ff6447a22084f0ce3b518886144f11a9fb770842b08df783d6823417cf450f7e07ac23be61f381a088a7feba427055e052f7449f86118ff842f4241cf53909ec421b507480f4424c83f7c7e70b6108477ac6f382a05d5df11ea42c402eb8f61bc062d1514eff17e45223241fc0d484f52c297bc263d1d44143fa9fc540e04dd1fe241644956e00be39774a42b880f184fa52b4792ea07f39bf4c01eb51ff0f9c3d14012bee9fc51ead2f364d87e91be0c253dafefa4a70ee147c485eed1f365d85e016b4252fd209e6524a5a4fac0fa062d91e8af443cca58a692e20db6676402e553bc3b2a749fea5b627b4c66b123090f3ba4c3717a3ee85fecc4aea4f88df7130f632fa6fa43be80e6c714af9f4887eb897f6ea18792f885f12286781853befa487a1ad0f39518df631f1e27d947ffe0ec2826fc30d2d3909e3fc7e70947654cf541f6451cc7840fac4fd0d298ea639374a81e8a5788f73881f2e879be2df4b8a83fd2d33491943f100f71963831c58f31e9608f9e37e693c449dc84e207e67bd04609c543ac9fc44b53ba7f89cf138e06095dff9674288fda57a59ec5c42fcccf899f8409e107e32d6822a1e789f13289e072ca07f8fc414b12c233c697046e30a1fba3f3e30c223c1ec7f80e74c962e21f1d4fa0b947f783f13749d34142f1e596f4cc4b28ffe1f5e9201d2684177c5ee930f552ca1758df2934c712e223e62b38eaa714ff12d2a13c7afe5ea17be4bf24fb809794f82249cf46c5fd20dfc15a9852fb1cf906674729e553e42b1c1529e113f10547654af585ed23381aa784af7dd2b3c23f86f916ce4e53c2cf67d2c13f2a1ff36b1a6741513ee6a7142a28a5f8b4497ae653fdf11f855ef8c7301ea7693648e9f871a117fe726c2fa459e6a4c457cc9fd9201ba654df985f32277333e2ef49a187644f20ffe1e828233c627ccebc2cc8a8fe4b3d2cca5b2f7451d8c7f658e6676146fcfd5ce849610ff90ed6a28cea1bdb6370b6c8c81eb6a7e0a8ccb0be393e5f381a6754df183fe1689261fd72cc37705492fd8f187f32a8802c26bd975e7a69929e23bdf4d22e3d477a790de18c0b2e795c93e4b53dab4bcf915e5e5a78ca333e6b90d3d7f6ae2e3d477a7959e167fc1cb87061959e23bdf49273e41233869d253d477af9171760c8bc911f7d1ee9a597bb228f3471a4cf23bdfccb0b30e48c7fedf3482fbdb409b4b6aefa3cd24b2f4d8299e48c5ff31bfe0de4b6cf23bdf46293822967fccec823f7afed595d7a8ef4f27a021cf96ee49187d7f6a92e3d477a793da971a4cf23bdf4a2c9ffcf3cc27ff047fec4dfc2cf1a5f7f6def7bf9b3c5c2918dd7f6a92edd38c2d7f926dfe263fe8e4ff836fc4cf80e7c6ef35dfe9eeff1fdd7be0b8bc71ff847f0f8807fe287e8e921fc75c0a7fca8bbb7fc333fe6278dc74e205efc80df5f7eabdf03eef021771b8e7a7c04c71d3eff69fb3e9f83fd006c843cfa656f3dce18fc638249ee598e8f58cc1296c24f66f3d9e088754d230fd98c9d828d949db11978de50371d3d8ed83993ec825d82bd394bf81dfbcaaedaaf59ce11fec8ae810b3b2013fcbd90093206d8c26ef8db0efefd60dfd82d3ffbd527b3a4947576c7eed12f62f24ec569f2799b8fd9f7653990477c8b3de4ec62e0b57a843db227b080c7f0f803fbc1a7ecad0d232bf93d606b6c9d6f2052eed906d78fba6c93dfb22d362624b1776cc2b63b5af6d836a06c87edb2f7fc9e9fd20a5bb6c7f6d9079eb18f6d7600c5013b609f74e1417e841db2e962c52efbc08ed4fa83a39f0b6f8b15bdec989dd4ac9b79e454b1f0097c9e6a36f272beb001603b5cb1761de6f06f5003fba63db038664396d7efc07e6d3b4798c74688304299f9b953e12f47de017f6cf1711d324e9e81b699cf37f57a02e604fc3d0b81898720bb2ce207820bc68f57ab873cbab300ecefd4fc9c54df95daa1106d3c115ce1d63bfea1f85642349854bc5bd8836fd88388db79c2e7221129fb2232436650d33336349f9d3865e7789d0798b8afaf231767e25c5cb494e7b2585c8a79c98a66115fc5952dce036b6b5ee1f9d73c1437d5cac4c5f773ee60c9df2bf65c68675c88b950224e531e11171001be54164c2b794999b8ed1223a0ceef982bccda5b94a87aff5d3c90ffbab47144fc0074a859a3fea9679609e0ae214b884764c80eb5d184ac30fd1dda40dbc5f70bf46d17fa8178eade96116fc15693bf3aa7e9af4f62ada166cfb4abb705b289dd15f531d1ca503416b2469600aa361a10ba096d95b1f6bc0a4440d4dbe64ca4fab7157272d960336b69013c6fbd3c03ad0636f3dcc5f53a105bd6b3e17c31d638a0f8c4b6c43b31ae5da596beb1c0b6655ceb94a7e25289f5e65a15dde7733169e1872bb68b35c626db9a56c2ccf825ab61b889237cbd42f5c4c099f99d1ead0f6cd1195a2e8b489eff6ce1b79b153fec78a6f6d127b1d38521908bb6954c675aabe73e622bb7b19a3dea7709ada948ec563d31bd04b506f27ecf939d756cd2f464d89e86353dc26d88ef46e433f02ede8bbd3a430a7e5cd49066634869695f7c506cf890bb2e2c38bd502cdb91dbfc76089d719fb7d5ac1cc9e3c2d062d7e601f9fc511c34c539716ba9d776219bc6d89a9d23d0171d37e2c18ca3469b0b5a4a1f6af6d6f42ba0bfb00e98b3b5df74e695fd888332f334d48727ea1944f5d796fb8abfc5a199a900cf6fb558308196d9b4666361552ff7d0dee6149badcfbb1e29d5633a0a4d8ebd1747c61d64d628de54868adf8cda8b793fc460421ded6de86dc52164c6332b479aca6b6109dcffa11d1356162fb34a3cd5b2938d231041c6c6b39fd47493416ad48dcc9e84f86c20eb1db0a453ebad2a7b57b48c0ab0eb1ac376b80dbf261bc9df91ce109047cbd576ef4c2ee69f9ff8e77a54639f5b9f4cb76376bcced89a51d67a474c587097dbcaeb401c8b9315fd5dce8fea1c16d738d23dda2f384a71ff4cd4dae3e0ffb7ced66c565b39027e1f6868327be7e6b73a26493f506333585cd3f035e12676cd8c64662b1c71160dad18b16ef545cd21cd719f32d554b31801a7cd4860b6daf4d100dd2ab4e02c5e3eb43e9b5f12b6af8f16409cfe193b84d2cbbcf78e2c69b2d2d6065a7e3784eb81258fac5e0f8b5c222c35eefc9445fc0d59bf6a83d7392286161c2312c4ae7001ed277cce5df8d98716c9943d18f1beb86e81128ccbfb35b4b68d95d5e376d1daaff7b1c1f6660da7a5a5b1f0f8117f62dfd837bec9eec42e786be7f48e70357fd78ce3f6fca4b2d16c271ed7fc0cc4e8a7906b0844cdfd3a52d4311e4047db5b4c64e3cc8a0ec26f42b5c0b685bfcc1bf6456c88a0a5a47d118a88a91e63396039b2b6b56c658cd95072102632f3be4b91421fe5428e9f3671444a198b4d11894d3615750fa816aa7e8ec99122e2ab18257e0cf9177104dc88a09d7796730c5a642e77d995782a78a263697bd12a8733d7b88efd26b1314545deb634f696e1eb063a4b7f3d99f2b938ca25e734fdc5aef8a3d855ec55e7337f31d6c0fd228fd4fb5bf817bb16ae4cd839ff00f7f524d6b58c529e55ef47034b64267c39b3e093f094b24bf030644c363c5b3190a7705717625be8a89b496de4414c646c5c79029818b38fcc61524ca046e67cc4b6d92158acf55cd8fb0a65c7e25a9e832d2be7642c2fe0d9e66c3aacf196cee06c863127aa8d58cce4e5728e0093cec53b7882b446d8832738e3e752da9822bef2d4a8714732c59799b89719fb284f01b3a5c5fc1e8f207a5d6a36a9cd97357144e9fb2edaeb378086397103d97156ae6dc64f9f9f407fa086247ea030fab38137337f8cf994ef41467802d91443f1a9e29d79dd58ef6143a6d0d99963f89eaf010efc453d28026c81dec6b866bbca7cf95932d130afe40be10137e6984923e0d211c68dc5fd2f7c31465baaf23d1eb0430b1e666cae3cb75beb196bca197a3b68266ef5b2d8b99cb32df151c66c437e0566b9d6dac8eff5926d99986352f3f94c66757f449a23ad3ccbe4249d913f830201470a8b08d5d7ed1c913379557aad7bc343f1a0592b6c8acb5a8dcf4522e7e216187a07d147b96be3a99c893dbea1fb27633b47aa7e838af5e982758bf2e9a728c515809d5a0b7d5266129eb7d0d46ca0b7a1a680e8a32ae2cf8ba87f0c6da47b5b3b4c5e2bfe9e18bee68cbee6a95913468db8ec1ce702f57ecb61b9ee04fdadf75a26c0db2760861225f07704e787da38209debd5595230f0a68921e5991616cdf88d5affdc446d6696859e45262aea02fe9cd63862cc4c8a81e90f7b07cf49f5a7f66621fb4c1caaceb8d7cab890a7ad1c3985230d5e630cb8b48c285cf251fdcc3a2fcc73e8b7b8d2fc5366fc171c4136adebb115734868b76af8e002d68df609bbaece59b3b7e58105fb7caedf4581252f6fc941ff476ff3e7f28e468dd0dfa199bfc0df79331e14a4a61503177da8b8f277bfce65f620bfd52d57f63617fc28ae695ae955e708b41f54cb705fe69b47c66824cff7a8d29ea8accd92ebd1b2ad3ec0a35b0d1d3379a39f51cb23d50c47754f7786bf5be2583f437cd4223ff2b08923e23bcbea68d67d1607d21cf39bb11df3cc66249867b26dc3d6b86cbb691c89949e05e20ef493652555d134d4da47b98577c558bb5beb8f146300253feaf755c4c1b9855ddbd4d6c7e3631dc9b9bf6d88506a79aef9441e1fd48ea96dbc869ac0fb8fa0dc89666da769c6bdce1179afe79c3a47d8077dfd21d8f86ecc8064f6d2baa0c398bbb170c4cc23d076319e99c91135eb9130a3c7d29247a0fc2ecf9009a35706dcfaf9d59e624faf51362e679dd4b656113dd536fa93d90fb27b4b3c616f95ebe9f3c988cb6a86baaf6728dd66c1137dce1bf15a9c71a265bd49de0eebe62ff5a3a0ef65b62bd71bfc9db0f325befada9859fed3b07aadc69199d834cf30383213666f34e7c8923ca29d1f31c9122ef9ad98433f229739bfe531bf6197103f1d68391918d5ef4ecb2379cbffbae68fe9f156ed9e3eea6734e69199187789ffc8dd73c52b8afe974de7b37371c026f90884c84a6e413ffe3df4d88ec5833c93670647f62c796420f456782eebab642b259394ad97612d2e2f18b4bf3c1716bdbda1c192493e930fadb14db307243e09ce9eba08f4b23c9cc7d4f31bcec0407f7f4dcda6d85759924bc5919245495e94234d79847b6c539c420c9f2d91468ea03f7a1e315a7e5d38d23d8f08c7b6aeb0e1ee02638c70c6bfda6a1c7a2f1bf5f5beedb550cf23e0adc702bdff2ba6dcefcc0f92a99e47c46e35ae3531183235d74f34db85be9f9183443edee121776c63c55d441f3f287bdae59dec9bbda7e55e1a7964d29123b3a51cc9cf98d56c74c823dc656b6c4b7bfa2616ec33e3af9947666cd0352e63ad9bec7d679c13b1a3a20eca6c6394a7fce8966c79648ebd6e352a5bd7fbd9bdcd7f03968ff46c21a685e5dafc08b3f47f1b6bc2c5390d05df2cc0d2a646de6b9f7bd165627c5254f0b01d162aeb023ae591dc1bcc236a24786c1a9531fb231d38f21379847d62ef2b062c5f1dd83d8fd4d633fdd63c3263ddb3c899311a95cba9dada960fda9ae995c4cc2345bcded5dbe010a7bdaefe161eaf6958cd672a704e4059af55e2ee6495685171afc4f227cddf897eb4d38fce81728ce2ba218fbc5bd6d6c23ca25aee9a4796b7b57e228f409b60a2658b5518d29e4768dcebc7aa1ce99847f27bfda65fd95eefda68147957bd7dc52e70f5f3caec28fc33f2088e6d4c70fe50692941db6ba57706a1e7e01a71fd00e3b2de1fc17154ee75b70d76d7748c23f7e68abf3ad6bb32a4368e9073ef633edba4ce13e5b2bbf469b9caaa1c1a3f68f8df669e3f8f40de1d748e9eb6b3daf2c8ec59f3c80cf2c04a6f10c3b3327260f9e62d737e2e7f94d290473ca36d3f5da9c74ef3155a8f86dd58f348fe57c79a28ecae19d78f73ab7caae0bdbb1823562aae293f81e55a1e59eea5d667ff9de35a2be6119c5ffcc9f6858d23b63cf24cfd116de6ae1b3ac4c45c45421c1107d047ff697ef0e63c32d4319347ebeedee6f9a258c9b2e8b74fc9b2d1becfe7383abe878bd71f415f5a4538ce6440af61ca770c5677ebadabf944cb2be291fa23b87646cd0a4bf248de67c23ebb9a9d5ea53f029edcfc22435eb73f72ba4adb255f5156bcc159fa7691738407fcb4ad1f26f649da6ac19a473ce8471b3d59517b0fa2152727e6f57cafc8039fb98ae53cc374d823a2b09ac7e86b05dfb95f8fd5389c9e47c67c0ccc6efd9d7fe6bfe92ff57b9040cb7b0a83967ba9f547ba8f6bfde63c224f9b5684cb99e43c13f93ebb20e2526c8b5b3163ef2deb275fb53fd27de417cb7d347dcff77b1169c31acb7c86286117f23117b1c7c00bf90475712b368c759bd63cc27dce6abdd9e90afe7ab244f222a2af916556ee5252c57176ddd16a7efdc8cc16f9f853bee258c908589e7c4bab0c71a561f59bbea1f560b4e61572e6a458fd3aa7b3708d6231e7afcc8f9435b1b43f82e35a5a7b50262f9f477884ef99d7b1c1e59abae64715f07c5b5d1f6b72e4c5c7b536cd2bdbd0218cfe48fe268db4f6b2d8941da9eb7d4d61c615b63c82b37207b5c8dcb2d789e1ad9a2b76cae85bac2c51db5a05fa9a7747303922b8de6b28e747aa5e43552ee404fb6adf8e52f57f16f339f479d8ee2366b587ca97495bcd3d5f1e81e79c59b0b19fef62c0ad2b742a9ee8ef11bf4e7fa45ce3be428fa4f67627be055c5bef997f9fd02851732d1819c99a47f231028ccc5a6c667efded74abb727c57af3450ec1590cf4cb5caf8518623fba8c2c83f74f467f3dcf239ff31e00d7e73c29935c6b6b72cf4a9eb5235cd58cfe13d93e6cb780f7a88fab4d5e238fe088afc612197367f97abb368ebc601e29e6f9ec3bbd587dbfab8d6a4da03d70af9794cfb9d863842ac67a2dfb3cfb19ee02a83e696a33ac2f8ff810d1c7c675f9e77ef5f6809963e8dcf74b77822b19a2f6c6f36ce115b13b30b25efe77ededa655a4ca237adbf070f935ddd7a270134fbf2d8f480333100b3b8cdff3c878fbe375fb23f9ce289d5626b22b5967430691de78ff8cc79d564832adee2cf3ec059ae7d56af34536c9f7c3695d37c2370d7c507b68bd8ce61897d5b64b89e96df6a36916a1783a7b1a522b16146b28af2abbbae569d79d88f909b4dab6f801f83f1698d7681c4d59afd5298f54ebb5142637e591bc5fad3fd9df9747a057ae63fd7c79fce4df8539d3f67afd91b2bd952e5f9b0a3dcada0c21dc7fb99f8b8af6a50c91a7626e6660dbbadfa247322fd69b1b330780e68d3af220afbd65377a0babd2ca379668de5ae38f82fa6d76cd2c11977f166b556ed2380b5874cbbc07fdf075e338fd3e64816cecfb816d299ea0dc48d9170f7764adec7e36eee87009ce3acf8fe09946ecfb8d79c478a350b4ee300d3dfc4b6865fdc4b8d6b3add75abc53ffb5bdc5250e8cb72789bba7c811e35b316eab037953e7076f58af55d4c79c7dabc5fb027fec818d58007d964d908f62281e21c398a3bd2556957d25b43ca2f324971ca79fd835d87373cb80de00caf1cdbc54e5277577069733a5afac9e9defc53be6537627c7fc2dc82658df130298f1036c6f2bfbeba91973b3b62ea0431ec17b5cacd72a3db1ce8f20e29e298f00fb8ecd272d1eec7b488b3d7129cb1d3e5b39f2bc7984d9de942fd7b9bbecc0f2565bc42ee03e6d2357ef30c2b9ca5bb7a537e3fa88324fe58578908b5d4e6b5eb0af758e94efff1933763a02b7f98eb6b7e2c4f8a4581f942b868bd1d4da7c432dafec14a82dedebf3710b9e5e9733f4d558dca3d65756a3ffb66243fda9e79df267cad5f55a1df388d21f51aeb2b7b59e378fb0b57a6c95eff839a0e11bc4d78049f689df00e2371a9151e3c8f3f64758cbfe2c58d22d5896f26b2e6cce13b65bec035cf39a8df3ccc32d6b81b106cfc48c27622bb723aec5a0b656be566fe0e1419d23d533bc2a56c9d7d1af23ad7e061d992e566359d6d1d6f16a1e51bfd7cf1bf32ffa281477c5b1364fa2b2bb9e29eafe6a25895d258fac34ae557b7f64d232cffe6cfd11e8a199efa65f6848a8cb528e3c731eb1ef11d3eeb315d5b21ac584dec59966abd9a2adec452438b571a49a2948e5b5864d730d879907d4bfa7eaa8841697cd76933adf68678bd913f9a0bed152d8f6b85fbcf76eb6106d1eaaedbcda688058abfa23fa7d2fe1489147f4f25fa13f0257268dcfbd644c898196f35eae3f62e5888e5f5b8caf5d213ea86fefd7f7a85851a8a6ae6d1ca94a897858ac73b7f49a2d785c206f4f9fa9d1e6ad156e28ef00eaf8d559a29400579cd8560b93b7fc519bc39b689f3bc69dd4bdc663c22b5a86473f313f32af95ffe27984deac6fdc577819ce1a38f22a796455447f5b8cdf152b07c35fb76bcf236a5ccc67fec45441511dd3667f659cef6ba532c4e88f2879095a485e2d9adbb24059fa541cb7cc14e7bba89c14bbcb993cb0e71123c300c28f68ec5719875b615c0b30d0a9adf59c79a488a1c7c6ca929fc0dcabf6475645f2446c993b5080b0dab8d7cab5d09647aa72f27da33695fdb1279a685c610fe209e2af678ec72bfd1105a5f8fec81c62ffbd05afb55e0ebb21bc2ddb7521cf57b86f96bd5d576fe71577c4eea147e396b339abe711f460aecd8fecb4aed77ab6fe48511761cbfedb1611fbe65be1af9747e46cb5bd8ad93b96d9e680e03b67b59dc1d9d4fca62d8f54a8a3f83c676f8b1d44ecadfc09e0729307e59e7c363b96f74710d560fd49d99da4d6b701e67980d7e1f2d52455eecbb39fa7ac2f34db87aa0ff9ee909bec9cd67869b656ca235c5dafb5a89b17ef8f28deb8f2aa693f54831f67f29c7f7fbdf55accdcb3e1147768e8d25ebc90f772ade93da4226a26f65d588d3a3861037629cd3397e611f5e903860680a42716884fec9efaa63833fd490cd937dc3dd56b8af296fe08e591b38225037104b637f35d4ad8436e9bddc0df01587ecbced9d562b56a1b4a156f23dc37710e4c71c1ce0dfecf85942dc03a9401d6f91e7b8b7bdf55ab7d0d7f8ff83ebb867bbd2681365cebfae7a23f12a857c035fb4d35c2bef2ab85b05d332ae34cbc7286bcabc76df1453f431affbb02942279d6f8bf231032d6e559de82c5377baf349f8c5d1fc581b852453e9afef03bfd0cf3ff0dc2ddb0f0084be4532ef44e2d0ff4eb58528c80ccf8391b36ed8c2c25e4080977d8828b02377371c9b6ec76e48c7d11a7ec28dfc30acfbc32e4b83347caf5812e4f717579b1d2bc5867eeb623d89247f02f35fa7fbc5357b083cd908762422db7050a3b72a414bf5c1baf4ab16e7e5eb60aad399a22107992ef581b75d9e108e7fc8f68176e3e20ee75f0b2cd87df708638668eb8955bfc417cc7bde2012f725b0cf2772868ff5b9b2d7b5be0f77bdc54f242635f99c313e0fa0cbc8e20da6ff06fb9efb4c6bd3b22f2ddc5c483ccd8aedc96dbfc563cb0b9bce181adccfa3d74fdffd96d36d4bb6dbe4ecb2393b20d65f6ebeb35d79519b612dbbc6d7e8efad50bad4b898bab9a6db7d56bdd5eb3be4a5d14e2636ecd63836507e0d53cfe7db2bcd4d59edd73d9e9ce91fa5fddf083a2bee991ff1cea4fa89badd56a457d06af85826e9e3ea767bf86ad5e72e9ca919f15cbb8562d8ff4f2dcd2d7f6afc8f373c4981f9994fd915e7af933e485f34839e3f1f0eb967be9e565e425f288f17e789f477af9a3e445f288f93e469f477af983e405f3c8a4ef8ff4f227ca0be791be3fd2cb1f272f9a4776fa3cd2cb9f277d1ee9a5977679a53cb2641ff65e7af9bf237d1ee9a5977679913ce2f579a4973f57fa3cd24b2fedd2f7477ae9a55d5e228f8823fe81dd68d2f17f1fe9a597d79797e98f546fffe56f037afd4aed5efe247991fe48ff9e4f2f7fb0fcfd3ffffed7ff02f4bd0fa9 + + + + + mbrbox + textChanged(const QString&) + setBootableCheckbox + execute() + + + bootrecover + selected(const QString&) + wizardScript + execute() + + + installlog + widgetOpened() + ScriptObject7 + execute() + + + mbrbox + widgetTextChanged(const QString&) + setBootableCheckbox + execute() + + + bootableBox + widgetOpened() + scanbootloader + execute() + + + NextBox + widgetOpened() + wizardScript + execute() + + + devicesbox + widgetOpened() + scanDevices + execute() + + + devicesbox + selectionChanged() + setlabel + execute() + + + NextBox + stateChanged(int) + wizardScript + execute() + + + mbrbox + widgetOpened() + setBootableCheckbox + execute() + + + installlog + widgetOpened() + launchinstall + execute() + + + installlog + widgetOpened() + launchinstall + adjustSize() + + + + devicesbox + + + diff --git a/bootrecover/bootrecover.po b/bootrecover/bootrecover.po new file mode 100644 index 0000000..7b889e4 --- /dev/null +++ b/bootrecover/bootrecover.po @@ -0,0 +1,166 @@ +#: _from_rc.cc:1 +msgid "openmamba boot loader recovery wizard" +msgstr "" + +#: _from_rc.cc:2 +msgid "Welcome!" +msgstr "" + +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. +# +#: _from_rc.cc:3 _from_rc.cc:4 _from_rc.cc:5 _from_rc.cc:18 _from_rc.cc:30 +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2008-03-26 01:47+0100\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=CHARSET\n" +"Content-Transfer-Encoding: 8bit\n" + +#: _from_rc.cc:6 +msgid "Version 0.4" +msgstr "" + +#: _from_rc.cc:7 +msgid "www.openmamba.org" +msgstr "" + +#: _from_rc.cc:8 +msgid "" +"Copyright (c) 2008 by Silvan Calarco\n" +"Released under the terms of the GNU GPL v3 license" +msgstr "" + +#: _from_rc.cc:9 +msgid "GNU/Linux distribution" +msgstr "" + +#: _from_rc.cc:10 +msgid "Boot loader recovery tool for" +msgstr "" + +#: _from_rc.cc:11 +msgid "This program will recover the openmamba boot loader." +msgstr "" + +#: _from_rc.cc:12 +msgid "" +"This operation is normally needed after the very first sector of the disk " +"(Master Boot Record) has been rewritten by the installation of another " +"operating system. \n" +"\n" +"Usually you will need to use this program only after the installation of a " +"release of Microsoft Windows to restore the openmamba boot menu.\n" +"\n" +"This tool is also useful before the installation of a third party boot " +"manager in the Master Boot Record, by moving the openmamba boot loader " +"installation from the MBR to its own partition." +msgstr "" + +#: _from_rc.cc:13 +msgid "System partition choice" +msgstr "" + +#: _from_rc.cc:14 +msgid "removab&le devices" +msgstr "" + +#: _from_rc.cc:15 +msgid "Choose openmamba system partition" +msgstr "" + +#: _from_rc.cc:16 +msgid "Where do you want to install the boot loader from?" +msgstr "" + +#: _from_rc.cc:17 +msgid "" +"Please, select the openmamba system partition where you want the boot loader " +"to be installed from." +msgstr "" + +#: _from_rc.cc:19 +msgid "Install bootloader from:" +msgstr "" + +#: _from_rc.cc:20 +msgid "Computer startup configuration" +msgstr "" + +#: _from_rc.cc:21 +msgid "Configure the boot manager" +msgstr "" + +#: _from_rc.cc:22 +msgid "Bootloader configuration" +msgstr "" + +#: _from_rc.cc:23 +msgid "Install bootloader on:" +msgstr "" + +#: _from_rc.cc:24 +msgid "set &bootable" +msgstr "" + +#: _from_rc.cc:25 +msgid "Please select the boot menu options:" +msgstr "" + +#: _from_rc.cc:26 +msgid "" +"Below is a list of other operating systems found on this computer, you may " +"configure them to appear as a choice when the computer starts." +msgstr "" + +#: _from_rc.cc:27 +msgid "Please select where you want to install the boot manager." +msgstr "" + +#: _from_rc.cc:28 +msgid "End of installation" +msgstr "" + +#: _from_rc.cc:29 +msgid "Re&boot" +msgstr "" + +#: _from_rc.cc:31 +msgid "Installation completed." +msgstr "" + +#: bootrecover.kmdr:1114 +msgid "Boot loader from" +msgstr "" + +#: bootrecover.kmdr:1114 +msgid "will installed to " +msgstr "" + +#: bootrecover.kmdr:1115 +msgid "Abort" +msgstr "" + +#: bootrecover.kmdr:1115 +msgid "OK" +msgstr "" + +#: bootrecover.kmdr:1115 +msgid "OK to continue?" +msgstr "" + +#: bootrecover.kmdr:1115 +msgid "Warning" +msgstr "" + +#: bootrecover.kmdr:1128 +msgid "Installation aborted." +msgstr "" diff --git a/bootrecover/bootrecover.sh b/bootrecover/bootrecover.sh new file mode 100755 index 0000000..5731316 --- /dev/null +++ b/bootrecover/bootrecover.sh @@ -0,0 +1,270 @@ +# openmamba boot loader recovery script +# Copyright (c) 2007-2010 by Silvan Calarco +# +# Released under the terms of the GNU GPLv3 License + +VERSION=0.6 +TEXTDOMAIN=bootrecover +TEXTDOMAINDIR=/opt/kde3/share/locale/ +INSTALL_DATE=`date +%Y%m%d-%H%M` +INPUT_FILE=~/.bootrecover.conf +LOG_FILE=/var/log/bootrecover-$INSTALL_DATE.log +MOUNTPOINT=/mnt/install +KERNEL_RELEASE=`uname -r` + +function abort() { + [ "$DCOPID" ] && { + dcop $DCOPID KommanderIf setText progressText $"Installation aborted; press Next to see the error log." + dcop $DCOPID KommanderIf setText finallabel $"Installation aborted :-(" + dcop $DCOPID KommanderIf setEnabled next true + } + exit 1 +} + +function finished() { + [ "$DCOPID" ] && { + dcop $DCOPID KommanderIf setText progressText $"Installation completed; press Next to continue." + dcop $DCOPID KommanderIf setText progressBar 100 + dcop $DCOPID KommanderIf setText installTopLabel $"Installation completed." + dcop $DCOPID KommanderIf setText installInfoLabel "" + dcop $DCOPID KommanderIf setEnabled next true + dcop $DCOPID KommanderIf setEnabled ProgressGroupBox true + } + exit 1 +} + +function dcop_write() { + [ "$DCOPID" ] && { + dcop $DCOPID KommanderIf setText progressText "$1" + dcop $DCOPID KommanderIf setText progressBar $2 + } +} + +function apt_parser() { + while read line; do + [ "$DCOPID" ] && { + echo $line + dcop $DCOPID KommanderIf setText progressText2 "$line" + } + done +} + +cp_parser_count=0 +date_start=`date +%s` + +function cp_parser() { + while read line; do + let cp_parser_count+=1 + if [ $cp_parser_count -ge 100 ]; then + [ "$DCOPID" ] && { + CP_LINE=`echo ${line/*$MOUNTPOINT/}` + MOUNT_SPACE=`du -sh $MOUNTPOINT` + MOUNT_SPACE=${MOUNT_SPACE/$MOUNTPOINT/} + let TIME_ELAPSED=\(`date +%s`-$date_start\)/60 + + dcop $DCOPID KommanderIf setText progressText2 $"\ +Copying: '$CP_LINE +${MOUNT_SPACE}bytes copied +Installation time: $TIME_ELAPSED minutes" + } + cp_parser_count=0 + fi + done +} + +function find_driver_for_udi() { + local found_driver parent_udi + + parent_udi=$1 + while [ ! "$found_driver" -a "$parent_udi" != "/org/freedesktop/Hal/devices/computer" ]; do + parent_udi=`hal-get-property --udi $parent_udi --key info.parent 2>/dev/null` + [ "`hal-get-property --udi $parent_udi --key info.bus 2>/dev/null`" = "pci" ] && + found_driver=`hal-get-property --udi $parent_udi --key info.linux.driver 2>/dev/null` + done + if [ "$found_driver" ]; then + echo $found_driver + return 0 + else + return 1 + fi +} + +function find_remapped_device() { + + local REMAPPED_INSTALL_DEVICE + + tempfile=`tempfile 2>/dev/null` + mapfile=`tempfile 2>/dev/null` + + # generate current volumes sorted list with driver information + storages=`hal-find-by-capability --capability storage` + for s in $storages; do + device=`hal-get-property --udi $s --key block.device` + linux_driver=`find_driver_for_udi $s` + [ "${device:5:2}" = "sd" ] && \ + echo "${device:0:8} $linux_driver" >> $tempfile + done + # sort + cat $tempfile|sort > $mapfile + rm -f $tempfile + + LETTERS=(a b c d e f g h i j k l m n o p q r s t u v w x y z) + + CURR_DRIVE_LETTER=0 + while read line; do + set -- $line + [ "$1" = "$INSTALL_DISK_DEVICE" ] && REMAPPED_INSTALL_DEVICE="${INSTALL_DEVICE:0:7}${LETTERS[CURR_DRIVE_LETTER]}${INSTALL_DEVICE:8:2}" + [ "$2" = "$INSTALL_DRIVER" ] && { + DEV_NAME_ORIG=(${DEV_NAME_ORIG[*]} $1) + DEV_NAME_DEST=(${DEV_NAME_DEST[*]} ${1:0:7}${LETTERS[CURR_DRIVE_LETTER]}) + let CURR_DRIVE_LETTER+=1 + } + done < $mapfile + [ "$REMAPPED_INSTALL_DEVICE" ] || REMAPPED_INSTALL_DEVICE=$INSTALL_DEVICE + echo $REMAPPED_INSTALL_DEVICE + + rm -f $mapfile + rm -f $tmpfile +} + +DCOPID=$2 + +echo $"\ +openmamba boot loader recovery script - version $VERSION +Copyright (c) 2007-2010 by Silvan Calarco +" + +dcop_write $"Starting installation..." 5 + +[ -r $INPUT_FILE ] || { + echo $"Error: cannot read input file $INPUT_FILE; aborting." >&2 + abort +} + +. $INPUT_FILE + +[ $INSTALL_DEVICE ] || { + echo $"Error: installation device is not defined in $INPUT_FILE; aborting." >&2 + abort +} + +INSTALL_DISK_DEVICE=${INSTALL_DEVICE:0:8} +MOUNTPOINT=$INSTALL_MOUNTPOINT + +[ -d $MOUNTPOINT ] || { + echo $"Error: mount point $MOUNTPOINT does not exist or is not a directory; aborting." >&2 + abort +} + +[ -e $MOUNTPOINT/etc/openmamba-release ] || { + echo $"Error: file $MOUNTPOINT/etc/openmamba-release does not exist; aborting." >&2 + abort +} + +[ -e $MOUNTPOINT/usr/sbin/grub-install ] || { + echo $"Error: file $MOUNTPOINT/usr/sbin/grub-install missing; aborting." >&2 + abort +} + +REMAPPED_INSTALL_DEVICE=`find_remapped_device $INSTALL_DEVICE` +echo $"Install device $INSTALL_DEVICE will be known as $REMAPPED_INSTALL_DEVICE in the installed system" | tee -a $LOG_FILE + +dcop_write $"Binding system dirs to new mountpoint..." 73 +mount -o bind /dev $MOUNTPOINT/dev || { + echo $"Error: could not mount $MOUNTPOINT/dev; aborting." >&2 + abort +} + +mount -o bind /sys $MOUNTPOINT/sys || { + echo $"Error: could not mount $MOUNTPOINT/sys; aborting." >&2 + abort +} + +mount -o bind /proc $MOUNTPOINT/proc || { + echo $"Error: could not mount $MOUNTPOINT/proc; aborting." >&2 + abort +} + +if [ "$INSTALL_BOOTLOADER_DEVICE" ]; then + + for k in $MOUNTPOINT/boot/vmlinuz-*; do + KVER=${k/\/boot\/vmlinuz-} + dcop_write $"Recreating initramfs for $KVER kernel..." 82 + echo $"Recreating initramfs for $KVER kernel" | tee -a $LOG_FILE + chroot $MOUNTPOINT mkinitrd -f /boot/initramfs-${KVER}.img ${KVER} + done + + dcop_write $"Installing bootloader on $INSTALL_BOOTLOADER_DEVICE..." 90 + echo $"Installing grub bootloader on $INSTALL_BOOTLOADER_DEVICE" | tee -a $LOG_FILE + + grub-install $INSTALL_BOOTLOADER_DEVICE --root-directory=$MOUNTPOINT --recheck --no-floppy + + [ "$INSTALL_BOOTLOADER_DEVICE_SETBOOTABLE" = "1" -a \ + "${INSTALL_BOOTLOADER_DEVICE:8:2}" ] && { + parted ${INSTALL_BOOTLOADER_DEVICE:0:8} \ + set ${INSTALL_BOOTLOADER_DEVICE:8:2} boot on || \ + echo $"Warning: there was an error setting bootloader partition as bootable." >&2 + } + + [ "$INSTALL_BOOTLOADER_CHAINLOAD" ] && { + # configure boot chainloader for e.g. windows + GRUB_OTHER_TITLES=() + for i in ${INSTALL_BOOTLOADER_CHAINLOAD[*]}; do + # FIXME: missing conversion from device to grub (hdx,y) form + unset ID_FS_UUID + eval `blkid $i -o udev` + if [ "$ID_FS_UUID" ]; then + if [ "$ID_FS_TYPE" = "ntfs" ]; then + [ "$ID_FS_LABEL" ] && + ID_FS_LABEL="Windows ($ID_FS_LABEL)" || ID_FS_LABEL="Windows" + elif [ "${ID_FS_TYPE:0:3}" = "fat" ]; then + [ "$ID_FS_LABEL" ] && + ID_FS_LABEL="Win/DOS ($ID_FS_LABEL)" || ID_FS_LABEL="Windows/DOS" + else + [ "$ID_FS_LABEL" ] && + ID_FS_LABEL="Other OS ($ID_FS_LABEL)" || ID_FS_LABEL="Other OS" + fi + [ "$ID_FS_LABEL" ] || ID_FS_LABEL="W" + GRUB_OTHER_DEVICES=(${GRUB_OTHER_DEVICES[*]} /dev/disk/by-uuid/$ID_FS_UUID) + GRUB_OTHER_TITLES=(${GRUB_OTHER_TITLES[*]} "\"$ID_FS_LABEL\"") + else + GRUB_OTHER_DEV=$i + for o in `seq 1 ${#DEV_NAME_ORIG[*]}`; do + [ "${DEV_NAME_ORIG[o-1]}" = "${i:5:3}" ] && { + GRUB_OTHER_DEV=${DEV_NAME_DEST[o-1]}${i:8:2} + break + } + done + GRUB_OTHER_DEVICES=(${GRUB_OTHER_DEVICES[*]} $GRUB_OTHER_DEV) + GRUB_OTHER_TITLES=(${GRUB_OTHER_TITLES[*]} "\"Windows on $GRUB_OTHER_DEV\"") + fi + done + cat >> $MOUNTPOINT/etc/sysconfig/grub << _EOF +GRUB_OTHER_DEVICES=(${GRUB_OTHER_DEVICES[*]}) +GRUB_OTHER_TITLES=(${GRUB_OTHER_TITLES[*]}) +_EOF + } + + chroot $MOUNTPOINT update-grub | tee -a $LOGFILE + + [ "${INSTALL_DEVICE}" != "${REMAPPED_INSTALL_DEVICE}" ] && \ + sed -i "s|root=/dev/${INSTALL_DEVICE:5:5}|root=/dev/${REMAPPED_INSTALL_DEVICE:5:5}|" \ + $MOUNTPOINT/boot/grub/grub.cfg +else + echo $"Info: skipping bootloader installation" | tee -a $LOG_FILE +fi + +## MBR backup +#echo "Installing MBR record on $INSTALL_DISK_DEVICE" | tee -a $LOG_FILE +#dd if=$INSTALL_DISK_DEVICE of=$MOUNTPOINT/boot/mbr-backup bs=1 count=512 +#install-mbr $INSTALL_DISK_DEVICE + +umount $MOUNTPOINT/dev +umount $MOUNTPOINT/sys +umount $MOUNTPOINT/proc +umount $MOUNTPOINT +finished + +echo $"Installation done. You can now reboot to start the freshly installed system." | tee -a $LOG_FILE + +exit 0 diff --git a/bootrecover/bootrecover.sh~ b/bootrecover/bootrecover.sh~ new file mode 100755 index 0000000..a3f4185 --- /dev/null +++ b/bootrecover/bootrecover.sh~ @@ -0,0 +1,270 @@ +# openmamba boot loader recovery script +# Copyright (c) 2007-2010 by Silvan Calarco +# +# Released under the terms of the GNU GPLv3 License + +VERSION=0.6 +TEXTDOMAIN=bootrecover +TEXTDOMAINDIR=/opt/kde3/share/locale/ +INSTALL_DATE=`date +%Y%m%d-%H%M` +INPUT_FILE=~/.bootrecover.conf +LOG_FILE=/var/log/bootrecover-$INSTALL_DATE.log +MOUNTPOINT=/mnt/install +KERNEL_RELEASE=`uname -r` + +function abort() { + [ "$DCOPID" ] && { + dcop $DCOPID KommanderIf setText progressText $"Installation aborted; press Next to see the error log." + dcop $DCOPID KommanderIf setText finallabel $"Installation aborted :-(" + dcop $DCOPID KommanderIf setEnabled next true + } + exit 1 +} + +function finished() { + [ "$DCOPID" ] && { + dcop $DCOPID KommanderIf setText progressText $"Installation completed; press Next to continue." + dcop $DCOPID KommanderIf setText progressBar 100 + dcop $DCOPID KommanderIf setText installTopLabel $"Installation completed." + dcop $DCOPID KommanderIf setText installInfoLabel "" + dcop $DCOPID KommanderIf setEnabled next true + dcop $DCOPID KommanderIf setEnabled ProgressGroupBox true + } + exit 1 +} + +function dcop_write() { + [ "$DCOPID" ] && { + dcop $DCOPID KommanderIf setText progressText "$1" + dcop $DCOPID KommanderIf setText progressBar $2 + } +} + +function apt_parser() { + while read line; do + [ "$DCOPID" ] && { + echo $line + dcop $DCOPID KommanderIf setText progressText2 "$line" + } + done +} + +cp_parser_count=0 +date_start=`date +%s` + +function cp_parser() { + while read line; do + let cp_parser_count+=1 + if [ $cp_parser_count -ge 100 ]; then + [ "$DCOPID" ] && { + CP_LINE=`echo ${line/*$MOUNTPOINT/}` + MOUNT_SPACE=`du -sh $MOUNTPOINT` + MOUNT_SPACE=${MOUNT_SPACE/$MOUNTPOINT/} + let TIME_ELAPSED=\(`date +%s`-$date_start\)/60 + + dcop $DCOPID KommanderIf setText progressText2 $"\ +Copying: '$CP_LINE +${MOUNT_SPACE}bytes copied +Installation time: $TIME_ELAPSED minutes" + } + cp_parser_count=0 + fi + done +} + +function find_driver_for_udi() { + local found_driver parent_udi + + parent_udi=$1 + while [ ! "$found_driver" -a "$parent_udi" != "/org/freedesktop/Hal/devices/computer" ]; do + parent_udi=`hal-get-property --udi $parent_udi --key info.parent 2>/dev/null` + [ "`hal-get-property --udi $parent_udi --key info.bus 2>/dev/null`" = "pci" ] && + found_driver=`hal-get-property --udi $parent_udi --key info.linux.driver 2>/dev/null` + done + if [ "$found_driver" ]; then + echo $found_driver + return 0 + else + return 1 + fi +} + +function find_remapped_device() { + + local REMAPPED_INSTALL_DEVICE + + tempfile=`tempfile 2>/dev/null` + mapfile=`tempfile 2>/dev/null` + + # generate current volumes sorted list with driver information + storages=`hal-find-by-capability --capability storage` + for s in $storages; do + device=`hal-get-property --udi $s --key block.device` + linux_driver=`find_driver_for_udi $s` + [ "${device:5:2}" = "sd" ] && \ + echo "${device:0:8} $linux_driver" >> $tempfile + done + # sort + cat $tempfile|sort > $mapfile + rm -f $tempfile + + LETTERS=(a b c d e f g h i j k l m n o p q r s t u v w x y z) + + CURR_DRIVE_LETTER=0 + while read line; do + set -- $line + [ "$1" = "$INSTALL_DISK_DEVICE" ] && REMAPPED_INSTALL_DEVICE="${INSTALL_DEVICE:0:7}${LETTERS[CURR_DRIVE_LETTER]}${INSTALL_DEVICE:8:2}" + [ "$2" = "$INSTALL_DRIVER" ] && { + DEV_NAME_ORIG=(${DEV_NAME_ORIG[*]} $1) + DEV_NAME_DEST=(${DEV_NAME_DEST[*]} ${1:0:7}${LETTERS[CURR_DRIVE_LETTER]}) + let CURR_DRIVE_LETTER+=1 + } + done < $mapfile + [ "$REMAPPED_INSTALL_DEVICE" ] || REMAPPED_INSTALL_DEVICE=$INSTALL_DEVICE + echo $REMAPPED_INSTALL_DEVICE + + rm -f $mapfile + rm -f $tmpfile +} + +DCOPID=$2 + +echo $"\ +openmamba boot loader recovery script - version $VERSION +Copyright (c) 2007-2010 by Silvan Calarco +" + +dcop_write $"Starting installation..." 5 + +[ -r $INPUT_FILE ] || { + echo $"Error: cannot read input file $INPUT_FILE; aborting." >&2 + abort +} + +. $INPUT_FILE + +[ $INSTALL_DEVICE ] || { + echo $"Error: installation device is not defined in $INPUT_FILE; aborting." >&2 + abort +} + +INSTALL_DISK_DEVICE=${INSTALL_DEVICE:0:8} +MOUNTPOINT=$INSTALL_MOUNTPOINT + +[ -d $MOUNTPOINT ] || { + echo $"Error: mount point $MOUNTPOINT does not exist or is not a directory; aborting." >&2 + abort +} + +[ -e $MOUNTPOINT/etc/openmamba-release ] || { + echo $"Error: file $MOUNTPOINT/etc/openmamba-release does not exist; aborting." >&2 + abort +} + +[ -e $MOUNTPOINT/usr/sbin/grub-install ] || { + echo $"Error: file $MOUNTPOINT/usr/sbin/grub-install missing; aborting." >&2 + abort +} + +REMAPPED_INSTALL_DEVICE=`find_remapped_device $INSTALL_DEVICE` +echo $"Install device $INSTALL_DEVICE will be known as $REMAPPED_INSTALL_DEVICE in the installed system" | tee -a $LOG_FILE + +dcop_write $"Binding system dirs to new mountpoint..." 73 +mount -o bind /dev $MOUNTPOINT/dev || { + echo $"Error: could not mount $MOUNTPOINT/dev; aborting." >&2 + abort +} + +mount -o bind /sys $MOUNTPOINT/sys || { + echo $"Error: could not mount $MOUNTPOINT/sys; aborting." >&2 + abort +} + +mount -o bind /proc $MOUNTPOINT/proc || { + echo $"Error: could not mount $MOUNTPOINT/proc; aborting." >&2 + abort +} + +if [ "$INSTALL_BOOTLOADER_DEVICE" ]; then + + for k in $MOUNTPOINT/boot/vmlinuz-*; do + KVER=${k/\/boot\/vmlinuz-} + dcop_write $"Recreating initramfs for $KVER kernel..." 82 + echo $"Recreating initramfs for $KVER kernel" | tee -a $LOG_FILE + chroot mkinitrd -f /boot/initramfs-${KVER}.img ${KVER} + done + + dcop_write $"Installing bootloader on $INSTALL_BOOTLOADER_DEVICE..." 90 + echo $"Installing grub bootloader on $INSTALL_BOOTLOADER_DEVICE" | tee -a $LOG_FILE + + grub-install $INSTALL_BOOTLOADER_DEVICE --root-directory=$MOUNTPOINT --recheck --no-floppy + + [ "$INSTALL_BOOTLOADER_DEVICE_SETBOOTABLE" = "1" -a \ + "${INSTALL_BOOTLOADER_DEVICE:8:2}" ] && { + parted ${INSTALL_BOOTLOADER_DEVICE:0:8} \ + set ${INSTALL_BOOTLOADER_DEVICE:8:2} boot on || \ + echo $"Warning: there was an error setting bootloader partition as bootable." >&2 + } + + [ "$INSTALL_BOOTLOADER_CHAINLOAD" ] && { + # configure boot chainloader for e.g. windows + GRUB_OTHER_TITLES=() + for i in ${INSTALL_BOOTLOADER_CHAINLOAD[*]}; do + # FIXME: missing conversion from device to grub (hdx,y) form + unset ID_FS_UUID + eval `blkid $i -o udev` + if [ "$ID_FS_UUID" ]; then + if [ "$ID_FS_TYPE" = "ntfs" ]; then + [ "$ID_FS_LABEL" ] && + ID_FS_LABEL="Windows ($ID_FS_LABEL)" || ID_FS_LABEL="Windows" + elif [ "${ID_FS_TYPE:0:3}" = "fat" ]; then + [ "$ID_FS_LABEL" ] && + ID_FS_LABEL="Win/DOS ($ID_FS_LABEL)" || ID_FS_LABEL="Windows/DOS" + else + [ "$ID_FS_LABEL" ] && + ID_FS_LABEL="Other OS ($ID_FS_LABEL)" || ID_FS_LABEL="Other OS" + fi + [ "$ID_FS_LABEL" ] || ID_FS_LABEL="W" + GRUB_OTHER_DEVICES=(${GRUB_OTHER_DEVICES[*]} /dev/disk/by-uuid/$ID_FS_UUID) + GRUB_OTHER_TITLES=(${GRUB_OTHER_TITLES[*]} "\"$ID_FS_LABEL\"") + else + GRUB_OTHER_DEV=$i + for o in `seq 1 ${#DEV_NAME_ORIG[*]}`; do + [ "${DEV_NAME_ORIG[o-1]}" = "${i:5:3}" ] && { + GRUB_OTHER_DEV=${DEV_NAME_DEST[o-1]}${i:8:2} + break + } + done + GRUB_OTHER_DEVICES=(${GRUB_OTHER_DEVICES[*]} $GRUB_OTHER_DEV) + GRUB_OTHER_TITLES=(${GRUB_OTHER_TITLES[*]} "\"Windows on $GRUB_OTHER_DEV\"") + fi + done + cat >> $MOUNTPOINT/etc/sysconfig/grub << _EOF +GRUB_OTHER_DEVICES=(${GRUB_OTHER_DEVICES[*]}) +GRUB_OTHER_TITLES=(${GRUB_OTHER_TITLES[*]}) +_EOF + } + + chroot $MOUNTPOINT update-grub | tee -a $LOGFILE + + [ "${INSTALL_DEVICE}" != "${REMAPPED_INSTALL_DEVICE}" ] && \ + sed -i "s|root=/dev/${INSTALL_DEVICE:5:5}|root=/dev/${REMAPPED_INSTALL_DEVICE:5:5}|" \ + $MOUNTPOINT/boot/grub/grub.cfg +else + echo $"Info: skipping bootloader installation" | tee -a $LOG_FILE +fi + +## MBR backup +#echo "Installing MBR record on $INSTALL_DISK_DEVICE" | tee -a $LOG_FILE +#dd if=$INSTALL_DISK_DEVICE of=$MOUNTPOINT/boot/mbr-backup bs=1 count=512 +#install-mbr $INSTALL_DISK_DEVICE + +umount $MOUNTPOINT/dev +umount $MOUNTPOINT/sys +umount $MOUNTPOINT/proc +umount $MOUNTPOINT +finished + +echo $"Installation done. You can now reboot to start the freshly installed system." | tee -a $LOG_FILE + +exit 0 diff --git a/bootrecover/openmamba-bootrecover.desktop b/bootrecover/openmamba-bootrecover.desktop new file mode 100644 index 0000000..9fa25d5 --- /dev/null +++ b/bootrecover/openmamba-bootrecover.desktop @@ -0,0 +1,14 @@ +[Desktop Entry] +Name=openmamba Boot Recover +Name[it]=Boot Recover di openmamba +GenericName=openmamba boot loader recovery +GenericName[it]=Ripristino del boot loader di openmamba +Comment=openmamba installer +Exec=kmdr-executor /usr/share/openmamba/bootrecover/bootrecover.kmdr +Icon=bootrecover +Terminal=0 +Type=Application +Categories=X-openmamba +X-KDE-RootOnly=true +X-KDE-SubstituteUID=true +X-KDE-Username=root diff --git a/bootrecover/po/es.po b/bootrecover/po/es.po new file mode 100644 index 0000000..6f1c4fd --- /dev/null +++ b/bootrecover/po/es.po @@ -0,0 +1,671 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# Silvan Calarco , 2007 +# +#: _from_rc.cc:3 _from_rc.cc:4 _from_rc.cc:5 _from_rc.cc:16 _from_rc.cc:22 +#: _from_rc.cc:24 _from_rc.cc:25 _from_rc.cc:27 _from_rc.cc:46 +#, fuzzy +msgid "" +msgstr "" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Mime-Version: 1.0" +"Last-Translator: Silvan Calarco \n" +"PO-Revision-Date: 2007-09-15 13:13+0200\n" +"Project-Id-Version: installer\n" +"Language-Team: \n" +"X-Generator: KBabel 1.11.4\n" +"MIME-Version: 1.0\n" + +#: _from_rc.cc:1 +msgid "openmamba boot loader recovery wizard" +msgstr "gestión del boot loader de openmamba " + +#: _from_rc.cc:2 +msgid "Welcome!" +msgstr "Bienvenido!" + +#: _from_rc.cc:8 +msgid "Installation wizard for" +msgstr "Programa de instalación de" + +#: _from_rc.cc:9 +msgid "GNU/Linux distribution" +msgstr "Distribución GNU/Linux" + +#: _from_rc.cc:10 installer.kmdr:200 +msgid "version" +msgstr "versión" + +#: _from_rc.cc:11 +msgid "www.openmamba.org" +msgstr "" + +#: _from_rc.cc:12 +msgid "" +"Copyright (c) 2007-2010 by Silvan Calarco\n" +"Released under the terms of the GNU GPL v3 license" +msgstr "Copyright (c) 2007-2010 by Silvan Calarco\n" +"Expedido según los terminos de la licencia GNU GPL v3" + +#: _from_rc.cc:9 +msgid "Distribuzione GNU/Linux" +msgstr "" + +#: _from_rc.cc:10 +msgid "Boot loader recovery tool for" +msgstr "Gestión del boot loader para" + +#: _from_rc.cc:11 +msgid "This program will recover the openmamba boot loader." +msgstr "Este programa reconfigurará el sistema de arranque di openmamba" + +#: _from_rc.cc:12 +msgid "" +"This operation is normally needed after the very first sector of the disk " +"(Master Boot Record) has been rewritten by the installation of another " +"operating system. \n" +"\n" +"Usually you will need to use this program only after the installation of a " +"release of Microsoft Windows to restore the openmamba boot menu.\n" +"\n" +"This tool is also useful before the installation of a third party boot " +"manager in the Master Boot Record, by moving the openmamba boot loader " +"installation from the MBR to its own partition." +msgstr "" +"Esta operación es normalmente necesaria después del primer sector del disco " +"de inicio (Master Boot Record) ha sido sobreescrito desde la instalación de " +"otro sistema operativo. \n" +"\n" +"Normalmente es necesario usar este programa solo despues de la instalación de " +"una versión de Microsoft Windows para restaurar el menú de inicio de openmamba.\n" +"\n" +"Questo programa puede también servir para la instalación de otro sistema de arranque " +"en el Master Boot Record, cambiando el sistema de arranque di openmamba desde MBR a su " +"partición del sistema." + +#: _from_rc.cc:13 +msgid "System partition choice" +msgstr "Selección de la partición del sistema" + +#: _from_rc.cc:14 +msgid "removab&le devices" +msgstr "dipositivos extraib&les" + +#: _from_rc.cc:15 +msgid "Choose openmamba system partition" +msgstr "Selecciona la partición de sistema de openmamba" + + +#: _from_rc.cc:16 +msgid "Where do you want to install the boot loader from?" +msgstr "¿Dónde quieres instalar el sistema de arranque?" + +#: _from_rc.cc:17 +msgid "" +"Please, select the openmamba system partition where you want the boot loader " +"to be installed from." +msgstr "" +"Selecciona la partición de sistema de openmamba donde quieres instalar el sistema de arranque." + +#: _from_rc.cc:19 +msgid "Install bootloader from:" +msgstr "Instala el sistema de arranque desde:" + +#: _from_rc.cc:20 +msgid "Computer startup configuration" +msgstr "Configuración de inicio del sistema" + +#: _from_rc.cc:14 +msgid "Data integrity check" +msgstr "Control de integridad de datos" + +#: _from_rc.cc:16 +msgid "S&kip check" +msgstr "S&alta la verificación" + +#: _from_rc.cc:17 +msgid "" +"Please wait some time while the CD/DVD-ROM is checked for data integrity. \n" +"Press the skip button only if you have previously checked the disc on this " +"computer." +msgstr "" +"Por favor, espera mientras se produce el control de integridad del CD/DVD-ROM. \n" +"Presiona el botón salta solo si tienes anteriormente verificado el disco en " +"este equipo." + +#: _from_rc.cc:18 +msgid "License" +msgstr "Licencia" + +#: _from_rc.cc:19 +msgid "Full license text" +msgstr "Texto de la licencia" + +#: _from_rc.cc:20 +msgid "&I've read and accept the licensing terms" +msgstr "&He leido y acepto los terminos de la licencia" + +#: _from_rc.cc:27 +msgid "I&gnore SWAP partition check (not recommended)" +msgstr "Ignora el contro de la partición de SWAP (no recomendado)" + +msgid "" +"The openmamba GNU/Linux distribution is released under the terms of the GNU " +"GPL v3 license." +msgstr "" +"La distribución GNU/Linux openmamba ha sido expedida según los términos de la " +"licencia GNU GPL v3." + +#: installer.kmdr:464 +msgid "" +"Warning: check skipped; this might cause unpredicted installation errors." +msgstr "" +"Atención: control saltado; podrían producirse errores en la instalación." + +#: _from_rc.cc:22 +msgid "Please read carefully and accept the license before proceeding." +msgstr "Por favor lee atentamente y acepta la licencia antes de continuar." + +#: _from_rc.cc:6 +msgid "Installation wizard" +msgstr "programa de instalación" + +#: _from_rc.cc:9 +msgid "&I've read the warning and want to go on with the installation" +msgstr "&He leido el aviso y quiero proceder con la instalación" + +#: _from_rc.cc:10 +msgid "Version" +msgstr "Versión" + +#: _from_rc.cc:21 +msgid "Disk partitioning" +msgstr "Particionamiento del disco" + +#: _from_rc.cc:22 +msgid "Current partitions status" +msgstr "Estado actual de las particiones" + +#: _from_rc.cc:25 +msgid "Check and edit disk partitions" +msgstr "Controla y modifica las particiones" + +#: _from_rc.cc:26 +msgid "Ed&it disk partitions" +msgstr "Modifica las particiones" + +#: _from_rc.cc:11 +msgid "Disk installation choice" +msgstr "Selecciona el disco de partición" + +#: _from_rc.cc:12 +msgid "Available partitions" +msgstr "Particiones disponibles" + +#: _from_rc.cc:13 +msgid "Rescan dis&ks" +msgstr "&Escaneo de discos" + + +#: _from_rc.cc:32 +msgid "" +"Please, select the disk partition where you want the system to be " +"installed.\n" +"
WARNING: all current data on the selected partition will be lost." +msgstr "" +"Selecciona la partición del disco en la que quieres instalar el sistema.\n" +"
ATENCIÓN: todos los datos actualmente presentes en la partición seleccionada seran perdidos." + +#: _from_rc.cc:33 +msgid "What filesystem do you want?" +msgstr "Qué sistema de arranque deseas?" + +#: _from_rc.cc:34 +msgid "Filesystem type:" +msgstr "Tipo de sistema de fichero:" + +#: _from_rc.cc:35 +msgid "Partition will be formatted with the selected filesystem." +msgstr "La partición será formateada con el sistema de fichero seleccionado." + + +#: _from_rc.cc:38 +msgid "Choose system partition and filesystem type" +msgstr "Selección de la partición de sistema y del sistema de fichero" + +#: _from_rc.cc:40 +msgid "Configure the boot manager" +msgstr "Configura el sistema de arranque" + +#: _from_rc.cc:41 +msgid "Bootloader configuration" +msgstr "Configuración del sistema de arranque" + +#: _from_rc.cc:42 +msgid "Install bootloader on:" +msgstr "Instala el sistema de arranque en:" + +#: _from_rc.cc:44 +msgid "Please select the boot menu options:" +msgstr "Selecciona las opciones del menú de inicio:" + +#: _from_rc.cc:45 +msgid "Please select where you want to install the boot manager." +msgstr "Seleciona donde quieres instalar el sistema de arranque." + +#: _from_rc.cc:46 +msgid "" +"Below is a list of other operating systems found on this computer, you may " +"configure them to appear as a choice when the computer starts." +msgstr "" +"A continuación la lista muestra otros sistemas operativos encontrados en este equipo, " +"puedes configurarlos en modo que aparezcan como selección de inicio del equipo." + +#: installer.kmdr:848 +msgid "" +"In order to install openmamba you need on your fixed disk(s):
- a " +"Linux type partition with at least $systemrequired MBytes
- a SWAP type partition " +"with at least $swaprequired MBytes" +msgstr "" +"Para instalar openmamba debes tener en uno de tus discos:
" +"- una partición de tipo Linux de al menos $systemrequired MBytes
" +"- una partición de tipo SWAP de al menos $swaprequired MBytes" + +#: installer.kmdr:901 +msgid "You need to create a Linux type partition<br>" +msgstr "Debes crear una partición de tipo Linux<br>" + +msgid "Please, modify the partitions or press Next to proceed with the installation." +msgstr "Modifica las particiones o presiona Siguiente para proceder." + +msgid "GOOD, you have both a Linux and SWAP partition." +msgstr "BIEN, tienes al menos una partición Linux y una para SWAP." + +msgid "Please, press the button above and modify the partitions as needed before proceeding." +msgstr "Presiona el botón para modificar la partición como necesario antes de proceder." + +msgid "OK for swap" +msgstr "OK para swap" + +msgid "OK for system" +msgstr "OK para el sistema" + +#: installer.kmdr:902 +msgid "You need to create a SWAP type partition<br>" +msgstr "Debes crear una partición de tipo SWAP<br>" + +#: installer.kmdr:906 +msgid "Press OK to launch the disk partitioning tool." +msgstr "Presiona OK para reiniciar el programa de particionamiento del disco." + +#: installer.kmdr:939 +msgid "Hint: in order to install openmamba you should create:" +msgstr "Sugerencia: para instalar openmamba deberias crear:" + +#: installer.kmdr:941 +msgid "a Linux partition (type ext3 or reiserfs)" +msgstr "una partición Linux (tipo ext3 o reiserfs)" + +#: installer.kmdr:942 +msgid "a Linux SWAP partition" +msgstr "una partición Linux SWAP" + +#: installer.kmdr:1170 +msgid "No installable partitions found" +msgstr "Ninguna partición instalable encontrada" + +#: installer.kmdr:1170 +msgid "" +"No installable partitions found, do you want to launch the partitioning tool?" +msgstr "" +"No ha sido encontrada ninguna partición instalable, ¿puedes iniciar el programa de particionamiento?" + +msgid "Hint for partitioning" +msgstr "Sugerencia para el particionamiento" + +#: installer.kmdr:1174 installer.kmdr:1932 +msgid "Installation aborted." +msgstr "Instalación interrumpida." + +#: _from_rc.cc:15 +msgid "Install system on:" +msgstr "Instala el sistema en:" + +#: _from_rc.cc:17 +msgid "Where do you want to install openmamba?" +msgstr "Donde quieres instalar openmamba?" + +#: _from_rc.cc:20 +msgid "set &bootable" +msgstr "&arrancable" + +#: _from_rc.cc:20 +msgid "Boot menu options:" +msgstr "Opciones del menu de inicio:" + +#: _from_rc.cc:21 +msgid "User details" +msgstr "Información sobre el usuario" + +#: _from_rc.cc:23 +msgid "User:" +msgstr "User:" + +#: _from_rc.cc:26 +msgid "Autologin:" +msgstr "Acceso automático:" + +#: _from_rc.cc:28 +msgid "Password:" +msgstr "" + +#: _from_rc.cc:29 _from_rc.cc:43 +msgid "Confirm password:" +msgstr "" + +#: _from_rc.cc:30 +msgid "Full name:" +msgstr "Nombre completo:" + +#: _from_rc.cc:31 +msgid "About yourself" +msgstr "Información sobre el usuario" + +#: _from_rc.cc:32 +msgid "" +"An user with administrator privileges will be created.\n" +"Please provide your details here." +msgstr "Será creado un usuario con los privilegios de administrador.\n" +"Introduce la información solicitada." + +#: _from_rc.cc:33 _from_rc.cc:35 +msgid "System information" +msgstr "Información sobre el sistema" + +#: _from_rc.cc:34 +msgid "About the system" +msgstr "Información sobre el sistema" + +#: _from_rc.cc:36 +msgid "localdomain" +msgstr "" + +#: _from_rc.cc:37 +msgid "Hostname:" +msgstr "Nombre del equipo:" + +#: _from_rc.cc:38 +msgid "Domain:" +msgstr "Dominio:" + +#: _from_rc.cc:39 +msgid "openmamba" +msgstr "" + +#: _from_rc.cc:40 +msgid "" +"Please choose a name for you system (Hostname) and\n" +"assign a domain name for networking." +msgstr "" +"Selecciona un nombre para tu sistema y\n" +"asigna un nombre de dominio para la red." + +#: _from_rc.cc:41 +msgid "Superuser password" +msgstr "Password del superusuario (root)" + +#: _from_rc.cc:42 +msgid "Root password:" +msgstr "Password de root:" + +#: _from_rc.cc:44 +msgid "Installation progress" +msgstr "Avance de la instalación" + +#: _from_rc.cc:45 +msgid "Installation in progress..." +msgstr "Instalación en curso..." + +#: _from_rc.cc:47 +msgid "Launching installation script..." +msgstr "Inicio de la instalación...." + +#: _from_rc.cc:48 +msgid "End of installation" +msgstr "Fin de la instalación" + +#: _from_rc.cc:49 +msgid "Installation completed." +msgstr "Instalación completa." + +#: _from_rc.cc:50 +msgid "Re&boot" +msgstr "&Reinicia" + +#: installer.kmdr:908 +msgid "System partition" +msgstr "Partición del sistema" + +#: installer.kmdr:1289 +msgid "Abort" +msgstr "Cancela" + +#: installer.kmdr:1289 +msgid "OK" +msgstr "OK" + +#: installer.kmdr:1289 +msgid "Selected partition" +msgstr "La partición seleccionada" + +#: installer.kmdr:1289 +msgid "Warning" +msgstr "Aviso" + +#: installer.kmdr:1289 +msgid "will be formatted; all data will be lost. OK to format?" +msgstr "será formateada; todos los datos seran perdidos.¿Continuar con el formateo?" + +#: _from_rc.cc:39 +msgid "" +"Please wait while openmamba installation is performed.\n" +"Installation time mostly depends on the CD-ROM access speed and may last up " +"to 30 minutes." +msgstr "" +"Por favor, espera mientras se efectua la instalación.\n" +"El tiempo solicitado depende sobre todo de la velocidad de acceso al soporte CD-ROM y " +"puede durar hasta 30 minutos." + +#: md5progress.sh:27 +msgid "" +"openmamba md5 media check - version $VERSION\n" +"Copyright (c) 2007-2008 by Silvan Calarco \n" +"" +msgstr "" +"openmamba, control md5 de un media - versión $VERSION\n" +"Copyright (c) 2007-2008 by Silvan Calarco \n" + +#: md5progress.sh:33 +msgid "Error: this program must be launched by mamba installer; aborting." +msgstr "Error: este programa debe ser ejecutado desde mamba installer; salir." + +#: md5progress.sh:46 +msgid "CD/DVD-ROM support check OK. Press next to proceed with installation." +msgstr "Soporte CD/DVD-ROM verificado con éxito. Presiona Siguiente para continuar." + +#: md5progress.sh:48 +msgid "ERROR: CD/DVD-ROM support has errors; please try with another media." +msgstr "ERROR: el soporte CD/DVD-ROM tiene errores; prueba con otro media." + +#: md5progress.sh:51 +msgid "ERROR: this program must be run from live CD/DVD-ROM." +msgstr "ERROR: este programa debe ser ejecutado desde live CD/DVD-ROM." + +#: installer.sh:21 +msgid "Installation aborted; press Next to see the error log." +msgstr "Instalación interrumpida; presiona Siguiente para visualizar los errores." +#: installer.sh:22 +msgid "Installation aborted :-(" +msgstr "Instalación interrumpida :-(" +#: installer.sh:30 +msgid "Installation completed; press Next to continue." +msgstr "Instalación completa; presiona Siguiente para continuar." +#: installer.sh:69 +msgid "" +"Copying: '$CP_LINE\n" +"${MOUNT_SPACE}bytes copied\n" +"Installation time: $TIME_ELAPSED minutes" +msgstr "" +"Copia de: '$CP_LINE\n" +"${MOUNT_SPACE}bytes copiados\n" +"Tiempo de instalación: $TIME_ELAPSED minutos" +#: installer.sh:105 +msgid "Warning: this script will perform an automatic installation erasing all the" +msgstr "Atención: este script efectuará una instalación automática cancelando" +#: installer.sh:106 +msgid " contents of device $INSTALL_DEVICE; use $0 -y to actually start the" +msgstr " el contenido del dispositivo $INSTALL_DEVICE; usa $0 -y para iniciar" +#: installer.sh:107 +msgid " operation." +msgstr " la operación." +#: installer.sh:113 +msgid "" +"openmamba installation script - version $VERSION\n" +"Copyright (c) 2007-2008 by Silvan Calarco \n" +"" +msgstr "" +"script de instalación de openmamba - versión $VERSION\n" +"Copyright (c) 2007-2008 by Silvan Calarco \n" +"" +#: installer.sh:118 +msgid "Starting installation..." +msgstr "Inicio de la instalación..." +#: installer.sh:121 +msgid "Error: cannot read input file $INPUT_FILE; aborting." +msgstr "Error: no se puede leer el fichero $INPUT_FILE; salir." +#: installer.sh:134 +msgid "Error: installation device is not defined in $INPUT_FILE; aborting." +msgstr "Error: el dispositivo de instalación no esta definido en $INPUT_FILE; salir." +#: installer.sh:141 +msgid "Error: missing install device $INSTALL_DEVICE; aborting." +msgstr "Error: dispositivo de instalación $INSTALL_DEVICE mancante; salir." +#: installer.sh:145 +msgid "openmamba installation started" +msgstr "Instalación de openmamba iniciada" +#: installer.sh:148 +msgid "Info: device already mounted; unmounting." +msgstr "Info: dispositivo ya montado; desmontando." +#: installer.sh:152 +msgid "Error: could not unmount $INSTALL_DEVICE; aborting." +msgstr "Error: no se puede desmontar $INSTALL_DEVICE; salir." +#: installer.sh:158 +msgid "Info: device already mounted on $MOUNTPOINT/dev; unmounting." +msgstr "Info: dispositivo ya montado en $MOUNTPOINT/dev; desmontando." +#: installer.sh:160 +msgid "Error: could not unmount $MOUNTPOINT/dev; aborting." +msgstr "Error: no se puede desmontar $MOUNTPOINT/dev; aborting." +#: installer.sh:166 +msgid "Info: device already mounted on $MOUNTPOINT; unmounting." +msgstr "Info: dispositivo ya montado en $MOUNTPOINT; desmontando." +#: installer.sh:168 +msgid "Error: could not unmount $MOUNTPOINT; aborting." +msgstr "Error: no se puede desmontar $MOUNTPOINT; salir." +#: installer.sh:173 +msgid "Error: could not create mount point $MOUNTPOINT; aborting." +msgstr "Error: no se puede crear el punto de montaje $MOUNTPOINT; salir." +#: installer.sh:179 +msgid "Error: missing initialization tool $FORMAT_CMD; aborting." +msgstr "Error: programa de inicio $FORMAT_CMD falta; salir." +#: installer.sh:183 +msgid "Formatting device $INSTALL_DEVICE..." +msgstr "Formateo del dispositivo $INSTALL_DEVICE..." +#: installer.sh:184 +msgid "Formatting device $INSTALL_DEVICE" +msgstr "Formateo del dispositivo $INSTALL_DEVICE" +#: installer.sh:191 +msgid "Mounting $INSTALL_FSTYPE filesystem..." +msgstr "Montaje de un sistema de fichero $INSTALL_FSTYPE" +#: installer.sh:192 +msgid "Mounting $INSTALL_FSTYPE filesystem" +msgstr "Montaje de un sistema de fichero $INSTALL_FSTYPE" +#: installer.sh:194 +msgid "Error: could not mount filesystem; aborting." +msgstr "Error: no se puede desmontar el sistema de archivo; salir." +#: installer.sh:198 +msgid "Copying files..." +msgstr "Copia de los ficheros..." +#: installer.sh:203 +msgid "Copying files (/$d)..." +msgstr "Copia de los ficheros (/$d)..." +#: installer.sh:207 +msgid "Error: cannot copy $canonical_dir to $MOUNTPOINT; aborting." +msgstr "Error: no se puede copiar $canonical_dir su $MOUNTPOINT; salir." +#: installer.sh:219 +msgid "Error: cannot run MAKEDEV; aborting." +msgstr "Error: no se puede ejecutar MAKEDEV; salir." +#: installer.sh:225 +msgid "Binding system dirs to new mountpoint..." +msgstr "Conectando las rutas de sistema al nuevo punto de montaje..." +#: installer.sh:226 +msgid "Binding /dev to new mountpoint" +msgstr "Conecto /dev al nuevo punto de montaje" +#: installer.sh:228 +msgid "Error: could not bind /dev to new mountpoint; aborting." +msgstr "Error: no se puede conectar /dev al nuevo punto de montaje; salir" +#: installer.sh:232 +msgid "Error: could not bind /proc to new mountpoint; aborting." +msgstr "Error: no se puede conectar /proc al nuevo punto de montaje; salir." +#: installer.sh:250 +msgid "Creating initramfs..." +msgstr "Creación del 'initramfs..." +#: installer.sh:251 +msgid "Creating initramfs" +msgstr "Creación del initramfs" +#: installer.sh:255 +msgid "Error: initramfs creation failed; aborting." +msgstr "Error: creación del initramfs fallida; salir." +#: installer.sh:260 +msgid "Installing bootloader on $INSTALL_BOOTLOADER_DEVICE..." +msgstr "Instalación del sistema de arranque en $INSTALL_BOOTLOADER_DEVICE..." +#: installer.sh:261 +msgid "Installing grub bootloader on $INSTALL_BOOTLOADER_DEVICE" +msgstr "Instalación del sistema de arranque grub su $INSTALL_BOOTLOADER_DEVICE" +#: installer.sh:268 +msgid "Warning: there was an error setting bootloader partition as bootable." +msgstr "Atención: ha habido un error configurando como arrancable la partición del sistema de arranque." +#: installer.sh:287 +msgid "Info: skipping bootloader installation" +msgstr "Info: saltando la instalación del sistema de arranque" + +#: installer.sh:295 +msgid "Configuring system startup files..." +msgstr "Configuración de los ficheros de inicio del sistema..." +#: installer.sh:296 +msgid "Configuring system startup files" +msgstr "Configuración de los ficheros de inicio del sistema" +#: installer.sh:307 +msgid "Configuring users and host..." +msgstr "Configurando los usuarios y del equipo..." +#: installer.sh:308 +msgid "Configuring users and host" +msgstr "Configuración de los usuarios y del equipo" +#: installer.sh:315 +msgid "Installing packages..." +msgstr "Instalación de los paquetes..." +#: installer.sh:316 +msgid "Installing packages" +msgstr "Instalación de los paquetes" +#: installer.sh:330 +msgid "Launching chrooted apt-get..." +msgstr "Ejecución de apt-get con chroot..." +#: installer.sh:344 +msgid "Removing/cleaning unnecessary files and packages..." +msgstr "Eliminando/limpiando los ficheros y paquetes no necesarios..." +#: installer.sh:345 +msgid "Removing/cleaning unnecessary files and packages" +msgstr "Eliminando/limpiando los ficheros y paquetes no necesarios" +#: installer.sh:362 +msgid "Installation done. You can now reboot to start the freshly installed system." +msgstr "Instalación. Ahora es posible reiniciar para ejecutar el sistema apenas instalado." diff --git a/bootrecover/po/it.po b/bootrecover/po/it.po new file mode 100644 index 0000000..b8d1fcf --- /dev/null +++ b/bootrecover/po/it.po @@ -0,0 +1,628 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# Silvan Calarco , 2007 +# +#: _from_rc.cc:3 _from_rc.cc:4 _from_rc.cc:5 _from_rc.cc:16 _from_rc.cc:22 +#: _from_rc.cc:24 _from_rc.cc:25 _from_rc.cc:27 _from_rc.cc:46 +#, fuzzy +msgid "" +msgstr "" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Mime-Version: 1.0" +"Last-Translator: Silvan Calarco \n" +"PO-Revision-Date: 2007-09-15 13:13+0200\n" +"Project-Id-Version: installer\n" +"Language-Team: \n" +"X-Generator: KBabel 1.11.4\n" +"MIME-Version: 1.0\n" + +#: _from_rc.cc:1 +msgid "openmamba boot loader recovery wizard" +msgstr "Ripristino del boot loader di openmamba " + +#: _from_rc.cc:2 +msgid "Welcome!" +msgstr "Benvenuto!" + +#: _from_rc.cc:8 +msgid "Installation wizard for" +msgstr "Programma di installazione di" + +#: _from_rc.cc:9 +msgid "GNU/Linux distribution" +msgstr "distribuzione GNU/Linux" + +#: _from_rc.cc:10 installer.kmdr:200 +msgid "version" +msgstr "versione" + +#: _from_rc.cc:11 +msgid "www.openmamba.org" +msgstr "" + +#: _from_rc.cc:12 +msgid "" +"Copyright (c) 2007-2010 by Silvan Calarco\n" +"Released under the terms of the GNU GPL v3 license" +msgstr "Copyright (c) 2007-2010 by Silvan Calarco\n" +"Rilasciato secondo i termini della licenza GNU GPL v3" + +#: _from_rc.cc:9 +msgid "Distribuzione GNU/Linux" +msgstr "" + +#: _from_rc.cc:10 +msgid "Boot loader recovery tool for" +msgstr "Ripristino del boot loader di" + +#: _from_rc.cc:11 +msgid "This program will recover the openmamba boot loader." +msgstr "Questo programma riconfigurerà il boot loader di openmamba" + +#: _from_rc.cc:12 +msgid "" +"This operation is normally needed after the very first sector of the disk " +"(Master Boot Record) has been rewritten by the installation of another " +"operating system. \n" +"\n" +"Usually you will need to use this program only after the installation of a " +"release of Microsoft Windows to restore the openmamba boot menu.\n" +"\n" +"This tool is also useful before the installation of a third party boot " +"manager in the Master Boot Record, by moving the openmamba boot loader " +"installation from the MBR to its own partition." +msgstr "" +"Questa operazione è normalmente necessaria dopo che il primo settore del disco " +"di avvio (Master Boot Record) è stato sovrascritto dall'installazione di un " +"altro sistema operativo. \n" +"\n" +"Di solito occorre usare questo programma solo dopo l'installazione o la reinstallazione di " +"una versione di Microsoft Windows per ripristinare il menù di avvio di openmamba.\n" +"\n" +"Questo programma può anche servire per l'installazione di un altro boot loader " +"nel Master Boot Record, spostando il boot loader di openmamba dall'MBR alla sua " +"partizione di sistema." + +#: _from_rc.cc:13 +msgid "System partition choice" +msgstr "Scelta della partizione di sistema" + +#: _from_rc.cc:14 +msgid "removab&le devices" +msgstr "dispositivi removibili" + +#: _from_rc.cc:15 +msgid "Choose openmamba system partition" +msgstr "Scegli la partizione di sistema di openmamba" + + +#: _from_rc.cc:16 +msgid "Where do you want to install the boot loader from?" +msgstr "Da dove vuoi installare il boot loader?" + +#: _from_rc.cc:17 +msgid "" +"Please, select the openmamba system partition where you want the boot loader " +"to be installed from." +msgstr "" +"Scegli la partizione di sistema di openmamba da cui vuoi installare il boot loader." + +#: _from_rc.cc:19 +msgid "Install bootloader from:" +msgstr "Installa il boot loader da:" + +#: _from_rc.cc:20 +msgid "Computer startup configuration" +msgstr "Configurazione di avvio del computer" + +#: _from_rc.cc:14 +msgid "Data integrity check" +msgstr "Controllo di integrità dei dati" + +#: _from_rc.cc:16 +msgid "S&kip check" +msgstr "Salta la verifica" + +#: _from_rc.cc:17 +msgid "" +"Please wait some time while the CD/DVD-ROM is checked for data integrity. \n" +"Press the skip button only if you have previously checked the disc on this " +"computer." +msgstr "" +"Per favore attendi mentre avviene controllo di integrità del CD/DVD-ROM. \n" +"Premi il bottone salta solo se hai precedentemente verificato il disco su " +"questo computer." + +#: _from_rc.cc:18 +msgid "License" +msgstr "Licenza" + +#: _from_rc.cc:19 +msgid "Full license text" +msgstr "Testo della licenza" + +#: _from_rc.cc:20 +msgid "&I've read and accept the licensing terms" +msgstr "Ho letto ed accetto i termini della licenza" + +#: _from_rc.cc:27 +msgid "I&gnore SWAP partition check (not recommended)" +msgstr "Ignora il controllo della partizione di SWAP (non raccomandato)" + +msgid "" +"The openmamba GNU/Linux distribution is released under the terms of the GNU " +"GPL v3 license." +msgstr "" +"La distribuzione GNU/Linux openmamba è rilasciata secondo i termini della " +"licenza GNU GPL v3." + +#: installer.kmdr:464 +msgid "" +"Warning: check skipped; this might cause unpredicted installation errors." +msgstr "" +"Attenzione: controllo saltato; potrebbero verificarsi degli errori nell'installazione." + +#: _from_rc.cc:22 +msgid "Please read carefully and accept the license before proceeding." +msgstr "Per favore leggi attentamente ed accetta la licenza prima di proseguire." + +#: _from_rc.cc:6 +msgid "Installation wizard" +msgstr "programma di installazione" + +#: _from_rc.cc:9 +msgid "&I've read the warning and want to go on with the installation" +msgstr "&Ho letto l'avviso e voglio procedere con l'installazione" + +#: _from_rc.cc:10 +msgid "Version" +msgstr "Versione" + +#: _from_rc.cc:21 +msgid "Disk partitioning" +msgstr "Partizionamento del disco" + +#: _from_rc.cc:22 +msgid "Current partitions status" +msgstr "Stato attuale delle partizioni" + +#: _from_rc.cc:25 +msgid "Check and edit disk partitions" +msgstr "Controlla e modifica le partizioni" + +#: _from_rc.cc:26 +msgid "Ed&it disk partitions" +msgstr "Modifica le partizioni" + +#: _from_rc.cc:11 +msgid "Disk installation choice" +msgstr "Scelta del disco di installazione" + +#: _from_rc.cc:12 +msgid "Available partitions" +msgstr "Partizioni disponibili" + +#: _from_rc.cc:13 +msgid "Rescan dis&ks" +msgstr "&Ricontrolla i dischi" + + +#: _from_rc.cc:32 +msgid "" +"Please, select the disk partition where you want the system to be " +"installed.\n" +"
WARNING: all current data on the selected partition will be lost." +msgstr "" +"Scegli la partizione del disco in cui vuoi installare il sistema.\n" +"
ATTENZIONE: tutti i dati attualmente presenti nella partizione scelta saranno persi." + +#: _from_rc.cc:33 +msgid "What filesystem do you want?" +msgstr "Quale filesystem desideri?" + +#: _from_rc.cc:34 +msgid "Filesystem type:" +msgstr "Tipo di filesystem:" + +#: _from_rc.cc:35 +msgid "Partition will be formatted with the selected filesystem." +msgstr "La partizione sarà formattata con il filesystem selezionato." + + +#: _from_rc.cc:38 +msgid "Choose system partition and filesystem type" +msgstr "Scelta della partizione di sistema e del filesystem" + +#: _from_rc.cc:40 +msgid "Configure the boot manager" +msgstr "Configura il boot manager" + +#: _from_rc.cc:41 +msgid "Bootloader configuration" +msgstr "Configurazione del boot loader" + +#: _from_rc.cc:42 +msgid "Install bootloader on:" +msgstr "Installa il boot loader su:" + +#: _from_rc.cc:44 +msgid "Please select the boot menu options:" +msgstr "Seleziona le opzioni del menù di avvio:" + +#: _from_rc.cc:45 +msgid "Please select where you want to install the boot manager." +msgstr "Seleziona dove vuoi installare il boot manager." + +#: _from_rc.cc:46 +msgid "" +"Below is a list of other operating systems found on this computer, you may " +"configure them to appear as a choice when the computer starts." +msgstr "" +"La lista di seguito riporta altri sistemi operativi trovati su questo computer, " +"puoi configurarli in modo che compaiano come scelta all'avvio del computer." + +#: installer.kmdr:848 +msgid "" +"In order to install openmamba you need on your fixed disk(s):
- a " +"Linux type partition with at least $systemrequired MBytes
- a SWAP type partition " +"with at least $swaprequired MBytes" +msgstr "" +"Per installare openmamba devi avere su uno dei tuoi dischi:
" +"- una partizione di tipo linux di almeno $systemrequired MBytes
" +"- una partizione di tipo SWAP di almeno $swaprequired MBytes" + +#: installer.kmdr:901 +msgid "You need to create a Linux type partition<br>" +msgstr "Devi creare una partizione di tipo Linux<br>" + +msgid "Please, modify the partitions or press Next to proceed with the installation." +msgstr "Modifica le partizioni o premi Successivo per procedere." + +msgid "GOOD, you have both a Linux and SWAP partition." +msgstr "BENE, hai almeno una partizione Linux e una per lo SWAP." + +msgid "Please, press the button above and modify the partitions as needed before proceeding." +msgstr "Premi il bottone per modificare le partizione come necessario prima di procedere." + +msgid "OK for swap" +msgstr "OK per lo swap" + +msgid "OK for system" +msgstr "OK per il sistema" + +#: installer.kmdr:902 +msgid "You need to create a SWAP type partition<br>" +msgstr "Devi creare una partizione di tipo SWAP<br>" + +#: installer.kmdr:906 +msgid "Press OK to launch the disk partitioning tool." +msgstr "Premi OK per avviare il programma di partizionamento del disco." + +#: installer.kmdr:939 +msgid "Hint: in order to install openmamba you should create:" +msgstr "Suggerimento: per installare openmamba dovresti creare:" + +#: installer.kmdr:941 +msgid "a Linux partition (type ext3 or reiserfs)" +msgstr "una partizione Linux (tipo ext3 o reiserfs)" + +#: installer.kmdr:942 +msgid "a Linux SWAP partition" +msgstr "una partizione Linux SWAP" + +#: installer.kmdr:1170 +msgid "No installable partitions found" +msgstr "Nessuna partizione installabile trovata" + +#: installer.kmdr:1170 +msgid "" +"No installable partitions found, do you want to launch the partitioning tool?" +msgstr "" +"Non è stata trovata alcuna partizione installabile, vuoi lanciare il tool di partizionamento?" + +msgid "Hint for partitioning" +msgstr "Suggerimento per il partizionamento" + +#: installer.kmdr:1174 installer.kmdr:1932 +msgid "Installation aborted." +msgstr "Installazione interrotta." + +#: _from_rc.cc:15 +msgid "Install system on:" +msgstr "Installa il sistema su:" + +#: _from_rc.cc:17 +msgid "Where do you want to install openmamba?" +msgstr "Dove vuoi installare openmamba?" + +#: _from_rc.cc:20 +msgid "set &bootable" +msgstr "&avviabile" + +#: _from_rc.cc:20 +msgid "Boot menu options:" +msgstr "Opzioni del menù di avvio:" + +#: _from_rc.cc:21 +msgid "User details" +msgstr "Informazioni sull'utente" + +#: _from_rc.cc:23 +msgid "User:" +msgstr "User:" + +#: _from_rc.cc:26 +msgid "Autologin:" +msgstr "Accesso automatico:" + +#: _from_rc.cc:28 +msgid "Password:" +msgstr "" + +#: _from_rc.cc:29 _from_rc.cc:43 +msgid "Confirm password:" +msgstr "" + +#: _from_rc.cc:30 +msgid "Full name:" +msgstr "Nome completo:" + +#: _from_rc.cc:31 +msgid "About yourself" +msgstr "Informazioni sull'utente" + +#: _from_rc.cc:32 +msgid "" +"An user with administrator privileges will be created.\n" +"Please provide your details here." +msgstr "Verrà creato un utente con i privilegi di amministratore.\n" +"Inserisci le informazioni richieste." + +#: _from_rc.cc:33 _from_rc.cc:35 +msgid "System information" +msgstr "Informazioni sul sistema" + +#: _from_rc.cc:34 +msgid "About the system" +msgstr "Informazioni sul sistema" + +#: _from_rc.cc:36 +msgid "localdomain" +msgstr "" + +#: _from_rc.cc:37 +msgid "Hostname:" +msgstr "Nome macchina:" + +#: _from_rc.cc:38 +msgid "Domain:" +msgstr "Dominio:" + +#: _from_rc.cc:39 +msgid "openmamba" +msgstr "" + +#: _from_rc.cc:40 +msgid "" +"Please choose a name for you system (Hostname) and\n" +"assign a domain name for networking." +msgstr "" +"Scegli un nome per il tuo sistema e\n" +"assegna un nome di dominio per la rete." + +#: _from_rc.cc:41 +msgid "Superuser password" +msgstr "Password del superutente (root)" + +#: _from_rc.cc:42 +msgid "Root password:" +msgstr "Password di root:" + +#: _from_rc.cc:44 +msgid "Installation progress" +msgstr "Avanzamento dell'installazione" + +#: _from_rc.cc:45 +msgid "Installation in progress..." +msgstr "Installazione in corso..." + +#: _from_rc.cc:47 +msgid "Launching installation script..." +msgstr "Avvio dell'installazione...." + +#: _from_rc.cc:48 +msgid "End of installation" +msgstr "Fine dell'installazione" + +#: _from_rc.cc:49 +msgid "Installation completed." +msgstr "Installazione completata." + +#: _from_rc.cc:50 +msgid "Re&boot" +msgstr "&Riavvia" + +#: installer.kmdr:908 +msgid "System partition" +msgstr "Partizione di sistema" + +#: installer.kmdr:1289 +msgid "OK" +msgstr "OK" + +#: installer.kmdr:1289 +msgid "Selected partition" +msgstr "La partizione scelta" + +#: installer.kmdr:1289 +msgid "Warning" +msgstr "Avviso" + +#: md5progress.sh:33 +msgid "Error: this program must be launched by mamba installer; aborting." +msgstr "Errore: questo programma deve essere eseguito da mamba installer; uscita." + +#: installer.sh:21 +msgid "Installation aborted; press Next to see the error log." +msgstr "Installazione interrotta; premi Successivo per visualizzare gli errori." +#: installer.sh:22 +msgid "Installation aborted :-(" +msgstr "Installaazione interrotta :-(" +#: installer.sh:30 +msgid "Installation completed; press Next to continue." +msgstr "Installazione completata; premi Successivo per continuare." +#: installer.sh:69 +msgid "" +"Copying: '$CP_LINE\n" +"${MOUNT_SPACE}bytes copied\n" +"Installation time: $TIME_ELAPSED minutes" +msgstr "" +"Copia di: '$CP_LINE\n" +"${MOUNT_SPACE}bytes copiati\n" +"Tempo di installazione: $TIME_ELAPSED minuti" +#: installer.sh:105 +msgid "Warning: this script will perform an automatic installation erasing all the" +msgstr "Attenzione: questo script effettuerà un'installazione automatica cancellando" +#: installer.sh:106 +msgid " contents of device $INSTALL_DEVICE; use $0 -y to actually start the" +msgstr " il contenuto del dispositivo $INSTALL_DEVICE; usa $0 -y per avviare" +#: installer.sh:107 +msgid " operation." +msgstr " l'operazione." +#: installer.sh:113 +msgid "" +"openmamba installation script - version $VERSION\n" +"Copyright (c) 2007-2008 by Silvan Calarco \n" +"" +msgstr "" +"script di installazione di openmamba - versione $VERSION\n" +"Copyright (c) 2007-2008 by Silvan Calarco \n" +"" +#: installer.sh:121 +msgid "Error: cannot read input file $INPUT_FILE; aborting." +msgstr "Errore: non posso leggere il file $INPUT_FILE; uscita." +#: installer.sh:134 +msgid "Error: installation device is not defined in $INPUT_FILE; aborting." +msgstr "Errore: il dispositivo di installazione non è definito in $INPUT_FILE; uscita." +#: installer.sh:141 +msgid "Error: missing install device $INSTALL_DEVICE; aborting." +msgstr "Errore: dispositivo di installazione $INSTALL_DEVICE mancante; uscita." +#: installer.sh:145 +msgid "openmamba installation started" +msgstr "Installazione di openmamba avviata" +#: installer.sh:148 +msgid "Info: device already mounted; unmounting." +msgstr "Info: dispositivo già montato; lo smonto." +#: installer.sh:152 +msgid "Error: could not unmount $INSTALL_DEVICE; aborting." +msgstr "Errore: non posso smontare $INSTALL_DEVICE; uscita." +#: installer.sh:158 +msgid "Info: device already mounted on $MOUNTPOINT/dev; unmounting." +msgstr "Info: dispositivo già montato su $MOUNTPOINT/dev; lo smonto." +#: installer.sh:160 +msgid "Error: could not unmount $MOUNTPOINT/dev; aborting." +msgstr "Errore: non posso smontare $MOUNTPOINT/dev; aborting." +#: installer.sh:166 +msgid "Info: device already mounted on $MOUNTPOINT; unmounting." +msgstr "Info: dispositivo già montato su $MOUNTPOINT; lo smonto." +#: installer.sh:168 +msgid "Error: could not unmount $MOUNTPOINT; aborting." +msgstr "Errore: non posso smontare $MOUNTPOINT; uscita." +#: installer.sh:173 +msgid "Error: could not create mount point $MOUNTPOINT; aborting." +msgstr "Errore: non posso creare il punto di mount $MOUNTPOINT; uscita." +#: installer.sh:179 +msgid "Error: missing initialization tool $FORMAT_CMD; aborting." +msgstr "Errore: programma di inizializzazione $FORMAT_CMD mancante; uscita." +#: installer.sh:183 +msgid "Formatting device $INSTALL_DEVICE..." +msgstr "Formattazione del dispositivo $INSTALL_DEVICE..." +#: installer.sh:184 +msgid "Formatting device $INSTALL_DEVICE" +msgstr "Formattazione del dispositivo $INSTALL_DEVICE" +#: installer.sh:191 +msgid "Mounting $INSTALL_FSTYPE filesystem..." +msgstr "Montaggio di un filesystem $INSTALL_FSTYPE" +#: installer.sh:192 +msgid "Mounting $INSTALL_FSTYPE filesystem" +msgstr "Montaggio di un filesystem $INSTALL_FSTYPE" +#: installer.sh:194 +msgid "Error: could not mount filesystem; aborting." +msgstr "Errore: non posso smontare il filesystem; uscita." +#: installer.sh:198 +msgid "Copying files..." +msgstr "Copia dei files..." +#: installer.sh:203 +msgid "Copying files (/$d)..." +msgstr "Copia dei files (/$d)..." +#: installer.sh:207 +msgid "Error: cannot copy $canonical_dir to $MOUNTPOINT; aborting." +msgstr "Errore: non posso copiare $canonical_dir su $MOUNTPOINT; uscita." +#: installer.sh:219 +msgid "Error: cannot run MAKEDEV; aborting." +msgstr "Errore: non posso eseguire MAKEDEV; uscita." +#: installer.sh:225 +msgid "Binding system dirs to new mountpoint..." +msgstr "Lego i percorsi di sistema al nuovo punto di mount..." +#: installer.sh:226 +msgid "Binding /dev to new mountpoint" +msgstr "Collego /dev al nuovo punto di mount" +#: installer.sh:228 +msgid "Error: could not bind /dev to new mountpoint; aborting." +msgstr "Errore: non posso legare /dev al nuovo punto di mount; uscita." +#: installer.sh:232 +msgid "Error: could not bind /proc to new mountpoint; aborting." +msgstr "Errore: non posso legare /proc al nuovo punto di mount; uscita." +#: installer.sh:250 +msgid "Creating initramfs..." +msgstr "Creazione dell'initramfs..." +#: installer.sh:251 +msgid "Creating initramfs" +msgstr "Creazione dell'initramfs" +#: installer.sh:255 +msgid "Error: initramfs creation failed; aborting." +msgstr "Errore: creazione dell'initramfs fallita; uscita." +#: installer.sh:260 +msgid "Installing bootloader on $INSTALL_BOOTLOADER_DEVICE..." +msgstr "Installazione del bootloader su $INSTALL_BOOTLOADER_DEVICE..." +#: installer.sh:261 +msgid "Installing grub bootloader on $INSTALL_BOOTLOADER_DEVICE" +msgstr "Installazione del bootloader grub su $INSTALL_BOOTLOADER_DEVICE" +#: installer.sh:268 +msgid "Warning: there was an error setting bootloader partition as bootable." +msgstr "Attenzione: c'è stato un errore impostando come avviabile la partizione del bootloader" +#: installer.sh:287 +msgid "Info: skipping bootloader installation" +msgstr "Info: salto l'installazione del bootloader" +#: installer.sh:295 +msgid "Configuring system startup files..." +msgstr "Configurazione dei file di avvio del sistema..." +#: installer.sh:296 +msgid "Configuring system startup files" +msgstr "Configurazione dei file di avvio del sistema" +#: installer.sh:307 +msgid "Configuring users and host..." +msgstr "Configure degli utenti e della macchina..." +#: installer.sh:308 +msgid "Configuring users and host" +msgstr "Configurazione degli utenti e della macchina" +#: installer.sh:315 +msgid "Installing packages..." +msgstr "Installazione dei pacchetti..." +#: installer.sh:316 +msgid "Installing packages" +msgstr "Installazione dei pacchetti" +#: installer.sh:330 +msgid "Launching chrooted apt-get..." +msgstr "Esecuzione di apt-get con chroot..." +#: installer.sh:344 +msgid "Removing/cleaning unnecessary files and packages..." +msgstr "Rimozione/pulizia di file e pacchetti non necessari..." +#: installer.sh:345 +msgid "Removing/cleaning unnecessary files and packages" +msgstr "Rimozione/pulizia di file e pacchetti non necessari" +#: installer.sh:362 +msgid "Installation done. You can now reboot to start the freshly installed system." +msgstr "Installazione completata. E' ora possibile riavviare per eseguire il sistema appena installato." diff --git a/bootrecover/po/it.po~ b/bootrecover/po/it.po~ new file mode 100644 index 0000000..18750ba --- /dev/null +++ b/bootrecover/po/it.po~ @@ -0,0 +1,650 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# Silvan Calarco , 2007 +# +#: _from_rc.cc:3 _from_rc.cc:4 _from_rc.cc:5 _from_rc.cc:16 _from_rc.cc:22 +#: _from_rc.cc:24 _from_rc.cc:25 _from_rc.cc:27 _from_rc.cc:46 +#, fuzzy +msgid "" +msgstr "" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Mime-Version: 1.0" +"Last-Translator: Silvan Calarco \n" +"PO-Revision-Date: 2007-09-15 13:13+0200\n" +"Project-Id-Version: installer\n" +"Language-Team: \n" +"X-Generator: KBabel 1.11.4\n" +"MIME-Version: 1.0\n" + +#: _from_rc.cc:1 +msgid "openmamba boot loader recovery wizard" +msgstr "gestione del boot loader di openmamba " + +#: _from_rc.cc:2 +msgid "Welcome!" +msgstr "Benvenuto!" + +#: _from_rc.cc:8 +msgid "Installation wizard for" +msgstr "Programma di installazione di" + +#: _from_rc.cc:9 +msgid "GNU/Linux distribution" +msgstr "distribuzione GNU/Linux" + +#: _from_rc.cc:10 installer.kmdr:200 +msgid "version" +msgstr "versione" + +#: _from_rc.cc:11 +msgid "www.openmamba.org" +msgstr "" + +#: _from_rc.cc:12 +msgid "" +"Copyright (c) 2008 by Silvan Calarco\n" +"Released under the terms of the GNU GPL v3 license" +msgstr "Copyright (c) 2008 by Silvan Calarco\n" +"Rilasciato secondo i termini della licenza GNU GPL v3" + +#: _from_rc.cc:9 +msgid "Distribuzione GNU/Linux" +msgstr "" + +#: _from_rc.cc:10 +msgid "Boot loader recovery tool for" +msgstr "Gestione del boot loader per" + +#: _from_rc.cc:11 +msgid "This program will recover the openmamba boot loader." +msgstr "Questo programma riconfigurerà il boot laoder di openmamba" + +#: _from_rc.cc:12 +msgid "" +"This operation is normally needed after the very first sector of the disk " +"(Master Boot Record) has been rewritten by the installation of another " +"operating system. \n" +"\n" +"Usually you will need to use this program only after the installation of a " +"release of Microsoft Windows to restore the openmamba boot menu.\n" +"\n" +"This tool is also useful before the installation of a third party boot " +"manager in the Master Boot Record, by moving the openmamba boot loader " +"installation from the MBR to its own partition." +msgstr "" +"Questa operazione è normalmente necessaria dopo che il primo settore del disco " +"di avvio (Master Boot Record) è stato sovrascritto dall'installazione di un " +"altro sistema operativo. \n" +"\n" +"Normalmente è necessario usare questo programma solo dopo l'installazione di " +"una versione di Microsoft Windows per ripristinare il menù di avvio di openmamba.\n" +"\n" +"Questo programma può anche servire per l'installazione di un altro boot loader " +"nel Master Boot Record, spostando il boot loader di openmamba dall'MBR alla sua " +"partizione di sistema." + +#: _from_rc.cc:13 +msgid "System partition choice" +msgstr "Scelta della partizione di sistema" + +#: _from_rc.cc:14 +msgid "Data integrity check" +msgstr "Controllo di integrità dei dati" + +#: _from_rc.cc:16 +msgid "S&kip check" +msgstr "Salta la verifica" + +#: _from_rc.cc:17 +msgid "" +"Please wait some time while the CD/DVD-ROM is checked for data integrity. \n" +"Press the skip button only if you have previously checked the disc on this " +"computer." +msgstr "" +"Per favore attendi mentre avviene controllo di integrità del CD/DVD-ROM. \n" +"Premi il bottone salta solo se hai precedentemente verificato il disco su " +"questo computer." + +#: _from_rc.cc:18 +msgid "License" +msgstr "Licenza" + +#: _from_rc.cc:19 +msgid "Full license text" +msgstr "Testo della licenza" + +#: _from_rc.cc:20 +msgid "&I've read and accept the licensing terms" +msgstr "Ho letto ed accetto i termini della licenza" + +#: _from_rc.cc:27 +msgid "I&gnore SWAP partition check (not recommended)" +msgstr "Ignora il controllo della partizione di SWAP (non raccomandato)" + +msgid "" +"The openmamba GNU/Linux distribution is released under the terms of the GNU " +"GPL v3 license." +msgstr "" +"La distribuzione GNU/Linux openmamba è rilasciata secondo i termini della " +"licenza GNU GPL v3." + +#: installer.kmdr:464 +msgid "" +"Warning: check skipped; this might cause unpredicted installation errors." +msgstr "" +"Attenzione: controllo saltato; potrebbero verificarsi degli errori nell'installazione." + +#: _from_rc.cc:22 +msgid "Please read carefully and accept the license before proceeding." +msgstr "Per favore leggi attentamente ed accetta la licenza prima di proseguire." + +#: _from_rc.cc:6 +msgid "Installation wizard" +msgstr "programma di installazione" + +#: _from_rc.cc:9 +msgid "&I've read the warning and want to go on with the installation" +msgstr "&Ho letto l'avviso e voglio procedere con l'installazione" + +#: _from_rc.cc:10 +msgid "Version" +msgstr "Versione" + +#: _from_rc.cc:21 +msgid "Disk partitioning" +msgstr "Partizionamento del disco" + +#: _from_rc.cc:22 +msgid "Current partitions status" +msgstr "Stato attuale delle partizioni" + +#: _from_rc.cc:25 +msgid "Check and edit disk partitions" +msgstr "Controlla e modifica le partizioni" + +#: _from_rc.cc:26 +msgid "Ed&it disk partitions" +msgstr "Modifica le partizioni" + +#: _from_rc.cc:11 +msgid "Disk installation choice" +msgstr "Scelta del disco di installazione" + +#: _from_rc.cc:12 +msgid "Available partitions" +msgstr "Partizioni disponibili" + +#: _from_rc.cc:13 +msgid "Rescan dis&ks" +msgstr "&Ricontrolla i dischi" + + +#: _from_rc.cc:32 +msgid "" +"Please, select the disk partition where you want the system to be " +"installed.\n" +"
WARNING: all current data on the selected partition will be lost." +msgstr "" +"Scegli la partizione del disco in cui vuoi installare il sistema.\n" +"
ATTENZIONE: tutti i dati attualmente presenti nella partizione scelta saranno persi." + +#: _from_rc.cc:33 +msgid "What filesystem do you want?" +msgstr "Quale filesystem desideri?" + +#: _from_rc.cc:34 +msgid "Filesystem type:" +msgstr "Tipo di filesystem:" + +#: _from_rc.cc:35 +msgid "Partition will be formatted with the selected filesystem." +msgstr "La partizione sarà formattata con il filesystem selezionato." + + +#: _from_rc.cc:38 +msgid "Choose system partition and filesystem type" +msgstr "Scelta della partizione di sistema e del filesystem" + +#: _from_rc.cc:39 +msgid "Computer startup configuration" +msgstr "Configurazione di avvio del computer" + +#: _from_rc.cc:40 +msgid "Configure the boot manager" +msgstr "Configura il boot manager" + +#: _from_rc.cc:41 +msgid "Bootloader configuration" +msgstr "Configurazione del boot loader" + +#: _from_rc.cc:42 +msgid "Install bootloader on:" +msgstr "Installa il boot loader su:" + +#: _from_rc.cc:44 +msgid "Please select the boot menu options:" +msgstr "Seleziona le opzioni del menù di avvio:" + +#: _from_rc.cc:45 +msgid "Please select where you want to install the boot manager." +msgstr "Seleziona dove vuoi installare il boot manager." + +#: _from_rc.cc:46 +msgid "" +"Below is a list of other operating systems found on this computer, you may " +"configure them to appear as a choice when the computer starts." +msgstr "" +"La lista di seguito riporta altri sistemi operativi trovati su questo computer, " +"puoi configurarli in modo che compaiano come scelta all'avvio del computer." + +#: installer.kmdr:848 +msgid "" +"In order to install openmamba you need on your fixed disk(s):
- a " +"Linux type partition with at least $systemrequired MBytes
- a SWAP type partition " +"with at least $swaprequired MBytes" +msgstr "" +"Per installare openmamba devi avere su uno dei tuoi dischi:
" +"- una partizione di tipo linux di almeno $systemrequired MBytes
" +"- una partizione di tipo SWAP di almeno $swaprequired MBytes" + +#: installer.kmdr:901 +msgid "You need to create a Linux type partition<br>" +msgstr "Devi creare una partizione di tipo Linux<br>" + +msgid "Please, modify the partitions or press Next to proceed with the installation." +msgstr "Modifica le partizioni o premi Successivo per procedere." + +msgid "GOOD, you have both a Linux and SWAP partition." +msgstr "BENE, hai almeno una partizione Linux e una per lo SWAP." + +msgid "Please, press the button above and modify the partitions as needed before proceeding." +msgstr "Premi il bottone per modificare le partizione come necessario prima di procedere." + +msgid "OK for swap" +msgstr "OK per lo swap" + +msgid "OK for system" +msgstr "OK per il sistema" + +#: installer.kmdr:902 +msgid "You need to create a SWAP type partition<br>" +msgstr "Devi creare una partizione di tipo SWAP<br>" + +#: installer.kmdr:906 +msgid "Press OK to launch the disk partitioning tool." +msgstr "Premi OK per avviare il programma di partizionamento del disco." + +#: installer.kmdr:939 +msgid "Hint: in order to install openmamba you should create:" +msgstr "Suggerimento: per installare openmamba dovresti creare:" + +#: installer.kmdr:941 +msgid "a Linux partition (type ext3 or reiserfs)" +msgstr "una partizione Linux (tipo ext3 o reiserfs)" + +#: installer.kmdr:942 +msgid "a Linux SWAP partition" +msgstr "una partizione Linux SWAP" + +#: installer.kmdr:1170 +msgid "No installable partitions found" +msgstr "Nessuna partizione installabile trovata" + +#: installer.kmdr:1170 +msgid "" +"No installable partitions found, do you want to launch the partitioning tool?" +msgstr "" +"Non è stata trovata alcuna partizione installabile, vuoi lanciare il tool di partizionamento?" + +msgid "Hint for partitioning" +msgstr "Suggerimento per il partizionamento" + +#: installer.kmdr:1174 installer.kmdr:1932 +msgid "Installation aborted." +msgstr "Installazione interrotta." + +#: _from_rc.cc:15 +msgid "Install system on:" +msgstr "Installa il sistema su:" + +#: _from_rc.cc:17 +msgid "Where do you want to install openmamba?" +msgstr "Dove vuoi installare openmamba?" + +#: _from_rc.cc:20 +msgid "set &bootable" +msgstr "&avviabile" + +#: _from_rc.cc:20 +msgid "Boot menu options:" +msgstr "Opzioni del menù di avvio:" + +#: _from_rc.cc:21 +msgid "User details" +msgstr "Informazioni sull'utente" + +#: _from_rc.cc:23 +msgid "User:" +msgstr "User:" + +#: _from_rc.cc:26 +msgid "Autologin:" +msgstr "Accesso automatico:" + +#: _from_rc.cc:28 +msgid "Password:" +msgstr "" + +#: _from_rc.cc:29 _from_rc.cc:43 +msgid "Confirm password:" +msgstr "" + +#: _from_rc.cc:30 +msgid "Full name:" +msgstr "Nome completo:" + +#: _from_rc.cc:31 +msgid "About yourself" +msgstr "Informazioni sull'utente" + +#: _from_rc.cc:32 +msgid "" +"An user with administrator privileges will be created.\n" +"Please provide your details here." +msgstr "Verrà creato un utente con i privilegi di amministratore.\n" +"Inserisci le informazioni richieste." + +#: _from_rc.cc:33 _from_rc.cc:35 +msgid "System information" +msgstr "Informazioni sul sistema" + +#: _from_rc.cc:34 +msgid "About the system" +msgstr "Informazioni sul sistema" + +#: _from_rc.cc:36 +msgid "localdomain" +msgstr "" + +#: _from_rc.cc:37 +msgid "Hostname:" +msgstr "Nome macchina:" + +#: _from_rc.cc:38 +msgid "Domain:" +msgstr "Dominio:" + +#: _from_rc.cc:39 +msgid "openmamba" +msgstr "" + +#: _from_rc.cc:40 +msgid "" +"Please choose a name for you system (Hostname) and\n" +"assign a domain name for networking." +msgstr "" +"Scegli un nome per il tuo sistema e\n" +"assegna un nome di dominio per la rete." + +#: _from_rc.cc:41 +msgid "Superuser password" +msgstr "Password del superutente (root)" + +#: _from_rc.cc:42 +msgid "Root password:" +msgstr "Password di root:" + +#: _from_rc.cc:44 +msgid "Installation progress" +msgstr "Avanzamento dell'installazione" + +#: _from_rc.cc:45 +msgid "Installation in progress..." +msgstr "Installazione in corso..." + +#: _from_rc.cc:47 +msgid "Launching installation script..." +msgstr "Avvio dell'installazione...." + +#: _from_rc.cc:48 +msgid "End of installation" +msgstr "Fine dell'installazione" + +#: _from_rc.cc:49 +msgid "Installation completed." +msgstr "Installazione completata." + +#: _from_rc.cc:50 +msgid "Re&boot" +msgstr "&Riavvia" + +#: installer.kmdr:908 +msgid "System partition" +msgstr "Partizione di sistema" + +#: _from_rc.cc:26 +msgid "removab&le devices" +msgstr "supporti removibili" + +#: installer.kmdr:1289 +msgid "Abort" +msgstr "Annulla" + +#: installer.kmdr:1289 +msgid "OK" +msgstr "OK" + +#: installer.kmdr:1289 +msgid "Selected partition" +msgstr "La partizione scelta" + +#: installer.kmdr:1289 +msgid "Warning" +msgstr "Avviso" + +#: installer.kmdr:1289 +msgid "will be formatted; all data will be lost. OK to format?" +msgstr "sarà formattata; tutti i dati saranno persi. Procedo con la formattazione?" + +#: _from_rc.cc:39 +msgid "" +"Please wait while openmamba installation is performed.\n" +"Installation time mostly depends on the CD-ROM access speed and may last up " +"to 30 minutes." +msgstr "" +"Per favore attendi mentre viene effettuata l'installazione.\n" +"Il tempo richiesto dipende soprattutto della velocità di accesso al supporto CD-ROM e " +"può durare fino a 30 minuti." + +#: md5progress.sh:27 +msgid "" +"openmamba md5 media check - version $VERSION\n" +"Copyright (c) 2007-2008 by Silvan Calarco \n" +"" +msgstr "" +"openmamba, controllo md5 di un media - versione $VERSION\n" +"Copyright (c) 2007-2008 by Silvan Calarco \n" + +#: md5progress.sh:33 +msgid "Error: this program must be launched by mamba installer; aborting." +msgstr "Errore: questo programma deve essere eseguito da mamba installer; uscita." + +#: md5progress.sh:46 +msgid "CD/DVD-ROM support check OK. Press next to proceed with installation." +msgstr "Supporto CD/DVD-ROM verificato con successo. Premi Successivo per continuare." + +#: md5progress.sh:48 +msgid "ERROR: CD/DVD-ROM support has errors; please try with another media." +msgstr "ERRORE: il supporto CD/DVD-ROM ha degli errori; prova con un altro media." + +#: md5progress.sh:51 +msgid "ERROR: this program must be run from live CD/DVD-ROM." +msgstr "ERRORE: questo programma deve essere eseguito da live CD/DVD-ROM." + +#: installer.sh:21 +msgid "Installation aborted; press Next to see the error log." +msgstr "Installazione interrotta; premi Successivo per visualizzare gli errori." +#: installer.sh:22 +msgid "Installation aborted :-(" +msgstr "Installaazione interrotta :-(" +#: installer.sh:30 +msgid "Installation completed; press Next to continue." +msgstr "Installazione completata; premi Successivo per continuare." +#: installer.sh:69 +msgid "" +"Copying: '$CP_LINE\n" +"${MOUNT_SPACE}bytes copied\n" +"Installation time: $TIME_ELAPSED minutes" +msgstr "" +"Copia di: '$CP_LINE\n" +"${MOUNT_SPACE}bytes copiati\n" +"Tempo di installazione: $TIME_ELAPSED minuti" +#: installer.sh:105 +msgid "Warning: this script will perform an automatic installation erasing all the" +msgstr "Attenzione: questo script effettuerà un'installazione automatica cancellando" +#: installer.sh:106 +msgid " contents of device $INSTALL_DEVICE; use $0 -y to actually start the" +msgstr " il contenuto del dispositivo $INSTALL_DEVICE; usa $0 -y per avviare" +#: installer.sh:107 +msgid " operation." +msgstr " l'operazione." +#: installer.sh:113 +msgid "" +"openmamba installation script - version $VERSION\n" +"Copyright (c) 2007-2008 by Silvan Calarco \n" +"" +msgstr "" +"script di installazione di openmamba - versione $VERSION\n" +"Copyright (c) 2007-2008 by Silvan Calarco \n" +"" +#: installer.sh:118 +msgid "Starting installation..." +msgstr "Avvio dell'installazione..." +#: installer.sh:121 +msgid "Error: cannot read input file $INPUT_FILE; aborting." +msgstr "Errore: non posso leggere il file $INPUT_FILE; uscita." +#: installer.sh:134 +msgid "Error: installation device is not defined in $INPUT_FILE; aborting." +msgstr "Errore: il dispositivo di installazione non è definito in $INPUT_FILE; uscita." +#: installer.sh:141 +msgid "Error: missing install device $INSTALL_DEVICE; aborting." +msgstr "Errore: dispositivo di installazione $INSTALL_DEVICE mancante; uscita." +#: installer.sh:145 +msgid "openmamba installation started" +msgstr "Installazione di openmamba avviata" +#: installer.sh:148 +msgid "Info: device already mounted; unmounting." +msgstr "Info: dispositivo già montato; lo smonto." +#: installer.sh:152 +msgid "Error: could not unmount $INSTALL_DEVICE; aborting." +msgstr "Errore: non posso smontare $INSTALL_DEVICE; uscita." +#: installer.sh:158 +msgid "Info: device already mounted on $MOUNTPOINT/dev; unmounting." +msgstr "Info: dispositivo già montato su $MOUNTPOINT/dev; lo smonto." +#: installer.sh:160 +msgid "Error: could not unmount $MOUNTPOINT/dev; aborting." +msgstr "Errore: non posso smontare $MOUNTPOINT/dev; aborting." +#: installer.sh:166 +msgid "Info: device already mounted on $MOUNTPOINT; unmounting." +msgstr "Info: dispositivo già montato su $MOUNTPOINT; lo smonto." +#: installer.sh:168 +msgid "Error: could not unmount $MOUNTPOINT; aborting." +msgstr "Errore: non posso smontare $MOUNTPOINT; uscita." +#: installer.sh:173 +msgid "Error: could not create mount point $MOUNTPOINT; aborting." +msgstr "Errore: non posso creare il punto di mount $MOUNTPOINT; uscita." +#: installer.sh:179 +msgid "Error: missing initialization tool $FORMAT_CMD; aborting." +msgstr "Errore: programma di inizializzazione $FORMAT_CMD mancante; uscita." +#: installer.sh:183 +msgid "Formatting device $INSTALL_DEVICE..." +msgstr "Formattazione del dispositivo $INSTALL_DEVICE..." +#: installer.sh:184 +msgid "Formatting device $INSTALL_DEVICE" +msgstr "Formattazione del dispositivo $INSTALL_DEVICE" +#: installer.sh:191 +msgid "Mounting $INSTALL_FSTYPE filesystem..." +msgstr "Montaggio di un filesystem $INSTALL_FSTYPE" +#: installer.sh:192 +msgid "Mounting $INSTALL_FSTYPE filesystem" +msgstr "Montaggio di un filesystem $INSTALL_FSTYPE" +#: installer.sh:194 +msgid "Error: could not mount filesystem; aborting." +msgstr "Errore: non posso smontare il filesystem; uscita." +#: installer.sh:198 +msgid "Copying files..." +msgstr "Copia dei files..." +#: installer.sh:203 +msgid "Copying files (/$d)..." +msgstr "Copia dei files (/$d)..." +#: installer.sh:207 +msgid "Error: cannot copy $canonical_dir to $MOUNTPOINT; aborting." +msgstr "Errore: non posso copiare $canonical_dir su $MOUNTPOINT; uscita." +#: installer.sh:219 +msgid "Error: cannot run MAKEDEV; aborting." +msgstr "Errore: non posso eseguire MAKEDEV; uscita." +#: installer.sh:225 +msgid "Binding system dirs to new mountpoint..." +msgstr "Lego i percorsi di sistema al nuovo punto di mount..." +#: installer.sh:226 +msgid "Binding /dev to new mountpoint" +msgstr "Collego /dev al nuovo punto di mount" +#: installer.sh:228 +msgid "Error: could not bind /dev to new mountpoint; aborting." +msgstr "Errore: non posso legare /dev al nuovo punto di mount; uscita." +#: installer.sh:232 +msgid "Error: could not bind /proc to new mountpoint; aborting." +msgstr "Errore: non posso legare /proc al nuovo punto di mount; uscita." +#: installer.sh:250 +msgid "Creating initramfs..." +msgstr "Creazione dell'initramfs..." +#: installer.sh:251 +msgid "Creating initramfs" +msgstr "Creazione dell'initramfs" +#: installer.sh:255 +msgid "Error: initramfs creation failed; aborting." +msgstr "Errore: creazione dell'initramfs fallita; uscita." +#: installer.sh:260 +msgid "Installing bootloader on $INSTALL_BOOTLOADER_DEVICE..." +msgstr "Installazione del bootloader su $INSTALL_BOOTLOADER_DEVICE..." +#: installer.sh:261 +msgid "Installing grub bootloader on $INSTALL_BOOTLOADER_DEVICE" +msgstr "Installazione del bootloader grub su $INSTALL_BOOTLOADER_DEVICE" +#: installer.sh:268 +msgid "Warning: there was an error setting bootloader partition as bootable." +msgstr "Attenzione: c'è stato un errore impostando come avviabile la partizione del bootloader" +#: installer.sh:287 +msgid "Info: skipping bootloader installation" +msgstr "Info: salto l'installazione del bootloader" +#: installer.sh:295 +msgid "Configuring system startup files..." +msgstr "Configurazione dei file di avvio del sistema..." +#: installer.sh:296 +msgid "Configuring system startup files" +msgstr "Configurazione dei file di avvio del sistema" +#: installer.sh:307 +msgid "Configuring users and host..." +msgstr "Configure degli utenti e della macchina..." +#: installer.sh:308 +msgid "Configuring users and host" +msgstr "Configurazione degli utenti e della macchina" +#: installer.sh:315 +msgid "Installing packages..." +msgstr "Installazione dei pacchetti..." +#: installer.sh:316 +msgid "Installing packages" +msgstr "Installazione dei pacchetti" +#: installer.sh:330 +msgid "Launching chrooted apt-get..." +msgstr "Esecuzione di apt-get con chroot..." +#: installer.sh:344 +msgid "Removing/cleaning unnecessary files and packages..." +msgstr "Rimozione/pulizia di file e pacchetti non necessari..." +#: installer.sh:345 +msgid "Removing/cleaning unnecessary files and packages" +msgstr "Rimozione/pulizia di file e pacchetti non necessari" +#: installer.sh:362 +msgid "Installation done. You can now reboot to start the freshly installed system." +msgstr "Installazione completata. E' ora possibile riavviare per eseguire il sistema appena installato." diff --git a/etc/polkit-1/localauthority.conf.d/60-desktop-policy.conf b/etc/polkit-1/localauthority.conf.d/60-desktop-policy.conf new file mode 100644 index 0000000..a47dcd1 --- /dev/null +++ b/etc/polkit-1/localauthority.conf.d/60-desktop-policy.conf @@ -0,0 +1,10 @@ +# Configuration file for the PolicyKit Local Authority. +# +# DO NOT EDIT THIS FILE, it will be overwritten on update. +# +# See the pklocalauthority(8) man page for more information +# about configuring the Local Authority. +# + +[Configuration] +AdminIdentities=unix-group:sysadmin diff --git a/etc/polkit-1/localauthority/10-vendor.d/60-desktop-policy.pkla b/etc/polkit-1/localauthority/10-vendor.d/60-desktop-policy.pkla new file mode 100644 index 0000000..1ea59bd --- /dev/null +++ b/etc/polkit-1/localauthority/10-vendor.d/60-desktop-policy.pkla @@ -0,0 +1,14 @@ +# Configuration file for the PolicyKit Local Authority. +# +# DO NOT EDIT THIS FILE, it will be overwritten on update. +# +# See the pklocalauthority(8) man page for more information +# about configuring the Local Authority. +# + +[Normal Staff Permissions] +Identity=unix-group:sysadmin +Action=org.freedesktop.packagekit.* +ResultAny=yes +ResultInactive=no +ResultActive=yes diff --git a/gpl-es.html b/gpl-es.html new file mode 100644 index 0000000..1fa3980 --- /dev/null +++ b/gpl-es.html @@ -0,0 +1,298 @@ + + + + + +SPANISH - Non Official Translation - GNU General Public License v3 - GNU Project - Free Software Foundation (FSF) + + + + + +

+ +

+This is an unofficial translation of the GNU General Public License into spanish. It was not published by the Free Software Foundation, and does not legally state the distribution terms for software that uses the GNU GPL—only the original English text of the GNU GPL does that. However, we hope that this translation will help spanish speakers understand the GNU GPL better. +

+ +

+Esta es una traducción no oficial de la Licencia Pública General GNU (GNU GPL) al español. No fue publicada por la Fundación para el Software Libre, y no establece legalmente los términos de distribución para software que utiliza la GNU GPL—sólamente el texto original en inglés de la GNU GPL hace eso. De todas formas, esperamos que esta traducción ayude a los hispanohablantes a comprender mejor la GNU GPL. +

+ + +
+ +

LICENCIA PÚBLICA GENERAL GNU

+

Versión 3, 29 de junio de 2007

+ +

Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>

+

+ Se permite la copia y distribución de copias literales de esta licencia, pero no está permitido modificarla.

+ +

Preámbulo

+ +

La Licencia Pública General GNU (GNU GPL) es una licencia libre, sin derechos para software y otro tipo de trabajos.

+ +

Las licencias para la mayoría del software y otros trabajos prácticos están destinadas a suprimir la libertad de compartir y modificar esos trabajos. Por el contrario, la Licencia Pública General GNU persigue garantizar su libertad para compartir y modificar todas las versiones de un programa--y asegurar que permanecerá como software libre para todos sus usuarios. Nosotros, La Fundación de Software Libre, usamos la Licencia Pública General GNU para la mayoría de nuestro software; y también se aplica a cualquier trabajo realizado de la misma forma por sus autores. Usted también puede aplicarla a sus programas.

+ +

Cuando hablamos de software libre, nos referimos a libertad, no a precio. Nuestras Licencias Públicas Generales están destinadas a garantizar la libertad de distribuir copias de software libre (y cobrar por ello si quiere), a recibir el código fuente o poder conseguirlo si así lo desea, a modificar el software o usar parte del mismo en nuevos programas libres, y a saber que puede hacer estas cosas.

+ +

Para proteger sus derechos, necesitamos evitar que otros le nieguen esos derechos o le pidan renunciar a ellos. Por lo tanto, usted tiene ciertas responsabilidades cuando distribuye copias del software, o si lo modifica: responsabilidades que persiguen respetar la libertad de otros.

+ +

Por ejemplo, si distribuye copias de tales programas, gratuitamente o no, debe transmitir a los destinatarios los mismos derechos que usted recibió. Debe asegurarse que ellos también reciban o puedan conseguir el código fuente. Y debe mostrarles estos términos y condiciones para que conozcan sus derechos.

+ +

Los desarrolladores que usen la GPL GNU protegen sus derechos de dos formas: (1) imponen derechos al software, y (2) le ofrecen esta Licencia para que legalmente lo copie, distribuya y/o modifique.

+ +

Para proteger a desarrolladores y autores, la GPL expone claramente que no existe garantía alguna para este software libre. Para beneficio de ambos, usuarios y autores, la GPL establece que las versiones modificadas deberán estar identificadas como tales, para que cualquier problema no sea atribuido por error a los autores de versiones anteriores.

+ +

Algunos dispositivos están diseñados para negar al usuario la instalación o la ejecución de versiones modificadas del software que usan internamente, aunque el fabricante sí pueda hacerlo. Esto es completamente incompatible con el objetivo de proteger la libertad de los usuarios para modificar el software. Este tipo de abuso sistemático ocurre con productos de uso personal, que es precisamente donde es menos aceptable. Por tanto, hemos diseñado esta versión de la GPL para prohibir estas prácticas en esos productos. Si apareciesen problemas similares en otros ámbitos, estaremos preparados para extender estas prestaciones a las próximas versiones de la GPL, tanto como sea necesario para proteger la libertad de los usuarios.

+ +

Por último, todo programa está constantemente amenazado por las patentes de software. Los estados no deberían permitir que las patentes restrinjan el desarrollo y el uso de software en ordenadores de uso general; pero en aquellos que lo hagan, esperamos evitar el especial peligro que suponen las patentes, que aplicadas a un programa libre puedan hacerlo propietario en la práctica. Para prevenir eso, la GPL establece que las patentes no pueden usarse para convertir un programa en no-libre.

+ +

A continuación se exponen los términos y condiciones para la copia, distribución y modificación.

+ +

TÉRMINOS Y CONDICIONES

+ +

0. Definiciones.

+ +

En adelante “Esta Licencia” se refiere a la versión 3 de la Licencia Pública General GNU.

+ +

"Copyright" también significa "leyes similares al copyright" que son aplicables a otro tipo de trabajos, tales como las máscaras de semiconductores.

+ +

"El Programa" se refiere a cualquier trabajo con copyright al que se haya aplicado esta Licencia. Cada beneficiario es asimilable a "usted". "Beneficiarios" y "destinatarios" pueden ser personas físicas u organizaciones.

+ +

"Modificar" un trabajo significa copiar o adaptar todo o parte de un trabajo, exceptuando la copia exacta, de manera que se requiera permiso de copyright. El trabajo resultante se denomina "versión modificada" de un trabajo anterior o trabajo "basado en" el trabajo anterior.

+ +

Un "trabajo amparado" puede ser tanto el Programa no modificado como un trabajo basado en el Programa.

+ +

"Difundir" un trabajo significa hacer cualquier cosa con él, sin permiso, que le haga directa o indirectamente responsable de infringir leyes cubiertas por copyright, excepto la ejecución en un ordenador o la modificación de una copia privada. La difusión incluye la copia, distribución (con o sin modificaciones), distribución pública, y en algunos países también otras actividades.

+ +

"Distribuir" un trabajo implica cualquier tipo de difusión que permite a la otra parte hacer o recibir copias. La mera interacción con un usuario mediante una red de ordenadores, sin transferir copia alguna, no se considera "distribución".

+ +

Una interfaz de usuario interactiva muestra "Avisos Legales Apropiados" siempre y cuando incluya características visuales apropiadas y destacadas que (1) muestren un aviso de copyright apropiado, y (2) indiquen al usuario que no existe garantía alguna para el trabajo (exceptuando las garantías que se hayan podido establecer), que los beneficiarios deben distribuir el trabajo según se establece en la presente Licencia, y cómo se puede ver una copia de esta Licencia. Si la interfaz muestra una lista de opciones o comandos, tales como menús, un elemento destacado en dicha lista cumple estos criterios.

+ +

1. Código Fuente.

+ +

El "código fuente" de un trabajo es el formato preferido para realizar modificaciones sobre él. "Código objeto" se refiere a cualquier formato del trabajo que no sea código fuente.

+ +

Una "Interfaz Estándar" se refiere a una interfaz que sea o bien un estándar oficial definido por una institución de estándares reconocida, o bien, en el caso de interfaces específicos para una determinado lenguaje de programación, una cuyo uso esté generalizada entre los desarrolladores que trabajan con ese lenguaje.

+ +

Las "Bibliotecas de Sistema" de un trabajo ejecutable incluyen a cualquier elemento, que no sea el trabajo completo, que (a) esté incluida/o de la misma forma que un componente principal, pero que no forme parte de ese componente principal, y (b) sólo sirva para habilitar la utilización del trabajo a través de ese componente principal, o para implementar un Interfaz Estándar para el cual está disponible una implementación pública en código fuente. Un "Componente Principal", en este contexto, se refiere a un componente principal y esencial (núcleo, sistema de ventanas y similares) del sistema operativo particular (en su caso) sobre el cual funcione el ejecutable, o un compilador utilizado para generar el trabajo, o un intérprete del código objeto utilizado para ejecutarlo.

+ +

La "Fuente Correspondiente" de un trabajo en código objeto se refiere a todo código fuente necesario para generar, instalar, y (en el caso de trabajos ejecutables) ejecutar el código objeto y modificar el trabajo, incluyendo guiones que controlen esas actividades. Sin embargo, no se incluyen las Bibliotecas de Sistema del trabajo, o herramientas de propósito general o programas gratuitos habitualmente disponibles y usados sin ninguna modificación para realizar estas actividades pero que no forman parte del trabajo. Por ejemplo, la Fuente Correspondiente incluye los archivos de definición de interfaz asociados con archivos fuente del trabajo, y el código fuente de las bibliotecas compartidas o subprogramas enlazados dinámicamente que el programa requiere por diseño, como la comunicación de datos intrínseca o el control de flujo entre esos subprogramas y otras partes del trabajo.

+ +

La Fuente Correspondiente no incluye necesariamente aquello que los usuarios pueden regenerar automáticamente a partir de otras partes de la Fuente Correspondiente.

+ +

La Fuente Correspondiente de un trabajo en código fuente es ese mismo trabajo.

+ +

2. Permisos Básicos.

+ +

Todos los derechos garantizados por esta Licencia se otorgan como copyright del Programa, y se proporcionan de manera irrevocable siempre y cuando se cumplan las condiciones establecidas. Esta Licencia afirma explícitamente su permiso ilimitado para ejecutar el Programa sin modificaciones. El resultado de la ejecución de un programa amparado está cubierto por esta Licencia sólo en el caso de que la salida, por su contenido, constituya un trabajo amparado. Esta Licencia reconoce sus derechos de uso razonable u otro equivalente, tal y como determina la ley de copyright.

+ +

Usted podrá realizar, ejecutar y difundir trabajos amparados que no distribuya, sin condición alguna, siempre y cuando no tenga otra licencia más restrictiva. Podrá distribuir trabajos amparados a terceros con el mero objetivo de que ellos hagan modificaciones exclusivamente para usted, o para que le proporcionen ayuda para ejecutar esos trabajos, siempre que cumpla los términos de esta Licencia distribuyendo todo el material de cuyo copyright no posee el control. Aquellos que realicen o ejecuten los trabajos amparados para usted deben hacerlo exclusivamente en su nombre, bajo su dirección y control, con términos que les prohíban realizar copias de su material con copyright al margen de la relación con usted.

+ +

La distribución bajo otras circunstancias se permite únicamente bajo las condiciones establecidas más abajo. No está permitido sublicenciar; la claúsula 10 lo hace innecesario.

+ +

3. Protección de Derechos Legales de los Usuarios frente a Leyes Anti-Burla.

+ +

Ningún trabajo amparado debe considerarse parte de una medida tecnológica efectiva, a tenor de lo establecido en cualquier ley aplicable que cumpla las obligaciones expresas en el artículo 11 del tratado de copyright WIPO adoptado el 20 de diciembre de 1996, o leyes similares que prohíben o restringen la burla de tales medidas.

+ +

Cuando distribuya un trabajo amparado, renuncia a cualquier poder legal para prohibir la burla de medidas tecnológicas mientras tales burlas se realicen en ejercicio de derechos amparados por esta Licencia respecto al trabajo amparado; además, usted negará cualquier intención de limitar el uso o modificación del trabajo con el objetivo de imponer, al trabajo de los usuarios, sus derechos legales o de terceros para prohibir la burla de medidas tecnológicas.

+ +

4. Distribución de copias literales.

+ +

Usted podrá distribuir copias literales del código fuente del Programa tal y como lo ha recibido , por cualquier medio, siempre que publique de forma clara y llamativa en cada copia el correspondiente aviso de copyright ; mantenga intactos todos los avisos que establezcan que esta Licencia y cualquier término no-permisivo añadido y acorde con la cláusula 7 son aplicables al código; mantenga intactos todos los avisos de ausencia de garantía; y proporcione a todos los destinatarios una copia de esta Licencia junto con el Programa.

+ +

Usted podrá cobrar cualquier importe o no cobrar nada por cada copia que distribuya, y podrá ofrecer soporte o protección de garantía mediante un pago.

+ +

5. Distribución de Versiones Modificadas de Código.

+ +

Usted podrá distribuir un trabajo basado en el Programa, o las modificaciones que lo producen a partir del Programa, como código fuente en virtud de los términos establecidos en la cláusula 4, siempre que cumpla todas las condiciones siguientes:

+ +
    +
  • a) El trabajo debe incluir avisos destacados indicando que usted lo ha modificado y dando una fecha pertinente.
  • + +
  • b) El trabajo debe incluir avisos destacados indicando que está realizado a tenor de lo dispuesto en la presente Licencia y en cualquier otra condición añadida en virtud de la cláusula 7. Este requisito modifica el requisito de "mantener intactos todos los avisos" expuesto en la claúsula 4.
  • + +
  • c) En virtud del presente documento, usted deberá aplicar la licencia al trabajo completo, como un todo, a cualquier persona que esté en posesión de una copia. Por lo tanto, esta Licencia se aplicará junto con cualquier otra condición adicional aplicable de la cláusula 7, al conjunto completo del trabajo y todas y cada una de sus partes, independientemente de como sean agrupadas o empaquetadas. Esta Licencia no permite ser aplicada al trabajo de ninguna otra forma, pero no se anula dicho permiso si usted lo ha recibido por separado.
  • + +
  • d) Si el trabajo tiene interfaces de usuario interactivos, cada uno debe mostrar Avisos Legales Apropiados; sin embargo, si el Programa tiene interfaces interactivos que no muestran Avisos Legales Apropiados, su trabajo no tiene porqué modificarlos para que lo hagan.
  • +
+ +

Un conjunto o recopilación formado por un trabajo amparado y otros trabajos distintos e independientes, que por su naturaleza no sean ampliaciones del trabajo amparado, que no se combinen con él de alguna forma para dar lugar a un programa mayor, y que estén ubicados en un medio de distribución o almacenamiento, se denomina "paquete" si la recopilación y su copyright al completo no son usados para limitar el acceso o los derechos legales de los usuarios de la recopilación, más allá de lo que permita el trabajo individual. La inclusión de un trabajo amparado en un paquete no hace aplicable esta Licencia al resto de elementos del paquete.

+ +

6. Distribución de código No-fuente.

+ +

Usted podrá distribuir el código objeto de un trabajo amparado en virtud de los términos de las cláusulas 4 y 5, siempre que también distribuya las Fuentes Correspondientes en código máquina, de acuerdo con los términos establecidos en esta Licencia, de alguna de las siguientes maneras:

+ +
    +
  • a) Distribuir el código objeto en, o embebido en, un producto físico (incluyendo medios de distribución físicos), acompañado de las Fuentes Correspondientes en un medio físico duradero y que sea utilizado habitualmente para el intercambio de software.
  • + +
  • b) Distribuir el código objeto en, o embebido en, un producto físico (incluyendo medios de distribución físicos), acompañado de una oferta por escrito, válida al menos durante tres años y válida durante el tiempo en el que usted ofrezca recambios o soporte para ese modelo de producto, con el fin de ofrecer al poseedor del código objeto (1) una copia de las Fuentes Correspondientes a todo el software del producto que esté cubierto por esta Licencia, en un medio físico duradero habitual para el intercambio de software, a un precio no mayor que su coste razonable por distribuir físicamente las fuentes, o (2) acceso para copiar las fuentes correspondientes desde un servidor de red sin coste alguno.
  • + +
  • c) Distribuir copias individuales del código objeto junto con una copia de la oferta por escrito para/con el fin de proporcionar las Fuentes Correspondientes. Esta alternativa sólo está permitida ocasionalmente, pero no de forma comercial, y solamente si usted recibió el código objeto junto con una oferta parecida, de acuerdo con la subcláusula 6b.
  • + +
  • d) Distribuir el código objeto ofreciendo acceso desde un lugar determinado (gratuitamente o mediante pago), y ofrecer acceso equivalente a las Fuentes Correspondientes de la misma forma y en el mismo lugar sin cargo añadido. No es necesario exigir a los destinatarios que copien las Fuentes Correspondientes junto con el código objeto. Si el lugar para copiar el código objeto es un servidor de red, las Fuentes Correspondientes pueden estar en un servidor diferente (gestionado por usted o terceros) que ofrezca facilidades de copia equivalentes, siempre que mantenga instrucciones claras junto al código objeto especificando dónde encontrar las Fuentes Correspondientes. Independientemente de qué servidores alberguen las Fuentes Correspondientes, usted seguirá obligado a asegurar que estarán disponibles durante el tiempo necesario para cumplir estos requisitos.
  • + +
  • e) Distribuir el código mediante transferencias entre usuarios, siempre que informe a otros usuarios dónde se ofrecen el código objeto y las Fuentes Correspondientes de forma pública sin cargo alguno, tal y como se establece en la subcláusula 6d.
  • +
+ +

Una parte separable del código objeto, cuyo código fuente esté excluido de las Fuentes Correspondientes como Biblioteca de Sistema, no necesita ser incluida en la distribución del código objeto del trabajo.

+ +

Un "Producto de Usuario" es tanto (1) un "producto de consumo", que se refiere a cualquier propiedad personal tangible habitualmente utilizada para fines personales, familiares o domésticos, o (2) cualquier cosa diseñada o vendida para ser incorporada como extensión/expansión para otro producto. Para determinar si un producto es un producto de consumo, los casos dudosos se resolverán favoreciendo el amparo. En el caso de un producto concreto recibido por un usuario particular, "de uso habitual" se refiere al uso típico o corriente de ese tipo de producto, independientemente de la situación del usuario particular o de la forma en que el usuario concreto utilice, o pretenda o se espere que pretenda utilizar, el producto. Un producto es un producto de consumo independientemente de si el producto tiene usos sustancialmente comerciales, industriales o distintos del consumo, a menos que tales usos representen la única forma posible de utilizar el producto.

+ +

Las "Instrucciones de Instalación" para un Producto de Usuario se refieren a cualquier método, procedimiento, clave de autorización, u otro tipo de información necesaria para instalar y ejecutar una versión modificada de un trabajo amparado en ese Producto de Usuario a partir de una versión modificada de las Fuentes Correspondientes. Las instrucciones deben ser suficientes para asegurar el funcionamiento continuo del código objeto modificado sin ningún tipo de condicionamiento o intromisión por el simple hecho de haber sido modificado.

+ +

Si, bajo las premisas de esta cláusula, usted distribuye el código objeto de un trabajo en, o con un Producto de Usuario o específicamente para ser usado en el mismo, y la distribución forma parte de una transacción donde los derechos de posesión y uso del Producto de Usuario se transfieren al destinatario a perpetuidad o durante un plazo fijo de tiempo (independientemente de las características de la transacción), las Fuentes Correspondientes distribuidas bajo estos supuestos deben acompañarse de las Instrucciones de Instalación. Sin embargo, estos requerimientos no se aplican si ni usted ni terceros tienen posibilidad de instalar el código objeto modificado en el Producto de Usuario (por ejemplo, el trabajo ha sido instalado en memoria de sólo lectura, ROM):

+ +

El requerimiento de proporcionar Información de Instalación no incluye el hecho de continuar proporcionando servicio de soporte, garantía, o actualizaciones para un trabajo que haya sido modificado o instalado por el destinatario, o para el Producto de Usuario en el que se haya modificado o instalado. El acceso a la red puede ser denegado cuando la propia modificación afecte materialmente y de forma adversa a la operación de la red o viole las reglas y protocolos de comunicación en la red.

+ +

Las Fuentes Correspondientes distribuidas, y las Instrucciones de Instalación proporcionadas de acuerdo con esta cláusula, deben figurar en un formato documentado públicamente (y con una implementación disponible para el público en código fuente), y no deben necesitar claves de acceso especiales para la descompresión, lectura o copia.

+ +

7. Condiciones adicionales.

+ +

Los "Permisos Adicionales" son condicionantes que amplían los términos de esta Licencia permitiendo excepciones a una o más de sus condiciones. Los Permisos Adicionales que son aplicables al Programa completo deberán ser tratados como si estuviesen incluidos en esta Licencia, hasta los límites de validez impuestos por las leyes aplicables. Si los permisos adicionales se aplicasen sólo a una parte del Programa, esa parte podría ser usada de forma independiente en virtud de dichos permisos, pero el Programa completo seguiría estando afectado por esta Licencia con independencia de los permisos adicionales.

+ +

Cuando distribuya una copia de un trabajo amparado, usted podrá opcionalmente eliminar cualquier permiso adicional de esa copia, o de alguna parte del mismo. (Los permisos adicionales pueden haber establecido que sea requerida su eliminación en ciertos supuestos si usted modifica el trabajo.) Usted puede establecer permisos adicionales en material añadido por usted a un trabajo amparado, sobre el cual tiene o podrá aportar sus permisos de copyright correspondientes.

+ +

Sin contravenir cualquier otra estipulación en esta Licencia, usted podrá, para el material que añada a un trabajo amparado, (si está autorizado por los poseedores de copyright de ese material) añadir condiciones a esta Licencia con los siguientes términos:

+ +
    +
  • a) Ausencia de garantía o limitación de responsabilidad diferente de los términos establecidos en las cláusulas 15 y 16 de esta Licencia; u
  • + +
  • b) Obligación de mantener determinados avisos legales razonables o atribuciones de autoría en el material o en los Avisos Legales Correspondientes mostrados por los trabajos que lo contengan; o
  • + +
  • c) Prohibir la tergiversación del origen del material, o solicitar que las diferencias respecto a la versión original sean señaladas de forma apropiada en las versiones modificadas del material; o
  • + +
  • d) Limitar la utilización de los nombres de los autores o beneficiarios del material con fines divulgativos; o
  • + +
  • e) Negarse a ofrecer derechos afectados por leyes de registro para el uso de marcas empresariales, registradas o de servicio; o
  • + +
  • f) Exigir indemnización a los autores y poseedores de la licencia de ese material, por parte de cualquier persona que distribuya el material (o versiones modificadas del mismo), estableciendo obligaciones contractuales de responsabilidad sobre el destinatario, para cualquier responsabilidad que estas obligaciones contractuales impongan directamente sobre los autores y poseedores de licencia.
  • +
+ +

Cualesquiera otras condiciones adicionales no-permisivas son consideradas "otras restricciones" en el contexto de la cláusula 10. Si el Programa, tal cual lo recibió, o cualquier parte del mismo, contiene un aviso indicando que está amparado por esta Licencia junto a una cláusula de restricción posterior específica, usted podrá suprimir esa cláusula. Si un documento de licencia contiene una restricción de este tipo pero permite modificar la licencia o la distribución en virtud de la presente Licencia, usted podrá añadirla al material de un trabajo amparado por los términos de ese documento de licencia, siempre que dicha restricción no se mantenga tras la modificación de la licencia o la distribución.

+ +

Si añade condiciones para un trabajo amparado, a tenor de lo establecido en la presente cláusula, usted deberá ubicar, en los archivos fuente involucrados, una declaración de los términos adicionales aplicables a esos archivos, o un aviso indicando dónde localizar los términos aplicables.

+ +

Las condiciones adicionales, permisivas o no, deben aparecer por escrito como licencias separadas, o figurar como excepciones; de todas formas, los requisitos anteriores siempre son aplicables.

+ +

8. Cancelación.

+ +

Usted no podrá distribuir o modificar un trabajo amparado salvo de la forma en la que se ha previsto expresamente en esta Licencia. Cualquier intento diferente de distribución o modificación será considerado nulo, y automáticamente cancelará sus derechos respecto a esta Licencia (incluyendo cualquier patente conseguida según el párrafo tercero de la cláusula 11).

+ +

Sin embargo, si deja de violar esta Licencia, entonces su licencia desde el poseedor del copyright correspondiente será restituida (a) provisionalmente, a menos que y hasta que el poseedor del copyright dé por terminada explícita y permanentemente su licencia, y (b) permanentemente, si el poseedor del copyright no le ha notificado por algún cauce de la violación no después de los 60 días posteriores al cese.

+ +

Además, su licencia desde el poseedor del copyright correspondiente será restituida permanentemente si el poseedor del copyright le notifica de la violación por algún cauce, es la primera vez que recibe la notificación de violación de esta Licencia (para cualquier trabajo) de ese poseedor de copyright, y usted subsana la violación antes de 30 días desde la recepción del aviso.

+ +

La cancelación de sus derechos según esta cláusula no da por canceladas las licencias de terceros que hayan recibido copias o derechos a través de usted con esta Licencia. Si sus derechos han finalizado y no han sido restituidos de forma permanente, usted no está capacitado para recibir nuevas licencias para el mismo material en virtud de la cláusula 10.

+ +

9. Aceptación no obligatoria por tenencia de copias.

+ +

No está obligado a aceptar esta Licencia por recibir o ejecutar una copia del Programa. La distribución de un trabajo amparado surgida simplemente como consecuencia de la transmisión entre usuarios para obtener una copia tampoco requiere aceptación. Sin embargo, únicamente esta Licencia le otorga permiso para distribuir o modificar cualquier trabajo amparado. Estas acciones infringen el copyright si usted no acepta las los términos y condiciones de esta Licencia. Por lo tanto, al modificar o distribuir un trabajo amparado, usted indica que acepta la Licencia.

+ +

10. Herencia automática de licencia para destinatarios .

+ +

Cada vez que distribuya un trabajo amparado, el destinatario recibirá automáticamente una licencia desde los poseedores originales, para ejecutar, modificar y distribuir ese trabajo, al amparo de los términos de esta Licencia. Usted no será responsable de asegurar el cumplimiento por terceros de esta Licencia.

+ +

Una "transacción de entidad" es una transacción que transfiere el control de una organización, o todos los bienes sustanciales de una, o subdivide una organización, o fusiona organizaciones. Si la distribución de un trabajo amparado surge de una transacción de entidad, cada parte involucrada en esa transacción que reciba una copia del trabajo, también recibe todas y cada una de las licencias existentes del trabajo que la parte interesada tuviese o pudiese ofrecer según el párrafo anterior, además del derecho a tomar posesión de las Fuentes Correspondientes del trabajo a través de la parte interesada, si está en poder de dicha parte o se puede conseguir con un esfuerzo razonable.

+ +

Usted no podrá imponer restricciones posteriores en el ejercicio de los derechos otorgados o concedidos en virtud de la presente Licencia. Por ejemplo, usted no puede imponer a la licencia pagos, derechos u otros cargos por el ejercicio de los derechos otorgados según esta Licencia; además no podrá iniciar litigios (incluyendo demandas o contrademandas en pleitos) alegando que se infringen patentes por cambiar, usar, vender, ofrecer en venta o importar el Programa, o cualquier parte del mismo.

+ +

11. Patentes.

+ +

Un "colaborador" es un poseedor de copyright que autoriza el uso del Programa o un trabajo en el que se base el Programa bajo los términos y condiciones establecidos en la presente Licencia. El trabajo con esta licencia se denomina "versión en colaboración" con el colaborador.

+ +

Todas las reivindicaciones de patentes en posesión o controladas por el colaborador se denominan "demandas de patente original", ya sean existentes o adquiridas con posterioridad, que hayan sido infringidas de alguna forma permitida por esta Licencia, al hacer, usar o vender la versión en colaboración, pero sin incluir demandas que sólo sean infracciones como consecuencia de modificaciones posteriores de la versión en colaboración. Para aclarar esta definición, "control" incluye el derecho de conceder sublicencias de patente de forma que no contravenga los requisitos establecidos en la presente Licencia.

+ +

Cada colaborador le concede a usted una licencia de la patente no-exclusiva, global y libre de derechos bajo las reivindicaciones de patente de origen del colaborador, para el uso, modificación, venta, ofertas de venta, importación y otras formas de ejecución, modificación y redistribución del contenido de la versión en colaboración.

+ +

En los siguientes tres párrafos, una "licencia de patente" se refiere a cualquier acuerdo o compromiso expreso y manifiesto, cualquiera que sea su denominación, que no imponga una patente (como puede ser el permiso expreso para ejecutar una patente o acuerdos para no imponer demandas por infracción de patente). "Conceder" estas licencias de patente a un tercero significa llegar a tal tipo de acuerdo o compromiso que no imponga una patente al tercero.

+ +

Si usted distribuye un trabajo amparado, conociendo que está afectado por una licencia de patente, y no están disponibles de forma pública para su copia las Fuentes Correspondientes, sin cargo alguno y bajo los términos de esta Licencia, ya sea a través de un servidor de red público o mediante cualquier otro medio, entonces usted deberá o bien (1) permitir que sean públicas las Fuentes Correspondientes, o (2) tratar de eliminar los beneficios de la licencia de patente para este trabajo en particular, o (3) tratar de extender, de una forma que no contravenga los requisitos de esta Licencia, la licencia de patente a terceros. "Conocer que está afectado" significa que usted tiene conocimiento real de que, para la licencia de patente, la distribución del trabajo amparado en un determinado país, o el uso del trabajo amparado por sus destinatarios en un determinado país, infringiría una o más patentes existentes en ese país que usted considera aplicables por algún motivo.

+ +

Si, de conformidad con alguna transacción o acuerdo(o en un proceso relacionado con ellos), usted distribuye o distribuye con fines de distribución , un trabajo amparado, concediendo una licencia de patente para algún tercero que reciba el trabajo amparado, y autorizándole a usar, distribuir, modificar o distribuir una copia específica del trabajo amparado, entonces la licencia de patente que usted otorgue se extiende automáticamente a todos los receptores del trabajo amparado y cualquier trabajo basado en el mismo.

+ +

Una licencia de patente es "discriminatoria" si no incluye dentro de su ámbito de cobertura, prohíbe el ejercicio, o está condicionada a no ejercitar uno o más de los derechos que están específicamente otorgados por esta Licencia. Usted no debe distribuir un trabajo amparado si está implicado en un acuerdo con terceros que estén relacionados con el negocio de la distribución de software, en el que usted haga pagos relacionados con su actividad de distribución del trabajo, y donde se otorgue, a cualquier receptor del trabajo amparado, una licencia de patente discriminatoria (a) en relación con las copias del trabajo amparado distribuido por usted (o copias hechas a partir de éstas), o (b) directa o indirectamente relacionadas con productos específicos o paquetes que contengan el trabajo amparado, a menos que usted forme parte del acuerdo, o que esa licencia de patente fuese otorgada antes del 28 de marzo de 2007.

+ +

Ninguna disposición de esta Licencia se considerará como excluyente o limitante de la aplicación de cualquier otra licencia o defensas legales contra la violación de las leyes de propiedad intelectual a que pudiera tener derecho bajo la ley de propiedad intelectual vigente.

+ +

12. No condicionamiento de la libertad de terceros.

+ +

Si a usted le son impuestas condiciones que contravienen las estipuladas en la presente Licencia (ya sea por orden judicial, acuerdo u otros), no quedará eximido de cumplir las condiciones de esta Licencia. Si usted no puede distribuir un trabajo amparado cumpliendo simultáneamente sus obligaciones con esta Licencia y con cualquier otra pertinente, entonces no podrá distribuirlo de ninguna forma. Por ejemplo, si usted se compromete con términos que le obligan a obtener derechos por la distribución a terceros, la única forma de satisfacer ambos condicionantes y esta Licencia es abstenerse completamente de distribuir el Programa.

+ +

13. Uso conjunto con la Licencia Pública General Affero GNU.

+ +

Sin contravenir las disposiciones de la presente Licencia, usted tendrá permiso para enlazar o combinar cualquier trabajo amparado con otro trabajo amparado por la versión 3 de la Licencia Pública General Affero GNU y formar un solo trabajo combinado, y distribuir el trabajo resultante. Los términos de esta Licencia seguirán siendo aplicables a la parte formada por el trabajo amparado, pero los condicionantes especiales de la Licencia Pública General Affero GNU, en su cláusula 13, relativos a la interacción mediante redes, serán aplicables a la combinación de ambas partes.

+ +

14. Versiones Revisadas de esta Licencia.

+ +

La Fundación para el Software Libre podrá publicar revisiones y/o nuevas versiones de la Licencia Pública General GNU de vez en cuando. Esas versiones serán similares en espíritu a la versión actual, pero podrán diferir en algunos detalles para afrontar nuevos problemas o situaciones.

+ +

A cada versión se le da un número distintivo. Si el Programa especifica que le es aplicable cierto número de versión de la Licencia Pública General o "cualquier versión posterior", usted tendrá la posibilidad de adoptar los términos y condiciones de la versión indicada o de cualquier otra versión posterior publicada por la Fundación para el Software Libre. Si el Programa no especifica un número de versión de la Licencia Pública General, usted podrá elegir cualquier versión que haya sido publicada por la Fundación para el Software Libre.

+ +

Si el Programa especifica que un apoderado/representante puede decidir qué versiones de la Licencia Pública General pueden aplicarse en el futuro, la declaración pública de aceptación que el apoderado/representante haga de una versión le autoriza a usted con carácter permanente a elegir esa versión para el Programa.

+ +

Versiones posteriores de la licencia podrán otorgarle permisos adicionales o diferentes. Sin embargo, no podrán imponerse obligaciones adicionales a cualquier autor o poseedor de copyright como consecuencia de que usted adopte una versión posterior.

+ +

15. Ausencia de Garantía.

+ +

EL PROGRAMA NO TIENE GARANTÍA ALGUNA, HASTA LOS LÍMITES PERMITIDOS POR LAS LEYES APLICABLES. SALVO CUANDO SE ESTABLEZCA LO CONTRARIO POR ESCRITO, EL POSEEDOR DEL COPYRIGHT Y/O TERCEROS PROPORCIONARÁN EL PROGRAMA "TAL CUAL" SIN GARANTÍA DE NINGÚN TIPO, YA SEA EXPLÍCITA O IMPLÍCITA, INCLUYENDO, PERO SIN LIMITARSE A, LAS GARANTÍAS IMPLÍCITAS MERCANTILES Y DE APTITUD PARA UN PROPÓSITO DETERMINADO. USTED ASUMIRÁ CUALQUIER RIESGO RELATIVO A LA CALIDAD Y RENDIMIENTO DEL PROGRAMA. SI EL PROGRAMA FUESE DEFECTUOSO, USTED ASUMIRÁ CUALQUIER COSTE DE SERVICIO, REPARACIÓN O CORRECCIÓN.

+ +

16. Limitación de Responsabilidad.

+ +

EN NINGÚN CASO, SALVO REQUERIMIENTO POR LEYES APLICABLES O MEDIANTE ACUERDO POR ESCRITO, PODRÁ UN POSEEDOR DE COPYRIGHT, O UN TERCERO QUE MODIFIQUE O DISTRIBUYA EL PROGRAMA SEGÚN LO INDICADO ANTERIORMENTE, HACERLE A USTED RESPONSABLE DE DAÑO ALGUNO, INCLUYENDO CUALQUIER DAÑO GENERAL, ESPECIAL, OCASIONAL O DERIVADO QUE SURJA DEL USO O LA INCAPACIDAD DE USO DEL PROGRAMA (INCLUYENDO PERO SIN LIMITARSE A LA PÉRDIDA DE DATOS O LA PRESENTACIÓN NO PRECISA DE LOS MISMOS O A PÉRDIDAS SUFRIDAS POR USTED O TERCEROS O AL FALLO DEL PROGRAMA AL INTERACTUAR CON OTROS PROGRAMAS), INCLUSO EN EL CASO DE QUE EL POSEEDOR O UN TERCERO HAYA SIDO ADVERTIDO DE LA POSIBILIDAD DE TALES DAÑOS.

+ +

17. Interpretación de las cláusulas 15 y 16.

+ +

Si la ausencia de garantía y la limitación de responsabilidad descrita anteriormente no tuviesen efecto legal a nivel local en todos sus términos, los juzgados aplicarán las leyes locales que más se aproximen a la exención de responsabilidad civil en lo relativo al Programa, a menos que la copia del Programa esté acompañada mediante pago de una garantía o compromiso de responsabilidad.

+ +

FIN DE TÉRMINOS Y CONDICIONES

+ +

Cómo aplicar estas condiciones a sus nuevos programas

+ +

Si usted desarrolla un nuevo programa, y quiere darle al público el mayor uso posible del mismo, la mejor forma de conseguirlo es hacerlo software libre para que cualquiera pueda redistribuirlo y modificarlo bajo estas condiciones.

+ +

Para ello, adjunte los siguientes avisos al programa. Es más seguro adjuntarlos al inicio de cada archivo fuente para hacer más explícita la ausencia de garantía; y cada archivo debería tener al menos la línea de "copyright" y un enlace a la versión completa del aviso.

+ +
    <una línea con el nombre del programa y una breve idea de su objetivo.>
+    Copyright (C) <año>  <nombre del autor>
+
+    Este programa es software libre: usted puede redistribuirlo y/o modificarlo 
+    bajo los términos de la Licencia Pública General GNU publicada 
+    por la Fundación para el Software Libre, ya sea la versión 3 
+    de la Licencia, o (a su elección) cualquier versión posterior.
+
+    Este programa se distribuye con la esperanza de que sea útil, pero 
+    SIN GARANTÍA ALGUNA; ni siquiera la garantía implícita 
+    MERCANTIL o de APTITUD PARA UN PROPÓSITO DETERMINADO. 
+    Consulte los detalles de la Licencia Pública General GNU para obtener 
+    una información más detallada. 
+
+    Debería haber recibido una copia de la Licencia Pública General GNU 
+    junto a este programa. 
+    En caso contrario, consulte <http://www.gnu.org/licenses/>.
+
+ +

Incluya además información de cómo contactar con usted por correo electrónico y ordinario.

+ +

Si el programa es interactivo, haga que muestre un breve aviso como el siguiente cuando se inicie en modo interactivo:

+ +
    <programa>  Copyright (C) <año>  <nombre del autor>
+    Este programa se ofrece SIN GARANTÍA ALGUNA; 
+    escriba 'show w' para consultar los detalles.
+    Es software libre, y usted puede redistribuirlo bajo ciertas condiciones; 
+    escriba 'show c' para más información.
+
+ +

Los hipotéticos comandos 'show w' y 'show c' deberían mostrar las partes correspondientes de la Licencia Pública General. Por supuesto, los comandos en su programa podrían ser diferentes; en un interfaz gráfico de usuario, podría usar un mensaje del tipo "Acerca de".

+ +

También debería conseguir que su empresa (si trabaja como programador) o escuela, en su caso, firme una "renuncia de copyright" sobre el programa, si fuese necesario. Para más información a este respecto, y saber cómo aplicar y cumplir la licencia GNU GPL, consulte <http://www.gnu.org/licenses/>.

+ +

La Licencia Pública General GNU no permite incorporar sus programas como parte de programas propietarios. Si su programa es una subrutina en una biblioteca, resultaría mucho más útil habilitar el enlace de aplicaciones propietarias a la biblioteca. Si es esto lo que quiere hacer, utilice la Licencia Pública General Reducida GNU en vez de esta Licencia. Pero por favor, consulte primero <http://www.gnu.org/philosophy/why-not-lgpl.html>.

+
+ +
+ + diff --git a/gpl-it.html b/gpl-it.html new file mode 100644 index 0000000..b5650e9 --- /dev/null +++ b/gpl-it.html @@ -0,0 +1,1032 @@ + + + + + + + GNU GENERAL PUBLIC LICENSE + +

GNU GENERAL PUBLIC LICENSE

+ +

Versione 3, 29 Giugno 2007

+ +
+ + + +
+Questa è una traduzione non ufficiale in italiano della GNU General +Public License. Questa traduzione non è stata pubblicata dalla Free +Software Foundation, e non stabilisce i termini legali di distribuzione +del software che usa la GNU GPL - Soltanto la versione originale in +inglese della GNU GPL fa ciò. Ciononostante, speriamo che questa +traduzione possa aiutare gli utenti di lingua italiana a comprendere un +po' meglio la GNU GPL. + +
+
This is an unofficial translation of the GNU General Public License into +Italian. It was not published by the Free Software Foundation, and does +not legally state the distribution terms for software that uses the GNU +GPL - only the original English text of the GNU GPL does that. However, we +hope that this translation will help italian speakers understand the +GNU GPL better. + +
+ +
Copyright © 2007 Free Software Foundation, Inc. http://fsf.org/ + +
+

A chiunque è permesso copiare e ridistribuire copie esatte di questo +documento di licenza, ma non è in alcun modo consentito apportarvi +modifiche. + +
+
+

Preambolo

+La GNU General Public License è una licenza libera e basata su copyleft +per software e altri tipi di opere. + +
+Le licenze della maggior parte del software e di altre opere materiali +sono pensate per togliere la libertà di condividere e modificare +tali opere. Al contrario, la GNU General Public License ha l'obiettivo +di garantire la libertà di condividere e modificare tutte le versioni +di un programma e di fare in modo che esso rimanga software libero per +tutti gli utenti. Noi, Free Software Foundation, usiamo la GNU General +Public License per la maggior parte del nostro software; essa viene +applicata anche a qualunque altro software rilasciato dall'autore sotto +questa licenza. Chiunque può utilizzare questa licenza per i suoi +programmi. + +
+Quando parliamo di software libero (free software), ci riferiamo al +concetto di libertà, non al prezzo. Le nostre General Public License +sono progettate per garantire che chiunque abbia la libertà di +distribuire copie di software libero (anche dietro pagamento di un +prezzo, se lo desidera), che chiunque riceva o possa ricevere il codice +sorgente se lo vuole, che chiunque possa apportare modifiche al software +o utilizzarne delle porzioni in altri software liberi, e che chiunque +sappia che ha il diritto di fare tutte queste cose col software libero. + +
+Per proteggere i vostri diritti, abbiamo la necessità di impedire che +altri vi neghino questi diritti o vi obblighino a rinunciarvi. Pertanto, +chiunque distribuisce o modifica software rilasciato con questa licenza +assume dei precisi doveri: il dovere di rispettare la libertà degli +altri. + +
+Per esempio, chi distribuisce copie di un programma rilasciato sotto +questa licenza, sia gratis che dietro pagamento di un prezzo, e' +obbligato a riconoscere a chi riceve il software esattamente gli stessi +diritti che ha ricevuto. Deve garantire che chi riceva il software abbia +o possa avere accesso al codice sorgente. E deve chiaramente far +conoscere ai destinatari del software queste condizioni, così che essi +conoscano quali sono i loro diritti. + +
+Gli sviluppatori che usano la GNU GPL proteggono i vostri diritti in due +modi: (1) Rivendicando il copyright sul software, e (2) offrendovi +questa licenza che vi garantisce il diritto legale di copiarlo e/o di +modificarlo. + +
+Al fine di proteggere gli sviluppatori e gli autori, la GPL spiega +chiaramente che non c'è nessuna garanzia per questo software +libero. Nell'interesse degli utenti e degli autori, la GPL impone che le +versioni modificate del software vengano esplicitamente marcate come +"modificate", in maniera tale che eventuali problemi non vengano +erroneamente attribuiti agli autori delle versioni precedenti. + +
+Alcuni dispositivi sono progettati per negare agli utenti +l'installazione o l'esecuzione di versioni modificate del software che +gira sugli stessi, anche se il costruttore si riserva la possibilità +di farlo. Ciò è fondamentalmente incompatibile con l'obiettivo di +garantire la libertà degli utenti di modificare il software. Una +ripetizione sistematica di tali abusi avviene nel campo dei dispositivi +per usi individuali, e ciò rende questi abusi ancora più +inaccettabili. Pertanto, abbiamo realizzato questa versione della GPL al +fine di proibire queste pratiche. Se problemi simili dovessero sorgere +in altri ambiti, saremo pronti ad estendere queste misure a questi nuovi +ambiti in versioni future della GPL, nella maniera che si renderà +necessaria per difendere la libertà degli utenti. + +
+In conclusione, tutti i programmi sono costantemente minacciati dai +brevetti sul software. Gli Stati non dovrebbero permettere ai brevetti +sul software di limitare lo sviluppo e l'utilizzo di software per +computer, ma nei Paesi in cui ciò avviene noi vogliamo evitare in +particolare il pericolo che i brevetti sul software applicati ad un +programma libero possano renderlo, a tutti gli effetti, +proprietario. Per impedire ciò, la GPL assicura che non è possibile +utilizzare i brevetti sul software per rendere un programma non libero. + +
+I termini e le condizioni esatte per la copia, la distribuzione e la +modifica del software sono riportate di seguito. + +
+ +
Termini e Condizioni +
+ +
+ +
    +
  1. Definizioni + +
    +"Questa Licenza" si riferisce alla versione 3 della GNU General Public License. + +
    +"Copyright" indica anche leggi simili al copyright che riguardano +altri tipi di opere, come le maschere per la produzione di +semiconduttori. + +
    +"Il Programma" indica qualunque opera che sia soggetta a copyright e +che sia rilasciata sotto questa Licenza. I detentori della licenza sono +indicati come "tu" o "voi". Licenziatari e destinatari possono +essere individui o organizzazioni. + +
    +"Modificare" un'opera significa copiare o adattare tutta o parte +dell'opera in una maniera che richieda un permesso di copyright, e non +indica la semplice azione di fare una esatta copia dell'opera. L'opera +risultante viene chiamata "versione modificata" dell'opera precedente, +oppure viene detta opera "basata sulla" opera precedente. + +
    +Un' "opera coperta da questa licenza" indica il Programma originale +non modificato oppure un'opera basata sul Programma. + +
    +"Propagare" un'opera significa fare qualunque cosa con essa che, in +mancanza di un esplicito permesso, ti renda direttamente o +indirettamente perseguibile per violazione secondo le vigenti normative +sul copyright, ad eccezione della semplice esecuzione del Programma su +un computer o della modifica di una copia privata. La Propagazione +include la copia, la distribuzione (con o senza modifiche), la messa a +disposizione al pubblico e, in alcuni stati, altre attività simili e +connesse. + +
    +"Distribuire" un'opera indica qualunque forma di propagazione che +permetta a terze parti di effettuare o ricevere delle copie. La mera +interazione con un utente attraverso una rete di computer, senza che ci +sia alcun trasferimento di una copia, non è considerata +"Distribuzione". + +
    +Una interfaccia utente interattiva fornisce delle "Adeguate +Informazioni Legali" soltanto nel caso in cui include una apposita +funzionalità, resa adeguatamente visibile, che (1) visualizzi +un'adeguata informazione di copyright, e (2) informi l'utente che non +c'è alcuna garanzia sull'opera (eccetto nel caso in cui delle garanzie +sono espressamente fornite), dica che il licenziatario può distribuire +l'opera utilizzando questa Licenza, indichi come è possibile prendere +visione di una copia di questa Licenza. Se l'interfaccia presenta una +lista di comandi o di opzioni, come ad esempio un menù, una delle +opzioni fornite nella lista deve rispettare questa condizione. +
    +
  2. + +
  3. Codice Sorgente. + +
    +Il "codice sorgente" di un'opera indica la forma più indicata +dell'opera per effettuare modifiche su di essa. Il "codice oggetto" +indica qualunque forma dell'opera che non sia codice sorgente. + +
    +Una "Interfaccia Standard" è una interfaccia che risponde ad uno +standard ufficiale definito da un ente di standardizzazione riconosciuto +o, nel caso di interfacce specifiche per un particolare linguaggio di +programmazione, una interfaccia che è largamente utilizzata dagli +sviluppatori per sviluppare in tale linguaggio. + +
    +Le "Librerie di Sistema" di un eseguibile includono qualsiasi cosa, +eccetto l'opera nel suo insieme, che (a) sia inclusa nella normale forma +di pacchettizzazione di un "Componente Principale", ma che non è +parte di quel Componente Principale, e (b) che serva solo a consentire +l'uso dell'opera con quel Componente Principale, o per implementare una +Interfaccia Standard per la quale esista una implementazione disponibile +al pubblico in forma sorgente. Un "Componente Principale", in questo +contesto, è un componente essenziale (kernel, gestore di finestre +eccetera) dello specifico sistema operativo (ammesso che ce ne sia uno) +sul quale l'eseguibile esegue, o un compilatore utilizzato per produrre +il programma, o un interprete di codice oggetto utilizzato per eseguire +il programma. + +
    +Il "Sorgente Corrispondente" per un'opera in forma di codice oggetto +è il codice sorgente necessario per generare, installare e (per un +programma eseguibile) eseguire il codice oggetto e per modificare +l'opera, inclusi gli script per controllare le suddette attività di +generazione, installazione ed esecuzione. Non sono incluse le Librerie +di Sistema usate dal programma, o gli strumenti di utilità generica o i +programmi liberamente accessibili che sono utilizzati, senza modifiche, +per portare a termine le suddette attività ma che non fanno parte +dell'opera. Per esempio, il sorgente corrispondente include i file con +le definizioni delle interfacce associati ai file sorgente dell'opera, e +il codice sorgente delle librerie condivise e sottoprogrammi collegati +dinamicamente specificatamente necessari per il programma, ad esempio a +causa di stretta comunicazione dati o di controllo di flusso tra questi +sottoprogrammi e altre parti del programma. + +
    +Il Sorgente Corrispondente non include qualunque cosa che l'utente possa +rigenerare automaticamente da altre parti del Sorgente Corrispondente +stesso. + +
    +Il Sorgente Corrispondente di un'opera in forma di codice sorgente è +l'opera stessa. +
    +
  4. + +
  5. Principali Diritti + +
    +Tutti i diritti garantiti da questa Licenza sono garantiti per la durata +del copyright sul Programma, e sono irrevocabili ammesso che le suddette +condizioni siano rispettate. Questa Licenza afferma esplicitamente il +tuo permesso illimitato di eseguire il Programma non modificato. Il +risultato dell'esecuzione di un programma coperto da questa Licenza è +a sua volta coperto da questa Licenza solo se il risultato stesso, a +causa del suo contenuto, è un'opera coperta da questa Licenza. Questa +Licenza riconosce il tuo diritto all'uso legittimo o altri diritti +equivalenti, come stabilito dalla legislazione sul copyright. + +
    +Puoi creare, eseguire e propagare programmi coperti da questa Licenza +che tu non distribuisci, senza alcuna condizione fino a quando la tua +Licenza rimane valida. Puoi distribuire opere coperte da questa Licenza +ad altri al solo scopo di ottenere che essi facciano delle modifiche al +programma esclusivamente per te, o che ti forniscano dei servizi per +l'esecuzione di queste opere, ammesso che tu rispetti i termini di +questa Licenza nel distribuire tutto il materiale per il quale non +detieni il copyright. Coloro i quali creano o eseguono per conto tuo un +programma coperto da questa Licenza lo fanno esclusivamente in tua vece, +sotto la tua direzione e il tuo controllo, in maniera tale che sia +proibito a costoro effettuare copie di materiale di cui detieni il +copyright al di fuori della relazione che intrattengono nei tuoi +confronti. + +
    +Distribuire opere coperte da licenza in qualunque altra circostanza è +consentito soltanto alle condizioni espresse in seguito. Non è +consentito sottolicenziare le opere: la sezione 10 lo rende non +necessario. +
    +
  6. + +
  7. Protezione dei diritti legali degli utenti dalle leggi + anti-elusione. + +
    +Nessun programma protetto da questa Licenza può essere considerato +parte di una misura tecnologica di restrizione che sottosta ad alcuna +delle leggi che soddisfano l'articolo 11 del "WIPO copyright treaty" +adottato il 20 Dicembre 1996, o a simili leggi che proibiscono o +limitano l'elusione di tali misure tecnologiche di restrizione. + +
    +Quando distribuisci un programma coperto da questa Licenza, rifiuti +tutti i poteri legali atti a proibire l'elusione di misure tecnologiche +di restrizione ammesso che tale elusione sia effettuata nell'esercizio +dei diritti garantiti da questa Licenza riguardo al programma coperto da +questa Licenza, e rinunci all'intenzione di limitare l'operatività o +la modifica del programma per far valere, contro i diritti degli utenti +del programma, diritti legali tuoi o di terze parti che impediscano +l'elusione di misure tecnologiche di restrizione. +
    +
  8. + +
  9. Distribuzione di Copie Esatte. + +
    +Ti è permesso distribuire copie esatte del codice sorgente del +Programma come lo hai ricevuto, con qualunque mezzo, ammesso che tu +aggiunga in maniera appropriata su ciascuna copia una appropriata nota +di copyright; che tu lasci intatti tutti gli avvisi che affermano che +questa Licenza e tutte le clausole non-permissive aggiunte in accordo +con la sezione 7 sono valide per il codice che distribuisci; che tu +lasci intatti tutti gli avvisi circa l'assenza di garanzia; che tu +fornisca a tutti i destinatari una copia di questa Licenza assieme al +Programma. + +
    +Puoi richiedere il pagamento di un prezzo o di nessun prezzo per +ciascuna copia che distribuisci, e puoi offrire supporto o garanzia +a pagamento. +
    +
  10. + +
  11. Distribuzione di Versioni modificate del sorgente. + +
    +Puoi distribuire un'opera basata sul Programma, o le modifiche per +produrla a partire dal Programma, nella forma di codice sorgente secondo +i termini della sezione 4, ammesso che tu rispetti anche tutte le +seguenti condizioni: + +
    + +
      +
    1. L'opera deve recare con sè delle informazioni adeguate che + affermino che tu l'hai modificata, indicando la data di modifica. +
      +
    2. + +
    3. + L'opera deve recare informazioni adeguate che affermino che essa è + rilasciata sotto questa Licenza e sotto le condizioni aggiuntive + secondo quanto indicato dalla Sezione 7. Questa condizione modifica la + condizione espressa alla sezione 4 di "lasciare intatti tutti gli + avvisi". +
      +
    4. + +
    5. + Devi rilasciare l'intera opera, nel suo complesso, sotto questa + Licenza a chiunque venga in possesso di una copia di essa. Questa + Licenza sarà pertanto applicata, assieme ad eventuali clausole + aggiunte in osservanza della Sezione 7, all'opera nel suo complesso, a + tutte le sue parti, indipendentemente da come esse siano + pacchettizzate. Questa Licenza nega il permesso di licenziare l'opera + in qualunque altro modo, ma non rende nullo un tale permesso ammesso + che tu lo abbia ricevuto separatamente. +
      +
    6. + +
    7. + Se l'opera ha delle interfacce utente interattive, ciascuna deve + mostrare delle Adeguate Informazioni Legali; altrimenti, se il + Programma ha delle interfacce interattive che non visualizzano delle + Adeguate Informazioni Legali, il tuo programma non è obbligato a + visualizzarle. +
      +
    8. +
    + +
    +La giustapposizione di un'opera coperta da questa Licenza assieme ad +altre opere separate e indipendenti, che non sono per loro natura +estensioni del Programma, e che non sono combinate con esso a formare un +altro programma più grande, dentro o in uno stesso supporto di +memorizzazione a lungo termine o di distribuzione, è semplicemente +detto "aggregato" se la raccolta e il suo copyright non sono +utilizzati per limitare l'accesso o i diritti legali degli utenti della +raccolta stessa oltre ciò che ciascun singolo programma +consente. L'inclusione di un programma coperto da questa Licenza in un +aggregato non comporta l'applicazione di questa Licenza alle altre parti +dell'aggregato. +
    +
  12. + +
  13. Distribuzione in formato non-sorgente + +
    + Puoi distribuire un programma coperto da questa Licenza in formato di + codice oggetto secondo i termini delle sezioni 4 e 5, ammesso che tu + fornisca anche il Sorgente Corrispondente in formato comprensibile + da un computer sotto i termini di questa stessa Licenza, in uno dei + seguenti modi: + +
      +
    1. Distribuendo il codice oggetto in, o contenuto in, un prodotto + fisico (inclusi i mezzi fisici di distribuzione), accompagnato dal + Sorgente Corrispondente su un supporto fisico duraturo comunemente + utilizzato per lo scambio di software. +
      +
    2. + +
    3. + Distribuendo il codice oggetto in, o contenuto in, un prodotto fisico + (inclusi i mezzi fisici di distribuzione), accompagnato da un'offerta + scritta, valida per almeno tre anni e valida per tutto il tempo + durante il quale tu offri ricambi o supporto per quel modello di + prodotto, di fornire a chiunque possieda il codice oggetto (1) una + copia del Sorgente Corrispondente di tutto il software contenuto nel + prodotto che è coperto da questa Licenza, su un supporto fisico + duraturo comunemente utilizzato per lo scambio di software, ad un + prezzo non superiore al costo ragionevole per effettuare fisicamente + tale distribuzione del sorgente, oppure (2) accesso alla copia del + Sorgente Corrispondente attraverso un server di rete senza alcun costo + aggiuntivo. +
      +
    4. + +
    5. + Distribuendo copie singole del codice oggetto assieme ad una copia + dell'offerta scritta di fornire il Sorgente Corrispondente. Questa + possibilità è permessa soltanto occasionalmente e per fini non + commerciali, e solo se tu hai ricevuto il codice oggetto assieme ad + una tale offerta, in accordo alla sezione 6b. +
      +
    6. + +
    7. + Distribuendo il codice oggetto mediante accesso da un luogo designato + (gratis o dietro pagamento di un prezzo), e offrendo un accesso + equivalente al Sorgente Corrispondente alla stessa maniera a partire + dallo stesso luogo senza costi aggiuntivi. Non devi obbligare i + destinatari a copiare il Sorgente Corrispondente assieme al codice + oggetto. Se il luogo dal quale copiare il codice oggetto è un server + di rete, il Sorgente Corrispondente può trovarsi su un server + differente (gestito da te o da terze parti) che fornisca + funzionalità equivalenti per la copia, a patto che tu fornisca delle + indicazioni chiare accanto al codice oggetto che indichino dove + trovare il Sorgente Corrispondente. Indipendentemente da quale server + ospiti il Sorgente Corrispondente, tu rimani obbligato ad assicurare + che esso rimanga disponibile per tutto il tempo necessario a + soddisfare queste condizioni. +
      +
    8. + +
    9. + Distribuendo il codice oggetto mediante trasmissione peer-to-peer, a + patto che tu informi gli altri peer circa il luogo in cui il codice + oggetto e il Sorgente Corrispondente sono gratuitamente offerti al + pubblico secondo i termini della sezione 6d. +
      +
    10. +
    + +
    + Una porzione separabile del codice oggetto, il cui sorgente è + escluso dal Sorgente Corrispondente e trattato come Libreria di + Sistema, non deve essere obbligatoriamente inclusa nella distribuzione + del codice oggetto del programma. + +
    +Un "Prodotto Utente" è un (1) "prodotto consumer", cioè +qualunque proprietà personale tangibile che è normalmente utilizzata +per scopi personali, familiari o domestici, oppure (2) qualunque cosa +progettata o venduta per essere utilizzata in ambiente domestico. Nella +classificazione di un prodotto come "prodotto consumer", i casi dubbi +andranno risolti in favore dell'ambito di applicazione. Per un dato +prodotto ricevuto da un dato utente, "normalmente utilizzato" si +riferisce ad un uso tipico o comune di quella classe di prodotti, +indipendentemente dallo stato dell'utente specifico o dal modo in cui +l'utente specifico utilizza, o si aspetta o ci si aspetta che utilizzi, +il prodotto. Un prodotto è un "prodotto consumer" indipendentemente +dal fatto che abbia usi commerciali, industriali o diversi da quelli +"consumer", a meno che questi usi non rappresentino il solo modo utile +di utilizzare il prodotto in questione. + +
    +Le "Informazioni di Installazione" per un Prodotto Utente sono i +metodi, le procedure, le chiavi di autorizzazioni o altre informazioni +necessarie per installare ed eseguire versioni modificate di un +programma coperto da questa Licenza all'interno di un Prodotto Utente, a +partire da versioni modificate dei suoi Sorgenti Corrispondenti. Tali +informazioni devono essere sufficienti ad assicurare che il +funzionamento del codice oggetto modificato non sia in nessun caso +proibito o ostacolato per il solo fatto che sono state apportate delle +modifiche. + +
    +Se distribuisci un codice oggetto secondo le condizioni di questa +sezione in, o assieme, o specificatamente per l'uso in o con un Prodotto +Utente, e la distribuzione avviene come parte di una transazione nella +quale il diritto di possesso e di uso del Prodotto Utente viene +trasferito al destinatario per sempre o per un periodo prefissato +(indipendentemente da come la transazione sia caratterizzata), il +Sorgente Corrispondente distribuito secondo le condizioni di questa +sezione deve essere accompagnato dalle Informazioni di +Installazione. Questa condizione non è richiesta se nè tu nè una +terza parte ha la possibilità di installare versioni modificate del +codice oggetto sul Prodotto Utente (ad esempio, se il programma è +installato su una ROM) + +
    +La condizione che richiede di fornire delle Informazioni di Installazione +non implica che venga fornito supporto, garanzia o aggiornamenti per un +programma che è stato modificato o installato dal destinatario, o per +il Prodotto Utente in cui esso è stato modificato o installato. +L'accesso ad una rete può essere negato se le modifiche apportate +impattano materialmente sull'operatività della rete o se violano le +regole e i protocolli di comunicazione attraverso la rete. + +
    +Il Sorgente Corrispondente distribuito, e le Informazioni di +Installazione fornite, in accordo con questa sezione, devono essere in +un formato che sia pubblicamente documentato (e con una implementazione +pubblicamente disponibile in formato di codice sorgente), e non devono +richiedere speciali password o chiavi per essere spacchettate, lette o +copiate. +
    +
  14. + +
  15. Condizioni Aggiuntive. + +
    +Le "Condizioni Aggiuntive" sono condizioni che completano le +condizioni di questa Licenza permettendo delle eccezioni a una o più +delle condizioni sopra elencate. Le condizioni aggiuntive che sono +applicabili all'intero Programma devono essere considerate come se +fossero incluse in questa Licenza, a patto che esse siano valide secondo +le normative vigenti. Se alcune condizioni aggiuntive fanno riferimento +soltanto ad alcune parti del Programma, quelle parti possono essere +utilizzate separatamente sotto le stesse condizioni, ma l'intero +Programma rimane sottoposto a questa Licenza senza riferimento ad alcuna +condizione aggiuntiva. + +
    +Quando distribuisci una copia di un programma coperto da questa Licenza, +puoi, a tua discrezione, eliminare qualunque condizione aggiuntiva dalla +copia, o da parte di essa. (Le Condizioni Aggiuntive possono essere +scritte in maniera tale da richiedere la loro rimozione in certi casi di +modifica del Programma). Puoi aggiungere Condizioni Aggiuntive su +materiale, aggiunto da te ad un'opera coperta da questa Licenza, per il +quale hai o puoi garantire un'adeguata licenza di copyright. + +
    +Indipendentemente da qualunque altra condizione di questa Licenza, e per +il materiale che aggiungi ad un'opera coperta da questa Licenza, puoi +(se autorizzato dai legittimi detentori del copyright per il suddetto +materiale) aggiungere alle condizioni di questa Licenza delle condizioni +che: + +
    + +
      +
    1. Negano la garanzia o limitano la responsabilità del Programma in + maniera differente da quanto riportato nelle sezioni 15 e 16 di questa + Licenza; oppure +
      +
    2. + +
    3. + Richiedono il mantenimento di specifiche e circostanziate informative + legali o di note di attribuzione ad autori nel materiale o assieme + alle Adeguate Informazioni Legali mostrate dal Programma che lo + contiene; oppure +
      +
    4. + +
    5. + Proibiscono di fornire informazioni errate o ingannevoli sull'origine + e la provenienza del materiale in oggetto, o richiedono che versioni + modificate di tale materiale siano appositamente marcate in maniera + differente rispetto alla versione originale; oppure +
      +
    6. + +
    7. + Limitano l'utilizzo per scopi pubblicitari del nome dei detentori del + copyright o degli autori del materiale; oppure +
      +
    8. + +
    9. + Rifiutano di garantire diritti secondo le leggi sulla proprietà + intellettuale circa l'uso di nomi, marchi di fabbrica o similari; + oppure +
      +
    10. + +
    11. + Richiedono l'indennizzo dei detentori del copyright o degli autori del + materiale in oggetto da parte di chi distribuisce il materiale (o + versioni modificate dello stesso) con impegni contrattuali circa la + responsabilità nei confronti del destinatario, per qualunque + responsabilità che questi impegni contrattuali dovessero imporre + direttamente ai suddetti detentori del copyright e autori. +
      +
    12. +
    + +
    +Tutte le altre condizioni addizionali non-permissive sono considerate +"ulteriori restrizioni", secondo il significato specificato alla +sezione 10. Se il Programma o parti di esso contengono, all'atto della +ricezione dello stesso, informative che specificano che esso è +soggetto a questa Licenza assieme ad una condizione che è una +"ulteriore restrizione", puoi rimuovere quest'ultima condizione. Se un +documento di licenza contiene ulteriori restrizioni ma permette di +rilicenziare o distribuire il Programma con questa Licenza, puoi +aggiungere al Programma del materiale coperto dalle condizioni di quel +documento di licenza, a patto che le ulteriori restrizioni non compaiano +nelle versioni rilicenziate o ridistribuite. + +
    +Se aggiungi ad un Programma coperto da questa Licenza delle condizioni +aggiuntive in accordo con questa sezione, devi aggiungere anche, nei +file sorgenti corrispondenti, un avviso che riassuma le condizioni +aggiuntive applicate a quei file, ovvero un avviso che specifichi dove +è possibile trovare copia delle condizioni aggiunte. + +
    +Tutte le Condizioni aggiuntive, permissive o non-permissive, devono +essere espresse nella forma di una licenza scritta e separata, o +espresse esplicitamente come eccezioni; in entrambi i casi valgono le +condizioni succitate. +
    +
  16. + +
  17. Cessazione di Licenza + +
    +Non puoi propagare o modificare un programma coperto da questa Licenza +in maniera diversa da quanto espressamente consentito da questa +Licenza. Qualunque tentativo di propagare o modificare altrimenti il +Programma è nullo, e provoca l'immediata cessazione dei diritti +garantiti da questa Licenza (compresi tutte le eventuali licenze di +brevetto garantite ai sensi del terzo paragrafo della sezione 11). + +
    +In ogni caso, se cessano tutte le violazioni di questa Licenza, allora +la tua licenza da parte di un dato detentore del copyright viene +ripristinata (a) in via cautelativa, a meno che e fino a quando il +detentore del copyright non cessa esplicitamente e definitivamente la +tua licenza, e (b) in via permanente se il detentore del copyright non +ti notifica in alcun modo la violazione entro 60 giorni dalla cessazione +della licenza. + +
    +Inoltre, la tua licenza da parte di un dato detentore del copyright +viene ripristinata in maniera permanente se il detentore del copyright ti +notifica la violazione in maniera adeguata, se questa è la prima volta +che ricevi una notifica di violazione di questa Licenza (per qualunque +Programma) dallo stesso detentore di copyright, e se rimedi alla +violazione entro 30 giorni dalla data di ricezione della notifica di +violazione. + +
    +La cessazione dei tuoi diritti come specificato in questa sezione non +provoca la cessazione delle licenze di terze parti che abbiano ricevuto +copie o diritti da te secondo questa Licenza. Se i tuoi diritti cessano +e non sono ristabiliti in via permanente, non hai diritto di ricevere +nuove licenze per lo stesso materiale, secondo quanto stabilito nella +sezione 10. +
    +
  18. + +
  19. L'ottenimento di copie non richiede l'accettazione della Licenza + +
    +Non sei obbligato ad accettare i termini di questa Licenza al solo fine +di ottenere o eseguire una copia del Programma. Similmente, propagazioni +collaterali di un Programma coperto da questa Licenza che occorrono come +semplice conseguenza dell'utilizzo di trasmissioni peer-to-peer per la +ricezione di una copia non richiedono l'accettazione della Licenza. In +ogni caso, solo e soltanto questa Licenza ti garantiscono il permesso di +propagare e modificare qualunque programma coperto da questa +Licenza. Queste azioni violano le leggi sul copyright nel caso in cui tu +non accetti questa Licenza. Pertanto, modificando o propagando un +programma coperto da questa Licenza, indichi implicitamente la tua +accettazione della Licenza. +
    +
  20. + +
  21. Licenza Automatica per i successivi destinatari + +
    +Ogni qual volta distribuisci un programma coperto da questa Licenza, il +destinatario riceve automaticamente una licenza, dal detentore +originario del copyright, di eseguire, modificare e propagare il +programma, nel rispetto di questa Licenza. Non sei ritenuto responsabile +del rispetto di questa Licenza da parte di terze parti. + +
    +Una "transazione d' entità" è una transazione che trasferisce il +controllo di una organizzazione, o sostanzialmente di tutti i suoi beni, +che suddivide una organizzazione o che fonde più organizzazioni. Se la +propagazione di un programma coperto da questa Licenza è conseguente +ad una transazione di entità, ciascuna parte che ha ruolo nella +transazione e che riceve una copia del programma riceve allo stesso tempo +qualsiasi licenza sul programma che i predecessori della parte +possedevano o potevano rilasciare nel rispetto del paragrafo precedente, +e in più il diritto di possesso del Sorgente Corrispondente del +programma dal predecessore in interesse, se il predecessore lo possiede +o se può ottenerlo senza troppe difficoltà. + +
    +Non puoi imporre nessuna ulteriore restrizione sull'esercizio dei +diritti garantiti o affermati da questa Licenza. Per esempio, non puoi +imporre un prezzo di licenza, una royalty, o altri costi per +l'esercizio dei diritti garantiti da questa Licenza, a non puoi dar +corso ad una controversia (ivi incluse le controversie incrociate o la +difesa in cause legali) affermando che siano stati violati dei +brevetti a causa della produzione, dell'uso, della vendita, della +messa in vendita o dell'importazione del Programma o di sue parti. +
    +
  22. + +
  23. Brevetti. + +
    +Un "contribuente" è un detentore di copyright che autorizza l'uso +secondo questa Licenza di un Programma o di un'opera basata sul +Programma. L'opera così licenziata viene chiamata "versione del +contribuente". + +
    +I "diritti essenziali di brevetto" da parte di un contribuente sono +tutti i diritti di brevetto che appartengono o che sono controllati dal +contribuente, che siano già acquisiti o che saranno acquisiti in +futuro, che possano essere violati in qualche maniera, consentita da +questa Licenza, generando, modificando o vendendo la versione del +contribuente, ma non includono i diritti che possano essere violati +soltanto come conseguenza di ulteriori modifiche alla versione del +contribuente. In relazione a questa definizione, il termine +"controllo" include il diritto di garantire sottolicenze di brevetto +in maniera consistente con le condizioni di questa Licenza. + +
    +Ciascun contribuente ti garantisce la licenza di brevetto sui diritti +essenziali di brevetto del contribuente stesso non-esclusiva, valida in +tutto il mondo, esente da royalty, di creare, usare, vendere, offrire in +vendita, importare e altrimenti eseguire, modificare e propagare i +contenuti della versione del contribuente. + +
    +Nei tre paragrafi successivi, con "licenza di brevetto" si intende +qualunque accordo o contratto, comunque denominato, di non +rivendicazione di un brevetto (come ad esempio un permesso esplicito di +utilizzare un brevetto o un accordo di rinuncia alla persecuzione per +violazione di brevetto). "Garantire" una tale licenza di brevetto ad +una parte significa portare a termine un tale accordo o contratto di non +rivendicazione di brevetto contro la parte. + +
    +Se distribuisci un programma coperto da questa Licenza, confidando +consapevolmente su una licenza di brevetto, e il Sorgente Corrispondente +per il programma non è reso disponibile per la copia, senza alcun +onere aggiuntivo e comunque nel rispetto delle condizioni di questa +Licenza, attraverso un server di rete pubblicamente accessibile o +tramite altri mezzi facilmente accessibili, allora devi (1) fare in modo +che il Sorgente Corrispondente sia reso disponibile come sopra, oppure +(2) fare in modo di rinunciare ai benefici della licenza di brevetto per +quel particolare programma, oppure (3) adoperarti, in maniera +consistente con le condizioni di questa Licenza, per estendere la +licenza di brevetto a tutti i destinatari successivi. "Confidare +consapevolmente" significa che tu sei attualmente cosciente che, +eccettuata la licenza di brevetto, la distribuzione da parte tua di un +programma protetto da questa Licenza in un paese, o l'utilizzo in un +paese del programma coperto da questa Licenza da parte di un +destinatario, può violare uno o più brevetti in quel paese che tu +hai ragione di ritenere validi. + +
    +Se, come conseguenza o in connessione con una singola transazione o +con un dato accordo, distribuisci, o fai in modo di distribuire, un +programma coperto da questa Licenza, e garantisci una licenza di +brevetto per alcune delle parti che ricevono il Programma +autorizzandole ad utilizzare, propagare, modificare o distribuire una +specifica copia del Programma, allora la licenza di brevetto che +fornisci è automaticamente estesa a tutti i destinatari del +Programma coperto da questa Licenza e delle opere basate sul +Programma. + +
    +Una licenza di brevetto è "discriminatoria" se non include +nell'ambito della sua copertura, proibisce l'esercizio, o è vincolata +al non-esercizio di uno o più dei diritti che sono specificatamente +garantiti da questa Licenza. Non puoi distribuire un Programma coperto +da questa Licenza se sei parte di un accordo con una terza parte la cui +attività comprende la distribuzione di software, secondo il quale tu +sei costretto ad un pagamento alla parte terza in funzione della tua +attività di distribuzione del Programma, e in conseguenza del quale la +parte terza garantisce, a qualunque delle parti che riceveranno il +Programma da te, una licenza di brevetto discriminatoria (a) assieme a +copie del Programma coperto da questa Licenza distribuite da te (o ad +altre copie fatte da codeste copie), oppure (b) principalmente per e in +connessione con specifici prodotti o raccolte di prodotti che contengono +il Programma, a meno che l'accordo non sia stato stipulato, o le licenze +di brevetto non siano state rilasciate, prima del 28 Marzo 2007. + +
    +Nessuna parte di questa Licenza può essere interpretata come atta ad +escludere o limitare gli effetti di qualunque altra licenza o altri +meccanismi di difesa dalla violazione che possano altrimenti essere resi +disponibili dalla normativa vigente in materia di brevetti. +
    +
  24. + +
  25. Nessuna resa di libertà altrui + +
    +Se ti vengono imposte delle condizioni (da un ordine giudiziario, da +un accordo o da qualunque altra eventualità) che contraddicono le +condizioni di questa Licenza, non sei in nessun modo esonerato dal +rispetto delle condizioni di questa Licenza. Se non puoi distribuire +un Programma coperto da questa Licenza per sottostare simultaneamente +agli obblighi derivanti da questa Licenza e ad altri obblighi +pertinenti, allora non puoi distribuire il Programma per nessun +motivo. Per esempio, se accetti delle condizioni che ti obbligano a +richiedere il pagamento di una royalty per le distribuzioni +successivamente effettuate da coloro ai quali hai distribuito il +Programma, l'unico modo per soddisfare sia queste condizioni che +questa Licenza è evitare del tutto la distribuzione del Programma. +
    +
  26. + +
  27. Utilizzo con la GNU Affero General Public License + +
    +Indipendentemente da qualunque altra condizione espressa da questa +Licenza, hai il permesso di collegare o combinare qualunque Programma +coperto da questa Licenza con un'opera rilasciata sotto la versione 3 +della licenza GNU Affero General Public License, ottenendo un singolo +Programma derivato, e di distribuire il Programma risultante. Le +condizioni di questa Licenza continuano a valere per le parti +riguardanti il Programma che sono coperte da questa Licenza, mentre le +condizioni speciali della GNU Affero General Public License, sezione 13, +riguardanti l'interazione mediante rete, saranno applicate al Programma +così risultante. +
    +
  28. + +
  29. Versioni rivedute di questa Licenza + +
    +La Free Software Foundation può pubblicare delle versioni rivedute +e/o delle nuove versioni della GNU General Public License di tanto in +tanto. Tali versioni saranno simili, nello spirito, alla presente +versione, ma potranno differire nei dettagli al fine di affrontare +nuovi problemi e nuove situazioni. + +
    +A ciascuna versione viene assegnato un numero identificativo di +versione. Se il Programma specifica che si applica a sè stesso una +certa versione della GNU General Public License, "o qualunque altra +versione successiva", hai la possibilità di sottostare alle +condizioni di quella specifica versione o di qualunque altra versione +successiva pubblicata dalla Free Software Foundation. Se il Programma +non specifica un numero di versione della GNU General Public License, +puoi scegliere qualunque versione della GNU General Public License +pubblicata dalla Free Software Foundation. + +
    +Se il Programma specifica che un sostituto o un procuratore può +decidere quali versioni future della GNU General Public License posso +essere utilizzate, allora tale scelta di accettazione di una data +versione ti autorizza, in maniera permanente, ad utilizzare quella +versione della Licenza per il Programma. + +
    +Versioni successive della Licenza possono garantire diritti aggiuntivi o +leggermente differenti. Ad ogni modo, nessun obbligo aggiuntivo viene +imposto agli autori o ai detentori di copyright come conseguenza della +tua scelta di adottare una versione successiva della Licenza. +
    +
  30. + +
  31. Rinuncia alla Garanzia + +
    +NON C'E' NESSUNA GARANZIA PER IL PROGRAMMA, PER QUANTO CONSENTITO DALLE +VIGENTI NORMATIVE. ECCETTO QUANDO ALTRIMENTI STABILITO PER ISCRITTO, I +DETENTORI DEL COPYRIGHT E/O LE ALTRE PARTI FORNISCONO IL PROGRAMMA +"COSI' COME È" SENZA GARANZIA DI ALCUN TIPO, NE' ESPRESSA NE' +IMPLICITA, INCLUSE, MA NON LIMITATE A, LE GARANZIE DI COMMERCIABILITA' O +DI UTILIZZABILITA' PER UN PARTICOLARE SCOPO. L'INTERO RISCHIO +CONCERNENTE LA QUALITA' E LE PRESTAZIONI DEL PROGRAMMA E' DEL +LICENZIATARIO. SE IL PROGRAMMA DOVESSE RISULTARE DIFETTOSO, IL +LICENZIATARIO SI ASSUME I COSTI DI MANUTENZIONE, RIPARAZIONE O +CORREZIONE. +
    +
  32. + +
  33. Limitazione di Responsabilità + +
    + IN NESSUN CASO, A MENO CHE NON SIA RICHIESTO DALLA NORMATIVA VIGENTE + O CONCORDATO PER ISCRITTO, I DETENTORI DEL COPYRIGHT, O QUALUNQUE + ALTRA PARTE CHE MODIICA E/O DISTRIBUISCE IL PROGRAMMA SECONDO LE + CONDIZIONI PRECEDENTI, POSSONO ESSERE RITENUTI RESPONSABILI NEI + CONFRONTI DEL LICENZIATARIO PER DANNI, INCLUSO QUALUNQUE + DANNEGGIAMENTO GENERICO, SPECIALE, INCIDENTALE O CONSEQUENZIALE + DOVUTO ALL'USO O ALL'IMPOSSIBILITA' D'USO DEL PROGRAMMA (INCLUSI, MA + NON LIMITATI A, LE PERDITE DI DATI, LA CORRUZIONE DI DATI, LE + PERDITE SOSTENUTE DAL LICENZIATARIO O DA TERZE PARTI O + L'IMPOSSIBILITA' DEL PROGRAMMA A FUNZIONARE ASSIEME AD ALTRI + PROGRAMMI), ANCHE NEL CASO IN CUI IL DETENTORE O LE ALTRE PARTI + SIANO STATI AVVISATI CIRCA LA POSSIBILITA' DI TALI DANNEGGIAMENTI. +
    +
  34. + +
  35. Interpretazione delle Sezioni 15 e 16. + +
    +Se la dichiarazione di garanzia e la limitazione di responsabilità +fornite precedentemente non hanno effetto legale in un paese a causa +delle loro condizioni, le corti di giustizia devono applicare la norma +locale che più si avvicini al rifiuto assoluto di qualsivoglia +responsabilità civile relativa al Programma, a meno che una garanzia o +una assunzione di responsabilità scritta non accompagni una copia del +programma ottenuta dietro pagamento. + +
    + +
    Fine dei Termini e delle Condizioni + +
    + Come applicare questre condizioni di Licenza ai vostri programmi + +
    +
    Se sviluppi un nuovo programma, e vuoi che esso sia della massima +utilità, il modo migliore è renderlo software libero in modo che +chiunque possa ridistribuirlo e modificarlo secondo i termini di questa +Licenza. + +
    +Per fare ciò, allega le seguenti note informative al programma. Il +modo migliore è inserirle all'inizio di ciascun file sorgente, al fine +di rimarcare adeguatamente la mancanza di garanzia; ciascun file +dovrebbe inoltre contenere la dichiarazione di copyright e un +riferimento al posto in cui è possibile ottenere la versione completa +delle note informative. + +
    + +
    <one line to give the program's name and a brief idea of what it does.> + +
    + Copyright (C) <year> <name of author> + +
    + 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 3 of the License, 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, see + http://www.gnu.org/licenses/. + +
    +
    Inoltre, aggiungi le informazioni necessarie a contattarti via posta +ordinaria o via posta elettronica. + +
    +Se il programma interagisce mediante terminale, fai in modo che +visualizzi, quando viene avviato in modalità interattiva, un breve +messaggio come quello che segue: + +
    + +
    <program> Copyright (C) <year> <name of author> + +
    + This program comes with ABSOLUTELY NO WARRANTY; for details type +show w. + This is free software, and you are welcome to redistribute it + under certain conditions; type show c for details. +
    + +
    +Gli ipotetici comandi show w e show c devono visualizzare le +parti corrispondenti della GNU General Public License. Naturalmente i +comandi del tuo programma potrebbero essere differenti; per una +interfaccia di tipo GUI, dovresti usare un bottone "About" o +"Info". + +
    +Devi inoltre fare in modo che il tuo datore di lavoro (se lavori come +programmatore presso terzi) o la tua scuola, eventualmente, firmino una +"rinuncia al copyright" sul programma, se necessario. Per maggiori +informazioni su questo punto, e su come applicare e rispettare la GNU +GPL, consultare la pagina http://www.gnu.org/licenses/. + +
    +La GNU General Public License non consente di incorporare il programma +all'interno di software proprietario. Se il tuo programma è una +libreria di funzioni, potresti ritenere più opportuno consentire il +collegamento tra software proprietario e la tua libreria. Se è questo +ciò che vuoi, allora utilizza la GNU Lesser General Public License +anziché questa Licenza, ma prima leggi +http://www.gnu.org/philosophy/why-not-lgpl.html. +
    +
  36. +
+ +
+ +


File translated from +TEX +by +TTH, +version 3.67.
On 15 Jul 2007, 11:58.
+ diff --git a/gpl.html b/gpl.html new file mode 100644 index 0000000..d64890f --- /dev/null +++ b/gpl.html @@ -0,0 +1,694 @@ + + + + + GNU General Public License - GNU Project - Free Software Foundation (FSF) + + + +

GNU GENERAL PUBLIC LICENSE

+

Version 3, 29 June 2007

+ +

Copyright © 2007 Free Software Foundation, Inc. + <http://fsf.org/>

+ Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed.

+ +

Preamble

+ +

The GNU General Public License is a free, copyleft license for +software and other kinds of works.

+ +

The licenses for most software and other practical works are designed +to take away your freedom to share and change the works. By contrast, +the GNU General Public License is intended to guarantee your freedom to +share and change all versions of a program--to make sure it remains free +software for all its users. We, the Free Software Foundation, use the +GNU General Public License for most of our software; it applies also to +any other work released this way by its authors. You can apply it to +your programs, too.

+ +

When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +them if you wish), that you receive source code or can get it if you +want it, that you can change the software or use pieces of it in new +free programs, and that you know you can do these things.

+ +

To protect your rights, we need to prevent others from denying you +these rights or asking you to surrender the rights. Therefore, you have +certain responsibilities if you distribute copies of the software, or if +you modify it: responsibilities to respect the freedom of others.

+ +

For example, if you distribute copies of such a program, whether +gratis or for a fee, you must pass on to the recipients the same +freedoms that you received. You must make sure that they, too, receive +or can get the source code. And you must show them these terms so they +know their rights.

+ +

Developers that use the GNU GPL protect your rights with two steps: +(1) assert copyright on the software, and (2) offer you this License +giving you legal permission to copy, distribute and/or modify it.

+ +

For the developers' and authors' protection, the GPL clearly explains +that there is no warranty for this free software. For both users' and +authors' sake, the GPL requires that modified versions be marked as +changed, so that their problems will not be attributed erroneously to +authors of previous versions.

+ +

Some devices are designed to deny users access to install or run +modified versions of the software inside them, although the manufacturer +can do so. This is fundamentally incompatible with the aim of +protecting users' freedom to change the software. The systematic +pattern of such abuse occurs in the area of products for individuals to +use, which is precisely where it is most unacceptable. Therefore, we +have designed this version of the GPL to prohibit the practice for those +products. If such problems arise substantially in other domains, we +stand ready to extend this provision to those domains in future versions +of the GPL, as needed to protect the freedom of users.

+ +

Finally, every program is threatened constantly by software patents. +States should not allow patents to restrict development and use of +software on general-purpose computers, but in those that do, we wish to +avoid the special danger that patents applied to a free program could +make it effectively proprietary. To prevent this, the GPL assures that +patents cannot be used to render the program non-free.

+ +

The precise terms and conditions for copying, distribution and +modification follow.

+ +

TERMS AND CONDITIONS

+ +

0. Definitions.

+ +

“This License” refers to version 3 of the GNU General Public License.

+ +

“Copyright” also means copyright-like laws that apply to other kinds of +works, such as semiconductor masks.

+ +

“The Program” refers to any copyrightable work licensed under this +License. Each licensee is addressed as “you”. “Licensees” and +“recipients” may be individuals or organizations.

+ +

To “modify” a work means to copy from or adapt all or part of the work +in a fashion requiring copyright permission, other than the making of an +exact copy. The resulting work is called a “modified version” of the +earlier work or a work “based on” the earlier work.

+ +

A “covered work” means either the unmodified Program or a work based +on the Program.

+ +

To “propagate” a work means to do anything with it that, without +permission, would make you directly or secondarily liable for +infringement under applicable copyright law, except executing it on a +computer or modifying a private copy. Propagation includes copying, +distribution (with or without modification), making available to the +public, and in some countries other activities as well.

+ +

To “convey” a work means any kind of propagation that enables other +parties to make or receive copies. Mere interaction with a user through +a computer network, with no transfer of a copy, is not conveying.

+ +

An interactive user interface displays “Appropriate Legal Notices” +to the extent that it includes a convenient and prominently visible +feature that (1) displays an appropriate copyright notice, and (2) +tells the user that there is no warranty for the work (except to the +extent that warranties are provided), that licensees may convey the +work under this License, and how to view a copy of this License. If +the interface presents a list of user commands or options, such as a +menu, a prominent item in the list meets this criterion.

+ +

1. Source Code.

+ +

The “source code” for a work means the preferred form of the work +for making modifications to it. “Object code” means any non-source +form of a work.

+ +

A “Standard Interface” means an interface that either is an official +standard defined by a recognized standards body, or, in the case of +interfaces specified for a particular programming language, one that +is widely used among developers working in that language.

+ +

The “System Libraries” of an executable work include anything, other +than the work as a whole, that (a) is included in the normal form of +packaging a Major Component, but which is not part of that Major +Component, and (b) serves only to enable use of the work with that +Major Component, or to implement a Standard Interface for which an +implementation is available to the public in source code form. A +“Major Component”, in this context, means a major essential component +(kernel, window system, and so on) of the specific operating system +(if any) on which the executable work runs, or a compiler used to +produce the work, or an object code interpreter used to run it.

+ +

The “Corresponding Source” for a work in object code form means all +the source code needed to generate, install, and (for an executable +work) run the object code and to modify the work, including scripts to +control those activities. However, it does not include the work's +System Libraries, or general-purpose tools or generally available free +programs which are used unmodified in performing those activities but +which are not part of the work. For example, Corresponding Source +includes interface definition files associated with source files for +the work, and the source code for shared libraries and dynamically +linked subprograms that the work is specifically designed to require, +such as by intimate data communication or control flow between those +subprograms and other parts of the work.

+ +

The Corresponding Source need not include anything that users +can regenerate automatically from other parts of the Corresponding +Source.

+ +

The Corresponding Source for a work in source code form is that +same work.

+ +

2. Basic Permissions.

+ +

All rights granted under this License are granted for the term of +copyright on the Program, and are irrevocable provided the stated +conditions are met. This License explicitly affirms your unlimited +permission to run the unmodified Program. The output from running a +covered work is covered by this License only if the output, given its +content, constitutes a covered work. This License acknowledges your +rights of fair use or other equivalent, as provided by copyright law.

+ +

You may make, run and propagate covered works that you do not +convey, without conditions so long as your license otherwise remains +in force. You may convey covered works to others for the sole purpose +of having them make modifications exclusively for you, or provide you +with facilities for running those works, provided that you comply with +the terms of this License in conveying all material for which you do +not control copyright. Those thus making or running the covered works +for you must do so exclusively on your behalf, under your direction +and control, on terms that prohibit them from making any copies of +your copyrighted material outside their relationship with you.

+ +

Conveying under any other circumstances is permitted solely under +the conditions stated below. Sublicensing is not allowed; section 10 +makes it unnecessary.

+ +

3. Protecting Users' Legal Rights From Anti-Circumvention Law.

+ +

No covered work shall be deemed part of an effective technological +measure under any applicable law fulfilling obligations under article +11 of the WIPO copyright treaty adopted on 20 December 1996, or +similar laws prohibiting or restricting circumvention of such +measures.

+ +

When you convey a covered work, you waive any legal power to forbid +circumvention of technological measures to the extent such circumvention +is effected by exercising rights under this License with respect to +the covered work, and you disclaim any intention to limit operation or +modification of the work as a means of enforcing, against the work's +users, your or third parties' legal rights to forbid circumvention of +technological measures.

+ +

4. Conveying Verbatim Copies.

+ +

You may convey verbatim copies of the Program's source code as you +receive it, in any medium, provided that you conspicuously and +appropriately publish on each copy an appropriate copyright notice; +keep intact all notices stating that this License and any +non-permissive terms added in accord with section 7 apply to the code; +keep intact all notices of the absence of any warranty; and give all +recipients a copy of this License along with the Program.

+ +

You may charge any price or no price for each copy that you convey, +and you may offer support or warranty protection for a fee.

+ +

5. Conveying Modified Source Versions.

+ +

You may convey a work based on the Program, or the modifications to +produce it from the Program, in the form of source code under the +terms of section 4, provided that you also meet all of these conditions:

+ +
    +
  • a) The work must carry prominent notices stating that you modified + it, and giving a relevant date.
  • + +
  • b) The work must carry prominent notices stating that it is + released under this License and any conditions added under section + 7. This requirement modifies the requirement in section 4 to + “keep intact all notices”.
  • + +
  • c) You must license the entire work, as a whole, under this + License to anyone who comes into possession of a copy. This + License will therefore apply, along with any applicable section 7 + additional terms, to the whole of the work, and all its parts, + regardless of how they are packaged. This License gives no + permission to license the work in any other way, but it does not + invalidate such permission if you have separately received it.
  • + +
  • d) If the work has interactive user interfaces, each must display + Appropriate Legal Notices; however, if the Program has interactive + interfaces that do not display Appropriate Legal Notices, your + work need not make them do so.
  • +
+ +

A compilation of a covered work with other separate and independent +works, which are not by their nature extensions of the covered work, +and which are not combined with it such as to form a larger program, +in or on a volume of a storage or distribution medium, is called an +“aggregate” if the compilation and its resulting copyright are not +used to limit the access or legal rights of the compilation's users +beyond what the individual works permit. Inclusion of a covered work +in an aggregate does not cause this License to apply to the other +parts of the aggregate.

+ +

6. Conveying Non-Source Forms.

+ +

You may convey a covered work in object code form under the terms +of sections 4 and 5, provided that you also convey the +machine-readable Corresponding Source under the terms of this License, +in one of these ways:

+ +
    +
  • a) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by the + Corresponding Source fixed on a durable physical medium + customarily used for software interchange.
  • + +
  • b) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by a + written offer, valid for at least three years and valid for as + long as you offer spare parts or customer support for that product + model, to give anyone who possesses the object code either (1) a + copy of the Corresponding Source for all the software in the + product that is covered by this License, on a durable physical + medium customarily used for software interchange, for a price no + more than your reasonable cost of physically performing this + conveying of source, or (2) access to copy the + Corresponding Source from a network server at no charge.
  • + +
  • c) Convey individual copies of the object code with a copy of the + written offer to provide the Corresponding Source. This + alternative is allowed only occasionally and noncommercially, and + only if you received the object code with such an offer, in accord + with subsection 6b.
  • + +
  • d) Convey the object code by offering access from a designated + place (gratis or for a charge), and offer equivalent access to the + Corresponding Source in the same way through the same place at no + further charge. You need not require recipients to copy the + Corresponding Source along with the object code. If the place to + copy the object code is a network server, the Corresponding Source + may be on a different server (operated by you or a third party) + that supports equivalent copying facilities, provided you maintain + clear directions next to the object code saying where to find the + Corresponding Source. Regardless of what server hosts the + Corresponding Source, you remain obligated to ensure that it is + available for as long as needed to satisfy these requirements.
  • + +
  • e) Convey the object code using peer-to-peer transmission, provided + you inform other peers where the object code and Corresponding + Source of the work are being offered to the general public at no + charge under subsection 6d.
  • +
+ +

A separable portion of the object code, whose source code is excluded +from the Corresponding Source as a System Library, need not be +included in conveying the object code work.

+ +

A “User Product” is either (1) a “consumer product”, which means any +tangible personal property which is normally used for personal, family, +or household purposes, or (2) anything designed or sold for incorporation +into a dwelling. In determining whether a product is a consumer product, +doubtful cases shall be resolved in favor of coverage. For a particular +product received by a particular user, “normally used” refers to a +typical or common use of that class of product, regardless of the status +of the particular user or of the way in which the particular user +actually uses, or expects or is expected to use, the product. A product +is a consumer product regardless of whether the product has substantial +commercial, industrial or non-consumer uses, unless such uses represent +the only significant mode of use of the product.

+ +

“Installation Information” for a User Product means any methods, +procedures, authorization keys, or other information required to install +and execute modified versions of a covered work in that User Product from +a modified version of its Corresponding Source. The information must +suffice to ensure that the continued functioning of the modified object +code is in no case prevented or interfered with solely because +modification has been made.

+ +

If you convey an object code work under this section in, or with, or +specifically for use in, a User Product, and the conveying occurs as +part of a transaction in which the right of possession and use of the +User Product is transferred to the recipient in perpetuity or for a +fixed term (regardless of how the transaction is characterized), the +Corresponding Source conveyed under this section must be accompanied +by the Installation Information. But this requirement does not apply +if neither you nor any third party retains the ability to install +modified object code on the User Product (for example, the work has +been installed in ROM).

+ +

The requirement to provide Installation Information does not include a +requirement to continue to provide support service, warranty, or updates +for a work that has been modified or installed by the recipient, or for +the User Product in which it has been modified or installed. Access to a +network may be denied when the modification itself materially and +adversely affects the operation of the network or violates the rules and +protocols for communication across the network.

+ +

Corresponding Source conveyed, and Installation Information provided, +in accord with this section must be in a format that is publicly +documented (and with an implementation available to the public in +source code form), and must require no special password or key for +unpacking, reading or copying.

+ +

7. Additional Terms.

+ +

“Additional permissions” are terms that supplement the terms of this +License by making exceptions from one or more of its conditions. +Additional permissions that are applicable to the entire Program shall +be treated as though they were included in this License, to the extent +that they are valid under applicable law. If additional permissions +apply only to part of the Program, that part may be used separately +under those permissions, but the entire Program remains governed by +this License without regard to the additional permissions.

+ +

When you convey a copy of a covered work, you may at your option +remove any additional permissions from that copy, or from any part of +it. (Additional permissions may be written to require their own +removal in certain cases when you modify the work.) You may place +additional permissions on material, added by you to a covered work, +for which you have or can give appropriate copyright permission.

+ +

Notwithstanding any other provision of this License, for material you +add to a covered work, you may (if authorized by the copyright holders of +that material) supplement the terms of this License with terms:

+ +
    +
  • a) Disclaiming warranty or limiting liability differently from the + terms of sections 15 and 16 of this License; or
  • + +
  • b) Requiring preservation of specified reasonable legal notices or + author attributions in that material or in the Appropriate Legal + Notices displayed by works containing it; or
  • + +
  • c) Prohibiting misrepresentation of the origin of that material, or + requiring that modified versions of such material be marked in + reasonable ways as different from the original version; or
  • + +
  • d) Limiting the use for publicity purposes of names of licensors or + authors of the material; or
  • + +
  • e) Declining to grant rights under trademark law for use of some + trade names, trademarks, or service marks; or
  • + +
  • f) Requiring indemnification of licensors and authors of that + material by anyone who conveys the material (or modified versions of + it) with contractual assumptions of liability to the recipient, for + any liability that these contractual assumptions directly impose on + those licensors and authors.
  • +
+ +

All other non-permissive additional terms are considered “further +restrictions” within the meaning of section 10. If the Program as you +received it, or any part of it, contains a notice stating that it is +governed by this License along with a term that is a further +restriction, you may remove that term. If a license document contains +a further restriction but permits relicensing or conveying under this +License, you may add to a covered work material governed by the terms +of that license document, provided that the further restriction does +not survive such relicensing or conveying.

+ +

If you add terms to a covered work in accord with this section, you +must place, in the relevant source files, a statement of the +additional terms that apply to those files, or a notice indicating +where to find the applicable terms.

+ +

Additional terms, permissive or non-permissive, may be stated in the +form of a separately written license, or stated as exceptions; +the above requirements apply either way.

+ +

8. Termination.

+ +

You may not propagate or modify a covered work except as expressly +provided under this License. Any attempt otherwise to propagate or +modify it is void, and will automatically terminate your rights under +this License (including any patent licenses granted under the third +paragraph of section 11).

+ +

However, if you cease all violation of this License, then your +license from a particular copyright holder is reinstated (a) +provisionally, unless and until the copyright holder explicitly and +finally terminates your license, and (b) permanently, if the copyright +holder fails to notify you of the violation by some reasonable means +prior to 60 days after the cessation.

+ +

Moreover, your license from a particular copyright holder is +reinstated permanently if the copyright holder notifies you of the +violation by some reasonable means, this is the first time you have +received notice of violation of this License (for any work) from that +copyright holder, and you cure the violation prior to 30 days after +your receipt of the notice.

+ +

Termination of your rights under this section does not terminate the +licenses of parties who have received copies or rights from you under +this License. If your rights have been terminated and not permanently +reinstated, you do not qualify to receive new licenses for the same +material under section 10.

+ +

9. Acceptance Not Required for Having Copies.

+ +

You are not required to accept this License in order to receive or +run a copy of the Program. Ancillary propagation of a covered work +occurring solely as a consequence of using peer-to-peer transmission +to receive a copy likewise does not require acceptance. However, +nothing other than this License grants you permission to propagate or +modify any covered work. These actions infringe copyright if you do +not accept this License. Therefore, by modifying or propagating a +covered work, you indicate your acceptance of this License to do so.

+ +

10. Automatic Licensing of Downstream Recipients.

+ +

Each time you convey a covered work, the recipient automatically +receives a license from the original licensors, to run, modify and +propagate that work, subject to this License. You are not responsible +for enforcing compliance by third parties with this License.

+ +

An “entity transaction” is a transaction transferring control of an +organization, or substantially all assets of one, or subdividing an +organization, or merging organizations. If propagation of a covered +work results from an entity transaction, each party to that +transaction who receives a copy of the work also receives whatever +licenses to the work the party's predecessor in interest had or could +give under the previous paragraph, plus a right to possession of the +Corresponding Source of the work from the predecessor in interest, if +the predecessor has it or can get it with reasonable efforts.

+ +

You may not impose any further restrictions on the exercise of the +rights granted or affirmed under this License. For example, you may +not impose a license fee, royalty, or other charge for exercise of +rights granted under this License, and you may not initiate litigation +(including a cross-claim or counterclaim in a lawsuit) alleging that +any patent claim is infringed by making, using, selling, offering for +sale, or importing the Program or any portion of it.

+ +

11. Patents.

+ +

A “contributor” is a copyright holder who authorizes use under this +License of the Program or a work on which the Program is based. The +work thus licensed is called the contributor's “contributor version”.

+ +

A contributor's “essential patent claims” are all patent claims +owned or controlled by the contributor, whether already acquired or +hereafter acquired, that would be infringed by some manner, permitted +by this License, of making, using, or selling its contributor version, +but do not include claims that would be infringed only as a +consequence of further modification of the contributor version. For +purposes of this definition, “control” includes the right to grant +patent sublicenses in a manner consistent with the requirements of +this License.

+ +

Each contributor grants you a non-exclusive, worldwide, royalty-free +patent license under the contributor's essential patent claims, to +make, use, sell, offer for sale, import and otherwise run, modify and +propagate the contents of its contributor version.

+ +

In the following three paragraphs, a “patent license” is any express +agreement or commitment, however denominated, not to enforce a patent +(such as an express permission to practice a patent or covenant not to +sue for patent infringement). To “grant” such a patent license to a +party means to make such an agreement or commitment not to enforce a +patent against the party.

+ +

If you convey a covered work, knowingly relying on a patent license, +and the Corresponding Source of the work is not available for anyone +to copy, free of charge and under the terms of this License, through a +publicly available network server or other readily accessible means, +then you must either (1) cause the Corresponding Source to be so +available, or (2) arrange to deprive yourself of the benefit of the +patent license for this particular work, or (3) arrange, in a manner +consistent with the requirements of this License, to extend the patent +license to downstream recipients. “Knowingly relying” means you have +actual knowledge that, but for the patent license, your conveying the +covered work in a country, or your recipient's use of the covered work +in a country, would infringe one or more identifiable patents in that +country that you have reason to believe are valid.

+ +

If, pursuant to or in connection with a single transaction or +arrangement, you convey, or propagate by procuring conveyance of, a +covered work, and grant a patent license to some of the parties +receiving the covered work authorizing them to use, propagate, modify +or convey a specific copy of the covered work, then the patent license +you grant is automatically extended to all recipients of the covered +work and works based on it.

+ +

A patent license is “discriminatory” if it does not include within +the scope of its coverage, prohibits the exercise of, or is +conditioned on the non-exercise of one or more of the rights that are +specifically granted under this License. You may not convey a covered +work if you are a party to an arrangement with a third party that is +in the business of distributing software, under which you make payment +to the third party based on the extent of your activity of conveying +the work, and under which the third party grants, to any of the +parties who would receive the covered work from you, a discriminatory +patent license (a) in connection with copies of the covered work +conveyed by you (or copies made from those copies), or (b) primarily +for and in connection with specific products or compilations that +contain the covered work, unless you entered into that arrangement, +or that patent license was granted, prior to 28 March 2007.

+ +

Nothing in this License shall be construed as excluding or limiting +any implied license or other defenses to infringement that may +otherwise be available to you under applicable patent law.

+ +

12. No Surrender of Others' Freedom.

+ +

If conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot convey a +covered work so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you may +not convey it at all. For example, if you agree to terms that obligate you +to collect a royalty for further conveying from those to whom you convey +the Program, the only way you could satisfy both those terms and this +License would be to refrain entirely from conveying the Program.

+ +

13. Use with the GNU Affero General Public License.

+ +

Notwithstanding any other provision of this License, you have +permission to link or combine any covered work with a work licensed +under version 3 of the GNU Affero General Public License into a single +combined work, and to convey the resulting work. The terms of this +License will continue to apply to the part which is the covered work, +but the special requirements of the GNU Affero General Public License, +section 13, concerning interaction through a network will apply to the +combination as such.

+ +

14. Revised Versions of this License.

+ +

The Free Software Foundation may publish revised and/or new versions of +the GNU General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns.

+ +

Each version is given a distinguishing version number. If the +Program specifies that a certain numbered version of the GNU General +Public License “or any later version” applies to it, you have the +option of following the terms and conditions either of that numbered +version or of any later version published by the Free Software +Foundation. If the Program does not specify a version number of the +GNU General Public License, you may choose any version ever published +by the Free Software Foundation.

+ +

If the Program specifies that a proxy can decide which future +versions of the GNU General Public License can be used, that proxy's +public statement of acceptance of a version permanently authorizes you +to choose that version for the Program.

+ +

Later license versions may give you additional or different +permissions. However, no additional obligations are imposed on any +author or copyright holder as a result of your choosing to follow a +later version.

+ +

15. Disclaimer of Warranty.

+ +

THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY +APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT +HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM “AS IS” WITHOUT WARRANTY +OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, +THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM +IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF +ALL NECESSARY SERVICING, REPAIR OR CORRECTION.

+ +

16. Limitation of Liability.

+ +

IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS +THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY +GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE +USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF +DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD +PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), +EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF +SUCH DAMAGES.

+ +

17. Interpretation of Sections 15 and 16.

+ +

If the disclaimer of warranty and limitation of liability provided +above cannot be given local legal effect according to their terms, +reviewing courts shall apply local law that most closely approximates +an absolute waiver of all civil liability in connection with the +Program, unless a warranty or assumption of liability accompanies a +copy of the Program in return for a fee.

+ +

END OF TERMS AND CONDITIONS

+ +

How to Apply These Terms to Your New Programs

+ +

If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms.

+ +

To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +state the exclusion of warranty; and each file should have at least +the “copyright” line and a pointer to where the full notice is found.

+ +
    <one line to give the program's name and a brief idea of what it does.>
+    Copyright (C) <year>  <name of author>
+
+    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 3 of the License, 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, see <http://www.gnu.org/licenses/>.
+
+ +

Also add information on how to contact you by electronic and paper mail.

+ +

If the program does terminal interaction, make it output a short +notice like this when it starts in an interactive mode:

+ +
    <program>  Copyright (C) <year>  <name of author>
+    This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
+    This is free software, and you are welcome to redistribute it
+    under certain conditions; type `show c' for details.
+
+ +

The hypothetical commands `show w' and `show c' should show the appropriate +parts of the General Public License. Of course, your program's commands +might be different; for a GUI interface, you would use an “about box”.

+ +

You should also get your employer (if you work as a programmer) or school, +if any, to sign a “copyright disclaimer” for the program, if necessary. +For more information on this, and how to apply and follow the GNU GPL, see +<http://www.gnu.org/licenses/>.

+ +

The GNU General Public License does not permit incorporating your program +into proprietary programs. If your program is a subroutine library, you +may consider it more useful to permit linking proprietary applications with +the library. If this is what you want to do, use the GNU Lesser General +Public License instead of this License. But first, please read +<http://www.gnu.org/philosophy/why-not-lgpl.html>.

+ + diff --git a/gpl.txt b/gpl.txt new file mode 100644 index 0000000..94a9ed0 --- /dev/null +++ b/gpl.txt @@ -0,0 +1,674 @@ + GNU GENERAL PUBLIC LICENSE + Version 3, 29 June 2007 + + Copyright (C) 2007 Free Software Foundation, Inc. + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The GNU General Public License is a free, copyleft license for +software and other kinds of works. + + The licenses for most software and other practical works are designed +to take away your freedom to share and change the works. By contrast, +the GNU General Public License is intended to guarantee your freedom to +share and change all versions of a program--to make sure it remains free +software for all its users. We, the Free Software Foundation, use the +GNU General Public License for most of our software; it applies also to +any other work released this way by its authors. You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +them if you wish), that you receive source code or can get it if you +want it, that you can change the software or use pieces of it in new +free programs, and that you know you can do these things. + + To protect your rights, we need to prevent others from denying you +these rights or asking you to surrender the rights. Therefore, you have +certain responsibilities if you distribute copies of the software, or if +you modify it: responsibilities to respect the freedom of others. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must pass on to the recipients the same +freedoms that you received. You must make sure that they, too, receive +or can get the source code. And you must show them these terms so they +know their rights. + + Developers that use the GNU GPL protect your rights with two steps: +(1) assert copyright on the software, and (2) offer you this License +giving you legal permission to copy, distribute and/or modify it. + + For the developers' and authors' protection, the GPL clearly explains +that there is no warranty for this free software. For both users' and +authors' sake, the GPL requires that modified versions be marked as +changed, so that their problems will not be attributed erroneously to +authors of previous versions. + + Some devices are designed to deny users access to install or run +modified versions of the software inside them, although the manufacturer +can do so. This is fundamentally incompatible with the aim of +protecting users' freedom to change the software. The systematic +pattern of such abuse occurs in the area of products for individuals to +use, which is precisely where it is most unacceptable. Therefore, we +have designed this version of the GPL to prohibit the practice for those +products. If such problems arise substantially in other domains, we +stand ready to extend this provision to those domains in future versions +of the GPL, as needed to protect the freedom of users. + + Finally, every program is threatened constantly by software patents. +States should not allow patents to restrict development and use of +software on general-purpose computers, but in those that do, we wish to +avoid the special danger that patents applied to a free program could +make it effectively proprietary. To prevent this, the GPL assures that +patents cannot be used to render the program non-free. + + The precise terms and conditions for copying, distribution and +modification follow. + + TERMS AND CONDITIONS + + 0. Definitions. + + "This License" refers to version 3 of the GNU General Public License. + + "Copyright" also means copyright-like laws that apply to other kinds of +works, such as semiconductor masks. + + "The Program" refers to any copyrightable work licensed under this +License. Each licensee is addressed as "you". "Licensees" and +"recipients" may be individuals or organizations. + + To "modify" a work means to copy from or adapt all or part of the work +in a fashion requiring copyright permission, other than the making of an +exact copy. The resulting work is called a "modified version" of the +earlier work or a work "based on" the earlier work. + + A "covered work" means either the unmodified Program or a work based +on the Program. + + To "propagate" a work means to do anything with it that, without +permission, would make you directly or secondarily liable for +infringement under applicable copyright law, except executing it on a +computer or modifying a private copy. Propagation includes copying, +distribution (with or without modification), making available to the +public, and in some countries other activities as well. + + To "convey" a work means any kind of propagation that enables other +parties to make or receive copies. Mere interaction with a user through +a computer network, with no transfer of a copy, is not conveying. + + An interactive user interface displays "Appropriate Legal Notices" +to the extent that it includes a convenient and prominently visible +feature that (1) displays an appropriate copyright notice, and (2) +tells the user that there is no warranty for the work (except to the +extent that warranties are provided), that licensees may convey the +work under this License, and how to view a copy of this License. If +the interface presents a list of user commands or options, such as a +menu, a prominent item in the list meets this criterion. + + 1. Source Code. + + The "source code" for a work means the preferred form of the work +for making modifications to it. "Object code" means any non-source +form of a work. + + A "Standard Interface" means an interface that either is an official +standard defined by a recognized standards body, or, in the case of +interfaces specified for a particular programming language, one that +is widely used among developers working in that language. + + The "System Libraries" of an executable work include anything, other +than the work as a whole, that (a) is included in the normal form of +packaging a Major Component, but which is not part of that Major +Component, and (b) serves only to enable use of the work with that +Major Component, or to implement a Standard Interface for which an +implementation is available to the public in source code form. A +"Major Component", in this context, means a major essential component +(kernel, window system, and so on) of the specific operating system +(if any) on which the executable work runs, or a compiler used to +produce the work, or an object code interpreter used to run it. + + The "Corresponding Source" for a work in object code form means all +the source code needed to generate, install, and (for an executable +work) run the object code and to modify the work, including scripts to +control those activities. However, it does not include the work's +System Libraries, or general-purpose tools or generally available free +programs which are used unmodified in performing those activities but +which are not part of the work. For example, Corresponding Source +includes interface definition files associated with source files for +the work, and the source code for shared libraries and dynamically +linked subprograms that the work is specifically designed to require, +such as by intimate data communication or control flow between those +subprograms and other parts of the work. + + The Corresponding Source need not include anything that users +can regenerate automatically from other parts of the Corresponding +Source. + + The Corresponding Source for a work in source code form is that +same work. + + 2. Basic Permissions. + + All rights granted under this License are granted for the term of +copyright on the Program, and are irrevocable provided the stated +conditions are met. This License explicitly affirms your unlimited +permission to run the unmodified Program. The output from running a +covered work is covered by this License only if the output, given its +content, constitutes a covered work. This License acknowledges your +rights of fair use or other equivalent, as provided by copyright law. + + You may make, run and propagate covered works that you do not +convey, without conditions so long as your license otherwise remains +in force. You may convey covered works to others for the sole purpose +of having them make modifications exclusively for you, or provide you +with facilities for running those works, provided that you comply with +the terms of this License in conveying all material for which you do +not control copyright. Those thus making or running the covered works +for you must do so exclusively on your behalf, under your direction +and control, on terms that prohibit them from making any copies of +your copyrighted material outside their relationship with you. + + Conveying under any other circumstances is permitted solely under +the conditions stated below. Sublicensing is not allowed; section 10 +makes it unnecessary. + + 3. Protecting Users' Legal Rights From Anti-Circumvention Law. + + No covered work shall be deemed part of an effective technological +measure under any applicable law fulfilling obligations under article +11 of the WIPO copyright treaty adopted on 20 December 1996, or +similar laws prohibiting or restricting circumvention of such +measures. + + When you convey a covered work, you waive any legal power to forbid +circumvention of technological measures to the extent such circumvention +is effected by exercising rights under this License with respect to +the covered work, and you disclaim any intention to limit operation or +modification of the work as a means of enforcing, against the work's +users, your or third parties' legal rights to forbid circumvention of +technological measures. + + 4. Conveying Verbatim Copies. + + You may convey verbatim copies of the Program's source code as you +receive it, in any medium, provided that you conspicuously and +appropriately publish on each copy an appropriate copyright notice; +keep intact all notices stating that this License and any +non-permissive terms added in accord with section 7 apply to the code; +keep intact all notices of the absence of any warranty; and give all +recipients a copy of this License along with the Program. + + You may charge any price or no price for each copy that you convey, +and you may offer support or warranty protection for a fee. + + 5. Conveying Modified Source Versions. + + You may convey a work based on the Program, or the modifications to +produce it from the Program, in the form of source code under the +terms of section 4, provided that you also meet all of these conditions: + + a) The work must carry prominent notices stating that you modified + it, and giving a relevant date. + + b) The work must carry prominent notices stating that it is + released under this License and any conditions added under section + 7. This requirement modifies the requirement in section 4 to + "keep intact all notices". + + c) You must license the entire work, as a whole, under this + License to anyone who comes into possession of a copy. This + License will therefore apply, along with any applicable section 7 + additional terms, to the whole of the work, and all its parts, + regardless of how they are packaged. This License gives no + permission to license the work in any other way, but it does not + invalidate such permission if you have separately received it. + + d) If the work has interactive user interfaces, each must display + Appropriate Legal Notices; however, if the Program has interactive + interfaces that do not display Appropriate Legal Notices, your + work need not make them do so. + + A compilation of a covered work with other separate and independent +works, which are not by their nature extensions of the covered work, +and which are not combined with it such as to form a larger program, +in or on a volume of a storage or distribution medium, is called an +"aggregate" if the compilation and its resulting copyright are not +used to limit the access or legal rights of the compilation's users +beyond what the individual works permit. Inclusion of a covered work +in an aggregate does not cause this License to apply to the other +parts of the aggregate. + + 6. Conveying Non-Source Forms. + + You may convey a covered work in object code form under the terms +of sections 4 and 5, provided that you also convey the +machine-readable Corresponding Source under the terms of this License, +in one of these ways: + + a) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by the + Corresponding Source fixed on a durable physical medium + customarily used for software interchange. + + b) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by a + written offer, valid for at least three years and valid for as + long as you offer spare parts or customer support for that product + model, to give anyone who possesses the object code either (1) a + copy of the Corresponding Source for all the software in the + product that is covered by this License, on a durable physical + medium customarily used for software interchange, for a price no + more than your reasonable cost of physically performing this + conveying of source, or (2) access to copy the + Corresponding Source from a network server at no charge. + + c) Convey individual copies of the object code with a copy of the + written offer to provide the Corresponding Source. This + alternative is allowed only occasionally and noncommercially, and + only if you received the object code with such an offer, in accord + with subsection 6b. + + d) Convey the object code by offering access from a designated + place (gratis or for a charge), and offer equivalent access to the + Corresponding Source in the same way through the same place at no + further charge. You need not require recipients to copy the + Corresponding Source along with the object code. If the place to + copy the object code is a network server, the Corresponding Source + may be on a different server (operated by you or a third party) + that supports equivalent copying facilities, provided you maintain + clear directions next to the object code saying where to find the + Corresponding Source. Regardless of what server hosts the + Corresponding Source, you remain obligated to ensure that it is + available for as long as needed to satisfy these requirements. + + e) Convey the object code using peer-to-peer transmission, provided + you inform other peers where the object code and Corresponding + Source of the work are being offered to the general public at no + charge under subsection 6d. + + A separable portion of the object code, whose source code is excluded +from the Corresponding Source as a System Library, need not be +included in conveying the object code work. + + A "User Product" is either (1) a "consumer product", which means any +tangible personal property which is normally used for personal, family, +or household purposes, or (2) anything designed or sold for incorporation +into a dwelling. In determining whether a product is a consumer product, +doubtful cases shall be resolved in favor of coverage. For a particular +product received by a particular user, "normally used" refers to a +typical or common use of that class of product, regardless of the status +of the particular user or of the way in which the particular user +actually uses, or expects or is expected to use, the product. A product +is a consumer product regardless of whether the product has substantial +commercial, industrial or non-consumer uses, unless such uses represent +the only significant mode of use of the product. + + "Installation Information" for a User Product means any methods, +procedures, authorization keys, or other information required to install +and execute modified versions of a covered work in that User Product from +a modified version of its Corresponding Source. The information must +suffice to ensure that the continued functioning of the modified object +code is in no case prevented or interfered with solely because +modification has been made. + + If you convey an object code work under this section in, or with, or +specifically for use in, a User Product, and the conveying occurs as +part of a transaction in which the right of possession and use of the +User Product is transferred to the recipient in perpetuity or for a +fixed term (regardless of how the transaction is characterized), the +Corresponding Source conveyed under this section must be accompanied +by the Installation Information. But this requirement does not apply +if neither you nor any third party retains the ability to install +modified object code on the User Product (for example, the work has +been installed in ROM). + + The requirement to provide Installation Information does not include a +requirement to continue to provide support service, warranty, or updates +for a work that has been modified or installed by the recipient, or for +the User Product in which it has been modified or installed. Access to a +network may be denied when the modification itself materially and +adversely affects the operation of the network or violates the rules and +protocols for communication across the network. + + Corresponding Source conveyed, and Installation Information provided, +in accord with this section must be in a format that is publicly +documented (and with an implementation available to the public in +source code form), and must require no special password or key for +unpacking, reading or copying. + + 7. Additional Terms. + + "Additional permissions" are terms that supplement the terms of this +License by making exceptions from one or more of its conditions. +Additional permissions that are applicable to the entire Program shall +be treated as though they were included in this License, to the extent +that they are valid under applicable law. If additional permissions +apply only to part of the Program, that part may be used separately +under those permissions, but the entire Program remains governed by +this License without regard to the additional permissions. + + When you convey a copy of a covered work, you may at your option +remove any additional permissions from that copy, or from any part of +it. (Additional permissions may be written to require their own +removal in certain cases when you modify the work.) You may place +additional permissions on material, added by you to a covered work, +for which you have or can give appropriate copyright permission. + + Notwithstanding any other provision of this License, for material you +add to a covered work, you may (if authorized by the copyright holders of +that material) supplement the terms of this License with terms: + + a) Disclaiming warranty or limiting liability differently from the + terms of sections 15 and 16 of this License; or + + b) Requiring preservation of specified reasonable legal notices or + author attributions in that material or in the Appropriate Legal + Notices displayed by works containing it; or + + c) Prohibiting misrepresentation of the origin of that material, or + requiring that modified versions of such material be marked in + reasonable ways as different from the original version; or + + d) Limiting the use for publicity purposes of names of licensors or + authors of the material; or + + e) Declining to grant rights under trademark law for use of some + trade names, trademarks, or service marks; or + + f) Requiring indemnification of licensors and authors of that + material by anyone who conveys the material (or modified versions of + it) with contractual assumptions of liability to the recipient, for + any liability that these contractual assumptions directly impose on + those licensors and authors. + + All other non-permissive additional terms are considered "further +restrictions" within the meaning of section 10. If the Program as you +received it, or any part of it, contains a notice stating that it is +governed by this License along with a term that is a further +restriction, you may remove that term. If a license document contains +a further restriction but permits relicensing or conveying under this +License, you may add to a covered work material governed by the terms +of that license document, provided that the further restriction does +not survive such relicensing or conveying. + + If you add terms to a covered work in accord with this section, you +must place, in the relevant source files, a statement of the +additional terms that apply to those files, or a notice indicating +where to find the applicable terms. + + Additional terms, permissive or non-permissive, may be stated in the +form of a separately written license, or stated as exceptions; +the above requirements apply either way. + + 8. Termination. + + You may not propagate or modify a covered work except as expressly +provided under this License. Any attempt otherwise to propagate or +modify it is void, and will automatically terminate your rights under +this License (including any patent licenses granted under the third +paragraph of section 11). + + However, if you cease all violation of this License, then your +license from a particular copyright holder is reinstated (a) +provisionally, unless and until the copyright holder explicitly and +finally terminates your license, and (b) permanently, if the copyright +holder fails to notify you of the violation by some reasonable means +prior to 60 days after the cessation. + + Moreover, your license from a particular copyright holder is +reinstated permanently if the copyright holder notifies you of the +violation by some reasonable means, this is the first time you have +received notice of violation of this License (for any work) from that +copyright holder, and you cure the violation prior to 30 days after +your receipt of the notice. + + Termination of your rights under this section does not terminate the +licenses of parties who have received copies or rights from you under +this License. If your rights have been terminated and not permanently +reinstated, you do not qualify to receive new licenses for the same +material under section 10. + + 9. Acceptance Not Required for Having Copies. + + You are not required to accept this License in order to receive or +run a copy of the Program. Ancillary propagation of a covered work +occurring solely as a consequence of using peer-to-peer transmission +to receive a copy likewise does not require acceptance. However, +nothing other than this License grants you permission to propagate or +modify any covered work. These actions infringe copyright if you do +not accept this License. Therefore, by modifying or propagating a +covered work, you indicate your acceptance of this License to do so. + + 10. Automatic Licensing of Downstream Recipients. + + Each time you convey a covered work, the recipient automatically +receives a license from the original licensors, to run, modify and +propagate that work, subject to this License. You are not responsible +for enforcing compliance by third parties with this License. + + An "entity transaction" is a transaction transferring control of an +organization, or substantially all assets of one, or subdividing an +organization, or merging organizations. If propagation of a covered +work results from an entity transaction, each party to that +transaction who receives a copy of the work also receives whatever +licenses to the work the party's predecessor in interest had or could +give under the previous paragraph, plus a right to possession of the +Corresponding Source of the work from the predecessor in interest, if +the predecessor has it or can get it with reasonable efforts. + + You may not impose any further restrictions on the exercise of the +rights granted or affirmed under this License. For example, you may +not impose a license fee, royalty, or other charge for exercise of +rights granted under this License, and you may not initiate litigation +(including a cross-claim or counterclaim in a lawsuit) alleging that +any patent claim is infringed by making, using, selling, offering for +sale, or importing the Program or any portion of it. + + 11. Patents. + + A "contributor" is a copyright holder who authorizes use under this +License of the Program or a work on which the Program is based. The +work thus licensed is called the contributor's "contributor version". + + A contributor's "essential patent claims" are all patent claims +owned or controlled by the contributor, whether already acquired or +hereafter acquired, that would be infringed by some manner, permitted +by this License, of making, using, or selling its contributor version, +but do not include claims that would be infringed only as a +consequence of further modification of the contributor version. For +purposes of this definition, "control" includes the right to grant +patent sublicenses in a manner consistent with the requirements of +this License. + + Each contributor grants you a non-exclusive, worldwide, royalty-free +patent license under the contributor's essential patent claims, to +make, use, sell, offer for sale, import and otherwise run, modify and +propagate the contents of its contributor version. + + In the following three paragraphs, a "patent license" is any express +agreement or commitment, however denominated, not to enforce a patent +(such as an express permission to practice a patent or covenant not to +sue for patent infringement). To "grant" such a patent license to a +party means to make such an agreement or commitment not to enforce a +patent against the party. + + If you convey a covered work, knowingly relying on a patent license, +and the Corresponding Source of the work is not available for anyone +to copy, free of charge and under the terms of this License, through a +publicly available network server or other readily accessible means, +then you must either (1) cause the Corresponding Source to be so +available, or (2) arrange to deprive yourself of the benefit of the +patent license for this particular work, or (3) arrange, in a manner +consistent with the requirements of this License, to extend the patent +license to downstream recipients. "Knowingly relying" means you have +actual knowledge that, but for the patent license, your conveying the +covered work in a country, or your recipient's use of the covered work +in a country, would infringe one or more identifiable patents in that +country that you have reason to believe are valid. + + If, pursuant to or in connection with a single transaction or +arrangement, you convey, or propagate by procuring conveyance of, a +covered work, and grant a patent license to some of the parties +receiving the covered work authorizing them to use, propagate, modify +or convey a specific copy of the covered work, then the patent license +you grant is automatically extended to all recipients of the covered +work and works based on it. + + A patent license is "discriminatory" if it does not include within +the scope of its coverage, prohibits the exercise of, or is +conditioned on the non-exercise of one or more of the rights that are +specifically granted under this License. You may not convey a covered +work if you are a party to an arrangement with a third party that is +in the business of distributing software, under which you make payment +to the third party based on the extent of your activity of conveying +the work, and under which the third party grants, to any of the +parties who would receive the covered work from you, a discriminatory +patent license (a) in connection with copies of the covered work +conveyed by you (or copies made from those copies), or (b) primarily +for and in connection with specific products or compilations that +contain the covered work, unless you entered into that arrangement, +or that patent license was granted, prior to 28 March 2007. + + Nothing in this License shall be construed as excluding or limiting +any implied license or other defenses to infringement that may +otherwise be available to you under applicable patent law. + + 12. No Surrender of Others' Freedom. + + If conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot convey a +covered work so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you may +not convey it at all. For example, if you agree to terms that obligate you +to collect a royalty for further conveying from those to whom you convey +the Program, the only way you could satisfy both those terms and this +License would be to refrain entirely from conveying the Program. + + 13. Use with the GNU Affero General Public License. + + Notwithstanding any other provision of this License, you have +permission to link or combine any covered work with a work licensed +under version 3 of the GNU Affero General Public License into a single +combined work, and to convey the resulting work. The terms of this +License will continue to apply to the part which is the covered work, +but the special requirements of the GNU Affero General Public License, +section 13, concerning interaction through a network will apply to the +combination as such. + + 14. Revised Versions of this License. + + The Free Software Foundation may publish revised and/or new versions of +the GNU General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + + Each version is given a distinguishing version number. If the +Program specifies that a certain numbered version of the GNU General +Public License "or any later version" applies to it, you have the +option of following the terms and conditions either of that numbered +version or of any later version published by the Free Software +Foundation. If the Program does not specify a version number of the +GNU General Public License, you may choose any version ever published +by the Free Software Foundation. + + If the Program specifies that a proxy can decide which future +versions of the GNU General Public License can be used, that proxy's +public statement of acceptance of a version permanently authorizes you +to choose that version for the Program. + + Later license versions may give you additional or different +permissions. However, no additional obligations are imposed on any +author or copyright holder as a result of your choosing to follow a +later version. + + 15. Disclaimer of Warranty. + + THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY +APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT +HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY +OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, +THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM +IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF +ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + + 16. Limitation of Liability. + + IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS +THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY +GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE +USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF +DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD +PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), +EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF +SUCH DAMAGES. + + 17. Interpretation of Sections 15 and 16. + + If the disclaimer of warranty and limitation of liability provided +above cannot be given local legal effect according to their terms, +reviewing courts shall apply local law that most closely approximates +an absolute waiver of all civil liability in connection with the +Program, unless a warranty or assumption of liability accompanies a +copy of the Program in return for a fee. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +state the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + + Copyright (C) + + 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 3 of the License, 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, see . + +Also add information on how to contact you by electronic and paper mail. + + If the program does terminal interaction, make it output a short +notice like this when it starts in an interactive mode: + + Copyright (C) + This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'. + This is free software, and you are welcome to redistribute it + under certain conditions; type `show c' for details. + +The hypothetical commands `show w' and `show c' should show the appropriate +parts of the General Public License. Of course, your program's commands +might be different; for a GUI interface, you would use an "about box". + + You should also get your employer (if you work as a programmer) or school, +if any, to sign a "copyright disclaimer" for the program, if necessary. +For more information on this, and how to apply and follow the GNU GPL, see +. + + The GNU General Public License does not permit incorporating your program +into proprietary programs. If your program is a subroutine library, you +may consider it more useful to permit linking proprietary applications with +the library. If this is what you want to do, use the GNU Lesser General +Public License instead of this License. But first, please read +. diff --git a/kde/apps/kdisplay/color-schemes/openmamba_green.kcsrc b/kde/apps/kdisplay/color-schemes/openmamba_green.kcsrc new file mode 100644 index 0000000..f9a4393 --- /dev/null +++ b/kde/apps/kdisplay/color-schemes/openmamba_green.kcsrc @@ -0,0 +1,28 @@ +[Color Scheme] +Name=openmamba green +Name[it]=openmamba verde +activeBackground=77,185,10 +activeBlend=22,52,3 +activeForeground=255,255,255 +activeTitleBtnBg=127,158,200 +alternateBackground=238,246,255 +background=239,239,239 +buttonBackground=221,223,228 +buttonForeground=0,0,0 +contrast=7 +foreground=0,0,0 +frame=239,239,239 +handle=239,239,239 +inactiveBackground=157,170,186 +inactiveBlend=157,170,186 +inactiveForeground=221,221,221 +inactiveFrame=239,239,239 +inactiveHandle=239,239,239 +inactiveTitleBtnBg=167,181,199 +linkColor=41,98,6 +selectBackground=116,190,71 +selectForeground=255,255,255 +shadeSortColumn=true +visitedLinkColor=82,24,139 +windowBackground=255,255,255 +windowForeground=0,0,0 diff --git a/kde/apps/konqueror/profiles/resourcesbrowsing b/kde/apps/konqueror/profiles/resourcesbrowsing new file mode 100644 index 0000000..cba6a71 --- /dev/null +++ b/kde/apps/konqueror/profiles/resourcesbrowsing @@ -0,0 +1,25 @@ +[Profile] +Container0_Children=View1,Tabs2 +Container0_Orientation=Horizontal +Container0_SplitterSizes=30,100 +Container0_activeChildIndex=1 +Name=Resources Management +Name[it]=Risorse +Name[fr]=Ressources +RootItem=Container0 +Tabs2_Children=ViewT0 +Tabs2_activeChildIndex=0 +View1_LinkedView=false +View1_LockedLocation=false +View1_PassiveMode=true +View1_ServiceName=konq_sidebartng +View1_ServiceType=Browser/View +View1_ToggleView=true +View1_URL= +ViewT0_LinkedView=false +ViewT0_LockedLocation=false +ViewT0_PassiveMode=false +ViewT0_ServiceName=konq_iconview +ViewT0_ServiceType=inode/directory +ViewT0_ToggleView=false +ViewT0_URL=media:/ diff --git a/kde/apps/kthememanager/themes/openmamba-green/openmamba-green.preview.png b/kde/apps/kthememanager/themes/openmamba-green/openmamba-green.preview.png new file mode 100644 index 0000000000000000000000000000000000000000..1982bc725b6badaf823331d8c6f540c5c564fb51 GIT binary patch literal 145773 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%0A|` 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 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/kde/autostart/kmix.desktop b/kde/autostart/kmix.desktop new file mode 100644 index 0000000..e290520 --- /dev/null +++ b/kde/autostart/kmix.desktop @@ -0,0 +1,95 @@ +[Desktop Entry] +Encoding=UTF-8 +Exec=kmix -caption "%c" %i %m +DocPath=kmix/index.html +OnlyShowIn=KDE; +Path= +Type=Application +MimeType= +Terminal=false +Icon=kmix +GenericName=Sound Mixer +GenericName[af]=Klank Menger +GenericName[ar]=مازج الصوت +GenericName[bg]=Аудио миксер +GenericName[br]=Mesker ar Son +GenericName[bs]=Zvučni mikser +GenericName[ca]=Mesclador de so +GenericName[cs]=Zvukový směšovač +GenericName[cy]=Cymysgydd Sŵn +GenericName[da]=Lydmikser +GenericName[de]=Lautstärkeregler +GenericName[el]=Μείκτης ήχου +GenericName[eo]=Sonormiksilo +GenericName[es]=Un mezclador audio +GenericName[et]=Helimikser +GenericName[eu]=Soinu nahasgailua +GenericName[fa]=مخلوط‌کن صدا +GenericName[fi]=Äänimikseri +GenericName[fr]=Console de mixage +GenericName[ga]=Meascthóir Fuaime +GenericName[gl]=Mesturador de Son +GenericName[he]=מערבל צליל +GenericName[hi]=ध्वनि मिक्सर +GenericName[hr]=Mikser zvuka +GenericName[hu]=Hangkeverő +GenericName[is]=Hljóðblöndun +GenericName[it]=Mixer audio +GenericName[ja]=サウンドミキサー +GenericName[kk]=Дыбыс микшері +GenericName[km]=កម្មវិធី​លាយ​សំឡេង +GenericName[ko]=소리 믹서 +GenericName[lt]=Garsų maišiklis +GenericName[lv]=Skaņas Mikšeris +GenericName[mk]=Миксета за звук +GenericName[ms]=Pengadun Bunyi +GenericName[nb]=Lydmikser +GenericName[nds]=Klangmischer +GenericName[ne]=ध्वनि मिक्सर +GenericName[nl]=Geluidsmixer +GenericName[nn]=Lydmiksar +GenericName[pa]=ਧੁਨੀ ਮਿਕਸਰ +GenericName[pl]=Ustawienia głośności +GenericName[pt]=Mesa de Mistura de Áudio +GenericName[pt_BR]=Mixagem de som +GenericName[ro]=Mixer de sunet +GenericName[ru]=Звуковой микшер +GenericName[se]=Jietnamixer +GenericName[sk]=Zvukový mixér +GenericName[sl]=Mešalnik zvoka +GenericName[sr]=Звучна миксета +GenericName[sr@Latn]=Zvučna mikseta +GenericName[sv]=Ljudmixer +GenericName[ta]=ஒலி ஒன்றுசேர்ப்பான் +GenericName[tg]=Омехтакунаки Овоз +GenericName[th]=โปรแกรมผสมเสียง +GenericName[tr]=Ses Denetimleri +GenericName[uk]=Аудіомікшер +GenericName[uz]=Аудио миксер +GenericName[ven]=Tshitanganisi tsha mubvumo +GenericName[wa]=Maxheu d' sons +GenericName[xh]=Umxubi WokuvakalayoU +GenericName[zh_CN]=混音器 +GenericName[zh_HK]=聲音混音器 +GenericName[zh_TW]=音效混音器 +GenericName[zu]=Umxubi Womsindo +Name=KMix +Name[af]=Kmix +Name[bn]=কে-মিক্স +Name[ca]=Kmix +Name[eo]=Miksilo +Name[hi]=के-मिक्स +Name[lv]=KMiks +Name[ne]=केडीई मिक्स +Name[pa]=ਕੇ-ਮਿਕਸ +Name[sv]=Kmix +Name[ta]=கேமிக்ஸ் +Name[tg]=KОмезиш +Name[ven]=U tanganisa ha K +Name[zh_TW]=KMix 混音器 +X-KDE-StartupNotify=true +X-DCOP-ServiceType=Unique +X-KDE-autostart-phase=2 +X-KDE-autostart-after=panel +X-KDE-autostart-condition=kmixrc::Autostart:true +Categories=Qt;KDE;AudioVideo;Audio;Mixer; diff --git a/kde/bin/konsole-nofork b/kde/bin/konsole-nofork new file mode 100755 index 0000000..984d61b --- /dev/null +++ b/kde/bin/konsole-nofork @@ -0,0 +1,66 @@ +#!/bin/bash +# +# kons — Work-around KDE 4 / Konsole asynchronous silliness +# +# Version 2009.01-blf (YYYY.MM-INITIALS). # Created by Brian Foster +# Released under the GPL. # # KDE 4 / Konsole is asynchronous. That is, ‘konsole -e COMMAND’ exits +# immediately instead of when the terminal session completes (as was +# the case in KDE 3, and still is the case with other terminaks, such +# as xterm(1)). Consequently, it's hard to determine when +# completes, which is something that is often required (e.g., when +# is an “external editor” for Kmail or similar). +# +# In theory, the ‘--nofork’ option prevents this, but that's unreliable, +# often resulting in the opaque complaint (the ‘4763’ is the PID of some +# process (not sure what process?)): +# +# (4763)/: KUniqueApplication: Can't setup D-Bus service. Probably already running. +# +# Hence this script, which attempts to run Konsole synchronously. +# The usage is (intended to be) identical to Konsole. The script does +# not exit until the exits. Furthermore, the exit status is +# nominally that of . Hence, instead of: +# +# konsole -e COMMAND # # simply using (