[Rpm-ecosystem] python-dnf question: installed vs. available checksums
Jaroslav Mracek
jmracek at redhat.com
Fri Aug 4 11:16:30 UTC 2017
I see a possible solution:
a = base.sack.query().filter(name='TestA')
for pkg in a:
print([pkg])
if pkg.installed:
yumdb_info = base._yumdb.get_package(pkg)
print(yumdb_info.checksum_type, yumdb_info.checksum_data)
else:
try:
type, checksum = pkg.returnIdSum()
print(type, checksum)
except AttributeError:
print('returnIdSum()_error')
But it uses private object _yumdb. In near future we will replace it with SWDB.
Have a nice time
Jaroslav
On Wed, Aug 2, 2017 at 5:52 PM, Ian Pilcher <arequipeno at gmail.com> wrote:
> I would like to the the DNF API (python-dnf) to determine the source
> repository for the packages that are installed on a system. (I am aware
> that this is not necessarily possible for every package, but it should
> be possible for the vast majority of packages on an up-to-date system.)
>
> It is straightforward to iterate through the installed packages and
> search for matching packages in a sack that was filled with
> fill_sack(load_system_repo=False, load_available_repos=True) --
> filtering on either NVRA or NEVRA.
>
> If possible, I would like to take the further step of validating that
> checksum of the installed package matches that of any available
> packages. However, I'm having trouble figuring out how to do this. It
> seems that installed packages have only a hdr_chksum attribute while
> available packages have only a chksum attribute. (Attempting to read
> the hdr_chksum of an available package or the chksum attribute of an
> installed packages raises a "No such checksum" AttributeError.
>
> Is the NVRA/NEVRA match the best that can be done?
>
> --
> ========================================================================
> Ian Pilcher arequipeno at gmail.com
> -------- "I grew up before Mark Zuckerberg invented friendship" --------
> ========================================================================
> _______________________________________________
> Rpm-ecosystem mailing list
> Rpm-ecosystem at lists.rpm.org
> http://lists.rpm.org/mailman/listinfo/rpm-ecosystem
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rpm.org/pipermail/rpm-ecosystem/attachments/20170804/ebec1e2c/attachment.html>
More information about the Rpm-ecosystem
mailing list