sh_scripts/check_old_rel_pkgs
2024-06-03 23:57:16 +09:00
..
check_old_rel_pkgs.sh Add a script to check ports still needed to update after major upgrade of base. 2024-06-03 23:57:16 +09:00
README.md Add a script to check ports still needed to update after major upgrade of base. 2024-06-03 23:57:16 +09:00

check_old_rel_pkgs.sh

Description

A small script to list ports/pkgs needs updating with base ABI change.
Would be helpful after major release upgrade.

Usage

No command line arguments. Simply run it as a bourne shell script.

Output is directed to stdout, so redirect to file if needed.

Output format is space separated as follows.

origin arch lock removed

Where:

  • origin is the ports/pkgs origin. If any, @flavor is shown.
  • arch is architecture string on pkg database like FreeBSD:14:amd64 where:
    • FreeBSD as operating system
    • 14 as major OS release
    • amd64 as CPU architecture
  • lock is the pkg lock status.
    • FREE for not locked.
    • LOCKED for locked.
  • removed for existence on ports tree.
    • EXISTS for not deleted.
    • DELETED for ports having MOVED entry without any successor.

If CPU architecture is "*", it means the port/pkg is independent from CPU architecture like fonts, documents and/or scripts.

Why FREE and EXISTS is shown?
It's for scripts to handle the output easier. As the output is directed to stdout, you can connect to pipe for further processing, or to file to keep.

As cut -w handles multiple space characters as single, I decided to output verbosely.

Configuring the script

CURVERS

You need to specify current major release here.

13 for 13.[-p] or stable/13, 14 for 14.[-p] or stable/14.

For main branch, you should specify latest stable branch + 1. When stable/14 is the latest, set it as 15.

PORTSDIR

The directory where ports tree to be used exists.

Default is where vanilla FreeBSD expects: /usr/ports

Sample output line

editors/vim@console FreeBSD:14:amd64 FREE EXISTS