Alpine Linux Packages Scraper
Pricing
from $19.00 / 1,000 results
Alpine Linux Packages Scraper
Pull the Alpine Linux package index by name, branch, repository, and architecture from pkgs.alpinelinux.org. Each record carries version, license, maintainer, project link, build date, commit hash, and full dependency lists. Handy for SBOM tracking, security audits, and mirror tooling.
Pricing
from $19.00 / 1,000 results
Rating
0.0
(0)
Developer
ParseForge
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share

๐๏ธ Alpine Linux Packages Scraper
๐ Turn the Alpine Linux package index into clean, structured records. Query pkgs.alpinelinux.org by name, branch, repository, and architecture and get version, license, maintainer, and dependency data per package.
๐ Last updated: 2026-07-14 ยท ๐ Up to 21 fields per record ยท 10 branches ยท 9 architectures ยท main, community, and testing repos
Pull the official Alpine Linux package database straight from pkgs.alpinelinux.org and drop it into a spreadsheet, a database, or your own tooling. Filter with a glob on the package name, pick a release branch, narrow to a repository and architecture, and get one clean record per package with the metadata that matters: version, license, maintainer, project link, and build date.
Coverage is the live Alpine package index as the site publishes it: the rolling edge branch plus the stable v3.x releases, across main, community, and testing repositories and every supported CPU architecture. Turn on dependency enrichment and each package also carries its description, install size, origin, commit hash, build time, and full depends, provides, and sub package lists.
| ๐ฏ Target Audience | ๐ก Primary Use Cases |
|---|---|
| Security and DevSecOps teams | Audit versions and licenses, track CVEs |
| Platform and container engineers | Pin base image packages, build SBOMs |
| Distro maintainers and packagers | Watch versions across branches |
| Mirror and tooling operators | Snapshot the index for offline use |
๐ What the Alpine Linux Packages Scraper does
This Actor reads the public Alpine Linux package index at pkgs.alpinelinux.org and returns one clean record per package:
- Listing fields (always) โ name, version, branch, repository, architecture, description, license, project URL, maintainer, build date, and the package page URL.
- Dependency enrichment (optional) โ turn on
includeDependenciesand each package is enriched from its detail page with install size, origin, commit hash, commit URL, build time, and fulldepends,provides, andsubPackageslists.
You control the package name glob, the branch, the repository, the architecture, and how many records come back. Every record carries a scrapedAt timestamp.
๐ฌ Full Demo (๐ง Coming soon)
โ๏ธ Input
| Field | Type | Description |
|---|---|---|
name | string | Glob filter for the package name. Use * and ? as wildcards, for example apk*, python3*, or *ssl*. Use * alone to match every package. |
branch | select | Alpine release branch. edge (rolling) or a stable v3.x release. |
repo | select | Repository to query. All, main, community, or testing. |
arch | select | CPU architecture. All, x86_64, aarch64, and seven more. |
includeDependencies | boolean | Enrich each package from its detail page with commit, build time, and dependency lists. Slower. |
maxItems | integer | How many records to return. Free plan is capped at 10. |
Example 1 โ apk packages on edge with full dependency data
{"name": "apk*","branch": "edge","repo": "main","arch": "x86_64","includeDependencies": true,"maxItems": 50}
Example 2 โ every Python package on a stable branch, listing only
{"name": "python3*","branch": "v3.21","repo": "","arch": "x86_64","includeDependencies": false,"maxItems": 200}
โ ๏ธ Good to Know: the
edgebranch is the rolling development tree and changes often, whilev3.xbranches are stable. Turning onincludeDependenciesvisits one extra page per package, so large runs take noticeably longer. Leave it off when you only need version, license, and maintainer data.
๐ Output
Each enriched record looks like this:
| Field | Description |
|---|---|
๐ฆ name | Package name |
๐ท version | Package version and release |
๐ฟ branch | Alpine branch (edge or v3.x) |
๐ repo | Repository (main, community, testing) |
๐ฅ arch | CPU architecture |
๐ description | Short package description |
โ๏ธ license | SPDX license identifier |
๐ projectUrl | Upstream project link |
๐ค maintainer | Package maintainer |
๐
buildDate | Build date from the index |
๐ url | Alpine package page URL |
๐ฆ size | Download size |
๐พ installedSize | Installed size |
๐ฑ origin | Origin (source) package |
๐ commit | aports commit hash |
๐ commitUrl | Link to the commit |
๐ buildTime | Exact build timestamp |
๐ข depends | List of runtime dependencies |
๐ provides | List of provided names |
๐งฉ subPackages | List of related sub packages |
๐ scrapedAt | Collection timestamp |
โ error | Null on success |
The
size,installedSize,origin,commit,commitUrl,buildTime,depends,provides, andsubPackagesfields are only present whenincludeDependenciesis enabled.
Real sample โ enriched package
{"name": "apkbuild-cpan","version": "3.17.0-r0","branch": "edge","repo": "main","arch": "x86_64","description": "Script to generate perl APKBUILD from CPAN","license": "GPL-2.0-only","projectUrl": "https://gitlab.alpinelinux.org/alpine/abuild/","maintainer": "Natanael Copa","buildDate": "2026-06-05 11:57:06","url": "https://pkgs.alpinelinux.org/package/edge/main/x86_64/apkbuild-cpan","size": "8.0KiB","installedSize": "24.3KiB","origin": "abuild","commit": "c34e25a150fccc32194346cb335ed746d6878031","commitUrl": "https://gitlab.alpinelinux.org/alpine/aports/-/commit/c34e25a150fccc32194346cb335ed746d6878031","buildTime": "2026-06-05 11:57:06","depends": ["perl", "perl-libwww", "perl-json", "perl-module-build", "perl-module-build-tiny", "perl-lwp-protocol-https"],"provides": ["cmd:apkbuild-cpan"],"subPackages": ["abuild-doc", "abuild-rootbld", "abuild-sudo", "apkbuild-cpan", "apkbuild-gem-resolver", "apkbuild-pypi"],"scrapedAt": "2026-06-08T18:03:11.403Z","error": null}
Real sample โ apk-tools
{"name": "apk-tools","version": "3.0.6-r0","branch": "edge","repo": "main","arch": "x86_64","description": "Alpine Package Keeper - package manager for alpine","license": "GPL-2.0-only","projectUrl": "https://gitlab.alpinelinux.org/alpine/apk-tools","maintainer": "Natanael Copa","buildDate": "2026-04-13 09:23:00","url": "https://pkgs.alpinelinux.org/package/edge/main/x86_64/apk-tools","size": "53.4KiB","installedSize": "112.4KiB","origin": "apk-tools","commit": "1403ea7a8ae3fb8e5a11207ddb1ff536eb8de912","commitUrl": "https://gitlab.alpinelinux.org/alpine/aports/-/commit/1403ea7a8ae3fb8e5a11207ddb1ff536eb8de912","buildTime": "2026-04-13 09:23:00","depends": ["musl", "libcrypto3", "libapk", "ca-certificates-bundle", "so:libapk.so.3.0.0", "so:libc.musl-x86_64.so.1", "so:libz.so.1"],"provides": ["apk-tools3", "cmd:apk"],"subPackages": ["apk-tools-bash-completion", "apk-tools-dbg", "apk-tools-dev", "apk-tools-doc", "apk-tools-static", "apk-tools-zsh-completion", "libapk", "lua5.5-apk", "py3-apk"],"scrapedAt": "2026-06-08T18:03:14.000Z","error": null}
Real sample โ listing only
{"name": "python3","version": "3.14.3-r0","branch": "edge","repo": "main","arch": "x86_64","description": "High-level scripting language","license": "PSF-2.0","projectUrl": "https://www.python.org/","maintainer": "Natanael Copa","buildDate": "2026-03-27 19:39:08","url": "https://pkgs.alpinelinux.org/package/edge/main/x86_64/python3","scrapedAt": "2026-06-08T18:01:33.970Z","error": null}
โจ Why choose this Actor
- One clean record per package, with stable field names that map onto a database schema.
- Filter exactly the slice you need by name glob, branch, repository, and architecture.
- Optional dependency enrichment expands depends, provides, and sub packages into ready arrays.
- No account, no key, and no login required.
- Pulls live from the official Alpine index, so versions reflect the catalog at run time.
๐ How it compares to alternatives
| Approach | Effort | Structured fields | Dependencies | Maintenance |
|---|---|---|---|---|
| This Actor | One run | Yes | Optional, expanded | None on your side |
| Parsing APKINDEX by hand | Hours | Manual | Manual | Constant |
| Scraping the site yourself | Days | Depends | You build it | You own the upkeep |
๐ How to use
- Create a free Apify account using this sign-up link.
- Open the Alpine Linux Packages Scraper.
- Set the
nameglob, then pick abranch,repo, andarch. - Toggle
includeDependenciesif you want commit and dependency data, and setmaxItems. - Click Start and grab your results when the run finishes.
๐ผ Business use cases
Security and compliance
| Goal | How this helps |
|---|---|
| Audit licenses across a branch | Pull license for every matching package |
| Track vulnerable versions | Snapshot version and commit over time |
Platform and containers
| Goal | How this helps |
|---|---|
| Pin base image packages | Capture exact versions per architecture |
| Build a software bill of materials | Use the expanded depends and provides lists |
Packaging and maintenance
| Goal | How this helps |
|---|---|
| Watch a package across branches | Re-run per branch and compare versions |
| Find who owns a package | Read the maintainer and origin fields |
Mirrors and tooling
| Goal | How this helps |
|---|---|
| Snapshot the index | Export the full listing for offline use |
| Feed an internal catalog | Load records into your own search tool |
๐ Automating Alpine Linux Packages Scraper
Connect runs to the tools you already use:
- Make and Zapier to trigger runs and route records into sheets or databases.
- Slack to post a summary when a run finishes.
- Airbyte to load results into a warehouse.
- GitHub Actions to schedule periodic snapshots.
- Google Drive to archive each run's output.
๐ Beyond business use cases
- Research: study how a distribution's package set evolves across releases.
- Personal: keep a watchlist of the packages you depend on.
- Non-profit: power a community mirror or documentation project.
- Experimentation: prototype a package search app without writing a scraper.
๐ค Ask an AI assistant
Paste your results into ChatGPT, Claude, Perplexity, or Microsoft Copilot and ask it to diff versions between branches, group packages by license, or map a dependency tree.
โ Frequently Asked Questions
Do I need an Alpine Linux account or an API key? No. The Actor reads the public package index at pkgs.alpinelinux.org, which needs no login or key.
Which branches can I query?
The rolling edge branch and the stable releases v3.23 down to v3.15.
Which repositories and architectures are supported?
main, community, and testing repositories, and architectures including x86_64, aarch64, armhf, armv7, ppc64le, riscv64, s390x, x86, and loongarch64.
How does the name filter work?
It is a glob. Use * and ? as wildcards, for example apk* matches everything starting with apk, and *ssl* matches anything containing ssl.
What is the difference with and without dependency enrichment?
Without it you get the listing table fields. With includeDependencies on, each package also returns install size, origin, commit, build time, and the full depends, provides, and sub package lists, at the cost of one extra page visit per package.
Why are some detail fields missing on a record?
The extra fields only appear when includeDependencies is enabled. With it off, records carry the listing fields only.
How current is the data? Each run pulls live from the Alpine index, so versions and build dates reflect the catalog at run time.
Can I get every package?
Yes. Use * as the name with a high maxItems. The Actor pages through the full result set for your filters.
What does the origin field mean? It is the source package a binary package is built from. Several binary packages can share one origin.
Can I schedule this? Yes. Use Apify Schedules to snapshot the index on any cadence you like.
๐ Integrate with any app
Results are available through the Apify API, so you can pull them into any app, database, or workflow you already run.
๐ Recommended Actors
- Have I Been Pwned Breaches Catalog Scraper
- More developer and reference data Actors in the ParseForge collection
๐ก Pro Tip: browse the complete ParseForge collection.
๐ Need Help? Open our contact form
โ ๏ธ Disclaimer: independent tool, not affiliated with Alpine Linux. Only publicly available data is collected.