Deployment/howto

From Kiwix
Jump to navigation Jump to search

This Deployment HOWTO is an online documentation to help everyone wanting to provide deploy Kiwix. Feel free to make remarks or ask question in the talk page.

Kiwix 0.9 alpha1 screenshot en.png
0.9 alpha1 version screenshot (screencast)

Technical solutions

Article served via HTTP by kiwix-serve

Kiwix provides different technical solutions:

  • kiwix, a desktop application. You may install it on any computer with a screen. It runs on Windows, OSX and Linux. This software provides a lot of features (bookmarks, content manager, ...) and is the most common used software.
  • kiwix-serve. a HTTP daemon application. You may run kiwix-serve on any computer (which could be without screen, like a server) an each other computer (called client) may access to the content served by kiwix-serve through the network. Client should only start a Web browser, type the name or ip of the server to access to the content. With kiwix-serve you can read the article and use the fulltext search engine, but it does not provide all the feature of the Kiwix desktop application. Currently kiwix-serve only runs on Linux, but we will port it soon to Windows and Mac.

Define your target

Before starting to find a technical solution to deploy, you need to ask you a few essential questions:

  • What is the audience? This is essential to know a little bit about the audience to increase the positive impact of your project. You have especially to choose a content which is adapted. You need also to check if the future users will need help to learn how to deal with what you will provide, content and software. Estimate the time you will need to invest to help your future users. You need also to know how much persons should be able to use Kiwix at the same time.
  • What is the technical environment? You need to know what is the best way to install Kiwix. So this is essential to know if the computer are not too old? What are the Operation systems? Do you have a LAN or not? How is it possible to install the software (perl LAN, DVD, USB)? etc.

Choosing your content

Kiwix is a pure ZIM reader, that means that the content should be in the ZIM format. You may find ZIM files here:

If you search a content reviewed for Children, you may be interesting in the Wikipedia for School selection.

Building your package

Screenshot of the library in Kiwix

Before deploying the solution, you have to put your content (the ZIM file(s)) with Kiwix (the software itself). Maybe The Kiwix project already did it for you, so check here to see if you have your package. Otherwise, you will have to do it by yourself. This part of the process is the most complicated.

To do that you will need the help of 3 different console tools:

  • kiwix-index, a tool to create a fulltext search index
  • kiwix-manage, a tool to manipulate library XML file
  • kiwix-install, a tool which offers a simple way to create a data directory (beside the kiwix binary) with everything necessary (ZIM, index and library) and directly usable by kiwix.

But, because kiwix-serve is less developed as kiwix, both still work a little bit differently there...

kiwix

Kiwix knows about the available contents and indexes (to allow the fulltext search) by reading one (or many) so called library file(s) which are XML files (more information about the XML format). In kiwix, you have the so called "library" (see screenshot beside) which is the visualisation of the information available about contents. Each time kiwix starts, it try to find thes XML library file to know more about available content. So, library XML files should be located to specific places and in general kiwix data storage follow these rules.

So if you want for example to spread Kiwix for Windows with foobar.zim, you have to do:

  • Download the last version of kiwix for windows from http://www.kiwix.org
  • Unzip Kiwix in the directory "dvd" (so your binary should be in dvd/kiwix/kiwix.exe)
  • Download or build your ZIM file.
  • call kiwix-install like following: kiwix-install --buildIndex ADDCONTENT path/to/foobar.zim path/to/directory_called_dvd
  • copy the "dvd" directory on a DVD or USB stick

At kiwix.org we have a PERL script to do that (and a few additional small things) quickly. If you are a PERL hacker you may have a look at it.

kiwix-serve

Deploying =

Kiwix works without installation Take care to the OS and architectures.

Deployment Options

Single of few computers

School Lab

Conference

EOM

Low-End Computers Optimizations

Rural-friendly computers

No Grid Electricity Alternatives

Getting Support & Assistance

See also