![Пример Snap (snapd) hello-world не работает (путь не найден?)](https://rvso.com/image/1000392/%D0%9F%D1%80%D0%B8%D0%BC%D0%B5%D1%80%20Snap%20(snapd)%20hello-world%20%D0%BD%D0%B5%20%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%B0%D0%B5%D1%82%20(%D0%BF%D1%83%D1%82%D1%8C%20%D0%BD%D0%B5%20%D0%BD%D0%B0%D0%B9%D0%B4%D0%B5%D0%BD%3F).png)
Я просто пытался использоватьsnap
в первый раз и следовал инструкциямНачало работы | Документация Snapcraft.
Я установил пример hello world, sudo snap install hello
но hello
команда не найдена. Я заметил, что команда находится в /snap/bin, но, похоже, она пропустила свой путь в моем PATH.
Когда я установил snap ( sudo apt install snapd
), в первый раз я получил сообщение об ошибке, но со второй попытки все заработало. (Удаление и установка snapd также не помогли.)
Нужно ли мне добавлять путь вручную?
Есть идеи?
Редактировать:
- веб-приложение irc
shout
заработало сразу
решение1
Если вы только что установили snapd, попробуйте запустить новое окно терминала, чтобы получить новый $PATH
. Это нужно будет сделать только один раз.
Если ваша оболочка не считывает данные, /etc/profile.d
вам необходимо добавить PATH=$PATH:/snap/bin
в конфигурацию оболочки (например, ~/.zshrc
для zsh)
решение2
Если вы устанавливаете zsh, то вы можете легко настроить его, просто откройте терминал и введите:
sudo gedit /etc/zsh/zprofile
Если вы используете vim, vscode или что-то еще, просто добавьте это вместо gedit. А затем добавьте эти две строки.
emulate sh -c 'source /etc/profile'
emulate sh -c 'source /etc/profile.d/apps-bin-path.sh'
Затем сохраните его и закройте. Теперь пора перезагрузить ПК, надеюсь, все заработает.
решение3
Эта проблема все еще возникает в Ubuntu 18.04 с Wayland, zsh и snapd. Смотрите посты #18 и #19 вhttps://bugs.launchpad.net/ubuntu/+source/snapd/+bug/1640514Больше подробностей.
решение4
На Debian 9 мне пришлось /snap/bin
вручную добавить в корневой PATH. Сделайте следующее:
В /etc/login.defs
, вы найдете следующую строку:
ENV_SUPATH PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
Добавьте путь, чтобы он был таким:
ENV_SUPATH PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin
Выйдите из сеанса и войдите снова.