| 1 | [package] |
| 2 | name = "g1t-desktop" |
| 3 | version = "0.3.1" |
| 4 | edition = "2024" |
| 5 | license = "MIT" |
| 6 | repository = "https://g1t.sh/flagon-io/g1t" |
| 7 | description = "The g1t desktop app: g1t in a window of its own, with native notifications, a badge, a tray, g1t:// links and updates that install themselves." |
| 8 | |
| 9 | # Not a member of the repository's Cargo workspace (its Cargo.toml excludes |
| 10 | # this folder): Tauri needs a toolkit the services never do, so it builds |
| 11 | # on its own, with its own lockfile, and `cargo test --workspace` stays |
| 12 | # fast. Build it from apps/desktop with `npm run build`. |
| 13 | [workspace] |
| 14 | |
| 15 | [build-dependencies] |
| 16 | tauri-build = { version = "2", features = [] } |
| 17 | |
| 18 | [dependencies] |
| 19 | # `unstable`: a window holding more than one web view, so the title bar |
| 20 | # and the site sit one above the other (src/frame.rs). |
| 21 | tauri = { version = "2", features = ["tray-icon", "image-png", "unstable"] } |
| 22 | # Updates: a signed manifest at g1t.sh/downloads/desktop/latest.json. |
| 23 | tauri-plugin-updater = "2" |
| 24 | # Native notifications, from the site's live feed. |
| 25 | tauri-plugin-notification = "2" |
| 26 | # Links out, opened in the browser the system uses. |
| 27 | tauri-plugin-opener = "2" |
| 28 | # g1t:// links, which open the page they name; a second launch hands its |
| 29 | # link to the app already running. |
| 30 | tauri-plugin-deep-link = "2" |
| 31 | tauri-plugin-single-instance = { version = "2", features = ["deep-link"] } |
| 32 | # The window's size and place, kept between launches. |
| 33 | tauri-plugin-window-state = "2" |
| 34 | # Opening g1t when someone signs in to their computer (settings.rs). |
| 35 | tauri-plugin-autostart = "2" |
| 36 | serde = { version = "1", features = ["derive"] } |
| 37 | serde_json = "1" |
| 38 | url = "2" |
| 39 | # Whether the server answers, before the window goes there (the same client the updater brings). |
| 40 | reqwest = { version = "0.12", default-features = false, features = ["rustls-tls"] } |
| 41 | tokio = { version = "1", features = ["time"] } |
| 42 | # Checking a downloaded g1t-runner against its release's SHA-256 (src/runner/native.rs). |
| 43 | sha2 = "0.10" |
| 44 | |
| 45 | # Keeping the menu bar hidden under g1t's own title bar (src/frame.rs); the |
| 46 | # same GTK that Tauri brings. |
| 47 | [target.'cfg(target_os = "linux")'.dependencies] |
| 48 | gtk = "0.18" |
| 49 | |
| 50 | [profile.release] |
| 51 | strip = "debuginfo" |
| 52 | lto = "thin" |
| 53 | opt-level = "s" |
| 54 | codegen-units = 1 |