#Linux软件包管理工具Snapcraft
-
我们知道在现在的Ubuntu桌面中,我们几乎都使用的是debian包. 有的Linux系统上是使用rpm包.在Snappy Ubuntu上,我们使用的包叫做snap包.它的包的扩展名叫做.snap.这是一种崭新的包,和我们以前使用的不一样哦.我们知道debian包的打 包非常难懂.相比较而言,snap包的语法就简单得多.今天在我们的教程中,我们来以一个简单的例程来介绍.在以后的教程中,我们用更加详细的方式来介绍 snapcraft.
snapcraft的功能是:它是一个编译工具,让我们很方便地把不同资源的component集成起来,并编译它们,它是一个snap的打包工具用Mark Shuttleworth的话简单地说snapcraft就是"apt-get for github"。
snap包具有如下的特性:包含应用所需运行的所有dependence
你可以100%确定你的应用不会因为任何在应用之外的变化的改变而导致你的应用不 能正常运行,比如卸载一个Java应用不会导致其它Java应用的运行.安装一个使用不同版本的Java JDK/OpenJDK的Java应用,不会干扰现有的任何一个运行在不同JDK/OpenJDK版本的Java应用
通常snap的包比正常应用的包要大,因为它包含了所有它需要运行的环境。现在可以通过使用 cmake 插件作为 CMAKE_FIND_ROOT_PATH 参数在部件中声明的 build-snap 列表路径,将 build-snaps 利用到构建环境中。此外, cmake 原语现在直接驱动构建而不是仅调用 make。rust 插件以向后兼容的方式进行了重构,可以更好地与非传统的 rust 工具配合使用。
项目地址: https://snapcraft.io/