Raspberry Pi Projects Offline Wikipedia Kiwix:

Raspberry Pi Projects Offline Wikipedia
Raspberry Pi Projects Offline Wikipedia.

Introduction to Offline Wikipedia:

Use your Raspberry Pi for Offline Wikipedia with Kiwix-serve. Learn how to download Wikipedia for one of the ultimate Raspberry Pi Projects.

If the power or Internet goes out, wouldn’t it be cool to still have access to a large source of useful information? Granted most of us have access to high-speed Internet however many still do not. In addition, folks living in remote areas often have power outages when stormy weather strikes.

Create your own Raspberry Pi Hotspot!

Consequently, since the Raspberry Pi has built-in networking a hot spot can be created so you can share your local copy of Wikipedia. Imagine family and friends searching Wikipedia on their cell phones and tablets all stored locally on your Raspberry Pi!

It is not just Wikipedia; it can be any website!

It is not just Wikipedia; you can read books from the Gutenberg Library, watch TED talks and much more. Since the Wikipedia downloads can be large, there are versions without pictures. In addition, smaller specific topics within Wikipedia can be downloaded. For example, imagine having the Medical, Movie, Golf, History, etc. Wikipedia books at your fingertips.

Raspberry Pi Offline Wikipedia Project Description:

This Raspberry Pi Project will install a copy of Wikipedia of your choice on your Raspberry Pi. In addition, the Kiwix-serve application will be download and installed. The Kiwix-serve application will enable you to search Wikipedia using the Web Browser on your Raspberry Pi.

Minimum Offline Wikipedia Project Requirements:

  • 32GB Micro-SD Card
  • Raspberry Pi OS with Desktop Installed on Raspberry Pi 3, 4 or 400
  • High Speed Internet Connection 100Mbps – 200Mbps

The minimum requirements assume you have Raspberry Pi OS with Desktop installed on a Raspberry Pi 3, 4 or 400. The 32GB Micro-SD card will not allow you to download the full maximum version of Wikipedia with Pictures. However, for the purpose of this project you can choose from many other smaller or specialized versions of Wikipedia.

Recommended Project Requirements for Offline Wikipedia:

  • 128GB – 256GB Micro-SD Card
  • Raspberry Pi OS with Desktop already installed on Raspberry Pi 3, 4 or 400
  • High Speed Internet Connection 500Mbps – 900Mbps

For this project, it is recommended that you have the Raspberry Pi OS with Desktop already installed on a Raspberry Pi 3, 4 or 400 with a 128GB Micro-SD Card. The 128GB Micro-SD Card is required for larger or the full maximum version of Wikipedia with Pictures. Additionally, a high-speed Internet connection, as close to 900MBps as possible is recommended. In other words, larger Wikipedia files require more storage space and faster Internet speed. Let us Begin…

Step One: Download Kiwix Wikipedia zim file:

Unfortunately, the direct link to the zim file downloads does not always work, and often will redirect users to the main page. For this reason, it is recommend starting at the Kiwix.org home page. Pictures provided below will use Red arrows and Circles to assist in navigating to the actual downloads page.

Open Chromium or your favorite web browser on Raspberry Pi desktop, and navigate to the following URL:

https://www.kiwix.org

The following picture provides an example of the main home page for kiwix.org:

kiwix.org web site
Use web browser in Raspberry Pi desktop to navigate to the kiwix.org website home page.

Using the Red arrow as a guide, scroll the kiwix.org home page downward until you get to the bottom. The following picture gives an example showing the link you will need next:

Content Packages
While in web browser viewing Kiwix.org scroll to bottom of page for link to Content Packages.

Click on the Content Packages link navigating to next page as shown below:

Finding zim files
Use web browser on Raspberry Pi to navigate kiwix.org Finding zim files web page. Scroll down to view list of files available for downloading.

Using the red arrow as a guide, scroll the page downwards slowly, until you see the Kiwix Wiki link for packages in all languages as shown in the following picture:

Link for Download List
Use web browser, scroll slowly, until link for Kiwix Wiki is shown as above for all available packages in all languages.

After navigating to above link, the following web page will display all available packages. Packages will be grouped in sections for each available language as shown below:

Choose zim file for downloading
Use web browser on Raspberry Pi to choose Kiwix Wikipedia zim file for downloading.

Several Choices:

Using the red arrow as your guide, scroll downwards alphabetically through each language section until you get to your desired language. The picture below shows an example of the section for English downloads. Take note of the different file sizes shown in the middle column. If you have 32GB Micro-SD card you will probably want smaller files like the 11G shown in picture below:

Download Kiwix zim file
Using web browser to download ZIM file archive of Wikipedia for Kiwix serve tools and Web Server.

The files are named to help describe what you are downloading. For example, files named “all maxi” have more content with pictures and thus larger. Files name with “nopic” will be smaller and have no pictures with content.

The direct download link on the right side is displayed above the BitTorrent download link. Use either direct or BitTorrent method for downloading. However, when using BitTorrent, you will need to install the client application first before downloading.

Choose zim file and start downloading:

Once you have chosen a zim file and started downloading, be prepared to have your Raspberry Pi tied up for several hours.

Note: This project for demonstration purposes assumes the zim file will be in your Downloads directory within your Home Directory once the download is finished. Additionally, when in Terminal, your home directory is displayed in the command prompt with the “~” character.

Step Two: Installing Kiwix Serve for Raspberry Pi Projects Offline Wikipedia:

As a result, there should be a massive file in your Downloads directory on your Raspberry Pi. The next step will be to download the Kiwix-serve application. The Kiwix-serve application can read the zim file downloaded above. The result will enable you to use Offline Wikipedia in your Raspberry Pi web browser.

Downloading Kiwix Serve tar Archive file:

Navigate to the following URL in your favorite web browser while using your Raspberry Pi:

https://www.kiwix.org/en/downloads/kiwix-serve/

As shown in the picture below select the download link for the GNU/Linux ARM (32 bits):

Download Kiwix Serve
Using web browser to download Kiwix Serve tools and Web Service for viewing Wikipedia zim files.

The GNU/Linux ARM (32 bits) package for the Kiwix-serve should be in the Downloads directory within your Home directory. Future versions of this application will be named differently. If needed replace file name in tar command above with what was downloaded in web browser above.

Uncompressing tar archive file for Kiwix Serve:

On your Raspberry Pi Desktop, open the Terminal and enter the following commands:

cd Downloads
tar -zxvf kiwix-tools_linux-armhf-3.1.2-4.tar.gz

The picture below shows the results of opening and un-compressing archive with tar:

Extract tar distribution file
Using tar, open. and extract distribution file for Kiwix Server application.

After using tar to open contents of downloaded file for Kiwix-serve, a new directory named kiwix-tools_linux-armhf-3.1.2-4, will have been created. If the file name downloaded is different replace as needed. The ls shell command can be used to list directory contents within downloads to retrieve name of file downloaded.

Installing Kiwix Serve executable files:

The next step in the installation process is to copy several Kiwix Tools to the “/usr/local/bin” directory. This will install the Kiwix-serve application on your Raspberry Pi computer. As noted, you may have to change name in example to what was downloaded above.

Use the following commands in your Raspberry Pi Terminal:

sudo mv kiwix-tools_linux-armhf-3.1.2-4/* /usr/local/bin

The picture shown below is an example of command used above:

Install Kiwix Serve
Using the mv shell command to install Kiwix Serve Tools and Web Server for Raspberry Pi Project Offline Wikipedia.

Step Three: Install Zim File for Offline Wikipedia:

Enter the following command to move the large zim file into Kiwi-serve application’s data location:

Note: You may need to replace file name shown below with the name of zim file you downloaded if different

sudo mv wikipedia_en_all_maxi_2020-11.zim /var/local

Example of above command is shown below:

Install zim file
Use the mv shell command to move zim file into folder used by Kiwix-serve web server.

Step Four: Installing Service for Automatic start after rebooting:

Now that the Kiwix-serve tools, application and zim data file for Wikipedia has been installed the next step is to create a configuration file for installing the Kiwix-serve service. Installing the service will make sure each time you reboot your Raspberry Pi, Kiwix Service will start automatically.

Using nano or your favorite text editor like nano, enter the following command below in the Raspberry Pi Terminal:

sudo nano /etc/systemd/system/kiwix.service

Picture below shows vi (Can replace with nano) as used above starting the editing process:

Configure Service File
Use text editor create the Kiwix-serve service file in the Raspberry Pi Terminal.

Service Configuration:

Copy the following text as shown in box below:

Note: Replace the zim file name on the line below that starts with “ExecStart=” with the name of file downloaded in previous step, displayed in blue, and bold.

[Unit]
Description=Kiwix Service
After=network.target
[Service]
Type=simple
User=root
Group=root
ExecStart=/usr/local/bin/kiwix-serve /var/local/wikipedia_en_all_maxi_2020-11.zim -p 8080
Restart=always
RestartSec=3
[Install]
WantedBy=multi-user.target

Paste copied text from above into the text file editor, save the file and exit as shown below:

Install Service
Use text editor to create and save Kiwix-serve service configuration file for automatically starting application after booting computer.

Enabling and Starting Service:

Now that the service file has been created enter the following commands into the Raspberry Pi Terminal to enable and start Kiwix-serve service application:

sudo systemctl enable kiwix
sudo systemctl start kiwix

Picture shown below describes commands used above:

Enable and Start Kiwix Server
Using the systemctl shell commands, enable and start the Kiwix Server local web service.

Step Five: Using your web browser to view Offline Wikipedia:

Enter the following URL into your web browser as shown below:

http://localhost:8080/

The picture below shows example of using Wiki-serve on your Raspberry Pi Computer:

Running Kiwix Server
Using your web browser to search and view Wikipedia offline on your Raspberry Pi.

Summary of Raspberry Pi Projects Offline Wikipedia:

Congratulations! You how have a copy of one of the world’s largest if not largest online encyclopedias on your Raspberry Pi.

Consequently, try entering something in the search box like the following text:

lincoln cent penny

The following search results will be displayed as shown below:

Raspberry Pi Projects Wikipedia Search
Using web browser to perform Wikipedia search with results containing links to articles for the Raspberry Pi Projects: Offline Wikipedia with Kiwix Server.

As a result, select the Lincoln cent link to view article with picture of penny as shown below:

Offline Wikipedia Article
Displaying article from search results while using offline Wikipedia with Kiwix Server.

Have fun and as I always like to say…

Never underestimate the power of the Raspberry Pi!

Regards,

Vic