Super fast Linux package search engine for Linux distros
See the codepkg.bot is a fast search engine for Linux packages across distributions and package repositories. It uses the package data dump from Repology.
In early September 2026, I had just switched to NixOS. In the process of setting it up, I was frequently searching for packages on the official package site, but was quite annoyed by its clunky UX. No way to sort by date or versions, no "permalink" to share a package's page even.
I remembered that pretty much most distros have clunky, annoying package sites. So I built this.
The search engine is a statically compiled Rust program which uses a single SQLite DB as its data source. It has a built-in Repology Postgres dump importer.
version > 2.0 and updated > 2026-01-01make build../pkgbot new-config to generate a new config file (config.toml by default)config.toml./pkgbot install to generate a new SQLite DB (data.db by default)./pkgbot --site=./site to run the web search engine. ./site is the theme directory cloned from this repo.See API docs.
Download the latest .sql.zst dump from https://dumps.repology.org, then restore it into a fresh Postgres database:
set -o pipefail
wget https://dumps.repology.org/repology-database-dump-latest.sql.zst
docker compose up --build -d --wait db
# Instead of loading the entire .sql dump directly into the DB
# use the built-in loader that streams only the tables required by pkgbot.
zstd -dc repology-database-dump-latest.sql.zst | ./pkgbot restore-repology
# Create a new data.db and import data from PG into it.
./pkgbot install
./pkgbot import
License: AGPL
Rust
70.8%
HTML
18.7%
CSS
4.7%
JavaScript
2.8%
Shell
1.8%
Super fast Linux package search engine for Linux distros
See the codepkg.bot is a fast search engine for Linux packages across distributions and package repositories. It uses the package data dump from Repology.
In early September 2026, I had just switched to NixOS. In the process of setting it up, I was frequently searching for packages on the official package site, but was quite annoyed by its clunky UX. No way to sort by date or versions, no "permalink" to share a package's page even.
I remembered that pretty much most distros have clunky, annoying package sites. So I built this.
The search engine is a statically compiled Rust program which uses a single SQLite DB as its data source. It has a built-in Repology Postgres dump importer.
version > 2.0 and updated > 2026-01-01make build../pkgbot new-config to generate a new config file (config.toml by default)config.toml./pkgbot install to generate a new SQLite DB (data.db by default)./pkgbot --site=./site to run the web search engine. ./site is the theme directory cloned from this repo.See API docs.
Download the latest .sql.zst dump from https://dumps.repology.org, then restore it into a fresh Postgres database:
set -o pipefail
wget https://dumps.repology.org/repology-database-dump-latest.sql.zst
docker compose up --build -d --wait db
# Instead of loading the entire .sql dump directly into the DB
# use the built-in loader that streams only the tables required by pkgbot.
zstd -dc repology-database-dump-latest.sql.zst | ./pkgbot restore-repology
# Create a new data.db and import data from PG into it.
./pkgbot install
./pkgbot import
License: AGPL
Rust
70.8%
HTML
18.7%
CSS
4.7%
JavaScript
2.8%
Shell
1.8%