2.4. Ubuntu#

This section describes how to install Groonga related deb packages on Ubuntu. You can install them by apt.

We distribute both 32-bit and 64-bit packages but we strongly recommend a 64-bit package for server. You should use a 32-bit package just only for tests or development. You will encounter an out of memory error with a 32-bit package even if you just process medium size data.

2.4.1. Register Groonga APT repository#

2.4.1.1. Groonga APT Repository (packages.groonga.org)#

Groonga packages are distributed via our Groonga APT repository at https://packages.groonga.org.

Install groonga-apt-source to enable Groonga APT repository.

sudo apt update
sudo apt install -y -V ca-certificates lsb-release wget
wget https://packages.groonga.org/ubuntu/groonga-apt-source-latest-$(lsb_release --codename --short).deb
sudo apt install -y -V ./groonga-apt-source-latest-$(lsb_release --codename --short).deb
sudo apt update

2.4.1.2. Deprecated Groonga PPA (Personal Package Archive)#

Note

The Grppmga PPA (Personal Package Archive, ppa:groonga/ppa) is deprecated. We strongly recommend using our Groonga APT repository (packages.groonga.org) because packages from that repository are built with Apache Arrow enabled. This configuration unlocks extra features, such as parallel offline index building. If you are currently using the Groonga PPA, please see Migration from Groonga PPA (ppa:groonga/ppa) to Groonga APT Repository (packages.groonga.org).

2.4.2. groonga package#

Install:

sudo apt -V -y install groonga

Note

groonga package is the minimum set of fulltext search engine. If you want to use Groonga for server use, you can install additional preconfigured packages.

There are two packages for server use.

  • Groonga HTTP server (HTTP based server package)

  • groonga-server-gqtp (GQTP based server package)

See Server section about details.

2.4.3. groonga-tokenizer-mecab package#

If you want to use MeCab as a tokenizer, install groonga-tokenizer-mecab package.

Install groonga-tokenizer-mecab package:

sudo apt -V -y install groonga-tokenizer-mecab

2.4.4. groonga-token-filter-stem package#

If you want to use TokenFilterStem as a token filter, install groonga-token-filter-stem package.

Install groonga-token-filter-stem package:

sudo apt -V -y install groonga-token-filter-stem

2.4.5. groonga-munin-plugins package#

There is a package that provides Munin plugins. If you want to monitor Groonga status by Munin, install groonga-munin-plugins package.

Install groonga-munin-plugins package:

sudo apt -V -y install groonga-munin-plugins

2.4.6. groonga-normalizer-mysql package#

There is a package that provides MySQL compatible normalizer as a Groonga plugin. If you want to use that one, install groonga-normalizer-mysql package.

Install groonga-normalizer-mysql package:

sudo apt -V -y install groonga-normalizer-mysql

2.4.7. Build from source#

Build from source is for developers.

See Others: Build with CMake .

2.4.8. Migration from Groonga PPA (ppa:groonga/ppa) to Groonga APT Repository (packages.groonga.org)#

This section guides you through the migration from the deprecated Groonga PPA (Personal Package Archive, ppa:groonga/ppa) to our new Groonga APT Repository (packages.groonga.org).

By switching to the Groonga APT Repository, you’ll receive packages built with Apache Arrow enabled. Which unlocks extra features such as parallel offline index building. We strongly recommend you to migrate to enjoy these enhancements.

If you are currently using the Groonga PPA, please follow the steps below to switch to the new package source.

2.4.8.1. Configure the Groonga APT Repository#

2.4.8.1.1. Register Groonga APT Repository#

To register the Groonga APT Repository, install the groonga-apt-source package as follows.

sudo apt update
sudo apt install -y -V groonga-apt-source
sudo apt update

2.4.8.1.2. Remove the Existing Package Source#

Remove the old Groonga PPA:

sudo add-apt-repository -y --remove ppa:groonga/ppa

After these steps, your package source is now switched from Groonga PPA to Groonga APT Repository.

2.4.8.2. Upgrade Package#

There are two approaches depending on your needs.

2.4.8.2.2. Option 2: Use Groonga APT Repository Immediately Without Waiting for Next Release#

If you wish to upgrade immediately without waiting for the next official release, you can force an upgrade to a specific package version in the Groonga APT Repository. In this case, you must upgrade the package by specifying the version. This is important because even if the version numbers match, the package’s naming conventions between the Groonga PPA and the Groonga APT Repository differ, and the Groonga PPA package takes precedence.

sudo apt upgrade package-name=version

Note

If the package has dependencies, you also need to upgrade dependent packages by specifying the version.

For example, upgrade a specific version of groonga-bin package:

version=$(dpkg-query -W -f='${Version}' libgroonga0 | sed 's/\.ubuntu.*$//') && \
sudo apt upgrade -y -V --allow-downgrades \
  libgroonga0=$version \
  groonga-bin=$version

This command forces the upgrade to a specific package version from the new repository. In this case, it’s Groonga APT Repository.