snap打包初步了解

news/2024/4/26 17:07:49/文章来源:https://blog.csdn.net/qq_37887537/article/details/128421893

前言

和snap比较类似的有三种打包方式:

Snap Flatpak appimage

Appimage是将所有的资源打包在一起,以一个类似与独立exe的方式执行,虽然简单使用,但是解压资源和本地缓存数据都比较麻烦。

Flatpak和snap十分类似,但是他却需要桌面GUI才能使用,不能在云服务上执行。

Snap目前来看最为全面,除了开源性让人诟病,支持的权限管理和物联网方面的都还可以。

 

Snap打包的基础入门步骤 

安装snap管理器:

sudo apt install snapd

重启linux:

之后查看环境:

sudo systemctl status snapd

可以看到:

 这样就运行起来snap

到这里和做包是没有关系的,但是想要安装snap包到你的电脑,就必须安装该管理器。

做包工具

snapcraft:

安装:

sudo snap install snapcraft --classic

这里基础使用,不打算进行上传到snap的唯一官方商店,就不尝试进行注册账号了。

新建一个文件夹,然后:

snapcraft init

可以看到该文件夹下出现了一个snap文件,里面是一个yaml文件,将yanl文件修改为:

name: hello-world-cli
version: "0.1"
summary: Hello World
description: |This demo is intended to show how to build your first snapThis code is part of the Snapcraft example tour athttps://developer.ubuntu.com/snapcraft-getting-startedgrade: stable
confinement: strict
base: core20parts:hello:plugin: dumpsource: ./bin/apps:hello-world-cli:command: hello

这里除了parts上面的是包的基础信息之外,还包含parts来指定hello的二级制文件的位置,apps部分是来exprots出命令来提供给安装的用户使用。

当前的目录如下:

 执行make.sh:

snapcraft  --use-lxd

等待编译出:

hello-world-cli_0.1_amd64.snap

注意:这里可能会有各式各样的问题,推荐虚拟机安装ubuntu20.04进行打包尝试来避免一些问题。

安装测试:

snap install --dangerous ./hello-world-cli_0.1_amd64.snap

然后调用:

hello-world-cli就可以看到自己的打印。

吐槽:这个官网连个完整的例子都没有,文档也是坑人的很,使用起来资料匮乏,哎好难!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_239436.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

FactoryBean

FactoryBean ①简介 FactoryBean是Spring提供的一种整合第三方框架的常用机制。和普通的bean不同,配置一个FactoryBean类型的bean,在获取bean的时候得到的并不是class属性中配置的这个类的对象,而是getObject()方法的返回值。通过这种机制&…

教室管理系统

开发工具(eclipse/idea/vscode等):idea 数据库(sqlite/mysql/sqlserver等):mysql 功能模块(请用文字描述,至少200字): 关于这个系统的具体功能主要包括教师,学生,课程,教室还有班级这几个实体。…

m基于GNN图神经网络的目标匹配分析matlab仿真

目录 1.算法描述 2.仿真效果预览 3.MATLAB核心程序 4.完整MATLAB 1.算法描述 在一些应用领域数据可以自然而然地表示成图结构,包括 蛋白质组学,图像分析,场景描述 ,软件工程,和自然语言处理。最简单的图结构包括单…

【SwinTransformer】GitHub源码,main.py,swin_transformer.py...

声明:仅学习使用~ “我们抬头便看到星光,星星却穿越了万年”。 Contents 数据与环境配置解读main.pyswin_transformer.py数据与环境配置解读 来看 SwinTransformer 的github官网。已经开源了。(想不到在家里居然可以直接上GItHub,真好啊!) 进去后可以看到如下界面: I…

CentOS7迷你版安装Redis并配置基础信息

1. 安装gcc、wget依赖 yum install gcc yum install wget 2. 使用命令:wget http://download.redis.io/releases/redis-6.2.5.tar.gz 下载安装包,注意要先cd到要下载到的目标位置) 3. tar -zxvf redis-6.2.5.tar.gz 解压压缩包 4. cd redis-…

2023年企业固定资产管理怎么破局?

2022年已经在风雨中过去,转眼我们迎来了2023年。过去的一年,固定资产管理的痛依旧历历在目,如何让新的一年中,固定资产管理工作有所突破,不再承受固定资产资产管理的痛处,是每个企业管理者和企业固定资产管…

数字化时代,看商业智能BI与业务发展分析

每一家企业我们都可以从模式、问题和求解这三个角度对企业的业务经营管理进行探讨,比如模式,公司目前的管理模式和运营模式效果如何,是否符合公司长期战略目标或中短期业绩增长目标? 数据分析 - 派可数据商业智能BI可视化分析平台…

【Kotlin 协程】Flow 异步流 ⑥ ( 调用 Flow#launchIn 函数指定流收集协程 | 通过取消流收集所在的协程取消流 )

文章目录一、调用 Flow#launchIn 函数指定流收集协程1、指定流收集协程2、Flow#launchIn 函数原型3、代码示例二、通过取消流收集所在的协程取消流一、调用 Flow#launchIn 函数指定流收集协程 1、指定流收集协程 响应式编程 , 是 基于事件驱动 的 , 在 Flow 流中会产生源源不断…

数据改版 | CnOpenData中国工业企业基本信息扩展数据

CnOpenData中国工业企业基本信息扩展数据 一、数据简介 拉动中国经济的三个产业中,工业企业占有特殊的地位,是推动国内经济发展的重要产业。工业是最主要的物质生产部门,为居民生活、各行业的经济活动提供物质产品,这一重要作用是…

垃圾回收机制之v8引擎

v8的内存分配 (栈(执行环境)跟堆) 堆内存负责垃圾回收机制,只有新生代和老生代两部分 新生代:对等分的(严格) 老生代: 都是由新生代转变的(连续的空间&…

截至2022年12月共计451个信息安全国家标准 汇总

写在前面 早年刚参加信息安全工作更多的学点皮毛技术,到处找安全工具,跟踪poc,拿到一个就全网扫一遍,从来没有想过,系统化的安全工作应该怎样搞?我做的工作在安全体系中处于哪个阶段? 后来有机会做企业安全建设&…

五、Kubernetes命令行工具 (kubectl)

1、概述 kubectl 是 Kubernetes 集群的命令行工具,通过 kubectl 能够对集群本身进行管理,并能 够在集群上进行容器化应用的安装部署。 2、语法 使用以下语法从终端窗口运行 kubectl 命令: kubectl [command] [TYPE] [NAME] [flags] 其中 …

数据仓库基础与Apache Hive入门

数据仓库基本概念 数据仓库,简称数仓,用于存储、分析、报告的数据系统。数据仓库的目的是构建面向分析的集成化数据环境,分析结果为企业提供决策支持。 数据仓库本身并不生产任何数据,其数据来源于不同的外部系统同时数据仓库自…

Adobe Acrobat XI 一进去就闪退;解决Acrobat的闪退问题

一、原因分析 闪退是因为网络中校验版权时出现问题 二、解决办法 域名欺骗,添加伪造的host条目 1. 进入C:\Windows\System32\drivers\etc 找到hosts文件 2. 右机hosts,选择属性,在安全选项里,点击高级: 3. 在ho…

C++——哈希

文章目录1. unorder无序1.1unordered_map文档介绍接口说明1.2 unordered_set2.哈希常见的哈希函数2.1 直接定址法--(常用)2.2 除留余数法--(常用)(1).闭散列——开方定址发(已被淘汰)a.线性探测——冲突越多效率越低。b.二次探测(2).开散列——拉链法/哈…

深入浅出synchronized关键字

前言 无论在日常工作还是面试过程中,synchronized关键字作为并发场景下的操作,是一定要掌握的,本文从synchronized的使用方式、原理及优化三个方面,对synchronized关键字作一个系统化的说明。 使用方式 synchronized主要有三种…

Java: static,final,代码块 的详解

Java: static,final,代码块 的详解 每博一文案 山本文绪说过这样一句话:哪些决定放弃了的事,就请放弃得干干净净。哪些决定再也不见面的人,就真 的不要再见面了,不要再做背叛自己的事,如果想要…

操作手册(GB8567——88)基于协同的在线表格forture-sheet

操作手册(GB8567——88) 1引言 1.1编写目的 为了帮助用户更好的上手本系统,加快用户对forture-sheet在线表格的快速入门,本操作手册详细介绍使用forture-sheet的部分基础操作以及注意细节。 1.2前景 待开发系统的名称&#x…

ASP.NET开发的医疗健康咨询平台源码 养生知识咨询 寻根问药平台源码 C#源码

一、源码特点: 爱心医生健康知识门户网站是一个权威的医疗科普视频、语音、知识、医疗健康问答平台。 包含所有源代码和数据库,可以直接部署到IIS中使用。 二、菜单功能 网站页面: 1、首页:包含幻灯片。 2…

InnoDB详解2

文章目录InnoDB详解21 行格式1 Compact行格式详解1 变长字段长度列表(两个字节)2 NULL值列表(1个字节)3 记录头信息 (重点)2 Dynamic行格式2 页的上层结构InnoDB详解2 1 行格式 规定每条记录是怎么存储的…