Bonjour Marc,
didier gaumet, on 2024-11-23:
Le 22/11/2024 à 23:26, Marc Chantreux a écrit :
- Dpkg::Control: parse and manipulate Debian control information
perl -MDpkg::Control -E 'say for @INC{ grep /Control/, keys %INC }'
perldoc Dpkg::Control
un *grand* merci à toi. pile dessus!
si tu préfères le C plutôt que Perl, je crois qu'en fait la bibliothèque c'est bêtement libdpkg et l'API publique pour faire du parse est là.
Je suppose que ça pourrait aussi satisfaire ton besoin, sans en être sûr (j'y connais rien et faudrait que j'y passe un temps fou pour avoir une chance de confirmer)
https://www.dpkg.org/doc/libdpkg/group__parsedump.html
En complément des réponses de didier, le format est appelé
deb822(5) et est défini via sa page de manuel[1]. deb822 est
utilisé dans le fichier de control, mais également dans les
fichiers de copyright qui suivent le format copyright-1.0[2],
et dans le nouveau format de spécificaton de mirroir Debian,
cf. sources.list(5), section « deb822-style format »[3].
[1] :
https://manpages.debian.org/bookworm/dpkg-dev/deb822.5.en.html
[2] :
https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ [3] :
https://manpages.debian.org/bookworm/apt/sources.list.5.en.html#DEB822-STYLE_FORMAT
Bonne soirée, :)
--
.''`. Étienne Mollier <
emollier@debian.org>
: :' : pgp: 8f91 b227 c7d6 f2b1 948c 8236 793c f67e 8f0d 11da
`. `' sent from /dev/pts/5, please excuse my verbosity
`- on air: Trans-Siberian Orchestra - Overture
-----BEGIN PGP SIGNATURE-----
iQIzBAABCgAdFiEEj5GyJ8fW8rGUjII2eTz2fo8NEdoFAmdGKYYACgkQeTz2fo8N Edr6Zw/+L2MR8vygR8TUErhStPe97WzIzQR25xBZcEWO4X63sEbSW2nf/iHn5u86 DrwmjTUv7R9QREYi253T+DqomrcgX6Krv5O8Y0U7rPrd+Nw04DXaQLxSP8bpvotq gQwHblz19mvPxENfBr/ifc4XVNja76hbePrm2bS3txOdJU10QRSyDZIT7ASeIupr ZINvmvax5jjRqyzGM4N9EocgUJLKVT8J27u7cnP7jRanHcOhVGr2qbCbip5cE89/ RRpj+0+jz57QPTy883hceP6p2WooeyJW2k6vshG6vwHC6v62OuYsflFqnYXea2aI 5GeiBd8WSzxAKgJRcHr96oGLKLZ/QMP9bjtOUf3HZgVduF/w/68hT1P0ZMv9s1gk Mjpx5tGJ+BYFKVAIxgSh8V0ct+R2bdw4txhYFxiRjEEstRQU0oM0A/0kjN1khncz +SArQVZhUruS6dOjcL6oHkNosDggFR9pZyEgf7EeOolG3gu5RvC3QgMEAvGHjDbZ 1dA8hBl9iDuFAXZNfaKwY2Jon9V8XTVldlc1/qk9SlLycQTWO0ij9UmhIUcN0lVe 6BHmZJaqFsafGvjfEkHsDDSxFeF1B6NyVOoxdXciKpVj5sp02+lzfIhIPeGnwjka AzSe5sF10BmbQhXovV0sOa3biBI71x