{
 "app_id": "com.onekeepass.OneKeePass",
 "source_url": "https://raw.githubusercontent.com/OneKeePass/desktop/main/com.onekeepass.OneKeePass.yml",
 "runtime": "org.gnome.Platform",
 "runtime_version": "50",
 "sdk": "org.gnome.Sdk",
 "finish_args": [
  "--socket=wayland",
  "--socket=fallback-x11",
  "--share=ipc",
  "--device=dri",
  "--share=network"
 ],
 "module_count": 4,
 "fetched_at": "2026-09-20T12:58:32.037857+00:00",
 "manifest": {
  "id": "com.onekeepass.OneKeePass",
  "runtime": "org.gnome.Platform",
  "runtime-version": "50",
  "sdk": "org.gnome.Sdk",
  "sdk-extensions": [
   "org.freedesktop.Sdk.Extension.rust-stable",
   "org.freedesktop.Sdk.Extension.openjdk21",
   "org.freedesktop.Sdk.Extension.node20"
  ],
  "command": "OneKeePass",
  "cleanup": [
   "/share/onekeepass-build"
  ],
  "finish-args": [
   "--socket=wayland",
   "--socket=fallback-x11",
   "--share=ipc",
   "--device=dri",
   "--share=network"
  ],
  "build-options": {
   "append-path": "/usr/lib/sdk/rust-stable/bin",
   "env": {
    "BOTAN_CONFIGURE_EXTRA_CXXFLAGS": "-fPIC"
   }
  },
  "modules": [
   {
    "name": "onekeepass-proxy",
    "buildsystem": "simple",
    "build-options": {
     "env": {
      "CARGO_HOME": "/run/build/onekeepass-proxy/cargo"
     }
    },
    "sources": [
     {
      "type": "dir",
      "path": "onekeepass-proxy",
      "dest": "onekeepass-proxy",
      "skip": [
       "target",
       "binaries"
      ]
     },
     "linux/proxy-cargo-sources.json"
    ],
    "build-commands": [
     "cd onekeepass-proxy && cargo build --release --locked",
     "install -Dm755 onekeepass-proxy/target/release/onekeepass-proxy /app/bin/onekeepass-proxy"
    ]
   },
   {
    "name": "onekeepass-cljs",
    "buildsystem": "simple",
    "build-options": {
     "append-path": "/usr/lib/sdk/openjdk21/bin:/usr/lib/sdk/node20/bin",
     "env": {
      "HOME": "/run/build/onekeepass-cljs",
      "npm_config_cache": "/run/build/onekeepass-cljs/npm-cache",
      "XDG_CACHE_HOME": "/run/build/onekeepass-cljs/flatpak-node/cache"
     }
    },
    "sources": [
     {
      "type": "dir",
      "path": "src-cljs",
      "dest": "src-cljs",
      "skip": [
       ".shadow-cljs",
       ".clj-kondo",
       ".lsp",
       ".calva"
      ]
     },
     {
      "type": "dir",
      "path": "resources",
      "dest": "resources"
     },
     {
      "type": "file",
      "path": "package.json"
     },
     {
      "type": "file",
      "path": "yarn.lock"
     },
     {
      "type": "archive",
      "url": "https://registry.npmjs.org/yarn/-/yarn-1.22.22.tgz",
      "sha256": "c17d3797fb9a9115bf375e31bfd30058cac6bc9c3b8807a3d8cb2094794b51ca",
      "dest": "yarn"
     },
     "linux/node-sources.json",
     "linux/maven-sources.json"
    ],
    "build-commands": [
     "node yarn/bin/yarn.js config --offline set yarn-offline-mirror $FLATPAK_BUILDER_BUILDDIR/flatpak-node/yarn-mirror",
     "node yarn/bin/yarn.js install --offline --frozen-lockfile --non-interactive",
     "sed -i \"1s|^{|{:maven {:local-repo \\\"$FLATPAK_BUILDER_BUILDDIR/.m2/repository\\\"} |\" src-cljs/shadow-cljs.edn",
     "rm -rf resources/public/cljs-out",
     "cd src-cljs && ../node_modules/.bin/shadow-cljs release app",
     "mkdir -p /app/share/onekeepass-build",
     "cp -r resources/public/cljs-out /app/share/onekeepass-build/cljs-out"
    ]
   },
   {
    "name": "onekeepass",
    "buildsystem": "simple",
    "build-options": {
     "env": {
      "CARGO_HOME": "/run/build/onekeepass/cargo"
     }
    },
    "sources": [
     {
      "type": "dir",
      "path": "src-tauri",
      "dest": "src-tauri",
      "skip": [
       "target",
       "swift-lib",
       ".lsp",
       ".clj-kondo"
      ]
     },
     {
      "type": "dir",
      "path": "resources",
      "dest": "resources"
     },
     "linux/cargo-sources.json"
    ],
    "build-commands": [
     "rm -rf resources/public/cljs-out",
     "cp -r /app/share/onekeepass-build/cljs-out resources/public/cljs-out",
     "install -Dm755 /app/bin/onekeepass-proxy \"onekeepass-proxy/binaries/onekeepass-proxy-$(rustc -vV | grep '^host:' | cut -d' ' -f2)\"",
     "cd src-tauri && cargo build --release --locked",
     "install -Dm755 src-tauri/target/release/onekeepass-frontend /app/bin/OneKeePass"
    ]
   },
   {
    "name": "onekeepass-data",
    "buildsystem": "simple",
    "sources": [
     {
      "type": "dir",
      "path": "linux",
      "dest": "linux"
     },
     {
      "type": "dir",
      "path": "resources",
      "dest": "resources"
     },
     {
      "type": "file",
      "path": "LICENSE"
     }
    ],
    "build-commands": [
     "linux/flatpak-install-data.sh"
    ]
   }
  ]
 }
}