[izpack-changes] r1619 - in izpack-src/trunk: . bin/langpacks/flags bin/langpacks/installer src src/dist-files src/doc-ng/XHTML src/lib/com/izforge/izpack/compiler src/lib/com/izforge/izpack/installer src/lib/com/izforge/izpack/panels src/lib/com/izforge/izpack/uninstaller src/lib/com/izforge/izpack/util/os src/lib/com/izforge/izpack/util/os/unix src/tests/com/izforge/izpack
noreply at berlios.de
noreply at berlios.de
Mon Sep 25 07:03:51 CEST 2006
Author: jponge
Date: 2006-09-25 07:03:12 +0200 (Mon, 25 Sep 2006)
New Revision: 1619
Added:
izpack-src/trunk/bin/langpacks/flags/ind.gif
izpack-src/trunk/bin/langpacks/installer/ind.xml
izpack-src/trunk/src/dist-files/splash-3.8.png
izpack-src/trunk/src/dist-files/splash-3.9.png
Removed:
izpack-src/trunk/src/dist-files/splash-sydney.png
izpack-src/trunk/src/doc/
Modified:
izpack-src/trunk/.cvsignore
izpack-src/trunk/.project
izpack-src/trunk/IzPack-head.iml
izpack-src/trunk/IzPack-head.ipr
izpack-src/trunk/Versions.txt
izpack-src/trunk/bin/langpacks/installer/fra.xml
izpack-src/trunk/bin/langpacks/installer/ned.xml
izpack-src/trunk/src/ant.properties
izpack-src/trunk/src/build.xml
izpack-src/trunk/src/dist-files/IzPack-install.xml
izpack-src/trunk/src/dist-files/Unix_shortcutSpec.xml
izpack-src/trunk/src/dist-files/shortcutSpec.xml
izpack-src/trunk/src/doc-ng/XHTML/node4.html
izpack-src/trunk/src/lib/com/izforge/izpack/compiler/Compiler.java
izpack-src/trunk/src/lib/com/izforge/izpack/installer/InstallerFrame.java
izpack-src/trunk/src/lib/com/izforge/izpack/installer/UninstallData.java
izpack-src/trunk/src/lib/com/izforge/izpack/panels/ShortcutPanel.java
izpack-src/trunk/src/lib/com/izforge/izpack/panels/ShortcutPanelAutomationHelper.java
izpack-src/trunk/src/lib/com/izforge/izpack/uninstaller/Destroyer.java
izpack-src/trunk/src/lib/com/izforge/izpack/util/os/Shortcut.java
izpack-src/trunk/src/lib/com/izforge/izpack/util/os/Unix_Shortcut.java
izpack-src/trunk/src/lib/com/izforge/izpack/util/os/unix/ShellScript.java
izpack-src/trunk/src/tests/com/izforge/izpack/Bin_Langpacks_InstallerTest.java
Log:
Merged from branch-3.9 r1578:1617
Modified: izpack-src/trunk/.cvsignore
===================================================================
--- izpack-src/trunk/.cvsignore 2006-09-25 04:19:33 UTC (rev 1618)
+++ izpack-src/trunk/.cvsignore 2006-09-25 05:03:12 UTC (rev 1619)
@@ -1,3 +1,4 @@
_build
_dist
eclipse-bin
+_src_dist
\ No newline at end of file
Modified: izpack-src/trunk/.project
===================================================================
--- izpack-src/trunk/.project 2006-09-25 04:19:33 UTC (rev 1618)
+++ izpack-src/trunk/.project 2006-09-25 05:03:12 UTC (rev 1619)
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
- <name>IzPack3-head</name>
+ <name>IzPack3-3.9Branch</name>
<comment></comment>
<projects>
</projects>
Modified: izpack-src/trunk/IzPack-head.iml
===================================================================
--- izpack-src/trunk/IzPack-head.iml 2006-09-25 04:19:33 UTC (rev 1618)
+++ izpack-src/trunk/IzPack-head.iml 2006-09-25 05:03:12 UTC (rev 1619)
@@ -9,6 +9,8 @@
<sourceFolder url="file://$MODULE_DIR$/src/tests" isTestSource="true" />
<excludeFolder url="file://$MODULE_DIR$/_build" />
<excludeFolder url="file://$MODULE_DIR$/_dist" />
+ <excludeFolder url="file://$MODULE_DIR$/doc/izpack" />
+ <excludeFolder url="file://$MODULE_DIR$/doc/izpack/javadoc" />
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
Modified: izpack-src/trunk/IzPack-head.ipr
===================================================================
--- izpack-src/trunk/IzPack-head.ipr 2006-09-25 04:19:33 UTC (rev 1618)
+++ izpack-src/trunk/IzPack-head.ipr 2006-09-25 05:03:12 UTC (rev 1619)
@@ -188,7 +188,7 @@
<module fileurl="file://$PROJECT_DIR$/IzPack-head.iml" filepath="$PROJECT_DIR$/IzPack-head.iml" />
</modules>
</component>
- <component name="ProjectRootManager" version="2" assert-keyword="true" jdk-15="false" project-jdk-name="1.5.0_05" />
+ <component name="ProjectRootManager" version="2" assert-keyword="true" jdk-15="false" project-jdk-name="1.5" />
<component name="RmicSettings">
<option name="IS_EANABLED" value="false" />
<option name="DEBUGGING_INFO" value="true" />
Modified: izpack-src/trunk/Versions.txt
===================================================================
--- izpack-src/trunk/Versions.txt 2006-09-25 04:19:33 UTC (rev 1618)
+++ izpack-src/trunk/Versions.txt 2006-09-25 05:03:12 UTC (rev 1619)
@@ -1,6 +1,10 @@
[ The list of the different public versions of IzPack ]
- > 3.9.0 (build 2006.mm.dd)
+ > 3.9.0 (build 2006.09.25)
+- Fix Accents In French Langpack (Fabrice Mirabile)
+- Update French Langpack (Julien Ponge)
+- New Indonesian Langpack (Hans Aikema, thanks to Thomas Edwin Santosa)
+- Updated Dutch Langpack (Hans Aikema)
- Fix for ComboBox in SearchField of UserInputPanel returning
java.lang.reflect.InvocationTargetException
if no options added.(Fabrice Mirabile, thanks to Oliver Kiddle)
@@ -13,7 +17,7 @@
- Spanish langpack update (Cesar Martinez Izquierdo).
- New Polish langpack (Fabrice Mirabile, thanks to Radek)
- Fixed the createPWD.sh (Fabrice Mirabile, thanks to Radek)
-- Workaround for crashes at end of installation with java VM version
+- Workaround for crashes at end of installation with Java VM version
1.5 (also known as 5.0) (Klaus Bartz).
- Updated russian langpack (Fabrice Mirabile)
- Fixed indent of ShortcutPanels Headline (Marc Eppelmann)
@@ -58,6 +62,7 @@
Alex Pinkin @JBoss/RedHat, via Julien Ponge).
- Variable substitution in the description-elements of the PacksPanel (Dennis Reil, via
Julien Ponge).
+- Added a src.tar.gz target in the build.xml to create a IzPack.src.tar.gz (Marc Eppelmann)
> 3.8.1 (build 2006.01.06)
- Added Greek language support (Fabrice Mirabile, thanks to Panayotis
Copied: izpack-src/trunk/bin/langpacks/flags/ind.gif (from rev 1617, izpack-src/branches/branch-3.9/bin/langpacks/flags/ind.gif)
Modified: izpack-src/trunk/bin/langpacks/installer/fra.xml
===================================================================
--- izpack-src/trunk/bin/langpacks/installer/fra.xml 2006-09-25 04:19:33 UTC (rev 1618)
+++ izpack-src/trunk/bin/langpacks/installer/fra.xml 2006-09-25 05:03:12 UTC (rev 1619)
@@ -175,10 +175,32 @@
<str id="functionFailed.RegOpenKeyEx" txt="Impossible d'ouvrir la clé de registre {0}\\{1}."/>
<!-- CheckedHelloPanel strings -->
- <str id="CheckedHelloPanel.productAlreadyExist0" txt="Ce logiciel est déjà installe depuis le chemin "/>
+ <str id="CheckedHelloPanel.productAlreadyExist0" txt="Ce logiciel est déjà installé depuis le chemin "/>
<str id="CheckedHelloPanel.productAlreadyExist1" txt=" . Etes-vous certain de vouloir installer une autre entité ?" />
<str id="CheckedHelloPanel.infoOverUninstallKey" txt="La clé de désinstallation sera : " />
+ <!-- Headlines -->
+ <str id="CheckedHelloPanel.headline" txt="Bienvenue" />
+ <str id="CompilePanel.headline" txt="Compiler les sources Java" />
+ <str id="ConditionalUserInputPanel.headline" txt="Données utilisateur" />
+ <str id="ExtendedInstallPanel.headline" txt="Installation et Configuration" />
+ <str id="FinishPanel.headline" txt="Installation Terminée" />
+ <str id="HTMLInfoPanel.headline" txt="Informations" />
+ <str id="HTMLLicencePanel.headline" txt="Accords de Licence" />
+ <str id="HelloPanel.headline" txt="Bienvenue" />
+ <str id="ImgPacksPanel.headline" txt="Sélection des paquets à installer" />
+ <str id="InfoPanel.headline" txt="Informations" />
+ <str id="InstallPanel.headline" txt="Installation" />
+ <str id="JDKPathPanel.extendedIntro" txt="La version installée de l'application nécessite un JDK entre la version ${JDKPathPanel.minVersion} et la version ${JDKPathPanel.maxVersion}. Un environnement d'execution Java (JRE) ne sera pas suffisant." />
+ <str id="JDKPathPanel.headline" txt="Chemin du JDK" />
+ <str id="LicencePanel.headline" txt="Accords de Licence" />
+ <str id="PacksPanel.headline" txt="Sélection des paquets à installer" />
+ <str id="ProcessPanel.headline" txt="Execution de processus externes" />
+ <str id="SimpleFinishPanel.headline" txt="Installation Terminée" />
+ <str id="SummaryPanel.headline" txt="Résumé des données de configuration" />
+ <str id="TargetPanel.headline" txt="Chemin d'installation" />
+ <str id="UserInputPanel.headline" txt="Données utilisateur" />
+
<!-- Add your own panels specific strings here if you need -->
</langpack>
Copied: izpack-src/trunk/bin/langpacks/installer/ind.xml (from rev 1617, izpack-src/branches/branch-3.9/bin/langpacks/installer/ind.xml)
Modified: izpack-src/trunk/bin/langpacks/installer/ned.xml
===================================================================
--- izpack-src/trunk/bin/langpacks/installer/ned.xml 2006-09-25 04:19:33 UTC (rev 1618)
+++ izpack-src/trunk/bin/langpacks/installer/ned.xml 2006-09-25 05:03:12 UTC (rev 1619)
@@ -4,202 +4,268 @@
<langpack>
<!-- Heading messages START -->
- <str id="CheckedHelloPanel.headline" txt="Welkom"/>
- <str id="CompilePanel.headline" txt="Compileer Java Sources"/>
- <str id="ConditionalUserInputPanel.headline" txt="Invoer gebruiker gegevens"/>
- <str id="ExtendedInstallPanel.headline" txt="Installatie en Configuratie"/>
- <str id="FinishPanel.headline" txt="Installatie Gereed"/>
- <str id="HelloPanel.headline" txt="Welkom"/>
- <str id="HTMLInfoPanel.headline" txt="Informatie"/>
- <str id="HTMLLicencePanel.headline" txt="Licentieovereenkomst"/>
- <str id="ImgPacksPanel.headline" txt="Selecteer Installatie pakketten"/>
- <str id="InfoPanel.headline" txt="Informatie"/>
- <str id="InstallPanel.headline" txt="Installatie"/>
- <str id="JDKPathPanel.headline" txt="Instellen JDK pad"/>
- <str id="LicencePanel.headline" txt="Licentieovereenkomst"/>
- <str id="PacksPanel.headline" txt="Selecteer Installatie Pakketten"/>
- <str id="ProcessPanel.headline" txt="Uitvoeren externe programma's"/>
- <str id="ShortcutPanel.headline" txt="Aanmaken Snelkoppelingen"/>
- <str id="SimpleFinishPanel.headline" txt="Installatie Gereed"/>
- <str id="SummaryPanel.headline" txt="Overzicht van Installatie en Configuratiegegevens"/>
- <str id="TargetPanel.headline" txt="Instellen Installatie locatie"/>
- <str id="UserInputPanel.headline" txt="Invoer gebruiker gegevens"/>
+ <str id="CheckedHelloPanel.headline" txt="Welkom" />
+ <str id="CompilePanel.headline" txt="Compileer Java Sources" />
+ <str id="ConditionalUserInputPanel.headline"
+ txt="Gebruikersgegevens" />
+ <str id="ExtendedInstallPanel.headline"
+ txt="Installatie en Configuratie" />
+ <str id="FinishPanel.headline" txt="Installatie Gereed" />
+ <str id="HelloPanel.headline" txt="Welkom" />
+ <str id="HTMLInfoPanel.headline" txt="Informatie" />
+ <str id="HTMLLicencePanel.headline" txt="Licentieovereenkomst" />
+ <str id="ImgPacksPanel.headline"
+ txt="Selecteer Installatie pakketten" />
+ <str id="InfoPanel.headline" txt="Informatie" />
+ <str id="InstallPanel.headline" txt="Installatie" />
+ <str id="JDKPathPanel.headline" txt="JDK pad" />
+ <str id="LicencePanel.headline" txt="Licentieovereenkomst" />
+ <str id="PacksPanel.headline" txt="Selecteer Installatie Pakketten" />
+ <str id="ProcessPanel.headline" txt="Uitvoeren externe programma's" />
+ <str id="ShortcutPanel.headline" txt="Snelkoppelingen" />
+ <str id="SimpleFinishPanel.headline" txt="Installatie Gereed" />
+ <str id="SummaryPanel.headline"
+ txt="Overzicht configuratie gegevens" />
+ <str id="TargetPanel.headline" txt="Installatie pad" />
+ <str id="UserInputPanel.headline" txt="Gebruikersgegevens" />
<!-- General installer strings -->
- <str id="installer.title" txt="IzPack - Installatie van "/>
- <str id="installer.next" txt="Verder"/>
- <str id="installer.prev" txt="Terug"/>
- <str id="installer.quit" txt="Afsluiten"/>
- <str id="installer.madewith" txt="(Installatie gemaakt met IzPack - http://www.izforge.com/)"/>
- <str id="installer.quit.title" txt="Weet u zeker dat u wilt afsluiten?"/>
- <str id="installer.quit.message" txt="Dit zal de installatie afbreken"/>
- <str id="installer.warning" txt="Waarschuwing !"/>
- <str id="installer.yes" txt="Ja"/>
- <str id="installer.no" txt="Nee"/>
- <str id="installer.cancel" txt="Annuleer"/>
- <str id="installer.error" txt="Fout"/>
- <str id="installer.help" txt="Help"/>
- <str id="installer.step" txt="Stap"/>
- <str id="installer.of" txt="van"/>
-
-
+ <str id="installer.title" txt="IzPack - Installatie van " />
+ <str id="installer.next" txt="Verder" />
+ <str id="installer.prev" txt="Terug" />
+ <str id="installer.quit" txt="Afsluiten" />
+ <str id="installer.madewith"
+ txt="(Installatie gemaakt met IzPack - http://www.izforge.com/)" />
+ <str id="installer.quit.title"
+ txt="Weet u zeker dat u wilt afsluiten?" />
+ <str id="installer.quit.message"
+ txt="Dit zal de installatie afbreken" />
+ <str id="installer.warning" txt="Waarschuwing !" />
+ <str id="installer.yes" txt="Ja" />
+ <str id="installer.no" txt="Nee" />
+ <str id="installer.cancel" txt="Annuleer" />
+ <str id="installer.error" txt="Fout" />
+ <str id="installer.help" txt="Help" />
+ <str id="installer.step" txt="Stap" />
+ <str id="installer.of" txt="van" />
+
+
<!-- Uninstaller specific strings -->
- <str id="uninstaller.warning" txt="Dit zal de geïnstalleerde programma(s) verwijderen !"/>
- <str id="uninstaller.destroytarget" txt=" Forceer het verwijderen van "/>
- <str id="uninstaller.uninstall" txt="Deïnstalleer"/>
+ <str id="uninstaller.warning"
+ txt="Dit zal de geïnstalleerde programma(s) verwijderen !" />
+ <str id="uninstaller.destroytarget"
+ txt=" Forceer het verwijderen van " />
+ <str id="uninstaller.uninstall" txt="Deïnstalleer" />
<!-- The strings for the 'official' IzPack plugins -->
- <str id="HelloPanel.welcome1" txt="Welkom bij de installatie van "/>
- <str id="HelloPanel.welcome2" txt=" !"/>
- <str id="HelloPanel.authors" txt="Deze software is ontwikkeld door : "/>
- <str id="HelloPanel.url" txt="De homepagina staat op : "/>
+ <str id="HelloPanel.welcome1" txt="Welkom bij de installatie van " />
+ <str id="HelloPanel.welcome2" txt=" !" />
+ <str id="HelloPanel.authors"
+ txt="Deze software is ontwikkeld door : " />
+ <str id="HelloPanel.url" txt="De homepagina staat op : " />
- <str id="PrinterSelectPanel.select_printer" txt="Selecteer een printer." />
+ <str id="PrinterSelectPanel.select_printer"
+ txt="Selecteer een printer." />
- <str id="CheckedHelloPanel.productAlreadyExist0" txt="Dit product is al geinstalleerd op deze computer in de map "/>
- <str id="CheckedHelloPanel.productAlreadyExist1" txt=" . Weet u zeker dat u een extra versie wilt installeren?"/>
- <str id="CheckedHelloPanel.infoOverUninstallKey" txt="De de-installatie zal als naam krijgen: " />
+ <str id="CheckedHelloPanel.productAlreadyExist0"
+ txt="Dit product is al geinstalleerd op deze computer in de map " />
+ <str id="CheckedHelloPanel.productAlreadyExist1"
+ txt=" . Weet u zeker dat u een extra versie wilt installeren?" />
+ <str id="CheckedHelloPanel.infoOverUninstallKey"
+ txt="De de-installatie zal als naam krijgen: " />
- <str id="LicencePanel.info" txt="Lees a.u.b. de volgende licentie overeenkomst :"/>
- <str id="LicencePanel.agree" txt="Ik accepteer de voorwaarden van deze licentie"/>
- <str id="LicencePanel.notagree" txt="Ik accepteer de voorwaarden van deze licentie niet"/>
- <str id="LicencePanel.yes" txt="Ja"/>
- <str id="LicencePanel.no" txt="Nee"/>
-
- <str id="InfoPanel.info" txt="Lees a.u.b. de volgende informatie :"/>
-
- <str id="PathInputPanel.required" txt="De gekozen map moet reeds bestaan."/>
- <str id="PathInputPanel.notValid" txt="De gekozen map bevat niet het vereiste product."/>
+ <str id="LicencePanel.info"
+ txt="Lees a.u.b. de volgende licentie overeenkomst :" />
+ <str id="LicencePanel.agree"
+ txt="Ik accepteer de voorwaarden van deze licentie" />
+ <str id="LicencePanel.notagree"
+ txt="Ik accepteer de voorwaarden van deze licentie niet" />
+ <str id="LicencePanel.yes" txt="Ja" />
+ <str id="LicencePanel.no" txt="Nee" />
- <str id="TargetPanel.info" txt="Selecteer de installatiemap:"/>
- <str id="TargetPanel.browse" txt="Bladeren ..."/>
- <str id="TargetPanel.warn"
- txt="Deze map bestaat al. Wilt u doorgaan en het risico lopen dat bestanden worden overschreven?"/>
+ <str id="InfoPanel.info" txt="Lees a.u.b. de volgende informatie :" />
+
+ <str id="PathInputPanel.required"
+ txt="De gekozen map moet reeds bestaan." />
+ <str id="PathInputPanel.notValid"
+ txt="De gekozen map bevat niet het vereiste product." />
+
+ <str id="TargetPanel.info" txt="Selecteer de installatiemap:" />
+ <str id="TargetPanel.browse" txt="Bladeren ..." />
+ <str id="TargetPanel.warn"
+ txt="Deze map bestaat al. Wilt u doorgaan en het risico lopen dat bestanden worden overschreven?" />
<str id="TargetPanel.empty_target"
- txt="U heeft geen installatiemap ingevuld. Wilt u toch doorgaan?"/>
- <str id="TargetPanel.createdir" txt="de installatiemap zal worden aangemaakt :" />
- <str id="TargetPanel.nodir"
- txt="Uw keuze is geen map! Kies s.v.p. een map!"/>
- <str id="TargetPanel.notwritable"
- txt="Schrijven in deze map niet mogelijk! Kies s.v.p. een andere map!"/>
-
- <str id="JDKPathPanel.extendedIntro" txt="Het programma heeft een Java Development Kit (JDK) met een versienummer tussen ${JDKPathPanel.minVersion} en ${JDKPathPanel.maxVersion}. Een Java Runtime Environment (JRE) is niet voldoende."/>
- <str id="JDKPathPanel.intro" txt="Het programma heeft een JDK nodig. Een Java Runtime omgeving (JRE) zal niet voldoende zijn."/>
- <str id="JDKPathPanel.info" txt="Selecteer het JDK pad:"/>
- <str id="JDKPathPanel.badVersion1" txt="De JDK van uw keuze heeft een verkeerde versie (beschikbaar: "/>
- <str id="JDKPathPanel.badVersion2" txt=" vereist: "/>
- <str id="JDKPathPanel.badVersion3" txt=") wilt u toch deze JDK gebruiken?"/>
+ txt="U heeft geen installatiemap ingevuld. Wilt u toch doorgaan?" />
+ <str id="TargetPanel.createdir"
+ txt="de installatiemap zal worden aangemaakt :" />
+ <str id="TargetPanel.nodir"
+ txt="Uw keuze is geen map! Kies s.v.p. een map!" />
+ <str id="TargetPanel.notwritable"
+ txt="Schrijven in deze map niet mogelijk! Kies s.v.p. een andere map!" />
- <str id="PacksPanel.info" txt="Selecteer de pakketten die u wilt installeren :"/>
- <str id="PacksPanel.tip" txt="NB: Uitgegrijsde pakketten zijn verplicht."/>
- <str id="PacksPanel.space" txt="Totaal benodigde ruimte: "/>
- <str id="PacksPanel.freespace" txt="Beschikbare ruimte: "/>
- <str id="PacksPanel.description" txt="Omschrijving"/>
- <str id="PacksPanel.dependencyList" txt="Het geselecteerde pakket vereist installatie van de volgende pakketten"/>
- <str id="PacksPanel.notEnoughSpace" txt="Schijfruimte nodig voor installatie overtreft beschikbare schijfruimte."/>
- <str id="PacksPanel.notAscertainable" txt="niet vast te stellen"/>
-
- <str id="InstallPanel.info" txt="Klik 'Installeer' om de installatie te beginnen."/>
- <str id="InstallPanel.install" txt="Installeer !"/>
- <str id="InstallPanel.tip" txt="Pakket installatie voortgang:"/>
- <str id="InstallPanel.begin" txt="[Niks]"/>
- <str id="InstallPanel.finished" txt="[Klaar]"/>
- <str id="InstallPanel.progress" txt="Voortgang installatieprocedure:"/>
- <str id="InstallPanel.overwrite.title" txt="Bestand bestaat al"/>
- <str id="InstallPanel.overwrite.question" txt="Het volgende bestand bestaat al. Moet het worden overschreven?"/>
-
- <str id="FinishPanel.success" txt="Installatie is geslaagd."/>
- <str id="FinishPanel.done" txt="Gereed"/>
- <str id="FinishPanel.fail" txt="Installatie is mislukt!"/>
- <str id="FinishPanel.uninst.info" txt="Een deïnstallatie programma is geïnstalleerd in:"/>
- <str id="FinishPanel.auto" txt="Maak een automatisch installatie-script."/>
- <str id="FinishPanel.auto.tip"
- txt="Gebruik dit script om de installatie te herhalen op andere computers."/>
-
- <str id="ImgPacksPanel.packs" txt="The volgende pakketten zijn beschikbaar :"/>
- <str id="ImgPacksPanel.snap" txt="Pakket schermafdruk:"/>
- <str id="ImgPacksPanel.checkbox" txt=" Installeer dit pakket"/>
- <str id="ImgPacksPanel.dependencyList" txt="Afhankelijkheden"/>
+ <str id="JDKPathPanel.extendedIntro"
+ txt="Het programma heeft een Java Development Kit (JDK) met een versienummer tussen ${JDKPathPanel.minVersion} en ${JDKPathPanel.maxVersion}. Een Java Runtime Environment (JRE) is niet voldoende." />
+ <str id="JDKPathPanel.intro"
+ txt="Het programma heeft een JDK nodig. Een Java Runtime omgeving (JRE) zal niet voldoende zijn." />
+ <str id="JDKPathPanel.info" txt="Selecteer het JDK pad:" />
+ <str id="JDKPathPanel.badVersion1"
+ txt="De JDK van uw keuze heeft een verkeerde versie (beschikbaar: " />
+ <str id="JDKPathPanel.badVersion2" txt=" vereist: " />
+ <str id="JDKPathPanel.badVersion3"
+ txt=") wilt u toch deze JDK gebruiken?" />
- <str id="ShortcutPanel.headline" txt="Instellen snelkoppelingen"/>
- <str id="ShortcutPanel.regular.list" txt="Selecteer een programma groep voor de snelkoppelingen:"/>
- <str id="ShortcutPanel.regular.default" txt="Standaardwaarde"/>
- <str id="ShortcutPanel.regular.desktop" txt="Maak snelkoppelingen op de desktop."/>
- <str id="ShortcutPanel.regular.StartMenu:Start-Menu" txt="Start-Menu"/>
- <str id="ShortcutPanel.regular.StartMenu:K-Menu" txt="K-Menu"/>
+ <str id="PacksPanel.info"
+ txt="Selecteer de pakketten die u wilt installeren :" />
+ <str id="PacksPanel.tip"
+ txt="NB: Uitgegrijsde pakketten zijn verplicht." />
+ <str id="PacksPanel.space" txt="Totaal benodigde ruimte: " />
+ <str id="PacksPanel.freespace" txt="Beschikbare ruimte: " />
+ <str id="PacksPanel.description" txt="Omschrijving" />
+ <str id="PacksPanel.dependencyList"
+ txt="Het geselecteerde pakket vereist installatie van de volgende pakketten" />
+ <str id="PacksPanel.notEnoughSpace"
+ txt="Schijfruimte nodig voor installatie overtreft beschikbare schijfruimte." />
+ <str id="PacksPanel.notAscertainable" txt="niet vast te stellen" />
- <str id="ShortcutPanel.regular.create" txt="Maak Snelkoppelingen"/>
- <str id="ShortcutPanel.regular.userIntro" txt="Maak snelkoppeling voor:"/>
- <str id="ShortcutPanel.regular.currentUser" txt="huidige gebruiker "/>
- <str id="ShortcutPanel.regular.allUsers" txt="alle gebruikers "/>
-
- <str id="ShortcutPanel.alternate.apology" txt="Helaas ondersteunt IzPack het maken van snelkoppelingen op dit besturingssysteem niet. Raadpleeg de handleiding van uw besturingssysteem voor het aanmaken van de snelkoppelingen."/>
- <str id="ShortcutPanel.alternate.targetsLabel" txt="Hier volgt een lijst van snelkoppelingen die de maker van de software u wilde geven"/>
- <str id="ShortcutPanel.alternate.textFileExplanation" txt="U kunt gedetailleerde informatie over de snelkoppelingen opslaan in een tekstbestand voor toekomstig gebruik."/>
- <str id="ShortcutPanel.alternate.saveButton" txt="Tekstbestand opslaan"/>
-
- <str id="ShortcutPanel.textFile.header" txt="Snelkoppeling informatie\n========================\n\nHier volgt een lijst van alle relevante informatie over de gewenste\nsnelkoppelingen. Deze informatie zou het u mogelijk moeten maken om de\nsnelkoppelingen handmatig aan te brengen\n"/>
-
- <str id="ShortcutPanel.textFile.name" txt="Snelkoppeling : "/>
- <str id="ShortcutPanel.textFile.location" txt="Gewenste Locatie : "/>
- <str id="ShortcutPanel.textFile.description" txt="Omschrijving : "/>
- <str id="ShortcutPanel.textFile.target" txt="Doelbestand : "/>
- <str id="ShortcutPanel.textFile.command" txt="Opdrachtregel : "/>
- <str id="ShortcutPanel.textFile.iconName" txt="Icoon Bestand : "/>
- <str id="ShortcutPanel.textFile.iconIndex" txt="Icoon Index : "/>
- <str id="ShortcutPanel.textFile.work" txt="Werkmap : "/>
+ <str id="InstallPanel.info"
+ txt="Klik 'Installeer' om de installatie te beginnen." />
+ <str id="InstallPanel.install" txt="Installeer !" />
+ <str id="InstallPanel.tip" txt="Pakket installatie voortgang:" />
+ <str id="InstallPanel.begin" txt="[Niks]" />
+ <str id="InstallPanel.finished" txt="[Klaar]" />
+ <str id="InstallPanel.progress"
+ txt="Voortgang installatieprocedure:" />
+ <str id="InstallPanel.overwrite.title" txt="Bestand bestaat al" />
+ <str id="InstallPanel.overwrite.question"
+ txt="Het volgende bestand bestaat al. Moet het worden overschreven?" />
- <str id="ShortcutPanel.location.desktop" txt="Bureaublad"/>
- <str id="ShortcutPanel.location.applications" txt="Programma Menu"/>
- <str id="ShortcutPanel.location.startMenu" txt="Start Menu"/>
- <str id="ShortcutPanel.location.startup" txt="Opstart Groep"/>
+ <str id="FinishPanel.success" txt="Installatie is geslaagd." />
+ <str id="FinishPanel.done" txt="Gereed" />
+ <str id="FinishPanel.fail" txt="Installatie is mislukt!" />
+ <str id="FinishPanel.uninst.info"
+ txt="Een deïnstallatie programma is geïnstalleerd in:" />
+ <str id="FinishPanel.auto"
+ txt="Maak een automatisch installatie-script." />
+ <str id="FinishPanel.auto.tip"
+ txt="Gebruik dit script om de installatie te herhalen op andere computers." />
- <str id="UserInputPanel.error.caption" txt="Invoer Probleem"/>
- <str id="UserInputPanel.search.autodetect" txt="Automatisch zoeken"/>
+ <str id="ImgPacksPanel.packs"
+ txt="The volgende pakketten zijn beschikbaar :" />
+ <str id="ImgPacksPanel.snap" txt="Pakket schermafdruk:" />
+ <str id="ImgPacksPanel.checkbox" txt=" Installeer dit pakket" />
+ <str id="ImgPacksPanel.dependencyList" txt="Afhankelijkheden" />
+ <str id="ShortcutPanel.headline" txt="Instellen snelkoppelingen" />
+ <str id="ShortcutPanel.regular.list"
+ txt="Selecteer een programma groep voor de snelkoppelingen:" />
+ <str id="ShortcutPanel.regular.default" txt="Standaardwaarde" />
+ <str id="ShortcutPanel.regular.desktop"
+ txt="Maak snelkoppelingen op de desktop." />
+ <str id="ShortcutPanel.regular.StartMenu:Start-Menu"
+ txt="Start-Menu" />
+ <str id="ShortcutPanel.regular.StartMenu:K-Menu" txt="K-Menu" />
+
+ <str id="ShortcutPanel.regular.create" txt="Maak Snelkoppelingen" />
+ <str id="ShortcutPanel.regular.userIntro"
+ txt="Maak snelkoppeling voor:" />
+ <str id="ShortcutPanel.regular.currentUser"
+ txt="huidige gebruiker " />
+ <str id="ShortcutPanel.regular.allUsers" txt="alle gebruikers " />
+
+ <str id="ShortcutPanel.alternate.apology"
+ txt="Helaas ondersteunt IzPack het maken van snelkoppelingen op dit besturingssysteem niet. Raadpleeg de handleiding van uw besturingssysteem voor het aanmaken van de snelkoppelingen." />
+ <str id="ShortcutPanel.alternate.targetsLabel"
+ txt="Hier volgt een lijst van snelkoppelingen die de maker van de software u wilde geven" />
+ <str id="ShortcutPanel.alternate.textFileExplanation"
+ txt="U kunt gedetailleerde informatie over de snelkoppelingen opslaan in een tekstbestand voor toekomstig gebruik." />
+ <str id="ShortcutPanel.alternate.saveButton"
+ txt="Tekstbestand opslaan" />
+
+ <str id="ShortcutPanel.textFile.header"
+ txt="Snelkoppeling informatie\n========================\n\nHier volgt een lijst van alle relevante informatie over de gewenste\nsnelkoppelingen. Deze informatie zou het u mogelijk moeten maken om de\nsnelkoppelingen handmatig aan te brengen\n" />
+
+ <str id="ShortcutPanel.textFile.name" txt="Snelkoppeling : " />
+ <str id="ShortcutPanel.textFile.location"
+ txt="Gewenste Locatie : " />
+ <str id="ShortcutPanel.textFile.description"
+ txt="Omschrijving : " />
+ <str id="ShortcutPanel.textFile.target" txt="Doelbestand : " />
+ <str id="ShortcutPanel.textFile.command" txt="Opdrachtregel : " />
+ <str id="ShortcutPanel.textFile.iconName"
+ txt="Icoon Bestand : " />
+ <str id="ShortcutPanel.textFile.iconIndex"
+ txt="Icoon Index : " />
+ <str id="ShortcutPanel.textFile.work" txt="Werkmap : " />
+
+ <str id="ShortcutPanel.location.desktop" txt="Bureaublad" />
+ <str id="ShortcutPanel.location.applications" txt="Programma Menu" />
+ <str id="ShortcutPanel.location.startMenu" txt="Start Menu" />
+ <str id="ShortcutPanel.location.startup" txt="Opstart Groep" />
+
+ <str id="UserInputPanel.error.caption" txt="Invoer Probleem" />
+ <str id="UserInputPanel.search.autodetect" txt="Automatisch zoeken" />
+
<!-- more descriptive error message would be cool, like specifying what file we looked for -->
- <str id="UserInputPanel.search.autodetect.failed.message" txt="Het automatisch zoeken is mislukt."/>
- <str id="UserInputPanel.search.autodetect.failed.caption" txt="Automatisch zoeken mislukt"/>
- <str id="UserInputPanel.search.autodetect.tooltip" txt="Zoek naar het bestand of de map in de hierboven aangegeven paden."/>
- <str id="UserInputPanel.search.location" txt="Geef de locatie van {0}"/>
- <str id="UserInputPanel.search.location.checkedfile" txt="Het bestaan van {0} is gecontroleerd."/>
- <str id="UserInputPanel.search.browse" txt="Bladeren..."/>
- <str id="UserInputPanel.search.wrongselection.message" txt="Het bestand of de map die u gekozen hebt bestaat niet of is niet bruikbaar."/>
- <str id="UserInputPanel.search.wrongselection.caption" txt="Ongeldige selectie"/>
+ <str id="UserInputPanel.search.autodetect.failed.message"
+ txt="Het automatisch zoeken is mislukt." />
+ <str id="UserInputPanel.search.autodetect.failed.caption"
+ txt="Automatisch zoeken mislukt" />
+ <str id="UserInputPanel.search.autodetect.tooltip"
+ txt="Zoek naar het bestand of de map in de hierboven aangegeven paden." />
+ <str id="UserInputPanel.search.location"
+ txt="Geef de locatie van {0}" />
+ <str id="UserInputPanel.search.location.checkedfile"
+ txt="Het bestaan van {0} is gecontroleerd." />
+ <str id="UserInputPanel.search.browse" txt="Bladeren..." />
+ <str id="UserInputPanel.search.wrongselection.message"
+ txt="Het bestand of de map die u gekozen hebt bestaat niet of is niet bruikbaar." />
+ <str id="UserInputPanel.search.wrongselection.caption"
+ txt="Ongeldige selectie" />
<str id="CompilePanel.heading" txt="Compilatie" />
<str id="CompilePanel.tip" txt="Voortgang compilatie taak:" />
<str id="CompilePanel.browse" txt="Bladeren..." />
<str id="CompilePanel.browse.approve" txt="Gebruik als compiler" />
<str id="CompilePanel.start" txt="Start" />
- <str id="CompilePanel.progress.initial" txt="[Druk op de start knop]" />
+ <str id="CompilePanel.progress.initial"
+ txt="[Druk op de start knop]" />
<str id="CompilePanel.progress.finished" txt="[gereed]" />
<str id="CompilePanel.progress.overall" txt="Voortgang compilatie:" />
<str id="CompilePanel.error" txt="Compilatie mislukt" />
<str id="CompilePanel.error.reconfigure" txt="Herconfigureer" />
<str id="CompilePanel.error.ignore" txt="Negeren" />
<str id="CompilePanel.error.abort" txt="Afbreken" />
- <str id="CompilePanel.error.seebelow" txt="Zie onderstaande voor het mislukte commando en de uitvoer." />
- <str id="CompilePanel.error.nofiles" txt="Fout bij het zoeken naar bestanden voor compilatie." />
- <str id="CompilePanel.error.compilernotfound" txt="De compiler kon niet worden gestart." />
- <str id="CompilePanel.error.invalidarguments" txt="Ongeldige parameters meegegeven aan de compiler." />
- <str id="CompilePanel.error.noclassfile" txt="De compiler heeft geen class-bestand gemaakt voor het source-bestand " />
+ <str id="CompilePanel.error.seebelow"
+ txt="Zie onderstaande voor het mislukte commando en de uitvoer." />
+ <str id="CompilePanel.error.nofiles"
+ txt="Fout bij het zoeken naar bestanden voor compilatie." />
+ <str id="CompilePanel.error.compilernotfound"
+ txt="De compiler kon niet worden gestart." />
+ <str id="CompilePanel.error.invalidarguments"
+ txt="Ongeldige parameters meegegeven aan de compiler." />
+ <str id="CompilePanel.error.noclassfile"
+ txt="De compiler heeft geen class-bestand gemaakt voor het source-bestand " />
<str id="CompilePanel.choose_compiler" txt="Te gebruiken compiler:" />
- <str id="CompilePanel.additional_arguments" txt="Extra compiler parameters:" />
+ <str id="CompilePanel.additional_arguments"
+ txt="Extra compiler parameters:" />
<str id="ProcessPanel.heading" txt="Bezig" />
<!-- Strings for the summary of panels - START -->
- <str id="SummaryPanel.info" txt="Gereed voor installatie. Belangrijke gegevens staan hieronder opgesomd. Druk op "Volgende" om de installatie te starten."/>
- <str id="TargetPanel.summaryCaption" txt="Installatie pad"/>
- <str id="JDKPathPanel.summaryCaption" txt="JDK pad"/>
- <str id="PacksPanel.summaryCaption" txt="Gekozen installatiepakketten"/>
- <str id="ImgPacksPanel.summaryCaption" txt="Gekozen installatie pakketten"/>
+ <str id="SummaryPanel.info"
+ txt="Gereed voor installatie. Belangrijke gegevens staan hieronder opgesomd. Druk op "Volgende" om de installatie te starten." />
+ <str id="TargetPanel.summaryCaption" txt="Installatie pad" />
+ <str id="JDKPathPanel.summaryCaption" txt="JDK pad" />
+ <str id="PacksPanel.summaryCaption"
+ txt="Gekozen installatiepakketten" />
+ <str id="ImgPacksPanel.summaryCaption"
+ txt="Gekozen installatie pakketten" />
<!-- Strings for the summary of panels - END -->
<!-- Strings for the Registry -->
- <str id="functionFailed.RegOpenKeyEx" txt="Kan registersleutel {0}\\{1} niet openen."/>
-
+ <str id="functionFailed.RegOpenKeyEx"
+ txt="Kan registersleutel {0}\\{1} niet openen." />
+
<!-- Add your own panels specific strings here if you need -->
</langpack>
Modified: izpack-src/trunk/src/ant.properties
===================================================================
--- izpack-src/trunk/src/ant.properties 2006-09-25 04:19:33 UTC (rev 1618)
+++ izpack-src/trunk/src/ant.properties 2006-09-25 05:03:12 UTC (rev 1619)
@@ -2,3 +2,4 @@
dist.dir=${basedir}/${dist.subdir}
build.subdir=_build
build.dir=${basedir}/${build.subdir}
+product=IzPack
\ No newline at end of file
Modified: izpack-src/trunk/src/build.xml
===================================================================
--- izpack-src/trunk/src/build.xml 2006-09-25 04:19:33 UTC (rev 1618)
+++ izpack-src/trunk/src/build.xml 2006-09-25 05:03:12 UTC (rev 1619)
@@ -148,9 +148,11 @@
Extracted / Reordered some dist related targets to prevent double copy actions.
Also fixed the fix.crlf basedir
- 27.08.27: (Marc Eppelmann)
- Embedd ShortcutPanel*.java
-
+ 27.08.2006: (Marc Eppelmann)
+ Embedd ShortcutPanel*.java
+
+ 14.09.2006: (Marc Eppelmann)
+ Added target src.tar.gz and clean.src.tar.gz
Mini-HowTo:
@@ -190,7 +192,7 @@
<property file="src/ant.properties" />
<property name="ver" value="3.9" />
- <property name="rel" value="0-preview1" />
+ <property name="rel" value="0" />
<property name="build.number" value="${ver}.${rel}" />
<property name="src.dir" value="${basedir}/src/lib" />
@@ -430,8 +432,12 @@
<exclude name="com/izforge/izpack/gui/IzPackKMetalTheme.class" />
<include name="net/n3/nanoxml/*.class" />
</fileset>
- <fileset dir="${build.dir}/com/izforge/izpack/util"/>
- <fileset dir="${img.dir}/uninstaller" />
+ <fileset dir="${build.dir}">
+ <include name="com/izforge/izpack/util/**/*.class"/>
+ </fileset>
+ <fileset dir="${img.dir}/uninstaller">
+ <include name="**/*"/>
+ </fileset>
</jar>
</target>
@@ -445,7 +451,11 @@
deprecation="on"
debug="${debug}"
debuglevel="${debuglevel}">
- <include name="com/izforge/izpack/util/os/*.java" />
+ <include name="com/izforge/izpack/util/*.java" />
+ <include name="com/izforge/izpack/util/os/*.java"/>
+ <include name="com/izforge/izpack/util/os/unix/*.java"/>
+ <include name="com/izforge/izpack/util/xml/*.java"/>
+
<exclude name="com/izforge/izpack/gui/IzPackKMetalTheme.java" />
<include name="net/n3/nanoxml/*.java" />
</javac>
@@ -455,13 +465,7 @@
<target name="build.uninstaller-ext" depends="compile.uninstaller-ext">
<jar jarfile="${uninstaller-ext.jar}">
<fileset dir="${build.dir}">
- <include name="com/izforge/izpack/util/Librarian.class" />
- <include name="com/izforge/izpack/util/Housekeeper.class" />
- <include name="com/izforge/izpack/util/TargetFactory.class" />
- <include name="com/izforge/izpack/util/FreeThread.class" />
- <include name="com/izforge/izpack/util/CleanupClient.class" />
- <include name="com/izforge/izpack/util/NativeLibraryClient.class" />
- <!-- Add helper etc. you need for uninstallation -->
+ <include name="com/izforge/izpack/util/**/*.class"/>
</fileset>
</jar>
</target>
@@ -833,11 +837,12 @@
<delete file="bin/native/3rdparty/COIOSHelper.dll" />
<delete dir="${basedir}/bin/native/izpack" />
<delete includeEmptyDirs="true" dir="${basedir}/doc/izpack" />
+ <delete dir="${basedir}/_src${dist.subdir}"/>
</target>
<!-- Builds all compilation targets -->
<target name="all"
- depends="splashscreen, build.compiler, build.installer, build.uninstaller, build.uninstaller-ext, build.panels, build.listeners, build.standalone-compiler" description="base: compiles a developer version"/>
+ depends="splashscreen, src.tar.gz, build.compiler, build.installer, build.uninstaller, build.uninstaller-ext, build.panels, build.listeners, build.standalone-compiler" description="base: compiles a developer version"/>
<!-- Builds the Javadoc -->
<target name="build.javadoc" depends="prepare" description="Builds the javadoc">
@@ -981,7 +986,7 @@
installerType="standard"
basedir="${dist.dir}"
izPackDir="${dist.dir}/"
- compression="raw"
+ compression="deflate"
compressionlevel="9" />
<echo>
sucessfully created:
@@ -1003,7 +1008,7 @@
<target name="generate.installer" depends="prepare.install.dist">
<antcall target="exec.izpack.compiler">
<param name="installer.xmlfile" value="IzPack-install.xml" />
- <param name="installer.name" value="IzPack-install-" />
+ <param name="installer.name" value="${product}-install-" />
</antcall>
</target>
@@ -1054,7 +1059,24 @@
<target name="cleandistreg"
depends="clean, splashscreen, dist, generate.installer"
description="creates a full dist with Win32 uninstall registry support" />
+
+ <!-- =================================
+ target: clean.src.tar.gz
+ ================================= -->
+ <target name="clean.src.tar.gz" depends="clean, src.tar.gz" description="--> creates a src.tar.gz after clean up">
+ </target>
+
+ <!-- =================================
+ target: src.tar.gz
+ ================================= -->
+ <target name="src.tar.gz" description="--> creates a src.tar.gz ">
+ <mkdir dir="${basedir}/_src${dist.subdir}"/>
+ <property name="src.tar.gz" value="${basedir}/_src${dist.subdir}/${product}.src.${ver}.${rel}.tar.gz"/>
+ <tar compression="gzip" destfile="${src.tar.gz}" basedir="${basedir}" excludes="_src${dist.subdir}/**, _dist/**, _build/**, bin/panels/**, bin/customActions/**, doc/izpack/**, eclipse-bin/**, lib/standalone-compiler.jar, lib/izevent.jar, lib/uninstaller*, lib/installer.jar, lib/compiler.jar"/>
+ </target>
+
+
<!-- convenient :) makes a quick dist (w/o docu), an installer and run them. -->
<target name="quickdist+run"
depends="quickdist, run.installer"
Modified: izpack-src/trunk/src/dist-files/IzPack-install.xml
===================================================================
--- izpack-src/trunk/src/dist-files/IzPack-install.xml 2006-09-25 04:19:33 UTC (rev 1618)
+++ izpack-src/trunk/src/dist-files/IzPack-install.xml 2006-09-25 05:03:12 UTC (rev 1619)
@@ -23,7 +23,7 @@
<!-- The info section -->
<info>
<appname>IzPack</appname>
- <appversion>3.9.0-preview1 (build 2006.06.23)</appversion>
+ <appversion>3.9.0 (build 2006.09.25)</appversion>
<authors>
<author email="" name="Julien Ponge (maintainer and original developer)"/>
@@ -39,6 +39,7 @@
<author email="" name="Scott Starks @JBoss/RedHat (contributors)" />
<author email="" name="Alex Pinkin @JBoss/RedHat (contributors)" />
<author email="" name="Dennis Reil (contributor)" />
+ <author email="" name="Thomas Edwin Santosa (contributor)" />
<author email=""
name="... the many other developers and contributors to the previous releases (see Thanks.txt)"/>
@@ -55,7 +56,7 @@
</laf>
<!-- GUI addaption for more informations see "Modifying the GUI" in the documentation -->
<modifier key="layoutAnchor" value="CENTER"/>
- <modifier key="headingPanelCounter" value="text"/>
+ <modifier key="headingPanelCounter" value="progressbar"/>
<modifier key="headingPanelCounterPos" value="inNavigationPanel"/>
<modifier key="allYGap" value="3"/>
<modifier key="paragraphYGap" value="10"/>
@@ -100,7 +101,7 @@
<resources>
<res src="install-readme.html" id="HTMLInfoPanel.info"/>
<res src="Licence.txt" id="LicencePanel.licence"/>
- <res src="splash-sydney.png" id="installer.langsel.img"/>
+ <res src="splash-3.9.png" id="installer.langsel.img"/>
<res src="shortcutSpec.xml" id="shortcutSpec.xml"/>
<res src="Unix_shortcutSpec.xml" id="Unix_shortcutSpec.xml"/>
<res src="core.png" id="ImgPacksPanel.img.0"/>
Modified: izpack-src/trunk/src/dist-files/Unix_shortcutSpec.xml
===================================================================
--- izpack-src/trunk/src/dist-files/Unix_shortcutSpec.xml 2006-09-25 04:19:33 UTC (rev 1618)
+++ izpack-src/trunk/src/dist-files/Unix_shortcutSpec.xml 2006-09-25 05:03:12 UTC (rev 1619)
@@ -17,6 +17,24 @@
If you whant to do so, set createForAll to true otherwise to false, which is the default.
! If not explicite set or present the default is false.
+
+ New Attibute for Root Installation on Linux:
+
+ Categories="Development;IDE"
+
+ TryExec="java -jar "$INSTALL_PATH/Uninstaller/uninstaller.jar""
+
+ Here are some Sample Categories and their apps
+ examine *.desktop files in /usr/share/applications ...
+ Categories="Application;Network;WebDevelopment" Nvu
+ Categories="Qt;Development;GUIDesigner" QtDesigner3
+ Categories="Application;System;" VwareServer-console
+ Categories="Network;WebBrowser" Opera
+ Categories="Development;Debugger" DDD debugger
+ Categories="Development;IDE" Eclipse IDE
+ Categories="SystemSetup;X-SuSE-Core-System" Yast2
+ Categories="System;Archiving" Sesam archiving
+
-->
<shortcuts>
@@ -55,7 +73,7 @@
startup="no"
target="$INSTALL_PATH/bin/start.sh"
workingDirectory=""
- commandLine="$INSTALL_PATH/doc/izpack/xhtml/index.html"
+ commandLine="$INSTALL_PATH/doc/izpack/xhtml/izpack-doc.html"
initialState="noShow"
iconFile="help"
iconIndex="0"
@@ -131,18 +149,7 @@
<createForPack name="PDF Documentation"/>
</shortcut>
-
- <!-- Some Sample Categories and their apps
- examine *.desktop files in /usr/share/applications ...
- Categories="Application;Network;WebDevelopment" Nvu
- Categories="Qt;Development;GUIDesigner" QtDesigner3
- Categories="Application;System;" VwareServer-console
- Categories="Network;WebBrowser" Opera
- Categories="Development;Debugger" DDD debugger
- Categories="Development;IDE" Eclipse IDE
- Categories="SystemSetup;X-SuSE-Core-System" Yast2
- Categories="System;Archiving" Sesam archiving
- -->
+
<shortcut
name="Izpack at ver@ Uninstaller"
Modified: izpack-src/trunk/src/dist-files/shortcutSpec.xml
===================================================================
--- izpack-src/trunk/src/dist-files/shortcutSpec.xml 2006-09-25 04:19:33 UTC (rev 1618)
+++ izpack-src/trunk/src/dist-files/shortcutSpec.xml 2006-09-25 05:03:12 UTC (rev 1619)
@@ -33,7 +33,7 @@
applications="no"
startMenu="no"
startup="no"
- target="$INSTALL_PATH\doc\izpack\xhtml\index.html"
+ target="$INSTALL_PATH\doc\izpack\xhtml\izpack-doc.html"
commandLine=""
description="This opens a WebBrowser to look into the IzPack @build.number@ (HTML) user documentation">
Copied: izpack-src/trunk/src/dist-files/splash-3.8.png (from rev 1617, izpack-src/branches/branch-3.9/src/dist-files/splash-3.8.png)
Copied: izpack-src/trunk/src/dist-files/splash-3.9.png (from rev 1617, izpack-src/branches/branch-3.9/src/dist-files/splash-3.9.png)
Deleted: izpack-src/trunk/src/dist-files/splash-sydney.png
===================================================================
(Binary files differ)
Modified: izpack-src/trunk/src/doc-ng/XHTML/node4.html
===================================================================
--- izpack-src/trunk/src/doc-ng/XHTML/node4.html 2006-09-25 04:19:33 UTC (rev 1618)
+++ izpack-src/trunk/src/doc-ng/XHTML/node4.html 2006-09-25 05:03:12 UTC (rev 1619)
@@ -723,7 +723,7 @@
<p>In order to provide internationalization for the PacksPanel, so that your users can be presented with a different name and description for each language you support, you have to create a file named
<tt>packsLang.xml_xyz</tt> where <tt>xyz</tt> is the ISO3 code of the language in lowercase. Please be aware that case is significant. This file has to be inserted in the resources section of <tt>
install.xml</tt> with the <tt>id</tt> and <tt>src</tt> attributes set at the name of the file. The format of these files is identical with the distribution langpack files located at <tt>
-$IZPACK_HOME/install/langpacks/installer</tt>. For the name of the panel you just use the pack <tt>id</tt> as the txt <tt>id</tt>. For the description you use the pack <tt>id</tt> suffixed with <tt>
+$IZPACK_HOME/bin/langpacks/installer</tt>. For the name of the panel you just use the pack <tt>id</tt> as the txt <tt>id</tt>. For the description you use the pack <tt>id</tt> suffixed with <tt>
'.description'</tt>. </p>
<p>The following sections describe the tags available for a <tt><pack></tt> section.</p>
Modified: izpack-src/trunk/src/lib/com/izforge/izpack/compiler/Compiler.java
===================================================================
--- izpack-src/trunk/src/lib/com/izforge/izpack/compiler/Compiler.java 2006-09-25 04:19:33 UTC (rev 1618)
+++ izpack-src/trunk/src/lib/com/izforge/izpack/compiler/Compiler.java 2006-09-25 05:03:12 UTC (rev 1619)
@@ -25,21 +25,6 @@
package com.izforge.izpack.compiler;
-import java.io.File;
-import java.io.IOException;
-import java.net.MalformedURLException;
-import java.net.URL;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-import java.util.Properties;
-import java.util.Set;
-import java.util.jar.JarInputStream;
-import java.util.zip.ZipEntry;
-
import com.izforge.izpack.CustomData;
import com.izforge.izpack.GUIPrefs;
import com.izforge.izpack.Info;
@@ -47,6 +32,14 @@
import com.izforge.izpack.util.Debug;
import com.izforge.izpack.util.VariableSubstitutor;
+import java.io.File;
+import java.io.IOException;
+import java.net.MalformedURLException;
+import java.net.URL;
+import java.util.*;
+import java.util.jar.JarInputStream;
+import java.util.zip.ZipEntry;
+
/**
* The IzPack compiler class. This is now a java bean style class that can be
* configured using the object representations of the install.xml
@@ -62,7 +55,7 @@
public class Compiler extends Thread
{
/** The IzPack version. */
- public final static String IZPACK_VERSION = "3.8.1";
+ public final static String IZPACK_VERSION = "3.9.0";
/** The IzPack home directory. */
public static String IZPACK_HOME = ".";
Modified: izpack-src/trunk/src/lib/com/izforge/izpack/installer/InstallerFrame.java
===================================================================
--- izpack-src/trunk/src/lib/com/izforge/izpack/installer/InstallerFrame.java 2006-09-25 04:19:33 UTC (rev 1618)
+++ izpack-src/trunk/src/lib/com/izforge/izpack/installer/InstallerFrame.java 2006-09-25 05:03:12 UTC (rev 1619)
@@ -793,27 +793,13 @@
}
// write the files which should be deleted by root for another user
- // TODO:
- outJar.putNextEntry(new ZipEntry(UninstallData.RootFiles));
+ outJar.putNextEntry(new ZipEntry(UninstallData.ROOTSCRIPT));
ObjectOutputStream rootStream = new ObjectOutputStream(outJar);
- Hashtable rootData = udata.getRootData();
+ String rootScript = udata.getRootScript();
- Enumeration e = rootData.keys();
+ rootStream.writeUTF(rootScript);
- rootStream.writeInt(rootData.size());
-
- while (e.hasMoreElements())
- {
- //File file = iter.next();
- String file = (String) e.nextElement();
-
- rootStream.writeObject(file);
-
- UnixUser uu = (UnixUser) rootData.get(file);
-
- rootStream.writeObject(uu);
- }
rootStream.flush();
outJar.closeEntry();
Modified: izpack-src/trunk/src/lib/com/izforge/izpack/installer/UninstallData.java
===================================================================
--- izpack-src/trunk/src/lib/com/izforge/izpack/installer/UninstallData.java 2006-09-25 04:19:33 UTC (rev 1618)
+++ izpack-src/trunk/src/lib/com/izforge/izpack/installer/UninstallData.java 2006-09-25 05:03:12 UTC (rev 1619)
@@ -55,7 +55,7 @@
private Map additionalData;
/** Filesmap which should removed by the root user for another user */
- private Hashtable rootData;
+ private String rootScript;
/** The constructor. */
private UninstallData()
@@ -63,10 +63,11 @@
filesList = new ArrayList();
executablesList = new ArrayList();
additionalData = new HashMap();
- rootData = new Hashtable();
+ rootScript = new String();
}
- public final static String RootFiles = "rootfiles";
+ /** Constant RootFiles = "rootfiles" */
+ public final static String ROOTSCRIPT = "rootscript";
/**
* Returns the instance (it is a singleton).
@@ -181,14 +182,13 @@
}
/**
- * Adds the given File to delete as Root for the given User.
+ * Adds the given File to delete several Shortcuts as Root for the given Users.
*
- * @param aFilePath The file to delete.
- * @param aUser a User to delete for
+ * @param aRootUninstallScript The Script to exec as Root at uninstall.
*/
- public void addRootAsUserFile( String aFilePath, UnixUser aUser )
+ public void addRootUninstallScript( String aRootUninstallScript )
{
- rootData.put(aFilePath, aUser);
+ rootScript = new String( aRootUninstallScript==null?"":aRootUninstallScript );
}
/**
@@ -196,9 +196,9 @@
*
* @return root data
*/
- public Hashtable getRootData()
+ public String getRootScript()
{
- return rootData;
+ return rootScript;
}
Modified: izpack-src/trunk/src/lib/com/izforge/izpack/panels/ShortcutPanel.java
===================================================================
--- izpack-src/trunk/src/lib/com/izforge/izpack/panels/ShortcutPanel.java 2006-09-25 04:19:33 UTC (rev 1618)
+++ izpack-src/trunk/src/lib/com/izforge/izpack/panels/ShortcutPanel.java 2006-09-25 05:03:12 UTC (rev 1619)
@@ -17,12 +17,24 @@
*/
package com.izforge.izpack.panels;
-import java.awt.Dimension;
-import java.awt.GridBagConstraints;
-import java.awt.GridBagLayout;
-import java.awt.GridLayout;
-import java.awt.Insets;
-import java.awt.LayoutManager2;
+import com.izforge.izpack.ExecutableFile;
+import com.izforge.izpack.Pack;
+import com.izforge.izpack.gui.ButtonFactory;
+import com.izforge.izpack.gui.LabelFactory;
+import com.izforge.izpack.installer.*;
+import com.izforge.izpack.util.*;
+import com.izforge.izpack.util.os.Shortcut;
+import com.izforge.izpack.util.os.unix.UnixHelper;
+import com.izforge.izpack.util.xml.XMLHelper;
+import net.n3.nanoxml.*;
+
+import javax.swing.*;
+import javax.swing.border.Border;
+import javax.swing.border.EmptyBorder;
+import javax.swing.border.TitledBorder;
+import javax.swing.event.ListSelectionEvent;
+import javax.swing.event.ListSelectionListener;
+import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.File;
@@ -32,51 +44,6 @@
import java.util.Enumeration;
import java.util.Vector;
-import javax.swing.ButtonGroup;
-import javax.swing.JButton;
-import javax.swing.JCheckBox;
-import javax.swing.JFileChooser;
-import javax.swing.JLabel;
-import javax.swing.JList;
-import javax.swing.JPanel;
-import javax.swing.JRadioButton;
-import javax.swing.JScrollPane;
-import javax.swing.JTextField;
-import javax.swing.ListSelectionModel;
-import javax.swing.border.Border;
-import javax.swing.border.EmptyBorder;
-import javax.swing.border.TitledBorder;
-import javax.swing.event.ListSelectionEvent;
-import javax.swing.event.ListSelectionListener;
-
-import net.n3.nanoxml.NonValidator;
-import net.n3.nanoxml.StdXMLBuilder;
-import net.n3.nanoxml.StdXMLParser;
-import net.n3.nanoxml.StdXMLReader;
-import net.n3.nanoxml.XMLElement;
-
-import com.izforge.izpack.ExecutableFile;
-import com.izforge.izpack.Pack;
-import com.izforge.izpack.gui.ButtonFactory;
-import com.izforge.izpack.gui.LabelFactory;
-import com.izforge.izpack.installer.AutomatedInstallData;
-import com.izforge.izpack.installer.InstallData;
-import com.izforge.izpack.installer.InstallerFrame;
-import com.izforge.izpack.installer.IzPanel;
-import com.izforge.izpack.installer.ResourceNotFoundException;
-import com.izforge.izpack.installer.UninstallData;
-import com.izforge.izpack.util.Debug;
-import com.izforge.izpack.util.FileExecutor;
-import com.izforge.izpack.util.MultiLineLabel;
-import com.izforge.izpack.util.OsConstraint;
-import com.izforge.izpack.util.OsVersion;
-import com.izforge.izpack.util.StringTool;
-import com.izforge.izpack.util.TargetFactory;
-import com.izforge.izpack.util.VariableSubstitutor;
-import com.izforge.izpack.util.os.Shortcut;
-import com.izforge.izpack.util.os.unix.UnixHelper;
-import com.izforge.izpack.util.xml.XMLHelper;
-
//
// import com.izforge.izpack.panels.ShortcutData;
@@ -131,10 +98,10 @@
private static final String LOCATION_START_MENU = "startMenu";
/** SPEC_CATEGORIES = "categories" */
- private static final String SPEC_CATEGORIES = "categories";
+ public static final String SPEC_CATEGORIES = "categories";
/** SPEC_TRYEXEC = "tryexec" */
- private static final String SPEC_TRYEXEC = "tryexec";
+ public static final String SPEC_TRYEXEC = "tryexec";
/**
@@ -701,7 +668,8 @@
}
else
{
- ; // parent.skipPanel ();
+ // Skip on OS X
+ parent.skipPanel();
}
}
@@ -1221,9 +1189,9 @@
continue;
}
}
+
+ shortcut.execPostAction();
- // }
- //
try
{
if (execFiles != null)
@@ -1249,7 +1217,8 @@
cannot.printStackTrace();
}
- // /////parent.unlockNextButton();
+
+ shortcut.cleanUp();
}
/*--------------------------------------------------------------------------*/
@@ -1926,7 +1895,9 @@
: Boolean.FALSE).toString());
// Boolean.valueOf(data.addToGroup)
- dataElement.setAttribute(AUTO_ATTRIBUTE_TYPE, Integer.toString(data.type));
+ if(OsVersion.IS_WINDOWS)
+
+ dataElement.setAttribute(AUTO_ATTRIBUTE_TYPE, Integer.toString(data.type));
dataElement.setAttribute(AUTO_ATTRIBUTE_COMMAND, data.commandLine);
dataElement.setAttribute(AUTO_ATTRIBUTE_DESCRIPTION, data.description);
dataElement.setAttribute(AUTO_ATTRIBUTE_ICON, data.iconFile);
@@ -1941,7 +1912,8 @@
dataElement.setAttribute( SPEC_ATTRIBUTE_MIMETYPE, data.deskTopEntryLinux_MimeType );
dataElement.setAttribute( SPEC_ATTRIBUTE_TERMINAL, data.deskTopEntryLinux_Terminal );
dataElement.setAttribute( SPEC_ATTRIBUTE_TERMINAL_OPTIONS, data.deskTopEntryLinux_TerminalOptions );
- dataElement.setAttribute( SPEC_ATTRIBUTE_TYPE, data.deskTopEntryLinux_Type );
+ if(! OsVersion.IS_WINDOWS )
+ dataElement.setAttribute( SPEC_ATTRIBUTE_TYPE, data.deskTopEntryLinux_Type );
dataElement.setAttribute( SPEC_ATTRIBUTE_URL, data.deskTopEntryLinux_URL );
Modified: izpack-src/trunk/src/lib/com/izforge/izpack/panels/ShortcutPanelAutomationHelper.java
===================================================================
--- izpack-src/trunk/src/lib/com/izforge/izpack/panels/ShortcutPanelAutomationHelper.java 2006-09-25 04:19:33 UTC (rev 1618)
+++ izpack-src/trunk/src/lib/com/izforge/izpack/panels/ShortcutPanelAutomationHelper.java 2006-09-25 05:03:12 UTC (rev 1619)
@@ -1,34 +1,26 @@
/*
* $Id: copyright-notice-template 1421 2006-03-12 16:32:32Z jponge $
* IzPack - Copyright 2001-2006 Julien Ponge, All Rights Reserved.
- *
+ *
* http://www.izforge.com/izpack/
* http://developer.berlios.de/projects/izpack/
- *
+ *
* Copyright 2006 Marc Eppelmann (marc.eppelmann@gmx.de)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
- *
+ *
* http://www.apache.org/licenses/LICENSE-2.0
- *
+ *
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-
package com.izforge.izpack.panels;
-import java.io.File;
-import java.util.ArrayList;
-import java.util.Enumeration;
-import java.util.Vector;
-
-import net.n3.nanoxml.XMLElement;
-
import com.izforge.izpack.ExecutableFile;
import com.izforge.izpack.installer.AutomatedInstallData;
import com.izforge.izpack.installer.PanelAutomation;
@@ -36,33 +28,50 @@
import com.izforge.izpack.util.Debug;
import com.izforge.izpack.util.FileExecutor;
import com.izforge.izpack.util.OsConstraint;
+import com.izforge.izpack.util.OsVersion;
import com.izforge.izpack.util.TargetFactory;
import com.izforge.izpack.util.os.Shortcut;
+import net.n3.nanoxml.XMLElement;
+
+import java.io.File;
+
+import java.util.ArrayList;
+import java.util.Enumeration;
+import java.util.Vector;
+
/**
- * The ShortcutPanelAutomationHelper is responsible to create Shortcuts
- * during the automated installation.
- * Most code comes copied from the ShortcutPanel
+ * The ShortcutPanelAutomationHelper is responsible to create Shortcuts during the automated
+ * installation. Most code comes copied from the ShortcutPanel
*
* @author Marc Eppelmann (marc.eppelmann@gmx.de)
* @version $Revision: 1540 $
- *
*/
public class ShortcutPanelAutomationHelper implements PanelAutomation
{
+ // ~ Methods ****************************************************************************
+
/**
* dummy method
+ *
+ * @param idata DOCUMENT ME!
+ * @param panelRoot DOCUMENT ME!
*/
public void makeXMLData(AutomatedInstallData idata, XMLElement panelRoot)
{
Debug.log(this.getClass().getName() + "::entering makeXMLData()");
+
// ShortcutPanel.getInstance().makeXMLData( idata, panelRoot );
-
}
/**
- * Implementation of the Shortcut Specific Automation Code
+ * Implementation of the Shortcut Specific Automation Code
+ *
+ * @param installData DOCUMENT ME!
+ * @param panelRoot DOCUMENT ME!
+ *
+ * @return DOCUMENT ME!
*/
public boolean runAutomated(AutomatedInstallData installData, XMLElement panelRoot)
{
@@ -95,6 +104,7 @@
{
Debug.log("Could not create shortcut instance");
exception.printStackTrace();
+
return true;
}
@@ -106,12 +116,14 @@
if (!shortcut.supported())
{
Debug.log("shortcuts not supported here");
+
return true;
}
if (!OsConstraint.oneMatchesCurrentSystem(panelRoot))
{
Debug.log("Shortcuts Not oneMatchesCurrentSystem");
+
return true;
}
@@ -125,6 +137,7 @@
// set the name of the program group
// ----------------------------------------------------
dataElement = panelRoot.getFirstChildNamed(ShortcutPanel.AUTO_KEY_PROGRAM_GROUP);
+
String groupName = dataElement.getAttribute(ShortcutPanel.AUTO_ATTRIBUTE_NAME);
if (groupName == null)
@@ -147,12 +160,12 @@
data.addToGroup = Boolean.valueOf(
dataElement.getAttribute(ShortcutPanel.AUTO_ATTRIBUTE_GROUP)).booleanValue();
- try
+ if (OsVersion.IS_WINDOWS)
{
data.type = Integer.valueOf(
dataElement.getAttribute(ShortcutPanel.AUTO_ATTRIBUTE_TYPE)).intValue();
}
- catch (NumberFormatException e)
+ else
{
Debug.log("WARN: On Linux data.type is NOT an int. Ignored.");
}
@@ -185,32 +198,46 @@
"");
data.deskTopEntryLinux_X_KDE_SubstituteUID = dataElement.getAttribute(
- ShortcutPanel.SPEC_ATTRIBUTE_KDE_SUBST_UID, "");
+ ShortcutPanel.SPEC_ATTRIBUTE_KDE_SUBST_UID, "false");
+ data.deskTopEntryLinux_X_KDE_UserName = dataElement.getAttribute(
+ ShortcutPanel.SPEC_ATTRIBUTE_KDE_USERNAME, "root");
+
+ data.Categories = dataElement.getAttribute(ShortcutPanel.SPEC_CATEGORIES,
+ "Application;Development");
+
+ data.TryExec = dataElement.getAttribute(ShortcutPanel.SPEC_TRYEXEC, "");
+
data.createForAll = new Boolean(dataElement.getAttribute(ShortcutPanel.CREATE_FOR_ALL,
"false"));
data.userType = Integer.valueOf(
dataElement.getAttribute(ShortcutPanel.USER_TYPE, Integer
.toString(Shortcut.CURRENT_USER))).intValue();
// END LINUX
-
shortcuts.add(data);
}
System.out.print("[ Creating shortcuts ");
// ShortcutData data;
-
for (int i = 0; i < shortcuts.size(); i++)
{
data = (ShortcutData) shortcuts.elementAt(i);
try
{
- groupName = groupName + data.subgroup;
+ if( data.subgroup!=null )
+ {
+ groupName = groupName + data.subgroup;
+ }
shortcut.setUserType(data.userType);
shortcut.setLinkName(data.name);
- shortcut.setLinkType(data.type);
+
+ if (OsVersion.IS_WINDOWS)
+ {
+ shortcut.setLinkType(data.type);
+ }
+
shortcut.setArguments(data.commandLine);
shortcut.setDescription(data.description);
shortcut.setIconLocation(data.iconFile, data.iconIndex);
@@ -223,7 +250,12 @@
shortcut.setTerminal(data.deskTopEntryLinux_Terminal);
shortcut.setTerminalOptions(data.deskTopEntryLinux_TerminalOptions);
- shortcut.setType(data.deskTopEntryLinux_Type);
+
+ if (!OsVersion.IS_WINDOWS)
+ {
+ shortcut.setType(data.deskTopEntryLinux_Type);
+ }
+
shortcut.setKdeSubstUID(data.deskTopEntryLinux_X_KDE_SubstituteUID);
shortcut.setURL(data.deskTopEntryLinux_URL);
shortcut.setCreateForAll(data.createForAll);
@@ -239,9 +271,7 @@
try
{
-
// save the shortcut
-
System.out.print(".");
System.out.flush();
@@ -280,7 +310,6 @@
files.add(0, filesEnum.nextElement().toString());
}
}
-
}
catch (Exception exception)
{}
@@ -317,6 +346,7 @@
{
cannot.printStackTrace();
}
+
System.out.println(" done. ]");
System.out.print("[ Add shortcuts to uninstaller ");
@@ -333,5 +363,4 @@
return true;
}
-
}
Modified: izpack-src/trunk/src/lib/com/izforge/izpack/uninstaller/Destroyer.java
===================================================================
--- izpack-src/trunk/src/lib/com/izforge/izpack/uninstaller/Destroyer.java 2006-09-25 04:19:33 UTC (rev 1618)
+++ izpack-src/trunk/src/lib/com/izforge/izpack/uninstaller/Destroyer.java 2006-09-25 05:03:12 UTC (rev 1619)
@@ -24,10 +24,10 @@
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.ObjectInputStream;
+import java.io.PrintWriter;
+import java.io.StringWriter;
import java.util.ArrayList;
import java.util.Collections;
-import java.util.Enumeration;
-import java.util.Hashtable;
import java.util.Iterator;
import java.util.List;
import java.util.TreeSet;
@@ -38,10 +38,10 @@
import com.izforge.izpack.util.AbstractUIProgressHandler;
import com.izforge.izpack.util.Debug;
import com.izforge.izpack.util.FileExecutor;
+import com.izforge.izpack.util.OsVersion;
import com.izforge.izpack.util.os.unix.ShellScript;
-import com.izforge.izpack.util.os.unix.UnixHelper;
-import com.izforge.izpack.util.os.unix.UnixUser;
+
/**
* The files destroyer class.
*
@@ -113,9 +113,11 @@
// Custem action listener stuff --- afterDeletion ----
informListeners(listeners[0], UninstallerListener.AFTER_DELETION, files, handler);
-
- removeRootFiles(getRootFiles());
-
+
+ if( OsVersion.IS_UNIX )
+ {
+ execRootScript(getRootScript());
+ }
// We make a complementary cleanup
handler.progress(size, "[ cleanups ]");
cleanup(new File(installPath));
@@ -126,7 +128,18 @@
{
handler.stopAction();
err.printStackTrace();
- handler.emitError("exception caught", err.toString());
+
+ StackTraceElement str[] = err.getStackTrace();
+ for(int idx = 0; idx < str.length;idx++)
+ {
+
+ }
+
+ StringWriter trace = new StringWriter();
+ //err.printStackTrace(new PrintStream);
+ err.printStackTrace(new PrintWriter(trace));
+
+ handler.emitError("exception caught", err.toString() + "\n" + trace.toString() );
}
}
@@ -179,6 +192,11 @@
return new ArrayList(files);
}
+ /**
+ * Gets the List of all Executables
+ * @return The ArrayList of the Executables
+ * @throws Exception
+ */
private ArrayList getExecutablesList() throws Exception
{
ArrayList executables = new ArrayList();
@@ -199,59 +217,32 @@
* @return The files which should remove by root for another user
* @throws Exception
*/
- private Hashtable getRootFiles() throws Exception
+ private String getRootScript() throws Exception
{
- Hashtable result = new Hashtable();
+ String result = new String();
ObjectInputStream in = new ObjectInputStream(Destroyer.class.getResourceAsStream("/"
- + UninstallData.RootFiles));
- int num = in.readInt();
- for (int i = 0; i < num; i++)
- {
- String file = (String) in.readObject();
+ + UninstallData.ROOTSCRIPT));
+
+ result = in.readUTF();
- UnixUser user = (UnixUser) in.readObject();
- result.put(file, user);
- }
+
return result;
}
/**
* Removes the given files as root for the given Users
*
- * @param entries The files to reomove for the users
+ * @param aRootScript The Script to exec as uninstall time by root.
*/
- private void removeRootFiles(Hashtable entries)
+ private void execRootScript(String aRootScript)
{
- Enumeration e = entries.keys();
-
- String su = UnixHelper.getSuCommand();
- String rm = UnixHelper.getCustomCommand("rm");
- String S = " ";
-
- while (e.hasMoreElements())
+ if(!"".equals(aRootScript))
{
- String filename = (String) e.nextElement();
- UnixUser user = (UnixUser) entries.get(filename);
+ Debug.log("Will Execute: " + aRootScript.toString());
- StringBuffer script = new StringBuffer();
-
- script.append(su);
- script.append(S);
- script.append(user.getName());
- script.append(S);
- script.append("-c");
- script.append(S);
- script.append('"');
- script.append(rm);
- script.append(S);
- script.append(filename);
- script.append('"');
-
- Debug.log("Executes: " + script.toString());
-
try
{
- String result = ShellScript.execAndDelete(script, File.createTempFile(
+ String result = ShellScript.execAndDelete(new StringBuffer( aRootScript ), File.createTempFile(
this.getClass().getName(),
Long.toString(System.currentTimeMillis()) + ".sh").toString());
Debug.log("Result: " + result);
@@ -260,8 +251,7 @@
{
Debug.log("Exeption during su remove: " + ex.getMessage());
}
-
- }
+ }
}
/**
Modified: izpack-src/trunk/src/lib/com/izforge/izpack/util/os/Shortcut.java
===================================================================
--- izpack-src/trunk/src/lib/com/izforge/izpack/util/os/Shortcut.java 2006-09-25 04:19:33 UTC (rev 1618)
+++ izpack-src/trunk/src/lib/com/izforge/izpack/util/os/Shortcut.java 2006-09-25 05:03:12 UTC (rev 1619)
@@ -25,6 +25,7 @@
import java.util.Vector;
import com.izforge.izpack.installer.UninstallData;
+import com.izforge.izpack.util.Debug;
/*---------------------------------------------------------------------------*/
/**
@@ -540,6 +541,25 @@
uninstaller = theUninstaller;
}
+ /**
+ * Dummy Method especially for the Unix Root User.
+ *
+ */
+ public void execPostAction()
+ {
+ //Debug.log("Call of unused execPostAction Method in " + this.getClass().getName() );
+ }
+
+ /**
+ * Clean Up Method to do some cleanups after Shortcut Creation.
+ * <br>
+ * currently unused.
+ */
+ public void cleanUp()
+ {
+ //Debug.log("Call of unused cleanUp Method in " + this.getClass().getName() );
+ }
+
}
/*---------------------------------------------------------------------------*/
Modified: izpack-src/trunk/src/lib/com/izforge/izpack/util/os/Unix_Shortcut.java
===================================================================
--- izpack-src/trunk/src/lib/com/izforge/izpack/util/os/Unix_Shortcut.java 2006-09-25 04:19:33 UTC (rev 1618)
+++ izpack-src/trunk/src/lib/com/izforge/izpack/util/os/Unix_Shortcut.java 2006-09-25 05:03:12 UTC (rev 1619)
@@ -50,7 +50,6 @@
*/
package com.izforge.izpack.util.os;
-import com.izforge.izpack.uninstaller.Uninstaller;
import com.izforge.izpack.util.Debug;
import com.izforge.izpack.util.FileExecutor;
import com.izforge.izpack.util.OsVersion;
@@ -81,8 +80,6 @@
public class Unix_Shortcut extends Shortcut implements Unix_ShortcutConstants
{
- // ~ Static fields/initializers *********************************************************
-
// ~ Static fields/initializers
// *******************************************************************************************************************************
/** version = "$Id$" */
@@ -111,9 +108,12 @@
/** QM = "\"" : <b>Q</b>uotation<b>M</b>ark */
private final static String QM = "\"";
-
- // ~ Instance fields ********************************************************************
-
+
+ private static ShellScript rootScript = null;
+ private static ShellScript uninstallScript = null;
+ private static ArrayList users = UnixUsers.getUsersWithValidShellsExistingHomesAndDesktops();
+ //private static ArrayList tempfiles = new ArrayList();
+
// ~ Instance fields
// ******************************************************************************************************************************************
/** internal String createdDirectory */
@@ -142,7 +142,7 @@
*/
private Boolean forAll = Boolean.FALSE;
- /** DOCUMENT ME! */
+ /** Internal Help Buffer */
public StringBuffer hlp;
// ~ Constructors ***********************************************************************
@@ -159,7 +159,7 @@
String userLanguage = System.getProperty("user.language", "en");
hlp.append("[Desktop Entry]" + N);
-
+
// TODO implement Attribute: X-KDE-StartupNotify=true
hlp.append("Categories=" + $Categories + N);
@@ -200,6 +200,11 @@
props = new Properties();
initProps();
+
+ if( rootScript==null )
+ rootScript = new ShellScript();
+ if( uninstallScript == null)
+ uninstallScript = new ShellScript();
}
// ~ Methods ****************************************************************************
@@ -402,6 +407,14 @@
public void save() throws Exception
{
String FS = File.separator;
+ String chmod = UnixHelper.getCustomCommand("chmod");
+ String chown = UnixHelper.getCustomCommand("chown");
+ String rm = UnixHelper.getRmCommand();
+ String copy = UnixHelper.getCpCommand();
+ String su = UnixHelper.getSuCommand();
+
+ String myHome=System.getProperty("user.home");
+
String target = null;
String shortCutDef = this.replace();
@@ -412,7 +425,8 @@
// Create The Desktop Shortcuts
if ("".equals(this.itsGroupName) && (this.getLinkType() == Shortcut.DESKTOP))
{
- target = System.getProperty("user.home") + FS + "Desktop" + FS + this.itsName
+
+ target = myHome + FS + "Desktop" + FS + this.itsName
+ DESKTOP_EXT;
this.itsFileName = target;
@@ -431,23 +445,25 @@
copyTo(writtenDesktopFile, tempFile);
- Debug.log("Wrote Tempfile: " + tempFile.toString());
+ //Debug.log("Wrote Tempfile: " + tempFile.toString());
- String chmod = UnixHelper.getCustomCommand("chmod");
- String chown = UnixHelper.getCustomCommand("chown");
- String copy = UnixHelper.getCpCommand();
- String su = UnixHelper.getSuCommand();
-
FileExecutor.getExecOutput(new String[] { chmod, "uga+rwx", tempFile.toString()});
// su marc.eppelmann -c "/bin/cp /home/marc.eppelmann/backup.job.out.txt
// /home/marc.eppelmann/backup.job.out2.txt"
- ArrayList users = UnixUsers.getUsersWithValidShellsExistingHomesAndDesktops();
+
+ //StringBuffer script = new StringBuffer();
+ //
for (int idx = 0; idx < users.size(); idx++)
{
UnixUser user = ((UnixUser) users.get(idx));
-
+
+ if( user.getHome().equals(myHome) )
+ {
+ Debug.log( "need not to copy for itself: " + user.getHome() + "==" + myHome );
+ continue;
+ }
try
{
// aHomePath = userHomesList[idx];
@@ -460,57 +476,56 @@
// by# su username
//
// This works as well
- // su username -c "cp /tmp/desktopfile $HOME/Desktop/link.desktop"
- //
- // copyTo(writtenDesktopFile, dest);
- Debug.log("Will Copy: " + tempFile.toString() + " to " + dest.toString());
+ // su $username -c "cp /tmp/desktopfile $HOME/Desktop/link.desktop"
+ // chown $username $HOME/Desktop/link.desktop
+
+ //Debug.log("Will Copy: " + tempFile.toString() + " to " + dest.toString());
- StringBuffer script = new StringBuffer();
+ rootScript.append(su);
+ rootScript.append(S);
+ rootScript.append(user.getName());
+ rootScript.append(S);
+ rootScript.append("-c");
+ rootScript.append(S);
+ rootScript.append('"');
+ rootScript.append(copy);
+ rootScript.append(S);
+ rootScript.append(tempFile.toString());
+ rootScript.append(S);
+ rootScript.append(StringTool.replace(dest.toString(), " ", "\\ "));
+ rootScript.appendln('"');
+
+ rootScript.append('\n');
+
+ //Debug.log("Will exec: " + script.toString());
+
+ rootScript.append( chown );
+ rootScript.append( S );
+ rootScript.append( user.getName() );
+ rootScript.append( S );
+ rootScript.appendln( StringTool.replace(dest.toString(), " ", "\\ ") );
+ rootScript.append('\n');
+ rootScript.append('\n');
- script.append(su);
- script.append(S);
- script.append(user.getName());
- script.append(S);
- script.append("-c");
- script.append(S);
- script.append('"');
- script.append(copy);
- script.append(S);
- script.append(tempFile.toString());
- script.append(S);
- script.append(dest.toString());
- script.append('"');
-
- Debug.log("Executes: " + script.toString());
-
- String result = ShellScript.execAndDelete(script, File.createTempFile(
- this.getClass().getName(),
- Long.toString(System.currentTimeMillis()) + ".sh").toString());
-
- Debug.log("Result: " + result);
-
- uninstaller.addRootAsUserFile(dest.toString(), user);
-
- /*
- * FileExecutor.getExecOutput(new String[] { su, user.getName(), "-c", "\"" +
- * copy + " " + tempFile.toString() + " " + dest.toString() + "\""});
- */
- Debug.log("Copied: " + tempFile.toString() + " to " + dest.toString());
+ //Debug.log("Will exec: " + script.toString());
- try
- {
- FileExecutor.getExecOutput(new String[] { chown, user.getName(),
- dest.toString()});
- }
- catch (RuntimeException rexx)
- {
- System.out.println("While Chown :" + rexx.getLocalizedMessage());
- rexx.printStackTrace();
- }
+ uninstallScript.append(su);
+ uninstallScript.append(S);
+ uninstallScript.append(user.getName());
+ uninstallScript.append(S);
+ uninstallScript.append("-c");
+ uninstallScript.append(S);
+ uninstallScript.append('"');
+ uninstallScript.append(rm);
+ uninstallScript.append(S);
+ uninstallScript.append(StringTool.replace(dest.toString(), " ", "\\ "));
+ uninstallScript.appendln('"');
+ uninstallScript.appendln();
+ //Debug.log("Uninstall will exec: " + uninstallScript.toString());
}
catch (Exception rex)
{
- System.out.println("While Su Copy:" + rex.getLocalizedMessage());
+ System.out.println("Error while su Copy: " + rex.getLocalizedMessage()+"\n\n");
rex.printStackTrace();
/* ignore */
@@ -518,17 +533,13 @@
// home (ls -la /home/user drwx------)
// But try it anyway...
}
+ }
+
-
- }
- try
- {
- tempFile.delete();
- }
- catch (Exception e)
- {
- tempFile.deleteOnExit();
- }
+ rootScript.append( rm );
+ rootScript.append( S );
+ rootScript.appendln( tempFile.toString());
+ rootScript.appendln();
}
}
@@ -540,44 +551,79 @@
+ DESKTOP_EXT;
this.itsFileName = target;
writeShortCut(target, shortCutDef);
-
+
if (rootUser4All)
{
if (create4All)
{
// write the icon pixmaps into /usr/share/pixmaps
-
- File theIcon = new File( this.getIconLocation() );
- File commonIcon = new File( "/usr/share/pixmaps/" + theIcon.getName() );
-
+
+ File theIcon = new File(this.getIconLocation());
+ File commonIcon = new File("/usr/share/pixmaps/" + theIcon.getName());
+
try
{
- copyTo( theIcon, commonIcon );
- uninstaller.addFile(commonIcon.toString());
+ copyTo(theIcon, commonIcon);
+ uninstaller.addFile(commonIcon.toString());
}
- catch(Exception cnc)
+ catch (Exception cnc)
{
- Debug.log("Could Not Copy: " + theIcon + " to " + commonIcon + "( "+ cnc.getMessage() +" )" );
+ Debug.log("Could Not Copy: " + theIcon + " to " + commonIcon + "( "
+ + cnc.getMessage() + " )");
}
// write *.desktop.file into /usr/share/applications
- String commonTarget = "/usr/share/applications/" + this.itsName
- + DESKTOP_EXT;
+ String commonTarget = "/usr/share/applications/" + this.itsName + DESKTOP_EXT;
this.itsFileName = target;
File writtenFile = writeShortCut(commonTarget, shortCutDef);
-
+
uninstaller.addFile(writtenFile.toString());
-
+
}
else
{
// do nothing
}
}
-
+
}
}
+
+
+ /**
+ * Post Exec Action especially for the Unix Root User.
+ * which executes the Root ShortCut Shellscript.
+ * to copy all ShellScripts to the users Desktop.
+ */
+ public void execPostAction()
+ {
+ Debug.log("Call of Impl. execPostAction Method in " + this.getClass().getName() );
+
+ String pseudoUnique = this.getClass().getName()+ Long.toString(System.currentTimeMillis());
+
+ String scriptFilename = null;
+
+ try
+ {
+ scriptFilename = File.createTempFile( pseudoUnique, ".sh" ).toString();
+ }
+ catch (IOException e)
+ {
+ scriptFilename = System.getProperty("java.io.tmpdir", "/tmp") + "/" + pseudoUnique + ".sh";
+ e.printStackTrace();
+ }
+
+ rootScript.write(scriptFilename);
+ rootScript.exec();
+
+ Debug.log(rootScript);
+
+
+ Debug.log(uninstallScript);
+
+ uninstaller.addRootUninstallScript( uninstallScript.getContentAsString() );
+ }
/**
* Copies the inFile file to outFile using cbuff as buffer.
Modified: izpack-src/trunk/src/lib/com/izforge/izpack/util/os/unix/ShellScript.java
===================================================================
--- izpack-src/trunk/src/lib/com/izforge/izpack/util/os/unix/ShellScript.java 2006-09-25 04:19:33 UTC (rev 1618)
+++ izpack-src/trunk/src/lib/com/izforge/izpack/util/os/unix/ShellScript.java 2006-09-25 05:03:12 UTC (rev 1619)
@@ -35,6 +35,8 @@
{
// ~ Static fields/initializers *********************************************************
+
+ // ~ Static fields/initializers *********************************************************
/** Author = "marc.eppelmann_at_gmx.de" */
private final static String Author = "Author: marc.eppelmann_at_gmx.de";
@@ -59,7 +61,7 @@
/** lh = lf + H = "\n#" */
private final static String lh = lf + H;
- /** the explanation header for thia genreated script */
+ /** the explanation header for this generated script */
private final static String explanation = lh + "This is an automatically generated Script."
+ lh + "Usually this can be removed if the Generator " + lh
+ "was unable to remove the script after execution." + lf;
@@ -67,10 +69,11 @@
/** "Generated at: " + new Date().toString() */
private static String currentDateMsg = "Generated at: " + new Date().toString();
- /** the header of the shellscript */
+ /** the header of this ShellScript */
private final static String header = lf + explanation + lf + H + Generator + lf + H + SCM_ID
+ lf + H + Author + lf + H + Revision + lf + H + currentDateMsg + lf + lf;
+ // ~ Instance fields ********************************************************************
// ~ Instance fields ********************************************************************
/** Internal ContentBuffer of this ShellScript */
@@ -80,6 +83,8 @@
private String itsLocation;
// ~ Constructors ***********************************************************************
+
+ // ~ Constructors ***********************************************************************
/**
* Creates and initializes the ShellScript for running on the given shell.
*
@@ -100,6 +105,8 @@
}
// ~ Methods ****************************************************************************
+
+ // ~ Methods ****************************************************************************
/**
* Appends an Object or String to this ShellScript.
*
@@ -111,16 +118,84 @@
}
/**
+ * Appends a Char to this ShellScript.
+ *
+ * @param aChar a char to append
+ */
+ public void append(char aChar)
+ {
+ content.append(aChar);
+ }
+
+ /**
* Appends an Object or String to this ShellScript with unix linefeed ("\n").
*
* @param anObject the Object to append
*/
public void appendln(Object anObject)
{
- append(anObject + lf);
+ append(anObject);
+ append(lf);
}
/**
+ * Appends a Char Object or String to this ShellScript with unix linefeed ("\n").
+ *
+ * @param aChar a char to append
+ */
+ public void appendln(char aChar)
+ {
+ append(aChar);
+ append(lf);
+ }
+
+ /**
+ * Appends an Object or String to this ShellScript with unix linefeed ("\n").
+ */
+ public void appendln()
+ {
+ append(lf);
+ }
+
+ /**
+ * gets the Content of this Script.
+ *
+ * @return the Content
+ */
+ public StringBuffer getContent()
+ {
+ return content;
+ }
+
+ /**
+ * Gets the Content of this Script as String
+ *
+ * @return the script as String
+ */
+ public String getContentAsString()
+ {
+ return content.toString();
+ }
+
+ /**
+ * Dumps the ShellScript Content, and Location.
+ * Use getContentAsString() to get this ShellScripts Content
+ *
+ * @return The ShellScript as Object dump.
+ */
+ public String toString()
+ {
+ StringBuffer result = new StringBuffer();
+ result.append(getClass().getName());
+ result.append('\n');
+ result.append(itsLocation);
+ result.append('\n');
+ result.append(content);
+
+ return result.toString();
+ }
+
+ /**
* write this to the given Destination FileName
*
* @param aDestination a destination filename
@@ -272,8 +347,11 @@
* ShellScript s = new ShellScript( ); s.append( "ls $HOME" ); s.write( System.getProperty(
* "user.home", "." ) + File.separator + "test.sh" );
*/
- System.out.println(ShellScript.execute(new StringBuffer("ls $HOME"), System.getProperty(
- "user.home", ".")
- + File.separator + Long.toString(System.currentTimeMillis()) + "test.sh"));
+
+ /*
+ * System.out.println(ShellScript.execute(new StringBuffer("ls $HOME"), System.getProperty(
+ * "user.home", ".") + File.separator + Long.toString(System.currentTimeMillis()) +
+ * "test.sh"));
+ */
}
}
Modified: izpack-src/trunk/src/tests/com/izforge/izpack/Bin_Langpacks_InstallerTest.java
===================================================================
--- izpack-src/trunk/src/tests/com/izforge/izpack/Bin_Langpacks_InstallerTest.java 2006-09-25 04:19:33 UTC (rev 1618)
+++ izpack-src/trunk/src/tests/com/izforge/izpack/Bin_Langpacks_InstallerTest.java 2006-09-25 05:03:12 UTC (rev 1619)
@@ -197,6 +197,17 @@
this.checkLangpack("hun.xml");
}
/**
+ * Checks the Indonesian language pack for missing / superfluous translations
+ * @throws Exception Forwarded Exception for the LocaleDatabase contructor, FileInputStream constructor or TreeMap containsKey method
+ *
+ * @see com.izforge.izpack.LocaleDatabase#LocaleDatabase(java.io.InputStream)
+ * @see java.io.FileInputStream#FileInputStream(java.lang.String)
+ * @see java.util.TreeMap#containsKey(java.lang.Object)
+ */
+ public void testInd() throws Exception{
+ this.checkLangpack("ind.xml");
+ }
+ /**
* Checks the Italian language pack for missing / superfluous translations
* @throws Exception Forwarded Exception for the LocaleDatabase contructor, FileInputStream constructor or TreeMap containsKey method
*
More information about the izpack-changes
mailing list