Files
FlClash/linux/packaging/rpm/make_config.yaml
T
chen08209 c0fcbc03ee feat(desktop): rework the windows, linux, and macos runners, packaging, and native build
Update the runner projects for the reworked plugins. The Windows runner
asks the plugin for the running window before booting a second instance
and forwards a clash:// link through app_links; the Linux runner routes a
relaunch to the primary through GApplication; the macOS delegate forwards
applicationShouldHandleReopen to the plugin. The Linux desktop entries
claim the clash, clashmeta, and flclash schemes, and the rpm spec stops
stripping the Core whose hash the Helper validates.

The runner projects consume the setup build hook's artifacts: macOS drops
the CocoaPods integration and its script phase, pins release ARCHS to the
host, and stages the Core after the hook may have rewritten it; Windows
and Linux copy the Core, Helper and manifest from the CMake install
rules, and a Debug install on Windows stops a Helper that holds its exe
open, matched by executable path so a registered release Helper keeps
running. The deb depends on the appindicator runtime library instead of
its development package, and the keybinder dependency and README lines
go with hotkey_manager.

Changelog: Rework the desktop runners, packaging, and native build
2026-09-10 12:43:00 +08:00

49 lines
1.2 KiB
YAML

display_name: FlClash
packager: chen08209
packagerEmail: chen08209@gmail.com
license: Other
priority: optional
section: x11
installed_size: 6604
essential: false
icon: ./assets/images/icon.png
requires:
- libsecret
# rpmbuild's find-debuginfo and brp-strip rewrite the Core, and the Helper only
# starts a Core whose SHA256 matches the value built into it.
spec_macros:
- '%global debug_package %{nil}'
- '%global __os_install_post %{nil}'
postinstall_scripts:
- 'update-desktop-database %{_datadir}/applications &> /dev/null || :'
# The Helper unit is written on demand by the app, not at install time, so only
# its teardown belongs here; the binary is already gone when %postun runs.
postuninstall_scripts:
- '[ "$1" = 0 ] || exit 0'
- 'systemctl disable --now flclash-helper.service >/dev/null 2>&1 || true'
- 'rm -f /etc/systemd/system/flclash-helper.service'
- 'systemctl daemon-reload >/dev/null 2>&1 || true'
supported_mime_type:
- x-scheme-handler/clash
- x-scheme-handler/clashmeta
- x-scheme-handler/flclash
keywords:
- FlClash
- Clash
- ClashMeta
- Proxy
generic_name: FlClash
group: Applications/Internet
startup_notify: true