Как установить Snap-пакет из локального файла?

Как установить Snap-пакет из локального файла?

У меня есть одноразовая программа, написанная на Python.

Можно ли упаковать Snapcraft? Как установить пакет локально? Есть ли что-то вроде GDebi для Snaps?

решение1

Вот пример локальной установки Snap из Snap Store (источник).

Однако это вам не подойдет. Почему это не сработает и какой метод вам следует использовать вместо этого, подробно описано ниже.

$ snap download hello-world
Fetching snap "hello-world"
Fetching assertions for "hello-world"

$ sudo snap ack hello-world_27.assert 

$ sudo snap install hello-world_27.snap
hello-world 6.3 from 'canonical' installed

$ snap list
Name                   Version                   Rev   Developer      Notes
<snip>
hello-world            6.3                       27    canonical      -
  • Для снимков нет ничего лучше GDebi.
  • Поскольку у вас уже есть локальный snap, вы, очевидно, пропускаете первый шаг. Вам не нужно его скачивать.
  • Поскольку вы сделали снимок, файла .assert нет, поэтому вы пропускаете и второй шаг.
  • Наконец, поскольку Snaps по умолчанию используют для защиты подписи, а ваш не подписан, вам необходимо отключить эту защиту на третьем этапе с помощью флага --dangerous.

Таким образом, ваш метод для локально созданного неподписанного Snap будет следующим:

$ sudo snap install /path/to/my-snap.snap --dangerous

решение2

Краткий обзор:

если у вас есть загруженный файл, например, abc.snapв текущей папке,

пытаться:

snap install ./abc.snap --dangerous

Объяснение:

Snap-файлы обычно подписываются закрытым ключом издателя. Когда пакет подписан, это означает лишь то, что он был подготовлен кем-то, у кого есть закрытый ключ. Это буквально ничего больше не означает. Это не означает, что пакет безопасен для вашего компьютера. Это не означает, что пакет содержит то, что он утверждает. Это означает лишь то, что кто-то подписал его своим закрытым ключом.

Если у вас есть пустой .snapфайл, который может быть подписан или не подписан, вы можете пропустить проверку подписи, используя --dangerous. На самом деле нет ничего более опасного, чем доверить содержимое вашего компьютера случайному человеку в Интернете.

Пакеты, доступные в официальном магазине snap, подписаны, так что если случится что-то действительно дерьмовое, можно будет отследить учетную запись, с которой был отправлен пакет. Это может удержать хороших людей от публикации плохих пакетов. Это не означает, что пакеты безопасны. Это, вероятно, не остановит плохих игроков.

Связанный контент