Wikipedia fa/my DVD/workpackages

Task1: Windows port

 * purpose
 * Make a Windows (2000/XP/VISTA/7) x86_32 version of Kiwix. That means make working Makefiles and DLLs of/for the following 3 XPCOM components (zimAccessor, zimXapianIndexer, xapianAccessor). The compilation process must run in a POSIX environment (mingw) with GNU Makefiles and using the MS compiler (cl.exe) and linker (link.exe).


 * constraints
 * Must work with GNU Makefiles
 * Must be fully documented
 * Must provide a global script or Makefile doing all what is necessary to do (from downloading the dependence source code to provide a tar.gz with kiwix for Windows).
 * Must compile on mingw
 * Must compile with MS cl.exe
 * Components must be compiled statically
 * Providing support during 6 months following the due date.


 * due date
 * 2010-02-15


 * paid
 * 2000$


 * additional informations
 * There is already a prototype: binary and sources (search for the WinStudio project files).
 * Dependences are gecko-sdk, xapian, libunac, libzip2, zlib, liblzma (see here).


 * contact
 * emmanuel _at_ engelhart.org


 * faq


 * Which version of the code source should be ported?
 * ''Use this archive


 * Where are the dependences?
 * ''All what is necessary should be available here. Visual Studio Express can be downloaded from MS Web site.


 * Which parts of Kiwix sources should run on Windows?
 * ''Only the client should be ported... actualy that means the XPCOM components in src/components


 * How do I know if it works?
 * ''You should be able to view/index/search through a ZIM file without issue. Concretely, if the 3 components register by starting xulrunner, the job is 99% done. There is a check here.


 * What does it mean... components have to register?
 * ''Please read that.


 * Where may I download a test ZIM file?
 * ''here


 * Should I compile the dependences or use the released binaries?
 * ''If possible (should be always possible except for xz-utils) yes. Constraints are the same as for Kiwix itself (GNU Makefile if necessary, doc, ...)


 * Should I compile also xulrunner?
 * ''Like you want. This is not mandatory... if not use the binary version of the SDK and runtime here


 * Do I have to work on the code itself?
 * ''No, you should not... if this seems necessary, contact immediatly Emmanuel. In any case, this is not part of the workpackage/contract.


 * How may I commit my work?
 * ''The whole stuff should be available on the subversion repository of Kiwix. Please communicate your sourceforge nickname to Emmanuel and he will allow you SVN commit.


 * Where should I have a look if I have specific questions?
 * ''Contact asap Emmanuel per email, jabber (kelson -at- kiwix.org) or visit the IRC #kiwix channel on Freenode.


 * How to compile the client with Windows:
 * Read this page

Task2: Windows installer

 * purpose
 * Make a Windows installer for Kiwix and Kiwix content (ZIM files and Xapian search indexes)


 * constraints
 * Must use NSIS (Nullsoft Scriptable Install System)
 * Must have standard install/uninstall process
 * Must have a full documentation about how to build the installer
 * Must provide a global script or Makefile doing all what is necessary to do.
 * Providing support during 6 months following the due date.
 * Must compile on mingw


 * due date
 * 2010-02-15


 * paid
 * 500$


 * additional informations
 * There is already something, code needs to be adapted: ISO of the last version and code


 * contact
 * emmanuel _at_ engelhart.org

Task3: Windows DVD launcher

 * purpose
 * Make a DVD launcher (run by the autorun) to give the choice over run/install/exit Kiwix


 * constraints
 * Must use a specific code base
 * Must have a full documentation about how to build the installer
 * Must provide a global script or Makefile doing all what is necessary to do.
 * Must compile on mingw
 * Providing support during 6 months following the due date.


 * due date
 * 2010-02-15


 * paid
 * 300$


 * additional informations


 * contact
 * emmanuel _at_ engelhart.org