Mycroft-core: dev_setup.sh 在 Linux Mint 上失败

创建于 2019-07-14  ·  6评论  ·  资料来源: MycroftAI/mycroft-core

清楚您正在运行的软件、硬件和版本

  • git clone mycroft-core
  • Linux Mint 西尔维娅 18
$ cat /etc/os-release
NAME="Linux Mint"
VERSION="18.3 (Sylvia)"
ID=linuxmint
ID_LIKE=ubuntu
PRETTY_NAME="Linux Mint 18.3"
VERSION_ID="18.3"
HOME_URL="http://www.linuxmint.com/"
SUPPORT_URL="http://forums.linuxmint.com/"
BUG_REPORT_URL="http://bugs.launchpad.net/linuxmint/"
VERSION_CODENAME=sylvia
UBUNTU_CODENAME=xenial

文档明确指出应支持薄荷
https://mycroft.ai/documentation/linux/#mycroft -for-linux

尝试提供我们可以用来复制问题的步骤

最初运行dev_setup.sh并通过向导,最终它开始安装,但我没有注意到这条小消息(它没有提示):

Could not find package manager
Make sure to manually install: git python3 python-setuptools python-venv pygobject libtool libffi libjpg openssl autoconf bison swig glib2.0 portaudio19 mpg123 flac curl fann g++ jq

尽可能具体地说明预期条件以及与预期条件的偏差。

在这个函数中:

function install_deps() {
    echo 'Installing packages...'
...
    elif os_is_like debian || os_is debian ; then
        # Debian / Ubuntu
        echo "$GREEN Installing packages for Debian/Ubuntu...$RESET"
        $SUDO apt-get install -y (snip)...
...

据推测,对于 Mint,我们应该期待与 ubuntu/debian 接近(类似)匹配,但它只检查 ==debian 和 ~debian,而不检查 ~ubuntu 或 ==ubuntu。

function os_is_like() {
    [[ $(grep "^ID_LIKE=" /etc/os-release | awk -F'=' '/^ID_LIKE/ {print $2}' | sed 's/\"//g') == $1 ]]
}

提供日志文件或其他输出以帮助我们查看错误

由于未安装依赖项,因此在 venv pip 包安装过程中存在各种问题。

将有助于我们调查的任何文件上传到问题

不适用

最有用的评论

好吧,我会删除我的 PR 并等待你的。

所有6条评论

感谢报告,感谢提供 os_release 文件。 我也会推送更新以使用 is_like ubuntu。

我将立即使用您建议的修复推送 PR。

@forslund我实际上有一个 PR 传入(抱歉延迟,系统 git push 用户卡在工作帐户上的问题)

```
差异 --git a/dev_setup.sh b/dev_setup.sh
索引 306e38c..97a72d2 100755
--- a/dev_setup.sh
+++ b/dev_setup.sh
@@ -293,9 +293,9 @@ 函数 install_deps() {
$SUDO yum install -y epel-release-latest-7.noarch.rpm
rm epel-release-latest-7.noarch.rpm
redhat_common_install

  • elif os_is_like debian || os_is debian ; 然后
  • # Debian / Ubuntu
  • echo "$GREEN 为 Debian/Ubuntu 安装软件包...$RESET"
  • elif os_is_like debian || os_is debian || os_is_like ubuntu || os_is ubuntu || os_is linuxmint; 然后
  • # Debian / Ubuntu / Mint
  • echo "$GREEN 为 Debian/Ubuntu/Mint 安装软件包...$RESET"
    $SUDO apt-get install -y git python3 python3-dev python3-setuptools libtool libffi-dev libssl-dev autoconf automake bison swig libglib2.0-dev portaudio19-dev mpg123 screen flac curl libicu-dev pkg-config libjpeg-dev libfann-开发构建必备 jq
    elif os_is_like fedora ; 然后
    echo "$GREEN 为 Fedora 安装软件包...$RESET"
    @@ -316,6 +316,13 @@ function install_deps() {
    回声
    echo -e "${YELLOW}找不到包管理器
    ${YELLOW}确保手动安装:$BLUE git python3 python-setuptools python-venv pygobject libtool libffi libjpg openssl autoconf bison swig glib2.0 portaudio19 mpg123 flac curl fann g++ jq\n$RESET"
    +
  • echo '警告:无法安装所有依赖项。 继续? 是/否'
  • 读 -n1 继续
  • 如果 [[ $continue != 'y' ]] ; 然后
  • 1号出口

  • +

    }
    ```

好吧,我会删除我的 PR 并等待你的。

以及现在如何在薄荷上安装它? “公关”是什么意思? 请帮忙..我该怎么办??

嗨 Z3r0ut,

PR 代表拉取请求。 它是一组建议包含在项目中的代码。

一旦 forslund 有机会审查它,由 fermulator 贡献的这个更改很可能很快就会包含在 mycroft-core 中。 发生这种情况时,此票证将被标记为已关闭,然后您应该能够使用文档中提供的正常说明安装 Mycroft。

如果您有信心在 bash 中使用 Linux 和脚本,您可以选择查看更改并将它们应用到您自己的 Mycroft 本地副本,但是如果您不确定,我建议您等待它们被正式接受。

此页面是否有帮助?
0 / 5 - 0 等级