#!/bin/sh # Usage: # getname.sh # Returns the list of all known .udeb files. # getname.sh [name] # Returns the canonical name of a package name. set -ue if [ $# -gt 0 ]; then name="${1#src/}" case "$1" in src/*-udeb/*) name="${name%%/*}";; *-udeb);; *) name="${name%.udeb}"; name="${name%%_*}-udeb";; esac echo "$name" else for dir in src/*-udeb/; do if [ -r "$dir/debian/files" ]; then echo src/"$(sed -nr '/^(\S+\.udeb)(\s.*)?$/ {s//\1/p;q}' "$dir/debian/files")" else deb_arch=$(dpkg-architecture -qDEB_HOST_ARCH ${ARCH:+-a$ARCH}) sed -nr "s@^(\S+) \(([0-9.]+)\).*@src/\1_\2_${deb_arch}.udeb@p" "$dir/debian/changelog" fi done fi