修复 Firefox 离线包包名识别

main
wangqiyang 3 days ago
parent 2f6d34c479
commit 152952b8c2

@ -139,11 +139,24 @@ select_deb() {
cp -v "$deb" /opt/firefox-installable/ cp -v "$deb" /opt/firefox-installable/
selected_count=$((selected_count + 1)) selected_count=$((selected_count + 1))
} }
package_name_from_deb() {
pkg=$(dpkg-deb -f "$1" Package 2>/dev/null || true)
if [ -n "$pkg" ]; then
echo "$pkg"
return 0
fi
file=$(basename "$1")
echo "$file" | cut -d '_' -f 1 | sed 's/[.]deb$//'
}
for deb in /opt/firefox-deb/*.deb; do for deb in /opt/firefox-deb/*.deb; do
[ -e "$deb" ] || continue [ -e "$deb" ] || continue
file=$(basename "$deb") file=$(basename "$deb")
pkg=${file%%_*} pkg=$(package_name_from_deb "$deb")
pkg=${pkg%%.deb} if [ -z "$pkg" ]; then
echo "skip package with empty name: $file"
continue
fi
echo "package candidate: $file package=$pkg"
status=$(dpkg-query -W -f='${Status}' "$pkg" 2>/dev/null || true) status=$(dpkg-query -W -f='${Status}' "$pkg" 2>/dev/null || true)
installed=0 installed=0

Loading…
Cancel
Save