Tools/scripts: add installed-ports-by-origin.sh
This script generates a list of all installed ports by origin. This is similar pkg info -qoa, but with flavors. This is useful for example to create a list of ports for Poudriere to build.
This commit is contained in:
committed by
Robert Clausecker
parent
46243e3ba2
commit
9cbf77aba0
21
Tools/scripts/installed-ports-by-origin.sh
Executable file
21
Tools/scripts/installed-ports-by-origin.sh
Executable file
@@ -0,0 +1,21 @@
|
||||
#!/bin/sh
|
||||
|
||||
# Constributed by Ralf van der Enden <tremere@cainites.net>
|
||||
# Public domain.
|
||||
|
||||
# print a list of all installed ports by origin with flavour.
|
||||
# this is similar to pkg info -qoa, but prints a flavour if the
|
||||
# package has one.
|
||||
|
||||
sqlite3 /var/db/pkg/local.sqlite \
|
||||
"select origin || coalesce('@' || (
|
||||
select t4.annotation as annotation
|
||||
from packages t1
|
||||
inner join pkg_annotation t2 on t1.id = t2.package_id
|
||||
inner join annotation t3 on t2.tag_id = t3.annotation_id
|
||||
and t3.annotation = 'flavor'
|
||||
inner join annotation t4 on t2.value_id = t4.annotation_id
|
||||
and t2.tag_id = t3.annotation_id
|
||||
and t3.annotation = 'flavor'
|
||||
where t1.origin = t0.origin), '')
|
||||
from packages t0;"
|
||||
Reference in New Issue
Block a user