Конструкция ${var-foo}
расширяется до foo
, если var
не установлено или имеет значение null . Пустой массив — это именно то, что нужно.
Как вы цитируете:
An array variable is considered set if a subscript has been assigned a value.
Пример, который вы размещаете (ar=()
), не присваивает значение ни одному индексу.
Похоже, ваши репозитории настроены правильно (, за исключением вариантов non-free
, но здесь они не имеют значения ), иspice-vdagent
действительно доступен в Debian 9.9.
На основании вашего анализа ошибок apt update
получается, что отключение записи CD -в ПЗУ позволяет apt
обновить удаленные репозитории, а затем найти и установить spice-vdagent
.