Я подозреваю, что ваша строка «shebang» (необязательная первая строка файла) ссылается на sh вместо bash. Это должно быть
#!/bin/bash
для сценариев bash. Если первая строка вашего скрипта -
#!/bin/sh
, это указывает на то, что должна использоваться строго совместимая с борнером оболочка; в случае Ubuntu используется dash. Во многих других дистрибутивах это не вызывает проблемы, поскольку они связывают /bin/sh с /bin/bash; однако ubuntu ссылается на /bin/dash, чтобы позволить сценариям системы работать быстрее.
Встроенный declare является одним из многих расширений bash для спецификации сценария оболочки Bourne; dash просто реализует эту спецификацию без расширений.
Я нашел лучшее решение, чем использование неограниченного шаблона. Это было проще, чем ожидалось ... нужно было включить только «видео» в состав группы политик:
"policy_groups": [
...
"networking",
"video",
...
]
Если, кстати, вам нужно получить доступ к видеофайлам, вы также можете добавить «video_files_read», (только для чтения видеофайлов) или «video_files» (полный доступ).
Вы можете проверить все доступные группы политик при разработке приложения в Ubuntu Sdk, в QtCreator, перейти на вкладку «Опубликовать» и дважды щелкнуть по приложению файл .apparmor. Вы найдете символ +, который покажет вам все политики при нажатии. Дополнительную информацию можно найти на странице http://developer.ubuntu.com/publish/apps/packaging-click-apps/