trending-linux-packages: now with all 1600 AppStream apps, a curl-to-pacman install list, and configurable recommendations (git.disroot.org)
from Jorvex609@piefed.zip to programming@programming.dev on 18 Jun 12:01
https://piefed.zip/c/programming@piefed.zip/p/1585007/trending-linux-packages-now-with-all-1600-appstream-apps-a-curl-to-pacman-install-list-and

I posted a tool a while back that tracked trending Linux packages from pkgstats data. The feedback made me rethink it — the curated category list of 173 packages was too narrow, and people wanted something they could actually use on a fresh install.

Biggest change: full AppStream coverage instead of a hand-picked list.

The collector now parses Manjaro/Arch’s AppStream XML data (/usr/share/swcatalog/xml/) to automatically extract every desktop-application and console-application package, then maps their AppStream categories to 8 Pamac-style groups (Audio & Video, Games, Development, Utilities, etc.). That jumped coverage from 173 → ~1600 packages.

But AppStream misses a lot of stuff that power users care about — window managers (Hyprland, Sway, i3), shells (zsh, fish, nushell), terminal emulators (Kitty, Alacritty, Foot), desktop environments (Plasma, GNOME). So I kept those as curated extras that get deduped against the AppStream data. Net result: 1,275 unique packages across 16 categories.

New: recommended.txt — curl it, pipe it, install it.

curl -sfL https://git.disroot.org/hirrolot19/trending-linux-packages-data/raw/branch/main/recommended.txt \  
  | head -100 | sudo pacman -S --needed -  

All 1,275 packages ranked by a score that balances popularity percentile + growth slope percentile (default 1:1). Pipe through head -N to pick your count. The scoring is trivial to tweak:

TOP_N=50 SLOPE_WEIGHT=2 python3 src/collector.py  

The math is still naive though. Right now it’s just pop_percentile * w1 + slope_percentile * w2 — which works but ignores a bunch of things that would make the rankings smarter:

I’d love PRs or issues discussing better scoring functions. The recommendation config is the first 5 lines of the collector — easy to experiment with. If you’ve done work on ranking with sparse time-series data, I’d especially appreciate input.

What the data is showing right now:

The top 10 recommended packages by combined score: cmake, mpv, qt6-tools, pavucontrol, v4l-utils, firefox, steam, clang, jdk-openjdk, vim. These are packages that are both very widely used AND gaining users — solid picks for any new system.

Top gainers (pure slope): mpv (+2.80 pts/mo), cmake (+2.51), qt6-tools (+2.41), pavucontrol (+2.22), nvtop (+2.22). The Wayland-adjacent tooling wave is real.

Project links:

#programming

threaded - newest

statelesz@slrpnk.net on 18 Jun 12:08 collapse

What’s the point of installing all the most popular packages? Just install what you need.

Covenant@sh.itjust.works on 18 Jun 15:31 collapse

Some kind of ninite for Linux