Skip to content

Commit 5eb9696

Browse files
committed
Update instructions on download/debian page
The WeeChat PGP key is downloaded in /etc/apt/keyrings (as ASCII) and gnupg is no longer used.
1 parent 74caf63 commit 5eb9696

File tree

9 files changed

+1050
-1235
lines changed

9 files changed

+1050
-1235
lines changed

weechat/debian/models.py

Lines changed: 14 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,9 @@
2727
from weechat.common.i18n import i18n_autogen
2828
from weechat.common.path import repo_path_join
2929

30+
WEECHAT_PGP_KEY_PATH = '/etc/apt/keyrings'
31+
WEECHAT_PGP_KEY_NAME = 'weechat.asc'
32+
3033

3134
class Version(models.Model):
3235
"""Version of a Debian repository (codename + version).
@@ -75,25 +78,19 @@ def path_packages_gz(self, arch):
7578
self.version.codename, 'main',
7679
f'binary-{arch}', 'Packages.gz')
7780

78-
def apt_url(self):
79-
"""
80-
Return the URL to use with apt for binary packages, for example:
81-
"deb [signed-by=/usr/share/keyrings/weechat-archive-keyring.pgp]
82-
https://weechat.org/debian sid main".
83-
"""
84-
return (f'deb [signed-by=/usr/share/keyrings/weechat-archive-'
85-
f'keyring.pgp] {self.url} {self.version.codename} main')
81+
def apt_url(self, deb='deb'):
82+
"""Return the URL to use with apt for binary or sources packages."""
83+
return (f'{deb} [arch={self.arch} '
84+
f'signed-by={WEECHAT_PGP_KEY_PATH}/{WEECHAT_PGP_KEY_NAME}] '
85+
f'{self.url} {self.version.codename} main')
86+
87+
def apt_url_binary(self):
88+
"""Return the URL to use with apt for binary packages."""
89+
return self.apt_url(deb='deb')
8690

8791
def apt_url_src(self):
88-
"""
89-
Return the URL to use with apt for sources packages, for example:
90-
"deb-src [signed-by=/usr/share/keyrings/weechat-archive-
91-
keyring.pgp] https://weechat.org/debian sid main".
92-
"""
93-
return (
94-
f'deb-src [signed-by=/usr/share/keyrings/weechat-'
95-
f'archive-keyring.pgp] {self.url} {self.version.codename} main'
96-
)
92+
"""Return the URL to use with apt for sources packages."""
93+
return self.apt_url(deb='deb-src')
9794

9895
class Meta:
9996
"""Sort Repos by priority."""

weechat/debian/views.py

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,9 +30,14 @@
3030

3131
from django.conf import settings
3232
from django.shortcuts import render
33+
from django.urls import reverse
3334

3435
from weechat.common.path import repo_path_join
35-
from weechat.debian.models import Repo
36+
from weechat.debian.models import (
37+
Repo,
38+
WEECHAT_PGP_KEY_PATH,
39+
WEECHAT_PGP_KEY_NAME,
40+
)
3641

3742

3843
def get_repository_packages(repository):
@@ -110,6 +115,12 @@ def repos(request, active='active', files=''):
110115
reverse=True))
111116
except: # noqa: E722 pylint: disable=bare-except
112117
errors.append(f'{repository.name} {repository.version}')
118+
url_info_pgp_key = request.build_absolute_uri(
119+
reverse(
120+
'dev_info_name',
121+
kwargs={'name': 'debian_repository_signing_key_asc'},
122+
)
123+
)
113124
return render(
114125
request,
115126
'download/debian.html',
@@ -119,5 +130,8 @@ def repos(request, active='active', files=''):
119130
'allfiles': files == 'files',
120131
'repositories': repositories,
121132
'errors': errors,
133+
'weechat_pgp_key_path': WEECHAT_PGP_KEY_PATH,
134+
'weechat_pgp_key_name': WEECHAT_PGP_KEY_NAME,
135+
'url_info_pgp_key': url_info_pgp_key,
122136
},
123137
)

0 commit comments

Comments
 (0)