Answers:
Snapcraft是在该命令下捆绑提供的一组工具,snapcraft
可以轻松地为多个Linux发行版创建(工艺)软件包。这些.snap软件包通常包含独立的应用程序,提供安全隔离,并且可以从Ubuntu软件商店中安装,也可以通过snap install <snap-name>.snap
命令手动安装。
简而言之,作为开发人员,您将使用常规工具编写代码,并让Snapcraft负责将其组装以进行分发。Snapcraft还擅长使开发人员将其现有应用程序移植到任何支持快照的Linux平台。
Snapcraft:
snapcraft.yaml
文件,该文件指定创建包所需的零件和插件您需要Ubuntu 16.04 LTS才能使用Snapcraft。使用Ctrl+ Alt+ 打开终端,t并使用以下命令简单地安装Snapcraft:
sudo apt install snapcraft
sudo apt install build-essential # Optional, but useful for different builds
如果您使用的是其他发行版,请查看备用安装说明>
以下示例制作了一个包含服务的软件包,该服务允许您粘贴和共享。完成后,您可以将其手动安装在快照设备上以进行测试,也可以将其上传到商店以供其他用户使用。
首先,我们打开一个终端并从示例存储库下载示例:
sudo apt install git
git clone https://github.com/ubuntu-core/snapcraft.git
cd snapcraft/demos/gopaste
注意该snapcraft.yaml
目录中的文件,该文件指定了服务以及组装最终.snap所需的零件。您可以选择使用文本编辑器对其进行检查。
现在snapcraft
在终端上运行命令。这将导致所有snapcraft子命令依次运行以构建零件并将结果放入最终的.snap包中。在开发过程中,通常您将分别运行这些步骤,直到您对整个构建和组装工作充满信心为止。
$ snapcraft
Pulling gopaste
env GOPATH=/tmp/snapcraft/examples/gopaste/parts/gopaste/build go get -t -d github.com/wisnij/gopaste/gopasted
Building gopaste
env GOPATH=/tmp/snapcraft/examples/gopaste/parts/gopaste/build go build github.com/wisnij/gopaste/gopasted
env GOPATH=/tmp/snapcraft/examples/gopaste/parts/gopaste/build go install github.com/wisnij/gopaste/gopasted
env GOPATH=/tmp/snapcraft/examples/gopaste/parts/gopaste/build cp -a /tmp/snapcraft/examples/gopaste/parts/gopaste/build/bin /tmp/snapcraft/examples/gopaste/parts/gopaste/install
Staging gopaste
Snapping gopaste
Generated 'gopaste_1.0_amd64.snap' snap
在命令的输出中,您可以看到snapcraft为您运行的步骤:
笔记:
gopaste_1.0_amd64.snap
(请注意,我是在amd64桌面上构建的,例如Raspberry Pi 2软件包具有_armhf
体系结构后缀)。snapcraft pull
,snapcraft build
,snapcraft stage
或者snapcraft snap
snapcraft -h
可用的所有命令的简要概述。就是这样,快速了解Snapcraft的功能!了解有关Snapcraft的更多信息>
"And that's it for a quick glimpse of what Snapcraft can do!"