A small utility to inhibit idle on wayland for mpris clients
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

Add DBUS Support

Ben C 2b8a6a6b 804db180

+901 -143
+805 -127
Cargo.lock
··· 43 43 44 44 [[package]] 45 45 name = "anstyle-query" 46 - version = "1.1.4" 46 + version = "1.1.5" 47 47 source = "registry+https://github.com/rust-lang/crates.io-index" 48 - checksum = "9e231f6134f61b71076a3eab506c379d4f36122f2af15a9ff04415ea4c3339e2" 48 + checksum = "40c48f72fd53cd289104fc64099abca73db4166ad86ea0b4341abe65af83dadc" 49 49 dependencies = [ 50 - "windows-sys 0.60.2", 50 + "windows-sys 0.61.2", 51 51 ] 52 52 53 53 [[package]] 54 54 name = "anstyle-wincon" 55 - version = "3.0.10" 55 + version = "3.0.11" 56 56 source = "registry+https://github.com/rust-lang/crates.io-index" 57 - checksum = "3e0633414522a32ffaac8ac6cc8f748e090c5717661fddeea04219e2344f5f2a" 57 + checksum = "291e6a250ff86cd4a820112fb8898808a366d8f9f58ce16d1f538353ad55747d" 58 58 dependencies = [ 59 59 "anstyle", 60 60 "once_cell_polyfill", 61 - "windows-sys 0.60.2", 61 + "windows-sys 0.61.2", 62 62 ] 63 63 64 64 [[package]] ··· 68 68 checksum = "a23eb6b1614318a8071c9b2521f36b424b2c83db5eb3a0fead4a6c0809af6e61" 69 69 70 70 [[package]] 71 + name = "async-broadcast" 72 + version = "0.7.2" 73 + source = "registry+https://github.com/rust-lang/crates.io-index" 74 + checksum = "435a87a52755b8f27fcf321ac4f04b2802e337c8c4872923137471ec39c37532" 75 + dependencies = [ 76 + "event-listener", 77 + "event-listener-strategy", 78 + "futures-core", 79 + "pin-project-lite", 80 + ] 81 + 82 + [[package]] 83 + name = "async-channel" 84 + version = "2.5.0" 85 + source = "registry+https://github.com/rust-lang/crates.io-index" 86 + checksum = "924ed96dd52d1b75e9c1a3e6275715fd320f5f9439fb5a4a11fa51f4221158d2" 87 + dependencies = [ 88 + "concurrent-queue", 89 + "event-listener-strategy", 90 + "futures-core", 91 + "pin-project-lite", 92 + ] 93 + 94 + [[package]] 95 + name = "async-executor" 96 + version = "1.13.3" 97 + source = "registry+https://github.com/rust-lang/crates.io-index" 98 + checksum = "497c00e0fd83a72a79a39fcbd8e3e2f055d6f6c7e025f3b3d91f4f8e76527fb8" 99 + dependencies = [ 100 + "async-task", 101 + "concurrent-queue", 102 + "fastrand", 103 + "futures-lite", 104 + "pin-project-lite", 105 + "slab", 106 + ] 107 + 108 + [[package]] 109 + name = "async-io" 110 + version = "2.6.0" 111 + source = "registry+https://github.com/rust-lang/crates.io-index" 112 + checksum = "456b8a8feb6f42d237746d4b3e9a178494627745c3c56c6ea55d92ba50d026fc" 113 + dependencies = [ 114 + "autocfg", 115 + "cfg-if", 116 + "concurrent-queue", 117 + "futures-io", 118 + "futures-lite", 119 + "parking", 120 + "polling", 121 + "rustix", 122 + "slab", 123 + "windows-sys 0.61.2", 124 + ] 125 + 126 + [[package]] 127 + name = "async-lock" 128 + version = "3.4.2" 129 + source = "registry+https://github.com/rust-lang/crates.io-index" 130 + checksum = "290f7f2596bd5b78a9fec8088ccd89180d7f9f55b94b0576823bbbdc72ee8311" 131 + dependencies = [ 132 + "event-listener", 133 + "event-listener-strategy", 134 + "pin-project-lite", 135 + ] 136 + 137 + [[package]] 138 + name = "async-process" 139 + version = "2.5.0" 140 + source = "registry+https://github.com/rust-lang/crates.io-index" 141 + checksum = "fc50921ec0055cdd8a16de48773bfeec5c972598674347252c0399676be7da75" 142 + dependencies = [ 143 + "async-channel", 144 + "async-io", 145 + "async-lock", 146 + "async-signal", 147 + "async-task", 148 + "blocking", 149 + "cfg-if", 150 + "event-listener", 151 + "futures-lite", 152 + "rustix", 153 + ] 154 + 155 + [[package]] 156 + name = "async-recursion" 157 + version = "1.1.1" 158 + source = "registry+https://github.com/rust-lang/crates.io-index" 159 + checksum = "3b43422f69d8ff38f95f1b2bb76517c91589a924d1559a0e935d7c8ce0274c11" 160 + dependencies = [ 161 + "proc-macro2", 162 + "quote 1.0.42", 163 + "syn 2.0.113", 164 + ] 165 + 166 + [[package]] 167 + name = "async-signal" 168 + version = "0.2.13" 169 + source = "registry+https://github.com/rust-lang/crates.io-index" 170 + checksum = "43c070bbf59cd3570b6b2dd54cd772527c7c3620fce8be898406dd3ed6adc64c" 171 + dependencies = [ 172 + "async-io", 173 + "async-lock", 174 + "atomic-waker", 175 + "cfg-if", 176 + "futures-core", 177 + "futures-io", 178 + "rustix", 179 + "signal-hook-registry", 180 + "slab", 181 + "windows-sys 0.61.2", 182 + ] 183 + 184 + [[package]] 185 + name = "async-task" 186 + version = "4.7.1" 187 + source = "registry+https://github.com/rust-lang/crates.io-index" 188 + checksum = "8b75356056920673b02621b35afd0f7dda9306d03c79a30f5c56c44cf256e3de" 189 + 190 + [[package]] 191 + name = "async-trait" 192 + version = "0.1.89" 193 + source = "registry+https://github.com/rust-lang/crates.io-index" 194 + checksum = "9035ad2d096bed7955a320ee7e2230574d28fd3c3a0f186cbea1ff3c7eed5dbb" 195 + dependencies = [ 196 + "proc-macro2", 197 + "quote 1.0.42", 198 + "syn 2.0.113", 199 + ] 200 + 201 + [[package]] 202 + name = "atomic-waker" 203 + version = "1.1.2" 204 + source = "registry+https://github.com/rust-lang/crates.io-index" 205 + checksum = "1505bd5d3d116872e7271a6d4e16d81d0c8570876c8de68093a09ac269d8aac0" 206 + 207 + [[package]] 208 + name = "autocfg" 209 + version = "1.5.0" 210 + source = "registry+https://github.com/rust-lang/crates.io-index" 211 + checksum = "c08606f8c3cbf4ce6ec8e28fb0014a2c086708fe954eaa885384a6165172e7e8" 212 + 213 + [[package]] 71 214 name = "bitflags" 72 215 version = "2.10.0" 73 216 source = "registry+https://github.com/rust-lang/crates.io-index" 74 217 checksum = "812e12b5285cc515a9c72a5c1d3b6d46a19dac5acfef5265968c166106e31dd3" 75 218 76 219 [[package]] 220 + name = "blocking" 221 + version = "1.6.2" 222 + source = "registry+https://github.com/rust-lang/crates.io-index" 223 + checksum = "e83f8d02be6967315521be875afa792a316e28d57b5a2d401897e2a7921b7f21" 224 + dependencies = [ 225 + "async-channel", 226 + "async-task", 227 + "futures-io", 228 + "futures-lite", 229 + "piper", 230 + ] 231 + 232 + [[package]] 233 + name = "bumpalo" 234 + version = "3.19.1" 235 + source = "registry+https://github.com/rust-lang/crates.io-index" 236 + checksum = "5dd9dc738b7a8311c7ade152424974d8115f2cdad61e8dab8dac9f2362298510" 237 + 238 + [[package]] 77 239 name = "cc" 78 - version = "1.2.45" 240 + version = "1.2.51" 79 241 source = "registry+https://github.com/rust-lang/crates.io-index" 80 - checksum = "35900b6c8d709fb1d854671ae27aeaa9eec2f8b01b364e1619a40da3e6fe2afe" 242 + checksum = "7a0aeaff4ff1a90589618835a598e545176939b97874f7abc7851caa0618f203" 81 243 dependencies = [ 82 244 "find-msvc-tools", 83 245 "shlex", 84 246 ] 247 + 248 + [[package]] 249 + name = "cfg-if" 250 + version = "1.0.4" 251 + source = "registry+https://github.com/rust-lang/crates.io-index" 252 + checksum = "9330f8b2ff13f34540b44e946ef35111825727b38d33286ef986142615121801" 253 + 254 + [[package]] 255 + name = "cfg_aliases" 256 + version = "0.2.1" 257 + source = "registry+https://github.com/rust-lang/crates.io-index" 258 + checksum = "613afe47fcd5fac7ccf1db93babcb082c5994d996f20b8b159f2ad1658eb5724" 85 259 86 260 [[package]] 87 261 name = "clap" 88 - version = "4.5.51" 262 + version = "4.5.54" 89 263 source = "registry+https://github.com/rust-lang/crates.io-index" 90 - checksum = "4c26d721170e0295f191a69bd9a1f93efcdb0aff38684b61ab5750468972e5f5" 264 + checksum = "c6e6ff9dcd79cff5cd969a17a545d79e84ab086e444102a591e288a8aa3ce394" 91 265 dependencies = [ 92 266 "clap_builder", 93 267 "clap_derive", ··· 95 269 96 270 [[package]] 97 271 name = "clap_builder" 98 - version = "4.5.51" 272 + version = "4.5.54" 99 273 source = "registry+https://github.com/rust-lang/crates.io-index" 100 - checksum = "75835f0c7bf681bfd05abe44e965760fea999a5286c6eb2d59883634fd02011a" 274 + checksum = "fa42cf4d2b7a41bc8f663a7cab4031ebafa1bf3875705bfaf8466dc60ab52c00" 101 275 dependencies = [ 102 276 "anstream", 103 277 "anstyle", ··· 114 288 "heck 0.5.0", 115 289 "proc-macro2", 116 290 "quote 1.0.42", 117 - "syn 2.0.110", 291 + "syn 2.0.113", 118 292 ] 119 293 120 294 [[package]] ··· 150 324 ] 151 325 152 326 [[package]] 327 + name = "concurrent-queue" 328 + version = "2.5.0" 329 + source = "registry+https://github.com/rust-lang/crates.io-index" 330 + checksum = "4ca0197aee26d1ae37445ee532fefce43251d24cc7c166799f4d46817f1d3973" 331 + dependencies = [ 332 + "crossbeam-utils", 333 + ] 334 + 335 + [[package]] 336 + name = "crossbeam-utils" 337 + version = "0.8.21" 338 + source = "registry+https://github.com/rust-lang/crates.io-index" 339 + checksum = "d0a5c400df2834b80a4c3327b3aad3a4c4cd4de0629063962b03235697506a28" 340 + 341 + [[package]] 153 342 name = "darling" 154 343 version = "0.14.4" 155 344 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 186 375 187 376 [[package]] 188 377 name = "dbus" 189 - version = "0.9.9" 378 + version = "0.9.10" 190 379 source = "registry+https://github.com/rust-lang/crates.io-index" 191 - checksum = "190b6255e8ab55a7b568df5a883e9497edc3e4821c06396612048b430e5ad1e9" 380 + checksum = "21b3aa68d7e7abee336255bd7248ea965cc393f3e70411135a6f6a4b651345d4" 192 381 dependencies = [ 193 382 "libc", 194 383 "libdbus-sys", ··· 213 402 checksum = "75b325c5dbd37f80359721ad39aca5a29fb04c89279657cffdda8736d0c0b9d2" 214 403 215 404 [[package]] 405 + name = "endi" 406 + version = "1.1.1" 407 + source = "registry+https://github.com/rust-lang/crates.io-index" 408 + checksum = "66b7e2430c6dff6a955451e2cfc438f09cea1965a9d6f87f7e3b90decc014099" 409 + 410 + [[package]] 216 411 name = "enum-kinds" 217 412 version = "0.5.1" 218 413 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 224 419 ] 225 420 226 421 [[package]] 422 + name = "enumflags2" 423 + version = "0.7.12" 424 + source = "registry+https://github.com/rust-lang/crates.io-index" 425 + checksum = "1027f7680c853e056ebcec683615fb6fbbc07dbaa13b4d5d9442b146ded4ecef" 426 + dependencies = [ 427 + "enumflags2_derive", 428 + "serde", 429 + ] 430 + 431 + [[package]] 432 + name = "enumflags2_derive" 433 + version = "0.7.12" 434 + source = "registry+https://github.com/rust-lang/crates.io-index" 435 + checksum = "67c78a4d8fdf9953a5c9d458f9efe940fd97a0cab0941c075a813ac594733827" 436 + dependencies = [ 437 + "proc-macro2", 438 + "quote 1.0.42", 439 + "syn 2.0.113", 440 + ] 441 + 442 + [[package]] 227 443 name = "env_filter" 228 444 version = "0.1.4" 229 445 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 247 463 ] 248 464 249 465 [[package]] 466 + name = "equivalent" 467 + version = "1.0.2" 468 + source = "registry+https://github.com/rust-lang/crates.io-index" 469 + checksum = "877a4ace8713b0bcf2a4e7eec82529c029f1d0619886d18145fea96c3ffe5c0f" 470 + 471 + [[package]] 250 472 name = "errno" 251 473 version = "0.3.14" 252 474 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 257 479 ] 258 480 259 481 [[package]] 482 + name = "event-listener" 483 + version = "5.4.1" 484 + source = "registry+https://github.com/rust-lang/crates.io-index" 485 + checksum = "e13b66accf52311f30a0db42147dadea9850cb48cd070028831ae5f5d4b856ab" 486 + dependencies = [ 487 + "concurrent-queue", 488 + "parking", 489 + "pin-project-lite", 490 + ] 491 + 492 + [[package]] 493 + name = "event-listener-strategy" 494 + version = "0.5.4" 495 + source = "registry+https://github.com/rust-lang/crates.io-index" 496 + checksum = "8be9f3dfaaffdae2972880079a491a1a8bb7cbed0b8dd7a347f668b4150a3b93" 497 + dependencies = [ 498 + "event-listener", 499 + "pin-project-lite", 500 + ] 501 + 502 + [[package]] 503 + name = "fastrand" 504 + version = "2.3.0" 505 + source = "registry+https://github.com/rust-lang/crates.io-index" 506 + checksum = "37909eebbb50d72f9059c3b6d82c0463f2ff062c9e95845c43a6c9c0355411be" 507 + 508 + [[package]] 260 509 name = "find-msvc-tools" 261 - version = "0.1.4" 510 + version = "0.1.6" 262 511 source = "registry+https://github.com/rust-lang/crates.io-index" 263 - checksum = "52051878f80a721bb68ebfbc930e07b65ba72f2da88968ea5c06fd6ca3d3a127" 512 + checksum = "645cbb3a84e60b7531617d5ae4e57f7e27308f6445f5abf653209ea76dec8dff" 264 513 265 514 [[package]] 266 515 name = "fnv" ··· 290 539 ] 291 540 292 541 [[package]] 542 + name = "futures-core" 543 + version = "0.3.31" 544 + source = "registry+https://github.com/rust-lang/crates.io-index" 545 + checksum = "05f29059c0c2090612e8d742178b0580d2dc940c837851ad723096f87af6663e" 546 + 547 + [[package]] 548 + name = "futures-io" 549 + version = "0.3.31" 550 + source = "registry+https://github.com/rust-lang/crates.io-index" 551 + checksum = "9e5c1b78ca4aae1ac06c48a526a655760685149f0d465d21f37abfe57ce075c6" 552 + 553 + [[package]] 554 + name = "futures-lite" 555 + version = "2.6.1" 556 + source = "registry+https://github.com/rust-lang/crates.io-index" 557 + checksum = "f78e10609fe0e0b3f4157ffab1876319b5b0db102a2c60dc4626306dc46b44ad" 558 + dependencies = [ 559 + "fastrand", 560 + "futures-core", 561 + "futures-io", 562 + "parking", 563 + "pin-project-lite", 564 + ] 565 + 566 + [[package]] 567 + name = "getrandom" 568 + version = "0.3.4" 569 + source = "registry+https://github.com/rust-lang/crates.io-index" 570 + checksum = "899def5c37c4fd7b2664648c28120ecec138e4d395b459e5ca34f9cce2dd77fd" 571 + dependencies = [ 572 + "cfg-if", 573 + "libc", 574 + "r-efi", 575 + "wasip2", 576 + ] 577 + 578 + [[package]] 579 + name = "hashbrown" 580 + version = "0.16.1" 581 + source = "registry+https://github.com/rust-lang/crates.io-index" 582 + checksum = "841d1cc9bed7f9236f321df977030373f4a4163ae1a7dbfe1a51a2c1a51d9100" 583 + 584 + [[package]] 293 585 name = "heck" 294 586 version = "0.3.3" 295 587 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 305 597 checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea" 306 598 307 599 [[package]] 600 + name = "hermit-abi" 601 + version = "0.5.2" 602 + source = "registry+https://github.com/rust-lang/crates.io-index" 603 + checksum = "fc0fef456e4baa96da950455cd02c081ca953b141298e41db3fc7e36b1da849c" 604 + 605 + [[package]] 606 + name = "hex" 607 + version = "0.4.3" 608 + source = "registry+https://github.com/rust-lang/crates.io-index" 609 + checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70" 610 + 611 + [[package]] 308 612 name = "ident_case" 309 613 version = "1.0.1" 310 614 source = "registry+https://github.com/rust-lang/crates.io-index" 311 615 checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39" 312 616 313 617 [[package]] 618 + name = "indexmap" 619 + version = "2.12.1" 620 + source = "registry+https://github.com/rust-lang/crates.io-index" 621 + checksum = "0ad4bb2b565bca0645f4d68c5c9af97fba094e9791da685bf83cb5f3ce74acf2" 622 + dependencies = [ 623 + "equivalent", 624 + "hashbrown", 625 + ] 626 + 627 + [[package]] 314 628 name = "is_terminal_polyfill" 315 629 version = "1.70.2" 316 630 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 318 632 319 633 [[package]] 320 634 name = "jiff" 321 - version = "0.2.16" 635 + version = "0.2.17" 322 636 source = "registry+https://github.com/rust-lang/crates.io-index" 323 - checksum = "49cce2b81f2098e7e3efc35bc2e0a6b7abec9d34128283d7a26fa8f32a6dbb35" 637 + checksum = "a87d9b8105c23642f50cbbae03d1f75d8422c5cb98ce7ee9271f7ff7505be6b8" 324 638 dependencies = [ 325 639 "jiff-static", 326 640 "log", ··· 331 645 332 646 [[package]] 333 647 name = "jiff-static" 334 - version = "0.2.16" 648 + version = "0.2.17" 335 649 source = "registry+https://github.com/rust-lang/crates.io-index" 336 - checksum = "980af8b43c3ad5d8d349ace167ec8170839f753a42d233ba19e08afe1850fa69" 650 + checksum = "b787bebb543f8969132630c51fd0afab173a86c6abae56ff3b9e5e3e3f9f6e58" 337 651 dependencies = [ 338 652 "proc-macro2", 339 653 "quote 1.0.42", 340 - "syn 2.0.110", 654 + "syn 2.0.113", 655 + ] 656 + 657 + [[package]] 658 + name = "js-sys" 659 + version = "0.3.83" 660 + source = "registry+https://github.com/rust-lang/crates.io-index" 661 + checksum = "464a3709c7f55f1f721e5389aa6ea4e3bc6aba669353300af094b29ffbdde1d8" 662 + dependencies = [ 663 + "once_cell", 664 + "wasm-bindgen", 341 665 ] 342 666 343 667 [[package]] 344 668 name = "libc" 345 - version = "0.2.177" 669 + version = "0.2.179" 346 670 source = "registry+https://github.com/rust-lang/crates.io-index" 347 - checksum = "2874a2af47a2325c2001a6e6fad9b16a53b802102b528163885171cf92b15976" 671 + checksum = "c5a2d376baa530d1238d133232d15e239abad80d05838b4b59354e5268af431f" 348 672 349 673 [[package]] 350 674 name = "libdbus-sys" 351 - version = "0.2.6" 675 + version = "0.2.7" 352 676 source = "registry+https://github.com/rust-lang/crates.io-index" 353 - checksum = "5cbe856efeb50e4681f010e9aaa2bf0a644e10139e54cde10fc83a307c23bd9f" 677 + checksum = "328c4789d42200f1eeec05bd86c9c13c7f091d2ba9a6ea35acdf51f31bc0f043" 354 678 dependencies = [ 355 679 "pkg-config", 356 680 ] ··· 363 687 364 688 [[package]] 365 689 name = "log" 366 - version = "0.4.28" 690 + version = "0.4.29" 367 691 source = "registry+https://github.com/rust-lang/crates.io-index" 368 - checksum = "34080505efa8e45a4b816c349525ebe327ceaa8559756f0356cba97ef3bf7432" 692 + checksum = "5e5032e24019045c762d3c0f28f5b6b8bbf38563a65908389bf7978758920897" 369 693 370 694 [[package]] 371 695 name = "memchr" ··· 374 698 checksum = "f52b00d39961fc5b2736ea853c9cc86238e165017a493d1d5c8eac6bdc4cc273" 375 699 376 700 [[package]] 701 + name = "memoffset" 702 + version = "0.9.1" 703 + source = "registry+https://github.com/rust-lang/crates.io-index" 704 + checksum = "488016bfae457b036d996092f6cb448677611ce4449e970ceaf42695203f218a" 705 + dependencies = [ 706 + "autocfg", 707 + ] 708 + 709 + [[package]] 377 710 name = "mpris" 378 711 version = "2.0.1" 379 712 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 385 718 "from_variants", 386 719 "thiserror", 387 720 ] 721 + 722 + [[package]] 723 + name = "nix" 724 + version = "0.30.1" 725 + source = "registry+https://github.com/rust-lang/crates.io-index" 726 + checksum = "74523f3a35e05aba87a1d978330aef40f67b0304ac79c1c00b294c9830543db6" 727 + dependencies = [ 728 + "bitflags", 729 + "cfg-if", 730 + "cfg_aliases", 731 + "libc", 732 + "memoffset", 733 + ] 734 + 735 + [[package]] 736 + name = "once_cell" 737 + version = "1.21.3" 738 + source = "registry+https://github.com/rust-lang/crates.io-index" 739 + checksum = "42f5e15c9953c5e4ccceeb2e7382a716482c34515315f7b03532b8b4e8393d2d" 388 740 389 741 [[package]] 390 742 name = "once_cell_polyfill" ··· 393 745 checksum = "384b8ab6d37215f3c5301a95a4accb5d64aa607f1fcb26a11b5303878451b4fe" 394 746 395 747 [[package]] 748 + name = "ordered-stream" 749 + version = "0.2.0" 750 + source = "registry+https://github.com/rust-lang/crates.io-index" 751 + checksum = "9aa2b01e1d916879f73a53d01d1d6cee68adbb31d6d9177a8cfce093cced1d50" 752 + dependencies = [ 753 + "futures-core", 754 + "pin-project-lite", 755 + ] 756 + 757 + [[package]] 758 + name = "parking" 759 + version = "2.2.1" 760 + source = "registry+https://github.com/rust-lang/crates.io-index" 761 + checksum = "f38d5652c16fde515bb1ecef450ab0f6a219d619a7274976324d5e377f7dceba" 762 + 763 + [[package]] 764 + name = "pin-project-lite" 765 + version = "0.2.16" 766 + source = "registry+https://github.com/rust-lang/crates.io-index" 767 + checksum = "3b3cff922bd51709b605d9ead9aa71031d81447142d828eb4a6eba76fe619f9b" 768 + 769 + [[package]] 770 + name = "piper" 771 + version = "0.2.4" 772 + source = "registry+https://github.com/rust-lang/crates.io-index" 773 + checksum = "96c8c490f422ef9a4efd2cb5b42b76c8613d7e7dfc1caf667b8a3350a5acc066" 774 + dependencies = [ 775 + "atomic-waker", 776 + "fastrand", 777 + "futures-io", 778 + ] 779 + 780 + [[package]] 396 781 name = "pkg-config" 397 782 version = "0.3.32" 398 783 source = "registry+https://github.com/rust-lang/crates.io-index" 399 784 checksum = "7edddbd0b52d732b21ad9a5fab5c704c14cd949e5e9a1ec5929a24fded1b904c" 400 785 401 786 [[package]] 787 + name = "polling" 788 + version = "3.11.0" 789 + source = "registry+https://github.com/rust-lang/crates.io-index" 790 + checksum = "5d0e4f59085d47d8241c88ead0f274e8a0cb551f3625263c05eb8dd897c34218" 791 + dependencies = [ 792 + "cfg-if", 793 + "concurrent-queue", 794 + "hermit-abi", 795 + "pin-project-lite", 796 + "rustix", 797 + "windows-sys 0.61.2", 798 + ] 799 + 800 + [[package]] 402 801 name = "portable-atomic" 403 - version = "1.11.1" 802 + version = "1.13.0" 404 803 source = "registry+https://github.com/rust-lang/crates.io-index" 405 - checksum = "f84267b20a16ea918e43c6a88433c2d54fa145c92a811b5b047ccbe153674483" 804 + checksum = "f89776e4d69bb58bc6993e99ffa1d11f228b839984854c7daeb5d37f87cbe950" 406 805 407 806 [[package]] 408 807 name = "portable-atomic-util" ··· 414 813 ] 415 814 416 815 [[package]] 816 + name = "proc-macro-crate" 817 + version = "3.4.0" 818 + source = "registry+https://github.com/rust-lang/crates.io-index" 819 + checksum = "219cb19e96be00ab2e37d6e299658a0cfa83e52429179969b0f0121b4ac46983" 820 + dependencies = [ 821 + "toml_edit", 822 + ] 823 + 824 + [[package]] 417 825 name = "proc-macro2" 418 - version = "1.0.103" 826 + version = "1.0.104" 419 827 source = "registry+https://github.com/rust-lang/crates.io-index" 420 - checksum = "5ee95bc4ef87b8d5ba32e8b7714ccc834865276eab0aed5c9958d00ec45f49e8" 828 + checksum = "9695f8df41bb4f3d222c95a67532365f569318332d03d5f3f67f37b20e6ebdf0" 421 829 dependencies = [ 422 830 "unicode-ident", 423 831 ] 424 832 425 833 [[package]] 426 834 name = "quick-xml" 427 - version = "0.37.5" 835 + version = "0.38.4" 428 836 source = "registry+https://github.com/rust-lang/crates.io-index" 429 - checksum = "331e97a1af0bf59823e6eadffe373d7b27f485be8748f71471c662c1f269b7fb" 837 + checksum = "b66c2058c55a409d601666cffe35f04333cf1013010882cec174a7467cd4e21c" 430 838 dependencies = [ 431 839 "memchr", 432 840 ] ··· 447 855 ] 448 856 449 857 [[package]] 858 + name = "r-efi" 859 + version = "5.3.0" 860 + source = "registry+https://github.com/rust-lang/crates.io-index" 861 + checksum = "69cdb34c158ceb288df11e18b4bd39de994f6657d83847bdffdbd7f346754b0f" 862 + 863 + [[package]] 450 864 name = "regex" 451 865 version = "1.12.2" 452 866 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 477 891 478 892 [[package]] 479 893 name = "rustix" 480 - version = "1.1.2" 894 + version = "1.1.3" 481 895 source = "registry+https://github.com/rust-lang/crates.io-index" 482 - checksum = "cd15f8a2c5551a84d56efdc1cd049089e409ac19a3072d5037a17fd70719ff3e" 896 + checksum = "146c9e247ccc180c1f61615433868c99f3de3ae256a30a43b49f67c2d9171f34" 483 897 dependencies = [ 484 898 "bitflags", 485 899 "errno", ··· 489 903 ] 490 904 491 905 [[package]] 906 + name = "rustversion" 907 + version = "1.0.22" 908 + source = "registry+https://github.com/rust-lang/crates.io-index" 909 + checksum = "b39cdef0fa800fc44525c84ccb54a029961a8215f9619753635a9c0d2538d46d" 910 + 911 + [[package]] 912 + name = "serde" 913 + version = "1.0.228" 914 + source = "registry+https://github.com/rust-lang/crates.io-index" 915 + checksum = "9a8e94ea7f378bd32cbbd37198a4a91436180c5bb472411e48b5ec2e2124ae9e" 916 + dependencies = [ 917 + "serde_core", 918 + "serde_derive", 919 + ] 920 + 921 + [[package]] 492 922 name = "serde_core" 493 923 version = "1.0.228" 494 924 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 505 935 dependencies = [ 506 936 "proc-macro2", 507 937 "quote 1.0.42", 508 - "syn 2.0.110", 938 + "syn 2.0.113", 939 + ] 940 + 941 + [[package]] 942 + name = "serde_repr" 943 + version = "0.1.20" 944 + source = "registry+https://github.com/rust-lang/crates.io-index" 945 + checksum = "175ee3e80ae9982737ca543e96133087cbd9a485eecc3bc4de9c1a37b47ea59c" 946 + dependencies = [ 947 + "proc-macro2", 948 + "quote 1.0.42", 949 + "syn 2.0.113", 509 950 ] 510 951 511 952 [[package]] ··· 515 956 checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64" 516 957 517 958 [[package]] 959 + name = "signal-hook-registry" 960 + version = "1.4.8" 961 + source = "registry+https://github.com/rust-lang/crates.io-index" 962 + checksum = "c4db69cba1110affc0e9f7bcd48bbf87b3f4fc7c61fc9155afd4c469eb3d6c1b" 963 + dependencies = [ 964 + "errno", 965 + "libc", 966 + ] 967 + 968 + [[package]] 969 + name = "slab" 970 + version = "0.4.11" 971 + source = "registry+https://github.com/rust-lang/crates.io-index" 972 + checksum = "7a2ae44ef20feb57a68b23d846850f861394c2e02dc425a50098ae8c90267589" 973 + 974 + [[package]] 518 975 name = "smallvec" 519 976 version = "1.15.1" 520 977 source = "registry+https://github.com/rust-lang/crates.io-index" 521 978 checksum = "67b1b7a3b5fe4f1376887184045fcf45c69e92af734b7aaddc05fb777b6fbd03" 979 + 980 + [[package]] 981 + name = "static_assertions" 982 + version = "1.1.0" 983 + source = "registry+https://github.com/rust-lang/crates.io-index" 984 + checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f" 522 985 523 986 [[package]] 524 987 name = "strsim" ··· 556 1019 557 1020 [[package]] 558 1021 name = "syn" 559 - version = "2.0.110" 1022 + version = "2.0.113" 560 1023 source = "registry+https://github.com/rust-lang/crates.io-index" 561 - checksum = "a99801b5bd34ede4cf3fc688c5919368fea4e4814a4664359503e6015b280aea" 1024 + checksum = "678faa00651c9eb72dd2020cbdf275d92eccb2400d568e419efdd64838145cb4" 562 1025 dependencies = [ 563 1026 "proc-macro2", 564 1027 "quote 1.0.42", ··· 572 1035 checksum = "a393066ed9010ebaed60b9eafa373d4b1baac186dd7e008555b0f702b51945b6" 573 1036 dependencies = [ 574 1037 "unicode-xid", 1038 + ] 1039 + 1040 + [[package]] 1041 + name = "tempfile" 1042 + version = "3.24.0" 1043 + source = "registry+https://github.com/rust-lang/crates.io-index" 1044 + checksum = "655da9c7eb6305c55742045d5a8d2037996d61d8de95806335c7c86ce0f82e9c" 1045 + dependencies = [ 1046 + "fastrand", 1047 + "getrandom", 1048 + "once_cell", 1049 + "rustix", 1050 + "windows-sys 0.61.2", 575 1051 ] 576 1052 577 1053 [[package]] ··· 591 1067 dependencies = [ 592 1068 "proc-macro2", 593 1069 "quote 1.0.42", 594 - "syn 2.0.110", 1070 + "syn 2.0.113", 1071 + ] 1072 + 1073 + [[package]] 1074 + name = "toml_datetime" 1075 + version = "0.7.5+spec-1.1.0" 1076 + source = "registry+https://github.com/rust-lang/crates.io-index" 1077 + checksum = "92e1cfed4a3038bc5a127e35a2d360f145e1f4b971b551a2ba5fd7aedf7e1347" 1078 + dependencies = [ 1079 + "serde_core", 1080 + ] 1081 + 1082 + [[package]] 1083 + name = "toml_edit" 1084 + version = "0.23.10+spec-1.0.0" 1085 + source = "registry+https://github.com/rust-lang/crates.io-index" 1086 + checksum = "84c8b9f757e028cee9fa244aea147aab2a9ec09d5325a9b01e0a49730c2b5269" 1087 + dependencies = [ 1088 + "indexmap", 1089 + "toml_datetime", 1090 + "toml_parser", 1091 + "winnow", 1092 + ] 1093 + 1094 + [[package]] 1095 + name = "toml_parser" 1096 + version = "1.0.6+spec-1.1.0" 1097 + source = "registry+https://github.com/rust-lang/crates.io-index" 1098 + checksum = "a3198b4b0a8e11f09dd03e133c0280504d0801269e9afa46362ffde1cbeebf44" 1099 + dependencies = [ 1100 + "winnow", 1101 + ] 1102 + 1103 + [[package]] 1104 + name = "tracing" 1105 + version = "0.1.44" 1106 + source = "registry+https://github.com/rust-lang/crates.io-index" 1107 + checksum = "63e71662fa4b2a2c3a26f570f037eb95bb1f85397f3cd8076caed2f026a6d100" 1108 + dependencies = [ 1109 + "pin-project-lite", 1110 + "tracing-attributes", 1111 + "tracing-core", 1112 + ] 1113 + 1114 + [[package]] 1115 + name = "tracing-attributes" 1116 + version = "0.1.31" 1117 + source = "registry+https://github.com/rust-lang/crates.io-index" 1118 + checksum = "7490cfa5ec963746568740651ac6781f701c9c5ea257c58e057f3ba8cf69e8da" 1119 + dependencies = [ 1120 + "proc-macro2", 1121 + "quote 1.0.42", 1122 + "syn 2.0.113", 1123 + ] 1124 + 1125 + [[package]] 1126 + name = "tracing-core" 1127 + version = "0.1.36" 1128 + source = "registry+https://github.com/rust-lang/crates.io-index" 1129 + checksum = "db97caf9d906fbde555dd62fa95ddba9eecfd14cb388e4f491a66d74cd5fb79a" 1130 + dependencies = [ 1131 + "once_cell", 1132 + ] 1133 + 1134 + [[package]] 1135 + name = "uds_windows" 1136 + version = "1.1.0" 1137 + source = "registry+https://github.com/rust-lang/crates.io-index" 1138 + checksum = "89daebc3e6fd160ac4aa9fc8b3bf71e1f74fbf92367ae71fb83a037e8bf164b9" 1139 + dependencies = [ 1140 + "memoffset", 1141 + "tempfile", 1142 + "winapi", 595 1143 ] 596 1144 597 1145 [[package]] ··· 619 1167 checksum = "06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821" 620 1168 621 1169 [[package]] 1170 + name = "uuid" 1171 + version = "1.19.0" 1172 + source = "registry+https://github.com/rust-lang/crates.io-index" 1173 + checksum = "e2e054861b4bd027cd373e18e8d8d8e6548085000e41290d95ce0c373a654b4a" 1174 + dependencies = [ 1175 + "js-sys", 1176 + "serde_core", 1177 + "wasm-bindgen", 1178 + ] 1179 + 1180 + [[package]] 1181 + name = "wasip2" 1182 + version = "1.0.1+wasi-0.2.4" 1183 + source = "registry+https://github.com/rust-lang/crates.io-index" 1184 + checksum = "0562428422c63773dad2c345a1882263bbf4d65cf3f42e90921f787ef5ad58e7" 1185 + dependencies = [ 1186 + "wit-bindgen", 1187 + ] 1188 + 1189 + [[package]] 1190 + name = "wasm-bindgen" 1191 + version = "0.2.106" 1192 + source = "registry+https://github.com/rust-lang/crates.io-index" 1193 + checksum = "0d759f433fa64a2d763d1340820e46e111a7a5ab75f993d1852d70b03dbb80fd" 1194 + dependencies = [ 1195 + "cfg-if", 1196 + "once_cell", 1197 + "rustversion", 1198 + "wasm-bindgen-macro", 1199 + "wasm-bindgen-shared", 1200 + ] 1201 + 1202 + [[package]] 1203 + name = "wasm-bindgen-macro" 1204 + version = "0.2.106" 1205 + source = "registry+https://github.com/rust-lang/crates.io-index" 1206 + checksum = "48cb0d2638f8baedbc542ed444afc0644a29166f1595371af4fecf8ce1e7eeb3" 1207 + dependencies = [ 1208 + "quote 1.0.42", 1209 + "wasm-bindgen-macro-support", 1210 + ] 1211 + 1212 + [[package]] 1213 + name = "wasm-bindgen-macro-support" 1214 + version = "0.2.106" 1215 + source = "registry+https://github.com/rust-lang/crates.io-index" 1216 + checksum = "cefb59d5cd5f92d9dcf80e4683949f15ca4b511f4ac0a6e14d4e1ac60c6ecd40" 1217 + dependencies = [ 1218 + "bumpalo", 1219 + "proc-macro2", 1220 + "quote 1.0.42", 1221 + "syn 2.0.113", 1222 + "wasm-bindgen-shared", 1223 + ] 1224 + 1225 + [[package]] 1226 + name = "wasm-bindgen-shared" 1227 + version = "0.2.106" 1228 + source = "registry+https://github.com/rust-lang/crates.io-index" 1229 + checksum = "cbc538057e648b67f72a982e708d485b2efa771e1ac05fec311f9f63e5800db4" 1230 + dependencies = [ 1231 + "unicode-ident", 1232 + ] 1233 + 1234 + [[package]] 622 1235 name = "wayland-backend" 623 - version = "0.3.11" 1236 + version = "0.3.12" 624 1237 source = "registry+https://github.com/rust-lang/crates.io-index" 625 - checksum = "673a33c33048a5ade91a6b139580fa174e19fb0d23f396dca9fa15f2e1e49b35" 1238 + checksum = "fee64194ccd96bf648f42a65a7e589547096dfa702f7cadef84347b66ad164f9" 626 1239 dependencies = [ 627 1240 "cc", 628 1241 "downcast-rs", ··· 633 1246 634 1247 [[package]] 635 1248 name = "wayland-client" 636 - version = "0.31.11" 1249 + version = "0.31.12" 637 1250 source = "registry+https://github.com/rust-lang/crates.io-index" 638 - checksum = "c66a47e840dc20793f2264eb4b3e4ecb4b75d91c0dd4af04b456128e0bdd449d" 1251 + checksum = "b8e6faa537fbb6c186cb9f1d41f2f811a4120d1b57ec61f50da451a0c5122bec" 639 1252 dependencies = [ 640 1253 "bitflags", 641 1254 "rustix", ··· 655 1268 "mpris", 656 1269 "wayland-client", 657 1270 "wayland-protocols", 1271 + "zbus", 658 1272 ] 659 1273 660 1274 [[package]] 661 1275 name = "wayland-protocols" 662 - version = "0.32.9" 1276 + version = "0.32.10" 663 1277 source = "registry+https://github.com/rust-lang/crates.io-index" 664 - checksum = "efa790ed75fbfd71283bd2521a1cfdc022aabcc28bdcff00851f9e4ae88d9901" 1278 + checksum = "baeda9ffbcfc8cd6ddaade385eaf2393bd2115a69523c735f12242353c3df4f3" 665 1279 dependencies = [ 666 1280 "bitflags", 667 1281 "wayland-backend", ··· 671 1285 672 1286 [[package]] 673 1287 name = "wayland-scanner" 674 - version = "0.31.7" 1288 + version = "0.31.8" 675 1289 source = "registry+https://github.com/rust-lang/crates.io-index" 676 - checksum = "54cb1e9dc49da91950bdfd8b848c49330536d9d1fb03d4bfec8cae50caa50ae3" 1290 + checksum = "5423e94b6a63e68e439803a3e153a9252d5ead12fd853334e2ad33997e3889e3" 677 1291 dependencies = [ 678 1292 "proc-macro2", 679 1293 "quick-xml", ··· 682 1296 683 1297 [[package]] 684 1298 name = "wayland-sys" 685 - version = "0.31.7" 1299 + version = "0.31.8" 686 1300 source = "registry+https://github.com/rust-lang/crates.io-index" 687 - checksum = "34949b42822155826b41db8e5d0c1be3a2bd296c747577a43a3e6daefc296142" 1301 + checksum = "1e6dbfc3ac5ef974c92a2235805cc0114033018ae1290a72e474aa8b28cbbdfd" 688 1302 dependencies = [ 689 1303 "pkg-config", 690 1304 ] 691 1305 692 1306 [[package]] 1307 + name = "winapi" 1308 + version = "0.3.9" 1309 + source = "registry+https://github.com/rust-lang/crates.io-index" 1310 + checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419" 1311 + dependencies = [ 1312 + "winapi-i686-pc-windows-gnu", 1313 + "winapi-x86_64-pc-windows-gnu", 1314 + ] 1315 + 1316 + [[package]] 1317 + name = "winapi-i686-pc-windows-gnu" 1318 + version = "0.4.0" 1319 + source = "registry+https://github.com/rust-lang/crates.io-index" 1320 + checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" 1321 + 1322 + [[package]] 1323 + name = "winapi-x86_64-pc-windows-gnu" 1324 + version = "0.4.0" 1325 + source = "registry+https://github.com/rust-lang/crates.io-index" 1326 + checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" 1327 + 1328 + [[package]] 693 1329 name = "windows-link" 694 1330 version = "0.2.1" 695 1331 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 701 1337 source = "registry+https://github.com/rust-lang/crates.io-index" 702 1338 checksum = "1e38bc4d79ed67fd075bcc251a1c39b32a1776bbe92e5bef1f0bf1f8c531853b" 703 1339 dependencies = [ 704 - "windows-targets 0.52.6", 705 - ] 706 - 707 - [[package]] 708 - name = "windows-sys" 709 - version = "0.60.2" 710 - source = "registry+https://github.com/rust-lang/crates.io-index" 711 - checksum = "f2f500e4d28234f72040990ec9d39e3a6b950f9f22d3dba18416c35882612bcb" 712 - dependencies = [ 713 - "windows-targets 0.53.5", 1340 + "windows-targets", 714 1341 ] 715 1342 716 1343 [[package]] ··· 728 1355 source = "registry+https://github.com/rust-lang/crates.io-index" 729 1356 checksum = "9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973" 730 1357 dependencies = [ 731 - "windows_aarch64_gnullvm 0.52.6", 732 - "windows_aarch64_msvc 0.52.6", 733 - "windows_i686_gnu 0.52.6", 734 - "windows_i686_gnullvm 0.52.6", 735 - "windows_i686_msvc 0.52.6", 736 - "windows_x86_64_gnu 0.52.6", 737 - "windows_x86_64_gnullvm 0.52.6", 738 - "windows_x86_64_msvc 0.52.6", 739 - ] 740 - 741 - [[package]] 742 - name = "windows-targets" 743 - version = "0.53.5" 744 - source = "registry+https://github.com/rust-lang/crates.io-index" 745 - checksum = "4945f9f551b88e0d65f3db0bc25c33b8acea4d9e41163edf90dcd0b19f9069f3" 746 - dependencies = [ 747 - "windows-link", 748 - "windows_aarch64_gnullvm 0.53.1", 749 - "windows_aarch64_msvc 0.53.1", 750 - "windows_i686_gnu 0.53.1", 751 - "windows_i686_gnullvm 0.53.1", 752 - "windows_i686_msvc 0.53.1", 753 - "windows_x86_64_gnu 0.53.1", 754 - "windows_x86_64_gnullvm 0.53.1", 755 - "windows_x86_64_msvc 0.53.1", 1358 + "windows_aarch64_gnullvm", 1359 + "windows_aarch64_msvc", 1360 + "windows_i686_gnu", 1361 + "windows_i686_gnullvm", 1362 + "windows_i686_msvc", 1363 + "windows_x86_64_gnu", 1364 + "windows_x86_64_gnullvm", 1365 + "windows_x86_64_msvc", 756 1366 ] 757 1367 758 1368 [[package]] ··· 762 1372 checksum = "32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3" 763 1373 764 1374 [[package]] 765 - name = "windows_aarch64_gnullvm" 766 - version = "0.53.1" 1375 + name = "windows_aarch64_msvc" 1376 + version = "0.52.6" 767 1377 source = "registry+https://github.com/rust-lang/crates.io-index" 768 - checksum = "a9d8416fa8b42f5c947f8482c43e7d89e73a173cead56d044f6a56104a6d1b53" 1378 + checksum = "09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469" 769 1379 770 1380 [[package]] 771 - name = "windows_aarch64_msvc" 1381 + name = "windows_i686_gnu" 772 1382 version = "0.52.6" 773 1383 source = "registry+https://github.com/rust-lang/crates.io-index" 774 - checksum = "09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469" 1384 + checksum = "8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b" 775 1385 776 1386 [[package]] 777 - name = "windows_aarch64_msvc" 778 - version = "0.53.1" 1387 + name = "windows_i686_gnullvm" 1388 + version = "0.52.6" 779 1389 source = "registry+https://github.com/rust-lang/crates.io-index" 780 - checksum = "b9d782e804c2f632e395708e99a94275910eb9100b2114651e04744e9b125006" 1390 + checksum = "0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66" 781 1391 782 1392 [[package]] 783 - name = "windows_i686_gnu" 1393 + name = "windows_i686_msvc" 784 1394 version = "0.52.6" 785 1395 source = "registry+https://github.com/rust-lang/crates.io-index" 786 - checksum = "8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b" 1396 + checksum = "240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66" 787 1397 788 1398 [[package]] 789 - name = "windows_i686_gnu" 790 - version = "0.53.1" 1399 + name = "windows_x86_64_gnu" 1400 + version = "0.52.6" 791 1401 source = "registry+https://github.com/rust-lang/crates.io-index" 792 - checksum = "960e6da069d81e09becb0ca57a65220ddff016ff2d6af6a223cf372a506593a3" 1402 + checksum = "147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78" 793 1403 794 1404 [[package]] 795 - name = "windows_i686_gnullvm" 1405 + name = "windows_x86_64_gnullvm" 796 1406 version = "0.52.6" 797 1407 source = "registry+https://github.com/rust-lang/crates.io-index" 798 - checksum = "0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66" 1408 + checksum = "24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d" 799 1409 800 1410 [[package]] 801 - name = "windows_i686_gnullvm" 802 - version = "0.53.1" 1411 + name = "windows_x86_64_msvc" 1412 + version = "0.52.6" 803 1413 source = "registry+https://github.com/rust-lang/crates.io-index" 804 - checksum = "fa7359d10048f68ab8b09fa71c3daccfb0e9b559aed648a8f95469c27057180c" 1414 + checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" 805 1415 806 1416 [[package]] 807 - name = "windows_i686_msvc" 808 - version = "0.52.6" 1417 + name = "winnow" 1418 + version = "0.7.14" 809 1419 source = "registry+https://github.com/rust-lang/crates.io-index" 810 - checksum = "240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66" 1420 + checksum = "5a5364e9d77fcdeeaa6062ced926ee3381faa2ee02d3eb83a5c27a8825540829" 1421 + dependencies = [ 1422 + "memchr", 1423 + ] 811 1424 812 1425 [[package]] 813 - name = "windows_i686_msvc" 814 - version = "0.53.1" 1426 + name = "wit-bindgen" 1427 + version = "0.46.0" 815 1428 source = "registry+https://github.com/rust-lang/crates.io-index" 816 - checksum = "1e7ac75179f18232fe9c285163565a57ef8d3c89254a30685b57d83a38d326c2" 1429 + checksum = "f17a85883d4e6d00e8a97c586de764dabcc06133f7f1d55dce5cdc070ad7fe59" 817 1430 818 1431 [[package]] 819 - name = "windows_x86_64_gnu" 820 - version = "0.52.6" 1432 + name = "zbus" 1433 + version = "5.12.0" 821 1434 source = "registry+https://github.com/rust-lang/crates.io-index" 822 - checksum = "147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78" 1435 + checksum = "b622b18155f7a93d1cd2dc8c01d2d6a44e08fb9ebb7b3f9e6ed101488bad6c91" 1436 + dependencies = [ 1437 + "async-broadcast", 1438 + "async-executor", 1439 + "async-io", 1440 + "async-lock", 1441 + "async-process", 1442 + "async-recursion", 1443 + "async-task", 1444 + "async-trait", 1445 + "blocking", 1446 + "enumflags2", 1447 + "event-listener", 1448 + "futures-core", 1449 + "futures-lite", 1450 + "hex", 1451 + "nix", 1452 + "ordered-stream", 1453 + "serde", 1454 + "serde_repr", 1455 + "tracing", 1456 + "uds_windows", 1457 + "uuid", 1458 + "windows-sys 0.61.2", 1459 + "winnow", 1460 + "zbus_macros", 1461 + "zbus_names", 1462 + "zvariant", 1463 + ] 823 1464 824 1465 [[package]] 825 - name = "windows_x86_64_gnu" 826 - version = "0.53.1" 1466 + name = "zbus_macros" 1467 + version = "5.12.0" 827 1468 source = "registry+https://github.com/rust-lang/crates.io-index" 828 - checksum = "9c3842cdd74a865a8066ab39c8a7a473c0778a3f29370b5fd6b4b9aa7df4a499" 1469 + checksum = "1cdb94821ca8a87ca9c298b5d1cbd80e2a8b67115d99f6e4551ac49e42b6a314" 1470 + dependencies = [ 1471 + "proc-macro-crate", 1472 + "proc-macro2", 1473 + "quote 1.0.42", 1474 + "syn 2.0.113", 1475 + "zbus_names", 1476 + "zvariant", 1477 + "zvariant_utils", 1478 + ] 829 1479 830 1480 [[package]] 831 - name = "windows_x86_64_gnullvm" 832 - version = "0.52.6" 1481 + name = "zbus_names" 1482 + version = "4.2.0" 833 1483 source = "registry+https://github.com/rust-lang/crates.io-index" 834 - checksum = "24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d" 1484 + checksum = "7be68e64bf6ce8db94f63e72f0c7eb9a60d733f7e0499e628dfab0f84d6bcb97" 1485 + dependencies = [ 1486 + "serde", 1487 + "static_assertions", 1488 + "winnow", 1489 + "zvariant", 1490 + ] 835 1491 836 1492 [[package]] 837 - name = "windows_x86_64_gnullvm" 838 - version = "0.53.1" 1493 + name = "zvariant" 1494 + version = "5.8.0" 839 1495 source = "registry+https://github.com/rust-lang/crates.io-index" 840 - checksum = "0ffa179e2d07eee8ad8f57493436566c7cc30ac536a3379fdf008f47f6bb7ae1" 1496 + checksum = "2be61892e4f2b1772727be11630a62664a1826b62efa43a6fe7449521cb8744c" 1497 + dependencies = [ 1498 + "endi", 1499 + "enumflags2", 1500 + "serde", 1501 + "winnow", 1502 + "zvariant_derive", 1503 + "zvariant_utils", 1504 + ] 841 1505 842 1506 [[package]] 843 - name = "windows_x86_64_msvc" 844 - version = "0.52.6" 1507 + name = "zvariant_derive" 1508 + version = "5.8.0" 845 1509 source = "registry+https://github.com/rust-lang/crates.io-index" 846 - checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" 1510 + checksum = "da58575a1b2b20766513b1ec59d8e2e68db2745379f961f86650655e862d2006" 1511 + dependencies = [ 1512 + "proc-macro-crate", 1513 + "proc-macro2", 1514 + "quote 1.0.42", 1515 + "syn 2.0.113", 1516 + "zvariant_utils", 1517 + ] 847 1518 848 1519 [[package]] 849 - name = "windows_x86_64_msvc" 850 - version = "0.53.1" 1520 + name = "zvariant_utils" 1521 + version = "3.2.1" 851 1522 source = "registry+https://github.com/rust-lang/crates.io-index" 852 - checksum = "d6bbff5f0aada427a1e5a6da5f1f98158182f26556f345ac9e04d36d0ebed650" 1523 + checksum = "c6949d142f89f6916deca2232cf26a8afacf2b9fdc35ce766105e104478be599" 1524 + dependencies = [ 1525 + "proc-macro2", 1526 + "quote 1.0.42", 1527 + "serde", 1528 + "syn 2.0.113", 1529 + "winnow", 1530 + ]
+5 -4
Cargo.toml
··· 8 8 9 9 [dependencies] 10 10 anyhow = "1.0.100" 11 - clap = { version = "4.5.51", features = ["derive"] } 11 + clap = { version = "4.5.54", features = ["derive"] } 12 12 colog = "1.4.0" 13 13 env_logger = "0.11.8" 14 - log = "0.4.28" 14 + log = "0.4.29" 15 15 mpris = "2.0.1" 16 - wayland-client = "0.31.11" 17 - wayland-protocols = { version = "0.32.9", features = ["client", "unstable"] } 16 + wayland-client = "0.31.12" 17 + wayland-protocols = { version = "0.32.10", features = ["client", "unstable"] } 18 + zbus = { version = "5.12.0" } 18 19 19 20 [profile.release] 20 21 panic = "abort"
+9 -9
flake.lock
··· 2 2 "nodes": { 3 3 "crane": { 4 4 "locked": { 5 - "lastModified": 1762538466, 6 - "narHash": "sha256-8zrIPl6J+wLm9MH5ksHcW7BUHo7jSNOu0/hA0ohOOaM=", 5 + "lastModified": 1767461147, 6 + "narHash": "sha256-TH/xTeq/RI+DOzo+c+4F431eVuBpYVwQwBxzURe7kcI=", 7 7 "owner": "ipetkov", 8 8 "repo": "crane", 9 - "rev": "0cea393fffb39575c46b7a0318386467272182fe", 9 + "rev": "7d59256814085fd9666a2ae3e774dc5ee216b630", 10 10 "type": "github" 11 11 }, 12 12 "original": { ··· 22 22 ] 23 23 }, 24 24 "locked": { 25 - "lastModified": 1762844981, 26 - "narHash": "sha256-Sghy+Gi+zcUDFfdDJuKyPMtF/klSTeWjmJZoQH7SwzA=", 25 + "lastModified": 1767617821, 26 + "narHash": "sha256-hV5T4bJopoXrUR9neI8CaR04qX9XpsnydvgJaIPWkFs=", 27 27 "owner": "nix-community", 28 28 "repo": "flakelight", 29 - "rev": "faf9643dce373b7a556c77af8f8b961a75a066a4", 29 + "rev": "1d0d50612c3e13e62363aeed63715ec3a5d9e18f", 30 30 "type": "github" 31 31 }, 32 32 "original": { ··· 37 37 }, 38 38 "nixpkgs": { 39 39 "locked": { 40 - "lastModified": 1762977756, 41 - "narHash": "sha256-4PqRErxfe+2toFJFgcRKZ0UI9NSIOJa+7RXVtBhy4KE=", 40 + "lastModified": 1767379071, 41 + "narHash": "sha256-EgE0pxsrW9jp9YFMkHL9JMXxcqi/OoumPJYwf+Okucw=", 42 42 "owner": "NixOS", 43 43 "repo": "nixpkgs", 44 - "rev": "c5ae371f1a6a7fd27823bc500d9390b38c05fa55", 44 + "rev": "fb7944c166a3b630f177938e478f0378e64ce108", 45 45 "type": "github" 46 46 }, 47 47 "original": {
+4
flake.nix
··· 18 18 flakelight ./. { 19 19 inherit inputs; 20 20 pname = "wayland-mpris-idle-inhibit"; 21 + devShell = pkgs: (crane.mkLib pkgs).devShell { 22 + nativeBuildInputs = [ pkgs.pkg-config ]; 23 + buildInputs = [ pkgs.dbus pkgs.pkg-config ]; 24 + }; 21 25 package = 22 26 { rustPlatform 23 27 , dbus
+63
src/dbus.rs
··· 1 + use crate::Result; 2 + use anyhow::Context; 3 + use log::warn; 4 + use zbus::{blocking::Connection, proxy}; 5 + 6 + #[proxy( 7 + interface = "org.freedesktop.ScreenSaver", 8 + default_service = "org.freedesktop.ScreenSaver", 9 + default_path = "/ScreenSaver" 10 + )] 11 + trait ScreenSaver { 12 + fn Inhibit(&self, application_name: &str, reason_for_inhibit: &str) -> zbus::Result<u32>; 13 + 14 + #[zbus(no_reply)] 15 + fn UnInhibit(&self, cookie: u32) -> zbus::Result<()>; 16 + } 17 + 18 + pub struct DbusClient<'a> { 19 + _conn: Connection, 20 + proxy: ScreenSaverProxyBlocking<'a>, 21 + cookie: Option<u32>, 22 + } 23 + 24 + impl<'a> DbusClient<'a> { 25 + pub fn new() -> Result<Self> { 26 + let conn = Connection::session().context("While creating DBUS connection")?; 27 + let proxy = ScreenSaverProxyBlocking::new(&conn) 28 + .context("While initializing proxy to org.freedesktop.ScreenSaver")?; 29 + 30 + Ok(Self { 31 + _conn: conn, 32 + proxy, 33 + cookie: None, 34 + }) 35 + } 36 + } 37 + 38 + impl DbusClient<'_> { 39 + pub fn toggle(&mut self, playing: bool) -> Result { 40 + if playing { 41 + if let Some(old_cookie) = self.cookie.take() { 42 + warn!("Trying to inhibit but still have an old cookie"); 43 + if let Err(why) = self.proxy.UnInhibit(old_cookie) { 44 + warn!("Failed to uninhibit with old cookie ({why:?}), ignoring..."); 45 + } 46 + } 47 + let cookie = self 48 + .proxy 49 + .Inhibit( 50 + "wayland-mpris-idle-inhibit", 51 + "An MPRIS player is playing media", 52 + ) 53 + .context("While inhibiting")?; 54 + self.cookie = Some(cookie); 55 + Ok(()) 56 + } else if let Some(cookie) = self.cookie.take() { 57 + self.proxy.UnInhibit(cookie).context("While uninhibiting") 58 + } else { 59 + warn!("Tried to uninhibit but don't have an old cookie, ignoring..."); 60 + Ok(()) 61 + } 62 + } 63 + }
+15 -3
src/main.rs
··· 1 + mod dbus; 1 2 mod wayland; 2 3 3 4 use anyhow::{Context, Result as _Result}; ··· 5 6 use log::{debug, error, info}; 6 7 use mpris::{FindingError, PlayerFinder}; 7 8 9 + use crate::dbus::DbusClient; 8 10 use crate::wayland::WaylandClient; 9 11 10 12 type Result<T = ()> = _Result<T>; ··· 104 106 .into_iter() 105 107 .map(|s| s.to_lowercase()) 106 108 .collect::<Vec<_>>(); 109 + 107 110 let mut wayland_client = WaylandClient::new().context("Failed to initialize Wayland client")?; 111 + let mut dbus_client = DbusClient::new().context("While setting up DBUS client")?; 108 112 109 113 info!("Watching for MPRIS Changes..."); 110 114 ··· 116 120 debug!("MPRIS status: {playing}"); 117 121 if playing != current_status { 118 122 info!("MPRIS status changed: {playing}"); 123 + 119 124 let err = wayland_client 120 125 .set_inhibit_idle(playing) 121 126 .context("Failed to set idle inhibitor status"); 122 127 if let Err(e) = err { 123 - error!("Error setting idle inhibitor status: {e:?}"); 124 - } else { 125 - current_status = playing; 128 + error!("Error setting Wayland idle inhibitor status: {e:?}"); 126 129 } 130 + 131 + let err = dbus_client 132 + .toggle(playing) 133 + .context("While switching player status"); 134 + if let Err(why) = err { 135 + error!("Error setting DBUS idle inhibitor: {why:?}"); 136 + } 137 + 138 + current_status = playing; 127 139 } 128 140 } 129 141 Err(e) => error!("Error getting MPRIS status: {e:?}"),