-
Notifications
You must be signed in to change notification settings - Fork 127
Installation: Client
NOTE: You can skip this part and directly use nightly at http://nightlies.archipelproject.org. see how to install client from nightlies
This part will guide you through the installation of the client (the web GUI) The only prerequisites for building Archipel Client are:
- SUN's JDK or OpenJDK. (don't panic, java is only needed by the Cappuccino build tools, you can remove it after, you don't need Java to use Archipel)
- a real WebBrowser (forget IE it forgets us).
Bootstrap is the script that will build all needed things for archipel client.
The bootstrap will first checks if all Archipel's submodules are initialized. While you just cloned the
repository, they aren't. So it will start to run git submodule update --init
. This has to be done where you have made git clone
After that, you can enter the ArchipelClient, and run bootstrap.sh
##############################################################################
# #
# Archipel Submodules #
# #
##############################################################################
It seems that your local copy hasn't its submodules initialized. Bootstrap
will initialize it for you. Please wait.
Submodule 'GrowlCappuccino'
Submodule 'LPKit'
Submodule 'MessageBoard'
Submodule 'StropheCappuccino'
Submodule 'VNCCappuccino'
Submodule 'iTunesTabView'
[...]
* Continue ? [y/n] :
When this is ok, bootstrap
won't ask you to update submodules as it will have touched a
file named .submodules_initialized
. If you want to retry sync, just remove this file and run
bootstrap
again
bootstrap
will ask you if you want to build all necessary Frameworks, apply the
Cappuccino frameworks and export the release as a flattened ready-to-run web application.
You should say yes
to all questions.
##############################################################################
# #
# Archipel Client #
# #
##############################################################################
Welcome to the installation script of Archipel Client. You need to have the
Cappuccino development environment installed in order to build this software.
You can grab it from http://cappuccino.org
Testing environment
* Would you like to build Cappuccino ? [y/n] :
* Would you like to build GrowlCappuccino ? [y/n] :
* Would you like to build VNCCappuccino ? [y/n] :
* Would you like to build StropheCappuccino ? [y/n] :
* Would you like to build iTunesTabView ? [y/n] :
* Would you like to build MessageBoard ? [y/n] :
* Would you like to build LPKit ? [y/n] :
* Would you like to build Archipel Client ? [y/n] :
* Would you like to apply Cappuccino Framework ? [y/n] :
* Would you like to export Archipel ? [y/n] :
* Where do you want to export Archipel Client ? ~/ : ~/Desktop/ArchipelRelease
Installation information
- build Cappuccino : True
- build GrowlCappuccino : True
- build VNCCappuccino : True
- build StropheCappuccino : True
- build iTunesTabView : True
- build MessageBoard : True
- build LPKit : True
- build Archipel Client : True
- apply Cappuccino : True
- export to : ~/Desktop/ArchipelRelease
* Do you confirm ? [y/n] :
When you confirm the build starts :
* Do you confirm ? [y/n] :
* Building Cappuccino
* Cappuccino builded
* Building GrowlCappuccino
* GrowlCappuccino builded
* Building VNCCappuccino
* VNCCappuccino builded
* Building StropheCappuccino
* StropheCappuccino builded
* Building iTunesTabView
* iTunesTabView builded
* Building MessageBoard
* MessageBoard builded
* Building LPKit
* LPKit builded
* Adding Cappuccino framework
* Cappuccino added
* Building ArchipelClient
* ArchipelClient built
* Exporting archipel to ~/Desktop/ArchipelRelease
* Archipel Client exported
Installation is now complete.
* Continue ? [y/n] :
The builded version of Archipel Client is available to your export path. Just put it in a
HTTP served directory (or with Safari/WebKit nightlies, you can even launch it as file:///
) and you're ready
to go.
Cappuccino applications don't have to be "built". They can be run right from the source directory, but then, the Cappuccino runtime will have to parse source on the fly. This decreases the overall performances. But for developing needs, performance is not really necessary. By the way, all the bundles (located in Modules.src) have to be built, otherwise they won't load at all.
The really low level way to build a module is:
cd Modules.src/MyModule/
jake release ; jake debug
cd ../../Modules
ln -s Modules.src/MyModules/Build/{Debug/Release}/MyModule
and then edit Modules/modules.plist to tell Archipel to load the module :
<dict>
<key>folder</key>
<string>MyModule</string>
</dict>
All of this is a pain. So we also provide another script called buildArchipel
that
automates all these tasks.
For example, to do the exact same thing as above you can do:
cd ArchipelClient # you must be in this directory
./buildArchipel -bg --modules=MyModule
That's all.
If you want to build two or more modules, separate them with commas:
./buildArchipel -bg --modules=Module1,Module2,...,ModuleN
If you use the g
options the module plist will only contains the modules given with --modules
.
If you want to build all modules:
./buildArchipel -bag [--config=Release|Debug]
Then you can update some modules without regenerating the plist using:
./buildArchipel -b --modules=Module1,Module2
For more information just type
./buildArchipel --help
This script build Archipel GUI according to a the following set of options.
Copyright (c) 2010 Antoine Mercadal <[email protected]>
Usage: build.py COMMAND [CONFIG] TARGETS [OPTIONS]
COMMAND are the following:
-b | --build : build the TARGETS
-C | --clean : clean the TARGETS builded
CONFIG is the following:
--config=<conf> : <conf> can be 'release' of 'debug'. If ommited, default config is 'debug'.
TARGETS are the following:
-a | --all : build all. Projects and all modules;
-p | --project : build only Archipel without any modules;
-m | --allmodules : build only all modules;
--modules=<list> : build a given list of module. <list> is "moduleA,moduleC" whith no space.
OPTIONS are the following:
-I | --installmodules : copy all the already builded modules according to TARGET to the destination dir.
-u | --uninstallmodules : remove all the builded modules according to TARGET from the destination dir.
-g | --generateplist : generate a modules.plist file according to TARGET.
-h | --help : display this message
-e | --example : display some usage example;
--native=<platform> : generate a native app. platform supported are [MacOS] (case sensitive).
--ignoremodules=<list> : ignore list of modules. <list> is "moduleA,moduleC" whith no space.
--exportsdk=<path> : generate and export Archipel SDK to <path>
--export=<path> : export the ready to use flattened application to <path>