Statistics
| Revision:

root / trunk / install / IzPack / doc / izpack / html / node2.html @ 11445

History | View | Annotate | Download (12.4 KB)

1 5819 cesar
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
2
3
<!--Converted with LaTeX2HTML 2002-2-1 (1.70)
4
original version by:  Nikos Drakos, CBLU, University of Leeds
5
* revised and updated by:  Marcus Hennecke, Ross Moore, Herb Swan
6
* with significant contributions from:
7
  Jens Lippmann, Marek Rouchal, Martin Wilck and others -->
8
<HTML>
9
<HEAD>
10
<TITLE>Introduction</TITLE>
11
<META NAME="description" CONTENT="Introduction">
12
<META NAME="keywords" CONTENT="izpack-doc">
13
<META NAME="resource-type" CONTENT="document">
14
<META NAME="distribution" CONTENT="global">
15
16
<META NAME="Generator" CONTENT="LaTeX2HTML v2002-2-1">
17
<META HTTP-EQUIV="Content-Style-Type" CONTENT="text/css">
18
19
<LINK REL="STYLESHEET" HREF="izpack-doc.css">
20
21
<LINK REL="next" HREF="node3.html">
22
<LINK REL="previous" HREF="node1.html">
23
<LINK REL="up" HREF="izpack-doc.html">
24
<LINK REL="next" HREF="node3.html">
25
</HEAD>
26
27
<BODY >
28
29
<DIV CLASS="navigation"><!--Navigation Panel-->
30
<A NAME="tex2html316"
31
  HREF="node3.html">
32
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next.png"></A>
33
<A NAME="tex2html312"
34
  HREF="izpack-doc.html">
35
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up.png"></A>
36
<A NAME="tex2html306"
37
  HREF="node1.html">
38
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="prev.png"></A>
39
<A NAME="tex2html314"
40
  HREF="node1.html">
41
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="contents.png"></A>
42
<BR>
43
<B> Next:</B> <A NAME="tex2html317"
44
  HREF="node3.html">Getting started</A>
45
<B> Up:</B> <A NAME="tex2html313"
46
  HREF="izpack-doc.html">izpack-doc</A>
47
<B> Previous:</B> <A NAME="tex2html307"
48
  HREF="node1.html">Contents</A>
49
 &nbsp; <B>  <A NAME="tex2html315"
50
  HREF="node1.html">Contents</A></B>
51
<BR>
52
<BR></DIV>
53
<!--End of Navigation Panel-->
54
<!--Table of Child-Links-->
55
<A NAME="CHILD_LINKS"><STRONG>Subsections</STRONG></A>
56
57
<UL CLASS="ChildLinks">
58
<LI><A NAME="tex2html318"
59
  HREF="node2.html#SECTION00210000000000000000">Welcome to I<SMALL>Z</SMALL>P<SMALL>ACK</SMALL> !</A>
60
<LI><A NAME="tex2html319"
61
  HREF="node2.html#SECTION00220000000000000000">The Features</A>
62
<LI><A NAME="tex2html320"
63
  HREF="node2.html#SECTION00230000000000000000">The Development</A>
64
<LI><A NAME="tex2html321"
65
  HREF="node2.html#SECTION00240000000000000000">3rd party code used in I<SMALL>Z</SMALL>P<SMALL>ACK</SMALL> </A>
66
</UL>
67
<!--End of Table of Child-Links-->
68
<HR>
69
70
<H1><A NAME="SECTION00200000000000000000">
71
Introduction</A>
72
</H1>
73
74
<P>
75
76
<H1><A NAME="SECTION00210000000000000000">
77
Welcome to I<SMALL>Z</SMALL>P<SMALL>ACK</SMALL> !</A>
78
</H1>
79
80
<P>
81
<!-- MATH
82
 $\fbox{\includegraphics[scale=0.5]{img/lang-sel-splash}}$
83
 -->
84
<SPAN CLASS="MATH"><IMG
85
 WIDTH="269" HEIGHT="726" ALIGN="MIDDLE" BORDER="0"
86
 SRC="img1.png"
87
 ALT="\fbox{\includegraphics[scale=0.5]{img/lang-sel-splash}}"></SPAN>
88
I<SMALL>Z</SMALL>P<SMALL>ACK</SMALL> is a tool that will help you to solve your software installation
89
problems. It is a Java<SUP><SMALL>TM</SMALL></SUP> based software installer builder that will run
90
on any operating system coming with a <SPAN  CLASS="textit">Java Virtual Machine
91
(JVM)</SPAN> that is compliant with the Sun JVM 1.2 or higher. Its design is
92
very modular and you will be able to choose how <SPAN  CLASS="textbf">you</SPAN> want your
93
installer to look and you will also be able to customize it using a very
94
simple <SPAN  CLASS="textit">Application Programming Interface (API)</SPAN>. Although
95
I<SMALL>Z</SMALL>P<SMALL>ACK</SMALL> is essentially a Java<SUP><SMALL>TM</SMALL></SUP> only application (it can run on virtually
96
any operating system), it can interact in a clean way with the
97
underlying operating system. Native code can interact with it on a
98
specific platform without disturbing the operation on incompatible
99
operating systems. For instance, you can develop Unix-specific code that
100
will be silent if run on Windows. To put it in a nutshell, whereas most
101
of the other Java<SUP><SMALL>TM</SMALL></SUP> installers force you to go their way, I<SMALL>Z</SMALL>P<SMALL>ACK</SMALL> will
102
let you go <SPAN  CLASS="textbf">your way</SPAN>. Some respectable companies have been using
103
it in order to produce customized  installers for their <SPAN  CLASS="textsl">very</SPAN>
104
specific needs.
105
<BR>
106
<P>
107
<SPAN  CLASS="textit">"So, if it's so good, how much is it ?"</SPAN> : well, you can get it
108
for free. <SPAN  CLASS="textbf">BUT</SPAN> I<SMALL>Z</SMALL>P<SMALL>ACK</SMALL> is not a <SPAN  CLASS="textit">freeware</SPAN>. It's not
109
<SPAN  CLASS="textit">free</SPAN> as in <SPAN  CLASS="textit">"free beer"</SPAN> but <SPAN  CLASS="textit">"free as in free
110
speech"</SPAN>. So it's neither <SPAN  CLASS="textit">freeware</SPAN> nor <SPAN  CLASS="textit">public domain</SPAN>.
111
It is software covered by the GNU G<SMALL>ENERAL </SMALL>P<SMALL>UBLIC </SMALL>L<SMALL>ICENSE</SMALL> (GPL).
112
It uses the tactic of <SPAN  CLASS="textit">copyleft</SPAN> : to make it short, you can use
113
it, modify it and redistribute it freely but you must also make your
114
modifications available to everyone whenever you publish a modified
115
version of a <SPAN  CLASS="textit">copylefted</SPAN> software. You have access to the
116
I<SMALL>Z</SMALL>P<SMALL>ACK</SMALL> source code and you can modify it to make it suit your needs,
117
but if you publish such a modified version, you are forced to publish
118
the modifications you've made. <SPAN ID="txt133">That's a fair exchange of
119
expertise and  work</SPAN>. To learn more about the GPL license and the
120
<SPAN  CLASS="textit">copyleft</SPAN> principles, visit <TT><A NAME="tex2html7"
121
  HREF="http://www.gnu.org/">http://www.gnu.org/</A></TT>.
122
<BR>
123
<P>
124
125
<H1><A NAME="SECTION00220000000000000000">
126
The Features</A>
127
</H1>
128
129
<P>
130
I<SMALL>Z</SMALL>P<SMALL>ACK</SMALL> uses XML files to describe installations. When you make an
131
installer, you have a choice of panels. You can see panels as a kind of
132
plugin that composes the installer. For instance, a panel can choose the
133
installation path, the packs to install, prompt the user for a license
134
agreement and so on. This approach is very modular. You can also create
135
your own panels if you have specific needs. In some cases you even have
136
a choice from multiple panel versions for the same task. You can also
137
choose the order in which panels appear during the installation process.
138
I<SMALL>Z</SMALL>P<SMALL>ACK</SMALL> can be used in a number of different ways:
139
140
<UL>
141
<LI>by writing the XML installation file "by hand" and compiling
142
  it with the command line compiler
143
</LI>
144
<LI>by invoking the compiler from the great A<SMALL>PACHE </SMALL>J<SMALL>AKARTA
145
  </SMALL>A<SMALL>NT</SMALL> tool (see <TT><A NAME="tex2html8"
146
  HREF="http://jakarta.apache.org/">http://jakarta.apache.org/</A></TT>) as I<SMALL>Z</SMALL>P<SMALL>ACK</SMALL> can be
147
  used as a task for A<SMALL>NT</SMALL>
148
</LI>
149
</UL>
150
<P>
151
Here is a brief (and certainly incomplete !) list of the main I<SMALL>Z</SMALL>P<SMALL>ACK</SMALL> features :
152
153
<UL>
154
<LI>XML based installation files
155
</LI>
156
<LI>easy internationalization using XML files (10 translations are already
157
  available)
158
</LI>
159
<LI>Ant integration, command-line compiler
160
</LI>
161
<LI>easy customization with the panels and a rich API (even an XML parser is
162
  included !)
163
</LI>
164
<LI>powerful variable substitution system that you can use to customize
165
  scripts and more generally any text-based file
166
</LI>
167
<LI>different kinds of installers (standard, web-based, ...)
168
</LI>
169
<LI>launching of external executables during the installation process and Unix
170
  executable flag support (useful for the scripts for instance)
171
</LI>
172
<LI>layout of the installation files in packs (some can be optional)
173
</LI>
174
<LI>native code integration facilities
175
</LI>
176
<LI>jar files nesting support
177
</LI>
178
<LI>... <SPAN  CLASS="textsl">more things to discover and create !</SPAN>.
179
</LI>
180
</UL>
181
<P>
182
183
<H1><A NAME="SECTION00230000000000000000">
184
The Development</A>
185
</H1>
186
187
<P>
188
I started writing I<SMALL>Z</SMALL>P<SMALL>ACK</SMALL> in April 2001 and many people have helped me
189
improving it since. I prefer not to mention them here as I would for sure forget
190
some of them, so please check the file named <TT>Thanks.txt</TT> which I try to
191
get as up-to-date as possible in order to mention everyone who helped me. As far
192
as I'm concerned, I'm a french student and I rather see this as a fun activity
193
in my free time where I can learn a lot of great things. The contributors to the
194
project are both individuals and companies. Help can take any form :
195
196
<UL>
197
<LI>translations
198
</LI>
199
<LI>new features and various fixes
200
</LI>
201
<LI>bug fixes
202
</LI>
203
<LI>writing manuals
204
</LI>
205
<LI>... anything else you like :-)
206
</LI>
207
</UL>
208
<P>
209
The official I<SMALL>Z</SMALL>P<SMALL>ACK</SMALL> homepage is located at
210
<TT><A NAME="tex2html9"
211
  HREF="http://www.izforge.com/izpack/">http://www.izforge.com/izpack/</A></TT>. The IzPack developer services
212
(mailing-lists, CVS, patches manager, bugs tracker, ...) are generously hosted
213
by BerliOS. The IzPack BerliOS section is located at
214
<TT><A NAME="tex2html10"
215
  HREF="http://developer.berlios.de/projects/izpack/">http://developer.berlios.de/projects/izpack/</A></TT>. Feel free to
216
use these services. In particular, there are two mailing-lists:
217
218
<UL>
219
<LI><TT>izpack-devel</TT>: used for the IzPack development
220
</LI>
221
<LI><TT>izpack-users</TT>: general users lounge, great to get some help with
222
IzPack.
223
</LI>
224
</UL>
225
<P>
226
227
<H1><A NAME="SECTION00240000000000000000">
228
3rd party code used in I<SMALL>Z</SMALL>P<SMALL>ACK</SMALL> </A>
229
</H1>
230
231
<P>
232
I<SMALL>Z</SMALL>P<SMALL>ACK</SMALL> uses several 3rd party libraries and I would like to mention them in
233
respect for their respective authors work :
234
235
<UL>
236
<LI><SPAN  CLASS="textit">NanoXML</SPAN> by Marc D<SMALL>E </SMALL>S<SMALL>CHEEMAECKER</SMALL> : the XML parser used
237
  inside I<SMALL>Z</SMALL>P<SMALL>ACK</SMALL> and released under a <SPAN  CLASS="textit">zlib/png</SPAN>-style license - see
238
<BR>  <TT><A NAME="tex2html11"
239
  HREF="http://nanoxml.sourceforge.net/">http://nanoxml.sourceforge.net/</A></TT> -
240
</LI>
241
<LI><SPAN  CLASS="textit">Kunststoff Look and Feel</SPAN> by Incors Gmbh : a Swing<SUP><SMALL>TM</SMALL></SUP>
242
   Look and Feel
243
  that can be used for installers. It <SPAN  CLASS="textbf">really</SPAN> looks good and
244
  is released under the GNU L<SMALL>ESSER </SMALL>G<SMALL>ENERAL </SMALL>P<SMALL>UBLIC </SMALL>L<SMALL>ICENSE (</SMALL>LGPL) - see
245
  <TT><A NAME="tex2html12"
246
  HREF="http://www.incors.org/">http://www.incors.org/</A></TT> -
247
</LI>
248
<LI><SPAN  CLASS="textit">Crystal-SVG Icons</SPAN> : the icons used in I<SMALL>Z</SMALL>P<SMALL>ACK</SMALL> come from
249
  the great work of Everaldo (<TT><A NAME="tex2html13"
250
  HREF="http://www.everaldo.com/">http://www.everaldo.com/</A></TT>) that makes KDE 3.2
251
  look so sweet
252
</LI>
253
<LI><SPAN  CLASS="textit">Some Apache Jakarta classes and libraries</SPAN> : released under the
254
  <SPAN  CLASS="textit">Apache License</SPAN>
255
</LI>
256
<LI><SPAN  CLASS="textit">Metouia Look and Feel</SPAN> by Taoufik Romdhane : released under the
257
  <SPAN  CLASS="textit">LGPL license</SPAN> - see <TT><A NAME="tex2html14"
258
  HREF="http://mlf.sf.net/">http://mlf.sf.net/</A></TT>
259
</LI>
260
<LI><SPAN  CLASS="textit">Liquid Look and Feel</SPAN> by Miroslav Lazarevic : released under the
261
  <SPAN  CLASS="textit">LGPL license</SPAN> - see <TT><A NAME="tex2html15"
262
  HREF="liquidlnf.sf.net/">liquidlnf.sf.net/</A></TT>
263
</LI>
264
<LI><SPAN  CLASS="textit">JGoodies Looks</SPAN> by Karsten Lentzsch : released under a
265
  <SPAN  CLASS="textit">BSD-style license</SPAN> - see <TT><A NAME="tex2html16"
266
  HREF="http://looks.dev.java.net/">http://looks.dev.java.net/</A></TT>.
267
</LI>
268
</UL>
269
<P>
270
So, now let's dive into understanding how I<SMALL>Z</SMALL>P<SMALL>ACK</SMALL> works. You'll be
271
surprised to see how powerful and simple it can be :-)
272
273
<DIV CLASS="navigation"><HR>
274
<!--Navigation Panel-->
275
<A NAME="tex2html316"
276
  HREF="node3.html">
277
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next.png"></A>
278
<A NAME="tex2html312"
279
  HREF="izpack-doc.html">
280
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up.png"></A>
281
<A NAME="tex2html306"
282
  HREF="node1.html">
283
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="prev.png"></A>
284
<A NAME="tex2html314"
285
  HREF="node1.html">
286
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="contents.png"></A>
287
<BR>
288
<B> Next:</B> <A NAME="tex2html317"
289
  HREF="node3.html">Getting started</A>
290
<B> Up:</B> <A NAME="tex2html313"
291
  HREF="izpack-doc.html">izpack-doc</A>
292
<B> Previous:</B> <A NAME="tex2html307"
293
  HREF="node1.html">Contents</A>
294
 &nbsp; <B>  <A NAME="tex2html315"
295
  HREF="node1.html">Contents</A></B> </DIV>
296
<!--End of Navigation Panel-->
297
<ADDRESS>
298
Julien Ponge
299
2005-04-22
300
</ADDRESS>
301
</BODY>
302
</HTML>