Skip to content

Releases: tosunlab/hisar

Hisar Server 0.1.15

Choose a tag to compare

@github-actions github-actions released this 25 Oct 12:27
d419f6a

Changes since server-0.1.14:

  • Let a release skip its tests in an emergency (#129)
  • Build(deps): Bump the npm_and_yarn group across 4 directories with 1 update (#118)
  • Phone notifications (#128)
  • Firefox extension (#121)

The hisar-server image ghcr.io/tosunlab/hisar-server:0.1.15 for linux/amd64 and linux/arm64. Self-hosting says how to run and upgrade it.

Before deployment, download release-evidence.json and set commit to the full independently reviewed source commit SHA.
Verify the evidence and then its immutable image index digest with a recent GitHub CLI:

gh attestation verify release-evidence.json --repo tosunlab/hisar \
  --signer-workflow tosunlab/hisar/.github/workflows/release.yml \
  --signer-digest "$commit" --source-digest "$commit" --deny-self-hosted-runners
digest=$(jq -r .image.digest release-evidence.json)
gh attestation verify "oci://ghcr.io/tosunlab/hisar-server@$digest" --repo tosunlab/hisar \
  --signer-workflow tosunlab/hisar/.github/workflows/release-server.yml \
  --signer-digest "$commit" --source-digest "$commit" --deny-self-hosted-runners

Authenticate to GHCR when required. Deploy ghcr.io/tosunlab/hisar-server@$digest after verification, not a mutable tag.
The attestation covers the multiarchitecture image index. It does not protect against a compromised authorized builder.

Vault key changes now use bounded staging and atomic activation. Update the apps and CLI before removing vault members or deleting a vault while moving its items. Updated callers require a server with staged transitions and do not fall back to the old aggregate route.

Desktop versions through 0.1.12 and CLI versions through 0.1.6 can still read rotated vaults but cannot change their items, names, grants or deletion state without an explicit key generation. The server returns an instruction to update Hisar. Generation omission remains supported only for never-rotated nonorganization vaults.

Hisar extension 0.1.2

Choose a tag to compare

@github-actions github-actions released this 25 Oct 12:41
d419f6a

Changes since extension-0.1.0:

  • Let a release skip its tests in an emergency (#129)
  • Build(deps): Bump the npm_and_yarn group across 4 directories with 1 update (#118)
  • Extension fill reliability (#124)
  • Firefox extension (#121)
  • Add the docs site and release it as the docs app (#116)
  • Recommendation 41: let macOS enforce Touch ID on the biometric wrapping key (#105)
  • Recommendation 23: default a new passkey to Personal and make a shared destination an explicit choice (#104)
  • Recommendation 21: sign passkey user verification only after a fresh native check (#103)
  • fix(browser): require an unlocked Hisar to pair a browser (recommendation 36, F-36) (#93)
  • Recommendation 22: move browser save decisions out of the page (#92)
  • Recommendation 9: require exact-commit tests and attest every release file (#87)
  • Security review: fixes that need no product decision (71 fixed, 36 partly fixed) (#85)
  • Bump the npm_and_yarn group across 3 directories with 1 update (#84)
  • Let coding agents use Hisar secrets without seeing them (omp, Tern, Claude Code, Codex) (#82)
  • ci(desktop): sign releases with Developer ID and notarize the app and the DMG (#76)

The Hisar browser extension 0.1.2 for Chrome and other Chromium browsers, and for Firefox 140 and later.

  • Chrome and other Chromium browsers: unzip hisar-extension-0.1.2.zip, open chrome://extensions, turn on Developer mode, remove the old Hisar extension and choose Load unpacked. Pairing with the Mac app is kept, because the extension ID is fixed.
  • Firefox: open hisar-extension-firefox-0.1.2.xpi in Firefox and confirm the installation. Mozilla signed it; an installed add-on updates itself. It needs the Hisar desktop app newer than 0.1.15, which registers itself with Firefox when it opens.

Before installing, verify the file with a recent GitHub CLI. Set commit to the full independently reviewed source commit SHA:

gh attestation verify "hisar-extension-0.1.2.zip" --repo tosunlab/hisar \
  --signer-workflow tosunlab/hisar/.github/workflows/release.yml \
  --signer-digest "$commit" --source-digest "$commit" --deny-self-hosted-runners

Verify hisar-extension-firefox-0.1.2.xpi and release-evidence.json with the same flags. Attestations identify workflow and source, not protection against
a compromised authorized builder.

Hisar 0.1.17

Choose a tag to compare

@github-actions github-actions released this 25 Oct 12:03
e17ee06

Changes since desktop-0.1.15:

  • Build(deps): Bump the npm_and_yarn group across 4 directories with 1 update (#118)
  • Phone notifications (#128)
  • fix(desktop): keep the user's app in front after an approval (#122)
  • Firefox extension (#121)
  • feat(agents): let computer-use agents sign in with Hisar (#120)
  • Add the docs site and release it as the docs app (#116)
  • Recommendation 42: select objects by ID first and refuse ambiguous names (#110)
  • Recommendation 49: keep each source vault or collection apart through import review and storage (#109)
  • Recommendation 48: label cached and partial exports instead of presenting them as complete (#108)
  • Recommendation 53: keep healthy vaults and items usable when one record cannot be read (#107)
  • Recommendation 43: print the Emergency Kit QR as plain text, not a custom-scheme link (#106)
  • Recommendation 41: let macOS enforce Touch ID on the biometric wrapping key (#105)
  • Recommendation 21: sign passkey user verification only after a fresh native check (#103)
  • fix(browser): require an unlocked Hisar to pair a browser (recommendation 36, F-36) (#93)
  • Recommendation 22: move browser save decisions out of the page (#92)
  • fix(server): encrypt the dashboard SMTP password at rest (recommendation 61, D-05) (#90)
  • Recommendation 54: page every collection by bytes and refuse unbounded growth with a clear status (#102)
  • Recommendation 10: refuse to start without matching server secrets, and document paired recovery (#89)
  • Recommendation 30: stage new Secret Keys durably before sign-up and key replacement commit (#100)
  • Recommendation 20: bind account deletion to the plan the user reviewed (#99)
  • Recommendation 12: rotate and delete-move large vaults in bounded atomic stages, and mark rotation after removal (#98)
  • fix(server): require explicit key generations once a vault was rotated (S-01, S-24) (#97)
  • fix(server): require a fresh single-use proof for admin invites (recommendation 15, F-03) (#91)
  • Recommendation 4: require the owner's signed intent before delivering a vault key (#94)
  • Recommendation 6: bind login and reauthentication to the server's origin (#86)
  • Recommendation 9: require exact-commit tests and attest every release file (#87)
  • Recommendation 63: state the security guarantees the code actually provides (#88)
  • Security review: fixes that need no product decision (71 fixed, 36 partly fixed) (#85)
  • Bump the npm_and_yarn group across 3 directories with 1 update (#84)
  • Let coding agents use Hisar secrets without seeing them (omp, Tern, Claude Code, Codex) (#82)
  • feat(android): add the Android app with the iPhone app's features (#79)

macOS: open Hisar-0.1.17.dmg and drag Hisar into Applications.

Linux (amd64, arm64): sudo apt install ./Hisar-0.1.17-linux-<arch>.deb on Ubuntu 24.04+ or Debian 13+, or sudo dnf install ./Hisar-0.1.17-linux-<arch>.rpm on Fedora 40+. It needs a Secret Service (GNOME Keyring or KWallet) for the Secret Key. hisar comes with it at /usr/bin/hisar. On other distributions with GTK 4 and WebKitGTK 6.0 (Arch, openSUSE and others), chmod +x Hisar-0.1.17-linux-<arch>.AppImage and run it; it copies hisar to ~/.local/share/hisar/bin, and Settings → Command-line tool links it onto your PATH. Or install the Flatpak, which brings GTK and WebKitGTK with the GNOME runtime from Flathub: flatpak install --user Hisar-0.1.17-linux-<arch>.flatpak, then flatpak run com.tryhisar.hisar.

omp and Tern: connect omp in Settings → Developer tools → Coding agents. Every hisar command omp runs follows the coding-agent rules, so if you already use hisar from omp, expect more approvals: one per secret for each omp session. ssh and git inside omp get only the SSH keys in vaults available to agents, so move a key omp needs, such as your GitHub key, into one of them. The app omp runs in, such as Tern, becomes an agent host: its other processes without a terminal ask on every connection, and it can no longer be a launcher.

Claude Code and Codex: connect them in Settings → Developer tools → Coding agents. Hisar adds its MCP server, hisar mcp --no-reveal, to Claude Code's user settings or to Codex's config.toml with a tool timeout long enough for approvals, and never changes a server named hisar that you added yourself. Commands they run in their shells follow the coding-agent rules, as omp's do.

Check downloads against the SHA256SUMS-* files: sha256sum -c --ignore-missing SHA256SUMS-linux-amd64.

Before installing, verify each downloaded DMG, zip, Linux package, AppImage, or Flatpak with a recent GitHub CLI.
Set commit to the full independently reviewed source commit SHA and file to the downloaded file:

gh attestation verify "$file" --repo tosunlab/hisar \
  --signer-workflow tosunlab/hisar/.github/workflows/release.yml \
  --signer-digest "$commit" --source-digest "$commit" --deny-self-hosted-runners

Verify checksum files, update.json, and release-evidence.json the same way. The update asset is attested before its
publication rename, with identical bytes. macOS signing and notarization remain separate checks.
Attestations identify workflow and source, not protection against a compromised authorized builder.

Hisar Server 0.1.14

Choose a tag to compare

@github-actions github-actions released this 24 Oct 10:31
326fa7c

Changes since server-0.1.13:

  • feat(agents): let computer-use agents sign in with Hisar (#120)
  • Add the docs site and release it as the docs app (#116)
  • Recommendation 42: select objects by ID first and refuse ambiguous names (#110)
  • Recommendation 49: keep each source vault or collection apart through import review and storage (#109)
  • Recommendation 48: label cached and partial exports instead of presenting them as complete (#108)
  • Recommendation 53: keep healthy vaults and items usable when one record cannot be read (#107)
  • Recommendation 43: print the Emergency Kit QR as plain text, not a custom-scheme link (#106)
  • Recommendation 41: let macOS enforce Touch ID on the biometric wrapping key (#105)
  • Recommendation 21: sign passkey user verification only after a fresh native check (#103)
  • fix(browser): require an unlocked Hisar to pair a browser (recommendation 36, F-36) (#93)
  • Recommendation 22: move browser save decisions out of the page (#92)
  • fix(server): encrypt the dashboard SMTP password at rest (recommendation 61, D-05) (#90)
  • Recommendation 54: page every collection by bytes and refuse unbounded growth with a clear status (#102)
  • Recommendation 55: bound pending sign-in and rate-limiter state without discarding live exchanges or rate debt (#101)
  • Recommendation 10: refuse to start without matching server secrets, and document paired recovery (#89)
  • Recommendation 30: stage new Secret Keys durably before sign-up and key replacement commit (#100)
  • Recommendation 20: bind account deletion to the plan the user reviewed (#99)
  • Recommendation 12: rotate and delete-move large vaults in bounded atomic stages, and mark rotation after removal (#98)
  • fix(server): require explicit key generations once a vault was rotated (S-01, S-24) (#97)
  • Recommendation 19: cancel a member sign-up link together with the invitation it came from (#96)
  • fix(server): require a fresh single-use proof for admin invites (recommendation 15, F-03) (#91)
  • Recommendation 4: require the owner's signed intent before delivering a vault key (#94)
  • Recommendation 6: bind login and reauthentication to the server's origin (#86)
  • Recommendation 9: require exact-commit tests and attest every release file (#87)
  • Security review: fixes that need no product decision (71 fixed, 36 partly fixed) (#85)
  • Bump the npm_and_yarn group across 3 directories with 1 update (#84)
  • Let coding agents use Hisar secrets without seeing them (omp, Tern, Claude Code, Codex) (#82)

The hisar-server image ghcr.io/tosunlab/hisar-server:0.1.14 for linux/amd64 and linux/arm64. Self-hosting says how to run and upgrade it.

Before deployment, download release-evidence.json and set commit to the full independently reviewed source commit SHA.
Verify the evidence and then its immutable image index digest with a recent GitHub CLI:

gh attestation verify release-evidence.json --repo tosunlab/hisar \
  --signer-workflow tosunlab/hisar/.github/workflows/release.yml \
  --signer-digest "$commit" --source-digest "$commit" --deny-self-hosted-runners
digest=$(jq -r .image.digest release-evidence.json)
gh attestation verify "oci://ghcr.io/tosunlab/hisar-server@$digest" --repo tosunlab/hisar \
  --signer-workflow tosunlab/hisar/.github/workflows/release-server.yml \
  --signer-digest "$commit" --source-digest "$commit" --deny-self-hosted-runners

Authenticate to GHCR when required. Deploy ghcr.io/tosunlab/hisar-server@$digest after verification, not a mutable tag.
The attestation covers the multiarchitecture image index. It does not protect against a compromised authorized builder.

Vault key changes now use bounded staging and atomic activation. Update the apps and CLI before removing vault members or deleting a vault while moving its items. Updated callers require a server with staged transitions and do not fall back to the old aggregate route.

Desktop versions through 0.1.12 and CLI versions through 0.1.6 can still read rotated vaults but cannot change their items, names, grants or deletion state without an explicit key generation. The server returns an instruction to update Hisar. Generation omission remains supported only for never-rotated nonorganization vaults.

Hisar docs 0.1.0

Choose a tag to compare

@github-actions github-actions released this 24 Oct 15:30
326fa7c

Changes:

  • feat(agents): let computer-use agents sign in with Hisar (#120)
  • Add the docs site and release it as the docs app (#116)
  • Recommendation 42: select objects by ID first and refuse ambiguous names (#110)
  • Recommendation 49: keep each source vault or collection apart through import review and storage (#109)
  • Recommendation 48: label cached and partial exports instead of presenting them as complete (#108)
  • Recommendation 53: keep healthy vaults and items usable when one record cannot be read (#107)
  • Recommendation 43: print the Emergency Kit QR as plain text, not a custom-scheme link (#106)
  • Recommendation 41: let macOS enforce Touch ID on the biometric wrapping key (#105)
  • Recommendation 23: default a new passkey to Personal and make a shared destination an explicit choice (#104)
  • Recommendation 21: sign passkey user verification only after a fresh native check (#103)
  • fix(browser): require an unlocked Hisar to pair a browser (recommendation 36, F-36) (#93)
  • Recommendation 22: move browser save decisions out of the page (#92)
  • fix(server): encrypt the dashboard SMTP password at rest (recommendation 61, D-05) (#90)
  • Recommendation 54: page every collection by bytes and refuse unbounded growth with a clear status (#102)
  • Recommendation 55: bound pending sign-in and rate-limiter state without discarding live exchanges or rate debt (#101)
  • Recommendation 10: refuse to start without matching server secrets, and document paired recovery (#89)
  • Recommendation 30: stage new Secret Keys durably before sign-up and key replacement commit (#100)
  • Recommendation 20: bind account deletion to the plan the user reviewed (#99)
  • Recommendation 12: rotate and delete-move large vaults in bounded atomic stages, and mark rotation after removal (#98)
  • fix(server): require explicit key generations once a vault was rotated (S-01, S-24) (#97)
  • Recommendation 19: cancel a member sign-up link together with the invitation it came from (#96)
  • fix(server): require a fresh single-use proof for admin invites (recommendation 15, F-03) (#91)
  • Recommendation 4: require the owner's signed intent before delivering a vault key (#94)
  • Recommendation 6: bind login and reauthentication to the server's origin (#86)
  • Recommendation 9: require exact-commit tests and attest every release file (#87)
  • Recommendation 63: state the security guarantees the code actually provides (#88)
  • Security review: fixes that need no product decision (71 fixed, 36 partly fixed) (#85)
  • docs: rewrite the README for the public repository (#112)
  • Let coding agents use Hisar secrets without seeing them (omp, Tern, Claude Code, Codex) (#82)
  • feat(android): add the Android app with the iPhone app's features (#79)
  • feat: import passkeys through Credential Exchange on the iPhone (#80)
  • ci(desktop): sign releases with Developer ID and notarize the app and the DMG (#76)
  • ci(release): build, prerelease and publish after the skipped tests (#78)
  • ci(release): run the tests only when a release asks for it (#77)
  • Extension experience (#75)
  • ci(release): one Release run per app, with automatic versions and an approved publish (#74)
  • Linux support (#69)
  • feat(admin): read and export the audit log (#60)
  • feat(admin): manage accounts from the admin dashboard (A2) (#61)
  • feat(desktop): package the Linux app as .deb and .rpm (#65)
  • feat(raycast): add the Raycast extension and per-app launcher approvals (#62)
  • feat(admin): manage sign-up invites from the dashboard (#59)
  • fix(admin): A1 follow-ups (#56)
  • feat(admin): set up a fresh server from /admin/setup (#55)
  • feat(admin): show server health, usage and the instance checks on Overview (#54)
  • feat(admin): edit instance settings from the dashboard (#53)
  • Name the GitHub repository in one place, core/project, and move it to tosunlab/hisar (#58)
  • serve the admin dashboard and sign admins in
  • Import LastPass CSV exports as their own format, with typed notes (#49)
  • SSH approvals: remember until Hisar locks, and the iPhone card keeps the default (#35)
  • Fix/sign in after sign out (#48)
  • Feature/item icons (#46)
  • Organizations, teams and organization vaults (server, core, CLI) (#40)
  • Feature/context menus (#42)
  • Feature/databases (#41)
  • Feature/servers (#39)
  • Feature/software licenses (#38)
  • Feature/addresses (#36)
  • Organize items with tags (#31)
  • Feature/api credentials (#33)
  • Mark items as favorites (#30)
  • Point releases, images and the update feed at tosunlab/hisarapp-core (#29)
  • Feature/identities (#26)
  • Feature/credit cards (#25)
  • Feature/secure notes (#20)
  • Refactor/go structure (#8)
  • Rename, delete and leave vaults; data export and .env import (#2)
  • Change master password, replace Secret Key and delete account (#1)
  • Read desktop updates from GitHub Releases (#7)
  • Move CI and releases from GitLab CI to GitHub Actions (#4)
  • Invite page and minimum supported app version
  • Copy and onboarding: developer-first descriptions, sign-in, strength meter, Touch ID offer, Help, clearer invites
  • Approvals quick wins: remembered commit signing, system-idle auto-lock, iPhone remember choice, Git key setup
  • Accepted shares tell both sides; privacy policy and Terms for the hosted service
  • Themes: appearance and colour on Mac and iPhone, from one token file
  • Place the compact approval card inside the active display (Wails reported pixels, not points)
  • Vault sharing on iPhone: share, members, invitations banner
  • Approval dialogs show the real app: name, icon, process chain and signature
  • Share links: end-to-end encrypted links for anyone, with expiry and view limits
  • Mac Settings with a sidebar and search
  • hisar mcp: coding agents use secrets without seeing them
  • Release tags per app, published by a manual job; custom builds never published
  • Native iPhone redesign for iOS 26: Liquid Glass tabs and phone settings
  • Approvals never get stuck: per-request deadlines, phone first, disconnects cancel
  • Keep Hisar running: open at login, menu bar, CLI starts the app
  • hisar run and hisar read with secret references
  • Account recovery only through the Emergency Kit
  • Show the Mac's waiting requests on the iPhone after opening the app
  • Person-to-person sharing by email, without a user list
  • Approve the Mac's requests from your iPhone
  • SSH approval redesign: right app, purpose, unlock from the dialog, forwarded warnings
  • Create vaults, share them and invite people on iPhone
  • Let the auto-lock delay be chosen in Settings
  • Bundle the hisar CLI with the desktop app and run it through the app
  • Passkey PRF, signal API and client capabilities
  • Automatic desktop updates through the Hisar server
  • Passkeys on iPhone through AutoFill
  • Move CI to GitLab and deploy behind nginx from our registry
  • One-time codes in the browser extension, iPhone and import (#30)
  • Passkeys in the browser extension, signed by the desktop app (#32)
  • … and 27 earlier changes

The docs site image ghcr.io/tosunlab/hisar-docs:0.1.0 for linux/amd64 and linux/arm64: the static Docusaurus build served by nginx on port 8080, for docs.tryhisar.com.

Before deployment, download release-evidence.json and set commit to the full independently reviewed source commit SHA.
Verify the evidence and then its immutable image index digest with a recent GitHub CLI:

gh attestation verify release-evidence.json --repo tosunlab/hisar \
  --signer-workflow tosunlab/hisar/.github/workflows/release.yml \
  --signer-digest "$commit" --source-digest "$commit" --deny-self-hosted-runners
digest=$(jq -r .image.digest release-evidence.json)
gh attestation verify "oci://ghcr.io/tosunlab/hisar-docs@$digest" --repo tosunlab/hisar \
  --signer-workflow tosunlab/hisar/.github/workflows/release-docs.yml \
  --signer-digest "$commit" --source-digest "$commit" --deny-self-hosted-runners

Deploy ghcr.io/tosunlab/hisar-docs@$digest after verification, not a mutable tag.

Hisar Server 0.1.13

Choose a tag to compare

@github-actions github-actions released this 19 Oct 18:52
5f18ae9

Changes since server-0.1.12:

  • feat(android): add the Android app with the iPhone app's features (#79)
  • feat: import passkeys through Credential Exchange on the iPhone (#80)
  • Extension experience (#75)

The hisar-server image ghcr.io/tosunlab/hisar-server:0.1.13 for linux/amd64 and linux/arm64. deploy/README.md says how to run and upgrade it.

Hisar 0.1.15

Choose a tag to compare

@github-actions github-actions released this 19 Oct 14:27
b1373b4

Changes since desktop-0.1.14:

  • feat: import passkeys through Credential Exchange on the iPhone (#80)
  • ci(desktop): sign releases with Developer ID and notarize the app and the DMG (#76)
  • Extension experience (#75)
  • fix(desktop): say which packages the AppImage needs when GTK 4 or WebKitGTK 6.0 is missing (#73)

macOS: open Hisar-0.1.15.dmg and drag Hisar into Applications.

Linux (amd64, arm64): sudo apt install ./Hisar-0.1.15-linux-<arch>.deb on Ubuntu 24.04+ or Debian 13+, or sudo dnf install ./Hisar-0.1.15-linux-<arch>.rpm on Fedora 40+. It needs a Secret Service (GNOME Keyring or KWallet) for the Secret Key. hisar comes with it at /usr/bin/hisar. On other distributions with GTK 4 and WebKitGTK 6.0 (Arch, openSUSE and others), chmod +x Hisar-0.1.15-linux-<arch>.AppImage and run it; it copies hisar to ~/.local/share/hisar/bin, and Settings → Command-line tool links it onto your PATH. Or install the Flatpak, which brings GTK and WebKitGTK with the GNOME runtime from Flathub: flatpak install --user Hisar-0.1.15-linux-<arch>.flatpak, then flatpak run com.tryhisar.hisar.

Check downloads against the SHA256SUMS-* files: sha256sum -c --ignore-missing SHA256SUMS-linux-amd64.

Hisar Server 0.1.12

Choose a tag to compare

@github-actions github-actions released this 18 Oct 16:02
478b9ff

The hisar-server image ghcr.io/tosunlab/hisar-server:0.1.12 for linux/amd64 and linux/arm64. deploy/README.md says how to run it.

Hisar extension 0.1.0

Choose a tag to compare

@github-actions github-actions released this 18 Oct 22:48
77f398d

Changes:

  • Extension experience (#75)
  • Feature/addresses (#36)
  • Invite page and minimum supported app version
  • Share links: end-to-end encrypted links for anyone, with expiry and view limits
  • Center the castle vertically in every Hisar icon
  • Passkey PRF, signal API and client capabilities
  • Remove DESIGN.md section references from code comments
  • One-time codes in the browser extension, iPhone and import (#30)
  • Passkeys in the browser extension, signed by the desktop app (#32)
  • Prepare the Chrome Web Store submission
  • Stop clearing the clipboard from the extension and isolate the end-to-end tests
  • Add the inline menu to login fields
  • Add the Chromium browser extension

The Hisar browser extension 0.1.0 for Chrome and other Chromium browsers. Unzip hisar-extension-0.1.0.zip, open chrome://extensions, turn on Developer mode, remove the old Hisar extension and choose Load unpacked. Pairing with the Mac app is kept, because the extension ID is fixed.

Hisar 0.1.14

Choose a tag to compare

@github-actions github-actions released this 18 Oct 15:21
478b9ff

Hisar 0.1.14, offered to Mac apps as an automatic update; Linux apps are told about it.

macOS: open Hisar-0.1.14.dmg and drag Hisar into Applications. The app is not notarized yet: on first launch, right-click Hisar → Open.

Linux (amd64, arm64): sudo apt install ./Hisar-0.1.14-linux-<arch>.deb on Ubuntu 24.04+ or Debian 13+, or sudo dnf install ./Hisar-0.1.14-linux-<arch>.rpm on Fedora 40+. It needs a Secret Service (GNOME Keyring or KWallet) for the Secret Key. hisar comes with it at /usr/bin/hisar. On other distributions with GTK 4 and WebKitGTK 6.0 (Arch, openSUSE and others), chmod +x Hisar-0.1.14-linux-<arch>.AppImage and run it; it copies hisar to ~/.local/share/hisar/bin, and Settings → Command-line tool links it onto your PATH. Or install the Flatpak, which brings GTK and WebKitGTK with the GNOME runtime from Flathub: flatpak install --user Hisar-0.1.14-linux-<arch>.flatpak, then flatpak run com.tryhisar.hisar.

Check downloads against the SHA256SUMS-* files: sha256sum -c --ignore-missing SHA256SUMS-linux-amd64.