Files
J621/desktop/electron-builder.yml
T
JakeBreath 7c39383655 Wire desktop updates through a generic feed
electron-builder now publishes latest-linux.yml / latest.yml and embeds
app-update.yml plus package-type, so electron-updater runs pacman -U or
dpkg -i through pkexec for packages and updates the per-user NSIS install
without elevation. The app checks only when asked (menu item), asks before
downloading and before installing, and J621_UPDATE_URL overrides the feed
for tests or forks.

deploy/push_desktop.sh builds and publishes the artifacts to
deploy/data/desktop, which the frontend nginx mounts read-only at
/desktop/. Verified detection and up-to-date handling against a local feed
with the packaged Arch build.
2026-09-20 17:32:41 -05:00

71 lines
1.6 KiB
YAML

appId: io.j621.desktop
productName: J621
copyright: Copyright (c) 2026 JakeBreath — Jake Labs Non-Commercial Software Licence
# Update feed served by the frontend nginx (deploy/data/desktop, published
# with deploy/push_desktop.sh). Baked into resources/app-update.yml; override
# at runtime with J621_UPDATE_URL for a fork or a test feed.
publish:
provider: generic
url: https://j621.rainbow-herring.ts.net/desktop
directories:
output: release
buildResources: build
# The Electron main process and preload live in dist/ (tsc output). The SPA is
# copied from the web build as an extra resource and served over app://j621.
files:
- dist/**
- package.json
extraResources:
- from: ../frontend/dist
to: dist
filter:
- "**/*"
linux:
target:
- deb
- pacman
category: AudioVideo
synopsis: Desktop client for the J621 self-hosted media archive
description: >-
J621 is a self-hosted browser for an e621-linked media library. This
desktop build talks to a J621 backend over the network, the same way the
web app does.
icon: build/icon.png
syncDesktopName: true
pacman:
compression: zstd
artifactName: ${name}-${version}.pkg.tar.zst
# Electron's shared-library requirements on Arch (the electron-builder
# defaults still list an ancient Electron 2 dependency set).
depends:
- gtk3
- nss
- libxss
- libxtst
- xdg-utils
- at-spi2-core
- libsecret
- libnotify
- alsa-lib
- libcups
- libdrm
- mesa
- libxkbcommon
win:
target:
- nsis
icon: build/icon.ico
nsis:
oneClick: false
perMachine: false
allowToChangeInstallationDirectory: true
shortcutName: J621