Користувальницькькі налаштування

Налаштування сайту


software:os:linux:additional_repos

Це стара версія документу!


How to add 3rd party repository in Ubuntu

Things become more and more complicated, so I decided to write instruction

Add signing key for repository

You should always put signing key path to repository, like this:

deb [signed-by=/usr/share/keyrings/nodesource.gpg] https://deb.nodesource.com/node_16.x jammy main

The key MUST NOT be placed in /etc/apt/trusted.gpg.d or loaded by apt-key add

If future updates to the key will be managed by an apt/dpkg package, then it SHOULD be downloaded into /usr/share/keyrings using the same filename that will be provided by the package. If it will be managed locally, it SHOULD be downloaded into /etc/apt/keyrings instead.

I think it means if you need to bother with key, then just put it to /etc/apt/keyrings

How to get the key

There are two ways, depending on what package developer implemented

Download key from keyserver or keyserver pool

First, download the key from keyserver to local user storage:

gpg --keyserver keyserver.ubuntu.com --recv-keys D33A1BD725ED047D

Another keyserver: keys.openpgp.org

After that export key to file and put it to keyring directory:

gpg --export D33A1BD725ED047D |sudo tee /etc/apt/keyrings/usefulpackage.gpg

I didn't find out whether key should be ascii-armored or not. Most likely should be unarmored (binary).

Download key in file from developer's location

curl https://dbeaver.io/debs/dbeaver.gpg.key > dbeaver.gpg

Check if key is armored (looks like ASCII text and not binary), and if so, unarmor it:

cat dbeaver.gpg | gpg --dearmor > dbeaver.gpg

Move the key to /etc/apt/keyrings:

mv dbeaver.gpg /etc/apt/keyrings/

Instructions to connect to a third-party repository

software/os/linux/additional_repos.1660741332.txt.gz · Востаннє змінено: 2022/08/17 16:02 повз charon