mirror of
https://github.com/farion1231/cc-switch.git
synced 2026-04-02 18:12:05 +08:00
The Flatpak was failing to load because libayatana-appindicator3 is not included in org.gnome.Platform runtime. This adds the required modules: - libayatana-ido - libdbusmenu-gtk3 - libayatana-indicator - libayatana-appindicator Fixes panic: 'Failed to load ayatana-appindicator3 or appindicator3 dynamic library' Co-authored-by: Said John <said.john@gmail.com>
90 lines
2.9 KiB
YAML
90 lines
2.9 KiB
YAML
id: com.ccswitch.desktop
|
|
|
|
runtime: org.gnome.Platform
|
|
runtime-version: '46'
|
|
sdk: org.gnome.Sdk
|
|
|
|
command: cc-switch
|
|
|
|
finish-args:
|
|
- --share=ipc
|
|
- --share=network
|
|
- --socket=wayland
|
|
- --socket=fallback-x11
|
|
- --device=dri
|
|
# Tray icon permissions (required by Tauri tray-icon)
|
|
- --talk-name=org.kde.StatusNotifierWatcher
|
|
- --filesystem=xdg-run/tray-icon:create
|
|
# GitHub Releases scenario: Users download and install manually.
|
|
# For "download and run" convenience (needs read/write access to ~/.cc-switch, ~/.claude, ~/.claude.json, ~/.codex, ~/.gemini,
|
|
# and supports custom directory overrides), we grant full Home access by default.
|
|
# If you plan to publish on Flathub or prefer minimal permissions, replace this with more precise directory grants (see flatpak/README.md).
|
|
- --filesystem=home
|
|
|
|
modules:
|
|
# Required for tray icon support
|
|
- name: libayatana-ido
|
|
buildsystem: cmake-ninja
|
|
config-opts:
|
|
- -DENABLE_TESTS=NO
|
|
sources:
|
|
- type: git
|
|
url: https://github.com/AyatanaIndicators/ayatana-ido.git
|
|
tag: 0.10.4
|
|
|
|
- name: libdbusmenu-gtk3
|
|
buildsystem: autotools
|
|
build-options:
|
|
cflags: -Wno-error
|
|
config-opts:
|
|
- --with-gtk=3
|
|
- --disable-dumper
|
|
- --disable-static
|
|
- --enable-tests=no
|
|
sources:
|
|
- type: archive
|
|
url: https://launchpad.net/libdbusmenu/16.04/16.04.0/+download/libdbusmenu-16.04.0.tar.gz
|
|
sha256: b9cc4a2acd74509435892823607d966d424bd9ad5d0b00938f27240a1bfa878a
|
|
|
|
- name: libayatana-indicator
|
|
buildsystem: cmake-ninja
|
|
config-opts:
|
|
- -DENABLE_TESTS=NO
|
|
- -DENABLE_IDO=YES
|
|
sources:
|
|
- type: git
|
|
url: https://github.com/AyatanaIndicators/libayatana-indicator.git
|
|
tag: 0.9.4
|
|
|
|
- name: libayatana-appindicator
|
|
buildsystem: cmake-ninja
|
|
config-opts:
|
|
- -DENABLE_BINDINGS_MONO=NO
|
|
- -DENABLE_BINDINGS_VALA=NO
|
|
sources:
|
|
- type: git
|
|
url: https://github.com/AyatanaIndicators/libayatana-appindicator.git
|
|
tag: 0.5.93
|
|
|
|
- name: cc-switch
|
|
buildsystem: simple
|
|
sources:
|
|
# Placed in flatpak/ directory by CI or local build script
|
|
- type: file
|
|
path: cc-switch.deb
|
|
- type: file
|
|
path: com.ccswitch.desktop.desktop
|
|
- type: file
|
|
path: com.ccswitch.desktop.metainfo.xml
|
|
- type: file
|
|
path: ../src-tauri/icons/128x128.png
|
|
build-commands:
|
|
- ar -x *.deb
|
|
- tar -xf data.tar.*
|
|
- cp -a usr/* /app/
|
|
# Use our own desktop/metainfo/icon to align with Flatpak app id
|
|
- rm -f /app/share/applications/*.desktop
|
|
- install -Dm644 com.ccswitch.desktop.desktop /app/share/applications/com.ccswitch.desktop.desktop
|
|
- install -Dm644 com.ccswitch.desktop.metainfo.xml /app/share/metainfo/com.ccswitch.desktop.metainfo.xml
|
|
- install -Dm644 128x128.png /app/share/icons/hicolor/128x128/apps/com.ccswitch.desktop.png
|