créer son propre dépot
salut les gens,
# version courte:
* je pense que https://wiki.debian.org/DebianRepository/SetupWithReprepro
a besoin d'être raffraichie ou supprimée. je suis prêt a donner un
coup de main pour ça.
* même en ayant déjoué quelques erreurs, je ne suis pas arrivé à créer
un dépot: j'aimerais bien arriver au bout de la démarche.
# trois questions:
* je ne ne vois pas proposer une correction sur le wiki alors que je ne
suis pas foutu d'utiliser moi-même reprepo. qui contacter dans ces
cas là pour proposer mon aide?
* j'aimerais arriver au bout de ma démarche. idéalement je ne voulais
que signer
* idéalement, j'aurais aimé continuer à utiliser un simple dépot sans
arborescence comme avec dpkg-scanpackages. existe-t'il des scripts
simples pour générer Contents et Translation (ou indiquer
qu'ils ne sont pas disponibles dans le depot)?
# version longue:
dans mon /etc/apt/sources.list, on trouve depuis de nombreuses années
deb [trusted=yes] file:///srv/debian/ ./
Outre le fait d'avoir des warnings (Ign) pendant
l'apt update, ca marche très bien.
J'aimerais rendre mes dépots publics et du coup je vais être
obligé de faire les choses proprement. J'aurais aimé continuer
à alimenter un simple script shell qui me permette de comprendre
facilement les différentes étapes mais je n'ai rien trouvé de tel.
aptly semble être overkill pour mon besoin (et nécessite d'avoir
des snapshots donc de copier plusieur fois les .deb) je suis donc
parti sur
https://wiki.debian.org/DebianRepository/SetupWithReprepro
j'ai donc installé gpg (je vais en profiter pour configurer mutt).
cette doc fait référence à
http://blog.jonliv.es/blog/2011/04/26/creating-your-own-signed-apt-repository-and-debian-packages/
qui parle de 5eme option dans le menu de la commande
gpg --gen-key
alors que cette commande ne propose pas de menu. j'ai donc tenté
gpg --full-gen-key
qui n'a pas de 5eme option et qui me fait hésiter entre la 4 (RSA) et la
1 (RSA *et* RSA) (le message gagnerait à être plus précis)
...
# ~/.gnupg/gpg.conf:
# Use a stronger digest than the default SHA1 for certifications.
cert-digest-algo SHA512
digest-algo SHA512
# Prioritize stronger algorithms for new keys.
default-preference-list SHA512 SHA384 SHA256 SHA224 AES256 AES192 \
AES CAST5 BZIP2 ZLIB ZIP Uncompressed
j'ai fais `gpg --gen-key` et je me retrouve avec
/home/mc/.gnupg/pubring.kbx
---------------------------
pub rsa3072 2020-05-06 [SC] [expire : 2022-05-06]
710CACEB2143FA0A0F7F22FB7AEBB18F05148875
uid [ ultime ] Marc Chantreux <xxxxxxxx>
sub rsa3072 2020-05-06 [E] [expire : 2022-05-06]
je n'ai pas besoin d'exporter parce que je suis sur la même machine.
ce qui me perturbe parce que dans les docs, il y a un ID au niveau du
sub. la bonne commande est
gpg --list-keys --with-subkey-fingerprint
pas de config apache: j'utilise file:// et c'est une feature :)
coté /srv/debian/conf/distributions:
Origin: renater
Label: renater
Codename: buster
Architectures: amd64
Components: main
Description: Apt repository for project x
SignWith: 93EB7976E602DEA2289EA73235228D55C1F58111
ensuite ... ben j'ai fais
reprepro --ask-passphrase -Vb . -S utils -P optional includedeb buster *.deb
et j'ai ajouté dans mon /etc/apt/sources.list
deb file:///srv/debian/ buster main
apt me dit que mon depot ne contient pas de fichier Release ce que find
me confirme même après un
reprepo check
Avant je générais Release avec le script suivant:
as_release_listing () {
set -- names sums sizes
rm -rf $@
mkfifo $@
# jobs # ouputs
paste -d' ' sums sizes | sed s'/^/ /' &
xargs -a names ls -s > sizes &
tee names | xargs sha1sum |
cut -d' ' -f1 > sums
rm -rf $@
}
<<. cat > Release
architectures: amd64
description: my own debian packages
date: $( LANG= date +'%a, %d %b %Y %H:%M:%S UTC' )
SHA1Sum:
$( ls *deb Pac* | as_release_listing )
.
Mais ca c'était avant... maintenant les deb sont ventilés dans des
répertoires et je ne sais pas trop ou mettre mon Release.
cordialement,
marc
Reply to: