tauri使用github action实现跨平台编译并解决编译错误等问题

正常编译为跨平台结果就像上面的,有mac/windows/linux的安装程序,直接下载就可以安装使用,我的这个livebox桌面端仓库地址:GitHub - Sjj1024/LiveBox: livebox,里面有编译文件可以参考。今天主要讲一下遇到的问题。

官方文档的坑

按照tauri官方文档的说明:跨平台编译 | Tauri Apps,其实只要在项目的根目录创建一个 .github/workflows/build.yml 文件,然后添加内容就可以了:

但是这里需要注意:

这里cache: 'yarn' # Set this to npm, yarn or pnpm.是有问题的,不能直接使用

修改为pnpm后,就会报错:

Run actions/setup-node@v3

13Attempt to resolve LTS alias from manifest...

14Found in cache @ /Users/runner/hostedtoolcache/node/20.15.0/arm64

Environment details

19Error: Unable to locate executable file: pnpm. Please verify either the file path exists or the file can be found within a directory specified by the PATH environment variable. Also check the file mode to verify the file is executable.

Install frontend dependencies

Build the app

Post Sync node version and setup cache

Post Rust cache

Post Checkout repository

Complete job

add tag · Sjj1024/LiveBox@07414e2 

这里需要修改为下面的逻辑:完成可用的内容

name: Release
on:push:tags:- 'v*'workflow_dispatch:jobs:release:permissions:contents: writestrategy:fail-fast: falsematrix:platform: [macos-latest, ubuntu-20.04, windows-latest]runs-on: ${{ matrix.platform }}steps:- name: Checkout repositoryuses: actions/checkout@v3- name: Install dependencies (ubuntu only)if: matrix.platform == 'ubuntu-20.04'# You can remove libayatana-appindicator3-dev if you don't use the system tray feature.run: |sudo apt-get updatesudo apt-get install -y libgtk-3-dev libwebkit2gtk-4.0-dev libayatana-appindicator3-dev librsvg2-dev- name: Rust setupuses: dtolnay/rust-toolchain@stable- name: Rust cacheuses: swatinem/rust-cache@v2with:workspaces: './src-tauri -> target'- name: Sync node version and setup cacheuses: actions/setup-node@v4with:node-version: 20- name: Install PNPMrun: npm i -g pnpm- name: Install frontend dependencies# If you don't have `beforeBuildCommand` configured you may want to build your frontend here too.run: pnpm install # Change this to npm, yarn or pnpm.- name: Build the appuses: tauri-apps/tauri-action@v0env:GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}with:tagName: ${{ github.ref_name }} # This only works if your workflow triggers on new tags.releaseName: 'App Name v__VERSION__' # tauri-action replaces \_\_VERSION\_\_ with the app version.releaseBody: 'See the assets to download and install this version.'releaseDraft: trueprerelease: false

如果你使用的是npm的话,应该没有问题,但是我使用的pnpm,以为修改为npm就可以正常用了,但是依然报错:

Run actions/setup-node@v3
Attempt to resolve LTS alias from manifest...
Found in cache @ /Users/runner/hostedtoolcache/node/20.14.0/arm64
Environment details
/Users/runner/hostedtoolcache/node/20.14.0/arm64/bin/npm config get cache
/Users/runner/.npm
Error: Dependencies lock file is not found in /Users/runner/work/LiveBox/LiveBox. Supported file patterns: package-lock.json,npm-shrinkwrap.json,yarn.lock

这里就是说没有得到lock file,因为我使用pnpm,只会有pnpm-lock.yaml文件,所以只能使用pnpm安装。

其中文件里面的 GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} 是每个仓库都会默认包含的一个action环境变量,不用单独添加,可以给这个环境变量添加不同的权限:GitHub 会自动为每个运行的工作流发布 GitHub 令牌,而不需要进一步配置,这意味着不存在秘密泄漏的风险。但是,该令牌默认只具有读权限,并且在运行工作流时可能会出现“资源无法通过集成访问”错误。如果发生这种情况,您可能需要向此标记添加写权限。要做到这一点,进入您的 GitHub 项目设置,然后选择操作,向下滚动到“工作流权限”,并检查“读取和写入权限”。

mac安装包打开遇到的问题

提示:已损坏,无法打开,你应该将它移到废纸篓

提示:无法打开 “应用程序”,因为无法验证开发者。macOS 无法验证此 App 不包含恶意软件 

解决办法:

打开 “系统偏好设置…” - “安全性与隐私”,“通用” 标签页,如图勾选:允许 “任何来源” 下载的 App 运行:

如果还是报错,就可以祭出大招了,给文件赋予安全性设置。在终端粘贴复制输入命令:

sudo xattr -r -d com.apple.quarantine

然后打开 Finder进入 “应用程序” 目录,找到该软件,将其图标拖到终端窗口,获取到文件路径,最终拼接为以下命令:

sudo xattr -r -d com.apple.quarantine /Applications/livebox.app

然后执行命令,输入系统密码即可。完成上述步骤即可完美运行应用。

输入一个直播间地址试试:完美

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

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

相关文章

一投就中,收稿范围大,1个月内录用,国人发文最多,无风险预警

别人费心费力投个一年都不一定有结果,您直接坐上”直升飞机”,1个月录用。下面老毕分享1本超快录用EI期刊,工程电气方向的学者抓紧投稿。 抢占版面,下方【扫一扫】直接安排,1个月内录用🌈 Journal of Elect…

快递大件多少算超重物品?

在快递大件物品时,我们经常听到“超重”这个词,但究竟多重才算超重呢?今天,就让我们来探讨一下快递大件的超重标准,以及如何更经济地快递这些超重物品。 1. 祺祺寄快递: “祺祺寄快递”是一个便捷的快递服…

一款go build命令增强工具

项目地址&#xff1a;【GitHub - gvcgo/gobuilder: An enhancement for official <go build>.】 类别&#xff1a;Go 项目标题&#xff1a;一款go build命令增强工具 项目描述&#xff1a;在使用go做跨平台项目时&#xff0c;往往需要手动写脚本来实现跨平台编译。这款…

整合Spring Boot和Pulsar实现可扩展的消息处理

整合Spring Boot和Pulsar实现可扩展的消息处理 大家好&#xff0c;我是免费搭建查券返利机器人省钱赚佣金就用微赚淘客系统3.0的小编&#xff0c;也是冬天不穿秋裤&#xff0c;天冷也要风度的程序猿&#xff01; 在现代分布式系统中&#xff0c;消息队列是实现异步通信和解耦…

线程的创建(二)

通过Runnable接口实现多线程 在开发中&#xff0c;我们应用更多的是通过Runnable接口实现多线程。这种方式克服了继承Thread类的特点&#xff0c;即在实现Runnable接口的同时还可以继承某个类。 从源码角度看&#xff0c;Thread类也是实现了Runnable接口&#xff0c;Runnable…

在开发板上抓包的方法

1.tcpdump tcpdump -i lo -s0 -w /user/lo.pcap tcpdump: 启动 tcpdump 工具&#xff0c;用于捕获网络数据包。-i lo: 指定监听的网络接口为 lo&#xff0c;这里的 lo 是本地回环接口&#xff08;loopback interface&#xff09;&#xff0c;用于本机内部通信。-s0: 设置抓取…

小程序常用标签

在微信小程序开发中&#xff0c;常用的标签有很多&#xff0c;这些标签用于构建页面结构、呈现内容和实现交互效果。以下是一些常见的小程序标签及其主要作用&#xff1a; 基础视图标签 view: 视图容器&#xff0c;类似于 <div>&#xff0c;用于包裹视图层的结构。 tex…

绿盟又行了,漏管市场占有率第一

漏洞管理平台 吉祥学安全知识星球&#x1f517;除了包含技术干货&#xff1a;Java代码审计、web安全、应急响应等&#xff0c;还包含了安全中常见的售前护网案例、售前方案、ppt等&#xff0c;同时也有面向学生的网络安全面试、护网面试等。 今天看到不少朋友圈在转发&#xff…

使用Python实现深度学习模型通常涉及以下几个步骤

学习总结 1、掌握 JAVA入门到进阶知识(持续写作中……&#xff09; 2、学会Oracle数据库入门到入土用法(创作中……&#xff09; 3、手把手教你开发炫酷的vbs脚本制作(完善中……&#xff09; 4、牛逼哄哄的 IDEA编程利器技巧(编写中……&#xff09; 5、面经吐血整理的 面试技…

酒的生物化学成分与生理学功能?

酒的生物化学成分与生理学功能&#xff1f; 李升伟 酒是一种含有多种化学成分的混合物&#xff0c;其主要成分是酒精&#xff0c;也就是乙醇。除了酒精和水之外&#xff0c;酒中还含有酸、酯、醛、醇等多种类型的化学物质。这些化学成分的含量和比例对于酒的质量和风味有着重…

Java 优雅的随机选取数组N个不重复的元素(下标)

文章目录 前言一、不优雅的做法二、优雅的做法前言 在处理Java集合时,我们经常遇到需要从一个数组或列表中随机选取N个不重复元素的场景。本文将介绍两种处理这一需求的方法:一种较为直接但不够优雅的方法,以及一种更加简洁优雅的方法。 一、不优雅的做法 最直接的方法可能…

亚马逊测评干货分享:跨境卖家店铺测评技巧

测评在亚马逊、etsy、temu、速卖通、vinted、ebay、allegro、Jumia、Fruugo、敦煌、shopee、ozon、阿里国际站、沃尔玛、newegg等跨境平台中扮起着重要的方式&#xff0c;卖家们了解到测评可以快速增加产品的销量、评论数量&#xff0c;提升排名&#xff0c;从而打造爆款产品。…

Python基于逻辑回归分类模型、决策树分类模型、随机森林分类模型和XGBoost分类模型实现乳腺癌分类预测项目实战

说明&#xff1a;这是一个机器学习实战项目&#xff08;附带数据代码文档视频讲解&#xff09;&#xff0c;如需数据代码文档视频讲解可以直接到文章最后获取。 1.项目背景 在当今医疗健康领域&#xff0c;乳腺癌作为威胁女性健康的主要恶性肿瘤之一&#xff0c;其早期诊断与精…

Ollama qwen2:7b

简介 一个简明易用的本地大模型运行框架&#xff0c;Ollama官网&#xff1a;Ollama ollama命令 ollama有类似docker的命令。下面是一些模型(large language models)的操作命令: ollama list&#xff1a;显示模型列表ollama show&#xff1a;显示模型的信息ollama pull&#…

当前最流行的AI绘画工具超详细介绍使用【保姆篇】

前言 AI绘画工具的发展使得许多UI设计师、原画设计师面临失业,这是技术发展的趋势无可避免。如果能好好利用AI工具或许能使设计师在行业中利于不败之地。 当然,AI绘画工具也为许多小白以及不懂PS工具设计的使用者们提供了绝对帮助,能好好利用AI绘画工具事半功倍。 下面为大…

2024年【建筑电工(建筑特殊工种)】模拟试题及建筑电工(建筑特殊工种)作业考试题库

题库来源&#xff1a;安全生产模拟考试一点通公众号小程序 2024年建筑电工(建筑特殊工种)模拟试题为正在备考建筑电工(建筑特殊工种)操作证的学员准备的理论考试专题&#xff0c;每个月更新的建筑电工(建筑特殊工种)作业考试题库祝您顺利通过建筑电工(建筑特殊工种)考试。 1、…

visual studio2022配置和使用protobuf

上图证明&#xff0c;我真的测了好多遍&#xff0c;测了好多版本的protobuf&#xff0c;花了很多时间。不过好在最后在vs2022上测通了。 下载protobuf 这里是protobuf下载的地址。 Releases protocolbuffers/protobuf GitHub 个人使用的3.21.9这个版本才跑通的。 1、首先…

2024年5月90篇代码大模型论文最全整理

引言&#xff1a; 本文整理 2024 年 5 月发布的 90 篇代码大模型相关论文&#xff0c;其中包括 17 篇发表在今年 ICLR 的论文。根据论文内容&#xff0c;我们将这些论文整理为了基座模型、代码微调、测试基准、代码 Agent、低资源语言处理、AI 代码安全与分析、人机交互、软件…

Sqlserver双活

要实现Sqlserver双活不是一件简单的事情&#xff0c;什么是双活&#xff0c;就是两边都活着&#xff0c;两边都可以访问&#xff0c;也就是A服务器部署一个sqlserver服务&#xff0c;B服务器部署一个sqlserver服务&#xff0c;两边数据双向同步保持一致&#xff0c;当A数据库服…

EDA 虚拟机 Synopsys Sentaurus TCAD 2018.06-SP2 CentOS7.9

下载地址&#xff08;制作不易&#xff0c;下载使用需付费&#xff0c;不能接受的请勿下载&#xff09;&#xff1a; 链接&#xff1a;https://pan.baidu.com/s/1358rH_Ner1TYdc_TgoXrew?pwdyq3p 提取码&#xff1a;yq3p