问题标签 [electron-updater]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
typescript - 我可以在我的应用关闭时启动电子更新器更新吗?
我已经在应用程序中实现了电子更新器的自动更新,它很棒。
但该应用程序会在主电子进程启动时检查更新。
所以,我想知道;当应用程序在后台关闭时,有没有办法安装更新?或者至少将更新推迟到用户关闭应用程序的时间。
我阅读了文档,发现了关于在应用程序运行时更新的很棒的提示,但我还没有找到任何关于这种情况的信息。
php - 如何以“原始”格式读取 GitHub 中的发布文件
概念:我想要一个 PHP API,它将使用 latest.yml 检测 github 上的最新版本号,并使用 latest.yml 文件中的 URL 下载正确的可执行文件。
现在我正在使用电子生成器 + 更新程序来创建我的最新版本和 latest.yml 文件,因此我需要一种在 yml 文件中获取 URL 的方法我知道如果文件在目录中该怎么做但是我需要一种在 GitHub 上读取“原始”文件的方法,但是我不确定我是否可以使用发布文件来做到这一点https://raw.githubusercontent.com/futurelucas4502/management-console/releases/latest/latest.yml
并且https://raw.githubusercontent.com/futurelucas4502/management-console/releases/download/latest/latest.yml
不起作用
node.js - 如何在 GitLab CI 中安装和构建 fomantic-ui?
背景:我正在尝试在GitLab 公共存储库上将电子更新器与我的 electronJS 代码一起使用
我正在关注本指南:https ://gist.github.com/Slauta/5b2bcf9fa1f6f6a9443aa6b447bcae05
但是,GitLab CI 构建阶段不断失败并出现错误
完全错误:https :
//gitlab.com/cataxcab/the-wall/-/jobs/550995808 我最新的 .gitlab-ci.yml 文件:https ://gitlab.com/cataxcab/the-wall/-/blob/大师/.gitlab-ci.yml
这似乎与此问题相同:https ://github.com/Semantic-Org/Semantic-UI/issues/2971 ;但是,我在那里尝试了解决方法,但没有奏效:
任何帮助将不胜感激,包括如果我的知识存在差距的指针。
linux - linux上的电子更新器自动更新
我迫切需要帮助。我已经尝试了很长时间,但我没有得到任何结果。
所以,我的问题是。我正在使用电子更新程序包来自动更新我的电子应用程序。它在 Windows 上工作,但在 Linux 上是另一回事。我一直在到处寻找,但我找不到任何关于它的东西。
我正在使用与 quasar 集成的电子生成器来打包我的应用程序,并且我确实在文档中阅读过它,它仅受 AppImage 格式支持。好吧,这很公平,但我该怎么办呢?我正在使用自定义 url-schema,它只是不起作用,它不会安装在任何地方。它只是打开了我的电子应用程序,这不是我所期望的行为。
我曾尝试使用 AppImage Launcher,但我遇到了这个愚蠢的错误(我不知道它为什么会发生),没有提供任何关于它的描述,我想我只会放弃 linux 的项目(已经为 MacOS 做过) . 我已经设置了桌面文件,设置了可执行文件名称,确实它可以编译并完美地安装在 .deb 包上,但我只是不知道如何处理这个 .appimage 扩展名。
我在 electron-builder 上的 linux 配置看起来像这样(它会被 quasar 解释)
我很乐意为此提供任何帮助。提前谢谢你们。
编辑: 我注意到我在 AppImageLauncher 上遇到的错误,如下所示:Error registering AppImage in the system via libappimage
在终端我有这个错误:错误:appimage_register_in_system:格式错误的桌面条目:第8行的意外令牌ENTRY_KEY
但是我的桌面配置中没有 ENTRY_KEY :/
Edit2: 我通过删除 linux 桌面文件的大部分内容(mimetype 除外)来修复它,但现在我在 electron-builder 中遇到了这个问题,如下所示:“APPIMAGE env 未定义,当前应用程序不是 AppImage "
我知道我必须放置 appimage 应用程序的路径,但是哪个路径?在 dist 文件夹中生成的那个?指向 $HOME 的路径?(试过了,没有用)。顺便说一句,它们都不起作用。我不知道该怎么办了。
security - 将 GH_TOKEN 与 electron-builder 一起用于发布/更新应用程序是否存在任何安全问题?
我正在开发一个使用 Electron 构建的商业桌面应用程序,我们的代码库位于 GitHub 私有存储库中。我们正在尝试使开发人员能够将二进制文件发布到 GitHub 版本,并使用 electron-updater 自动更新。
通过谷歌搜索和试验,我得到了这个工作,但我需要公开一个具有 read:packages、repo、write:packages 权限的 GH 令牌。由于 electron-builder 和 electron-updater 的工作方式,此令牌在安装后以明文形式在 .yml 文件中公开。
我的问题是暴露这个令牌有什么安全影响?我能想到的最糟糕的情况是让恶意用户推送虚假更新,这似乎并没有那么糟糕,因为他们只能根据我的理解推送草稿版本。
amazon-web-services - Electron-Updater 和 AWS S3 存储桶策略 - 错误:HttpError: 403 Forbidden
我正在创建一个 Electron.js 应用程序,并且我正在使用 S3 来托管我的应用程序的新版本。我不能将 S3 存储桶向公众开放,我需要将其仅限于将使用该应用程序的公司中的用户。因此,我决定通过公司的 IP 地址来限制对存储桶的访问。但是,当 Electron-updater 检查更新时,我收到错误:HttpError:403 Forbidden。这是我正在使用的存储桶策略:
当Electron-Updater检查是否有新更新时,我收到错误:HttpError: 403 Forbidden。不应该,因为请求来自公司的 IP。我想知道是否可能由于某种原因请求来自不同的 IP。我尝试使用 S3 访问日志(我从未使用过它们),但在我创建的存储这些日志的存储桶中没有保存任何内容。我不知道问题是什么。
github - 使用应用程序更新更新电子的更新服务器值
我在电子中有一个私人分发的应用程序,它使用我自己的 git 帐户(私人存储库)进行更新。
我正在使用 GH_TOKEN.txt 和这个方法;
现在我想将此更新服务器更改为另一个 GitHub 帐户,但我需要使用此更新更新以前的存储库,以便下一次更新安装的所有应用程序将来都可以使用新的。
我从终端发布更新,如何将包发布到具有不同更新服务器的服务器?
javascript - 如何仅使用修改的模块/文件发布电子应用程序?
我正在使用 electron builder 打包应用程序并在 github 私有存储库上发布,还实现了 electron-updater 在后台自动更新应用程序,一切正常。
但问题是每次我使用以下脚本在 github 上发布应用程序时
电子生成器配置文件
包笼.json
电子生成器总是创建具有相同大小的新包/安装程序/应用程序[在 250-300MB 之间],电子更新程序正在下载应用程序的更新版本。
那么我怎样才能减少渐进式发布的大小[或仅发布修改后的模块/文件],因为每次下载完整的应用程序都非常令人沮丧。
我尝试过压缩[没有太大区别]并删除了一些未使用的软件包。据我所知, VS Code/Zoom/Slack正在管理这种情况,但我不知道如何。
我需要一些帮助/指导来实现它。提前致谢。
electron - ElectronJS autoupdater.setFeedURL() 抛出异常 [“更新检查失败。服务器发送了无效响应。稍后再试。”]
我正在使用电子的桌面应用程序工作一切正常,除了 autoUpdater.setFeedURL() 方法,它总是返回这个异常:“更新检查失败。服务器发送了无效响应。稍后再试。”
electron - 电子构建时间变量
我需要创建我的电子应用程序的两个版本:
- 一个静默安装 exe,其中 electron-updater 配置为在后台自动更新。
- 已安装的应用程序不会自动更新的 msi,只会提醒用户新版本已发布。
我这样做的一种方法是在我为两个构建中的每一个运行电子构建器之前将某种配置复制到构建目录中,并在应用程序中读取此配置以确定如何处理电子更新器事件。
在我这样做之前,我试图确定这是否是最好的方法。理想情况下,我有一个变量可以发送给电子生成器来切换电子更新器功能,但我认为不存在这样的事情。
所以问题真的是:
是否可以在电子应用程序中使用构建时变量?如果是这样,怎么做?