---
name: "Parse::Debian::Packages"
section: "3pm"
platform: "linux"
package: "libparse-debian-packages-perl"
version: "0.03-5"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/Parse::Debian::Packages"
---

# Parse::Debian::Packages(3pm)

parse the data from a debian Packages.gz

## NAME

Parse::Debian::Packages - parse the data from a debian Packages.gz

## SYNOPSIS

```
 use YAML;
 use IO::File;
 use Parse::Debian::Packages;
 my $fh = IO::File->new("Packages");
 my $parser = Parse::Debian::Packages->new( $fh );
 while (my %package = $parser->next) {
     print Dump \%package;
 }
```

## DESCRIPTION

This module parses the Packages files used by the debian package management tools.

It presents itself as an iterator.  Each call of the -\>next method will return the next package found in the file.

For laziness, we take a filehandle in to the constructor.  Please open the file for us.

## METHODS

### new( $filehandle )

### next

Iterate to the next package in the file, returns either a hash containing a package description, or false at end of file.

### as\_hash( $filehandle )

Return all the packages from a filehandle as a hash of hashes.

## AUTHOR

Richard Clamp \<richardc@unixbeard.net\> with as\_hash implementation by Thomas Klausner.

## COPYRIGHT

Copyright (C) 2003,2005,2012 Richard Clamp.  All Rights Reserved.

This module is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

## SEE ALSO

Module::Packaged
