SlideShare une entreprise Scribd logo
1  sur  76
Télécharger pour lire hors ligne
Julien Ponge

Free Open Source Software Academia Conference

        November 17th & 18th 2009
Associate Professor
Telecommunications, services and usages dept.

CITI / Amazones
      Dynamic systems    Embedded
       Formal systems    Pervasive
          Observation    Ambient
              Security   Mobile
From a hack made in a student dorm room...




                                    ... not mine!
...to an industry-backed project.
1
      Intro + Demo


2
      Some features


3
       Positioning


4
    Thoughts on F/OSS
1
      Intro + Demo


2
      Some features


3
       Positioning


4
    Thoughts on F/OSS
Unique installer
Unique installer   Multiple systems
v2




Download for your operating system



1:   java -Xmx256m -jar filename.jar
2:   chmod -R +x lib/ant/bin
3:   lib/ant/bin/ant -f setup.xml
4:   bin/asadmin start-domain domain
Demo

 One download
 Works everywhere
 Straightforward
~25.000 downloads per month
(...)
JavaOne 2008
Grant
Invited talks



Code contributions




Software licenses
1
      Intro + Demo


2
      Some features


3
       Positioning


4
    Thoughts on F/OSS
1
      Intro + Demo


2
      Some features


3
       Positioning


4
    Thoughts on F/OSS
Packs, conditions, langpacks,
        libraries, GUI, metadata, ...

Files          Descriptor               Resources




                Compiler




              Installer JAR
Compiler




Installer JAR
Compiler




Installer JAR
Compiler




Installer JAR
Compiler




Installer JAR
<installation version="1.0">

  <info>
    <appname>Glassfish</appname>
    <appversion>v2 ur2 b04</appversion>
    <authors>
      <author email=""
               name="Julien Ponge (packager)"/>
      <author email=""
               name="Sun Microsystems and the GlassFish community"/>
    </authors>
    <url>http://glassfish.org/</url>
    <javaversion>1.5</javaversion>
    <requiresjdk>yes</requiresjdk>
  </info>

                                (...)
(...)
<panels>
    <panel   classname="HTMLInfoPanel" />
    <panel   classname="HTMLLicencePanel" />
    <panel   classname="TargetPanel" />
    <panel   classname="UserInputPanel" />
    <panel   classname="InstallPanel" />
    <panel   classname="ProcessPanel" />
    <panel   classname="ShortcutPanel" />
    <panel   classname="SimpleFinishPanel" />
</panels>

                      (...)
<pack name="GlassFish" required="yes">
  <description>GlassFish</description>

  <file src="launch-browser.sh" targetdir="$INSTALL_PATH/bin"
        condition="izpack.macinstall" />

  <fileset dir="linux" targetdir="$INSTALL_PATH"
           condition="izpack.linuxinstall">
    <% linux_specific.each do |file| %>
        <include name="<%= file %>"/>
    <% end %>
  </fileset>

  <executable targetfile="$INSTALL_PATH/lib/ant/bin/ant"
              stage="never" os="unix" />
  <parsable targetfile="$INSTALL_PATH/bin/launch-browser.sh"
            os="unix" />
</pack>
<pack name="GlassFish" required="yes">
  <description>GlassFish</description>

  <file src="launch-browser.sh" targetdir="$INSTALL_PATH/bin"
        condition="izpack.macinstall" />

  <fileset dir="linux" targetdir="$INSTALL_PATH"
           condition="izpack.linuxinstall">
    <% linux_specific.each do |file| %>
        <include name="<%= file %>"/>
    <% end %>
  </fileset>

  <executable targetfile="$INSTALL_PATH/lib/ant/bin/ant"
              stage="never" os="unix" />
  <parsable targetfile="$INSTALL_PATH/bin/launch-browser.sh"
            os="unix" />
</pack>
<pack name="GlassFish" required="yes">
  <description>GlassFish</description>

  <file src="launch-browser.sh" targetdir="$INSTALL_PATH/bin"
        condition="izpack.macinstall" />

  <fileset dir="linux" targetdir="$INSTALL_PATH"
           condition="izpack.linuxinstall">
    <% linux_specific.each do |file| %>
        <include name="<%= file %>"/>
    <% end %>
  </fileset>                             Ant-style:
                                            **/*
  <executable targetfile="$INSTALL_PATH/lib/ant/bin/ant"
                                            dir/*.class
              stage="never" os="unix" />    **/*.jar
  <parsable targetfile="$INSTALL_PATH/bin/launch-browser.sh"
                                            lib/**/*.jar
            os="unix" />
</pack>
<pack name="GlassFish" required="yes">
  <description>GlassFish</description>

  <file src="launch-browser.sh" targetdir="$INSTALL_PATH/bin"
        condition="izpack.macinstall" />

  <fileset dir="linux" targetdir="$INSTALL_PATH"
           condition="izpack.linuxinstall">
    <% linux_specific.each do |file| %>
        <include name="<%= file %>"/>
    <% end %>
  </fileset>

  <executable targetfile="$INSTALL_PATH/lib/ant/bin/ant"
              stage="never" os="unix" />
  <parsable targetfile="$INSTALL_PATH/bin/launch-browser.sh"
            os="unix" />
</pack>
<conditions>
  <condition type="variable"
   id="start.glassfish">
    <name>gf_start_domain</name>
      <value>true</value>
  </condition>
</conditions>
<guiprefs height="600" resizable="yes" width="800">
  <modifier key="allXGap" value="5"/>
  <modifier key="allYGap" value="5"/>
  <modifier key="paragraphYGap" value="15"/>
  <modifier key="useHeadingPanel" value="yes"/>
  <modifier key="headingLineCount" value="1"/>
  <modifier key="headingFontSize" value="2"/>
  <modifier key="headingBackgroundColor" value="0x00ffffff"/>
  <modifier key="headingPanelCounter" value="text"/>
  <modifier key="headingPanelCounterPos" value="inHeading"/>
</guiprefs>
variables
                Config files,
                 scripts, ...




Content-aware
 replacement
raw         pack200




deflate (gzip)    bzip2
Custom actions




Custom panels     Installer JAR




 3rd-party libs
Custom actions




Custom panels     Installer JAR




 3rd-party libs
.exe


Our very own native launcher, or...
1
      Intro + Demo


2
      Some features


3
       Positioning


4
    Thoughts on F/OSS
1
      Intro + Demo


2
      Some features


3
       Positioning


4
    Thoughts on F/OSS
MacOSX packages   BitRock InstallBuilder
IzPack is the only
true cross-platform
  installer to date
(...)
(...)
         IzPack is a
        complement
1
      Intro + Demo


2
      Some features


3
       Positioning


4
    Thoughts on F/OSS
1
      Intro + Demo


2
      Some features


3
       Positioning


4
    Thoughts on F/OSS
X11
                v3.0.0          shortcuts
     v2.0 Win32 shortcuts                    CommunityOne
  (rewrite) UserInputPanel            GPL      JavaOne



2001                     2004                2008             2009
03 08 11         08        02      01 05       04 05          04     11
               2002               2005

v1.0    v2.10.0         Move to             Move to      v4.3.0 v4.3.2,
   CVS @TuxFamily       BerliOS             Codehaus            fOSSa
   Fast development
                      Steady growth, people keep on joining
You decide
                                                                  to use it for
                                  X11                          your next projects
                v3.0.0          shortcuts
     v2.0 Win32 shortcuts                    CommunityOne
  (rewrite) UserInputPanel            GPL      JavaOne



2001                     2004                2008             2009
03 08 11         08        02      01 05       04 05          04     11
               2002               2005

v1.0    v2.10.0         Move to             Move to      v4.3.0 v4.3.2,
   CVS @TuxFamily       BerliOS             Codehaus            fOSSa
   Fast development
                      Steady growth, people keep on joining
Facts
Facts

I did not expect any success.
Facts

I did not expect any success.



You are always the last to know about usages.
Facts

I did not expect any success.



You are always the last to know about usages.



Community does not appear magically.
F/OSS... why?
                    nothing’s free!


Fun   Skills   Advertise




Strategic market shares




Direct revenue streams
Project type       “Main” models

                   Consulting
Framework          Training
and libraries      Support
                   Dual licensing

                   Support plans
Mission-critical
                   Consulting
infrastructure
                   Management tools
servers
                   Extensions

                   Open Core
Products           Extensions
                   Customizations
Start         Easy
                    Solo work

     Users!


     Patches!


Community support

                    Hard to reach
  Mature project
                    Manager work
Be open        Recruit developers




Learn to say no   Spread the news!
The hype

Patterns       TDD,     JSR xyz
               BDD




  Best                  Scripting
             IoC & DI
practices
The hype

     Patterns          TDD,           JSR xyz
                       BDD


...your application code will eventually look bad!

        Best                          Scripting
                     IoC & DI
      practices
Success

More...   emails, requests, expectations, ...


Less...   forgiveness, understanding, ...
Success

  More...    emails, requests, expectations, ...


   Less...   forgiveness, understanding, ...


You can’t scale... live with it!
(A)GPL       LGPL, MPL, EPL, ...   BSD, ASL, WTF, ...



Evil               Fair                Liberal
(mostly)

Linux              Eclipse             IzPack
KDE                Mozilla             Ruby on Rails
Dual licensing     OpenOffice.org       Android
Anxious people     XWiki               Apache
Governance
          leads, maintainers, committers,
Roles
          contributors, users, ...


          copyright transfer agreements,
 I.P.
          trademarks, ...


          coding standards,
Rules
          decision making, voting, ...
Thanks to...


The amazing IzPack community
Thanks to...


The amazing IzPack community


                   (good luck friends!)


  &            +
Julien Ponge
INSA-Lyon
INRIA / CITI / Amazones

julien.ponge@insa-lyon.fr
julien.ponge@inria.fr

http://julien.ponge.info/

Contenu connexe

Tendances

Leaner microservices with Java 10
Leaner microservices with Java 10Leaner microservices with Java 10
Leaner microservices with Java 10Arto Santala
 
From Ant to Maven to Gradle a tale of CI tools for JVM
From Ant to Maven to Gradle a tale of CI tools for JVMFrom Ant to Maven to Gradle a tale of CI tools for JVM
From Ant to Maven to Gradle a tale of CI tools for JVMBucharest Java User Group
 
Dev Environments: The Next Generation
Dev Environments: The Next GenerationDev Environments: The Next Generation
Dev Environments: The Next GenerationTravis Thieman
 
ZF2 Modular Architecture - Taking advantage of it
ZF2 Modular Architecture - Taking advantage of itZF2 Modular Architecture - Taking advantage of it
ZF2 Modular Architecture - Taking advantage of itSteve Maraspin
 
Writing Android Libraries
Writing Android LibrariesWriting Android Libraries
Writing Android Librariesemanuelez
 
Dalvik Vm &amp; Jit
Dalvik Vm &amp; JitDalvik Vm &amp; Jit
Dalvik Vm &amp; JitAnkit Somani
 
Choosing the Right Community Linux for Your Enterprise
Choosing the Right Community Linux for Your EnterpriseChoosing the Right Community Linux for Your Enterprise
Choosing the Right Community Linux for Your EnterpriseRogue Wave Software
 
Splash pro usermanual
Splash pro usermanualSplash pro usermanual
Splash pro usermanualroboanil
 
Splash pro usermanual
Splash pro usermanualSplash pro usermanual
Splash pro usermanualD'alejo Rave
 
How To Connect Hardware To Device Emulatorx
How To Connect Hardware To Device EmulatorxHow To Connect Hardware To Device Emulatorx
How To Connect Hardware To Device EmulatorxZebra Chen
 
[Td 2015]조막만한 화면에서 대박만한 화면까지. 고생 끝 적응(adaptive ui) 시작(권영철)
[Td 2015]조막만한 화면에서 대박만한 화면까지. 고생 끝 적응(adaptive ui) 시작(권영철)[Td 2015]조막만한 화면에서 대박만한 화면까지. 고생 끝 적응(adaptive ui) 시작(권영철)
[Td 2015]조막만한 화면에서 대박만한 화면까지. 고생 끝 적응(adaptive ui) 시작(권영철)Sang Don Kim
 
Why you should use the Yocto Project
Why you should use the Yocto ProjectWhy you should use the Yocto Project
Why you should use the Yocto Projectrossburton
 
Jollen's Presentation: Introducing Android low-level
Jollen's Presentation: Introducing Android low-levelJollen's Presentation: Introducing Android low-level
Jollen's Presentation: Introducing Android low-levelJollen Chen
 
Shorten Device Boot Time for Automotive IVI and Navigation Systems
Shorten Device Boot Time for Automotive IVI and Navigation SystemsShorten Device Boot Time for Automotive IVI and Navigation Systems
Shorten Device Boot Time for Automotive IVI and Navigation SystemsNational Cheng Kung University
 
Zend Framework Introduction
Zend Framework IntroductionZend Framework Introduction
Zend Framework IntroductionRafael Monteiro
 
Deprecated: Foundations of Zend Framework 2
Deprecated: Foundations of Zend Framework 2Deprecated: Foundations of Zend Framework 2
Deprecated: Foundations of Zend Framework 2Adam Culp
 

Tendances (20)

Leaner microservices with Java 10
Leaner microservices with Java 10Leaner microservices with Java 10
Leaner microservices with Java 10
 
Practice of Android Reverse Engineering
Practice of Android Reverse EngineeringPractice of Android Reverse Engineering
Practice of Android Reverse Engineering
 
From Ant to Maven to Gradle a tale of CI tools for JVM
From Ant to Maven to Gradle a tale of CI tools for JVMFrom Ant to Maven to Gradle a tale of CI tools for JVM
From Ant to Maven to Gradle a tale of CI tools for JVM
 
Dev Environments: The Next Generation
Dev Environments: The Next GenerationDev Environments: The Next Generation
Dev Environments: The Next Generation
 
ZF2 Modular Architecture - Taking advantage of it
ZF2 Modular Architecture - Taking advantage of itZF2 Modular Architecture - Taking advantage of it
ZF2 Modular Architecture - Taking advantage of it
 
Discover System Facilities inside Your Android Phone
Discover System Facilities inside Your Android Phone Discover System Facilities inside Your Android Phone
Discover System Facilities inside Your Android Phone
 
Writing Android Libraries
Writing Android LibrariesWriting Android Libraries
Writing Android Libraries
 
Android Internals
Android InternalsAndroid Internals
Android Internals
 
Dalvik Vm &amp; Jit
Dalvik Vm &amp; JitDalvik Vm &amp; Jit
Dalvik Vm &amp; Jit
 
Choosing the Right Community Linux for Your Enterprise
Choosing the Right Community Linux for Your EnterpriseChoosing the Right Community Linux for Your Enterprise
Choosing the Right Community Linux for Your Enterprise
 
Splash pro usermanual
Splash pro usermanualSplash pro usermanual
Splash pro usermanual
 
Splash pro usermanual
Splash pro usermanualSplash pro usermanual
Splash pro usermanual
 
How To Connect Hardware To Device Emulatorx
How To Connect Hardware To Device EmulatorxHow To Connect Hardware To Device Emulatorx
How To Connect Hardware To Device Emulatorx
 
Yocto Project - OSCON 7-17-2012
Yocto Project - OSCON 7-17-2012Yocto Project - OSCON 7-17-2012
Yocto Project - OSCON 7-17-2012
 
[Td 2015]조막만한 화면에서 대박만한 화면까지. 고생 끝 적응(adaptive ui) 시작(권영철)
[Td 2015]조막만한 화면에서 대박만한 화면까지. 고생 끝 적응(adaptive ui) 시작(권영철)[Td 2015]조막만한 화면에서 대박만한 화면까지. 고생 끝 적응(adaptive ui) 시작(권영철)
[Td 2015]조막만한 화면에서 대박만한 화면까지. 고생 끝 적응(adaptive ui) 시작(권영철)
 
Why you should use the Yocto Project
Why you should use the Yocto ProjectWhy you should use the Yocto Project
Why you should use the Yocto Project
 
Jollen's Presentation: Introducing Android low-level
Jollen's Presentation: Introducing Android low-levelJollen's Presentation: Introducing Android low-level
Jollen's Presentation: Introducing Android low-level
 
Shorten Device Boot Time for Automotive IVI and Navigation Systems
Shorten Device Boot Time for Automotive IVI and Navigation SystemsShorten Device Boot Time for Automotive IVI and Navigation Systems
Shorten Device Boot Time for Automotive IVI and Navigation Systems
 
Zend Framework Introduction
Zend Framework IntroductionZend Framework Introduction
Zend Framework Introduction
 
Deprecated: Foundations of Zend Framework 2
Deprecated: Foundations of Zend Framework 2Deprecated: Foundations of Zend Framework 2
Deprecated: Foundations of Zend Framework 2
 

En vedette

Announcements, 10/17/10
Announcements, 10/17/10Announcements, 10/17/10
Announcements, 10/17/10CLADSM
 
2010년 12월 온라인 광고 & 미디어 동향 보고서
2010년 12월 온라인 광고 & 미디어 동향 보고서2010년 12월 온라인 광고 & 미디어 동향 보고서
2010년 12월 온라인 광고 & 미디어 동향 보고서DMC미디어
 
Announcements, 5/10/15
Announcements, 5/10/15Announcements, 5/10/15
Announcements, 5/10/15CLADSM
 
Cute tiny monkeys
Cute tiny monkeysCute tiny monkeys
Cute tiny monkeyslorinchina
 
2010년 7월 온라인 광고&미디어 동향 보고서
2010년 7월 온라인 광고&미디어 동향 보고서2010년 7월 온라인 광고&미디어 동향 보고서
2010년 7월 온라인 광고&미디어 동향 보고서DMC미디어
 
Expect The Unexpected Slides, 7/19/15
Expect The Unexpected Slides, 7/19/15Expect The Unexpected Slides, 7/19/15
Expect The Unexpected Slides, 7/19/15CLADSM
 
2010 포털 개편에 따른 영화업종 온라인 광고의 변화
2010 포털 개편에 따른 영화업종 온라인 광고의 변화2010 포털 개편에 따른 영화업종 온라인 광고의 변화
2010 포털 개편에 따른 영화업종 온라인 광고의 변화DMC미디어
 
Exploring the Challenges of Implementing the American Disabilities
Exploring the Challenges of Implementing the American DisabilitiesExploring the Challenges of Implementing the American Disabilities
Exploring the Challenges of Implementing the American DisabilitiesDonna Lewis
 
Bad construction 3
Bad construction 3Bad construction 3
Bad construction 3lorinchina
 
The Science Of Discipleship Slides, 6/5/11
The Science Of Discipleship Slides, 6/5/11The Science Of Discipleship Slides, 6/5/11
The Science Of Discipleship Slides, 6/5/11CLADSM
 
Google “Android” 동향
Google “Android” 동향Google “Android” 동향
Google “Android” 동향DMC미디어
 
Jesus Encourages The Twelve, 2/14/16
Jesus Encourages The Twelve, 2/14/16Jesus Encourages The Twelve, 2/14/16
Jesus Encourages The Twelve, 2/14/16CLADSM
 
Strong performers and successful reformers
Strong performers and successful reformersStrong performers and successful reformers
Strong performers and successful reformersEduSkills OECD
 
2010년 10월 온라인 광고 & 미디어 동향 보고서
2010년 10월 온라인 광고 & 미디어 동향 보고서2010년 10월 온라인 광고 & 미디어 동향 보고서
2010년 10월 온라인 광고 & 미디어 동향 보고서DMC미디어
 
melssCRM Case Study - CMO Axis
melssCRM Case Study - CMO AxismelssCRM Case Study - CMO Axis
melssCRM Case Study - CMO AxismelssCRM
 
MW16 IIIF: Unshackle Your Images
MW16 IIIF: Unshackle Your ImagesMW16 IIIF: Unshackle Your Images
MW16 IIIF: Unshackle Your ImagesCogapp
 
Announcements, 9/25/11
Announcements, 9/25/11Announcements, 9/25/11
Announcements, 9/25/11CLADSM
 
코드 기호 마케팅
코드 기호 마케팅코드 기호 마케팅
코드 기호 마케팅DMC미디어
 
Announcements, 7/17/11
Announcements, 7/17/11Announcements, 7/17/11
Announcements, 7/17/11CLADSM
 

En vedette (20)

Announcements, 10/17/10
Announcements, 10/17/10Announcements, 10/17/10
Announcements, 10/17/10
 
2010년 12월 온라인 광고 & 미디어 동향 보고서
2010년 12월 온라인 광고 & 미디어 동향 보고서2010년 12월 온라인 광고 & 미디어 동향 보고서
2010년 12월 온라인 광고 & 미디어 동향 보고서
 
Announcements, 5/10/15
Announcements, 5/10/15Announcements, 5/10/15
Announcements, 5/10/15
 
Cute tiny monkeys
Cute tiny monkeysCute tiny monkeys
Cute tiny monkeys
 
2010년 7월 온라인 광고&미디어 동향 보고서
2010년 7월 온라인 광고&미디어 동향 보고서2010년 7월 온라인 광고&미디어 동향 보고서
2010년 7월 온라인 광고&미디어 동향 보고서
 
Expect The Unexpected Slides, 7/19/15
Expect The Unexpected Slides, 7/19/15Expect The Unexpected Slides, 7/19/15
Expect The Unexpected Slides, 7/19/15
 
2010 포털 개편에 따른 영화업종 온라인 광고의 변화
2010 포털 개편에 따른 영화업종 온라인 광고의 변화2010 포털 개편에 따른 영화업종 온라인 광고의 변화
2010 포털 개편에 따른 영화업종 온라인 광고의 변화
 
Exploring the Challenges of Implementing the American Disabilities
Exploring the Challenges of Implementing the American DisabilitiesExploring the Challenges of Implementing the American Disabilities
Exploring the Challenges of Implementing the American Disabilities
 
Bad construction 3
Bad construction 3Bad construction 3
Bad construction 3
 
The Science Of Discipleship Slides, 6/5/11
The Science Of Discipleship Slides, 6/5/11The Science Of Discipleship Slides, 6/5/11
The Science Of Discipleship Slides, 6/5/11
 
Google “Android” 동향
Google “Android” 동향Google “Android” 동향
Google “Android” 동향
 
Jesus Encourages The Twelve, 2/14/16
Jesus Encourages The Twelve, 2/14/16Jesus Encourages The Twelve, 2/14/16
Jesus Encourages The Twelve, 2/14/16
 
Strong performers and successful reformers
Strong performers and successful reformersStrong performers and successful reformers
Strong performers and successful reformers
 
2010년 10월 온라인 광고 & 미디어 동향 보고서
2010년 10월 온라인 광고 & 미디어 동향 보고서2010년 10월 온라인 광고 & 미디어 동향 보고서
2010년 10월 온라인 광고 & 미디어 동향 보고서
 
melssCRM Case Study - CMO Axis
melssCRM Case Study - CMO AxismelssCRM Case Study - CMO Axis
melssCRM Case Study - CMO Axis
 
Enlosmn20110630
Enlosmn20110630Enlosmn20110630
Enlosmn20110630
 
MW16 IIIF: Unshackle Your Images
MW16 IIIF: Unshackle Your ImagesMW16 IIIF: Unshackle Your Images
MW16 IIIF: Unshackle Your Images
 
Announcements, 9/25/11
Announcements, 9/25/11Announcements, 9/25/11
Announcements, 9/25/11
 
코드 기호 마케팅
코드 기호 마케팅코드 기호 마케팅
코드 기호 마케팅
 
Announcements, 7/17/11
Announcements, 7/17/11Announcements, 7/17/11
Announcements, 7/17/11
 

Similaire à Iz Pack

Slides Aquarium Paris 2008
Slides Aquarium Paris 2008Slides Aquarium Paris 2008
Slides Aquarium Paris 2008julien.ponge
 
IzPack - fOSSa 2009
IzPack - fOSSa 2009IzPack - fOSSa 2009
IzPack - fOSSa 2009julien.ponge
 
Developing FirefoxOS
Developing FirefoxOSDeveloping FirefoxOS
Developing FirefoxOSFred Lin
 
Gabriele Columbro - Maurizio Pillitu - Get your Alfresco project from Zero to...
Gabriele Columbro - Maurizio Pillitu - Get your Alfresco project from Zero to...Gabriele Columbro - Maurizio Pillitu - Get your Alfresco project from Zero to...
Gabriele Columbro - Maurizio Pillitu - Get your Alfresco project from Zero to...Symphony Software Foundation
 
Intro To Linux
Intro To LinuxIntro To Linux
Intro To Linuxtechlug
 
Joxean Koret - Database Security Paradise [Rooted CON 2011]
Joxean Koret - Database Security Paradise [Rooted CON 2011]Joxean Koret - Database Security Paradise [Rooted CON 2011]
Joxean Koret - Database Security Paradise [Rooted CON 2011]RootedCON
 
Containers for Science and High-Performance Computing
Containers for Science and High-Performance ComputingContainers for Science and High-Performance Computing
Containers for Science and High-Performance ComputingDmitry Spodarets
 
Ideal Deployment In .NET World
Ideal Deployment In .NET WorldIdeal Deployment In .NET World
Ideal Deployment In .NET WorldDima Pasko
 
Janus Workshop @ ClueCon 2020
Janus Workshop @ ClueCon 2020Janus Workshop @ ClueCon 2020
Janus Workshop @ ClueCon 2020Lorenzo Miniero
 
Webdevcon Keynote hh-2012-09-18
Webdevcon Keynote hh-2012-09-18Webdevcon Keynote hh-2012-09-18
Webdevcon Keynote hh-2012-09-18Pierre Joye
 
Common primitives in Docker environments
Common primitives in Docker environmentsCommon primitives in Docker environments
Common primitives in Docker environmentsalexandru giurgiu
 
symfony: An Open-Source Framework for Professionals (Dutch Php Conference 2008)
symfony: An Open-Source Framework for Professionals (Dutch Php Conference 2008)symfony: An Open-Source Framework for Professionals (Dutch Php Conference 2008)
symfony: An Open-Source Framework for Professionals (Dutch Php Conference 2008)Fabien Potencier
 
DevOps meetup 16oct docker and jenkins
DevOps meetup 16oct docker and jenkinsDevOps meetup 16oct docker and jenkins
DevOps meetup 16oct docker and jenkinsBenoit Wilcox
 
Why everyone is excited about Docker (and you should too...) - Carlo Bonamic...
Why everyone is excited about Docker (and you should too...) -  Carlo Bonamic...Why everyone is excited about Docker (and you should too...) -  Carlo Bonamic...
Why everyone is excited about Docker (and you should too...) - Carlo Bonamic...Codemotion
 
Porting your favourite cmdline tool to Android
Porting your favourite cmdline tool to AndroidPorting your favourite cmdline tool to Android
Porting your favourite cmdline tool to AndroidVlatko Kosturjak
 
Puppet for SysAdmins
Puppet for SysAdminsPuppet for SysAdmins
Puppet for SysAdminsPuppet
 
Os Henrikson
Os HenriksonOs Henrikson
Os Henriksonoscon2007
 

Similaire à Iz Pack (20)

Slides Aquarium Paris 2008
Slides Aquarium Paris 2008Slides Aquarium Paris 2008
Slides Aquarium Paris 2008
 
IzPack - fOSSa 2009
IzPack - fOSSa 2009IzPack - fOSSa 2009
IzPack - fOSSa 2009
 
Developing FirefoxOS
Developing FirefoxOSDeveloping FirefoxOS
Developing FirefoxOS
 
Gabriele Columbro - Maurizio Pillitu - Get your Alfresco project from Zero to...
Gabriele Columbro - Maurizio Pillitu - Get your Alfresco project from Zero to...Gabriele Columbro - Maurizio Pillitu - Get your Alfresco project from Zero to...
Gabriele Columbro - Maurizio Pillitu - Get your Alfresco project from Zero to...
 
Intro To Linux
Intro To LinuxIntro To Linux
Intro To Linux
 
Joxean Koret - Database Security Paradise [Rooted CON 2011]
Joxean Koret - Database Security Paradise [Rooted CON 2011]Joxean Koret - Database Security Paradise [Rooted CON 2011]
Joxean Koret - Database Security Paradise [Rooted CON 2011]
 
Containers for Science and High-Performance Computing
Containers for Science and High-Performance ComputingContainers for Science and High-Performance Computing
Containers for Science and High-Performance Computing
 
Ideal Deployment In .NET World
Ideal Deployment In .NET WorldIdeal Deployment In .NET World
Ideal Deployment In .NET World
 
Janus Workshop @ ClueCon 2020
Janus Workshop @ ClueCon 2020Janus Workshop @ ClueCon 2020
Janus Workshop @ ClueCon 2020
 
Foss Presentation
Foss PresentationFoss Presentation
Foss Presentation
 
Webdevcon Keynote hh-2012-09-18
Webdevcon Keynote hh-2012-09-18Webdevcon Keynote hh-2012-09-18
Webdevcon Keynote hh-2012-09-18
 
Play framework
Play frameworkPlay framework
Play framework
 
Common primitives in Docker environments
Common primitives in Docker environmentsCommon primitives in Docker environments
Common primitives in Docker environments
 
symfony: An Open-Source Framework for Professionals (Dutch Php Conference 2008)
symfony: An Open-Source Framework for Professionals (Dutch Php Conference 2008)symfony: An Open-Source Framework for Professionals (Dutch Php Conference 2008)
symfony: An Open-Source Framework for Professionals (Dutch Php Conference 2008)
 
DevOps meetup 16oct docker and jenkins
DevOps meetup 16oct docker and jenkinsDevOps meetup 16oct docker and jenkins
DevOps meetup 16oct docker and jenkins
 
Why everyone is excited about Docker (and you should too...) - Carlo Bonamic...
Why everyone is excited about Docker (and you should too...) -  Carlo Bonamic...Why everyone is excited about Docker (and you should too...) -  Carlo Bonamic...
Why everyone is excited about Docker (and you should too...) - Carlo Bonamic...
 
Porting your favourite cmdline tool to Android
Porting your favourite cmdline tool to AndroidPorting your favourite cmdline tool to Android
Porting your favourite cmdline tool to Android
 
Puppet for SysAdmins
Puppet for SysAdminsPuppet for SysAdmins
Puppet for SysAdmins
 
Os Henrikson
Os HenriksonOs Henrikson
Os Henrikson
 
Universal Userland
Universal UserlandUniversal Userland
Universal Userland
 

Plus de Inria

Diffusion des developpements informatiques
Diffusion des developpements informatiquesDiffusion des developpements informatiques
Diffusion des developpements informatiquesInria
 
Choir and Community Management
Choir and Community ManagementChoir and Community Management
Choir and Community ManagementInria
 
Open Source Governance v2.5
Open Source Governance v2.5Open Source Governance v2.5
Open Source Governance v2.5Inria
 
Ecosystemes logiciel-libre PARIS - GTLL - Systematic
Ecosystemes logiciel-libre PARIS - GTLL - SystematicEcosystemes logiciel-libre PARIS - GTLL - Systematic
Ecosystemes logiciel-libre PARIS - GTLL - SystematicInria
 
Spago Bi
Spago BiSpago Bi
Spago BiInria
 
SOA/SCA FraScAti
SOA/SCA FraScAtiSOA/SCA FraScAti
SOA/SCA FraScAtiInria
 
Quattor
QuattorQuattor
QuattorInria
 
Platine Fossa
Platine FossaPlatine Fossa
Platine FossaInria
 
Presentation Exo Platform
Presentation Exo PlatformPresentation Exo Platform
Presentation Exo PlatformInria
 
Ocelot (OSS remote Instrumentation)
Ocelot (OSS remote Instrumentation)Ocelot (OSS remote Instrumentation)
Ocelot (OSS remote Instrumentation)Inria
 
Mandriva Present Task Oriented Desktop
Mandriva Present Task Oriented DesktopMandriva Present Task Oriented Desktop
Mandriva Present Task Oriented DesktopInria
 
Compiler Ggcc
Compiler GgccCompiler Ggcc
Compiler GgccInria
 
Software applicance Ushare Soft
Software applicance Ushare SoftSoftware applicance Ushare Soft
Software applicance Ushare SoftInria
 
SOA Galaxy
SOA GalaxySOA Galaxy
SOA GalaxyInria
 
Cloud Biocep
Cloud BiocepCloud Biocep
Cloud BiocepInria
 
Floss Metrics 2009
Floss Metrics 2009Floss Metrics 2009
Floss Metrics 2009Inria
 
SOA Sim Sy Prod
SOA Sim Sy ProdSOA Sim Sy Prod
SOA Sim Sy ProdInria
 
Bonita Soft Presentation
Bonita Soft PresentationBonita Soft Presentation
Bonita Soft PresentationInria
 
Topcased
TopcasedTopcased
TopcasedInria
 
03 Researchfriendly Org2
03 Researchfriendly Org203 Researchfriendly Org2
03 Researchfriendly Org2Inria
 

Plus de Inria (20)

Diffusion des developpements informatiques
Diffusion des developpements informatiquesDiffusion des developpements informatiques
Diffusion des developpements informatiques
 
Choir and Community Management
Choir and Community ManagementChoir and Community Management
Choir and Community Management
 
Open Source Governance v2.5
Open Source Governance v2.5Open Source Governance v2.5
Open Source Governance v2.5
 
Ecosystemes logiciel-libre PARIS - GTLL - Systematic
Ecosystemes logiciel-libre PARIS - GTLL - SystematicEcosystemes logiciel-libre PARIS - GTLL - Systematic
Ecosystemes logiciel-libre PARIS - GTLL - Systematic
 
Spago Bi
Spago BiSpago Bi
Spago Bi
 
SOA/SCA FraScAti
SOA/SCA FraScAtiSOA/SCA FraScAti
SOA/SCA FraScAti
 
Quattor
QuattorQuattor
Quattor
 
Platine Fossa
Platine FossaPlatine Fossa
Platine Fossa
 
Presentation Exo Platform
Presentation Exo PlatformPresentation Exo Platform
Presentation Exo Platform
 
Ocelot (OSS remote Instrumentation)
Ocelot (OSS remote Instrumentation)Ocelot (OSS remote Instrumentation)
Ocelot (OSS remote Instrumentation)
 
Mandriva Present Task Oriented Desktop
Mandriva Present Task Oriented DesktopMandriva Present Task Oriented Desktop
Mandriva Present Task Oriented Desktop
 
Compiler Ggcc
Compiler GgccCompiler Ggcc
Compiler Ggcc
 
Software applicance Ushare Soft
Software applicance Ushare SoftSoftware applicance Ushare Soft
Software applicance Ushare Soft
 
SOA Galaxy
SOA GalaxySOA Galaxy
SOA Galaxy
 
Cloud Biocep
Cloud BiocepCloud Biocep
Cloud Biocep
 
Floss Metrics 2009
Floss Metrics 2009Floss Metrics 2009
Floss Metrics 2009
 
SOA Sim Sy Prod
SOA Sim Sy ProdSOA Sim Sy Prod
SOA Sim Sy Prod
 
Bonita Soft Presentation
Bonita Soft PresentationBonita Soft Presentation
Bonita Soft Presentation
 
Topcased
TopcasedTopcased
Topcased
 
03 Researchfriendly Org2
03 Researchfriendly Org203 Researchfriendly Org2
03 Researchfriendly Org2
 

Dernier

Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxLoriGlavin3
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESmohitsingh558521
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersRaghuram Pandurangan
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 

Dernier (20)

Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information Developers
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 

Iz Pack

  • 1. Julien Ponge Free Open Source Software Academia Conference November 17th & 18th 2009
  • 2. Associate Professor Telecommunications, services and usages dept. CITI / Amazones Dynamic systems Embedded Formal systems Pervasive Observation Ambient Security Mobile
  • 3. From a hack made in a student dorm room... ... not mine!
  • 5. 1 Intro + Demo 2 Some features 3 Positioning 4 Thoughts on F/OSS
  • 6. 1 Intro + Demo 2 Some features 3 Positioning 4 Thoughts on F/OSS
  • 7.
  • 9. Unique installer Multiple systems
  • 10. v2 Download for your operating system 1: java -Xmx256m -jar filename.jar 2: chmod -R +x lib/ant/bin 3: lib/ant/bin/ant -f setup.xml 4: bin/asadmin start-domain domain
  • 11. Demo One download Works everywhere Straightforward
  • 12.
  • 13.
  • 15. (...)
  • 16. JavaOne 2008 Grant Invited talks Code contributions Software licenses
  • 17. 1 Intro + Demo 2 Some features 3 Positioning 4 Thoughts on F/OSS
  • 18. 1 Intro + Demo 2 Some features 3 Positioning 4 Thoughts on F/OSS
  • 19.
  • 20. Packs, conditions, langpacks, libraries, GUI, metadata, ... Files Descriptor Resources Compiler Installer JAR
  • 25. <installation version="1.0"> <info> <appname>Glassfish</appname> <appversion>v2 ur2 b04</appversion> <authors> <author email="" name="Julien Ponge (packager)"/> <author email="" name="Sun Microsystems and the GlassFish community"/> </authors> <url>http://glassfish.org/</url> <javaversion>1.5</javaversion> <requiresjdk>yes</requiresjdk> </info> (...)
  • 26. (...) <panels> <panel classname="HTMLInfoPanel" /> <panel classname="HTMLLicencePanel" /> <panel classname="TargetPanel" /> <panel classname="UserInputPanel" /> <panel classname="InstallPanel" /> <panel classname="ProcessPanel" /> <panel classname="ShortcutPanel" /> <panel classname="SimpleFinishPanel" /> </panels> (...)
  • 27. <pack name="GlassFish" required="yes"> <description>GlassFish</description> <file src="launch-browser.sh" targetdir="$INSTALL_PATH/bin" condition="izpack.macinstall" /> <fileset dir="linux" targetdir="$INSTALL_PATH" condition="izpack.linuxinstall"> <% linux_specific.each do |file| %> <include name="<%= file %>"/> <% end %> </fileset> <executable targetfile="$INSTALL_PATH/lib/ant/bin/ant" stage="never" os="unix" /> <parsable targetfile="$INSTALL_PATH/bin/launch-browser.sh" os="unix" /> </pack>
  • 28. <pack name="GlassFish" required="yes"> <description>GlassFish</description> <file src="launch-browser.sh" targetdir="$INSTALL_PATH/bin" condition="izpack.macinstall" /> <fileset dir="linux" targetdir="$INSTALL_PATH" condition="izpack.linuxinstall"> <% linux_specific.each do |file| %> <include name="<%= file %>"/> <% end %> </fileset> <executable targetfile="$INSTALL_PATH/lib/ant/bin/ant" stage="never" os="unix" /> <parsable targetfile="$INSTALL_PATH/bin/launch-browser.sh" os="unix" /> </pack>
  • 29. <pack name="GlassFish" required="yes"> <description>GlassFish</description> <file src="launch-browser.sh" targetdir="$INSTALL_PATH/bin" condition="izpack.macinstall" /> <fileset dir="linux" targetdir="$INSTALL_PATH" condition="izpack.linuxinstall"> <% linux_specific.each do |file| %> <include name="<%= file %>"/> <% end %> </fileset> Ant-style: **/* <executable targetfile="$INSTALL_PATH/lib/ant/bin/ant" dir/*.class stage="never" os="unix" /> **/*.jar <parsable targetfile="$INSTALL_PATH/bin/launch-browser.sh" lib/**/*.jar os="unix" /> </pack>
  • 30. <pack name="GlassFish" required="yes"> <description>GlassFish</description> <file src="launch-browser.sh" targetdir="$INSTALL_PATH/bin" condition="izpack.macinstall" /> <fileset dir="linux" targetdir="$INSTALL_PATH" condition="izpack.linuxinstall"> <% linux_specific.each do |file| %> <include name="<%= file %>"/> <% end %> </fileset> <executable targetfile="$INSTALL_PATH/lib/ant/bin/ant" stage="never" os="unix" /> <parsable targetfile="$INSTALL_PATH/bin/launch-browser.sh" os="unix" /> </pack>
  • 31. <conditions> <condition type="variable" id="start.glassfish"> <name>gf_start_domain</name> <value>true</value> </condition> </conditions>
  • 32. <guiprefs height="600" resizable="yes" width="800"> <modifier key="allXGap" value="5"/> <modifier key="allYGap" value="5"/> <modifier key="paragraphYGap" value="15"/> <modifier key="useHeadingPanel" value="yes"/> <modifier key="headingLineCount" value="1"/> <modifier key="headingFontSize" value="2"/> <modifier key="headingBackgroundColor" value="0x00ffffff"/> <modifier key="headingPanelCounter" value="text"/> <modifier key="headingPanelCounterPos" value="inHeading"/> </guiprefs>
  • 33.
  • 34.
  • 35.
  • 36. variables Config files, scripts, ... Content-aware replacement
  • 37.
  • 38. raw pack200 deflate (gzip) bzip2
  • 39. Custom actions Custom panels Installer JAR 3rd-party libs
  • 40. Custom actions Custom panels Installer JAR 3rd-party libs
  • 41. .exe Our very own native launcher, or...
  • 42.
  • 43. 1 Intro + Demo 2 Some features 3 Positioning 4 Thoughts on F/OSS
  • 44. 1 Intro + Demo 2 Some features 3 Positioning 4 Thoughts on F/OSS
  • 45. MacOSX packages BitRock InstallBuilder
  • 46. IzPack is the only true cross-platform installer to date
  • 47. (...)
  • 48. (...) IzPack is a complement
  • 49.
  • 50.
  • 51.
  • 52.
  • 53. 1 Intro + Demo 2 Some features 3 Positioning 4 Thoughts on F/OSS
  • 54. 1 Intro + Demo 2 Some features 3 Positioning 4 Thoughts on F/OSS
  • 55. X11 v3.0.0 shortcuts v2.0 Win32 shortcuts CommunityOne (rewrite) UserInputPanel GPL JavaOne 2001 2004 2008 2009 03 08 11 08 02 01 05 04 05 04 11 2002 2005 v1.0 v2.10.0 Move to Move to v4.3.0 v4.3.2, CVS @TuxFamily BerliOS Codehaus fOSSa Fast development Steady growth, people keep on joining
  • 56. You decide to use it for X11 your next projects v3.0.0 shortcuts v2.0 Win32 shortcuts CommunityOne (rewrite) UserInputPanel GPL JavaOne 2001 2004 2008 2009 03 08 11 08 02 01 05 04 05 04 11 2002 2005 v1.0 v2.10.0 Move to Move to v4.3.0 v4.3.2, CVS @TuxFamily BerliOS Codehaus fOSSa Fast development Steady growth, people keep on joining
  • 57. Facts
  • 58. Facts I did not expect any success.
  • 59. Facts I did not expect any success. You are always the last to know about usages.
  • 60. Facts I did not expect any success. You are always the last to know about usages. Community does not appear magically.
  • 61. F/OSS... why? nothing’s free! Fun Skills Advertise Strategic market shares Direct revenue streams
  • 62. Project type “Main” models Consulting Framework Training and libraries Support Dual licensing Support plans Mission-critical Consulting infrastructure Management tools servers Extensions Open Core Products Extensions Customizations
  • 63. Start Easy Solo work Users! Patches! Community support Hard to reach Mature project Manager work
  • 64.
  • 65. Be open Recruit developers Learn to say no Spread the news!
  • 66. The hype Patterns TDD, JSR xyz BDD Best Scripting IoC & DI practices
  • 67. The hype Patterns TDD, JSR xyz BDD ...your application code will eventually look bad! Best Scripting IoC & DI practices
  • 68. Success More... emails, requests, expectations, ... Less... forgiveness, understanding, ...
  • 69. Success More... emails, requests, expectations, ... Less... forgiveness, understanding, ... You can’t scale... live with it!
  • 70. (A)GPL LGPL, MPL, EPL, ... BSD, ASL, WTF, ... Evil Fair Liberal (mostly) Linux Eclipse IzPack KDE Mozilla Ruby on Rails Dual licensing OpenOffice.org Android Anxious people XWiki Apache
  • 71. Governance leads, maintainers, committers, Roles contributors, users, ... copyright transfer agreements, I.P. trademarks, ... coding standards, Rules decision making, voting, ...
  • 72.
  • 73.
  • 74. Thanks to... The amazing IzPack community
  • 75. Thanks to... The amazing IzPack community (good luck friends!) & +
  • 76. Julien Ponge INSA-Lyon INRIA / CITI / Amazones julien.ponge@insa-lyon.fr julien.ponge@inria.fr http://julien.ponge.info/