├── .github └── FUNDING.yml ├── .gitignore ├── Cargo.lock ├── Cargo.toml ├── README.md ├── recipe.toml └── src ├── main.rs └── session_lock.rs /.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | github: [rv178, shivkr6] 2 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | /target 2 | /bin 3 | -------------------------------------------------------------------------------- /Cargo.lock: -------------------------------------------------------------------------------- 1 | # This file is automatically @generated by Cargo. 2 | # It is not intended for manual editing. 3 | version = 3 4 | 5 | [[package]] 6 | name = "ab_glyph" 7 | version = "0.2.27" 8 | source = "registry+https://github.com/rust-lang/crates.io-index" 9 | checksum = "1c3a1cbc201cc13ed06cf875efb781f2249b3677f5c74571b67d817877f9d697" 10 | dependencies = [ 11 | "ab_glyph_rasterizer", 12 | "owned_ttf_parser", 13 | ] 14 | 15 | [[package]] 16 | name = "ab_glyph_rasterizer" 17 | version = "0.1.8" 18 | source = "registry+https://github.com/rust-lang/crates.io-index" 19 | checksum = "c71b1793ee61086797f5c80b6efa2b8ffa6d5dd703f118545808a7f2e27f7046" 20 | 21 | [[package]] 22 | name = "addr2line" 23 | version = "0.22.0" 24 | source = "registry+https://github.com/rust-lang/crates.io-index" 25 | checksum = "6e4503c46a5c0c7844e948c9a4d6acd9f50cccb4de1c48eb9e291ea17470c678" 26 | dependencies = [ 27 | "gimli", 28 | ] 29 | 30 | [[package]] 31 | name = "adler" 32 | version = "1.0.2" 33 | source = "registry+https://github.com/rust-lang/crates.io-index" 34 | checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" 35 | 36 | [[package]] 37 | name = "ahash" 38 | version = "0.8.11" 39 | source = "registry+https://github.com/rust-lang/crates.io-index" 40 | checksum = "e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011" 41 | dependencies = [ 42 | "cfg-if", 43 | "getrandom", 44 | "once_cell", 45 | "version_check", 46 | "zerocopy", 47 | ] 48 | 49 | [[package]] 50 | name = "allocator-api2" 51 | version = "0.2.18" 52 | source = "registry+https://github.com/rust-lang/crates.io-index" 53 | checksum = "5c6cb57a04249c6480766f7f7cef5467412af1490f8d1e243141daddada3264f" 54 | 55 | [[package]] 56 | name = "android-activity" 57 | version = "0.5.2" 58 | source = "registry+https://github.com/rust-lang/crates.io-index" 59 | checksum = "ee91c0c2905bae44f84bfa4e044536541df26b7703fd0888deeb9060fcc44289" 60 | dependencies = [ 61 | "android-properties", 62 | "bitflags 2.6.0", 63 | "cc", 64 | "cesu8", 65 | "jni", 66 | "jni-sys", 67 | "libc", 68 | "log", 69 | "ndk", 70 | "ndk-context", 71 | "ndk-sys", 72 | "num_enum", 73 | "thiserror", 74 | ] 75 | 76 | [[package]] 77 | name = "android-properties" 78 | version = "0.2.2" 79 | source = "registry+https://github.com/rust-lang/crates.io-index" 80 | checksum = "fc7eb209b1518d6bb87b283c20095f5228ecda460da70b44f0802523dea6da04" 81 | 82 | [[package]] 83 | name = "android_system_properties" 84 | version = "0.1.5" 85 | source = "registry+https://github.com/rust-lang/crates.io-index" 86 | checksum = "819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311" 87 | dependencies = [ 88 | "libc", 89 | ] 90 | 91 | [[package]] 92 | name = "approx" 93 | version = "0.5.1" 94 | source = "registry+https://github.com/rust-lang/crates.io-index" 95 | checksum = "cab112f0a86d568ea0e627cc1d6be74a1e9cd55214684db5561995f6dad897c6" 96 | dependencies = [ 97 | "num-traits", 98 | ] 99 | 100 | [[package]] 101 | name = "arrayref" 102 | version = "0.3.7" 103 | source = "registry+https://github.com/rust-lang/crates.io-index" 104 | checksum = "6b4930d2cb77ce62f89ee5d5289b4ac049559b1c45539271f5ed4fdc7db34545" 105 | 106 | [[package]] 107 | name = "arrayvec" 108 | version = "0.7.4" 109 | source = "registry+https://github.com/rust-lang/crates.io-index" 110 | checksum = "96d30a06541fbafbc7f82ed10c06164cfbd2c401138f6addd8404629c4b16711" 111 | 112 | [[package]] 113 | name = "as-raw-xcb-connection" 114 | version = "1.0.1" 115 | source = "registry+https://github.com/rust-lang/crates.io-index" 116 | checksum = "175571dd1d178ced59193a6fc02dde1b972eb0bc56c892cde9beeceac5bf0f6b" 117 | 118 | [[package]] 119 | name = "ash" 120 | version = "0.37.3+1.3.251" 121 | source = "registry+https://github.com/rust-lang/crates.io-index" 122 | checksum = "39e9c3835d686b0a6084ab4234fcd1b07dbf6e4767dce60874b12356a25ecd4a" 123 | dependencies = [ 124 | "libloading 0.7.4", 125 | ] 126 | 127 | [[package]] 128 | name = "async-broadcast" 129 | version = "0.7.1" 130 | source = "registry+https://github.com/rust-lang/crates.io-index" 131 | checksum = "20cd0e2e25ea8e5f7e9df04578dc6cf5c83577fd09b1a46aaf5c85e1c33f2a7e" 132 | dependencies = [ 133 | "event-listener", 134 | "event-listener-strategy", 135 | "futures-core", 136 | "pin-project-lite", 137 | ] 138 | 139 | [[package]] 140 | name = "async-channel" 141 | version = "2.3.1" 142 | source = "registry+https://github.com/rust-lang/crates.io-index" 143 | checksum = "89b47800b0be77592da0afd425cc03468052844aff33b84e33cc696f64e77b6a" 144 | dependencies = [ 145 | "concurrent-queue", 146 | "event-listener-strategy", 147 | "futures-core", 148 | "pin-project-lite", 149 | ] 150 | 151 | [[package]] 152 | name = "async-executor" 153 | version = "1.12.0" 154 | source = "registry+https://github.com/rust-lang/crates.io-index" 155 | checksum = "c8828ec6e544c02b0d6691d21ed9f9218d0384a82542855073c2a3f58304aaf0" 156 | dependencies = [ 157 | "async-task", 158 | "concurrent-queue", 159 | "fastrand", 160 | "futures-lite", 161 | "slab", 162 | ] 163 | 164 | [[package]] 165 | name = "async-fs" 166 | version = "2.1.2" 167 | source = "registry+https://github.com/rust-lang/crates.io-index" 168 | checksum = "ebcd09b382f40fcd159c2d695175b2ae620ffa5f3bd6f664131efff4e8b9e04a" 169 | dependencies = [ 170 | "async-lock", 171 | "blocking", 172 | "futures-lite", 173 | ] 174 | 175 | [[package]] 176 | name = "async-io" 177 | version = "2.3.3" 178 | source = "registry+https://github.com/rust-lang/crates.io-index" 179 | checksum = "0d6baa8f0178795da0e71bc42c9e5d13261aac7ee549853162e66a241ba17964" 180 | dependencies = [ 181 | "async-lock", 182 | "cfg-if", 183 | "concurrent-queue", 184 | "futures-io", 185 | "futures-lite", 186 | "parking", 187 | "polling", 188 | "rustix", 189 | "slab", 190 | "tracing", 191 | "windows-sys 0.52.0", 192 | ] 193 | 194 | [[package]] 195 | name = "async-lock" 196 | version = "3.4.0" 197 | source = "registry+https://github.com/rust-lang/crates.io-index" 198 | checksum = "ff6e472cdea888a4bd64f342f09b3f50e1886d32afe8df3d663c01140b811b18" 199 | dependencies = [ 200 | "event-listener", 201 | "event-listener-strategy", 202 | "pin-project-lite", 203 | ] 204 | 205 | [[package]] 206 | name = "async-process" 207 | version = "2.2.3" 208 | source = "registry+https://github.com/rust-lang/crates.io-index" 209 | checksum = "f7eda79bbd84e29c2b308d1dc099d7de8dcc7035e48f4bf5dc4a531a44ff5e2a" 210 | dependencies = [ 211 | "async-channel", 212 | "async-io", 213 | "async-lock", 214 | "async-signal", 215 | "async-task", 216 | "blocking", 217 | "cfg-if", 218 | "event-listener", 219 | "futures-lite", 220 | "rustix", 221 | "tracing", 222 | "windows-sys 0.52.0", 223 | ] 224 | 225 | [[package]] 226 | name = "async-recursion" 227 | version = "1.1.1" 228 | source = "registry+https://github.com/rust-lang/crates.io-index" 229 | checksum = "3b43422f69d8ff38f95f1b2bb76517c91589a924d1559a0e935d7c8ce0274c11" 230 | dependencies = [ 231 | "proc-macro2", 232 | "quote", 233 | "syn 2.0.68", 234 | ] 235 | 236 | [[package]] 237 | name = "async-signal" 238 | version = "0.2.8" 239 | source = "registry+https://github.com/rust-lang/crates.io-index" 240 | checksum = "794f185324c2f00e771cd9f1ae8b5ac68be2ca7abb129a87afd6e86d228bc54d" 241 | dependencies = [ 242 | "async-io", 243 | "async-lock", 244 | "atomic-waker", 245 | "cfg-if", 246 | "futures-core", 247 | "futures-io", 248 | "rustix", 249 | "signal-hook-registry", 250 | "slab", 251 | "windows-sys 0.52.0", 252 | ] 253 | 254 | [[package]] 255 | name = "async-task" 256 | version = "4.7.1" 257 | source = "registry+https://github.com/rust-lang/crates.io-index" 258 | checksum = "8b75356056920673b02621b35afd0f7dda9306d03c79a30f5c56c44cf256e3de" 259 | 260 | [[package]] 261 | name = "async-trait" 262 | version = "0.1.80" 263 | source = "registry+https://github.com/rust-lang/crates.io-index" 264 | checksum = "c6fa2087f2753a7da8cc1c0dbfcf89579dd57458e36769de5ac750b4671737ca" 265 | dependencies = [ 266 | "proc-macro2", 267 | "quote", 268 | "syn 2.0.68", 269 | ] 270 | 271 | [[package]] 272 | name = "atomic-waker" 273 | version = "1.1.2" 274 | source = "registry+https://github.com/rust-lang/crates.io-index" 275 | checksum = "1505bd5d3d116872e7271a6d4e16d81d0c8570876c8de68093a09ac269d8aac0" 276 | 277 | [[package]] 278 | name = "autocfg" 279 | version = "1.3.0" 280 | source = "registry+https://github.com/rust-lang/crates.io-index" 281 | checksum = "0c4b4d0bd25bd0b74681c0ad21497610ce1b7c91b1022cd21c80c6fbdd9476b0" 282 | 283 | [[package]] 284 | name = "backtrace" 285 | version = "0.3.73" 286 | source = "registry+https://github.com/rust-lang/crates.io-index" 287 | checksum = "5cc23269a4f8976d0a4d2e7109211a419fe30e8d88d677cd60b6bc79c5732e0a" 288 | dependencies = [ 289 | "addr2line", 290 | "cc", 291 | "cfg-if", 292 | "libc", 293 | "miniz_oxide", 294 | "object", 295 | "rustc-demangle", 296 | ] 297 | 298 | [[package]] 299 | name = "bit-set" 300 | version = "0.5.3" 301 | source = "registry+https://github.com/rust-lang/crates.io-index" 302 | checksum = "0700ddab506f33b20a03b13996eccd309a48e5ff77d0d95926aa0210fb4e95f1" 303 | dependencies = [ 304 | "bit-vec", 305 | ] 306 | 307 | [[package]] 308 | name = "bit-vec" 309 | version = "0.6.3" 310 | source = "registry+https://github.com/rust-lang/crates.io-index" 311 | checksum = "349f9b6a179ed607305526ca489b34ad0a41aed5f7980fa90eb03160b69598fb" 312 | 313 | [[package]] 314 | name = "bitflags" 315 | version = "1.3.2" 316 | source = "registry+https://github.com/rust-lang/crates.io-index" 317 | checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" 318 | 319 | [[package]] 320 | name = "bitflags" 321 | version = "2.6.0" 322 | source = "registry+https://github.com/rust-lang/crates.io-index" 323 | checksum = "b048fb63fd8b5923fc5aa7b340d8e156aec7ec02f0c78fa8a6ddc2613f6f71de" 324 | 325 | [[package]] 326 | name = "block" 327 | version = "0.1.6" 328 | source = "registry+https://github.com/rust-lang/crates.io-index" 329 | checksum = "0d8c1fef690941d3e7788d328517591fecc684c084084702d6ff1641e993699a" 330 | 331 | [[package]] 332 | name = "block-buffer" 333 | version = "0.10.4" 334 | source = "registry+https://github.com/rust-lang/crates.io-index" 335 | checksum = "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71" 336 | dependencies = [ 337 | "generic-array", 338 | ] 339 | 340 | [[package]] 341 | name = "block-sys" 342 | version = "0.2.1" 343 | source = "registry+https://github.com/rust-lang/crates.io-index" 344 | checksum = "ae85a0696e7ea3b835a453750bf002770776609115e6d25c6d2ff28a8200f7e7" 345 | dependencies = [ 346 | "objc-sys", 347 | ] 348 | 349 | [[package]] 350 | name = "block2" 351 | version = "0.3.0" 352 | source = "registry+https://github.com/rust-lang/crates.io-index" 353 | checksum = "15b55663a85f33501257357e6421bb33e769d5c9ffb5ba0921c975a123e35e68" 354 | dependencies = [ 355 | "block-sys", 356 | "objc2 0.4.1", 357 | ] 358 | 359 | [[package]] 360 | name = "block2" 361 | version = "0.5.1" 362 | source = "registry+https://github.com/rust-lang/crates.io-index" 363 | checksum = "2c132eebf10f5cad5289222520a4a058514204aed6d791f1cf4fe8088b82d15f" 364 | dependencies = [ 365 | "objc2 0.5.2", 366 | ] 367 | 368 | [[package]] 369 | name = "blocking" 370 | version = "1.6.1" 371 | source = "registry+https://github.com/rust-lang/crates.io-index" 372 | checksum = "703f41c54fc768e63e091340b424302bb1c29ef4aa0c7f10fe849dfb114d29ea" 373 | dependencies = [ 374 | "async-channel", 375 | "async-task", 376 | "futures-io", 377 | "futures-lite", 378 | "piper", 379 | ] 380 | 381 | [[package]] 382 | name = "bumpalo" 383 | version = "3.16.0" 384 | source = "registry+https://github.com/rust-lang/crates.io-index" 385 | checksum = "79296716171880943b8470b5f8d03aa55eb2e645a4874bdbb28adb49162e012c" 386 | 387 | [[package]] 388 | name = "by_address" 389 | version = "1.2.1" 390 | source = "registry+https://github.com/rust-lang/crates.io-index" 391 | checksum = "64fa3c856b712db6612c019f14756e64e4bcea13337a6b33b696333a9eaa2d06" 392 | 393 | [[package]] 394 | name = "bytemuck" 395 | version = "1.16.1" 396 | source = "registry+https://github.com/rust-lang/crates.io-index" 397 | checksum = "b236fc92302c97ed75b38da1f4917b5cdda4984745740f153a5d3059e48d725e" 398 | dependencies = [ 399 | "bytemuck_derive", 400 | ] 401 | 402 | [[package]] 403 | name = "bytemuck_derive" 404 | version = "1.7.0" 405 | source = "registry+https://github.com/rust-lang/crates.io-index" 406 | checksum = "1ee891b04274a59bd38b412188e24b849617b2e45a0fd8d057deb63e7403761b" 407 | dependencies = [ 408 | "proc-macro2", 409 | "quote", 410 | "syn 2.0.68", 411 | ] 412 | 413 | [[package]] 414 | name = "bytes" 415 | version = "1.6.0" 416 | source = "registry+https://github.com/rust-lang/crates.io-index" 417 | checksum = "514de17de45fdb8dc022b1a7975556c53c86f9f0aa5f534b98977b171857c2c9" 418 | 419 | [[package]] 420 | name = "calloop" 421 | version = "0.12.4" 422 | source = "registry+https://github.com/rust-lang/crates.io-index" 423 | checksum = "fba7adb4dd5aa98e5553510223000e7148f621165ec5f9acd7113f6ca4995298" 424 | dependencies = [ 425 | "bitflags 2.6.0", 426 | "log", 427 | "polling", 428 | "rustix", 429 | "slab", 430 | "thiserror", 431 | ] 432 | 433 | [[package]] 434 | name = "calloop-wayland-source" 435 | version = "0.2.0" 436 | source = "registry+https://github.com/rust-lang/crates.io-index" 437 | checksum = "0f0ea9b9476c7fad82841a8dbb380e2eae480c21910feba80725b46931ed8f02" 438 | dependencies = [ 439 | "calloop", 440 | "rustix", 441 | "wayland-backend", 442 | "wayland-client", 443 | ] 444 | 445 | [[package]] 446 | name = "cc" 447 | version = "1.0.101" 448 | source = "registry+https://github.com/rust-lang/crates.io-index" 449 | checksum = "ac367972e516d45567c7eafc73d24e1c193dcf200a8d94e9db7b3d38b349572d" 450 | dependencies = [ 451 | "jobserver", 452 | "libc", 453 | "once_cell", 454 | ] 455 | 456 | [[package]] 457 | name = "cesu8" 458 | version = "1.1.0" 459 | source = "registry+https://github.com/rust-lang/crates.io-index" 460 | checksum = "6d43a04d8753f35258c91f8ec639f792891f748a1edbd759cf1dcea3382ad83c" 461 | 462 | [[package]] 463 | name = "cfg-if" 464 | version = "1.0.0" 465 | source = "registry+https://github.com/rust-lang/crates.io-index" 466 | checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" 467 | 468 | [[package]] 469 | name = "cfg_aliases" 470 | version = "0.1.1" 471 | source = "registry+https://github.com/rust-lang/crates.io-index" 472 | checksum = "fd16c4719339c4530435d38e511904438d07cce7950afa3718a84ac36c10e89e" 473 | 474 | [[package]] 475 | name = "cfg_aliases" 476 | version = "0.2.1" 477 | source = "registry+https://github.com/rust-lang/crates.io-index" 478 | checksum = "613afe47fcd5fac7ccf1db93babcb082c5994d996f20b8b159f2ad1658eb5724" 479 | 480 | [[package]] 481 | name = "clipboard-win" 482 | version = "5.3.1" 483 | source = "registry+https://github.com/rust-lang/crates.io-index" 484 | checksum = "79f4473f5144e20d9aceaf2972478f06ddf687831eafeeb434fbaf0acc4144ad" 485 | dependencies = [ 486 | "error-code", 487 | ] 488 | 489 | [[package]] 490 | name = "clipboard_macos" 491 | version = "0.1.0" 492 | source = "registry+https://github.com/rust-lang/crates.io-index" 493 | checksum = "145a7f9e9b89453bc0a5e32d166456405d389cea5b578f57f1274b1397588a95" 494 | dependencies = [ 495 | "objc", 496 | "objc-foundation", 497 | "objc_id", 498 | ] 499 | 500 | [[package]] 501 | name = "clipboard_wayland" 502 | version = "0.2.2" 503 | source = "registry+https://github.com/rust-lang/crates.io-index" 504 | checksum = "003f886bc4e2987729d10c1db3424e7f80809f3fc22dbc16c685738887cb37b8" 505 | dependencies = [ 506 | "smithay-clipboard", 507 | ] 508 | 509 | [[package]] 510 | name = "clipboard_x11" 511 | version = "0.4.2" 512 | source = "registry+https://github.com/rust-lang/crates.io-index" 513 | checksum = "4274ea815e013e0f9f04a2633423e14194e408a0576c943ce3d14ca56c50031c" 514 | dependencies = [ 515 | "thiserror", 516 | "x11rb", 517 | ] 518 | 519 | [[package]] 520 | name = "codespan-reporting" 521 | version = "0.11.1" 522 | source = "registry+https://github.com/rust-lang/crates.io-index" 523 | checksum = "3538270d33cc669650c4b093848450d380def10c331d38c768e34cac80576e6e" 524 | dependencies = [ 525 | "termcolor", 526 | "unicode-width", 527 | ] 528 | 529 | [[package]] 530 | name = "com" 531 | version = "0.6.0" 532 | source = "registry+https://github.com/rust-lang/crates.io-index" 533 | checksum = "7e17887fd17353b65b1b2ef1c526c83e26cd72e74f598a8dc1bee13a48f3d9f6" 534 | dependencies = [ 535 | "com_macros", 536 | ] 537 | 538 | [[package]] 539 | name = "com_macros" 540 | version = "0.6.0" 541 | source = "registry+https://github.com/rust-lang/crates.io-index" 542 | checksum = "d375883580a668c7481ea6631fc1a8863e33cc335bf56bfad8d7e6d4b04b13a5" 543 | dependencies = [ 544 | "com_macros_support", 545 | "proc-macro2", 546 | "syn 1.0.109", 547 | ] 548 | 549 | [[package]] 550 | name = "com_macros_support" 551 | version = "0.6.0" 552 | source = "registry+https://github.com/rust-lang/crates.io-index" 553 | checksum = "ad899a1087a9296d5644792d7cb72b8e34c1bec8e7d4fbc002230169a6e8710c" 554 | dependencies = [ 555 | "proc-macro2", 556 | "quote", 557 | "syn 1.0.109", 558 | ] 559 | 560 | [[package]] 561 | name = "combine" 562 | version = "4.6.7" 563 | source = "registry+https://github.com/rust-lang/crates.io-index" 564 | checksum = "ba5a308b75df32fe02788e748662718f03fde005016435c444eea572398219fd" 565 | dependencies = [ 566 | "bytes", 567 | "memchr", 568 | ] 569 | 570 | [[package]] 571 | name = "concurrent-queue" 572 | version = "2.5.0" 573 | source = "registry+https://github.com/rust-lang/crates.io-index" 574 | checksum = "4ca0197aee26d1ae37445ee532fefce43251d24cc7c166799f4d46817f1d3973" 575 | dependencies = [ 576 | "crossbeam-utils", 577 | ] 578 | 579 | [[package]] 580 | name = "core-foundation" 581 | version = "0.9.4" 582 | source = "registry+https://github.com/rust-lang/crates.io-index" 583 | checksum = "91e195e091a93c46f7102ec7818a2aa394e1e1771c3ab4825963fa03e45afb8f" 584 | dependencies = [ 585 | "core-foundation-sys", 586 | "libc", 587 | ] 588 | 589 | [[package]] 590 | name = "core-foundation-sys" 591 | version = "0.8.6" 592 | source = "registry+https://github.com/rust-lang/crates.io-index" 593 | checksum = "06ea2b9bc92be3c2baa9334a323ebca2d6f074ff852cd1d7b11064035cd3868f" 594 | 595 | [[package]] 596 | name = "core-graphics" 597 | version = "0.23.2" 598 | source = "registry+https://github.com/rust-lang/crates.io-index" 599 | checksum = "c07782be35f9e1140080c6b96f0d44b739e2278479f64e02fdab4e32dfd8b081" 600 | dependencies = [ 601 | "bitflags 1.3.2", 602 | "core-foundation", 603 | "core-graphics-types", 604 | "foreign-types", 605 | "libc", 606 | ] 607 | 608 | [[package]] 609 | name = "core-graphics-types" 610 | version = "0.1.3" 611 | source = "registry+https://github.com/rust-lang/crates.io-index" 612 | checksum = "45390e6114f68f718cc7a830514a96f903cccd70d02a8f6d9f643ac4ba45afaf" 613 | dependencies = [ 614 | "bitflags 1.3.2", 615 | "core-foundation", 616 | "libc", 617 | ] 618 | 619 | [[package]] 620 | name = "cosmic-text" 621 | version = "0.10.0" 622 | source = "registry+https://github.com/rust-lang/crates.io-index" 623 | checksum = "75acbfb314aeb4f5210d379af45ed1ec2c98c7f1790bf57b8a4c562ac0c51b71" 624 | dependencies = [ 625 | "fontdb", 626 | "libm", 627 | "log", 628 | "rangemap", 629 | "rustc-hash", 630 | "rustybuzz", 631 | "self_cell", 632 | "swash", 633 | "sys-locale", 634 | "unicode-bidi", 635 | "unicode-linebreak", 636 | "unicode-script", 637 | "unicode-segmentation", 638 | ] 639 | 640 | [[package]] 641 | name = "cpufeatures" 642 | version = "0.2.12" 643 | source = "registry+https://github.com/rust-lang/crates.io-index" 644 | checksum = "53fe5e26ff1b7aef8bca9c6080520cfb8d9333c7568e1829cef191a9723e5504" 645 | dependencies = [ 646 | "libc", 647 | ] 648 | 649 | [[package]] 650 | name = "crc32fast" 651 | version = "1.4.2" 652 | source = "registry+https://github.com/rust-lang/crates.io-index" 653 | checksum = "a97769d94ddab943e4510d138150169a2758b5ef3eb191a9ee688de3e23ef7b3" 654 | dependencies = [ 655 | "cfg-if", 656 | ] 657 | 658 | [[package]] 659 | name = "crossbeam-utils" 660 | version = "0.8.20" 661 | source = "registry+https://github.com/rust-lang/crates.io-index" 662 | checksum = "22ec99545bb0ed0ea7bb9b8e1e9122ea386ff8a48c0922e43f36d45ab09e0e80" 663 | 664 | [[package]] 665 | name = "crunchy" 666 | version = "0.2.2" 667 | source = "registry+https://github.com/rust-lang/crates.io-index" 668 | checksum = "7a81dae078cea95a014a339291cec439d2f232ebe854a9d672b796c6afafa9b7" 669 | 670 | [[package]] 671 | name = "crypto-common" 672 | version = "0.1.6" 673 | source = "registry+https://github.com/rust-lang/crates.io-index" 674 | checksum = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3" 675 | dependencies = [ 676 | "generic-array", 677 | "typenum", 678 | ] 679 | 680 | [[package]] 681 | name = "ctor-lite" 682 | version = "0.1.0" 683 | source = "registry+https://github.com/rust-lang/crates.io-index" 684 | checksum = "1f791803201ab277ace03903de1594460708d2d54df6053f2d9e82f592b19e3b" 685 | 686 | [[package]] 687 | name = "cursor-icon" 688 | version = "1.1.0" 689 | source = "registry+https://github.com/rust-lang/crates.io-index" 690 | checksum = "96a6ac251f4a2aca6b3f91340350eab87ae57c3f127ffeb585e92bd336717991" 691 | 692 | [[package]] 693 | name = "d3d12" 694 | version = "0.19.0" 695 | source = "registry+https://github.com/rust-lang/crates.io-index" 696 | checksum = "3e3d747f100290a1ca24b752186f61f6637e1deffe3bf6320de6fcb29510a307" 697 | dependencies = [ 698 | "bitflags 2.6.0", 699 | "libloading 0.8.4", 700 | "winapi", 701 | ] 702 | 703 | [[package]] 704 | name = "deranged" 705 | version = "0.3.11" 706 | source = "registry+https://github.com/rust-lang/crates.io-index" 707 | checksum = "b42b6fa04a440b495c8b04d0e71b707c585f83cb9cb28cf8cd0d976c315e31b4" 708 | dependencies = [ 709 | "powerfmt", 710 | ] 711 | 712 | [[package]] 713 | name = "digest" 714 | version = "0.10.7" 715 | source = "registry+https://github.com/rust-lang/crates.io-index" 716 | checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292" 717 | dependencies = [ 718 | "block-buffer", 719 | "crypto-common", 720 | ] 721 | 722 | [[package]] 723 | name = "dirs-next" 724 | version = "2.0.0" 725 | source = "registry+https://github.com/rust-lang/crates.io-index" 726 | checksum = "b98cf8ebf19c3d1b223e151f99a4f9f0690dca41414773390fc824184ac833e1" 727 | dependencies = [ 728 | "cfg-if", 729 | "dirs-sys-next", 730 | ] 731 | 732 | [[package]] 733 | name = "dirs-sys-next" 734 | version = "0.1.2" 735 | source = "registry+https://github.com/rust-lang/crates.io-index" 736 | checksum = "4ebda144c4fe02d1f7ea1a7d9641b6fc6b580adcfa024ae48797ecdeb6825b4d" 737 | dependencies = [ 738 | "libc", 739 | "redox_users", 740 | "winapi", 741 | ] 742 | 743 | [[package]] 744 | name = "dispatch" 745 | version = "0.2.0" 746 | source = "registry+https://github.com/rust-lang/crates.io-index" 747 | checksum = "bd0c93bb4b0c6d9b77f4435b0ae98c24d17f1c45b2ff844c6151a07256ca923b" 748 | 749 | [[package]] 750 | name = "dlib" 751 | version = "0.5.2" 752 | source = "registry+https://github.com/rust-lang/crates.io-index" 753 | checksum = "330c60081dcc4c72131f8eb70510f1ac07223e5d4163db481a04a0befcffa412" 754 | dependencies = [ 755 | "libloading 0.8.4", 756 | ] 757 | 758 | [[package]] 759 | name = "downcast-rs" 760 | version = "1.2.1" 761 | source = "registry+https://github.com/rust-lang/crates.io-index" 762 | checksum = "75b325c5dbd37f80359721ad39aca5a29fb04c89279657cffdda8736d0c0b9d2" 763 | 764 | [[package]] 765 | name = "drm" 766 | version = "0.12.0" 767 | source = "registry+https://github.com/rust-lang/crates.io-index" 768 | checksum = "98888c4bbd601524c11a7ed63f814b8825f420514f78e96f752c437ae9cbb5d1" 769 | dependencies = [ 770 | "bitflags 2.6.0", 771 | "bytemuck", 772 | "drm-ffi", 773 | "drm-fourcc", 774 | "rustix", 775 | ] 776 | 777 | [[package]] 778 | name = "drm-ffi" 779 | version = "0.8.0" 780 | source = "registry+https://github.com/rust-lang/crates.io-index" 781 | checksum = "97c98727e48b7ccb4f4aea8cfe881e5b07f702d17b7875991881b41af7278d53" 782 | dependencies = [ 783 | "drm-sys", 784 | "rustix", 785 | ] 786 | 787 | [[package]] 788 | name = "drm-fourcc" 789 | version = "2.2.0" 790 | source = "registry+https://github.com/rust-lang/crates.io-index" 791 | checksum = "0aafbcdb8afc29c1a7ee5fbe53b5d62f4565b35a042a662ca9fecd0b54dae6f4" 792 | 793 | [[package]] 794 | name = "drm-sys" 795 | version = "0.7.0" 796 | source = "registry+https://github.com/rust-lang/crates.io-index" 797 | checksum = "fd39dde40b6e196c2e8763f23d119ddb1a8714534bf7d77fa97a65b0feda3986" 798 | dependencies = [ 799 | "libc", 800 | "linux-raw-sys 0.6.4", 801 | ] 802 | 803 | [[package]] 804 | name = "endi" 805 | version = "1.1.0" 806 | source = "registry+https://github.com/rust-lang/crates.io-index" 807 | checksum = "a3d8a32ae18130a3c84dd492d4215c3d913c3b07c6b63c2eb3eb7ff1101ab7bf" 808 | 809 | [[package]] 810 | name = "enumflags2" 811 | version = "0.7.10" 812 | source = "registry+https://github.com/rust-lang/crates.io-index" 813 | checksum = "d232db7f5956f3f14313dc2f87985c58bd2c695ce124c8cdd984e08e15ac133d" 814 | dependencies = [ 815 | "enumflags2_derive", 816 | "serde", 817 | ] 818 | 819 | [[package]] 820 | name = "enumflags2_derive" 821 | version = "0.7.10" 822 | source = "registry+https://github.com/rust-lang/crates.io-index" 823 | checksum = "de0d48a183585823424a4ce1aa132d174a6a81bd540895822eb4c8373a8e49e8" 824 | dependencies = [ 825 | "proc-macro2", 826 | "quote", 827 | "syn 2.0.68", 828 | ] 829 | 830 | [[package]] 831 | name = "equivalent" 832 | version = "1.0.1" 833 | source = "registry+https://github.com/rust-lang/crates.io-index" 834 | checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" 835 | 836 | [[package]] 837 | name = "errno" 838 | version = "0.3.9" 839 | source = "registry+https://github.com/rust-lang/crates.io-index" 840 | checksum = "534c5cf6194dfab3db3242765c03bbe257cf92f22b38f6bc0c58d59108a820ba" 841 | dependencies = [ 842 | "libc", 843 | "windows-sys 0.52.0", 844 | ] 845 | 846 | [[package]] 847 | name = "error-code" 848 | version = "3.2.0" 849 | source = "registry+https://github.com/rust-lang/crates.io-index" 850 | checksum = "a0474425d51df81997e2f90a21591180b38eccf27292d755f3e30750225c175b" 851 | 852 | [[package]] 853 | name = "etagere" 854 | version = "0.2.13" 855 | source = "registry+https://github.com/rust-lang/crates.io-index" 856 | checksum = "0e2f1e3be19fb10f549be8c1bf013e8675b4066c445e36eb76d2ebb2f54ee495" 857 | dependencies = [ 858 | "euclid", 859 | "svg_fmt", 860 | ] 861 | 862 | [[package]] 863 | name = "euclid" 864 | version = "0.22.10" 865 | source = "registry+https://github.com/rust-lang/crates.io-index" 866 | checksum = "e0f0eb73b934648cd7a4a61f1b15391cd95dab0b4da6e2e66c2a072c144b4a20" 867 | dependencies = [ 868 | "num-traits", 869 | ] 870 | 871 | [[package]] 872 | name = "event-listener" 873 | version = "5.3.1" 874 | source = "registry+https://github.com/rust-lang/crates.io-index" 875 | checksum = "6032be9bd27023a771701cc49f9f053c751055f71efb2e0ae5c15809093675ba" 876 | dependencies = [ 877 | "concurrent-queue", 878 | "parking", 879 | "pin-project-lite", 880 | ] 881 | 882 | [[package]] 883 | name = "event-listener-strategy" 884 | version = "0.5.2" 885 | source = "registry+https://github.com/rust-lang/crates.io-index" 886 | checksum = "0f214dc438f977e6d4e3500aaa277f5ad94ca83fbbd9b1a15713ce2344ccc5a1" 887 | dependencies = [ 888 | "event-listener", 889 | "pin-project-lite", 890 | ] 891 | 892 | [[package]] 893 | name = "fast-srgb8" 894 | version = "1.0.0" 895 | source = "registry+https://github.com/rust-lang/crates.io-index" 896 | checksum = "dd2e7510819d6fbf51a5545c8f922716ecfb14df168a3242f7d33e0239efe6a1" 897 | 898 | [[package]] 899 | name = "fastrand" 900 | version = "2.1.0" 901 | source = "registry+https://github.com/rust-lang/crates.io-index" 902 | checksum = "9fc0510504f03c51ada170672ac806f1f105a88aa97a5281117e1ddc3368e51a" 903 | 904 | [[package]] 905 | name = "fdeflate" 906 | version = "0.3.4" 907 | source = "registry+https://github.com/rust-lang/crates.io-index" 908 | checksum = "4f9bfee30e4dedf0ab8b422f03af778d9612b63f502710fc500a334ebe2de645" 909 | dependencies = [ 910 | "simd-adler32", 911 | ] 912 | 913 | [[package]] 914 | name = "flate2" 915 | version = "1.0.30" 916 | source = "registry+https://github.com/rust-lang/crates.io-index" 917 | checksum = "5f54427cfd1c7829e2a139fcefea601bf088ebca651d2bf53ebc600eac295dae" 918 | dependencies = [ 919 | "crc32fast", 920 | "miniz_oxide", 921 | ] 922 | 923 | [[package]] 924 | name = "font-types" 925 | version = "0.5.5" 926 | source = "registry+https://github.com/rust-lang/crates.io-index" 927 | checksum = "34fd7136aca682873d859ef34494ab1a7d3f57ecd485ed40eb6437ee8c85aa29" 928 | dependencies = [ 929 | "bytemuck", 930 | ] 931 | 932 | [[package]] 933 | name = "fontconfig-parser" 934 | version = "0.5.6" 935 | source = "registry+https://github.com/rust-lang/crates.io-index" 936 | checksum = "6a595cb550439a117696039dfc69830492058211b771a2a165379f2a1a53d84d" 937 | dependencies = [ 938 | "roxmltree", 939 | ] 940 | 941 | [[package]] 942 | name = "fontdb" 943 | version = "0.15.0" 944 | source = "registry+https://github.com/rust-lang/crates.io-index" 945 | checksum = "020e203f177c0fb250fb19455a252e838d2bbbce1f80f25ecc42402aafa8cd38" 946 | dependencies = [ 947 | "fontconfig-parser", 948 | "log", 949 | "memmap2 0.8.0", 950 | "slotmap", 951 | "tinyvec", 952 | "ttf-parser 0.19.2", 953 | ] 954 | 955 | [[package]] 956 | name = "foreign-types" 957 | version = "0.5.0" 958 | source = "registry+https://github.com/rust-lang/crates.io-index" 959 | checksum = "d737d9aa519fb7b749cbc3b962edcf310a8dd1f4b67c91c4f83975dbdd17d965" 960 | dependencies = [ 961 | "foreign-types-macros", 962 | "foreign-types-shared", 963 | ] 964 | 965 | [[package]] 966 | name = "foreign-types-macros" 967 | version = "0.2.3" 968 | source = "registry+https://github.com/rust-lang/crates.io-index" 969 | checksum = "1a5c6c585bc94aaf2c7b51dd4c2ba22680844aba4c687be581871a6f518c5742" 970 | dependencies = [ 971 | "proc-macro2", 972 | "quote", 973 | "syn 2.0.68", 974 | ] 975 | 976 | [[package]] 977 | name = "foreign-types-shared" 978 | version = "0.3.1" 979 | source = "registry+https://github.com/rust-lang/crates.io-index" 980 | checksum = "aa9a19cbb55df58761df49b23516a86d432839add4af60fc256da840f66ed35b" 981 | 982 | [[package]] 983 | name = "futures" 984 | version = "0.3.30" 985 | source = "registry+https://github.com/rust-lang/crates.io-index" 986 | checksum = "645c6916888f6cb6350d2550b80fb63e734897a8498abe35cfb732b6487804b0" 987 | dependencies = [ 988 | "futures-channel", 989 | "futures-core", 990 | "futures-executor", 991 | "futures-io", 992 | "futures-sink", 993 | "futures-task", 994 | "futures-util", 995 | ] 996 | 997 | [[package]] 998 | name = "futures-channel" 999 | version = "0.3.30" 1000 | source = "registry+https://github.com/rust-lang/crates.io-index" 1001 | checksum = "eac8f7d7865dcb88bd4373ab671c8cf4508703796caa2b1985a9ca867b3fcb78" 1002 | dependencies = [ 1003 | "futures-core", 1004 | "futures-sink", 1005 | ] 1006 | 1007 | [[package]] 1008 | name = "futures-core" 1009 | version = "0.3.30" 1010 | source = "registry+https://github.com/rust-lang/crates.io-index" 1011 | checksum = "dfc6580bb841c5a68e9ef15c77ccc837b40a7504914d52e47b8b0e9bbda25a1d" 1012 | 1013 | [[package]] 1014 | name = "futures-executor" 1015 | version = "0.3.30" 1016 | source = "registry+https://github.com/rust-lang/crates.io-index" 1017 | checksum = "a576fc72ae164fca6b9db127eaa9a9dda0d61316034f33a0a0d4eda41f02b01d" 1018 | dependencies = [ 1019 | "futures-core", 1020 | "futures-task", 1021 | "futures-util", 1022 | "num_cpus", 1023 | ] 1024 | 1025 | [[package]] 1026 | name = "futures-io" 1027 | version = "0.3.30" 1028 | source = "registry+https://github.com/rust-lang/crates.io-index" 1029 | checksum = "a44623e20b9681a318efdd71c299b6b222ed6f231972bfe2f224ebad6311f0c1" 1030 | 1031 | [[package]] 1032 | name = "futures-lite" 1033 | version = "2.3.0" 1034 | source = "registry+https://github.com/rust-lang/crates.io-index" 1035 | checksum = "52527eb5074e35e9339c6b4e8d12600c7128b68fb25dcb9fa9dec18f7c25f3a5" 1036 | dependencies = [ 1037 | "fastrand", 1038 | "futures-core", 1039 | "futures-io", 1040 | "parking", 1041 | "pin-project-lite", 1042 | ] 1043 | 1044 | [[package]] 1045 | name = "futures-macro" 1046 | version = "0.3.30" 1047 | source = "registry+https://github.com/rust-lang/crates.io-index" 1048 | checksum = "87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac" 1049 | dependencies = [ 1050 | "proc-macro2", 1051 | "quote", 1052 | "syn 2.0.68", 1053 | ] 1054 | 1055 | [[package]] 1056 | name = "futures-sink" 1057 | version = "0.3.30" 1058 | source = "registry+https://github.com/rust-lang/crates.io-index" 1059 | checksum = "9fb8e00e87438d937621c1c6269e53f536c14d3fbd6a042bb24879e57d474fb5" 1060 | 1061 | [[package]] 1062 | name = "futures-task" 1063 | version = "0.3.30" 1064 | source = "registry+https://github.com/rust-lang/crates.io-index" 1065 | checksum = "38d84fa142264698cdce1a9f9172cf383a0c82de1bddcf3092901442c4097004" 1066 | 1067 | [[package]] 1068 | name = "futures-util" 1069 | version = "0.3.30" 1070 | source = "registry+https://github.com/rust-lang/crates.io-index" 1071 | checksum = "3d6401deb83407ab3da39eba7e33987a73c3df0c82b4bb5813ee871c19c41d48" 1072 | dependencies = [ 1073 | "futures-channel", 1074 | "futures-core", 1075 | "futures-io", 1076 | "futures-macro", 1077 | "futures-sink", 1078 | "futures-task", 1079 | "memchr", 1080 | "pin-project-lite", 1081 | "pin-utils", 1082 | "slab", 1083 | ] 1084 | 1085 | [[package]] 1086 | name = "generic-array" 1087 | version = "0.14.7" 1088 | source = "registry+https://github.com/rust-lang/crates.io-index" 1089 | checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a" 1090 | dependencies = [ 1091 | "typenum", 1092 | "version_check", 1093 | ] 1094 | 1095 | [[package]] 1096 | name = "gethostname" 1097 | version = "0.4.3" 1098 | source = "registry+https://github.com/rust-lang/crates.io-index" 1099 | checksum = "0176e0459c2e4a1fe232f984bca6890e681076abb9934f6cea7c326f3fc47818" 1100 | dependencies = [ 1101 | "libc", 1102 | "windows-targets 0.48.5", 1103 | ] 1104 | 1105 | [[package]] 1106 | name = "getrandom" 1107 | version = "0.2.15" 1108 | source = "registry+https://github.com/rust-lang/crates.io-index" 1109 | checksum = "c4567c8db10ae91089c99af84c68c38da3ec2f087c3f82960bcdbf3656b6f4d7" 1110 | dependencies = [ 1111 | "cfg-if", 1112 | "libc", 1113 | "wasi", 1114 | ] 1115 | 1116 | [[package]] 1117 | name = "gimli" 1118 | version = "0.29.0" 1119 | source = "registry+https://github.com/rust-lang/crates.io-index" 1120 | checksum = "40ecd4077b5ae9fd2e9e169b102c6c330d0605168eb0e8bf79952b256dbefffd" 1121 | 1122 | [[package]] 1123 | name = "gl_generator" 1124 | version = "0.14.0" 1125 | source = "registry+https://github.com/rust-lang/crates.io-index" 1126 | checksum = "1a95dfc23a2b4a9a2f5ab41d194f8bfda3cabec42af4e39f08c339eb2a0c124d" 1127 | dependencies = [ 1128 | "khronos_api", 1129 | "log", 1130 | "xml-rs", 1131 | ] 1132 | 1133 | [[package]] 1134 | name = "glam" 1135 | version = "0.25.0" 1136 | source = "registry+https://github.com/rust-lang/crates.io-index" 1137 | checksum = "151665d9be52f9bb40fc7966565d39666f2d1e69233571b71b87791c7e0528b3" 1138 | 1139 | [[package]] 1140 | name = "glow" 1141 | version = "0.13.1" 1142 | source = "registry+https://github.com/rust-lang/crates.io-index" 1143 | checksum = "bd348e04c43b32574f2de31c8bb397d96c9fcfa1371bd4ca6d8bdc464ab121b1" 1144 | dependencies = [ 1145 | "js-sys", 1146 | "slotmap", 1147 | "wasm-bindgen", 1148 | "web-sys", 1149 | ] 1150 | 1151 | [[package]] 1152 | name = "glutin_wgl_sys" 1153 | version = "0.5.0" 1154 | source = "registry+https://github.com/rust-lang/crates.io-index" 1155 | checksum = "6c8098adac955faa2d31079b65dc48841251f69efd3ac25477903fc424362ead" 1156 | dependencies = [ 1157 | "gl_generator", 1158 | ] 1159 | 1160 | [[package]] 1161 | name = "glyphon" 1162 | version = "0.5.0" 1163 | source = "registry+https://github.com/rust-lang/crates.io-index" 1164 | checksum = "6a62d0338e4056db6a73221c2fb2e30619452f6ea9651bac4110f51b0f7a7581" 1165 | dependencies = [ 1166 | "cosmic-text", 1167 | "etagere", 1168 | "lru", 1169 | "wgpu", 1170 | ] 1171 | 1172 | [[package]] 1173 | name = "gpu-alloc" 1174 | version = "0.6.0" 1175 | source = "registry+https://github.com/rust-lang/crates.io-index" 1176 | checksum = "fbcd2dba93594b227a1f57ee09b8b9da8892c34d55aa332e034a228d0fe6a171" 1177 | dependencies = [ 1178 | "bitflags 2.6.0", 1179 | "gpu-alloc-types", 1180 | ] 1181 | 1182 | [[package]] 1183 | name = "gpu-alloc-types" 1184 | version = "0.3.0" 1185 | source = "registry+https://github.com/rust-lang/crates.io-index" 1186 | checksum = "98ff03b468aa837d70984d55f5d3f846f6ec31fe34bbb97c4f85219caeee1ca4" 1187 | dependencies = [ 1188 | "bitflags 2.6.0", 1189 | ] 1190 | 1191 | [[package]] 1192 | name = "gpu-allocator" 1193 | version = "0.25.0" 1194 | source = "registry+https://github.com/rust-lang/crates.io-index" 1195 | checksum = "6f56f6318968d03c18e1bcf4857ff88c61157e9da8e47c5f29055d60e1228884" 1196 | dependencies = [ 1197 | "log", 1198 | "presser", 1199 | "thiserror", 1200 | "winapi", 1201 | "windows 0.52.0", 1202 | ] 1203 | 1204 | [[package]] 1205 | name = "gpu-descriptor" 1206 | version = "0.2.4" 1207 | source = "registry+https://github.com/rust-lang/crates.io-index" 1208 | checksum = "cc11df1ace8e7e564511f53af41f3e42ddc95b56fd07b3f4445d2a6048bc682c" 1209 | dependencies = [ 1210 | "bitflags 2.6.0", 1211 | "gpu-descriptor-types", 1212 | "hashbrown", 1213 | ] 1214 | 1215 | [[package]] 1216 | name = "gpu-descriptor-types" 1217 | version = "0.1.2" 1218 | source = "registry+https://github.com/rust-lang/crates.io-index" 1219 | checksum = "6bf0b36e6f090b7e1d8a4b49c0cb81c1f8376f72198c65dd3ad9ff3556b8b78c" 1220 | dependencies = [ 1221 | "bitflags 2.6.0", 1222 | ] 1223 | 1224 | [[package]] 1225 | name = "guillotiere" 1226 | version = "0.6.2" 1227 | source = "registry+https://github.com/rust-lang/crates.io-index" 1228 | checksum = "b62d5865c036cb1393e23c50693df631d3f5d7bcca4c04fe4cc0fd592e74a782" 1229 | dependencies = [ 1230 | "euclid", 1231 | "svg_fmt", 1232 | ] 1233 | 1234 | [[package]] 1235 | name = "half" 1236 | version = "2.4.1" 1237 | source = "registry+https://github.com/rust-lang/crates.io-index" 1238 | checksum = "6dd08c532ae367adf81c312a4580bc67f1d0fe8bc9c460520283f4c0ff277888" 1239 | dependencies = [ 1240 | "cfg-if", 1241 | "crunchy", 1242 | ] 1243 | 1244 | [[package]] 1245 | name = "hashbrown" 1246 | version = "0.14.5" 1247 | source = "registry+https://github.com/rust-lang/crates.io-index" 1248 | checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1" 1249 | dependencies = [ 1250 | "ahash", 1251 | "allocator-api2", 1252 | ] 1253 | 1254 | [[package]] 1255 | name = "hassle-rs" 1256 | version = "0.11.0" 1257 | source = "registry+https://github.com/rust-lang/crates.io-index" 1258 | checksum = "af2a7e73e1f34c48da31fb668a907f250794837e08faa144fd24f0b8b741e890" 1259 | dependencies = [ 1260 | "bitflags 2.6.0", 1261 | "com", 1262 | "libc", 1263 | "libloading 0.8.4", 1264 | "thiserror", 1265 | "widestring", 1266 | "winapi", 1267 | ] 1268 | 1269 | [[package]] 1270 | name = "hermit-abi" 1271 | version = "0.3.9" 1272 | source = "registry+https://github.com/rust-lang/crates.io-index" 1273 | checksum = "d231dfb89cfffdbc30e7fc41579ed6066ad03abda9e567ccafae602b97ec5024" 1274 | 1275 | [[package]] 1276 | name = "hermit-abi" 1277 | version = "0.4.0" 1278 | source = "registry+https://github.com/rust-lang/crates.io-index" 1279 | checksum = "fbf6a919d6cf397374f7dfeeea91d974c7c0a7221d0d0f4f20d859d329e53fcc" 1280 | 1281 | [[package]] 1282 | name = "hex" 1283 | version = "0.4.3" 1284 | source = "registry+https://github.com/rust-lang/crates.io-index" 1285 | checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70" 1286 | 1287 | [[package]] 1288 | name = "hexf-parse" 1289 | version = "0.2.1" 1290 | source = "registry+https://github.com/rust-lang/crates.io-index" 1291 | checksum = "dfa686283ad6dd069f105e5ab091b04c62850d3e4cf5d67debad1933f55023df" 1292 | 1293 | [[package]] 1294 | name = "iced" 1295 | version = "0.12.1" 1296 | source = "registry+https://github.com/rust-lang/crates.io-index" 1297 | checksum = "7d4eb0fbbefb8c428b70680e77ed9013887b17c1d6be366b40f264f956d1a096" 1298 | dependencies = [ 1299 | "iced_core", 1300 | "iced_futures", 1301 | "iced_renderer", 1302 | "iced_widget", 1303 | "iced_winit", 1304 | "thiserror", 1305 | ] 1306 | 1307 | [[package]] 1308 | name = "iced_core" 1309 | version = "0.12.3" 1310 | source = "registry+https://github.com/rust-lang/crates.io-index" 1311 | checksum = "7d7e6bbd197f311ed3d8b71651876b0ce01318fde52cda862a9a7a4373c9b930" 1312 | dependencies = [ 1313 | "bitflags 2.6.0", 1314 | "glam", 1315 | "log", 1316 | "num-traits", 1317 | "palette", 1318 | "raw-window-handle", 1319 | "smol_str", 1320 | "thiserror", 1321 | "web-time", 1322 | "xxhash-rust", 1323 | ] 1324 | 1325 | [[package]] 1326 | name = "iced_futures" 1327 | version = "0.12.0" 1328 | source = "registry+https://github.com/rust-lang/crates.io-index" 1329 | checksum = "370bad88fb3832cbeeb3fa6c486b4701fb7e8da32a753b3101d4ce81fc1d9497" 1330 | dependencies = [ 1331 | "futures", 1332 | "iced_core", 1333 | "log", 1334 | "tokio", 1335 | "wasm-bindgen-futures", 1336 | "wasm-timer", 1337 | ] 1338 | 1339 | [[package]] 1340 | name = "iced_graphics" 1341 | version = "0.12.1" 1342 | source = "registry+https://github.com/rust-lang/crates.io-index" 1343 | checksum = "6a044c193ef0840eacabfa05424717331d1fc5b3ecb9a89316200c75da2ba9a4" 1344 | dependencies = [ 1345 | "bitflags 2.6.0", 1346 | "bytemuck", 1347 | "cosmic-text", 1348 | "half", 1349 | "iced_core", 1350 | "iced_futures", 1351 | "log", 1352 | "once_cell", 1353 | "raw-window-handle", 1354 | "rustc-hash", 1355 | "thiserror", 1356 | "unicode-segmentation", 1357 | "xxhash-rust", 1358 | ] 1359 | 1360 | [[package]] 1361 | name = "iced_renderer" 1362 | version = "0.12.1" 1363 | source = "registry+https://github.com/rust-lang/crates.io-index" 1364 | checksum = "5c281e03001d566058f53dec9325bbe61c62da715341206d2627f57a3ecc7f69" 1365 | dependencies = [ 1366 | "iced_graphics", 1367 | "iced_tiny_skia", 1368 | "iced_wgpu", 1369 | "log", 1370 | "thiserror", 1371 | ] 1372 | 1373 | [[package]] 1374 | name = "iced_runtime" 1375 | version = "0.12.1" 1376 | source = "registry+https://github.com/rust-lang/crates.io-index" 1377 | checksum = "a79f852c01cc6d61663c94379cb3974ac3ad315a28c504e847d573e094f46822" 1378 | dependencies = [ 1379 | "iced_core", 1380 | "iced_futures", 1381 | "raw-window-handle", 1382 | "thiserror", 1383 | ] 1384 | 1385 | [[package]] 1386 | name = "iced_sessionlock" 1387 | version = "0.2.5" 1388 | source = "registry+https://github.com/rust-lang/crates.io-index" 1389 | checksum = "b1731341e4369085f700059365104f31cb87777ab54f49232f679f3a0b41e1fd" 1390 | dependencies = [ 1391 | "futures", 1392 | "iced", 1393 | "iced_core", 1394 | "iced_futures", 1395 | "iced_graphics", 1396 | "iced_renderer", 1397 | "iced_runtime", 1398 | "iced_style", 1399 | "sessionlockev", 1400 | "thiserror", 1401 | "tracing", 1402 | ] 1403 | 1404 | [[package]] 1405 | name = "iced_style" 1406 | version = "0.12.1" 1407 | source = "registry+https://github.com/rust-lang/crates.io-index" 1408 | checksum = "2ea42a740915d2a5a9ff9c3aa0bca28b16e9fb660bc8f675eed71d186cadb579" 1409 | dependencies = [ 1410 | "iced_core", 1411 | "once_cell", 1412 | "palette", 1413 | ] 1414 | 1415 | [[package]] 1416 | name = "iced_tiny_skia" 1417 | version = "0.12.1" 1418 | source = "registry+https://github.com/rust-lang/crates.io-index" 1419 | checksum = "8c2228781f4d381a1cbbd7905a9f077351aa8d37269094021d5d9e779f130aff" 1420 | dependencies = [ 1421 | "bytemuck", 1422 | "cosmic-text", 1423 | "iced_graphics", 1424 | "kurbo", 1425 | "log", 1426 | "rustc-hash", 1427 | "softbuffer", 1428 | "tiny-skia", 1429 | "xxhash-rust", 1430 | ] 1431 | 1432 | [[package]] 1433 | name = "iced_wgpu" 1434 | version = "0.12.1" 1435 | source = "registry+https://github.com/rust-lang/crates.io-index" 1436 | checksum = "e3c243b6700452886aac1ee1987e84d9fb43b56b53fea9a1eb67713fd0fde244" 1437 | dependencies = [ 1438 | "bitflags 2.6.0", 1439 | "bytemuck", 1440 | "futures", 1441 | "glam", 1442 | "glyphon", 1443 | "guillotiere", 1444 | "iced_graphics", 1445 | "log", 1446 | "once_cell", 1447 | "wgpu", 1448 | ] 1449 | 1450 | [[package]] 1451 | name = "iced_widget" 1452 | version = "0.12.3" 1453 | source = "registry+https://github.com/rust-lang/crates.io-index" 1454 | checksum = "7e01b2212adecf1cb80e2267f302c0e0c263e55f97812056949199ccf9f0b908" 1455 | dependencies = [ 1456 | "iced_renderer", 1457 | "iced_runtime", 1458 | "iced_style", 1459 | "num-traits", 1460 | "thiserror", 1461 | "unicode-segmentation", 1462 | ] 1463 | 1464 | [[package]] 1465 | name = "iced_winit" 1466 | version = "0.12.2" 1467 | source = "registry+https://github.com/rust-lang/crates.io-index" 1468 | checksum = "63f66831d0e399b93f631739121a6171780d344b275d56808b9504d8ca75c7d2" 1469 | dependencies = [ 1470 | "iced_graphics", 1471 | "iced_runtime", 1472 | "iced_style", 1473 | "log", 1474 | "thiserror", 1475 | "tracing", 1476 | "web-sys", 1477 | "winapi", 1478 | "window_clipboard", 1479 | "winit", 1480 | ] 1481 | 1482 | [[package]] 1483 | name = "icrate" 1484 | version = "0.0.4" 1485 | source = "registry+https://github.com/rust-lang/crates.io-index" 1486 | checksum = "99d3aaff8a54577104bafdf686ff18565c3b6903ca5782a2026ef06e2c7aa319" 1487 | dependencies = [ 1488 | "block2 0.3.0", 1489 | "dispatch", 1490 | "objc2 0.4.1", 1491 | ] 1492 | 1493 | [[package]] 1494 | name = "indexmap" 1495 | version = "2.2.6" 1496 | source = "registry+https://github.com/rust-lang/crates.io-index" 1497 | checksum = "168fb715dda47215e360912c096649d23d58bf392ac62f73919e831745e40f26" 1498 | dependencies = [ 1499 | "equivalent", 1500 | "hashbrown", 1501 | ] 1502 | 1503 | [[package]] 1504 | name = "instant" 1505 | version = "0.1.13" 1506 | source = "registry+https://github.com/rust-lang/crates.io-index" 1507 | checksum = "e0242819d153cba4b4b05a5a8f2a7e9bbf97b6055b2a002b395c96b5ff3c0222" 1508 | dependencies = [ 1509 | "cfg-if", 1510 | ] 1511 | 1512 | [[package]] 1513 | name = "jni" 1514 | version = "0.21.1" 1515 | source = "registry+https://github.com/rust-lang/crates.io-index" 1516 | checksum = "1a87aa2bb7d2af34197c04845522473242e1aa17c12f4935d5856491a7fb8c97" 1517 | dependencies = [ 1518 | "cesu8", 1519 | "cfg-if", 1520 | "combine", 1521 | "jni-sys", 1522 | "log", 1523 | "thiserror", 1524 | "walkdir", 1525 | "windows-sys 0.45.0", 1526 | ] 1527 | 1528 | [[package]] 1529 | name = "jni-sys" 1530 | version = "0.3.0" 1531 | source = "registry+https://github.com/rust-lang/crates.io-index" 1532 | checksum = "8eaf4bc02d17cbdd7ff4c7438cafcdf7fb9a4613313ad11b4f8fefe7d3fa0130" 1533 | 1534 | [[package]] 1535 | name = "jobserver" 1536 | version = "0.1.31" 1537 | source = "registry+https://github.com/rust-lang/crates.io-index" 1538 | checksum = "d2b099aaa34a9751c5bf0878add70444e1ed2dd73f347be99003d4577277de6e" 1539 | dependencies = [ 1540 | "libc", 1541 | ] 1542 | 1543 | [[package]] 1544 | name = "js-sys" 1545 | version = "0.3.69" 1546 | source = "registry+https://github.com/rust-lang/crates.io-index" 1547 | checksum = "29c15563dc2726973df627357ce0c9ddddbea194836909d655df6a75d2cf296d" 1548 | dependencies = [ 1549 | "wasm-bindgen", 1550 | ] 1551 | 1552 | [[package]] 1553 | name = "khronos-egl" 1554 | version = "6.0.0" 1555 | source = "registry+https://github.com/rust-lang/crates.io-index" 1556 | checksum = "6aae1df220ece3c0ada96b8153459b67eebe9ae9212258bb0134ae60416fdf76" 1557 | dependencies = [ 1558 | "libc", 1559 | "libloading 0.8.4", 1560 | "pkg-config", 1561 | ] 1562 | 1563 | [[package]] 1564 | name = "khronos_api" 1565 | version = "3.1.0" 1566 | source = "registry+https://github.com/rust-lang/crates.io-index" 1567 | checksum = "e2db585e1d738fc771bf08a151420d3ed193d9d895a36df7f6f8a9456b911ddc" 1568 | 1569 | [[package]] 1570 | name = "kurbo" 1571 | version = "0.10.4" 1572 | source = "registry+https://github.com/rust-lang/crates.io-index" 1573 | checksum = "1618d4ebd923e97d67e7cd363d80aef35fe961005cbbbb3d2dad8bdd1bc63440" 1574 | dependencies = [ 1575 | "arrayvec", 1576 | "smallvec", 1577 | ] 1578 | 1579 | [[package]] 1580 | name = "libc" 1581 | version = "0.2.155" 1582 | source = "registry+https://github.com/rust-lang/crates.io-index" 1583 | checksum = "97b3888a4aecf77e811145cadf6eef5901f4782c53886191b2f693f24761847c" 1584 | 1585 | [[package]] 1586 | name = "libloading" 1587 | version = "0.7.4" 1588 | source = "registry+https://github.com/rust-lang/crates.io-index" 1589 | checksum = "b67380fd3b2fbe7527a606e18729d21c6f3951633d0500574c4dc22d2d638b9f" 1590 | dependencies = [ 1591 | "cfg-if", 1592 | "winapi", 1593 | ] 1594 | 1595 | [[package]] 1596 | name = "libloading" 1597 | version = "0.8.4" 1598 | source = "registry+https://github.com/rust-lang/crates.io-index" 1599 | checksum = "e310b3a6b5907f99202fcdb4960ff45b93735d7c7d96b760fcff8db2dc0e103d" 1600 | dependencies = [ 1601 | "cfg-if", 1602 | "windows-targets 0.52.5", 1603 | ] 1604 | 1605 | [[package]] 1606 | name = "libm" 1607 | version = "0.2.8" 1608 | source = "registry+https://github.com/rust-lang/crates.io-index" 1609 | checksum = "4ec2a862134d2a7d32d7983ddcdd1c4923530833c9f2ea1a44fc5fa473989058" 1610 | 1611 | [[package]] 1612 | name = "libredox" 1613 | version = "0.0.2" 1614 | source = "registry+https://github.com/rust-lang/crates.io-index" 1615 | checksum = "3af92c55d7d839293953fcd0fda5ecfe93297cfde6ffbdec13b41d99c0ba6607" 1616 | dependencies = [ 1617 | "bitflags 2.6.0", 1618 | "libc", 1619 | "redox_syscall 0.4.1", 1620 | ] 1621 | 1622 | [[package]] 1623 | name = "libredox" 1624 | version = "0.1.3" 1625 | source = "registry+https://github.com/rust-lang/crates.io-index" 1626 | checksum = "c0ff37bd590ca25063e35af745c343cb7a0271906fb7b37e4813e8f79f00268d" 1627 | dependencies = [ 1628 | "bitflags 2.6.0", 1629 | "libc", 1630 | ] 1631 | 1632 | [[package]] 1633 | name = "linux-raw-sys" 1634 | version = "0.4.14" 1635 | source = "registry+https://github.com/rust-lang/crates.io-index" 1636 | checksum = "78b3ae25bc7c8c38cec158d1f2757ee79e9b3740fbc7ccf0e59e4b08d793fa89" 1637 | 1638 | [[package]] 1639 | name = "linux-raw-sys" 1640 | version = "0.6.4" 1641 | source = "registry+https://github.com/rust-lang/crates.io-index" 1642 | checksum = "f0b5399f6804fbab912acbd8878ed3532d506b7c951b8f9f164ef90fef39e3f4" 1643 | 1644 | [[package]] 1645 | name = "lock_api" 1646 | version = "0.4.12" 1647 | source = "registry+https://github.com/rust-lang/crates.io-index" 1648 | checksum = "07af8b9cdd281b7915f413fa73f29ebd5d55d0d3f0155584dade1ff18cea1b17" 1649 | dependencies = [ 1650 | "autocfg", 1651 | "scopeguard", 1652 | ] 1653 | 1654 | [[package]] 1655 | name = "log" 1656 | version = "0.4.22" 1657 | source = "registry+https://github.com/rust-lang/crates.io-index" 1658 | checksum = "a7a70ba024b9dc04c27ea2f0c0548feb474ec5c54bba33a7f72f873a39d07b24" 1659 | 1660 | [[package]] 1661 | name = "lru" 1662 | version = "0.12.3" 1663 | source = "registry+https://github.com/rust-lang/crates.io-index" 1664 | checksum = "d3262e75e648fce39813cb56ac41f3c3e3f65217ebf3844d818d1f9398cfb0dc" 1665 | dependencies = [ 1666 | "hashbrown", 1667 | ] 1668 | 1669 | [[package]] 1670 | name = "mac-notification-sys" 1671 | version = "0.6.1" 1672 | source = "registry+https://github.com/rust-lang/crates.io-index" 1673 | checksum = "51fca4d74ff9dbaac16a01b924bc3693fa2bba0862c2c633abc73f9a8ea21f64" 1674 | dependencies = [ 1675 | "cc", 1676 | "dirs-next", 1677 | "objc-foundation", 1678 | "objc_id", 1679 | "time", 1680 | ] 1681 | 1682 | [[package]] 1683 | name = "malloc_buf" 1684 | version = "0.0.6" 1685 | source = "registry+https://github.com/rust-lang/crates.io-index" 1686 | checksum = "62bb907fe88d54d8d9ce32a3cceab4218ed2f6b7d35617cafe9adf84e43919cb" 1687 | dependencies = [ 1688 | "libc", 1689 | ] 1690 | 1691 | [[package]] 1692 | name = "memchr" 1693 | version = "2.7.4" 1694 | source = "registry+https://github.com/rust-lang/crates.io-index" 1695 | checksum = "78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3" 1696 | 1697 | [[package]] 1698 | name = "memmap2" 1699 | version = "0.8.0" 1700 | source = "registry+https://github.com/rust-lang/crates.io-index" 1701 | checksum = "43a5a03cefb0d953ec0be133036f14e109412fa594edc2f77227249db66cc3ed" 1702 | dependencies = [ 1703 | "libc", 1704 | ] 1705 | 1706 | [[package]] 1707 | name = "memmap2" 1708 | version = "0.9.4" 1709 | source = "registry+https://github.com/rust-lang/crates.io-index" 1710 | checksum = "fe751422e4a8caa417e13c3ea66452215d7d63e19e604f4980461212f3ae1322" 1711 | dependencies = [ 1712 | "libc", 1713 | ] 1714 | 1715 | [[package]] 1716 | name = "memoffset" 1717 | version = "0.9.1" 1718 | source = "registry+https://github.com/rust-lang/crates.io-index" 1719 | checksum = "488016bfae457b036d996092f6cb448677611ce4449e970ceaf42695203f218a" 1720 | dependencies = [ 1721 | "autocfg", 1722 | ] 1723 | 1724 | [[package]] 1725 | name = "metal" 1726 | version = "0.27.0" 1727 | source = "registry+https://github.com/rust-lang/crates.io-index" 1728 | checksum = "c43f73953f8cbe511f021b58f18c3ce1c3d1ae13fe953293e13345bf83217f25" 1729 | dependencies = [ 1730 | "bitflags 2.6.0", 1731 | "block", 1732 | "core-graphics-types", 1733 | "foreign-types", 1734 | "log", 1735 | "objc", 1736 | "paste", 1737 | ] 1738 | 1739 | [[package]] 1740 | name = "miniz_oxide" 1741 | version = "0.7.4" 1742 | source = "registry+https://github.com/rust-lang/crates.io-index" 1743 | checksum = "b8a240ddb74feaf34a79a7add65a741f3167852fba007066dcac1ca548d89c08" 1744 | dependencies = [ 1745 | "adler", 1746 | "simd-adler32", 1747 | ] 1748 | 1749 | [[package]] 1750 | name = "naga" 1751 | version = "0.19.2" 1752 | source = "registry+https://github.com/rust-lang/crates.io-index" 1753 | checksum = "50e3524642f53d9af419ab5e8dd29d3ba155708267667c2f3f06c88c9e130843" 1754 | dependencies = [ 1755 | "bit-set", 1756 | "bitflags 2.6.0", 1757 | "codespan-reporting", 1758 | "hexf-parse", 1759 | "indexmap", 1760 | "log", 1761 | "num-traits", 1762 | "rustc-hash", 1763 | "spirv", 1764 | "termcolor", 1765 | "thiserror", 1766 | "unicode-xid", 1767 | ] 1768 | 1769 | [[package]] 1770 | name = "ndk" 1771 | version = "0.8.0" 1772 | source = "registry+https://github.com/rust-lang/crates.io-index" 1773 | checksum = "2076a31b7010b17a38c01907c45b945e8f11495ee4dd588309718901b1f7a5b7" 1774 | dependencies = [ 1775 | "bitflags 2.6.0", 1776 | "jni-sys", 1777 | "log", 1778 | "ndk-sys", 1779 | "num_enum", 1780 | "raw-window-handle", 1781 | "thiserror", 1782 | ] 1783 | 1784 | [[package]] 1785 | name = "ndk-context" 1786 | version = "0.1.1" 1787 | source = "registry+https://github.com/rust-lang/crates.io-index" 1788 | checksum = "27b02d87554356db9e9a873add8782d4ea6e3e58ea071a9adb9a2e8ddb884a8b" 1789 | 1790 | [[package]] 1791 | name = "ndk-sys" 1792 | version = "0.5.0+25.2.9519653" 1793 | source = "registry+https://github.com/rust-lang/crates.io-index" 1794 | checksum = "8c196769dd60fd4f363e11d948139556a344e79d451aeb2fa2fd040738ef7691" 1795 | dependencies = [ 1796 | "jni-sys", 1797 | ] 1798 | 1799 | [[package]] 1800 | name = "nix" 1801 | version = "0.29.0" 1802 | source = "registry+https://github.com/rust-lang/crates.io-index" 1803 | checksum = "71e2746dc3a24dd78b3cfcb7be93368c6de9963d30f43a6a73998a9cf4b17b46" 1804 | dependencies = [ 1805 | "bitflags 2.6.0", 1806 | "cfg-if", 1807 | "cfg_aliases 0.2.1", 1808 | "libc", 1809 | "memoffset", 1810 | ] 1811 | 1812 | [[package]] 1813 | name = "notify-rust" 1814 | version = "4.11.0" 1815 | source = "registry+https://github.com/rust-lang/crates.io-index" 1816 | checksum = "5312f837191c317644f313f7b2b39f9cb1496570c74f7c17152dd3961219551f" 1817 | dependencies = [ 1818 | "log", 1819 | "mac-notification-sys", 1820 | "serde", 1821 | "tauri-winrt-notification", 1822 | "zbus", 1823 | ] 1824 | 1825 | [[package]] 1826 | name = "num-conv" 1827 | version = "0.1.0" 1828 | source = "registry+https://github.com/rust-lang/crates.io-index" 1829 | checksum = "51d515d32fb182ee37cda2ccdcb92950d6a3c2893aa280e540671c2cd0f3b1d9" 1830 | 1831 | [[package]] 1832 | name = "num-traits" 1833 | version = "0.2.19" 1834 | source = "registry+https://github.com/rust-lang/crates.io-index" 1835 | checksum = "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841" 1836 | dependencies = [ 1837 | "autocfg", 1838 | ] 1839 | 1840 | [[package]] 1841 | name = "num_cpus" 1842 | version = "1.16.0" 1843 | source = "registry+https://github.com/rust-lang/crates.io-index" 1844 | checksum = "4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43" 1845 | dependencies = [ 1846 | "hermit-abi 0.3.9", 1847 | "libc", 1848 | ] 1849 | 1850 | [[package]] 1851 | name = "num_enum" 1852 | version = "0.7.2" 1853 | source = "registry+https://github.com/rust-lang/crates.io-index" 1854 | checksum = "02339744ee7253741199f897151b38e72257d13802d4ee837285cc2990a90845" 1855 | dependencies = [ 1856 | "num_enum_derive", 1857 | ] 1858 | 1859 | [[package]] 1860 | name = "num_enum_derive" 1861 | version = "0.7.2" 1862 | source = "registry+https://github.com/rust-lang/crates.io-index" 1863 | checksum = "681030a937600a36906c185595136d26abfebb4aa9c65701cefcaf8578bb982b" 1864 | dependencies = [ 1865 | "proc-macro-crate", 1866 | "proc-macro2", 1867 | "quote", 1868 | "syn 2.0.68", 1869 | ] 1870 | 1871 | [[package]] 1872 | name = "objc" 1873 | version = "0.2.7" 1874 | source = "registry+https://github.com/rust-lang/crates.io-index" 1875 | checksum = "915b1b472bc21c53464d6c8461c9d3af805ba1ef837e1cac254428f4a77177b1" 1876 | dependencies = [ 1877 | "malloc_buf", 1878 | "objc_exception", 1879 | ] 1880 | 1881 | [[package]] 1882 | name = "objc-foundation" 1883 | version = "0.1.1" 1884 | source = "registry+https://github.com/rust-lang/crates.io-index" 1885 | checksum = "1add1b659e36c9607c7aab864a76c7a4c2760cd0cd2e120f3fb8b952c7e22bf9" 1886 | dependencies = [ 1887 | "block", 1888 | "objc", 1889 | "objc_id", 1890 | ] 1891 | 1892 | [[package]] 1893 | name = "objc-sys" 1894 | version = "0.3.5" 1895 | source = "registry+https://github.com/rust-lang/crates.io-index" 1896 | checksum = "cdb91bdd390c7ce1a8607f35f3ca7151b65afc0ff5ff3b34fa350f7d7c7e4310" 1897 | 1898 | [[package]] 1899 | name = "objc2" 1900 | version = "0.4.1" 1901 | source = "registry+https://github.com/rust-lang/crates.io-index" 1902 | checksum = "559c5a40fdd30eb5e344fbceacf7595a81e242529fb4e21cf5f43fb4f11ff98d" 1903 | dependencies = [ 1904 | "objc-sys", 1905 | "objc2-encode 3.0.0", 1906 | ] 1907 | 1908 | [[package]] 1909 | name = "objc2" 1910 | version = "0.5.2" 1911 | source = "registry+https://github.com/rust-lang/crates.io-index" 1912 | checksum = "46a785d4eeff09c14c487497c162e92766fbb3e4059a71840cecc03d9a50b804" 1913 | dependencies = [ 1914 | "objc-sys", 1915 | "objc2-encode 4.0.3", 1916 | ] 1917 | 1918 | [[package]] 1919 | name = "objc2-app-kit" 1920 | version = "0.2.2" 1921 | source = "registry+https://github.com/rust-lang/crates.io-index" 1922 | checksum = "e4e89ad9e3d7d297152b17d39ed92cd50ca8063a89a9fa569046d41568891eff" 1923 | dependencies = [ 1924 | "bitflags 2.6.0", 1925 | "block2 0.5.1", 1926 | "libc", 1927 | "objc2 0.5.2", 1928 | "objc2-core-data", 1929 | "objc2-core-image", 1930 | "objc2-foundation", 1931 | "objc2-quartz-core", 1932 | ] 1933 | 1934 | [[package]] 1935 | name = "objc2-core-data" 1936 | version = "0.2.2" 1937 | source = "registry+https://github.com/rust-lang/crates.io-index" 1938 | checksum = "617fbf49e071c178c0b24c080767db52958f716d9eabdf0890523aeae54773ef" 1939 | dependencies = [ 1940 | "bitflags 2.6.0", 1941 | "block2 0.5.1", 1942 | "objc2 0.5.2", 1943 | "objc2-foundation", 1944 | ] 1945 | 1946 | [[package]] 1947 | name = "objc2-core-image" 1948 | version = "0.2.2" 1949 | source = "registry+https://github.com/rust-lang/crates.io-index" 1950 | checksum = "55260963a527c99f1819c4f8e3b47fe04f9650694ef348ffd2227e8196d34c80" 1951 | dependencies = [ 1952 | "block2 0.5.1", 1953 | "objc2 0.5.2", 1954 | "objc2-foundation", 1955 | "objc2-metal", 1956 | ] 1957 | 1958 | [[package]] 1959 | name = "objc2-encode" 1960 | version = "3.0.0" 1961 | source = "registry+https://github.com/rust-lang/crates.io-index" 1962 | checksum = "d079845b37af429bfe5dfa76e6d087d788031045b25cfc6fd898486fd9847666" 1963 | 1964 | [[package]] 1965 | name = "objc2-encode" 1966 | version = "4.0.3" 1967 | source = "registry+https://github.com/rust-lang/crates.io-index" 1968 | checksum = "7891e71393cd1f227313c9379a26a584ff3d7e6e7159e988851f0934c993f0f8" 1969 | 1970 | [[package]] 1971 | name = "objc2-foundation" 1972 | version = "0.2.2" 1973 | source = "registry+https://github.com/rust-lang/crates.io-index" 1974 | checksum = "0ee638a5da3799329310ad4cfa62fbf045d5f56e3ef5ba4149e7452dcf89d5a8" 1975 | dependencies = [ 1976 | "bitflags 2.6.0", 1977 | "block2 0.5.1", 1978 | "dispatch", 1979 | "libc", 1980 | "objc2 0.5.2", 1981 | ] 1982 | 1983 | [[package]] 1984 | name = "objc2-metal" 1985 | version = "0.2.2" 1986 | source = "registry+https://github.com/rust-lang/crates.io-index" 1987 | checksum = "dd0cba1276f6023976a406a14ffa85e1fdd19df6b0f737b063b95f6c8c7aadd6" 1988 | dependencies = [ 1989 | "bitflags 2.6.0", 1990 | "block2 0.5.1", 1991 | "objc2 0.5.2", 1992 | "objc2-foundation", 1993 | ] 1994 | 1995 | [[package]] 1996 | name = "objc2-quartz-core" 1997 | version = "0.2.2" 1998 | source = "registry+https://github.com/rust-lang/crates.io-index" 1999 | checksum = "e42bee7bff906b14b167da2bac5efe6b6a07e6f7c0a21a7308d40c960242dc7a" 2000 | dependencies = [ 2001 | "bitflags 2.6.0", 2002 | "block2 0.5.1", 2003 | "objc2 0.5.2", 2004 | "objc2-foundation", 2005 | "objc2-metal", 2006 | ] 2007 | 2008 | [[package]] 2009 | name = "objc_exception" 2010 | version = "0.1.2" 2011 | source = "registry+https://github.com/rust-lang/crates.io-index" 2012 | checksum = "ad970fb455818ad6cba4c122ad012fae53ae8b4795f86378bce65e4f6bab2ca4" 2013 | dependencies = [ 2014 | "cc", 2015 | ] 2016 | 2017 | [[package]] 2018 | name = "objc_id" 2019 | version = "0.1.1" 2020 | source = "registry+https://github.com/rust-lang/crates.io-index" 2021 | checksum = "c92d4ddb4bd7b50d730c215ff871754d0da6b2178849f8a2a2ab69712d0c073b" 2022 | dependencies = [ 2023 | "objc", 2024 | ] 2025 | 2026 | [[package]] 2027 | name = "object" 2028 | version = "0.36.1" 2029 | source = "registry+https://github.com/rust-lang/crates.io-index" 2030 | checksum = "081b846d1d56ddfc18fdf1a922e4f6e07a11768ea1b92dec44e42b72712ccfce" 2031 | dependencies = [ 2032 | "memchr", 2033 | ] 2034 | 2035 | [[package]] 2036 | name = "once_cell" 2037 | version = "1.19.0" 2038 | source = "registry+https://github.com/rust-lang/crates.io-index" 2039 | checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92" 2040 | 2041 | [[package]] 2042 | name = "orbclient" 2043 | version = "0.3.47" 2044 | source = "registry+https://github.com/rust-lang/crates.io-index" 2045 | checksum = "52f0d54bde9774d3a51dcf281a5def240c71996bc6ca05d2c847ec8b2b216166" 2046 | dependencies = [ 2047 | "libredox 0.0.2", 2048 | ] 2049 | 2050 | [[package]] 2051 | name = "ordered-stream" 2052 | version = "0.2.0" 2053 | source = "registry+https://github.com/rust-lang/crates.io-index" 2054 | checksum = "9aa2b01e1d916879f73a53d01d1d6cee68adbb31d6d9177a8cfce093cced1d50" 2055 | dependencies = [ 2056 | "futures-core", 2057 | "pin-project-lite", 2058 | ] 2059 | 2060 | [[package]] 2061 | name = "owned_ttf_parser" 2062 | version = "0.21.0" 2063 | source = "registry+https://github.com/rust-lang/crates.io-index" 2064 | checksum = "6b41438d2fc63c46c74a2203bf5ccd82c41ba04347b2fcf5754f230b167067d5" 2065 | dependencies = [ 2066 | "ttf-parser 0.21.1", 2067 | ] 2068 | 2069 | [[package]] 2070 | name = "palette" 2071 | version = "0.7.6" 2072 | source = "registry+https://github.com/rust-lang/crates.io-index" 2073 | checksum = "4cbf71184cc5ecc2e4e1baccdb21026c20e5fc3dcf63028a086131b3ab00b6e6" 2074 | dependencies = [ 2075 | "approx", 2076 | "fast-srgb8", 2077 | "palette_derive", 2078 | "phf", 2079 | ] 2080 | 2081 | [[package]] 2082 | name = "palette_derive" 2083 | version = "0.7.6" 2084 | source = "registry+https://github.com/rust-lang/crates.io-index" 2085 | checksum = "f5030daf005bface118c096f510ffb781fc28f9ab6a32ab224d8631be6851d30" 2086 | dependencies = [ 2087 | "by_address", 2088 | "proc-macro2", 2089 | "quote", 2090 | "syn 2.0.68", 2091 | ] 2092 | 2093 | [[package]] 2094 | name = "parking" 2095 | version = "2.2.0" 2096 | source = "registry+https://github.com/rust-lang/crates.io-index" 2097 | checksum = "bb813b8af86854136c6922af0598d719255ecb2179515e6e7730d468f05c9cae" 2098 | 2099 | [[package]] 2100 | name = "parking_lot" 2101 | version = "0.11.2" 2102 | source = "registry+https://github.com/rust-lang/crates.io-index" 2103 | checksum = "7d17b78036a60663b797adeaee46f5c9dfebb86948d1255007a1d6be0271ff99" 2104 | dependencies = [ 2105 | "instant", 2106 | "lock_api", 2107 | "parking_lot_core 0.8.6", 2108 | ] 2109 | 2110 | [[package]] 2111 | name = "parking_lot" 2112 | version = "0.12.3" 2113 | source = "registry+https://github.com/rust-lang/crates.io-index" 2114 | checksum = "f1bf18183cf54e8d6059647fc3063646a1801cf30896933ec2311622cc4b9a27" 2115 | dependencies = [ 2116 | "lock_api", 2117 | "parking_lot_core 0.9.10", 2118 | ] 2119 | 2120 | [[package]] 2121 | name = "parking_lot_core" 2122 | version = "0.8.6" 2123 | source = "registry+https://github.com/rust-lang/crates.io-index" 2124 | checksum = "60a2cfe6f0ad2bfc16aefa463b497d5c7a5ecd44a23efa72aa342d90177356dc" 2125 | dependencies = [ 2126 | "cfg-if", 2127 | "instant", 2128 | "libc", 2129 | "redox_syscall 0.2.16", 2130 | "smallvec", 2131 | "winapi", 2132 | ] 2133 | 2134 | [[package]] 2135 | name = "parking_lot_core" 2136 | version = "0.9.10" 2137 | source = "registry+https://github.com/rust-lang/crates.io-index" 2138 | checksum = "1e401f977ab385c9e4e3ab30627d6f26d00e2c73eef317493c4ec6d468726cf8" 2139 | dependencies = [ 2140 | "cfg-if", 2141 | "libc", 2142 | "redox_syscall 0.5.2", 2143 | "smallvec", 2144 | "windows-targets 0.52.5", 2145 | ] 2146 | 2147 | [[package]] 2148 | name = "paste" 2149 | version = "1.0.15" 2150 | source = "registry+https://github.com/rust-lang/crates.io-index" 2151 | checksum = "57c0d7b74b563b49d38dae00a0c37d4d6de9b432382b2892f0574ddcae73fd0a" 2152 | 2153 | [[package]] 2154 | name = "percent-encoding" 2155 | version = "2.3.1" 2156 | source = "registry+https://github.com/rust-lang/crates.io-index" 2157 | checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e" 2158 | 2159 | [[package]] 2160 | name = "phf" 2161 | version = "0.11.2" 2162 | source = "registry+https://github.com/rust-lang/crates.io-index" 2163 | checksum = "ade2d8b8f33c7333b51bcf0428d37e217e9f32192ae4772156f65063b8ce03dc" 2164 | dependencies = [ 2165 | "phf_macros", 2166 | "phf_shared", 2167 | ] 2168 | 2169 | [[package]] 2170 | name = "phf_generator" 2171 | version = "0.11.2" 2172 | source = "registry+https://github.com/rust-lang/crates.io-index" 2173 | checksum = "48e4cc64c2ad9ebe670cb8fd69dd50ae301650392e81c05f9bfcb2d5bdbc24b0" 2174 | dependencies = [ 2175 | "phf_shared", 2176 | "rand", 2177 | ] 2178 | 2179 | [[package]] 2180 | name = "phf_macros" 2181 | version = "0.11.2" 2182 | source = "registry+https://github.com/rust-lang/crates.io-index" 2183 | checksum = "3444646e286606587e49f3bcf1679b8cef1dc2c5ecc29ddacaffc305180d464b" 2184 | dependencies = [ 2185 | "phf_generator", 2186 | "phf_shared", 2187 | "proc-macro2", 2188 | "quote", 2189 | "syn 2.0.68", 2190 | ] 2191 | 2192 | [[package]] 2193 | name = "phf_shared" 2194 | version = "0.11.2" 2195 | source = "registry+https://github.com/rust-lang/crates.io-index" 2196 | checksum = "90fcb95eef784c2ac79119d1dd819e162b5da872ce6f3c3abe1e8ca1c082f72b" 2197 | dependencies = [ 2198 | "siphasher", 2199 | ] 2200 | 2201 | [[package]] 2202 | name = "pin-project-lite" 2203 | version = "0.2.14" 2204 | source = "registry+https://github.com/rust-lang/crates.io-index" 2205 | checksum = "bda66fc9667c18cb2758a2ac84d1167245054bcf85d5d1aaa6923f45801bdd02" 2206 | 2207 | [[package]] 2208 | name = "pin-utils" 2209 | version = "0.1.0" 2210 | source = "registry+https://github.com/rust-lang/crates.io-index" 2211 | checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" 2212 | 2213 | [[package]] 2214 | name = "piper" 2215 | version = "0.2.3" 2216 | source = "registry+https://github.com/rust-lang/crates.io-index" 2217 | checksum = "ae1d5c74c9876f070d3e8fd503d748c7d974c3e48da8f41350fa5222ef9b4391" 2218 | dependencies = [ 2219 | "atomic-waker", 2220 | "fastrand", 2221 | "futures-io", 2222 | ] 2223 | 2224 | [[package]] 2225 | name = "pkg-config" 2226 | version = "0.3.30" 2227 | source = "registry+https://github.com/rust-lang/crates.io-index" 2228 | checksum = "d231b230927b5e4ad203db57bbcbee2802f6bce620b1e4a9024a07d94e2907ec" 2229 | 2230 | [[package]] 2231 | name = "png" 2232 | version = "0.17.13" 2233 | source = "registry+https://github.com/rust-lang/crates.io-index" 2234 | checksum = "06e4b0d3d1312775e782c86c91a111aa1f910cbb65e1337f9975b5f9a554b5e1" 2235 | dependencies = [ 2236 | "bitflags 1.3.2", 2237 | "crc32fast", 2238 | "fdeflate", 2239 | "flate2", 2240 | "miniz_oxide", 2241 | ] 2242 | 2243 | [[package]] 2244 | name = "polling" 2245 | version = "3.7.2" 2246 | source = "registry+https://github.com/rust-lang/crates.io-index" 2247 | checksum = "a3ed00ed3fbf728b5816498ecd316d1716eecaced9c0c8d2c5a6740ca214985b" 2248 | dependencies = [ 2249 | "cfg-if", 2250 | "concurrent-queue", 2251 | "hermit-abi 0.4.0", 2252 | "pin-project-lite", 2253 | "rustix", 2254 | "tracing", 2255 | "windows-sys 0.52.0", 2256 | ] 2257 | 2258 | [[package]] 2259 | name = "powerfmt" 2260 | version = "0.2.0" 2261 | source = "registry+https://github.com/rust-lang/crates.io-index" 2262 | checksum = "439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391" 2263 | 2264 | [[package]] 2265 | name = "ppv-lite86" 2266 | version = "0.2.17" 2267 | source = "registry+https://github.com/rust-lang/crates.io-index" 2268 | checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de" 2269 | 2270 | [[package]] 2271 | name = "presser" 2272 | version = "0.3.1" 2273 | source = "registry+https://github.com/rust-lang/crates.io-index" 2274 | checksum = "e8cf8e6a8aa66ce33f63993ffc4ea4271eb5b0530a9002db8455ea6050c77bfa" 2275 | 2276 | [[package]] 2277 | name = "proc-macro-crate" 2278 | version = "3.1.0" 2279 | source = "registry+https://github.com/rust-lang/crates.io-index" 2280 | checksum = "6d37c51ca738a55da99dc0c4a34860fd675453b8b36209178c2249bb13651284" 2281 | dependencies = [ 2282 | "toml_edit", 2283 | ] 2284 | 2285 | [[package]] 2286 | name = "proc-macro2" 2287 | version = "1.0.86" 2288 | source = "registry+https://github.com/rust-lang/crates.io-index" 2289 | checksum = "5e719e8df665df0d1c8fbfd238015744736151d4445ec0836b8e628aae103b77" 2290 | dependencies = [ 2291 | "unicode-ident", 2292 | ] 2293 | 2294 | [[package]] 2295 | name = "profiling" 2296 | version = "1.0.15" 2297 | source = "registry+https://github.com/rust-lang/crates.io-index" 2298 | checksum = "43d84d1d7a6ac92673717f9f6d1518374ef257669c24ebc5ac25d5033828be58" 2299 | 2300 | [[package]] 2301 | name = "quick-xml" 2302 | version = "0.31.0" 2303 | source = "registry+https://github.com/rust-lang/crates.io-index" 2304 | checksum = "1004a344b30a54e2ee58d66a71b32d2db2feb0a31f9a2d302bf0536f15de2a33" 2305 | dependencies = [ 2306 | "memchr", 2307 | ] 2308 | 2309 | [[package]] 2310 | name = "quote" 2311 | version = "1.0.36" 2312 | source = "registry+https://github.com/rust-lang/crates.io-index" 2313 | checksum = "0fa76aaf39101c457836aec0ce2316dbdc3ab723cdda1c6bd4e6ad4208acaca7" 2314 | dependencies = [ 2315 | "proc-macro2", 2316 | ] 2317 | 2318 | [[package]] 2319 | name = "rand" 2320 | version = "0.8.5" 2321 | source = "registry+https://github.com/rust-lang/crates.io-index" 2322 | checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404" 2323 | dependencies = [ 2324 | "libc", 2325 | "rand_chacha", 2326 | "rand_core", 2327 | ] 2328 | 2329 | [[package]] 2330 | name = "rand_chacha" 2331 | version = "0.3.1" 2332 | source = "registry+https://github.com/rust-lang/crates.io-index" 2333 | checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" 2334 | dependencies = [ 2335 | "ppv-lite86", 2336 | "rand_core", 2337 | ] 2338 | 2339 | [[package]] 2340 | name = "rand_core" 2341 | version = "0.6.4" 2342 | source = "registry+https://github.com/rust-lang/crates.io-index" 2343 | checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" 2344 | dependencies = [ 2345 | "getrandom", 2346 | ] 2347 | 2348 | [[package]] 2349 | name = "range-alloc" 2350 | version = "0.1.3" 2351 | source = "registry+https://github.com/rust-lang/crates.io-index" 2352 | checksum = "9c8a99fddc9f0ba0a85884b8d14e3592853e787d581ca1816c91349b10e4eeab" 2353 | 2354 | [[package]] 2355 | name = "rangemap" 2356 | version = "1.5.1" 2357 | source = "registry+https://github.com/rust-lang/crates.io-index" 2358 | checksum = "f60fcc7d6849342eff22c4350c8b9a989ee8ceabc4b481253e8946b9fe83d684" 2359 | 2360 | [[package]] 2361 | name = "raw-window-handle" 2362 | version = "0.6.2" 2363 | source = "registry+https://github.com/rust-lang/crates.io-index" 2364 | checksum = "20675572f6f24e9e76ef639bc5552774ed45f1c30e2951e1e99c59888861c539" 2365 | 2366 | [[package]] 2367 | name = "read-fonts" 2368 | version = "0.19.3" 2369 | source = "registry+https://github.com/rust-lang/crates.io-index" 2370 | checksum = "e8b8af39d1f23869711ad4cea5e7835a20daa987f80232f7f2a2374d648ca64d" 2371 | dependencies = [ 2372 | "bytemuck", 2373 | "font-types", 2374 | ] 2375 | 2376 | [[package]] 2377 | name = "redox_syscall" 2378 | version = "0.2.16" 2379 | source = "registry+https://github.com/rust-lang/crates.io-index" 2380 | checksum = "fb5a58c1855b4b6819d59012155603f0b22ad30cad752600aadfcb695265519a" 2381 | dependencies = [ 2382 | "bitflags 1.3.2", 2383 | ] 2384 | 2385 | [[package]] 2386 | name = "redox_syscall" 2387 | version = "0.3.5" 2388 | source = "registry+https://github.com/rust-lang/crates.io-index" 2389 | checksum = "567664f262709473930a4bf9e51bf2ebf3348f2e748ccc50dea20646858f8f29" 2390 | dependencies = [ 2391 | "bitflags 1.3.2", 2392 | ] 2393 | 2394 | [[package]] 2395 | name = "redox_syscall" 2396 | version = "0.4.1" 2397 | source = "registry+https://github.com/rust-lang/crates.io-index" 2398 | checksum = "4722d768eff46b75989dd134e5c353f0d6296e5aaa3132e776cbdb56be7731aa" 2399 | dependencies = [ 2400 | "bitflags 1.3.2", 2401 | ] 2402 | 2403 | [[package]] 2404 | name = "redox_syscall" 2405 | version = "0.5.2" 2406 | source = "registry+https://github.com/rust-lang/crates.io-index" 2407 | checksum = "c82cf8cff14456045f55ec4241383baeff27af886adb72ffb2162f99911de0fd" 2408 | dependencies = [ 2409 | "bitflags 2.6.0", 2410 | ] 2411 | 2412 | [[package]] 2413 | name = "redox_users" 2414 | version = "0.4.5" 2415 | source = "registry+https://github.com/rust-lang/crates.io-index" 2416 | checksum = "bd283d9651eeda4b2a83a43c1c91b266c40fd76ecd39a50a8c630ae69dc72891" 2417 | dependencies = [ 2418 | "getrandom", 2419 | "libredox 0.1.3", 2420 | "thiserror", 2421 | ] 2422 | 2423 | [[package]] 2424 | name = "renderdoc-sys" 2425 | version = "1.1.0" 2426 | source = "registry+https://github.com/rust-lang/crates.io-index" 2427 | checksum = "19b30a45b0cd0bcca8037f3d0dc3421eaf95327a17cad11964fb8179b4fc4832" 2428 | 2429 | [[package]] 2430 | name = "roxmltree" 2431 | version = "0.19.0" 2432 | source = "registry+https://github.com/rust-lang/crates.io-index" 2433 | checksum = "3cd14fd5e3b777a7422cca79358c57a8f6e3a703d9ac187448d0daf220c2407f" 2434 | 2435 | [[package]] 2436 | name = "rustc-demangle" 2437 | version = "0.1.24" 2438 | source = "registry+https://github.com/rust-lang/crates.io-index" 2439 | checksum = "719b953e2095829ee67db738b3bfa9fa368c94900df327b3f07fe6e794d2fe1f" 2440 | 2441 | [[package]] 2442 | name = "rustc-hash" 2443 | version = "1.1.0" 2444 | source = "registry+https://github.com/rust-lang/crates.io-index" 2445 | checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2" 2446 | 2447 | [[package]] 2448 | name = "rustix" 2449 | version = "0.38.34" 2450 | source = "registry+https://github.com/rust-lang/crates.io-index" 2451 | checksum = "70dc5ec042f7a43c4a73241207cecc9873a06d45debb38b329f8541d85c2730f" 2452 | dependencies = [ 2453 | "bitflags 2.6.0", 2454 | "errno", 2455 | "libc", 2456 | "linux-raw-sys 0.4.14", 2457 | "windows-sys 0.52.0", 2458 | ] 2459 | 2460 | [[package]] 2461 | name = "rustybuzz" 2462 | version = "0.11.0" 2463 | source = "registry+https://github.com/rust-lang/crates.io-index" 2464 | checksum = "2ee8fe2a8461a0854a37101fe7a1b13998d0cfa987e43248e81d2a5f4570f6fa" 2465 | dependencies = [ 2466 | "bitflags 1.3.2", 2467 | "bytemuck", 2468 | "libm", 2469 | "smallvec", 2470 | "ttf-parser 0.20.0", 2471 | "unicode-bidi-mirroring", 2472 | "unicode-ccc", 2473 | "unicode-properties", 2474 | "unicode-script", 2475 | ] 2476 | 2477 | [[package]] 2478 | name = "same-file" 2479 | version = "1.0.6" 2480 | source = "registry+https://github.com/rust-lang/crates.io-index" 2481 | checksum = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502" 2482 | dependencies = [ 2483 | "winapi-util", 2484 | ] 2485 | 2486 | [[package]] 2487 | name = "scoped-tls" 2488 | version = "1.0.1" 2489 | source = "registry+https://github.com/rust-lang/crates.io-index" 2490 | checksum = "e1cf6437eb19a8f4a6cc0f7dca544973b0b78843adbfeb3683d1a94a0024a294" 2491 | 2492 | [[package]] 2493 | name = "scopeguard" 2494 | version = "1.2.0" 2495 | source = "registry+https://github.com/rust-lang/crates.io-index" 2496 | checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" 2497 | 2498 | [[package]] 2499 | name = "sctk-adwaita" 2500 | version = "0.8.1" 2501 | source = "registry+https://github.com/rust-lang/crates.io-index" 2502 | checksum = "82b2eaf3a5b264a521b988b2e73042e742df700c4f962cde845d1541adb46550" 2503 | dependencies = [ 2504 | "ab_glyph", 2505 | "log", 2506 | "memmap2 0.9.4", 2507 | "smithay-client-toolkit", 2508 | "tiny-skia", 2509 | ] 2510 | 2511 | [[package]] 2512 | name = "self_cell" 2513 | version = "1.0.4" 2514 | source = "registry+https://github.com/rust-lang/crates.io-index" 2515 | checksum = "d369a96f978623eb3dc28807c4852d6cc617fed53da5d3c400feff1ef34a714a" 2516 | 2517 | [[package]] 2518 | name = "serde" 2519 | version = "1.0.203" 2520 | source = "registry+https://github.com/rust-lang/crates.io-index" 2521 | checksum = "7253ab4de971e72fb7be983802300c30b5a7f0c2e56fab8abfc6a214307c0094" 2522 | dependencies = [ 2523 | "serde_derive", 2524 | ] 2525 | 2526 | [[package]] 2527 | name = "serde_derive" 2528 | version = "1.0.203" 2529 | source = "registry+https://github.com/rust-lang/crates.io-index" 2530 | checksum = "500cbc0ebeb6f46627f50f3f5811ccf6bf00643be300b4c3eabc0ef55dc5b5ba" 2531 | dependencies = [ 2532 | "proc-macro2", 2533 | "quote", 2534 | "syn 2.0.68", 2535 | ] 2536 | 2537 | [[package]] 2538 | name = "serde_repr" 2539 | version = "0.1.19" 2540 | source = "registry+https://github.com/rust-lang/crates.io-index" 2541 | checksum = "6c64451ba24fc7a6a2d60fc75dd9c83c90903b19028d4eff35e88fc1e86564e9" 2542 | dependencies = [ 2543 | "proc-macro2", 2544 | "quote", 2545 | "syn 2.0.68", 2546 | ] 2547 | 2548 | [[package]] 2549 | name = "sessionlockev" 2550 | version = "0.2.5" 2551 | source = "registry+https://github.com/rust-lang/crates.io-index" 2552 | checksum = "1c9282fa2ceafe249d023484a9b3b4424dbf390885395ad7ecc591a92f90e9cc" 2553 | dependencies = [ 2554 | "bitflags 2.6.0", 2555 | "raw-window-handle", 2556 | "smithay-client-toolkit", 2557 | "tempfile", 2558 | "thiserror", 2559 | "wayland-backend", 2560 | "wayland-client", 2561 | "wayland-cursor", 2562 | "wayland-protocols", 2563 | "wayland-protocols-misc", 2564 | "wayland-protocols-wlr", 2565 | ] 2566 | 2567 | [[package]] 2568 | name = "sha1" 2569 | version = "0.10.6" 2570 | source = "registry+https://github.com/rust-lang/crates.io-index" 2571 | checksum = "e3bf829a2d51ab4a5ddf1352d8470c140cadc8301b2ae1789db023f01cedd6ba" 2572 | dependencies = [ 2573 | "cfg-if", 2574 | "cpufeatures", 2575 | "digest", 2576 | ] 2577 | 2578 | [[package]] 2579 | name = "signal-hook-registry" 2580 | version = "1.4.2" 2581 | source = "registry+https://github.com/rust-lang/crates.io-index" 2582 | checksum = "a9e9e0b4211b72e7b8b6e85c807d36c212bdb33ea8587f7569562a84df5465b1" 2583 | dependencies = [ 2584 | "libc", 2585 | ] 2586 | 2587 | [[package]] 2588 | name = "simd-adler32" 2589 | version = "0.3.7" 2590 | source = "registry+https://github.com/rust-lang/crates.io-index" 2591 | checksum = "d66dc143e6b11c1eddc06d5c423cfc97062865baf299914ab64caa38182078fe" 2592 | 2593 | [[package]] 2594 | name = "siphasher" 2595 | version = "0.3.11" 2596 | source = "registry+https://github.com/rust-lang/crates.io-index" 2597 | checksum = "38b58827f4464d87d377d175e90bf58eb00fd8716ff0a62f80356b5e61555d0d" 2598 | 2599 | [[package]] 2600 | name = "skrifa" 2601 | version = "0.19.3" 2602 | source = "registry+https://github.com/rust-lang/crates.io-index" 2603 | checksum = "0ab45fb68b53576a43d4fc0e9ec8ea64e29a4d2cc7f44506964cb75f288222e9" 2604 | dependencies = [ 2605 | "bytemuck", 2606 | "read-fonts", 2607 | ] 2608 | 2609 | [[package]] 2610 | name = "slab" 2611 | version = "0.4.9" 2612 | source = "registry+https://github.com/rust-lang/crates.io-index" 2613 | checksum = "8f92a496fb766b417c996b9c5e57daf2f7ad3b0bebe1ccfca4856390e3d3bb67" 2614 | dependencies = [ 2615 | "autocfg", 2616 | ] 2617 | 2618 | [[package]] 2619 | name = "slotmap" 2620 | version = "1.0.7" 2621 | source = "registry+https://github.com/rust-lang/crates.io-index" 2622 | checksum = "dbff4acf519f630b3a3ddcfaea6c06b42174d9a44bc70c620e9ed1649d58b82a" 2623 | dependencies = [ 2624 | "version_check", 2625 | ] 2626 | 2627 | [[package]] 2628 | name = "smallvec" 2629 | version = "1.13.2" 2630 | source = "registry+https://github.com/rust-lang/crates.io-index" 2631 | checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67" 2632 | 2633 | [[package]] 2634 | name = "smithay-client-toolkit" 2635 | version = "0.18.1" 2636 | source = "registry+https://github.com/rust-lang/crates.io-index" 2637 | checksum = "922fd3eeab3bd820d76537ce8f582b1cf951eceb5475c28500c7457d9d17f53a" 2638 | dependencies = [ 2639 | "bitflags 2.6.0", 2640 | "bytemuck", 2641 | "calloop", 2642 | "calloop-wayland-source", 2643 | "cursor-icon", 2644 | "libc", 2645 | "log", 2646 | "memmap2 0.9.4", 2647 | "pkg-config", 2648 | "rustix", 2649 | "thiserror", 2650 | "wayland-backend", 2651 | "wayland-client", 2652 | "wayland-csd-frame", 2653 | "wayland-cursor", 2654 | "wayland-protocols", 2655 | "wayland-protocols-wlr", 2656 | "wayland-scanner", 2657 | "xkbcommon", 2658 | "xkeysym", 2659 | ] 2660 | 2661 | [[package]] 2662 | name = "smithay-clipboard" 2663 | version = "0.7.1" 2664 | source = "registry+https://github.com/rust-lang/crates.io-index" 2665 | checksum = "c091e7354ea8059d6ad99eace06dd13ddeedbb0ac72d40a9a6e7ff790525882d" 2666 | dependencies = [ 2667 | "libc", 2668 | "smithay-client-toolkit", 2669 | "wayland-backend", 2670 | ] 2671 | 2672 | [[package]] 2673 | name = "smol_str" 2674 | version = "0.2.2" 2675 | source = "registry+https://github.com/rust-lang/crates.io-index" 2676 | checksum = "dd538fb6910ac1099850255cf94a94df6551fbdd602454387d0adb2d1ca6dead" 2677 | dependencies = [ 2678 | "serde", 2679 | ] 2680 | 2681 | [[package]] 2682 | name = "softbuffer" 2683 | version = "0.4.5" 2684 | source = "registry+https://github.com/rust-lang/crates.io-index" 2685 | checksum = "d623bff5d06f60d738990980d782c8c866997d9194cfe79ecad00aa2f76826dd" 2686 | dependencies = [ 2687 | "as-raw-xcb-connection", 2688 | "bytemuck", 2689 | "cfg_aliases 0.2.1", 2690 | "core-graphics", 2691 | "drm", 2692 | "fastrand", 2693 | "foreign-types", 2694 | "js-sys", 2695 | "log", 2696 | "memmap2 0.9.4", 2697 | "objc2 0.5.2", 2698 | "objc2-app-kit", 2699 | "objc2-foundation", 2700 | "objc2-quartz-core", 2701 | "raw-window-handle", 2702 | "redox_syscall 0.5.2", 2703 | "rustix", 2704 | "tiny-xlib", 2705 | "wasm-bindgen", 2706 | "wayland-backend", 2707 | "wayland-client", 2708 | "wayland-sys", 2709 | "web-sys", 2710 | "windows-sys 0.52.0", 2711 | "x11rb", 2712 | ] 2713 | 2714 | [[package]] 2715 | name = "spirv" 2716 | version = "0.3.0+sdk-1.3.268.0" 2717 | source = "registry+https://github.com/rust-lang/crates.io-index" 2718 | checksum = "eda41003dc44290527a59b13432d4a0379379fa074b70174882adfbdfd917844" 2719 | dependencies = [ 2720 | "bitflags 2.6.0", 2721 | ] 2722 | 2723 | [[package]] 2724 | name = "static_assertions" 2725 | version = "1.1.0" 2726 | source = "registry+https://github.com/rust-lang/crates.io-index" 2727 | checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f" 2728 | 2729 | [[package]] 2730 | name = "strict-num" 2731 | version = "0.1.1" 2732 | source = "registry+https://github.com/rust-lang/crates.io-index" 2733 | checksum = "6637bab7722d379c8b41ba849228d680cc12d0a45ba1fa2b48f2a30577a06731" 2734 | 2735 | [[package]] 2736 | name = "svg_fmt" 2737 | version = "0.4.3" 2738 | source = "registry+https://github.com/rust-lang/crates.io-index" 2739 | checksum = "20e16a0f46cf5fd675563ef54f26e83e20f2366bcf027bcb3cc3ed2b98aaf2ca" 2740 | 2741 | [[package]] 2742 | name = "swash" 2743 | version = "0.1.17" 2744 | source = "registry+https://github.com/rust-lang/crates.io-index" 2745 | checksum = "4d7773d67fe3373048cf840bfcc54ec3207cfc1e95c526b287ef2eb5eff9faf6" 2746 | dependencies = [ 2747 | "skrifa", 2748 | "yazi", 2749 | "zeno", 2750 | ] 2751 | 2752 | [[package]] 2753 | name = "syn" 2754 | version = "1.0.109" 2755 | source = "registry+https://github.com/rust-lang/crates.io-index" 2756 | checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237" 2757 | dependencies = [ 2758 | "proc-macro2", 2759 | "quote", 2760 | "unicode-ident", 2761 | ] 2762 | 2763 | [[package]] 2764 | name = "syn" 2765 | version = "2.0.68" 2766 | source = "registry+https://github.com/rust-lang/crates.io-index" 2767 | checksum = "901fa70d88b9d6c98022e23b4136f9f3e54e4662c3bc1bd1d84a42a9a0f0c1e9" 2768 | dependencies = [ 2769 | "proc-macro2", 2770 | "quote", 2771 | "unicode-ident", 2772 | ] 2773 | 2774 | [[package]] 2775 | name = "sys-locale" 2776 | version = "0.3.1" 2777 | source = "registry+https://github.com/rust-lang/crates.io-index" 2778 | checksum = "e801cf239ecd6ccd71f03d270d67dd53d13e90aab208bf4b8fe4ad957ea949b0" 2779 | dependencies = [ 2780 | "libc", 2781 | ] 2782 | 2783 | [[package]] 2784 | name = "tauri-winrt-notification" 2785 | version = "0.2.1" 2786 | source = "registry+https://github.com/rust-lang/crates.io-index" 2787 | checksum = "f89f5fb70d6f62381f5d9b2ba9008196150b40b75f3068eb24faeddf1c686871" 2788 | dependencies = [ 2789 | "quick-xml", 2790 | "windows 0.56.0", 2791 | "windows-version", 2792 | ] 2793 | 2794 | [[package]] 2795 | name = "tempfile" 2796 | version = "3.10.1" 2797 | source = "registry+https://github.com/rust-lang/crates.io-index" 2798 | checksum = "85b77fafb263dd9d05cbeac119526425676db3784113aa9295c88498cbf8bff1" 2799 | dependencies = [ 2800 | "cfg-if", 2801 | "fastrand", 2802 | "rustix", 2803 | "windows-sys 0.52.0", 2804 | ] 2805 | 2806 | [[package]] 2807 | name = "termcolor" 2808 | version = "1.4.1" 2809 | source = "registry+https://github.com/rust-lang/crates.io-index" 2810 | checksum = "06794f8f6c5c898b3275aebefa6b8a1cb24cd2c6c79397ab15774837a0bc5755" 2811 | dependencies = [ 2812 | "winapi-util", 2813 | ] 2814 | 2815 | [[package]] 2816 | name = "thiserror" 2817 | version = "1.0.61" 2818 | source = "registry+https://github.com/rust-lang/crates.io-index" 2819 | checksum = "c546c80d6be4bc6a00c0f01730c08df82eaa7a7a61f11d656526506112cc1709" 2820 | dependencies = [ 2821 | "thiserror-impl", 2822 | ] 2823 | 2824 | [[package]] 2825 | name = "thiserror-impl" 2826 | version = "1.0.61" 2827 | source = "registry+https://github.com/rust-lang/crates.io-index" 2828 | checksum = "46c3384250002a6d5af4d114f2845d37b57521033f30d5c3f46c4d70e1197533" 2829 | dependencies = [ 2830 | "proc-macro2", 2831 | "quote", 2832 | "syn 2.0.68", 2833 | ] 2834 | 2835 | [[package]] 2836 | name = "time" 2837 | version = "0.3.36" 2838 | source = "registry+https://github.com/rust-lang/crates.io-index" 2839 | checksum = "5dfd88e563464686c916c7e46e623e520ddc6d79fa6641390f2e3fa86e83e885" 2840 | dependencies = [ 2841 | "deranged", 2842 | "num-conv", 2843 | "powerfmt", 2844 | "serde", 2845 | "time-core", 2846 | ] 2847 | 2848 | [[package]] 2849 | name = "time-core" 2850 | version = "0.1.2" 2851 | source = "registry+https://github.com/rust-lang/crates.io-index" 2852 | checksum = "ef927ca75afb808a4d64dd374f00a2adf8d0fcff8e7b184af886c3c87ec4a3f3" 2853 | 2854 | [[package]] 2855 | name = "tiny-skia" 2856 | version = "0.11.4" 2857 | source = "registry+https://github.com/rust-lang/crates.io-index" 2858 | checksum = "83d13394d44dae3207b52a326c0c85a8bf87f1541f23b0d143811088497b09ab" 2859 | dependencies = [ 2860 | "arrayref", 2861 | "arrayvec", 2862 | "bytemuck", 2863 | "cfg-if", 2864 | "log", 2865 | "png", 2866 | "tiny-skia-path", 2867 | ] 2868 | 2869 | [[package]] 2870 | name = "tiny-skia-path" 2871 | version = "0.11.4" 2872 | source = "registry+https://github.com/rust-lang/crates.io-index" 2873 | checksum = "9c9e7fc0c2e86a30b117d0462aa261b72b7a99b7ebd7deb3a14ceda95c5bdc93" 2874 | dependencies = [ 2875 | "arrayref", 2876 | "bytemuck", 2877 | "strict-num", 2878 | ] 2879 | 2880 | [[package]] 2881 | name = "tiny-xlib" 2882 | version = "0.2.3" 2883 | source = "registry+https://github.com/rust-lang/crates.io-index" 2884 | checksum = "1d52f22673960ad13af14ff4025997312def1223bfa7c8e4949d099e6b3d5d1c" 2885 | dependencies = [ 2886 | "as-raw-xcb-connection", 2887 | "ctor-lite", 2888 | "libloading 0.8.4", 2889 | "pkg-config", 2890 | "tracing", 2891 | ] 2892 | 2893 | [[package]] 2894 | name = "tinyvec" 2895 | version = "1.6.1" 2896 | source = "registry+https://github.com/rust-lang/crates.io-index" 2897 | checksum = "c55115c6fbe2d2bef26eb09ad74bde02d8255476fc0c7b515ef09fbb35742d82" 2898 | dependencies = [ 2899 | "tinyvec_macros", 2900 | ] 2901 | 2902 | [[package]] 2903 | name = "tinyvec_macros" 2904 | version = "0.1.1" 2905 | source = "registry+https://github.com/rust-lang/crates.io-index" 2906 | checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" 2907 | 2908 | [[package]] 2909 | name = "tokio" 2910 | version = "1.38.0" 2911 | source = "registry+https://github.com/rust-lang/crates.io-index" 2912 | checksum = "ba4f4a02a7a80d6f274636f0aa95c7e383b912d41fe721a31f29e29698585a4a" 2913 | dependencies = [ 2914 | "backtrace", 2915 | "num_cpus", 2916 | "pin-project-lite", 2917 | ] 2918 | 2919 | [[package]] 2920 | name = "toml_datetime" 2921 | version = "0.6.6" 2922 | source = "registry+https://github.com/rust-lang/crates.io-index" 2923 | checksum = "4badfd56924ae69bcc9039335b2e017639ce3f9b001c393c1b2d1ef846ce2cbf" 2924 | 2925 | [[package]] 2926 | name = "toml_edit" 2927 | version = "0.21.1" 2928 | source = "registry+https://github.com/rust-lang/crates.io-index" 2929 | checksum = "6a8534fd7f78b5405e860340ad6575217ce99f38d4d5c8f2442cb5ecb50090e1" 2930 | dependencies = [ 2931 | "indexmap", 2932 | "toml_datetime", 2933 | "winnow", 2934 | ] 2935 | 2936 | [[package]] 2937 | name = "tracing" 2938 | version = "0.1.40" 2939 | source = "registry+https://github.com/rust-lang/crates.io-index" 2940 | checksum = "c3523ab5a71916ccf420eebdf5521fcef02141234bbc0b8a49f2fdc4544364ef" 2941 | dependencies = [ 2942 | "pin-project-lite", 2943 | "tracing-attributes", 2944 | "tracing-core", 2945 | ] 2946 | 2947 | [[package]] 2948 | name = "tracing-attributes" 2949 | version = "0.1.27" 2950 | source = "registry+https://github.com/rust-lang/crates.io-index" 2951 | checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7" 2952 | dependencies = [ 2953 | "proc-macro2", 2954 | "quote", 2955 | "syn 2.0.68", 2956 | ] 2957 | 2958 | [[package]] 2959 | name = "tracing-core" 2960 | version = "0.1.32" 2961 | source = "registry+https://github.com/rust-lang/crates.io-index" 2962 | checksum = "c06d3da6113f116aaee68e4d601191614c9053067f9ab7f6edbcb161237daa54" 2963 | dependencies = [ 2964 | "once_cell", 2965 | ] 2966 | 2967 | [[package]] 2968 | name = "ttf-parser" 2969 | version = "0.19.2" 2970 | source = "registry+https://github.com/rust-lang/crates.io-index" 2971 | checksum = "49d64318d8311fc2668e48b63969f4343e0a85c4a109aa8460d6672e364b8bd1" 2972 | 2973 | [[package]] 2974 | name = "ttf-parser" 2975 | version = "0.20.0" 2976 | source = "registry+https://github.com/rust-lang/crates.io-index" 2977 | checksum = "17f77d76d837a7830fe1d4f12b7b4ba4192c1888001c7164257e4bc6d21d96b4" 2978 | 2979 | [[package]] 2980 | name = "ttf-parser" 2981 | version = "0.21.1" 2982 | source = "registry+https://github.com/rust-lang/crates.io-index" 2983 | checksum = "2c591d83f69777866b9126b24c6dd9a18351f177e49d625920d19f989fd31cf8" 2984 | 2985 | [[package]] 2986 | name = "twenty" 2987 | version = "0.1.0" 2988 | dependencies = [ 2989 | "iced", 2990 | "iced_sessionlock", 2991 | "notify-rust", 2992 | "tokio", 2993 | ] 2994 | 2995 | [[package]] 2996 | name = "typenum" 2997 | version = "1.17.0" 2998 | source = "registry+https://github.com/rust-lang/crates.io-index" 2999 | checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825" 3000 | 3001 | [[package]] 3002 | name = "uds_windows" 3003 | version = "1.1.0" 3004 | source = "registry+https://github.com/rust-lang/crates.io-index" 3005 | checksum = "89daebc3e6fd160ac4aa9fc8b3bf71e1f74fbf92367ae71fb83a037e8bf164b9" 3006 | dependencies = [ 3007 | "memoffset", 3008 | "tempfile", 3009 | "winapi", 3010 | ] 3011 | 3012 | [[package]] 3013 | name = "unicode-bidi" 3014 | version = "0.3.15" 3015 | source = "registry+https://github.com/rust-lang/crates.io-index" 3016 | checksum = "08f95100a766bf4f8f28f90d77e0a5461bbdb219042e7679bebe79004fed8d75" 3017 | 3018 | [[package]] 3019 | name = "unicode-bidi-mirroring" 3020 | version = "0.1.0" 3021 | source = "registry+https://github.com/rust-lang/crates.io-index" 3022 | checksum = "56d12260fb92d52f9008be7e4bca09f584780eb2266dc8fecc6a192bec561694" 3023 | 3024 | [[package]] 3025 | name = "unicode-ccc" 3026 | version = "0.1.2" 3027 | source = "registry+https://github.com/rust-lang/crates.io-index" 3028 | checksum = "cc2520efa644f8268dce4dcd3050eaa7fc044fca03961e9998ac7e2e92b77cf1" 3029 | 3030 | [[package]] 3031 | name = "unicode-ident" 3032 | version = "1.0.12" 3033 | source = "registry+https://github.com/rust-lang/crates.io-index" 3034 | checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b" 3035 | 3036 | [[package]] 3037 | name = "unicode-linebreak" 3038 | version = "0.1.5" 3039 | source = "registry+https://github.com/rust-lang/crates.io-index" 3040 | checksum = "3b09c83c3c29d37506a3e260c08c03743a6bb66a9cd432c6934ab501a190571f" 3041 | 3042 | [[package]] 3043 | name = "unicode-properties" 3044 | version = "0.1.1" 3045 | source = "registry+https://github.com/rust-lang/crates.io-index" 3046 | checksum = "e4259d9d4425d9f0661581b804cb85fe66a4c631cadd8f490d1c13a35d5d9291" 3047 | 3048 | [[package]] 3049 | name = "unicode-script" 3050 | version = "0.5.6" 3051 | source = "registry+https://github.com/rust-lang/crates.io-index" 3052 | checksum = "ad8d71f5726e5f285a935e9fe8edfd53f0491eb6e9a5774097fdabee7cd8c9cd" 3053 | 3054 | [[package]] 3055 | name = "unicode-segmentation" 3056 | version = "1.11.0" 3057 | source = "registry+https://github.com/rust-lang/crates.io-index" 3058 | checksum = "d4c87d22b6e3f4a18d4d40ef354e97c90fcb14dd91d7dc0aa9d8a1172ebf7202" 3059 | 3060 | [[package]] 3061 | name = "unicode-width" 3062 | version = "0.1.13" 3063 | source = "registry+https://github.com/rust-lang/crates.io-index" 3064 | checksum = "0336d538f7abc86d282a4189614dfaa90810dfc2c6f6427eaf88e16311dd225d" 3065 | 3066 | [[package]] 3067 | name = "unicode-xid" 3068 | version = "0.2.4" 3069 | source = "registry+https://github.com/rust-lang/crates.io-index" 3070 | checksum = "f962df74c8c05a667b5ee8bcf162993134c104e96440b663c8daa176dc772d8c" 3071 | 3072 | [[package]] 3073 | name = "version_check" 3074 | version = "0.9.4" 3075 | source = "registry+https://github.com/rust-lang/crates.io-index" 3076 | checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f" 3077 | 3078 | [[package]] 3079 | name = "walkdir" 3080 | version = "2.5.0" 3081 | source = "registry+https://github.com/rust-lang/crates.io-index" 3082 | checksum = "29790946404f91d9c5d06f9874efddea1dc06c5efe94541a7d6863108e3a5e4b" 3083 | dependencies = [ 3084 | "same-file", 3085 | "winapi-util", 3086 | ] 3087 | 3088 | [[package]] 3089 | name = "wasi" 3090 | version = "0.11.0+wasi-snapshot-preview1" 3091 | source = "registry+https://github.com/rust-lang/crates.io-index" 3092 | checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" 3093 | 3094 | [[package]] 3095 | name = "wasm-bindgen" 3096 | version = "0.2.92" 3097 | source = "registry+https://github.com/rust-lang/crates.io-index" 3098 | checksum = "4be2531df63900aeb2bca0daaaddec08491ee64ceecbee5076636a3b026795a8" 3099 | dependencies = [ 3100 | "cfg-if", 3101 | "wasm-bindgen-macro", 3102 | ] 3103 | 3104 | [[package]] 3105 | name = "wasm-bindgen-backend" 3106 | version = "0.2.92" 3107 | source = "registry+https://github.com/rust-lang/crates.io-index" 3108 | checksum = "614d787b966d3989fa7bb98a654e369c762374fd3213d212cfc0251257e747da" 3109 | dependencies = [ 3110 | "bumpalo", 3111 | "log", 3112 | "once_cell", 3113 | "proc-macro2", 3114 | "quote", 3115 | "syn 2.0.68", 3116 | "wasm-bindgen-shared", 3117 | ] 3118 | 3119 | [[package]] 3120 | name = "wasm-bindgen-futures" 3121 | version = "0.4.42" 3122 | source = "registry+https://github.com/rust-lang/crates.io-index" 3123 | checksum = "76bc14366121efc8dbb487ab05bcc9d346b3b5ec0eaa76e46594cabbe51762c0" 3124 | dependencies = [ 3125 | "cfg-if", 3126 | "js-sys", 3127 | "wasm-bindgen", 3128 | "web-sys", 3129 | ] 3130 | 3131 | [[package]] 3132 | name = "wasm-bindgen-macro" 3133 | version = "0.2.92" 3134 | source = "registry+https://github.com/rust-lang/crates.io-index" 3135 | checksum = "a1f8823de937b71b9460c0c34e25f3da88250760bec0ebac694b49997550d726" 3136 | dependencies = [ 3137 | "quote", 3138 | "wasm-bindgen-macro-support", 3139 | ] 3140 | 3141 | [[package]] 3142 | name = "wasm-bindgen-macro-support" 3143 | version = "0.2.92" 3144 | source = "registry+https://github.com/rust-lang/crates.io-index" 3145 | checksum = "e94f17b526d0a461a191c78ea52bbce64071ed5c04c9ffe424dcb38f74171bb7" 3146 | dependencies = [ 3147 | "proc-macro2", 3148 | "quote", 3149 | "syn 2.0.68", 3150 | "wasm-bindgen-backend", 3151 | "wasm-bindgen-shared", 3152 | ] 3153 | 3154 | [[package]] 3155 | name = "wasm-bindgen-shared" 3156 | version = "0.2.92" 3157 | source = "registry+https://github.com/rust-lang/crates.io-index" 3158 | checksum = "af190c94f2773fdb3729c55b007a722abb5384da03bc0986df4c289bf5567e96" 3159 | 3160 | [[package]] 3161 | name = "wasm-timer" 3162 | version = "0.2.5" 3163 | source = "registry+https://github.com/rust-lang/crates.io-index" 3164 | checksum = "be0ecb0db480561e9a7642b5d3e4187c128914e58aa84330b9493e3eb68c5e7f" 3165 | dependencies = [ 3166 | "futures", 3167 | "js-sys", 3168 | "parking_lot 0.11.2", 3169 | "pin-utils", 3170 | "wasm-bindgen", 3171 | "wasm-bindgen-futures", 3172 | "web-sys", 3173 | ] 3174 | 3175 | [[package]] 3176 | name = "wayland-backend" 3177 | version = "0.3.4" 3178 | source = "registry+https://github.com/rust-lang/crates.io-index" 3179 | checksum = "34e9e6b6d4a2bb4e7e69433e0b35c7923b95d4dc8503a84d25ec917a4bbfdf07" 3180 | dependencies = [ 3181 | "cc", 3182 | "downcast-rs", 3183 | "rustix", 3184 | "scoped-tls", 3185 | "smallvec", 3186 | "wayland-sys", 3187 | ] 3188 | 3189 | [[package]] 3190 | name = "wayland-client" 3191 | version = "0.31.3" 3192 | source = "registry+https://github.com/rust-lang/crates.io-index" 3193 | checksum = "1e63801c85358a431f986cffa74ba9599ff571fc5774ac113ed3b490c19a1133" 3194 | dependencies = [ 3195 | "bitflags 2.6.0", 3196 | "rustix", 3197 | "wayland-backend", 3198 | "wayland-scanner", 3199 | ] 3200 | 3201 | [[package]] 3202 | name = "wayland-csd-frame" 3203 | version = "0.3.0" 3204 | source = "registry+https://github.com/rust-lang/crates.io-index" 3205 | checksum = "625c5029dbd43d25e6aa9615e88b829a5cad13b2819c4ae129fdbb7c31ab4c7e" 3206 | dependencies = [ 3207 | "bitflags 2.6.0", 3208 | "cursor-icon", 3209 | "wayland-backend", 3210 | ] 3211 | 3212 | [[package]] 3213 | name = "wayland-cursor" 3214 | version = "0.31.3" 3215 | source = "registry+https://github.com/rust-lang/crates.io-index" 3216 | checksum = "a206e8b2b53b1d3fcb9428fec72bc278ce539e2fa81fe2bfc1ab27703d5187b9" 3217 | dependencies = [ 3218 | "rustix", 3219 | "wayland-client", 3220 | "xcursor", 3221 | ] 3222 | 3223 | [[package]] 3224 | name = "wayland-protocols" 3225 | version = "0.31.2" 3226 | source = "registry+https://github.com/rust-lang/crates.io-index" 3227 | checksum = "8f81f365b8b4a97f422ac0e8737c438024b5951734506b0e1d775c73030561f4" 3228 | dependencies = [ 3229 | "bitflags 2.6.0", 3230 | "wayland-backend", 3231 | "wayland-client", 3232 | "wayland-scanner", 3233 | ] 3234 | 3235 | [[package]] 3236 | name = "wayland-protocols-misc" 3237 | version = "0.2.0" 3238 | source = "registry+https://github.com/rust-lang/crates.io-index" 3239 | checksum = "bfa5933740b200188c9b4c38601b8212e8c154d7de0d2cb171944e137a77de1e" 3240 | dependencies = [ 3241 | "bitflags 2.6.0", 3242 | "wayland-backend", 3243 | "wayland-client", 3244 | "wayland-protocols", 3245 | "wayland-scanner", 3246 | ] 3247 | 3248 | [[package]] 3249 | name = "wayland-protocols-plasma" 3250 | version = "0.2.0" 3251 | source = "registry+https://github.com/rust-lang/crates.io-index" 3252 | checksum = "23803551115ff9ea9bce586860c5c5a971e360825a0309264102a9495a5ff479" 3253 | dependencies = [ 3254 | "bitflags 2.6.0", 3255 | "wayland-backend", 3256 | "wayland-client", 3257 | "wayland-protocols", 3258 | "wayland-scanner", 3259 | ] 3260 | 3261 | [[package]] 3262 | name = "wayland-protocols-wlr" 3263 | version = "0.2.0" 3264 | source = "registry+https://github.com/rust-lang/crates.io-index" 3265 | checksum = "ad1f61b76b6c2d8742e10f9ba5c3737f6530b4c243132c2a2ccc8aa96fe25cd6" 3266 | dependencies = [ 3267 | "bitflags 2.6.0", 3268 | "wayland-backend", 3269 | "wayland-client", 3270 | "wayland-protocols", 3271 | "wayland-scanner", 3272 | ] 3273 | 3274 | [[package]] 3275 | name = "wayland-scanner" 3276 | version = "0.31.2" 3277 | source = "registry+https://github.com/rust-lang/crates.io-index" 3278 | checksum = "67da50b9f80159dec0ea4c11c13e24ef9e7574bd6ce24b01860a175010cea565" 3279 | dependencies = [ 3280 | "proc-macro2", 3281 | "quick-xml", 3282 | "quote", 3283 | ] 3284 | 3285 | [[package]] 3286 | name = "wayland-sys" 3287 | version = "0.31.2" 3288 | source = "registry+https://github.com/rust-lang/crates.io-index" 3289 | checksum = "105b1842da6554f91526c14a2a2172897b7f745a805d62af4ce698706be79c12" 3290 | dependencies = [ 3291 | "dlib", 3292 | "log", 3293 | "once_cell", 3294 | "pkg-config", 3295 | ] 3296 | 3297 | [[package]] 3298 | name = "web-sys" 3299 | version = "0.3.67" 3300 | source = "registry+https://github.com/rust-lang/crates.io-index" 3301 | checksum = "58cd2333b6e0be7a39605f0e255892fd7418a682d8da8fe042fe25128794d2ed" 3302 | dependencies = [ 3303 | "js-sys", 3304 | "wasm-bindgen", 3305 | ] 3306 | 3307 | [[package]] 3308 | name = "web-time" 3309 | version = "0.2.4" 3310 | source = "registry+https://github.com/rust-lang/crates.io-index" 3311 | checksum = "aa30049b1c872b72c89866d458eae9f20380ab280ffd1b1e18df2d3e2d98cfe0" 3312 | dependencies = [ 3313 | "js-sys", 3314 | "wasm-bindgen", 3315 | ] 3316 | 3317 | [[package]] 3318 | name = "wgpu" 3319 | version = "0.19.4" 3320 | source = "registry+https://github.com/rust-lang/crates.io-index" 3321 | checksum = "cbd7311dbd2abcfebaabf1841a2824ed7c8be443a0f29166e5d3c6a53a762c01" 3322 | dependencies = [ 3323 | "arrayvec", 3324 | "cfg-if", 3325 | "cfg_aliases 0.1.1", 3326 | "js-sys", 3327 | "log", 3328 | "naga", 3329 | "parking_lot 0.12.3", 3330 | "profiling", 3331 | "raw-window-handle", 3332 | "smallvec", 3333 | "static_assertions", 3334 | "wasm-bindgen", 3335 | "wasm-bindgen-futures", 3336 | "web-sys", 3337 | "wgpu-core", 3338 | "wgpu-hal", 3339 | "wgpu-types", 3340 | ] 3341 | 3342 | [[package]] 3343 | name = "wgpu-core" 3344 | version = "0.19.4" 3345 | source = "registry+https://github.com/rust-lang/crates.io-index" 3346 | checksum = "28b94525fc99ba9e5c9a9e24764f2bc29bad0911a7446c12f446a8277369bf3a" 3347 | dependencies = [ 3348 | "arrayvec", 3349 | "bit-vec", 3350 | "bitflags 2.6.0", 3351 | "cfg_aliases 0.1.1", 3352 | "codespan-reporting", 3353 | "indexmap", 3354 | "log", 3355 | "naga", 3356 | "once_cell", 3357 | "parking_lot 0.12.3", 3358 | "profiling", 3359 | "raw-window-handle", 3360 | "rustc-hash", 3361 | "smallvec", 3362 | "thiserror", 3363 | "web-sys", 3364 | "wgpu-hal", 3365 | "wgpu-types", 3366 | ] 3367 | 3368 | [[package]] 3369 | name = "wgpu-hal" 3370 | version = "0.19.4" 3371 | source = "registry+https://github.com/rust-lang/crates.io-index" 3372 | checksum = "fc1a4924366df7ab41a5d8546d6534f1f33231aa5b3f72b9930e300f254e39c3" 3373 | dependencies = [ 3374 | "android_system_properties", 3375 | "arrayvec", 3376 | "ash", 3377 | "bit-set", 3378 | "bitflags 2.6.0", 3379 | "block", 3380 | "cfg_aliases 0.1.1", 3381 | "core-graphics-types", 3382 | "d3d12", 3383 | "glow", 3384 | "glutin_wgl_sys", 3385 | "gpu-alloc", 3386 | "gpu-allocator", 3387 | "gpu-descriptor", 3388 | "hassle-rs", 3389 | "js-sys", 3390 | "khronos-egl", 3391 | "libc", 3392 | "libloading 0.8.4", 3393 | "log", 3394 | "metal", 3395 | "naga", 3396 | "ndk-sys", 3397 | "objc", 3398 | "once_cell", 3399 | "parking_lot 0.12.3", 3400 | "profiling", 3401 | "range-alloc", 3402 | "raw-window-handle", 3403 | "renderdoc-sys", 3404 | "rustc-hash", 3405 | "smallvec", 3406 | "thiserror", 3407 | "wasm-bindgen", 3408 | "web-sys", 3409 | "wgpu-types", 3410 | "winapi", 3411 | ] 3412 | 3413 | [[package]] 3414 | name = "wgpu-types" 3415 | version = "0.19.2" 3416 | source = "registry+https://github.com/rust-lang/crates.io-index" 3417 | checksum = "b671ff9fb03f78b46ff176494ee1ebe7d603393f42664be55b64dc8d53969805" 3418 | dependencies = [ 3419 | "bitflags 2.6.0", 3420 | "js-sys", 3421 | "web-sys", 3422 | ] 3423 | 3424 | [[package]] 3425 | name = "widestring" 3426 | version = "1.1.0" 3427 | source = "registry+https://github.com/rust-lang/crates.io-index" 3428 | checksum = "7219d36b6eac893fa81e84ebe06485e7dcbb616177469b142df14f1f4deb1311" 3429 | 3430 | [[package]] 3431 | name = "winapi" 3432 | version = "0.3.9" 3433 | source = "registry+https://github.com/rust-lang/crates.io-index" 3434 | checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419" 3435 | dependencies = [ 3436 | "winapi-i686-pc-windows-gnu", 3437 | "winapi-x86_64-pc-windows-gnu", 3438 | ] 3439 | 3440 | [[package]] 3441 | name = "winapi-i686-pc-windows-gnu" 3442 | version = "0.4.0" 3443 | source = "registry+https://github.com/rust-lang/crates.io-index" 3444 | checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" 3445 | 3446 | [[package]] 3447 | name = "winapi-util" 3448 | version = "0.1.8" 3449 | source = "registry+https://github.com/rust-lang/crates.io-index" 3450 | checksum = "4d4cc384e1e73b93bafa6fb4f1df8c41695c8a91cf9c4c64358067d15a7b6c6b" 3451 | dependencies = [ 3452 | "windows-sys 0.52.0", 3453 | ] 3454 | 3455 | [[package]] 3456 | name = "winapi-x86_64-pc-windows-gnu" 3457 | version = "0.4.0" 3458 | source = "registry+https://github.com/rust-lang/crates.io-index" 3459 | checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" 3460 | 3461 | [[package]] 3462 | name = "window_clipboard" 3463 | version = "0.4.1" 3464 | source = "registry+https://github.com/rust-lang/crates.io-index" 3465 | checksum = "f6d692d46038c433f9daee7ad8757e002a4248c20b0a3fbc991d99521d3bcb6d" 3466 | dependencies = [ 3467 | "clipboard-win", 3468 | "clipboard_macos", 3469 | "clipboard_wayland", 3470 | "clipboard_x11", 3471 | "raw-window-handle", 3472 | "thiserror", 3473 | ] 3474 | 3475 | [[package]] 3476 | name = "windows" 3477 | version = "0.52.0" 3478 | source = "registry+https://github.com/rust-lang/crates.io-index" 3479 | checksum = "e48a53791691ab099e5e2ad123536d0fff50652600abaf43bbf952894110d0be" 3480 | dependencies = [ 3481 | "windows-core 0.52.0", 3482 | "windows-targets 0.52.5", 3483 | ] 3484 | 3485 | [[package]] 3486 | name = "windows" 3487 | version = "0.56.0" 3488 | source = "registry+https://github.com/rust-lang/crates.io-index" 3489 | checksum = "1de69df01bdf1ead2f4ac895dc77c9351aefff65b2f3db429a343f9cbf05e132" 3490 | dependencies = [ 3491 | "windows-core 0.56.0", 3492 | "windows-targets 0.52.5", 3493 | ] 3494 | 3495 | [[package]] 3496 | name = "windows-core" 3497 | version = "0.52.0" 3498 | source = "registry+https://github.com/rust-lang/crates.io-index" 3499 | checksum = "33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9" 3500 | dependencies = [ 3501 | "windows-targets 0.52.5", 3502 | ] 3503 | 3504 | [[package]] 3505 | name = "windows-core" 3506 | version = "0.56.0" 3507 | source = "registry+https://github.com/rust-lang/crates.io-index" 3508 | checksum = "4698e52ed2d08f8658ab0c39512a7c00ee5fe2688c65f8c0a4f06750d729f2a6" 3509 | dependencies = [ 3510 | "windows-implement", 3511 | "windows-interface", 3512 | "windows-result", 3513 | "windows-targets 0.52.5", 3514 | ] 3515 | 3516 | [[package]] 3517 | name = "windows-implement" 3518 | version = "0.56.0" 3519 | source = "registry+https://github.com/rust-lang/crates.io-index" 3520 | checksum = "f6fc35f58ecd95a9b71c4f2329b911016e6bec66b3f2e6a4aad86bd2e99e2f9b" 3521 | dependencies = [ 3522 | "proc-macro2", 3523 | "quote", 3524 | "syn 2.0.68", 3525 | ] 3526 | 3527 | [[package]] 3528 | name = "windows-interface" 3529 | version = "0.56.0" 3530 | source = "registry+https://github.com/rust-lang/crates.io-index" 3531 | checksum = "08990546bf4edef8f431fa6326e032865f27138718c587dc21bc0265bbcb57cc" 3532 | dependencies = [ 3533 | "proc-macro2", 3534 | "quote", 3535 | "syn 2.0.68", 3536 | ] 3537 | 3538 | [[package]] 3539 | name = "windows-result" 3540 | version = "0.1.2" 3541 | source = "registry+https://github.com/rust-lang/crates.io-index" 3542 | checksum = "5e383302e8ec8515204254685643de10811af0ed97ea37210dc26fb0032647f8" 3543 | dependencies = [ 3544 | "windows-targets 0.52.5", 3545 | ] 3546 | 3547 | [[package]] 3548 | name = "windows-sys" 3549 | version = "0.45.0" 3550 | source = "registry+https://github.com/rust-lang/crates.io-index" 3551 | checksum = "75283be5efb2831d37ea142365f009c02ec203cd29a3ebecbc093d52315b66d0" 3552 | dependencies = [ 3553 | "windows-targets 0.42.2", 3554 | ] 3555 | 3556 | [[package]] 3557 | name = "windows-sys" 3558 | version = "0.48.0" 3559 | source = "registry+https://github.com/rust-lang/crates.io-index" 3560 | checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9" 3561 | dependencies = [ 3562 | "windows-targets 0.48.5", 3563 | ] 3564 | 3565 | [[package]] 3566 | name = "windows-sys" 3567 | version = "0.52.0" 3568 | source = "registry+https://github.com/rust-lang/crates.io-index" 3569 | checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" 3570 | dependencies = [ 3571 | "windows-targets 0.52.5", 3572 | ] 3573 | 3574 | [[package]] 3575 | name = "windows-targets" 3576 | version = "0.42.2" 3577 | source = "registry+https://github.com/rust-lang/crates.io-index" 3578 | checksum = "8e5180c00cd44c9b1c88adb3693291f1cd93605ded80c250a75d472756b4d071" 3579 | dependencies = [ 3580 | "windows_aarch64_gnullvm 0.42.2", 3581 | "windows_aarch64_msvc 0.42.2", 3582 | "windows_i686_gnu 0.42.2", 3583 | "windows_i686_msvc 0.42.2", 3584 | "windows_x86_64_gnu 0.42.2", 3585 | "windows_x86_64_gnullvm 0.42.2", 3586 | "windows_x86_64_msvc 0.42.2", 3587 | ] 3588 | 3589 | [[package]] 3590 | name = "windows-targets" 3591 | version = "0.48.5" 3592 | source = "registry+https://github.com/rust-lang/crates.io-index" 3593 | checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c" 3594 | dependencies = [ 3595 | "windows_aarch64_gnullvm 0.48.5", 3596 | "windows_aarch64_msvc 0.48.5", 3597 | "windows_i686_gnu 0.48.5", 3598 | "windows_i686_msvc 0.48.5", 3599 | "windows_x86_64_gnu 0.48.5", 3600 | "windows_x86_64_gnullvm 0.48.5", 3601 | "windows_x86_64_msvc 0.48.5", 3602 | ] 3603 | 3604 | [[package]] 3605 | name = "windows-targets" 3606 | version = "0.52.5" 3607 | source = "registry+https://github.com/rust-lang/crates.io-index" 3608 | checksum = "6f0713a46559409d202e70e28227288446bf7841d3211583a4b53e3f6d96e7eb" 3609 | dependencies = [ 3610 | "windows_aarch64_gnullvm 0.52.5", 3611 | "windows_aarch64_msvc 0.52.5", 3612 | "windows_i686_gnu 0.52.5", 3613 | "windows_i686_gnullvm", 3614 | "windows_i686_msvc 0.52.5", 3615 | "windows_x86_64_gnu 0.52.5", 3616 | "windows_x86_64_gnullvm 0.52.5", 3617 | "windows_x86_64_msvc 0.52.5", 3618 | ] 3619 | 3620 | [[package]] 3621 | name = "windows-version" 3622 | version = "0.1.1" 3623 | source = "registry+https://github.com/rust-lang/crates.io-index" 3624 | checksum = "6998aa457c9ba8ff2fb9f13e9d2a930dabcea28f1d0ab94d687d8b3654844515" 3625 | dependencies = [ 3626 | "windows-targets 0.52.5", 3627 | ] 3628 | 3629 | [[package]] 3630 | name = "windows_aarch64_gnullvm" 3631 | version = "0.42.2" 3632 | source = "registry+https://github.com/rust-lang/crates.io-index" 3633 | checksum = "597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8" 3634 | 3635 | [[package]] 3636 | name = "windows_aarch64_gnullvm" 3637 | version = "0.48.5" 3638 | source = "registry+https://github.com/rust-lang/crates.io-index" 3639 | checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8" 3640 | 3641 | [[package]] 3642 | name = "windows_aarch64_gnullvm" 3643 | version = "0.52.5" 3644 | source = "registry+https://github.com/rust-lang/crates.io-index" 3645 | checksum = "7088eed71e8b8dda258ecc8bac5fb1153c5cffaf2578fc8ff5d61e23578d3263" 3646 | 3647 | [[package]] 3648 | name = "windows_aarch64_msvc" 3649 | version = "0.42.2" 3650 | source = "registry+https://github.com/rust-lang/crates.io-index" 3651 | checksum = "e08e8864a60f06ef0d0ff4ba04124db8b0fb3be5776a5cd47641e942e58c4d43" 3652 | 3653 | [[package]] 3654 | name = "windows_aarch64_msvc" 3655 | version = "0.48.5" 3656 | source = "registry+https://github.com/rust-lang/crates.io-index" 3657 | checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc" 3658 | 3659 | [[package]] 3660 | name = "windows_aarch64_msvc" 3661 | version = "0.52.5" 3662 | source = "registry+https://github.com/rust-lang/crates.io-index" 3663 | checksum = "9985fd1504e250c615ca5f281c3f7a6da76213ebd5ccc9561496568a2752afb6" 3664 | 3665 | [[package]] 3666 | name = "windows_i686_gnu" 3667 | version = "0.42.2" 3668 | source = "registry+https://github.com/rust-lang/crates.io-index" 3669 | checksum = "c61d927d8da41da96a81f029489353e68739737d3beca43145c8afec9a31a84f" 3670 | 3671 | [[package]] 3672 | name = "windows_i686_gnu" 3673 | version = "0.48.5" 3674 | source = "registry+https://github.com/rust-lang/crates.io-index" 3675 | checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e" 3676 | 3677 | [[package]] 3678 | name = "windows_i686_gnu" 3679 | version = "0.52.5" 3680 | source = "registry+https://github.com/rust-lang/crates.io-index" 3681 | checksum = "88ba073cf16d5372720ec942a8ccbf61626074c6d4dd2e745299726ce8b89670" 3682 | 3683 | [[package]] 3684 | name = "windows_i686_gnullvm" 3685 | version = "0.52.5" 3686 | source = "registry+https://github.com/rust-lang/crates.io-index" 3687 | checksum = "87f4261229030a858f36b459e748ae97545d6f1ec60e5e0d6a3d32e0dc232ee9" 3688 | 3689 | [[package]] 3690 | name = "windows_i686_msvc" 3691 | version = "0.42.2" 3692 | source = "registry+https://github.com/rust-lang/crates.io-index" 3693 | checksum = "44d840b6ec649f480a41c8d80f9c65108b92d89345dd94027bfe06ac444d1060" 3694 | 3695 | [[package]] 3696 | name = "windows_i686_msvc" 3697 | version = "0.48.5" 3698 | source = "registry+https://github.com/rust-lang/crates.io-index" 3699 | checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406" 3700 | 3701 | [[package]] 3702 | name = "windows_i686_msvc" 3703 | version = "0.52.5" 3704 | source = "registry+https://github.com/rust-lang/crates.io-index" 3705 | checksum = "db3c2bf3d13d5b658be73463284eaf12830ac9a26a90c717b7f771dfe97487bf" 3706 | 3707 | [[package]] 3708 | name = "windows_x86_64_gnu" 3709 | version = "0.42.2" 3710 | source = "registry+https://github.com/rust-lang/crates.io-index" 3711 | checksum = "8de912b8b8feb55c064867cf047dda097f92d51efad5b491dfb98f6bbb70cb36" 3712 | 3713 | [[package]] 3714 | name = "windows_x86_64_gnu" 3715 | version = "0.48.5" 3716 | source = "registry+https://github.com/rust-lang/crates.io-index" 3717 | checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e" 3718 | 3719 | [[package]] 3720 | name = "windows_x86_64_gnu" 3721 | version = "0.52.5" 3722 | source = "registry+https://github.com/rust-lang/crates.io-index" 3723 | checksum = "4e4246f76bdeff09eb48875a0fd3e2af6aada79d409d33011886d3e1581517d9" 3724 | 3725 | [[package]] 3726 | name = "windows_x86_64_gnullvm" 3727 | version = "0.42.2" 3728 | source = "registry+https://github.com/rust-lang/crates.io-index" 3729 | checksum = "26d41b46a36d453748aedef1486d5c7a85db22e56aff34643984ea85514e94a3" 3730 | 3731 | [[package]] 3732 | name = "windows_x86_64_gnullvm" 3733 | version = "0.48.5" 3734 | source = "registry+https://github.com/rust-lang/crates.io-index" 3735 | checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc" 3736 | 3737 | [[package]] 3738 | name = "windows_x86_64_gnullvm" 3739 | version = "0.52.5" 3740 | source = "registry+https://github.com/rust-lang/crates.io-index" 3741 | checksum = "852298e482cd67c356ddd9570386e2862b5673c85bd5f88df9ab6802b334c596" 3742 | 3743 | [[package]] 3744 | name = "windows_x86_64_msvc" 3745 | version = "0.42.2" 3746 | source = "registry+https://github.com/rust-lang/crates.io-index" 3747 | checksum = "9aec5da331524158c6d1a4ac0ab1541149c0b9505fde06423b02f5ef0106b9f0" 3748 | 3749 | [[package]] 3750 | name = "windows_x86_64_msvc" 3751 | version = "0.48.5" 3752 | source = "registry+https://github.com/rust-lang/crates.io-index" 3753 | checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538" 3754 | 3755 | [[package]] 3756 | name = "windows_x86_64_msvc" 3757 | version = "0.52.5" 3758 | source = "registry+https://github.com/rust-lang/crates.io-index" 3759 | checksum = "bec47e5bfd1bff0eeaf6d8b485cc1074891a197ab4225d504cb7a1ab88b02bf0" 3760 | 3761 | [[package]] 3762 | name = "winit" 3763 | version = "0.29.15" 3764 | source = "registry+https://github.com/rust-lang/crates.io-index" 3765 | checksum = "0d59ad965a635657faf09c8f062badd885748428933dad8e8bdd64064d92e5ca" 3766 | dependencies = [ 3767 | "ahash", 3768 | "android-activity", 3769 | "atomic-waker", 3770 | "bitflags 2.6.0", 3771 | "bytemuck", 3772 | "calloop", 3773 | "cfg_aliases 0.1.1", 3774 | "core-foundation", 3775 | "core-graphics", 3776 | "cursor-icon", 3777 | "icrate", 3778 | "js-sys", 3779 | "libc", 3780 | "log", 3781 | "memmap2 0.9.4", 3782 | "ndk", 3783 | "ndk-sys", 3784 | "objc2 0.4.1", 3785 | "once_cell", 3786 | "orbclient", 3787 | "percent-encoding", 3788 | "raw-window-handle", 3789 | "redox_syscall 0.3.5", 3790 | "rustix", 3791 | "sctk-adwaita", 3792 | "smithay-client-toolkit", 3793 | "smol_str", 3794 | "unicode-segmentation", 3795 | "wasm-bindgen", 3796 | "wasm-bindgen-futures", 3797 | "wayland-backend", 3798 | "wayland-client", 3799 | "wayland-protocols", 3800 | "wayland-protocols-plasma", 3801 | "web-sys", 3802 | "web-time", 3803 | "windows-sys 0.48.0", 3804 | "x11-dl", 3805 | "x11rb", 3806 | "xkbcommon-dl", 3807 | ] 3808 | 3809 | [[package]] 3810 | name = "winnow" 3811 | version = "0.5.40" 3812 | source = "registry+https://github.com/rust-lang/crates.io-index" 3813 | checksum = "f593a95398737aeed53e489c785df13f3618e41dbcd6718c6addbf1395aa6876" 3814 | dependencies = [ 3815 | "memchr", 3816 | ] 3817 | 3818 | [[package]] 3819 | name = "x11-dl" 3820 | version = "2.21.0" 3821 | source = "registry+https://github.com/rust-lang/crates.io-index" 3822 | checksum = "38735924fedd5314a6e548792904ed8c6de6636285cb9fec04d5b1db85c1516f" 3823 | dependencies = [ 3824 | "libc", 3825 | "once_cell", 3826 | "pkg-config", 3827 | ] 3828 | 3829 | [[package]] 3830 | name = "x11rb" 3831 | version = "0.13.1" 3832 | source = "registry+https://github.com/rust-lang/crates.io-index" 3833 | checksum = "5d91ffca73ee7f68ce055750bf9f6eca0780b8c85eff9bc046a3b0da41755e12" 3834 | dependencies = [ 3835 | "as-raw-xcb-connection", 3836 | "gethostname", 3837 | "libc", 3838 | "libloading 0.8.4", 3839 | "once_cell", 3840 | "rustix", 3841 | "x11rb-protocol", 3842 | ] 3843 | 3844 | [[package]] 3845 | name = "x11rb-protocol" 3846 | version = "0.13.1" 3847 | source = "registry+https://github.com/rust-lang/crates.io-index" 3848 | checksum = "ec107c4503ea0b4a98ef47356329af139c0a4f7750e621cf2973cd3385ebcb3d" 3849 | 3850 | [[package]] 3851 | name = "xcursor" 3852 | version = "0.3.5" 3853 | source = "registry+https://github.com/rust-lang/crates.io-index" 3854 | checksum = "6a0ccd7b4a5345edfcd0c3535718a4e9ff7798ffc536bb5b5a0e26ff84732911" 3855 | 3856 | [[package]] 3857 | name = "xdg-home" 3858 | version = "1.2.0" 3859 | source = "registry+https://github.com/rust-lang/crates.io-index" 3860 | checksum = "ca91dcf8f93db085f3a0a29358cd0b9d670915468f4290e8b85d118a34211ab8" 3861 | dependencies = [ 3862 | "libc", 3863 | "windows-sys 0.52.0", 3864 | ] 3865 | 3866 | [[package]] 3867 | name = "xkbcommon" 3868 | version = "0.7.0" 3869 | source = "registry+https://github.com/rust-lang/crates.io-index" 3870 | checksum = "13867d259930edc7091a6c41b4ce6eee464328c6ff9659b7e4c668ca20d4c91e" 3871 | dependencies = [ 3872 | "libc", 3873 | "memmap2 0.8.0", 3874 | "xkeysym", 3875 | ] 3876 | 3877 | [[package]] 3878 | name = "xkbcommon-dl" 3879 | version = "0.4.2" 3880 | source = "registry+https://github.com/rust-lang/crates.io-index" 3881 | checksum = "d039de8032a9a8856a6be89cea3e5d12fdd82306ab7c94d74e6deab2460651c5" 3882 | dependencies = [ 3883 | "bitflags 2.6.0", 3884 | "dlib", 3885 | "log", 3886 | "once_cell", 3887 | "xkeysym", 3888 | ] 3889 | 3890 | [[package]] 3891 | name = "xkeysym" 3892 | version = "0.2.1" 3893 | source = "registry+https://github.com/rust-lang/crates.io-index" 3894 | checksum = "b9cc00251562a284751c9973bace760d86c0276c471b4be569fe6b068ee97a56" 3895 | dependencies = [ 3896 | "bytemuck", 3897 | ] 3898 | 3899 | [[package]] 3900 | name = "xml-rs" 3901 | version = "0.8.20" 3902 | source = "registry+https://github.com/rust-lang/crates.io-index" 3903 | checksum = "791978798f0597cfc70478424c2b4fdc2b7a8024aaff78497ef00f24ef674193" 3904 | 3905 | [[package]] 3906 | name = "xxhash-rust" 3907 | version = "0.8.10" 3908 | source = "registry+https://github.com/rust-lang/crates.io-index" 3909 | checksum = "927da81e25be1e1a2901d59b81b37dd2efd1fc9c9345a55007f09bf5a2d3ee03" 3910 | 3911 | [[package]] 3912 | name = "yazi" 3913 | version = "0.1.6" 3914 | source = "registry+https://github.com/rust-lang/crates.io-index" 3915 | checksum = "c94451ac9513335b5e23d7a8a2b61a7102398b8cca5160829d313e84c9d98be1" 3916 | 3917 | [[package]] 3918 | name = "zbus" 3919 | version = "4.3.1" 3920 | source = "registry+https://github.com/rust-lang/crates.io-index" 3921 | checksum = "851238c133804e0aa888edf4a0229481c753544ca12a60fd1c3230c8a500fe40" 3922 | dependencies = [ 3923 | "async-broadcast", 3924 | "async-executor", 3925 | "async-fs", 3926 | "async-io", 3927 | "async-lock", 3928 | "async-process", 3929 | "async-recursion", 3930 | "async-task", 3931 | "async-trait", 3932 | "blocking", 3933 | "enumflags2", 3934 | "event-listener", 3935 | "futures-core", 3936 | "futures-sink", 3937 | "futures-util", 3938 | "hex", 3939 | "nix", 3940 | "ordered-stream", 3941 | "rand", 3942 | "serde", 3943 | "serde_repr", 3944 | "sha1", 3945 | "static_assertions", 3946 | "tracing", 3947 | "uds_windows", 3948 | "windows-sys 0.52.0", 3949 | "xdg-home", 3950 | "zbus_macros", 3951 | "zbus_names", 3952 | "zvariant", 3953 | ] 3954 | 3955 | [[package]] 3956 | name = "zbus_macros" 3957 | version = "4.3.1" 3958 | source = "registry+https://github.com/rust-lang/crates.io-index" 3959 | checksum = "8d5a3f12c20bd473be3194af6b49d50d7bb804ef3192dc70eddedb26b85d9da7" 3960 | dependencies = [ 3961 | "proc-macro-crate", 3962 | "proc-macro2", 3963 | "quote", 3964 | "syn 2.0.68", 3965 | "zvariant_utils", 3966 | ] 3967 | 3968 | [[package]] 3969 | name = "zbus_names" 3970 | version = "3.0.0" 3971 | source = "registry+https://github.com/rust-lang/crates.io-index" 3972 | checksum = "4b9b1fef7d021261cc16cba64c351d291b715febe0fa10dc3a443ac5a5022e6c" 3973 | dependencies = [ 3974 | "serde", 3975 | "static_assertions", 3976 | "zvariant", 3977 | ] 3978 | 3979 | [[package]] 3980 | name = "zeno" 3981 | version = "0.2.3" 3982 | source = "registry+https://github.com/rust-lang/crates.io-index" 3983 | checksum = "dd15f8e0dbb966fd9245e7498c7e9e5055d9e5c8b676b95bd67091cd11a1e697" 3984 | 3985 | [[package]] 3986 | name = "zerocopy" 3987 | version = "0.7.34" 3988 | source = "registry+https://github.com/rust-lang/crates.io-index" 3989 | checksum = "ae87e3fcd617500e5d106f0380cf7b77f3c6092aae37191433159dda23cfb087" 3990 | dependencies = [ 3991 | "zerocopy-derive", 3992 | ] 3993 | 3994 | [[package]] 3995 | name = "zerocopy-derive" 3996 | version = "0.7.34" 3997 | source = "registry+https://github.com/rust-lang/crates.io-index" 3998 | checksum = "15e934569e47891f7d9411f1a451d947a60e000ab3bd24fbb970f000387d1b3b" 3999 | dependencies = [ 4000 | "proc-macro2", 4001 | "quote", 4002 | "syn 2.0.68", 4003 | ] 4004 | 4005 | [[package]] 4006 | name = "zvariant" 4007 | version = "4.1.2" 4008 | source = "registry+https://github.com/rust-lang/crates.io-index" 4009 | checksum = "1724a2b330760dc7d2a8402d841119dc869ef120b139d29862d6980e9c75bfc9" 4010 | dependencies = [ 4011 | "endi", 4012 | "enumflags2", 4013 | "serde", 4014 | "static_assertions", 4015 | "zvariant_derive", 4016 | ] 4017 | 4018 | [[package]] 4019 | name = "zvariant_derive" 4020 | version = "4.1.2" 4021 | source = "registry+https://github.com/rust-lang/crates.io-index" 4022 | checksum = "55025a7a518ad14518fb243559c058a2e5b848b015e31f1d90414f36e3317859" 4023 | dependencies = [ 4024 | "proc-macro-crate", 4025 | "proc-macro2", 4026 | "quote", 4027 | "syn 2.0.68", 4028 | "zvariant_utils", 4029 | ] 4030 | 4031 | [[package]] 4032 | name = "zvariant_utils" 4033 | version = "2.0.0" 4034 | source = "registry+https://github.com/rust-lang/crates.io-index" 4035 | checksum = "fc242db087efc22bd9ade7aa7809e4ba828132edc312871584a6b4391bdf8786" 4036 | dependencies = [ 4037 | "proc-macro2", 4038 | "quote", 4039 | "syn 2.0.68", 4040 | ] 4041 | -------------------------------------------------------------------------------- /Cargo.toml: -------------------------------------------------------------------------------- 1 | [package] 2 | name = "twenty" 3 | version = "0.1.0" 4 | edition = "2021" 5 | 6 | [dependencies] 7 | iced = { version = "0.12.1", features = ["tokio"] } 8 | iced_sessionlock = "0.2.5" 9 | tokio = { version = "1.38.0", features = ["sync"] } 10 | notify-rust = "4" 11 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Twenty 2 | 3 | 20-20-20 rule enforcer for compositors implementing ext-session-lock. 4 | Twenty makes sure that you look 20 ft away every 20 minutes for 20 seconds to relax your eyes. 5 | 6 | Uses [waycrate/exwlshelleventloop/iced_sessionlock](https://github.com/waycrate/exwlshelleventloop/tree/master/iced_sessionlock) 7 | for locking the screen. 8 | 9 | ### Installing 10 | 11 | You can compile it using `cargo` or via [baker](https://github.com/rv178/baker). 12 | 13 | via baker 14 | 15 | ``` 16 | bake setup 17 | bake 18 | sudo bake install 19 | ``` 20 | 21 | A binary will be copied to `./bin/twenty` 22 | 23 | via cargo 24 | 25 | ``` 26 | cargo build --release 27 | ``` 28 | 29 | A binary will be copied to `./target/release/` 30 | 31 | ### Usage 32 | 33 | [] indicates optional arguments. 34 | 35 | #### Initializing the program. 36 | 37 | ``` 38 | twenty --init [light/dark] 39 | ``` 40 | The lock screen defaults to dark mode unless specified otherwise. 41 | 42 | #### Killing the program 43 | 44 | ``` 45 | twenty --kill 46 | ``` 47 | 48 | ### Uninstalling 49 | 50 | ``` 51 | sudo bake uninstall 52 | ``` 53 | 54 | #### Authored by [rv178](https://github.com/rv178) and [shivkr6](https://github.com/shivkr6) 55 | -------------------------------------------------------------------------------- /recipe.toml: -------------------------------------------------------------------------------- 1 | [env] 2 | BIN_NAME="twenty" 3 | COMPILER_FLAGS="--release" 4 | INSTALL_PREFIX="/usr/bin" 5 | 6 | [build] 7 | cmd = """ 8 | cargo build $COMPILER_FLAGS && 9 | cp -r ./target/release/$BIN_NAME ./bin/$BIN_NAME 10 | """ 11 | 12 | [custom.clean] 13 | cmd = "cargo clean" 14 | run = false 15 | 16 | [custom.setup] 17 | cmd = """ 18 | mkdir -p bin && 19 | rustup install stable && 20 | rustup default stable 21 | """ 22 | run = false 23 | 24 | [custom.install] 25 | cmd = "cp ./bin/$BIN_NAME $INSTALL_PREFIX/$BIN_NAME" 26 | run = false 27 | 28 | [custom.uninstall] 29 | cmd = "rm -rf $INSTALL_PREFIX/$BIN_NAME" 30 | run = false 31 | 32 | [pre.fmt] 33 | cmd = "cargo fmt" 34 | -------------------------------------------------------------------------------- /src/main.rs: -------------------------------------------------------------------------------- 1 | mod session_lock; 2 | use notify_rust::Notification; 3 | use std::{cmp, env, process::exit, sync::atomic, thread, time}; 4 | 5 | #[macro_export] 6 | macro_rules! twenty_log { 7 | ($($arg:tt)*) => { 8 | println!("\x1b[32mTwenty:\x1b[0m {}", format!($($arg)*)); 9 | }; 10 | } 11 | 12 | fn main() { 13 | let args: Vec = env::args().collect(); 14 | 15 | match args.len().cmp(&1) { 16 | cmp::Ordering::Equal => { 17 | help(); 18 | } 19 | cmp::Ordering::Greater => match args[1].as_str() { 20 | "-h" | "--help" => { 21 | help(); 22 | } 23 | "-k" | "--kill" => { 24 | kill_twenty(); 25 | } 26 | "-i" | "--init" => { 27 | if args.len() == 3 { 28 | match args[2].as_str() { 29 | "light" => { 30 | session_lock::IS_DARKMODE.store(false, atomic::Ordering::Relaxed); 31 | } 32 | "dark" => { 33 | session_lock::IS_DARKMODE.store(true, atomic::Ordering::Relaxed); 34 | } 35 | _ => { 36 | twenty_log!("Not a valid theme!"); 37 | exit(1); 38 | } 39 | } 40 | } 41 | init(); 42 | } 43 | "-l" | "--lightmode" => { 44 | init(); 45 | } 46 | _ => { 47 | twenty_log!("Invalid option '{}'.", args[1]); 48 | exit(1); 49 | } 50 | }, 51 | cmp::Ordering::Less => { 52 | exit(1); 53 | } 54 | } 55 | } 56 | 57 | fn init() { 58 | twenty_log!("[Re]started twenty. Screen will be locked in 20 minutes for 20 seconds."); 59 | let twenty_mins_minus_ten_secs = time::Duration::from_secs(1190); 60 | thread::sleep(twenty_mins_minus_ten_secs); 61 | 62 | Notification::new() 63 | .summary("10 seconds remaining before lock") 64 | .body("Your screen will get locked for 20 seconds to make sure that you relax your eyes. Run twenty -k to stop.") 65 | .show() 66 | .unwrap(); 67 | 68 | let ten_secs = time::Duration::from_secs(10); 69 | thread::sleep(ten_secs); 70 | let _ = session_lock::lock(); 71 | 72 | loop { 73 | if session_lock::UNLOCKED.load(atomic::Ordering::Relaxed) { 74 | init(); 75 | } 76 | } 77 | } 78 | 79 | fn kill_twenty() { 80 | #[cfg(unix)] 81 | { 82 | std::process::Command::new("pkill") 83 | .arg("twenty") 84 | .output() 85 | .ok(); 86 | } 87 | } 88 | 89 | fn help() { 90 | let help_msg = format!( 91 | "\x1b[32m\x1b[1mTwenty \x1b[0m {} 92 | Twenty makes sure that you look 20 ft away every 20 minutes for 20 seconds. 93 | 94 | \x1b[33mUSAGE:\x1b[0m 95 | twenty \x1b[32m[OPTIONS]\x1b[0m 96 | 97 | \x1b[33mOptions:\x1b[0m 98 | \x1b[32m-h, --help\x1b[0m 99 | Show this help message. 100 | \x1b[32m-i, --init [dark/light]\x1b[0m 101 | Initialize the program. Defaults to dark theme. 102 | \x1b[32m-k, --kill\x1b[0m 103 | Kill the program. 104 | 105 | Link: \x1b[4m\x1b[34mhttps://github.com/waycrate/twenty\x1b[0m", 106 | env!("CARGO_PKG_VERSION") 107 | ); 108 | println!("{}", help_msg); 109 | } 110 | -------------------------------------------------------------------------------- /src/session_lock.rs: -------------------------------------------------------------------------------- 1 | use iced::widget::{column, text}; 2 | use iced::{event, time, Alignment, Command, Element, Event, Length, Subscription, Theme}; 3 | use std::sync::atomic::{AtomicBool, Ordering}; 4 | use std::time::Duration; 5 | 6 | use iced_sessionlock::actions::UnLockAction; 7 | use iced_sessionlock::settings::Settings; 8 | use iced_sessionlock::MultiApplication; 9 | 10 | pub fn lock() -> Result<(), iced_sessionlock::Error> { 11 | Counter::run(Settings::default()) 12 | } 13 | 14 | struct Counter { 15 | value: i32, 16 | } 17 | 18 | #[derive(Debug, Clone)] 19 | enum Message { 20 | DecrementCounter, 21 | IcedEvent(Event), 22 | Unlock, 23 | } 24 | 25 | pub static UNLOCKED: AtomicBool = AtomicBool::new(false); 26 | pub static IS_DARKMODE: AtomicBool = AtomicBool::new(true); 27 | 28 | impl MultiApplication for Counter { 29 | type Message = Message; 30 | type Flags = (); 31 | type Theme = Theme; 32 | type Executor = iced::executor::Default; 33 | 34 | fn new(_flags: ()) -> (Self, Command) { 35 | (Self { value: 20 }, Command::none()) 36 | } 37 | 38 | fn namespace(&self) -> String { 39 | String::from("Twenty - a 20-20-20 rule enforcer") 40 | } 41 | 42 | fn subscription(&self) -> iced::Subscription { 43 | Subscription::batch(vec![ 44 | event::listen().map(Message::IcedEvent), 45 | time::every(Duration::from_secs(1)).map(|_| Message::DecrementCounter), 46 | ]) 47 | } 48 | 49 | fn update(&mut self, message: Message) -> Command { 50 | match message { 51 | Message::IcedEvent(_event) => Command::none(), 52 | Message::DecrementCounter => { 53 | if self.value > 0 { 54 | self.value -= 1; 55 | Command::none() 56 | } else { 57 | Command::perform(async {}, |_| Message::Unlock) 58 | } 59 | } 60 | Message::Unlock => { 61 | UNLOCKED.store(true, Ordering::Relaxed); 62 | Command::single(UnLockAction.into()) 63 | } 64 | } 65 | } 66 | 67 | fn view(&self, _id: iced::window::Id) -> Element { 68 | column![ 69 | text(format!("{}s left", self.value)).size(100), 70 | text("Look away.").size(100) 71 | ] 72 | .padding(200) 73 | .align_items(Alignment::Center) 74 | .width(Length::Fill) 75 | .height(Length::Fill) 76 | .into() 77 | } 78 | 79 | fn theme(&self) -> Theme { 80 | if IS_DARKMODE.load(Ordering::Relaxed) { 81 | Theme::Dark 82 | } else { 83 | Theme::Light 84 | } 85 | } 86 | } 87 | --------------------------------------------------------------------------------