Nominatim is an open source search engine for geographic data. It provides free and unlimited access to worldwide maps and geographic information. In this tutorial, we will show you how to install Nominatim on Manjaro.
Before we begin, you will need:
To download and install Nominatim on Manjaro, follow these steps:
First, we need to install some dependencies that Nominatim requires:
sudo pacman -S curl git cmake g++ libboost-dev libboost-system-dev libboost-filesystem-dev libexpat1-dev zlib1g-dev libbz2-dev libpq-dev libproj-dev postgresql-server-dev-all apache2 php php-pgsql libapache2-mod-php
Next, we need to clone the Nominatim repository from Github:
git clone --recursive https://github.com/openstreetmap/Nominatim.git
Once downloaded, navigate to the Nominatim folder and run the following commands:
cd Nominatim
mkdir build && cd build
cmake ..
make
sudo make install
Now, we need to set up a web server to access Nominatim. For example, let's set up an Apache server:
sudo a2enmod php && sudo a2enmod rewrite
sudo cp /usr/local/share/doc/nominatim/example/apache.conf /etc/httpd/conf/extra/nominatim.conf
sudo vi /etc/httpd/conf/extra/nominatim.conf
In the configuration file, add the following code:
Alias /nominatim /srv/nominatim/Nominatim/build/html
<Directory "/srv/nominatim/Nominatim/build/html">
Options FollowSymLinks MultiViews
AllowOverride All
Require all granted
</Directory>
Save and exit the file.
Finally, we need to initialize the database by running the following commands:
sudo -u postgres createuser nominatim
sudo -u postgres createdb nominatim
sudo -u postgres psql -c "ALTER USER nominatim WITH PASSWORD 'password';"
sudo -u nominatim ./utils/setup.php --osm-file <path_to_your_osm_file> --all --threads <number_of_threads>
Note: Replace <path_to_your_osm_file>
with the path of your OpenStreetMap data file and <number_of_threads>
with the number of threads you want to use.
Finally, restart the Apache server and access Nominatim from your web browser:
sudo systemctl restart httpd
Visit http://localhost/nominatim
in your web browser and you should see a map of the world with a search bar on the top left corner of the page.
Congratulations, you have successfully installed Nominatim on Manjaro.
If you want to self-host in an easy, hands free way, need an external IP address, or simply want your data in your own hands, give IPv6.rs a try!
Alternatively, for the best virtual desktop, try Shells!