diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md index a41f5006..95d893d8 100644 --- a/.github/ISSUE_TEMPLATE/bug_report.md +++ b/.github/ISSUE_TEMPLATE/bug_report.md @@ -20,4 +20,4 @@ labels: bug #### Logs -On linux, run `flatpak run io.github.wiiznokes.fan-control` in a terminal. \ No newline at end of file +On linux, run `flatpak run io.github.wiiznokes.fan-control` in a terminal. diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 84ffaff3..0ac5bd73 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -34,6 +34,9 @@ jobs: - run: rustup update - uses: taiki-e/install-action@just - uses: Swatinem/rust-cache@v2 + - name: Install deps + if: startsWith(matrix.os, 'ubuntu') + run: sudo apt-get update && sudo apt-get install pkg-config libxkbcommon-dev - name: Build libsensors on Ubuntu if: startsWith(matrix.os, 'ubuntu') @@ -71,6 +74,9 @@ jobs: - run: rustup update - uses: taiki-e/install-action@just - uses: Swatinem/rust-cache@v2 + - name: Install deps + if: startsWith(matrix.os, 'ubuntu') + run: sudo apt-get update && sudo apt-get install pkg-config libxkbcommon-dev - name: Build libsensors on Ubuntu if: startsWith(matrix.os, 'ubuntu') diff --git a/.gitignore b/.gitignore index 1c148233..0f6370b5 100644 --- a/.gitignore +++ b/.gitignore @@ -31,4 +31,5 @@ build/ /.flatpak-builder /vendor /repo -/flatpak-out \ No newline at end of file +/flatpak-out +package-lock.json diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 8a443aa0..bc370bf5 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -11,6 +11,6 @@ The name of the folders follow [this convention](https://en.wikipedia.org/wiki/L Support for [pontoon](https://github.com/mozilla/pontoon) (a tool for making translation) will be added at some point. -You can also translate the [metainfo](./resource/linux/metainfo.xml) file and the [desktop entry](./resource/linux/desktop_entry.desktop). +You can also translate the [metainfo](./res/linux/metainfo.xml) file and the [desktop entry](./res/linux/desktop_entry.desktop). Please don't translate the README, this will not be merged. diff --git a/Cargo.lock b/Cargo.lock index 2faa68e3..c3c237f3 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -4,9 +4,9 @@ version = 3 [[package]] name = "ab_glyph" -version = "0.2.23" +version = "0.2.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "80179d7dd5d7e8c285d67c4a1e652972a92de7475beddfb92028c76463b13225" +checksum = "2e53b0a3d5760cd2ba9b787ae0c6440ad18ee294ff71b05e3381c900a7d16cfd" dependencies = [ "ab_glyph_rasterizer", "owned_ttf_parser", @@ -38,8 +38,8 @@ source = "git+https://github.com/wash2/accesskit.git?branch=winit-0.29#5f9b61c82 dependencies = [ "accesskit", "accesskit_consumer", - "icrate 0.1.0", - "objc2 0.5.0", + "icrate 0.1.2", + "objc2 0.5.2", "once_cell", ] @@ -50,7 +50,7 @@ source = "git+https://github.com/wash2/accesskit.git?branch=winit-0.29#5f9b61c82 dependencies = [ "accesskit", "accesskit_consumer", - "async-channel 2.2.0", + "async-channel 2.3.1", "async-executor", "async-task", "atspi", @@ -58,7 +58,7 @@ dependencies = [ "futures-util", "once_cell", "serde", - "zbus", + "zbus 3.15.2", ] [[package]] @@ -83,7 +83,7 @@ dependencies = [ "accesskit_macos", "accesskit_unix", "accesskit_windows", - "raw-window-handle 0.6.0", + "raw-window-handle", "winit", ] @@ -132,9 +132,9 @@ checksum = "250f629c0161ad8107cf89319e990051fae62832fd343083bea452d93e2205fd" [[package]] name = "allocator-api2" -version = "0.2.16" +version = "0.2.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0942ffc6dcaadf03badf6e6a2d0228460359d5e34b57ccdc720b7382dfbd5ec5" +checksum = "5c6cb57a04249c6480766f7f7cef5467412af1490f8d1e243141daddada3264f" [[package]] name = "almost" @@ -186,47 +186,48 @@ dependencies = [ [[package]] name = "anstream" -version = "0.6.13" +version = "0.6.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d96bd03f33fe50a863e394ee9718a706f988b9079b20c3784fb726e7678b62fb" +checksum = "418c75fa768af9c03be99d17643f93f79bbba589895012a80e3452a19ddda15b" dependencies = [ "anstyle", "anstyle-parse", "anstyle-query", "anstyle-wincon", "colorchoice", + "is_terminal_polyfill", "utf8parse", ] [[package]] name = "anstyle" -version = "1.0.6" +version = "1.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8901269c6307e8d93993578286ac0edf7f195079ffff5ebdeea6a59ffb7e36bc" +checksum = "038dfcf04a5feb68e9c60b21c9625a54c2c0616e79b72b0fd87075a056ae1d1b" [[package]] name = "anstyle-parse" -version = "0.2.3" +version = "0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c75ac65da39e5fe5ab759307499ddad880d724eed2f6ce5b5e8a26f4f387928c" +checksum = "c03a11a9034d92058ceb6ee011ce58af4a9bf61491aa7e1e59ecd24bd40d22d4" dependencies = [ "utf8parse", ] [[package]] name = "anstyle-query" -version = "1.0.2" +version = "1.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e28923312444cdd728e4738b3f9c9cac739500909bb3d3c94b43551b16517648" +checksum = "a64c907d4e79225ac72e2a354c9ce84d50ebb4586dee56c82b3ee73004f537f5" dependencies = [ "windows-sys 0.52.0", ] [[package]] name = "anstyle-wincon" -version = "3.0.2" +version = "3.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1cd54b81ec8d6180e24654d0b371ad22fc3dd083b6ff8ba325b72e00c87660a7" +checksum = "61a38449feb7068f52bb06c12759005cf459ee52bb4adc1d5a7c4322d716fb19" dependencies = [ "anstyle", "windows-sys 0.52.0", @@ -288,47 +289,43 @@ dependencies = [ [[package]] name = "ashpd" -version = "0.6.8" +version = "0.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ac22eda5891cc086690cb6fa10121c0390de0e3b04eb269f2d766b00d3f2d81" +checksum = "dd884d7c72877a94102c3715f3b1cd09ff4fac28221add3e57cfbe25c236d093" dependencies = [ + "async-fs 2.1.2", + "async-net 2.0.0", "enumflags2", "futures-channel", "futures-util", - "once_cell", "rand", "serde", "serde_repr", "tokio", "url", - "zbus", + "zbus 4.2.2", ] [[package]] -name = "ashpd" -version = "0.7.0" +name = "async-broadcast" +version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "01992ad7774250d5b7fe214e2676cb99bf92564436d8135ab44fe815e71769a9" +checksum = "7c48ccdbf6ca6b121e0f586cbc0e73ae440e56c67c30fa0873b4e110d9c26d2b" dependencies = [ - "enumflags2", - "futures-channel", - "futures-util", - "rand", - "serde", - "serde_repr", - "tokio", - "url", - "zbus", + "event-listener 2.5.3", + "futures-core", ] [[package]] name = "async-broadcast" -version = "0.5.1" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7c48ccdbf6ca6b121e0f586cbc0e73ae440e56c67c30fa0873b4e110d9c26d2b" +checksum = "258b52a1aa741b9f09783b2d86cf0aeeb617bbf847f6933340a39644227acbdb" dependencies = [ - "event-listener 2.5.3", + "event-listener 5.3.0", + "event-listener-strategy 0.5.2", "futures-core", + "pin-project-lite", ] [[package]] @@ -344,27 +341,25 @@ dependencies = [ [[package]] name = "async-channel" -version = "2.2.0" +version = "2.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f28243a43d821d11341ab73c80bed182dc015c514b951616cf79bd4af39af0c3" +checksum = "89b47800b0be77592da0afd425cc03468052844aff33b84e33cc696f64e77b6a" dependencies = [ "concurrent-queue", - "event-listener 5.2.0", - "event-listener-strategy 0.5.0", + "event-listener-strategy 0.5.2", "futures-core", "pin-project-lite", ] [[package]] name = "async-executor" -version = "1.8.0" +version = "1.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "17ae5ebefcc48e7452b4987947920dac9450be1110cadf34d1b8c116bdbaf97c" +checksum = "c8828ec6e544c02b0d6691d21ed9f9218d0384a82542855073c2a3f58304aaf0" dependencies = [ - "async-lock 3.3.0", "async-task", "concurrent-queue", - "fastrand 2.0.2", + "fastrand 2.1.0", "futures-lite 2.3.0", "slab", ] @@ -381,6 +376,17 @@ dependencies = [ "futures-lite 1.13.0", ] +[[package]] +name = "async-fs" +version = "2.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ebcd09b382f40fcd159c2d695175b2ae620ffa5f3bd6f664131efff4e8b9e04a" +dependencies = [ + "async-lock 3.3.0", + "blocking", + "futures-lite 2.3.0", +] + [[package]] name = "async-io" version = "1.13.0" @@ -413,8 +419,8 @@ dependencies = [ "futures-io", "futures-lite 2.3.0", "parking", - "polling 3.6.0", - "rustix 0.38.32", + "polling 3.7.0", + "rustix 0.38.34", "slab", "tracing", "windows-sys 0.52.0", @@ -451,6 +457,17 @@ dependencies = [ "futures-lite 1.13.0", ] +[[package]] +name = "async-net" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b948000fad4873c1c9339d60f2623323a0cfd3816e5181033c6a5cb68b2accf7" +dependencies = [ + "async-io 2.3.2", + "blocking", + "futures-lite 2.3.0", +] + [[package]] name = "async-process" version = "1.8.1" @@ -464,66 +481,74 @@ dependencies = [ "cfg-if", "event-listener 3.1.0", "futures-lite 1.13.0", - "rustix 0.38.32", + "rustix 0.38.34", "windows-sys 0.48.0", ] +[[package]] +name = "async-process" +version = "2.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a53fc6301894e04a92cb2584fedde80cb25ba8e02d9dc39d4a87d036e22f397d" +dependencies = [ + "async-channel 2.3.1", + "async-io 2.3.2", + "async-lock 3.3.0", + "async-signal", + "async-task", + "blocking", + "cfg-if", + "event-listener 5.3.0", + "futures-lite 2.3.0", + "rustix 0.38.34", + "tracing", + "windows-sys 0.52.0", +] + [[package]] name = "async-recursion" -version = "1.1.0" +version = "1.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "30c5ef0ede93efbf733c1a727f3b6b5a1060bbedd5600183e66f6e4be4af0ec5" +checksum = "3b43422f69d8ff38f95f1b2bb76517c91589a924d1559a0e935d7c8ce0274c11" dependencies = [ "proc-macro2", "quote", - "syn 2.0.55", + "syn 2.0.66", ] [[package]] name = "async-signal" -version = "0.2.5" +version = "0.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9e47d90f65a225c4527103a8d747001fc56e375203592b25ad103e1ca13124c5" +checksum = "afe66191c335039c7bb78f99dc7520b0cbb166b3a1cb33a03f53d8a1c6f2afda" dependencies = [ "async-io 2.3.2", - "async-lock 2.8.0", + "async-lock 3.3.0", "atomic-waker", "cfg-if", "futures-core", "futures-io", - "rustix 0.38.32", + "rustix 0.38.34", "signal-hook-registry", "slab", - "windows-sys 0.48.0", + "windows-sys 0.52.0", ] [[package]] name = "async-task" -version = "4.7.0" +version = "4.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fbb36e985947064623dbd357f727af08ffd077f93d696782f3c56365fa2e2799" +checksum = "8b75356056920673b02621b35afd0f7dda9306d03c79a30f5c56c44cf256e3de" [[package]] name = "async-trait" -version = "0.1.79" +version = "0.1.80" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a507401cad91ec6a857ed5513a2073c82a9b9048762b885bb98655b306964681" +checksum = "c6fa2087f2753a7da8cc1c0dbfcf89579dd57458e36769de5ac750b4671737ca" dependencies = [ "proc-macro2", "quote", - "syn 2.0.55", -] - -[[package]] -name = "atk-sys" -version = "0.18.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "251e0b7d90e33e0ba930891a505a9a35ece37b2dd37a14f3ffc306c13b980009" -dependencies = [ - "glib-sys", - "gobject-sys", - "libc", - "system-deps", + "syn 2.0.66", ] [[package]] @@ -537,7 +562,7 @@ name = "atomicwrites" version = "0.4.2" source = "git+https://github.com/jackpot51/rust-atomicwrites#043ab4859d53ffd3d55334685303d8df39c9f768" dependencies = [ - "rustix 0.38.32", + "rustix 0.38.34", "tempfile", "windows-sys 0.48.0", ] @@ -562,9 +587,9 @@ dependencies = [ "enumflags2", "serde", "static_assertions", - "zbus", - "zbus_names", - "zvariant", + "zbus 3.15.2", + "zbus_names 2.6.1", + "zvariant 3.15.2", ] [[package]] @@ -576,7 +601,7 @@ dependencies = [ "atspi-common", "atspi-proxies", "futures-lite 1.13.0", - "zbus", + "zbus 3.15.2", ] [[package]] @@ -587,14 +612,14 @@ checksum = "6495661273703e7a229356dcbe8c8f38223d697aacfaf0e13590a9ac9977bb52" dependencies = [ "atspi-common", "serde", - "zbus", + "zbus 3.15.2", ] [[package]] name = "autocfg" -version = "1.2.0" +version = "1.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f1fdabc7756949593fe60f30ec81974b613357de856987752631dea1e3394c80" +checksum = "0c4b4d0bd25bd0b74681c0ad21497610ce1b7c91b1022cd21c80c6fbdd9476b0" [[package]] name = "backtrace" @@ -636,7 +661,7 @@ dependencies = [ "regex", "rustc-hash", "shlex", - "syn 2.0.55", + "syn 2.0.66", "which", ] @@ -717,49 +742,52 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e58aa60e59d8dbfcc36138f5f18be5f24394d33b38b24f7fd0b1caa33095f22f" dependencies = [ "block-sys", - "objc2 0.5.0", + "objc2 0.5.2", ] [[package]] name = "blocking" -version = "1.5.1" +version = "1.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a37913e8dc4ddcc604f0c6d3bf2887c995153af3611de9e23c352b44c1b9118" +checksum = "703f41c54fc768e63e091340b424302bb1c29ef4aa0c7f10fe849dfb114d29ea" dependencies = [ - "async-channel 2.2.0", - "async-lock 3.3.0", + "async-channel 2.3.1", "async-task", - "fastrand 2.0.2", "futures-io", "futures-lite 2.3.0", "piper", - "tracing", ] [[package]] name = "bumpalo" -version = "3.15.4" +version = "3.16.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "79296716171880943b8470b5f8d03aa55eb2e645a4874bdbb28adb49162e012c" + +[[package]] +name = "by_address" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7ff69b9dd49fd426c69a0db9fc04dd934cdb6645ff000864d98f7e2af8830eaa" +checksum = "64fa3c856b712db6612c019f14756e64e4bcea13337a6b33b696333a9eaa2d06" [[package]] name = "bytemuck" -version = "1.15.0" +version = "1.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5d6d68c57235a3a081186990eca2867354726650f42f7516ca50c28d6281fd15" +checksum = "78834c15cb5d5efe3452d58b1e8ba890dd62d21907f867f383358198e56ebca5" dependencies = [ "bytemuck_derive", ] [[package]] name = "bytemuck_derive" -version = "1.6.0" +version = "1.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4da9a32f3fed317401fa3c862968128267c3106685286e15d5aaa3d7389c2f60" +checksum = "369cfaf2a5bed5d8f8202073b2e093c9f508251de1551a0deb4253e4c7d80909" dependencies = [ "proc-macro2", "quote", - "syn 2.0.55", + "syn 2.0.66", ] [[package]] @@ -776,9 +804,9 @@ checksum = "514de17de45fdb8dc022b1a7975556c53c86f9f0aa5f534b98977b171857c2c9" [[package]] name = "cached" -version = "0.49.3" +version = "0.51.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e8e463fceca5674287f32d252fb1d94083758b8709c160efae66d263e5f4eba" +checksum = "dd93a9f06ec296ca66b4c26fafa9ed63f32c473d7a708a5f28563ee64c948515" dependencies = [ "ahash", "cached_proc_macro", @@ -791,14 +819,14 @@ dependencies = [ [[package]] name = "cached_proc_macro" -version = "0.20.0" +version = "0.21.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ad9f16c0d84de31a2ab7fdf5f7783c14631f7075cf464eb3bb43119f61c9cb2a" +checksum = "771aa57f3b17da6c8bcacb187bb9ec9bc81c8160e72342e67c329e0e1651a669" dependencies = [ - "darling 0.14.4", + "darling", "proc-macro2", "quote", - "syn 1.0.109", + "syn 2.0.66", ] [[package]] @@ -808,25 +836,29 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ade8366b8bd5ba243f0a58f036cc0ca8a2f069cff1a2351ef1cac6b083e16fc0" [[package]] -name = "cairo-sys-rs" -version = "0.18.2" +name = "calloop" +version = "0.12.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "685c9fa8e590b8b3d678873528d83411db17242a73fccaed827770ea0fedda51" +checksum = "fba7adb4dd5aa98e5553510223000e7148f621165ec5f9acd7113f6ca4995298" dependencies = [ - "libc", - "system-deps", + "bitflags 2.5.0", + "log", + "polling 3.7.0", + "rustix 0.38.34", + "slab", + "thiserror", ] [[package]] name = "calloop" -version = "0.12.4" +version = "0.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fba7adb4dd5aa98e5553510223000e7148f621165ec5f9acd7113f6ca4995298" +checksum = "b99da2f8558ca23c71f4fd15dc57c906239752dd27ff3c00a1d56b685b7cbfec" dependencies = [ "bitflags 2.5.0", "log", - "polling 3.6.0", - "rustix 0.38.32", + "polling 3.7.0", + "rustix 0.38.34", "slab", "thiserror", ] @@ -837,17 +869,29 @@ version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0f0ea9b9476c7fad82841a8dbb380e2eae480c21910feba80725b46931ed8f02" dependencies = [ - "calloop", - "rustix 0.38.32", + "calloop 0.12.4", + "rustix 0.38.34", + "wayland-backend", + "wayland-client", +] + +[[package]] +name = "calloop-wayland-source" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "95a66a987056935f7efce4ab5668920b5d0dac4a7c99991a67395f13702ddd20" +dependencies = [ + "calloop 0.13.0", + "rustix 0.38.34", "wayland-backend", "wayland-client", ] [[package]] name = "cargo-packager-resource-resolver" -version = "0.1.0" +version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "13797f4d2ac4fb5a3b5b39380c0338c3a39de0d6ff7eb832129346f6ce7c9750" +checksum = "5b5ef5863f81afa1b45d1b7e01b319d9e940c9be5615bc0a988421987d35c9f8" dependencies = [ "cargo-packager-utils", "heck 0.4.1", @@ -866,12 +910,13 @@ dependencies = [ [[package]] name = "cc" -version = "1.0.90" +version = "1.0.98" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8cd6604a82acf3039f1144f54b8eb34e91ffba622051189e71b781822d5ee1f5" +checksum = "41c270e7540d725e65ac7f1b212ac8ce349719624d7bcff99f8e2e488e8cf03f" dependencies = [ "jobserver", "libc", + "once_cell", ] [[package]] @@ -889,16 +934,6 @@ dependencies = [ "nom", ] -[[package]] -name = "cfg-expr" -version = "0.15.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fa50868b64a9a6fda9d593ce778849ea8715cd2a3d2cc17ffdb4a2f2f2f1961d" -dependencies = [ - "smallvec", - "target-lexicon", -] - [[package]] name = "cfg-if" version = "1.0.0" @@ -913,29 +948,29 @@ checksum = "fd16c4719339c4530435d38e511904438d07cce7950afa3718a84ac36c10e89e" [[package]] name = "cfg_aliases" -version = "0.2.0" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "77e53693616d3075149f4ead59bdeecd204ac6b8192d8969757601b74bddf00f" +checksum = "613afe47fcd5fac7ccf1db93babcb082c5994d996f20b8b159f2ad1658eb5724" [[package]] name = "chrono" -version = "0.4.37" +version = "0.4.38" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a0d04d43504c61aa6c7531f1871dd0d418d91130162063b789da00fd7057a5e" +checksum = "a21f936df1771bf62b77f047b726c4625ff2e8aa607c01ec06e5a05bd8463401" dependencies = [ "android-tzdata", "iana-time-zone", "js-sys", "num-traits", "wasm-bindgen", - "windows-targets 0.52.4", + "windows-targets 0.52.5", ] [[package]] name = "clang-sys" -version = "1.7.0" +version = "1.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "67523a3b4be3ce1989d607a828d036249522dd9c1c8de7f4dd2dae43a37369d1" +checksum = "a483f3cbf7cec2e153d424d0e92329d816becc6421389bd494375c6065921b9b" dependencies = [ "glob", "libc", @@ -961,7 +996,7 @@ dependencies = [ "anstream", "anstyle", "clap_lex", - "strsim 0.11.0", + "strsim 0.11.1", ] [[package]] @@ -973,7 +1008,7 @@ dependencies = [ "heck 0.5.0", "proc-macro2", "quote", - "syn 2.0.55", + "syn 2.0.66", ] [[package]] @@ -984,9 +1019,9 @@ checksum = "98cc8fbded0c607b7ba9dd60cd98df59af97e84d24e49c8557331cfc26d301ce" [[package]] name = "clipboard-win" -version = "5.3.0" +version = "5.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d517d4b86184dbb111d3556a10f1c8a04da7428d2987bf1081602bf11c3aa9ee" +checksum = "79f4473f5144e20d9aceaf2972478f06ddf687831eafeeb434fbaf0acc4144ad" dependencies = [ "error-code", ] @@ -994,7 +1029,7 @@ dependencies = [ [[package]] name = "clipboard_macos" version = "0.1.0" -source = "git+https://github.com/pop-os/window_clipboard.git?tag=pop-mime-types#f65a6c303bbbd6c7bf88f9bc34421ec06d893bea" +source = "git+https://github.com/pop-os/window_clipboard.git?tag=pop-dnd-6#8a816d8f218e290041bb5ef6d3b695c38e0a53b7" dependencies = [ "objc", "objc-foundation", @@ -1004,8 +1039,9 @@ dependencies = [ [[package]] name = "clipboard_wayland" version = "0.2.2" -source = "git+https://github.com/pop-os/window_clipboard.git?tag=pop-mime-types#f65a6c303bbbd6c7bf88f9bc34421ec06d893bea" +source = "git+https://github.com/pop-os/window_clipboard.git?tag=pop-dnd-6#8a816d8f218e290041bb5ef6d3b695c38e0a53b7" dependencies = [ + "dnd", "mime", "smithay-clipboard", ] @@ -1013,7 +1049,7 @@ dependencies = [ [[package]] name = "clipboard_x11" version = "0.4.2" -source = "git+https://github.com/pop-os/window_clipboard.git?tag=pop-mime-types#f65a6c303bbbd6c7bf88f9bc34421ec06d893bea" +source = "git+https://github.com/pop-os/window_clipboard.git?tag=pop-dnd-6#8a816d8f218e290041bb5ef6d3b695c38e0a53b7" dependencies = [ "thiserror", "x11rb", @@ -1067,9 +1103,9 @@ checksum = "3d7b894f5411737b7867f4827955924d7c254fc9f4d91a6aad6b097804b1018b" [[package]] name = "colorchoice" -version = "1.0.0" +version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "acbf1af155f9b9ef647e42cdc158db4b64a1b61f743629225fde6f3e0be2a7c7" +checksum = "0b6a852b24ab71dffc585bcb46eaf7959d175cb865a7152e35b348d1b2960422" [[package]] name = "com" @@ -1104,9 +1140,9 @@ dependencies = [ [[package]] name = "combine" -version = "4.6.6" +version = "4.6.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "35ed6e9d84f0b51a7f52daf1c7d71dd136fd7a3f41a8462b8cdb8c78d920fad4" +checksum = "ba5a308b75df32fe02788e748662718f03fde005016435c444eea572398219fd" dependencies = [ "bytes", "memchr", @@ -1114,9 +1150,9 @@ dependencies = [ [[package]] name = "concurrent-queue" -version = "2.4.0" +version = "2.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d16048cd947b08fa32c24458a22f5dc5e835264f689f4f5653210c69fd107363" +checksum = "4ca0197aee26d1ae37445ee532fefce43251d24cc7c166799f4d46817f1d3973" dependencies = [ "crossbeam-utils", ] @@ -1188,9 +1224,9 @@ checksum = "06ea2b9bc92be3c2baa9334a323ebca2d6f074ff852cd1d7b11064035cd3868f" [[package]] name = "core-graphics" -version = "0.23.1" +version = "0.23.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "970a29baf4110c26fedbc7f82107d42c23f7e88e404c4577ed73fe99ff85a212" +checksum = "c07782be35f9e1140080c6b96f0d44b739e2278479f64e02fdab4e32dfd8b081" dependencies = [ "bitflags 1.3.2", "core-foundation", @@ -1213,7 +1249,7 @@ dependencies = [ [[package]] name = "cosmic-config" version = "0.1.0" -source = "git+https://github.com/pop-os/libcosmic?branch=master#61a14a953dcb052efa6cdaf5b37c74e964896f5f" +source = "git+https://github.com/pop-os/libcosmic?branch=master#8b0bb6a677ef7dfc02f97e1f579308cf3c18eefd" dependencies = [ "atomicwrites", "cosmic-config-derive", @@ -1224,13 +1260,15 @@ dependencies = [ "once_cell", "ron", "serde", + "tokio", + "tracing", "xdg", ] [[package]] name = "cosmic-config-derive" version = "0.1.0" -source = "git+https://github.com/pop-os/libcosmic?branch=master#61a14a953dcb052efa6cdaf5b37c74e964896f5f" +source = "git+https://github.com/pop-os/libcosmic?branch=master#8b0bb6a677ef7dfc02f97e1f579308cf3c18eefd" dependencies = [ "quote", "syn 1.0.109", @@ -1239,7 +1277,7 @@ dependencies = [ [[package]] name = "cosmic-text" version = "0.11.2" -source = "git+https://github.com/pop-os/cosmic-text.git#ff5501d9a36e51c50d908413caf7632d8f7533b7" +source = "git+https://github.com/pop-os/cosmic-text.git#2f5f2c63dabc0173adaa95d619a777454a3c39af" dependencies = [ "bitflags 2.5.0", "fontdb", @@ -1248,10 +1286,10 @@ dependencies = [ "rangemap", "rustc-hash", "rustybuzz", - "self_cell 1.0.3", + "self_cell 1.0.4", "swash", "sys-locale", - "ttf-parser", + "ttf-parser 0.20.0", "unicode-bidi", "unicode-linebreak", "unicode-script", @@ -1261,7 +1299,7 @@ dependencies = [ [[package]] name = "cosmic-theme" version = "0.1.0" -source = "git+https://github.com/pop-os/libcosmic?branch=master#61a14a953dcb052efa6cdaf5b37c74e964896f5f" +source = "git+https://github.com/pop-os/libcosmic?branch=master#8b0bb6a677ef7dfc02f97e1f579308cf3c18eefd" dependencies = [ "almost", "cosmic-config", @@ -1271,6 +1309,7 @@ dependencies = [ "palette", "ron", "serde", + "serde_json", "thiserror", ] @@ -1285,18 +1324,18 @@ dependencies = [ [[package]] name = "crc32fast" -version = "1.4.0" +version = "1.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b3855a8a784b474f333699ef2bbca9db2c4a1f6d9088a90a2d25b1eb53111eaa" +checksum = "a97769d94ddab943e4510d138150169a2758b5ef3eb191a9ee688de3e23ef7b3" dependencies = [ "cfg-if", ] [[package]] name = "crossbeam-channel" -version = "0.5.12" +version = "0.5.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ab3db02a9c5b5121e1e42fbdb1aeb65f5e02624cc58c43f2884c6ccac0b82f95" +checksum = "33480d6946193aa8033910124896ca395333cae7e2d1113d1fef6c3272217df2" dependencies = [ "crossbeam-utils", ] @@ -1322,9 +1361,9 @@ dependencies = [ [[package]] name = "crossbeam-utils" -version = "0.8.19" +version = "0.8.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "248e3bacc7dc6baa3b21e405ee045c3047101a49145e7e9eca583ab4c2ca5345" +checksum = "22ec99545bb0ed0ea7bb9b8e1e9122ea386ff8a48c0922e43f36d45ab09e0e80" [[package]] name = "crossterm" @@ -1336,7 +1375,7 @@ dependencies = [ "crossterm_winapi", "libc", "mio", - "parking_lot 0.12.1", + "parking_lot 0.12.3", "signal-hook", "signal-hook-mio", "winapi", @@ -1385,12 +1424,12 @@ dependencies = [ [[package]] name = "ctor" -version = "0.2.7" +version = "0.2.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ad291aa74992b9b7a7e88c38acbbf6ad7e107f1d90ee8775b7bc1fc3394f485c" +checksum = "edb49164822f3ee45b17acd4a208cfc1251410cf0cad9a833234c9890774dd9f" dependencies = [ "quote", - "syn 2.0.55", + "syn 2.0.66", ] [[package]] @@ -1411,72 +1450,37 @@ dependencies = [ [[package]] name = "darling" -version = "0.14.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b750cb3417fd1b327431a470f388520309479ab0bf5e323505daf0290cd3850" -dependencies = [ - "darling_core 0.14.4", - "darling_macro 0.14.4", -] - -[[package]] -name = "darling" -version = "0.20.8" +version = "0.20.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "54e36fcd13ed84ffdfda6f5be89b31287cbb80c439841fe69e04841435464391" +checksum = "83b2eb4d90d12bdda5ed17de686c2acb4c57914f8f921b8da7e112b5a36f3fe1" dependencies = [ - "darling_core 0.20.8", - "darling_macro 0.20.8", -] - -[[package]] -name = "darling_core" -version = "0.14.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "109c1ca6e6b7f82cc233a97004ea8ed7ca123a9af07a8230878fcfda9b158bf0" -dependencies = [ - "fnv", - "ident_case", - "proc-macro2", - "quote", - "strsim 0.10.0", - "syn 1.0.109", + "darling_core", + "darling_macro", ] [[package]] name = "darling_core" -version = "0.20.8" +version = "0.20.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c2cf1c23a687a1feeb728783b993c4e1ad83d99f351801977dd809b48d0a70f" +checksum = "622687fe0bac72a04e5599029151f5796111b90f1baaa9b544d807a5e31cd120" dependencies = [ "fnv", "ident_case", "proc-macro2", "quote", - "strsim 0.10.0", - "syn 2.0.55", -] - -[[package]] -name = "darling_macro" -version = "0.14.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a4aab4dbc9f7611d8b55048a3a16d2d010c2c8334e46304b40ac1cc14bf3b48e" -dependencies = [ - "darling_core 0.14.4", - "quote", - "syn 1.0.109", + "strsim 0.11.1", + "syn 2.0.66", ] [[package]] name = "darling_macro" -version = "0.20.8" +version = "0.20.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a668eda54683121533a393014d8692171709ff57a7d61f187b6e782719f8933f" +checksum = "733cabb43482b1a1b53eee8583c2b9e8684d592215ea83efd305dd31bc2f0178" dependencies = [ - "darling_core 0.20.8", + "darling_core", "quote", - "syn 2.0.55", + "syn 2.0.66", ] [[package]] @@ -1489,7 +1493,7 @@ dependencies = [ "hashbrown", "lock_api", "once_cell", - "parking_lot_core 0.9.9", + "parking_lot_core 0.9.10", ] [[package]] @@ -1512,7 +1516,7 @@ dependencies = [ "serde_json", "serial_test", "thiserror", - "toml 0.8.12", + "toml 0.8.13", "utils", ] @@ -1551,7 +1555,7 @@ dependencies = [ "convert_case", "proc-macro2", "quote", - "syn 2.0.55", + "syn 2.0.66", "unicode-xid", ] @@ -1561,10 +1565,10 @@ version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4e8ef033054e131169b8f0f9a7af8f5533a9436fadf3c500ed547f730f07090d" dependencies = [ - "darling 0.20.8", + "darling", "proc-macro2", "quote", - "syn 2.0.55", + "syn 2.0.66", ] [[package]] @@ -1621,7 +1625,7 @@ checksum = "487585f4d0c6655fe74905e2504d8ad6908e4db67f744eb140876906c2f3175d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.55", + "syn 2.0.66", ] [[package]] @@ -1642,11 +1646,23 @@ dependencies = [ "const-random", ] +[[package]] +name = "dnd" +version = "0.1.0" +source = "git+https://github.com/pop-os/window_clipboard.git?tag=pop-dnd-6#8a816d8f218e290041bb5ef6d3b695c38e0a53b7" +dependencies = [ + "bitflags 2.5.0", + "mime", + "raw-window-handle", + "smithay-client-toolkit 0.18.0", + "smithay-clipboard", +] + [[package]] name = "downcast-rs" -version = "1.2.0" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ea835d29036a4087793836fa931b08837ad5e957da9e23886b29586fb9b6650" +checksum = "75b325c5dbd37f80359721ad39aca5a29fb04c89279657cffdda8736d0c0b9d2" [[package]] name = "drm" @@ -1658,7 +1674,7 @@ dependencies = [ "bytemuck", "drm-ffi", "drm-fourcc", - "rustix 0.38.32", + "rustix 0.38.34", ] [[package]] @@ -1668,7 +1684,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "41334f8405792483e32ad05fbb9c5680ff4e84491883d2947a4757dc54cb2ac6" dependencies = [ "drm-sys", - "rustix 0.38.32", + "rustix 0.38.34", ] [[package]] @@ -1695,9 +1711,15 @@ checksum = "56ce8c6da7551ec6c462cbaf3bfbc75131ebbfa1c944aeaa9dab51ca1c5f0c3b" [[package]] name = "either" -version = "1.10.0" +version = "1.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3dca9240753cf90908d7e4aac30f630662b02aebaa1b58a3cadabdb23385b58b" + +[[package]] +name = "endi" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "11157ac094ffbdde99aa67b23417ebdd801842852b500e395a45a9c0aac03e4a" +checksum = "a3d8a32ae18130a3c84dd492d4215c3d913c3b07c6b63c2eb3eb7ff1101ab7bf" [[package]] name = "enumflags2" @@ -1717,7 +1739,7 @@ checksum = "5c785274071b1b420972453b306eeca06acf4633829db4223b58a2a8c5953bc4" dependencies = [ "proc-macro2", "quote", - "syn 2.0.55", + "syn 2.0.66", ] [[package]] @@ -1751,9 +1773,9 @@ checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" [[package]] name = "errno" -version = "0.3.8" +version = "0.3.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a258e46cdc063eb8519c00b9fc845fc47bcfca4130e2f08e88665ceda8474245" +checksum = "534c5cf6194dfab3db3242765c03bbe257cf92f22b38f6bc0c58d59108a820ba" dependencies = [ "libc", "windows-sys 0.52.0", @@ -1777,9 +1799,9 @@ dependencies = [ [[package]] name = "euclid" -version = "0.22.9" +version = "0.22.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87f253bc5c813ca05792837a0ff4b3a580336b224512d48f7eda1d7dd9210787" +checksum = "e0f0eb73b934648cd7a4a61f1b15391cd95dab0b4da6e2e66c2a072c144b4a20" dependencies = [ "num-traits", ] @@ -1814,9 +1836,9 @@ dependencies = [ [[package]] name = "event-listener" -version = "5.2.0" +version = "5.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b5fb89194fa3cad959b833185b3063ba881dbfc7030680b314250779fb4cc91" +checksum = "6d9944b8ca13534cdfb2800775f8dd4902ff3fc75a50101466decadfdf322a24" dependencies = [ "concurrent-queue", "parking", @@ -1835,11 +1857,11 @@ dependencies = [ [[package]] name = "event-listener-strategy" -version = "0.5.0" +version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "feedafcaa9b749175d5ac357452a9d41ea2911da598fde46ce1fe02c37751291" +checksum = "0f214dc438f977e6d4e3500aaa277f5ad94ca83fbbd9b1a15713ce2344ccc5a1" dependencies = [ - "event-listener 5.2.0", + "event-listener 5.3.0", "pin-project-lite", ] @@ -1891,9 +1913,9 @@ dependencies = [ [[package]] name = "fastrand" -version = "2.0.2" +version = "2.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "658bd65b1cf4c852a3cc96f18a8ce7b5640f6b703f905c7d74532294c2a63984" +checksum = "9fc0510504f03c51ada170672ac806f1f105a88aa97a5281117e1ddc3368e51a" [[package]] name = "fdeflate" @@ -1927,9 +1949,9 @@ dependencies = [ [[package]] name = "flate2" -version = "1.0.28" +version = "1.0.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "46303f565772937ffe1d394a4fac6f411c6013172fadde9dcdb1e147a086940e" +checksum = "5f54427cfd1c7829e2a139fcefea601bf088ebca651d2bf53ebc600eac295dae" dependencies = [ "crc32fast", "miniz_oxide", @@ -1949,9 +1971,9 @@ checksum = "8bf7cc16383c4b8d58b9905a8509f02926ce3058053c056376248d958c9df1e8" [[package]] name = "fluent" -version = "0.16.0" +version = "0.16.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "61f69378194459db76abd2ce3952b790db103ceb003008d3d50d97c41ff847a7" +checksum = "bb74634707bebd0ce645a981148e8fb8c7bccd4c33c652aeffd28bf2f96d555a" dependencies = [ "fluent-bundle", "unic-langid", @@ -1959,9 +1981,9 @@ dependencies = [ [[package]] name = "fluent-bundle" -version = "0.15.2" +version = "0.15.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e242c601dec9711505f6d5bbff5bedd4b61b2469f2e8bb8e57ee7c9747a87ffd" +checksum = "7fe0a21ee80050c678013f82edf4b705fe2f26f1f9877593d13198612503f493" dependencies = [ "fluent-langneg", "fluent-syntax", @@ -1984,9 +2006,9 @@ dependencies = [ [[package]] name = "fluent-syntax" -version = "0.11.0" +version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c0abed97648395c902868fee9026de96483933faa54ea3b40d652f7dfe61ca78" +checksum = "2a530c4694a6a8d528794ee9bbd8ba0122e779629ac908d15ad5a7ae7763a33d" dependencies = [ "thiserror", ] @@ -2008,9 +2030,12 @@ checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" [[package]] name = "font-types" -version = "0.4.3" +version = "0.5.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b7f6040d337bd44434ab21fc6509154edf2cece88b23758d9d64654c4e7730b" +checksum = "bdf6aa1de86490d8e39e04589bd04eb5953cc2a5ef0c25e389e807f44fd24e41" +dependencies = [ + "bytemuck", +] [[package]] name = "fontconfig-parser" @@ -2029,10 +2054,10 @@ checksum = "b0299020c3ef3f60f526a4f64ab4a3d4ce116b1acbf24cdd22da0068e5d81dc3" dependencies = [ "fontconfig-parser", "log", - "memmap2", + "memmap2 0.9.4", "slotmap", "tinyvec", - "ttf-parser", + "ttf-parser 0.20.0", ] [[package]] @@ -2053,7 +2078,7 @@ checksum = "1a5c6c585bc94aaf2c7b51dd4c2ba22680844aba4c687be581871a6f518c5742" dependencies = [ "proc-macro2", "quote", - "syn 2.0.55", + "syn 2.0.66", ] [[package]] @@ -2173,7 +2198,7 @@ version = "2.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "52527eb5074e35e9339c6b4e8d12600c7128b68fb25dcb9fa9dec18f7c25f3a5" dependencies = [ - "fastrand 2.0.2", + "fastrand 2.1.0", "futures-core", "futures-io", "parking", @@ -2188,7 +2213,7 @@ checksum = "87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac" dependencies = [ "proc-macro2", "quote", - "syn 2.0.55", + "syn 2.0.66", ] [[package]] @@ -2221,36 +2246,6 @@ dependencies = [ "slab", ] -[[package]] -name = "gdk-pixbuf-sys" -version = "0.18.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f9839ea644ed9c97a34d129ad56d38a25e6756f99f3a88e15cd39c20629caf7" -dependencies = [ - "gio-sys", - "glib-sys", - "gobject-sys", - "libc", - "system-deps", -] - -[[package]] -name = "gdk-sys" -version = "0.18.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "31ff856cb3386dae1703a920f803abafcc580e9b5f711ca62ed1620c25b51ff2" -dependencies = [ - "cairo-sys-rs", - "gdk-pixbuf-sys", - "gio-sys", - "glib-sys", - "gobject-sys", - "libc", - "pango-sys", - "pkg-config", - "system-deps", -] - [[package]] name = "generic-array" version = "0.14.7" @@ -2273,9 +2268,9 @@ dependencies = [ [[package]] name = "getrandom" -version = "0.2.12" +version = "0.2.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "190092ea657667030ac6a35e305e62fc4dd69fd98ac98631e5d3a2b1575a12b5" +checksum = "c4567c8db10ae91089c99af84c68c38da3ec2f087c3f82960bcdbf3656b6f4d7" dependencies = [ "cfg-if", "libc", @@ -2308,19 +2303,6 @@ version = "0.28.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4271d37baee1b8c7e4b708028c57d816cf9d2434acb33a549475f78c181f6253" -[[package]] -name = "gio-sys" -version = "0.18.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "37566df850baf5e4cb0dfb78af2e4b9898d817ed9263d1090a2df958c64737d2" -dependencies = [ - "glib-sys", - "gobject-sys", - "libc", - "system-deps", - "winapi", -] - [[package]] name = "gl_generator" version = "0.14.0" @@ -2338,16 +2320,6 @@ version = "0.24.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b5418c17512bdf42730f9032c74e1ae39afc408745ebb2acf72fbc4691c17945" -[[package]] -name = "glib-sys" -version = "0.18.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "063ce2eb6a8d0ea93d2bf8ba1957e78dbab6be1c2220dd3daca57d5a9d869898" -dependencies = [ - "libc", - "system-deps", -] - [[package]] name = "glob" version = "0.3.1" @@ -2386,17 +2358,6 @@ dependencies = [ "wgpu", ] -[[package]] -name = "gobject-sys" -version = "0.18.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0850127b514d1c4a4654ead6dedadb18198999985908e6ffe4436f53c785ce44" -dependencies = [ - "glib-sys", - "libc", - "system-deps", -] - [[package]] name = "gpu-alloc" version = "0.6.0" @@ -2455,24 +2416,6 @@ version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1df00eed8d1f0db937f6be10e46e8072b0671accb504cf0f959c5c52c679f5b9" -[[package]] -name = "gtk-sys" -version = "0.18.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "771437bf1de2c1c0b496c11505bdf748e26066bbe942dfc8f614c9460f6d7722" -dependencies = [ - "atk-sys", - "cairo-sys-rs", - "gdk-pixbuf-sys", - "gdk-sys", - "gio-sys", - "glib-sys", - "gobject-sys", - "libc", - "pango-sys", - "system-deps", -] - [[package]] name = "guillotiere" version = "0.6.2" @@ -2485,9 +2428,9 @@ dependencies = [ [[package]] name = "half" -version = "2.4.0" +version = "2.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b5eceaaeec696539ddaf7b333340f1af35a5aa87ae3e4f3ead0532f72affab2e" +checksum = "6dd08c532ae367adf81c312a4580bc67f1d0fe8bc9c460520283f4c0ff277888" dependencies = [ "cfg-if", "crunchy", @@ -2501,7 +2444,7 @@ dependencies = [ "env_logger", "lm-sensors", "log", - "ouroboros 0.18.3", + "ouroboros 0.18.4", "rand", "serde", "serde_json", @@ -2511,9 +2454,9 @@ dependencies = [ [[package]] name = "hashbrown" -version = "0.14.3" +version = "0.14.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "290f1a1d9242c78d09ce40a5e87e7554ee637af1351968159f4952f028f75604" +checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1" dependencies = [ "ahash", "allocator-api2", @@ -2589,7 +2532,7 @@ dependencies = [ "serde", "serde_derive", "thiserror", - "toml 0.8.12", + "toml 0.8.13", "unic-langid", ] @@ -2608,7 +2551,7 @@ dependencies = [ "lazy_static", "locale_config", "log", - "parking_lot 0.12.1", + "parking_lot 0.12.3", "rust-embed", "thiserror", "unic-langid", @@ -2632,7 +2575,7 @@ dependencies = [ "proc-macro2", "quote", "strsim 0.10.0", - "syn 2.0.55", + "syn 2.0.66", "unic-langid", ] @@ -2646,7 +2589,7 @@ dependencies = [ "i18n-config", "proc-macro2", "quote", - "syn 2.0.55", + "syn 2.0.66", ] [[package]] @@ -2675,8 +2618,9 @@ dependencies = [ [[package]] name = "iced" version = "0.12.0" -source = "git+https://github.com/pop-os/libcosmic?branch=master#61a14a953dcb052efa6cdaf5b37c74e964896f5f" +source = "git+https://github.com/pop-os/libcosmic?branch=master#8b0bb6a677ef7dfc02f97e1f579308cf3c18eefd" dependencies = [ + "dnd", "iced_accessibility", "iced_core", "iced_futures", @@ -2684,6 +2628,7 @@ dependencies = [ "iced_widget", "iced_winit", "image", + "mime", "thiserror", "window_clipboard", ] @@ -2691,7 +2636,7 @@ dependencies = [ [[package]] name = "iced_accessibility" version = "0.1.0" -source = "git+https://github.com/pop-os/libcosmic?branch=master#61a14a953dcb052efa6cdaf5b37c74e964896f5f" +source = "git+https://github.com/pop-os/libcosmic?branch=master#8b0bb6a677ef7dfc02f97e1f579308cf3c18eefd" dependencies = [ "accesskit", "accesskit_winit", @@ -2700,13 +2645,15 @@ dependencies = [ [[package]] name = "iced_core" version = "0.12.0" -source = "git+https://github.com/pop-os/libcosmic?branch=master#61a14a953dcb052efa6cdaf5b37c74e964896f5f" +source = "git+https://github.com/pop-os/libcosmic?branch=master#8b0bb6a677ef7dfc02f97e1f579308cf3c18eefd" dependencies = [ - "bitflags 1.3.2", + "bitflags 2.5.0", + "dnd", "log", + "mime", "num-traits", "palette", - "raw-window-handle 0.6.0", + "raw-window-handle", "serde", "smol_str", "thiserror", @@ -2718,7 +2665,7 @@ dependencies = [ [[package]] name = "iced_futures" version = "0.12.0" -source = "git+https://github.com/pop-os/libcosmic?branch=master#61a14a953dcb052efa6cdaf5b37c74e964896f5f" +source = "git+https://github.com/pop-os/libcosmic?branch=master#8b0bb6a677ef7dfc02f97e1f579308cf3c18eefd" dependencies = [ "futures", "iced_core", @@ -2732,9 +2679,9 @@ dependencies = [ [[package]] name = "iced_graphics" version = "0.12.0" -source = "git+https://github.com/pop-os/libcosmic?branch=master#61a14a953dcb052efa6cdaf5b37c74e964896f5f" +source = "git+https://github.com/pop-os/libcosmic?branch=master#8b0bb6a677ef7dfc02f97e1f579308cf3c18eefd" dependencies = [ - "bitflags 1.3.2", + "bitflags 2.5.0", "bytemuck", "cosmic-text", "glam", @@ -2746,7 +2693,7 @@ dependencies = [ "log", "lyon_path", "once_cell", - "raw-window-handle 0.6.0", + "raw-window-handle", "rustc-hash", "thiserror", "unicode-segmentation", @@ -2756,7 +2703,7 @@ dependencies = [ [[package]] name = "iced_renderer" version = "0.12.0" -source = "git+https://github.com/pop-os/libcosmic?branch=master#61a14a953dcb052efa6cdaf5b37c74e964896f5f" +source = "git+https://github.com/pop-os/libcosmic?branch=master#8b0bb6a677ef7dfc02f97e1f579308cf3c18eefd" dependencies = [ "iced_graphics", "iced_tiny_skia", @@ -2768,8 +2715,9 @@ dependencies = [ [[package]] name = "iced_runtime" version = "0.12.0" -source = "git+https://github.com/pop-os/libcosmic?branch=master#61a14a953dcb052efa6cdaf5b37c74e964896f5f" +source = "git+https://github.com/pop-os/libcosmic?branch=master#8b0bb6a677ef7dfc02f97e1f579308cf3c18eefd" dependencies = [ + "dnd", "iced_core", "iced_futures", "thiserror", @@ -2779,7 +2727,7 @@ dependencies = [ [[package]] name = "iced_style" version = "0.12.0" -source = "git+https://github.com/pop-os/libcosmic?branch=master#61a14a953dcb052efa6cdaf5b37c74e964896f5f" +source = "git+https://github.com/pop-os/libcosmic?branch=master#8b0bb6a677ef7dfc02f97e1f579308cf3c18eefd" dependencies = [ "iced_core", "once_cell", @@ -2789,7 +2737,7 @@ dependencies = [ [[package]] name = "iced_tiny_skia" version = "0.12.0" -source = "git+https://github.com/pop-os/libcosmic?branch=master#61a14a953dcb052efa6cdaf5b37c74e964896f5f" +source = "git+https://github.com/pop-os/libcosmic?branch=master#8b0bb6a677ef7dfc02f97e1f579308cf3c18eefd" dependencies = [ "bytemuck", "cosmic-text", @@ -2806,9 +2754,9 @@ dependencies = [ [[package]] name = "iced_wgpu" version = "0.12.0" -source = "git+https://github.com/pop-os/libcosmic?branch=master#61a14a953dcb052efa6cdaf5b37c74e964896f5f" +source = "git+https://github.com/pop-os/libcosmic?branch=master#8b0bb6a677ef7dfc02f97e1f579308cf3c18eefd" dependencies = [ - "bitflags 1.3.2", + "bitflags 2.5.0", "bytemuck", "futures", "glam", @@ -2818,15 +2766,23 @@ dependencies = [ "log", "lyon", "once_cell", + "raw-window-handle", "resvg", + "rustix 0.38.34", + "smithay-client-toolkit 0.18.0", + "wayland-backend", + "wayland-client", + "wayland-protocols", + "wayland-sys", "wgpu", ] [[package]] name = "iced_widget" version = "0.12.0" -source = "git+https://github.com/pop-os/libcosmic?branch=master#61a14a953dcb052efa6cdaf5b37c74e964896f5f" +source = "git+https://github.com/pop-os/libcosmic?branch=master#8b0bb6a677ef7dfc02f97e1f579308cf3c18eefd" dependencies = [ + "dnd", "iced_renderer", "iced_runtime", "iced_style", @@ -2834,13 +2790,15 @@ dependencies = [ "ouroboros 0.17.2", "thiserror", "unicode-segmentation", + "window_clipboard", ] [[package]] name = "iced_winit" version = "0.12.0" -source = "git+https://github.com/pop-os/libcosmic?branch=master#61a14a953dcb052efa6cdaf5b37c74e964896f5f" +source = "git+https://github.com/pop-os/libcosmic?branch=master#8b0bb6a677ef7dfc02f97e1f579308cf3c18eefd" dependencies = [ + "dnd", "iced_graphics", "iced_runtime", "iced_style", @@ -2866,12 +2824,12 @@ dependencies = [ [[package]] name = "icrate" -version = "0.1.0" +version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e286f4b975ac6c054971a0600a9b76438b332edace54bff79c71c9d3adfc9772" +checksum = "3fb69199826926eb864697bddd27f73d9fddcffc004f5733131e15b465e30642" dependencies = [ "block2 0.4.0", - "objc2 0.5.0", + "objc2 0.5.2", ] [[package]] @@ -2946,18 +2904,18 @@ dependencies = [ [[package]] name = "instant" -version = "0.1.12" +version = "0.1.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a5bbe824c507c5da5956355e86a746d82e0e1464f65d862cc5e71da70e94b2c" +checksum = "e0242819d153cba4b4b05a5a8f2a7e9bbf97b6055b2a002b395c96b5ff3c0222" dependencies = [ "cfg-if", ] [[package]] name = "intl-memoizer" -version = "0.5.1" +version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c310433e4a310918d6ed9243542a6b83ec1183df95dff8f23f87bb88a264a66f" +checksum = "fe22e020fce238ae18a6d5d8c502ee76a52a6e880d99477657e6acc30ec57bda" dependencies = [ "type-map", "unic-langid", @@ -2983,6 +2941,12 @@ dependencies = [ "windows-sys 0.48.0", ] +[[package]] +name = "is_terminal_polyfill" +version = "1.70.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f8478577c03552c21db0e2724ffb8986a5ce7af88107e6be5d2ee6e158c12800" + [[package]] name = "itertools" version = "0.12.1" @@ -3022,9 +2986,9 @@ checksum = "8eaf4bc02d17cbdd7ff4c7438cafcdf7fb9a4613313ad11b4f8fefe7d3fa0130" [[package]] name = "jobserver" -version = "0.1.28" +version = "0.1.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ab46a6e9526ddef3ae7f787c06f0f2600639ba80ea3eade3d8e670a2230f51d6" +checksum = "d2b099aaa34a9751c5bf0878add70444e1ed2dd73f347be99003d4577277de6e" dependencies = [ "libc", ] @@ -3140,17 +3104,17 @@ dependencies = [ [[package]] name = "libc" -version = "0.2.153" +version = "0.2.155" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c198f91728a82281a64e1f4f9eeb25d82cb32a5de251c6bd1b5154d63a8e7bd" +checksum = "97b3888a4aecf77e811145cadf6eef5901f4782c53886191b2f693f24761847c" [[package]] name = "libcosmic" version = "0.1.0" -source = "git+https://github.com/pop-os/libcosmic?branch=master#61a14a953dcb052efa6cdaf5b37c74e964896f5f" +source = "git+https://github.com/pop-os/libcosmic?branch=master#8b0bb6a677ef7dfc02f97e1f579308cf3c18eefd" dependencies = [ "apply", - "ashpd 0.7.0", + "ashpd", "chrono", "cosmic-config", "cosmic-theme", @@ -3165,6 +3129,7 @@ dependencies = [ "iced_runtime", "iced_style", "iced_tiny_skia", + "iced_wgpu", "iced_widget", "iced_winit", "lazy_static", @@ -3177,7 +3142,7 @@ dependencies = [ "tracing", "unicode-segmentation", "url", - "zbus", + "zbus 4.2.2", ] [[package]] @@ -3197,7 +3162,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0c2a198fb6b0eada2a8df47933734e6d35d350665a33a3593d7164fa52c75c19" dependencies = [ "cfg-if", - "windows-targets 0.52.4", + "windows-targets 0.52.5", ] [[package]] @@ -3208,9 +3173,9 @@ checksum = "4ec2a862134d2a7d32d7983ddcdd1c4923530833c9f2ea1a44fc5fa473989058" [[package]] name = "libredox" -version = "0.0.1" +version = "0.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "85c833ca1e66078851dba29046874e38f08b2c883700aa29a03ddd3b23814ee8" +checksum = "3af92c55d7d839293953fcd0fda5ecfe93297cfde6ffbdec13b41d99c0ba6607" dependencies = [ "bitflags 2.5.0", "libc", @@ -3219,13 +3184,12 @@ dependencies = [ [[package]] name = "libredox" -version = "0.0.2" +version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3af92c55d7d839293953fcd0fda5ecfe93297cfde6ffbdec13b41d99c0ba6607" +checksum = "c0ff37bd590ca25063e35af745c343cb7a0271906fb7b37e4813e8f79f00268d" dependencies = [ "bitflags 2.5.0", "libc", - "redox_syscall 0.4.1", ] [[package]] @@ -3235,7 +3199,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bcb64f856d7b5144b0c102ec029f4d8a474c91c86336a2f5e96494e3d2f72db3" dependencies = [ "quote", - "syn 2.0.55", + "syn 2.0.66", ] [[package]] @@ -3246,9 +3210,9 @@ checksum = "ef53942eb7bf7ff43a617b3e2c1c4a5ecf5944a7c1bc12d7ee39bbb15e5c1519" [[package]] name = "linux-raw-sys" -version = "0.4.13" +version = "0.4.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "01cda141df6706de531b6c46c3a33ecca755538219bd484262fa09410c13539c" +checksum = "78b3ae25bc7c8c38cec158d1f2757ee79e9b3740fbc7ccf0e59e4b08d793fa89" [[package]] name = "linux-raw-sys" @@ -3283,9 +3247,9 @@ dependencies = [ [[package]] name = "lock_api" -version = "0.4.11" +version = "0.4.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3c168f8615b12bc01f9c17e2eb0cc07dcae1940121185446edc3744920e8ef45" +checksum = "07af8b9cdd281b7915f413fa73f29ebd5d55d0d3f0155584dade1ff18cea1b17" dependencies = [ "autocfg", "scopeguard", @@ -3339,9 +3303,9 @@ dependencies = [ [[package]] name = "lyon_path" -version = "1.0.4" +version = "1.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ca507745ba7ccbc76e5c44e7b63b1a29d2b0d6126f375806a5bbaf657c7d6c45" +checksum = "9c08a606c7a59638d6c6aa18ac91a06aa9fb5f765a7efb27e6a4da58700740d7" dependencies = [ "lyon_geom", "num-traits", @@ -3349,9 +3313,9 @@ dependencies = [ [[package]] name = "lyon_tessellation" -version = "1.0.13" +version = "1.0.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8c7c67b5bc8123b352b2e7e742b47d1f236a13fe77619433be9568fbd888e9c0" +checksum = "579d42360a4b09846eff2feef28f538696c7d6c7439bfa65874ff3cbe0951b2c" dependencies = [ "float_next_after", "lyon_path", @@ -3367,12 +3331,21 @@ dependencies = [ "libc", ] -[[package]] -name = "memchr" -version = "2.7.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c8640c5d730cb13ebd907d8d04b52f55ac9a2eec55b440c8892f40d56c76c1d" - +[[package]] +name = "memchr" +version = "2.7.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6c8640c5d730cb13ebd907d8d04b52f55ac9a2eec55b440c8892f40d56c76c1d" + +[[package]] +name = "memmap2" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "43a5a03cefb0d953ec0be133036f14e109412fa594edc2f77227249db66cc3ed" +dependencies = [ + "libc", +] + [[package]] name = "memmap2" version = "0.9.4" @@ -3418,7 +3391,7 @@ dependencies = [ [[package]] name = "mime" version = "0.1.0" -source = "git+https://github.com/pop-os/window_clipboard.git?tag=pop-mime-types#f65a6c303bbbd6c7bf88f9bc34421ec06d893bea" +source = "git+https://github.com/pop-os/window_clipboard.git?tag=pop-dnd-6#8a816d8f218e290041bb5ef6d3b695c38e0a53b7" dependencies = [ "smithay-clipboard", ] @@ -3431,9 +3404,9 @@ checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a" [[package]] name = "miniz_oxide" -version = "0.7.2" +version = "0.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d811f3e15f28568be3407c8e7fdb6514c1cda3cb30683f15b6a1a1dc4ea14a7" +checksum = "87dfd01fe195c66b572b37921ad8803d010623c0aca821bea2302239d155cdae" dependencies = [ "adler", "simd-adler32", @@ -3488,7 +3461,7 @@ dependencies = [ "log", "ndk-sys", "num_enum", - "raw-window-handle 0.6.0", + "raw-window-handle", "thiserror", ] @@ -3519,6 +3492,19 @@ dependencies = [ "memoffset 0.7.1", ] +[[package]] +name = "nix" +version = "0.28.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ab2156c4fce2f8df6c499cc1c763e4394b7482525bf2a9701c9d79d215f519e4" +dependencies = [ + "bitflags 2.5.0", + "cfg-if", + "cfg_aliases 0.1.1", + "libc", + "memoffset 0.9.1", +] + [[package]] name = "nom" version = "7.1.3" @@ -3550,9 +3536,9 @@ dependencies = [ [[package]] name = "num" -version = "0.4.1" +version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b05180d69e3da0e530ba2a1dae5110317e49e3b7f3d41be227dc5f92e49ee7af" +checksum = "35bd024e8b2ff75562e5f34e7f4905839deb4b22955ef5e73d2fea1b9813cb23" dependencies = [ "num-bigint", "num-complex", @@ -3564,20 +3550,19 @@ dependencies = [ [[package]] name = "num-bigint" -version = "0.4.4" +version = "0.4.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "608e7659b5c3d7cba262d894801b9ec9d00de989e8a82bd4bef91d08da45cdc0" +checksum = "c165a9ab64cf766f73521c0dd2cfdff64f488b8f0b3e621face3462d3db536d7" dependencies = [ - "autocfg", "num-integer", "num-traits", ] [[package]] name = "num-complex" -version = "0.4.5" +version = "0.4.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23c6602fda94a57c990fe0df199a035d83576b496aa29f4e634a8ac6004e68a6" +checksum = "73f88a1307638156682bada9d7604135552957b7818057dcef22705b4d509495" dependencies = [ "num-traits", ] @@ -3593,9 +3578,9 @@ dependencies = [ [[package]] name = "num-iter" -version = "0.1.44" +version = "0.1.45" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d869c01cc0c455284163fd0092f1f93835385ccab5a98a0dcc497b2f8bf055a9" +checksum = "1429034a0490724d0075ebb2bc9e875d6503c3cf69e235a8941aa757d83ef5bf" dependencies = [ "autocfg", "num-integer", @@ -3604,11 +3589,10 @@ dependencies = [ [[package]] name = "num-rational" -version = "0.4.1" +version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0638a1c9d0a3c0914158145bc76cff373a75a627e6ecbfb71cbe6f453a5a19b0" +checksum = "f83d14da390562dca69fc84082e73e548e1ad308d24accdedd2720017cb37824" dependencies = [ - "autocfg", "num-bigint", "num-integer", "num-traits", @@ -3616,9 +3600,9 @@ dependencies = [ [[package]] name = "num-traits" -version = "0.2.18" +version = "0.2.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da0df0e5185db44f69b44f26786fe401b6c293d1907744beaa7fa62b2e5a517a" +checksum = "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841" dependencies = [ "autocfg", "libm", @@ -3652,7 +3636,7 @@ dependencies = [ "proc-macro-crate 3.1.0", "proc-macro2", "quote", - "syn 2.0.55", + "syn 2.0.66", ] [[package]] @@ -3678,9 +3662,9 @@ dependencies = [ [[package]] name = "objc-sys" -version = "0.3.2" +version = "0.3.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c7c71324e4180d0899963fc83d9d241ac39e699609fc1025a850aadac8257459" +checksum = "cdb91bdd390c7ce1a8607f35f3ca7151b65afc0ff5ff3b34fa350f7d7c7e4310" [[package]] name = "objc2" @@ -3694,12 +3678,12 @@ dependencies = [ [[package]] name = "objc2" -version = "0.5.0" +version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9a9c7f0d511a4ce26b078183179dca908171cfc69f88986fe36c5138e1834476" +checksum = "46a785d4eeff09c14c487497c162e92766fbb3e4059a71840cecc03d9a50b804" dependencies = [ "objc-sys", - "objc2-encode 4.0.0", + "objc2-encode 4.0.3", ] [[package]] @@ -3710,9 +3694,9 @@ checksum = "d079845b37af429bfe5dfa76e6d087d788031045b25cfc6fd898486fd9847666" [[package]] name = "objc2-encode" -version = "4.0.0" +version = "4.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2ff06a6505cde0766484f38d8479ac8e6d31c66fbc2d5492f65ca8c091456379" +checksum = "7891e71393cd1f227313c9379a26a584ff3d7e6e7159e988851f0934c993f0f8" [[package]] name = "objc_exception" @@ -3764,9 +3748,9 @@ dependencies = [ [[package]] name = "ordered-multimap" -version = "0.7.1" +version = "0.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a4d6a8c22fc714f0c2373e6091bf6f5e9b37b1bc0b1184874b7e0a4e303d318f" +checksum = "49203cdcae0030493bad186b28da2fa25645fa276a51b6fec8010d281e02ef79" dependencies = [ "dlv-list", "hashbrown", @@ -3795,12 +3779,12 @@ dependencies = [ [[package]] name = "ouroboros" -version = "0.18.3" +version = "0.18.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "97b7be5a8a3462b752f4be3ff2b2bf2f7f1d00834902e46be2a4d68b87b0573c" +checksum = "944fa20996a25aded6b4795c6d63f10014a7a83f8be9828a11860b08c5fc4a67" dependencies = [ "aliasable", - "ouroboros_macro 0.18.3", + "ouroboros_macro 0.18.4", "static_assertions", ] @@ -3814,37 +3798,37 @@ dependencies = [ "proc-macro-error", "proc-macro2", "quote", - "syn 2.0.55", + "syn 2.0.66", ] [[package]] name = "ouroboros_macro" -version = "0.18.3" +version = "0.18.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b645dcde5f119c2c454a92d0dfa271a2a3b205da92e4292a68ead4bdbfde1f33" +checksum = "39b0deead1528fd0e5947a8546a9642a9777c25f6e1e26f34c97b204bbb465bd" dependencies = [ "heck 0.4.1", "itertools", "proc-macro2", "proc-macro2-diagnostics", "quote", - "syn 2.0.55", + "syn 2.0.66", ] [[package]] name = "owned_ttf_parser" -version = "0.20.0" +version = "0.21.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d4586edfe4c648c71797a74c84bacb32b52b212eff5dfe2bb9f2c599844023e7" +checksum = "6b41438d2fc63c46c74a2203bf5ccd82c41ba04347b2fcf5754f230b167067d5" dependencies = [ - "ttf-parser", + "ttf-parser 0.21.1", ] [[package]] name = "palette" -version = "0.7.5" +version = "0.7.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ebfc23a4b76642983d57e4ad00bb4504eb30a8ce3c70f4aee1f725610e36d97a" +checksum = "4cbf71184cc5ecc2e4e1baccdb21026c20e5fc3dcf63028a086131b3ab00b6e6" dependencies = [ "approx", "fast-srgb8", @@ -3855,25 +3839,14 @@ dependencies = [ [[package]] name = "palette_derive" -version = "0.7.5" +version = "0.7.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e8890702dbec0bad9116041ae586f84805b13eecd1d8b1df27c29998a9969d6d" +checksum = "f5030daf005bface118c096f510ffb781fc28f9ab6a32ab224d8631be6851d30" dependencies = [ + "by_address", "proc-macro2", "quote", - "syn 2.0.55", -] - -[[package]] -name = "pango-sys" -version = "0.18.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "436737e391a843e5933d6d9aa102cb126d501e815b83601365a948a518555dc5" -dependencies = [ - "glib-sys", - "gobject-sys", - "libc", - "system-deps", + "syn 2.0.66", ] [[package]] @@ -3895,12 +3868,12 @@ dependencies = [ [[package]] name = "parking_lot" -version = "0.12.1" +version = "0.12.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f" +checksum = "f1bf18183cf54e8d6059647fc3063646a1801cf30896933ec2311622cc4b9a27" dependencies = [ "lock_api", - "parking_lot_core 0.9.9", + "parking_lot_core 0.9.10", ] [[package]] @@ -3919,22 +3892,22 @@ dependencies = [ [[package]] name = "parking_lot_core" -version = "0.9.9" +version = "0.9.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4c42a9226546d68acdd9c0a280d17ce19bfe27a46bf68784e4066115788d008e" +checksum = "1e401f977ab385c9e4e3ab30627d6f26d00e2c73eef317493c4ec6d468726cf8" dependencies = [ "cfg-if", "libc", - "redox_syscall 0.4.1", + "redox_syscall 0.5.1", "smallvec", - "windows-targets 0.48.5", + "windows-targets 0.52.5", ] [[package]] name = "paste" -version = "1.0.14" +version = "1.0.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "de3145af08024dea9fa9914f381a17b8fc6034dfb00f3a84013f7ff43f29ed4c" +checksum = "57c0d7b74b563b49d38dae00a0c37d4d6de9b432382b2892f0574ddcae73fd0a" [[package]] name = "percent-encoding" @@ -3972,7 +3945,7 @@ dependencies = [ "phf_shared", "proc-macro2", "quote", - "syn 2.0.55", + "syn 2.0.66", ] [[package]] @@ -3992,9 +3965,9 @@ checksum = "5be167a7af36ee22fe3115051bc51f6e6c7054c9348e28deb4f49bd6f705a315" [[package]] name = "pin-project-lite" -version = "0.2.13" +version = "0.2.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8afb450f006bf6385ca15ef45d71d2288452bc3683ce2e2cacc0d18e4be60b58" +checksum = "bda66fc9667c18cb2758a2ac84d1167245054bcf85d5d1aaa6923f45801bdd02" [[package]] name = "pin-utils" @@ -4004,12 +3977,12 @@ checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" [[package]] name = "piper" -version = "0.2.1" +version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "668d31b1c4eba19242f2088b2bf3316b82ca31082a8335764db4e083db7485d4" +checksum = "464db0c665917b13ebb5d453ccdec4add5658ee1adc7affc7677615356a8afaf" dependencies = [ "atomic-waker", - "fastrand 2.0.2", + "fastrand 2.1.0", "futures-io", ] @@ -4050,19 +4023,25 @@ dependencies = [ [[package]] name = "polling" -version = "3.6.0" +version = "3.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e0c976a60b2d7e99d6f229e414670a9b85d13ac305cc6d1e9c134de58c5aaaf6" +checksum = "645493cf344456ef24219d02a768cf1fb92ddf8c92161679ae3d91b91a637be3" dependencies = [ "cfg-if", "concurrent-queue", "hermit-abi", "pin-project-lite", - "rustix 0.38.32", + "rustix 0.38.34", "tracing", "windows-sys 0.52.0", ] +[[package]] +name = "pollster" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "22686f4785f02a4fcc856d3b3bb19bf6c8160d103f7a99cc258bddd0251dc7f2" + [[package]] name = "ppv-lite86" version = "0.2.17" @@ -4077,12 +4056,12 @@ checksum = "e8cf8e6a8aa66ce33f63993ffc4ea4271eb5b0530a9002db8455ea6050c77bfa" [[package]] name = "prettyplease" -version = "0.2.17" +version = "0.2.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8d3928fb5db768cb86f891ff014f0144589297e3c6a1aba6ed7cecfdace270c7" +checksum = "5f12335488a2f3b0a83b14edad48dca9879ce89b2edd10e80237e4e852dd645e" dependencies = [ "proc-macro2", - "syn 2.0.55", + "syn 2.0.66", ] [[package]] @@ -4130,9 +4109,9 @@ dependencies = [ [[package]] name = "proc-macro2" -version = "1.0.79" +version = "1.0.84" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e835ff2298f5721608eb1a980ecaee1aef2c132bf95ecc026a11b7bf3c01c02e" +checksum = "ec96c6a92621310b51366f1e28d05ef11489516e93be030060e5fc12024a49d6" dependencies = [ "unicode-ident", ] @@ -4145,7 +4124,7 @@ checksum = "af066a9c399a26e020ada66a034357a868728e72cd426f3adcd35f80d88d88c8" dependencies = [ "proc-macro2", "quote", - "syn 2.0.55", + "syn 2.0.66", "version_check", "yansi", ] @@ -4176,9 +4155,9 @@ dependencies = [ [[package]] name = "quote" -version = "1.0.35" +version = "1.0.36" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "291ec9ab5efd934aaf503a6466c5d5251535d108ee747472c3977cc5acc868ef" +checksum = "0fa76aaf39101c457836aec0ce2316dbdc3ab723cdda1c6bd4e6ad4208acaca7" dependencies = [ "proc-macro2", ] @@ -4227,15 +4206,9 @@ checksum = "f60fcc7d6849342eff22c4350c8b9a989ee8ceabc4b481253e8946b9fe83d684" [[package]] name = "raw-window-handle" -version = "0.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f2ff9a1f06a88b01621b7ae906ef0211290d1c8a168a15542486a8f61c0833b9" - -[[package]] -name = "raw-window-handle" -version = "0.6.0" +version = "0.6.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42a9830a0e1b9fb145ebb365b8bc4ccd75f290f98c0247deafbbe2c75cefb544" +checksum = "20675572f6f24e9e76ef639bc5552774ed45f1c30e2951e1e99c59888861c539" [[package]] name = "rayon" @@ -4265,10 +4238,11 @@ checksum = "3b42e27ef78c35d3998403c1d26f3efd9e135d3e5121b0a4845cc5cc27547f4f" [[package]] name = "read-fonts" -version = "0.16.0" +version = "0.19.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "81c524658d3b77930a391f559756d91dbe829ab6cf4687083f615d395df99722" +checksum = "af4749db2bd1c853db31a7ae5ee2fc6c30bbddce353ea8fedf673fed187c68c7" dependencies = [ + "bytemuck", "font-types", ] @@ -4299,14 +4273,23 @@ dependencies = [ "bitflags 1.3.2", ] +[[package]] +name = "redox_syscall" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "469052894dcb553421e483e4209ee581a45100d31b4018de03e5a7ad86374a7e" +dependencies = [ + "bitflags 2.5.0", +] + [[package]] name = "redox_users" -version = "0.4.4" +version = "0.4.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a18479200779601e498ada4e8c1e1f50e3ee19deb0259c25825a98b5603b2cb4" +checksum = "bd283d9651eeda4b2a83a43c1c91b266c40fd76ecd39a50a8c630ae69dc72891" dependencies = [ "getrandom", - "libredox 0.0.1", + "libredox 0.1.3", "thiserror", ] @@ -4364,22 +4347,21 @@ dependencies = [ [[package]] name = "rfd" -version = "0.13.0" +version = "0.14.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c0d8ab342bcc5436e04d3a4c1e09e17d74958bfaddf8d5fad6f85607df0f994f" +checksum = "25a73a7337fc24366edfca76ec521f51877b114e42dab584008209cca6719251" dependencies = [ - "ashpd 0.6.8", + "ashpd", "block", "dispatch", - "glib-sys", - "gobject-sys", - "gtk-sys", "js-sys", "log", "objc", "objc-foundation", "objc_id", - "raw-window-handle 0.5.2", + "pollster", + "raw-window-handle", + "urlencoding", "wasm-bindgen", "wasm-bindgen-futures", "web-sys", @@ -4415,9 +4397,9 @@ checksum = "3cd14fd5e3b777a7422cca79358c57a8f6e3a703d9ac187448d0daf220c2407f" [[package]] name = "rust-embed" -version = "8.3.0" +version = "8.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fb78f46d0066053d16d4ca7b898e9343bc3530f71c61d5ad84cd404ada068745" +checksum = "19549741604902eb99a7ed0ee177a0663ee1eda51a29f71401f166e47e77806a" dependencies = [ "rust-embed-impl", "rust-embed-utils", @@ -4426,22 +4408,22 @@ dependencies = [ [[package]] name = "rust-embed-impl" -version = "8.3.0" +version = "8.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b91ac2a3c6c0520a3fb3dd89321177c3c692937c4eb21893378219da10c44fc8" +checksum = "cb9f96e283ec64401f30d3df8ee2aaeb2561f34c824381efa24a35f79bf40ee4" dependencies = [ "proc-macro2", "quote", "rust-embed-utils", - "syn 2.0.55", + "syn 2.0.66", "walkdir", ] [[package]] name = "rust-embed-utils" -version = "8.3.0" +version = "8.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "86f69089032567ffff4eada41c573fc43ff466c7db7c5688b2e7969584345581" +checksum = "38c74a686185620830701348de757fd36bef4aa9680fd23c49fc539ddcc1af32" dependencies = [ "sha2", "walkdir", @@ -4459,9 +4441,9 @@ dependencies = [ [[package]] name = "rustc-demangle" -version = "0.1.23" +version = "0.1.24" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d626bb9dae77e28219937af045c257c28bfd3f69333c512553507f5f9798cb76" +checksum = "719b953e2095829ee67db738b3bfa9fa368c94900df327b3f07fe6e794d2fe1f" [[package]] name = "rustc-hash" @@ -4485,14 +4467,14 @@ dependencies = [ [[package]] name = "rustix" -version = "0.38.32" +version = "0.38.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "65e04861e65f21776e67888bfbea442b3642beaa0138fdb1dd7a84a52dffdb89" +checksum = "70dc5ec042f7a43c4a73241207cecc9873a06d45debb38b329f8541d85c2730f" dependencies = [ "bitflags 2.5.0", "errno", "libc", - "linux-raw-sys 0.4.13", + "linux-raw-sys 0.4.14", "windows-sys 0.52.0", ] @@ -4506,7 +4488,7 @@ dependencies = [ "bytemuck", "libm", "smallvec", - "ttf-parser", + "ttf-parser 0.20.0", "unicode-bidi-mirroring", "unicode-ccc", "unicode-properties", @@ -4515,9 +4497,9 @@ dependencies = [ [[package]] name = "ryu" -version = "1.0.17" +version = "1.0.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e86697c916019a8588c99b5fac3cead74ec0b4b819707a682fd4d23fa0ce1ba1" +checksum = "f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f" [[package]] name = "same-file" @@ -4528,6 +4510,15 @@ dependencies = [ "winapi-util", ] +[[package]] +name = "scc" +version = "2.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "76ad2bbb0ae5100a07b7a6f2ed7ab5fd0045551a4c507989b7a620046ea3efdc" +dependencies = [ + "sdd", +] + [[package]] name = "scoped-tls" version = "1.0.1" @@ -4548,25 +4539,31 @@ checksum = "82b2eaf3a5b264a521b988b2e73042e742df700c4f962cde845d1541adb46550" dependencies = [ "ab_glyph", "log", - "memmap2", - "smithay-client-toolkit", + "memmap2 0.9.4", + "smithay-client-toolkit 0.18.1", "tiny-skia", ] +[[package]] +name = "sdd" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b84345e4c9bd703274a082fb80caaa99b7612be48dfaa1dd9266577ec412309d" + [[package]] name = "self_cell" version = "0.10.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e14e4d63b804dc0c7ec4a1e52bcb63f02c7ac94476755aa579edac21e01f915d" dependencies = [ - "self_cell 1.0.3", + "self_cell 1.0.4", ] [[package]] name = "self_cell" -version = "1.0.3" +version = "1.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "58bf37232d3bb9a2c4e641ca2a11d83b5062066f88df7fed36c28772046d65ba" +checksum = "d369a96f978623eb3dc28807c4852d6cc617fed53da5d3c400feff1ef34a714a" [[package]] name = "sensors-sys" @@ -4582,30 +4579,31 @@ dependencies = [ [[package]] name = "serde" -version = "1.0.197" +version = "1.0.203" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3fb1c873e1b9b056a4dc4c0c198b24c3ffa059243875552b2bd0933b1aee4ce2" +checksum = "7253ab4de971e72fb7be983802300c30b5a7f0c2e56fab8abfc6a214307c0094" dependencies = [ "serde_derive", ] [[package]] name = "serde_derive" -version = "1.0.197" +version = "1.0.203" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7eb0b34b42edc17f6b7cac84a52a1c5f0e1bb2227e997ca9011ea3dd34e8610b" +checksum = "500cbc0ebeb6f46627f50f3f5811ccf6bf00643be300b4c3eabc0ef55dc5b5ba" dependencies = [ "proc-macro2", "quote", - "syn 2.0.55", + "syn 2.0.66", ] [[package]] name = "serde_json" -version = "1.0.115" +version = "1.0.117" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "12dc5c46daa8e9fdf4f5e71b6cf9a53f2487da0e86e55808e2d35539666497dd" +checksum = "455182ea6142b14f93f4bc5320a2b31c1f266b66a4a5c858b013302a5d8cbfc3" dependencies = [ + "indexmap", "itoa", "ryu", "serde", @@ -4613,47 +4611,47 @@ dependencies = [ [[package]] name = "serde_repr" -version = "0.1.18" +version = "0.1.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b2e6b945e9d3df726b65d6ee24060aff8e3533d431f677a9695db04eff9dfdb" +checksum = "6c64451ba24fc7a6a2d60fc75dd9c83c90903b19028d4eff35e88fc1e86564e9" dependencies = [ "proc-macro2", "quote", - "syn 2.0.55", + "syn 2.0.66", ] [[package]] name = "serde_spanned" -version = "0.6.5" +version = "0.6.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eb3622f419d1296904700073ea6cc23ad690adbd66f13ea683df73298736f0c1" +checksum = "79e674e01f999af37c49f70a6ede167a8a60b2503e56c5599532a65baa5969a0" dependencies = [ "serde", ] [[package]] name = "serial_test" -version = "3.0.0" +version = "3.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "953ad9342b3aaca7cb43c45c097dd008d4907070394bd0751a0aa8817e5a018d" +checksum = "4b4b487fe2acf240a021cf57c6b2b4903b1e78ca0ecd862a71b71d2a51fed77d" dependencies = [ - "dashmap", "futures", - "lazy_static", "log", - "parking_lot 0.12.1", + "once_cell", + "parking_lot 0.12.3", + "scc", "serial_test_derive", ] [[package]] name = "serial_test_derive" -version = "3.0.0" +version = "3.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b93fb4adc70021ac1b47f7d45e8cc4169baaa7ea58483bc5b721d19a26202212" +checksum = "82fe9db325bcef1fbcde82e078a5cc4efdf787e96b3b9cf45b50b529f2083d67" dependencies = [ "proc-macro2", "quote", - "syn 2.0.55", + "syn 2.0.66", ] [[package]] @@ -4707,9 +4705,9 @@ dependencies = [ [[package]] name = "signal-hook-registry" -version = "1.4.1" +version = "1.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d8229b473baa5980ac72ef434c4415e70c4b5e71b423043adb4ba059f89c99a1" +checksum = "a9e9e0b4211b72e7b8b6e85c807d36c212bdb33ea8587f7569562a84df5465b1" dependencies = [ "libc", ] @@ -4759,6 +4757,33 @@ version = "1.13.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67" +[[package]] +name = "smithay-client-toolkit" +version = "0.18.0" +source = "git+https://github.com/smithay/client-toolkit?rev=3bed072#3bed072b966022f5f929d12f3aff089b1ace980b" +dependencies = [ + "bitflags 2.5.0", + "bytemuck", + "calloop 0.13.0", + "calloop-wayland-source 0.3.0", + "cursor-icon", + "libc", + "log", + "memmap2 0.9.4", + "pkg-config", + "rustix 0.38.34", + "thiserror", + "wayland-backend", + "wayland-client", + "wayland-csd-frame", + "wayland-cursor", + "wayland-protocols", + "wayland-protocols-wlr", + "wayland-scanner", + "xkbcommon", + "xkeysym", +] + [[package]] name = "smithay-client-toolkit" version = "0.18.1" @@ -4766,13 +4791,13 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "922fd3eeab3bd820d76537ce8f582b1cf951eceb5475c28500c7457d9d17f53a" dependencies = [ "bitflags 2.5.0", - "calloop", - "calloop-wayland-source", + "calloop 0.12.4", + "calloop-wayland-source 0.2.0", "cursor-icon", "libc", "log", - "memmap2", - "rustix 0.38.32", + "memmap2 0.9.4", + "rustix 0.38.34", "thiserror", "wayland-backend", "wayland-client", @@ -4787,10 +4812,11 @@ dependencies = [ [[package]] name = "smithay-clipboard" version = "0.8.0" -source = "git+https://github.com/pop-os/smithay-clipboard?tag=pop-mime-types#cc0101c1f9ccc937a413bd3af3c0f6217f27e935" +source = "git+https://github.com/pop-os/smithay-clipboard?tag=pop-dnd-4#ab422ddcc95a9a1717df094f9c8fe69e2fdb2a27" dependencies = [ "libc", - "smithay-client-toolkit", + "raw-window-handle", + "smithay-client-toolkit 0.18.0", "wayland-backend", ] @@ -4802,20 +4828,20 @@ checksum = "13f2b548cd8447f8de0fdf1c592929f70f4fc7039a05e47404b0d096ec6987a1" dependencies = [ "async-channel 1.9.0", "async-executor", - "async-fs", + "async-fs 1.6.0", "async-io 1.13.0", "async-lock 2.8.0", - "async-net", - "async-process", + "async-net 1.8.0", + "async-process 1.8.1", "blocking", "futures-lite 1.13.0", ] [[package]] name = "smol_str" -version = "0.2.1" +version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e6845563ada680337a52d43bb0b29f396f2d911616f6573012645b9e3d048a49" +checksum = "dd538fb6910ac1099850255cf94a94df6551fbdd602454387d0adb2d1ca6dead" dependencies = [ "serde", ] @@ -4832,9 +4858,9 @@ dependencies = [ [[package]] name = "socket2" -version = "0.5.6" +version = "0.5.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "05ffd9c0a93b7543e062e759284fcf5f5e3b098501104bfbdde4d404db792871" +checksum = "ce305eb0b4296696835b71df73eb912e0f1ffd2556a501fcede6e0c50349191c" dependencies = [ "libc", "windows-sys 0.52.0", @@ -4847,19 +4873,19 @@ source = "git+https://github.com/pop-os/softbuffer?tag=cosmic-4.0#6e75b1ad7e9839 dependencies = [ "as-raw-xcb-connection", "bytemuck", - "cfg_aliases 0.2.0", + "cfg_aliases 0.2.1", "cocoa", "core-graphics", "drm", - "fastrand 2.0.2", + "fastrand 2.1.0", "foreign-types", "js-sys", "log", - "memmap2", + "memmap2 0.9.4", "objc", - "raw-window-handle 0.6.0", + "raw-window-handle", "redox_syscall 0.4.1", - "rustix 0.38.32", + "rustix 0.38.34", "tiny-xlib", "wasm-bindgen", "wayland-backend", @@ -4911,15 +4937,15 @@ checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623" [[package]] name = "strsim" -version = "0.11.0" +version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5ee073c9e4cd00e28217186dbe12796d692868f432bf2e97ee73bed0c56dfa01" +checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f" [[package]] name = "svg_fmt" -version = "0.4.2" +version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f83ba502a3265efb76efb89b0a2f7782ad6f2675015d4ce37e4b547dda42b499" +checksum = "20e16a0f46cf5fd675563ef54f26e83e20f2366bcf027bcb3cc3ed2b98aaf2ca" [[package]] name = "svgtypes" @@ -4933,9 +4959,9 @@ dependencies = [ [[package]] name = "swash" -version = "0.1.13" +version = "0.1.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9af636fb90d39858650cae1088a37e2862dab4e874a0bb49d6dfb5b2dacf0e24" +checksum = "682a612b50baf09e8a039547ecf49e6c155690dcb751b1bcb19c93cdeb3d42d4" dependencies = [ "read-fonts", "yazi", @@ -4955,9 +4981,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.55" +version = "2.0.66" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "002a1b3dbf967edfafc32655d0f377ab0bb7b994aa1d32c8cc7e9b8bf3ebb8f0" +checksum = "c42f3f41a2de00b01c0aaad383c5a45241efc8b2d1eda5661812fda5f3cdcff5" dependencies = [ "proc-macro2", "quote", @@ -4973,19 +4999,6 @@ dependencies = [ "libc", ] -[[package]] -name = "system-deps" -version = "6.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a3e535eb8dded36d55ec13eddacd30dec501792ff23a0b1682c38601b8cf2349" -dependencies = [ - "cfg-expr", - "heck 0.5.0", - "pkg-config", - "toml 0.8.12", - "version-compare", -] - [[package]] name = "taffy" version = "0.3.11" @@ -4997,12 +5010,6 @@ dependencies = [ "slotmap", ] -[[package]] -name = "target-lexicon" -version = "0.12.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e1fc403891a21bcfb7c37834ba66a547a8f402146eba7265b5a6d88059c9ff2f" - [[package]] name = "tempfile" version = "3.10.1" @@ -5010,8 +5017,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "85b77fafb263dd9d05cbeac119526425676db3784113aa9295c88498cbf8bff1" dependencies = [ "cfg-if", - "fastrand 2.0.2", - "rustix 0.38.32", + "fastrand 2.1.0", + "rustix 0.38.34", "windows-sys 0.52.0", ] @@ -5026,22 +5033,22 @@ dependencies = [ [[package]] name = "thiserror" -version = "1.0.58" +version = "1.0.61" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "03468839009160513471e86a034bb2c5c0e4baae3b43f79ffc55c4a5427b3297" +checksum = "c546c80d6be4bc6a00c0f01730c08df82eaa7a7a61f11d656526506112cc1709" dependencies = [ "thiserror-impl", ] [[package]] name = "thiserror-impl" -version = "1.0.58" +version = "1.0.61" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c61f3ba182994efc43764a46c018c347bc492c79f024e705f46567b418f6d4f7" +checksum = "46c3384250002a6d5af4d114f2845d37b57521033f30d5c3f46c4d70e1197533" dependencies = [ "proc-macro2", "quote", - "syn 2.0.55", + "syn 2.0.66", ] [[package]] @@ -5139,7 +5146,7 @@ dependencies = [ "num_cpus", "pin-project-lite", "signal-hook-registry", - "socket2 0.5.6", + "socket2 0.5.7", "tracing", "windows-sys 0.48.0", ] @@ -5155,21 +5162,21 @@ dependencies = [ [[package]] name = "toml" -version = "0.8.12" +version = "0.8.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e9dd1545e8208b4a5af1aa9bbd0b4cf7e9ea08fabc5d0a5c67fcaafa17433aa3" +checksum = "a4e43f8cc456c9704c851ae29c67e17ef65d2c30017c17a9765b89c382dc8bba" dependencies = [ "serde", "serde_spanned", "toml_datetime", - "toml_edit 0.22.9", + "toml_edit 0.22.13", ] [[package]] name = "toml_datetime" -version = "0.6.5" +version = "0.6.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3550f4e9685620ac18a50ed434eb3aec30db8ba93b0287467bca5826ea25baf1" +checksum = "4badfd56924ae69bcc9039335b2e017639ce3f9b001c393c1b2d1ef846ce2cbf" dependencies = [ "serde", ] @@ -5198,15 +5205,15 @@ dependencies = [ [[package]] name = "toml_edit" -version = "0.22.9" +version = "0.22.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e40bb779c5187258fd7aad0eb68cb8706a0a81fa712fbea808ab43c4b8374c4" +checksum = "c127785850e8c20836d49732ae6abfa47616e60bf9d9f57c43c250361a9db96c" dependencies = [ "indexmap", "serde", "serde_spanned", "toml_datetime", - "winnow 0.6.5", + "winnow 0.6.8", ] [[package]] @@ -5228,7 +5235,7 @@ checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.55", + "syn 2.0.66", ] [[package]] @@ -5246,11 +5253,17 @@ version = "0.20.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "17f77d76d837a7830fe1d4f12b7b4ba4192c1888001c7164257e4bc6d21d96b4" +[[package]] +name = "ttf-parser" +version = "0.21.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2c591d83f69777866b9126b24c6dd9a18351f177e49d625920d19f989fd31cf8" + [[package]] name = "type-map" -version = "0.4.0" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6d3364c5e96cb2ad1603037ab253ddd34d7fb72a58bdddf4b7350760fc69a46" +checksum = "deb68604048ff8fa93347f02441e4487594adc20bb8a084f9e564d2b827a0a9f" dependencies = [ "rustc-hash", ] @@ -5292,18 +5305,18 @@ dependencies = [ [[package]] name = "unic-langid" -version = "0.9.4" +version = "0.9.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "238722e6d794ed130f91f4ea33e01fcff4f188d92337a21297892521c72df516" +checksum = "23dd9d1e72a73b25e07123a80776aae3e7b0ec461ef94f9151eed6ec88005a44" dependencies = [ "unic-langid-impl", ] [[package]] name = "unic-langid-impl" -version = "0.9.4" +version = "0.9.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4bd55a2063fdea4ef1f8633243a7b0524cbeef1905ae04c31a1c9b9775c55bc6" +checksum = "0a5422c1f65949306c99240b81de9f3f15929f5a8bfe05bb44b034cc8bf593e5" dependencies = [ "serde", "tinystr", @@ -5374,9 +5387,9 @@ checksum = "b1d386ff53b415b7fe27b50bb44679e2cc4660272694b7b6f3326d8480823a94" [[package]] name = "unicode-width" -version = "0.1.11" +version = "0.1.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e51733f11c9c4f72aa0c160008246859e340b00807569a0da0e7a1079b27ba85" +checksum = "68f5e5f3158ecfd4b8ff6fe086db7c8467a2dfdac97fe420f2b7c4aa97af66d6" [[package]] name = "unicode-xid" @@ -5396,6 +5409,12 @@ dependencies = [ "serde", ] +[[package]] +name = "urlencoding" +version = "2.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "daf8dba3b7eb870caf1ddeed7bc9d2a049f3cfdfae7cb521b087cc33ae4c49da" + [[package]] name = "usvg" version = "0.37.0" @@ -5472,12 +5491,6 @@ dependencies = [ "log", ] -[[package]] -name = "version-compare" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "852e951cb7832cb45cb1169900d19760cfa39b82bc0ea9c0e5a14ae88411c98b" - [[package]] name = "version_check" version = "0.9.4" @@ -5486,9 +5499,9 @@ checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f" [[package]] name = "waker-fn" -version = "1.1.1" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f3c4517f54858c779bbcbf228f4fca63d121bf85fbecb2dc578cdf4a39395690" +checksum = "317211a0dc0ceedd78fb2ca9a44aed3d7b9b26f81870d485c07122b4350673b7" [[package]] name = "walkdir" @@ -5527,7 +5540,7 @@ dependencies = [ "once_cell", "proc-macro2", "quote", - "syn 2.0.55", + "syn 2.0.66", "wasm-bindgen-shared", ] @@ -5561,7 +5574,7 @@ checksum = "e94f17b526d0a461a191c78ea52bbce64071ed5c04c9ffe424dcb38f74171bb7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.55", + "syn 2.0.66", "wasm-bindgen-backend", "wasm-bindgen-shared", ] @@ -5595,7 +5608,7 @@ checksum = "9d50fa61ce90d76474c87f5fc002828d81b32677340112b4ef08079a9d459a40" dependencies = [ "cc", "downcast-rs", - "rustix 0.38.32", + "rustix 0.38.34", "scoped-tls", "smallvec", "wayland-sys", @@ -5608,7 +5621,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "82fb96ee935c2cea6668ccb470fb7771f6215d1691746c2d896b447a00ad3f1f" dependencies = [ "bitflags 2.5.0", - "rustix 0.38.32", + "rustix 0.38.34", "wayland-backend", "wayland-scanner", ] @@ -5630,7 +5643,7 @@ version = "0.31.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "71ce5fa868dd13d11a0d04c5e2e65726d0897be8de247c0c5a65886e283231ba" dependencies = [ - "rustix 0.38.32", + "rustix 0.38.34", "wayland-client", "xcursor", ] @@ -5733,9 +5746,9 @@ dependencies = [ "js-sys", "log", "naga", - "parking_lot 0.12.1", + "parking_lot 0.12.3", "profiling", - "raw-window-handle 0.6.0", + "raw-window-handle", "smallvec", "static_assertions", "wasm-bindgen", @@ -5760,9 +5773,9 @@ dependencies = [ "log", "naga", "once_cell", - "parking_lot 0.12.1", + "parking_lot 0.12.3", "profiling", - "raw-window-handle 0.6.0", + "raw-window-handle", "rustc-hash", "smallvec", "thiserror", @@ -5800,10 +5813,10 @@ dependencies = [ "naga", "objc", "once_cell", - "parking_lot 0.12.1", + "parking_lot 0.12.3", "profiling", "range-alloc", - "raw-window-handle 0.6.0", + "raw-window-handle", "renderdoc-sys", "rustc-hash", "smallvec", @@ -5833,14 +5846,14 @@ dependencies = [ "either", "home", "once_cell", - "rustix 0.38.32", + "rustix 0.38.34", ] [[package]] name = "widestring" -version = "1.0.2" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "653f141f39ec16bba3c5abe400a0c60da7468261cc2cbf36805022876bc721a8" +checksum = "7219d36b6eac893fa81e84ebe06485e7dcbb616177469b142df14f1f4deb1311" [[package]] name = "winapi" @@ -5860,11 +5873,11 @@ checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" [[package]] name = "winapi-util" -version = "0.1.6" +version = "0.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f29e6f9198ba0d26b4c9f07dbe6f9ed633e1f3d5b8b414090084349e46a52596" +checksum = "4d4cc384e1e73b93bafa6fb4f1df8c41695c8a91cf9c4c64358067d15a7b6c6b" dependencies = [ - "winapi", + "windows-sys 0.52.0", ] [[package]] @@ -5876,14 +5889,15 @@ checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" [[package]] name = "window_clipboard" version = "0.4.1" -source = "git+https://github.com/pop-os/window_clipboard.git?tag=pop-mime-types#f65a6c303bbbd6c7bf88f9bc34421ec06d893bea" +source = "git+https://github.com/pop-os/window_clipboard.git?tag=pop-dnd-6#8a816d8f218e290041bb5ef6d3b695c38e0a53b7" dependencies = [ "clipboard-win", "clipboard_macos", "clipboard_wayland", "clipboard_x11", + "dnd", "mime", - "raw-window-handle 0.6.0", + "raw-window-handle", "thiserror", ] @@ -5905,7 +5919,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e48a53791691ab099e5e2ad123536d0fff50652600abaf43bbf952894110d0be" dependencies = [ "windows-core", - "windows-targets 0.52.4", + "windows-targets 0.52.5", ] [[package]] @@ -5914,7 +5928,7 @@ version = "0.52.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9" dependencies = [ - "windows-targets 0.52.4", + "windows-targets 0.52.5", ] [[package]] @@ -5963,7 +5977,7 @@ version = "0.52.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" dependencies = [ - "windows-targets 0.52.4", + "windows-targets 0.52.5", ] [[package]] @@ -5998,17 +6012,18 @@ dependencies = [ [[package]] name = "windows-targets" -version = "0.52.4" +version = "0.52.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7dd37b7e5ab9018759f893a1952c9420d060016fc19a472b4bb20d1bdd694d1b" +checksum = "6f0713a46559409d202e70e28227288446bf7841d3211583a4b53e3f6d96e7eb" dependencies = [ - "windows_aarch64_gnullvm 0.52.4", - "windows_aarch64_msvc 0.52.4", - "windows_i686_gnu 0.52.4", - "windows_i686_msvc 0.52.4", - "windows_x86_64_gnu 0.52.4", - "windows_x86_64_gnullvm 0.52.4", - "windows_x86_64_msvc 0.52.4", + "windows_aarch64_gnullvm 0.52.5", + "windows_aarch64_msvc 0.52.5", + "windows_i686_gnu 0.52.5", + "windows_i686_gnullvm", + "windows_i686_msvc 0.52.5", + "windows_x86_64_gnu 0.52.5", + "windows_x86_64_gnullvm 0.52.5", + "windows_x86_64_msvc 0.52.5", ] [[package]] @@ -6025,9 +6040,9 @@ checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8" [[package]] name = "windows_aarch64_gnullvm" -version = "0.52.4" +version = "0.52.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bcf46cf4c365c6f2d1cc93ce535f2c8b244591df96ceee75d8e83deb70a9cac9" +checksum = "7088eed71e8b8dda258ecc8bac5fb1153c5cffaf2578fc8ff5d61e23578d3263" [[package]] name = "windows_aarch64_msvc" @@ -6043,9 +6058,9 @@ checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc" [[package]] name = "windows_aarch64_msvc" -version = "0.52.4" +version = "0.52.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da9f259dd3bcf6990b55bffd094c4f7235817ba4ceebde8e6d11cd0c5633b675" +checksum = "9985fd1504e250c615ca5f281c3f7a6da76213ebd5ccc9561496568a2752afb6" [[package]] name = "windows_i686_gnu" @@ -6061,9 +6076,15 @@ checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e" [[package]] name = "windows_i686_gnu" -version = "0.52.4" +version = "0.52.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "88ba073cf16d5372720ec942a8ccbf61626074c6d4dd2e745299726ce8b89670" + +[[package]] +name = "windows_i686_gnullvm" +version = "0.52.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b474d8268f99e0995f25b9f095bc7434632601028cf86590aea5c8a5cb7801d3" +checksum = "87f4261229030a858f36b459e748ae97545d6f1ec60e5e0d6a3d32e0dc232ee9" [[package]] name = "windows_i686_msvc" @@ -6079,9 +6100,9 @@ checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406" [[package]] name = "windows_i686_msvc" -version = "0.52.4" +version = "0.52.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1515e9a29e5bed743cb4415a9ecf5dfca648ce85ee42e15873c3cd8610ff8e02" +checksum = "db3c2bf3d13d5b658be73463284eaf12830ac9a26a90c717b7f771dfe97487bf" [[package]] name = "windows_x86_64_gnu" @@ -6097,9 +6118,9 @@ checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e" [[package]] name = "windows_x86_64_gnu" -version = "0.52.4" +version = "0.52.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5eee091590e89cc02ad514ffe3ead9eb6b660aedca2183455434b93546371a03" +checksum = "4e4246f76bdeff09eb48875a0fd3e2af6aada79d409d33011886d3e1581517d9" [[package]] name = "windows_x86_64_gnullvm" @@ -6115,9 +6136,9 @@ checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc" [[package]] name = "windows_x86_64_gnullvm" -version = "0.52.4" +version = "0.52.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "77ca79f2451b49fa9e2af39f0747fe999fcda4f5e241b2898624dca97a1f2177" +checksum = "852298e482cd67c356ddd9570386e2862b5673c85bd5f88df9ab6802b334c596" [[package]] name = "windows_x86_64_msvc" @@ -6133,9 +6154,9 @@ checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538" [[package]] name = "windows_x86_64_msvc" -version = "0.52.4" +version = "0.52.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "32b752e52a2da0ddfbdbcc6fceadfeede4c939ed16d13e648833a61dfb611ed8" +checksum = "bec47e5bfd1bff0eeaf6d8b485cc1074891a197ab4225d504cb7a1ab88b02bf0" [[package]] name = "winit" @@ -6147,7 +6168,7 @@ dependencies = [ "atomic-waker", "bitflags 2.5.0", "bytemuck", - "calloop", + "calloop 0.12.4", "cfg_aliases 0.1.1", "core-foundation", "core-graphics", @@ -6156,18 +6177,18 @@ dependencies = [ "js-sys", "libc", "log", - "memmap2", + "memmap2 0.9.4", "ndk", "ndk-sys", "objc2 0.4.1", "once_cell", "orbclient", "percent-encoding", - "raw-window-handle 0.6.0", + "raw-window-handle", "redox_syscall 0.3.5", - "rustix 0.38.32", + "rustix 0.38.34", "sctk-adwaita", - "smithay-client-toolkit", + "smithay-client-toolkit 0.18.1", "smol_str", "unicode-segmentation", "wasm-bindgen", @@ -6195,9 +6216,9 @@ dependencies = [ [[package]] name = "winnow" -version = "0.6.5" +version = "0.6.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dffa400e67ed5a4dd237983829e66475f0a4a26938c4b04c21baede6262215b8" +checksum = "c3c52e9c97a68071b23e836c9380edae937f17b9c4667bd021973efc689f618d" dependencies = [ "memchr", ] @@ -6224,24 +6245,24 @@ dependencies = [ [[package]] name = "x11rb" -version = "0.13.0" +version = "0.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f8f25ead8c7e4cba123243a6367da5d3990e0d3affa708ea19dce96356bd9f1a" +checksum = "5d91ffca73ee7f68ce055750bf9f6eca0780b8c85eff9bc046a3b0da41755e12" dependencies = [ "as-raw-xcb-connection", "gethostname", "libc", "libloading 0.8.3", "once_cell", - "rustix 0.38.32", + "rustix 0.38.34", "x11rb-protocol", ] [[package]] name = "x11rb-protocol" -version = "0.13.0" +version = "0.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e63e71c4b8bd9ffec2c963173a4dc4cbde9ee96961d4fcb4429db9929b606c34" +checksum = "ec107c4503ea0b4a98ef47356329af139c0a4f7750e621cf2973cd3385ebcb3d" [[package]] name = "xcursor" @@ -6265,6 +6286,17 @@ dependencies = [ "winapi", ] +[[package]] +name = "xkbcommon" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "13867d259930edc7091a6c41b4ce6eee464328c6ff9659b7e4c668ca20d4c91e" +dependencies = [ + "libc", + "memmap2 0.8.0", + "xkeysym", +] + [[package]] name = "xkbcommon-dl" version = "0.4.2" @@ -6283,12 +6315,15 @@ name = "xkeysym" version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "054a8e68b76250b253f671d1268cb7f1ae089ec35e195b2efb2a4e9a836d0621" +dependencies = [ + "bytemuck", +] [[package]] name = "xml-rs" -version = "0.8.19" +version = "0.8.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0fcb9cbac069e033553e8bb871be2fbdffcab578eb25bd0f7c508cedc6dcd75a" +checksum = "791978798f0597cfc70478424c2b4fdc2b7a8024aaff78497ef00f24ef674193" [[package]] name = "xmlwriter" @@ -6320,12 +6355,12 @@ version = "3.15.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "675d170b632a6ad49804c8cf2105d7c31eddd3312555cffd4b740e08e97c25e6" dependencies = [ - "async-broadcast", + "async-broadcast 0.5.1", "async-executor", - "async-fs", + "async-fs 1.6.0", "async-io 1.13.0", "async-lock 2.8.0", - "async-process", + "async-process 1.8.1", "async-recursion", "async-task", "async-trait", @@ -6338,7 +6373,7 @@ dependencies = [ "futures-sink", "futures-util", "hex", - "nix", + "nix 0.26.4", "once_cell", "ordered-stream", "rand", @@ -6346,14 +6381,52 @@ dependencies = [ "serde_repr", "sha1", "static_assertions", - "tokio", "tracing", "uds_windows", "winapi", "xdg-home", - "zbus_macros", - "zbus_names", - "zvariant", + "zbus_macros 3.15.2", + "zbus_names 2.6.1", + "zvariant 3.15.2", +] + +[[package]] +name = "zbus" +version = "4.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "989c3977a7aafa97b12b9a35d21cdcff9b0d2289762b14683f45d66b1ba6c48f" +dependencies = [ + "async-broadcast 0.7.0", + "async-executor", + "async-fs 2.1.2", + "async-io 2.3.2", + "async-lock 3.3.0", + "async-process 2.2.2", + "async-recursion", + "async-task", + "async-trait", + "blocking", + "enumflags2", + "event-listener 5.3.0", + "futures-core", + "futures-sink", + "futures-util", + "hex", + "nix 0.28.0", + "ordered-stream", + "rand", + "serde", + "serde_repr", + "sha1", + "static_assertions", + "tokio", + "tracing", + "uds_windows", + "windows-sys 0.52.0", + "xdg-home", + "zbus_macros 4.2.2", + "zbus_names 3.0.0", + "zvariant 4.1.1", ] [[package]] @@ -6367,7 +6440,20 @@ dependencies = [ "quote", "regex", "syn 1.0.109", - "zvariant_utils", + "zvariant_utils 1.0.1", +] + +[[package]] +name = "zbus_macros" +version = "4.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6fe9de53245dcf426b7be226a4217dd5e339080e5d46e64a02d6e5dcbf90fca1" +dependencies = [ + "proc-macro-crate 3.1.0", + "proc-macro2", + "quote", + "syn 2.0.66", + "zvariant_utils 2.0.0", ] [[package]] @@ -6378,7 +6464,18 @@ checksum = "437d738d3750bed6ca9b8d423ccc7a8eb284f6b1d6d4e225a0e4e6258d864c8d" dependencies = [ "serde", "static_assertions", - "zvariant", + "zvariant 3.15.2", +] + +[[package]] +name = "zbus_names" +version = "3.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4b9b1fef7d021261cc16cba64c351d291b715febe0fa10dc3a443ac5a5022e6c" +dependencies = [ + "serde", + "static_assertions", + "zvariant 4.1.1", ] [[package]] @@ -6389,22 +6486,22 @@ checksum = "dd15f8e0dbb966fd9245e7498c7e9e5055d9e5c8b676b95bd67091cd11a1e697" [[package]] name = "zerocopy" -version = "0.7.32" +version = "0.7.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "74d4d3961e53fa4c9a25a8637fc2bfaf2595b3d3ae34875568a5cf64787716be" +checksum = "ae87e3fcd617500e5d106f0380cf7b77f3c6092aae37191433159dda23cfb087" dependencies = [ "zerocopy-derive", ] [[package]] name = "zerocopy-derive" -version = "0.7.32" +version = "0.7.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ce1b18ccd8e73a9321186f97e46f9f04b778851177567b1975109d26a08d2a6" +checksum = "15e934569e47891f7d9411f1a451d947a60e000ab3bd24fbb970f000387d1b3b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.55", + "syn 2.0.66", ] [[package]] @@ -6427,8 +6524,21 @@ dependencies = [ "libc", "serde", "static_assertions", + "zvariant_derive 3.15.2", +] + +[[package]] +name = "zvariant" +version = "4.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9aa6d31a02fbfb602bfde791de7fedeb9c2c18115b3d00f3a36e489f46ffbbc7" +dependencies = [ + "endi", + "enumflags2", + "serde", + "static_assertions", "url", - "zvariant_derive", + "zvariant_derive 4.1.1", ] [[package]] @@ -6441,7 +6551,20 @@ dependencies = [ "proc-macro2", "quote", "syn 1.0.109", - "zvariant_utils", + "zvariant_utils 1.0.1", +] + +[[package]] +name = "zvariant_derive" +version = "4.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "642bf1b6b6d527988b3e8193d20969d53700a36eac734d21ae6639db168701c8" +dependencies = [ + "proc-macro-crate 3.1.0", + "proc-macro2", + "quote", + "syn 2.0.66", + "zvariant_utils 2.0.0", ] [[package]] @@ -6454,3 +6577,14 @@ dependencies = [ "quote", "syn 1.0.109", ] + +[[package]] +name = "zvariant_utils" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fc242db087efc22bd9ade7aa7809e4ba828132edc312871584a6b4391bdf8786" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.66", +] diff --git a/Cargo.toml b/Cargo.toml index 05d32aca..9170f5d1 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -26,8 +26,8 @@ keywords.workspace = true [package.metadata.packager] before-each-package-command = "cargo build --release" identifier = "io.github.wiiznokes.fan-control" -icons = ["resource/windows/app_icon.ico"] -resources = ["resource/icons", "resource/windows/lhmbuild"] +icons = ["res/windows/app_icon.ico"] +resources = ["res/icons", "res/windows/lhmbuild"] category = "Utility" [package.metadata.packager.windows] diff --git a/README.md b/README.md index aa61e32c..bc6b6b38 100644 --- a/README.md +++ b/README.md @@ -12,7 +12,7 @@ - Save configuration - Multiplatform (Linux/Windows) -![screenshot of fan-control](https://media.githubusercontent.com/media/wiiznokes/fan-control/master/resource/screenshots/app.png) +![screenshot of fan-control](https://media.githubusercontent.com/media/wiiznokes/fan-control/master/res/screenshots/app.png) ## Usage @@ -27,7 +27,7 @@ ### Flatpak Version -If you're using the Flatpak version of the application, you'll need to [install the required udev rules](./resource/linux/udev_rules.md) first. Then, you can use/install the app from [Flathub](https://flathub.org/apps/io.github.wiiznokes.fan-control). +If you're using the Flatpak version of the application, you'll need to [install the required udev rules](./res/linux/udev_rules.md) first. Then, you can use/install the app from [Flathub](https://flathub.org/apps/io.github.wiiznokes.fan-control). The configuration file for the Flatpak version will be located at: [`~/.var/app/io.github.wiiznokes.fan-control/config/fan-control/`](file://~/.var/app/io.github.wiiznokes.fan-control/config/fan-control/). diff --git a/build.rs b/build.rs index 143411e7..f4c5a817 100644 --- a/build.rs +++ b/build.rs @@ -6,8 +6,8 @@ fn main() -> io::Result<()> { if env::var_os("CARGO_CFG_WINDOWS").is_some() && std::env::var("PROFILE").unwrap() == "release" { winres::WindowsResource::new() - .set_icon("resource/windows/app_icon.ico") - .set_manifest_file("resource/windows/manifest.xml") + .set_icon("res/windows/app_icon.ico") + .set_manifest_file("res/windows/manifest.xml") .compile()?; } Ok(()) diff --git a/data/src/config/custom_temp.rs b/data/src/config/custom_temp.rs index 27409e59..c4aedc7c 100644 --- a/data/src/config/custom_temp.rs +++ b/data/src/config/custom_temp.rs @@ -1,6 +1,7 @@ use hardware::{Hardware, Value}; use light_enum::Values; use serde::{Deserialize, Serialize}; +use std::fmt::Display; use crate::{ app_graph::Nodes, @@ -64,12 +65,13 @@ impl ToNode for CustomTemp { } } -impl ToString for CustomTempKind { - fn to_string(&self) -> String { - match self { +impl Display for CustomTempKind { + fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { + let str = match self { CustomTempKind::Average => fl!("average"), CustomTempKind::Max => fl!("max"), CustomTempKind::Min => fl!("min"), - } + }; + write!(f, "{}", str) } } diff --git a/data/src/node.rs b/data/src/node.rs index f38ab5bf..45a94651 100644 --- a/data/src/node.rs +++ b/data/src/node.rs @@ -33,9 +33,9 @@ pub struct Input { pub name: String, } -impl ToString for Input { - fn to_string(&self) -> String { - self.name.clone() +impl Display for Input { + fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { + write!(f, "{}", self.name) } } diff --git a/data/src/settings.rs b/data/src/settings.rs index a970a25c..08c81918 100644 --- a/data/src/settings.rs +++ b/data/src/settings.rs @@ -1,6 +1,6 @@ use light_enum::Values; - use serde::{Deserialize, Serialize}; +use std::fmt::Display; #[derive(Serialize, Deserialize, Debug, Clone)] pub struct Settings { @@ -46,12 +46,13 @@ impl Settings { } } -impl ToString for AppTheme { - fn to_string(&self) -> String { - match self { +impl Display for AppTheme { + fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { + let str = match self { AppTheme::System => fl!("system_theme"), AppTheme::Dark => fl!("dark_theme"), AppTheme::Light => fl!("light_theme"), - } + }; + write!(f, "{}", str) } } diff --git a/hardware/LibreHardwareMonitorWrapper/LibreHardwareMonitorWrapper.csproj b/hardware/LibreHardwareMonitorWrapper/LibreHardwareMonitorWrapper.csproj index 56a9dfac..6383e530 100644 --- a/hardware/LibreHardwareMonitorWrapper/LibreHardwareMonitorWrapper.csproj +++ b/hardware/LibreHardwareMonitorWrapper/LibreHardwareMonitorWrapper.csproj @@ -11,7 +11,7 @@ win-x64 false false - .\..\..\resource\windows\lhmbuild + .\..\..\res\windows\lhmbuild diff --git a/hardware/src/fake_hardware.rs b/hardware/src/fake_hardware.rs index 485d3c8a..5d3c0a5d 100644 --- a/hardware/src/fake_hardware.rs +++ b/hardware/src/fake_hardware.rs @@ -1,5 +1,3 @@ -use std::fmt::Debug; - use rand::Rng; use crate::{HControl, HSensor, Hardware, HardwareBridge, Mode, Value}; @@ -8,12 +6,6 @@ pub struct FakeHardwareBridge { hardware: Hardware, } -#[derive(Debug)] -struct InternalSensor {} - -#[derive(Debug)] -struct InternalControl {} - static TEMP_INTERNAL_INDEX: usize = 0; static FAN_INTERNAL_INDEX: usize = 1; static CONTROL_INTERNAL_INDEX: usize = 2; diff --git a/hardware/src/windows.rs b/hardware/src/windows.rs index 848bd2cd..93b3850a 100644 --- a/hardware/src/windows.rs +++ b/hardware/src/windows.rs @@ -36,7 +36,7 @@ type Result = std::result::Result; fn spawn_windows_server() -> Result { let resource_path = if cfg!(test) { - std::path::PathBuf::from("../resource".to_string()) + std::path::PathBuf::from("../res".to_string()) } else { utils::resource_dir() }; diff --git a/i18n/it/data.ftl b/i18n/it/data.ftl new file mode 100644 index 00000000..2a01c1f4 --- /dev/null +++ b/i18n/it/data.ftl @@ -0,0 +1,22 @@ +none = Nessuno +average = Media +max = Max +min = Min + +default_control = Controllo +default_fan = Ventola +default_temp = Temp +default_custom_temp = Temp. personalizzata +default_graph = Grafico +default_flat = Piatto +default_linear = Lineare +default_target = Target + +system_theme = Sistema +dark_theme = Scuro +light_theme = Chiaro + +value_celsius = { $value } °C +value_percentage = { $value } % +value_rpm = { $value } RPM +no_value = Nessun valore \ No newline at end of file diff --git a/i18n/it/ui.ftl b/i18n/it/ui.ftl new file mode 100644 index 00000000..82a0983a --- /dev/null +++ b/i18n/it/ui.ftl @@ -0,0 +1,50 @@ +none = Nessuno +delete = Elimina +settings = Impostazioni +name = Nome +value = Valore +theme = Tema +update_delay = Ritardo di aggiornamento +update_delay_value = { $value } ms +temp_selection = Selezione della temperatura +min_temp = temp min +min_speed = velocità min +max_temp = temp max +max_speed = velocità max +idle_temp = idle temp +idle_speed = idle speed +load_temp = load temp +load_speed = load speed +launch_graph_window = Aggiungi coordinate + +# Add item description +add_item = Aggiungi un elemento +add_fan = Monitorare un sensore della ventola +add_temp = Monitorare un sensore di temperatura +add_custom_temp = Definire la logica tra i valori (Max, Media, ...) +add_control = Assegna un determinato comportamento a un determinato componente hardware +add_flat = Restituisce un valore fisso +add_linear = Prendi 5 variabili: + - una temperatura minima e massima + - una velocità minima e una massima + - un valore del sensore + se sensore < min temp -> velocità min + se sensore > max temp-> velocità max + altrimenti viene calcolata una media (vedi icona) +add_target = Prendi 5 variabili: + - un ideale e una temperatura di attivazione + - una velocità ideale e una velocità di attivazione + - un valore del sensore + Se il sensore > temperatura di attivazione, viene impostata la velocità di attivazione + fino a quando questo sensore < temperatura ideale +add_graph = Grafico + +# Config +config_name = Nome della configurazione +save_config = Salva/rinomina questa configurazione +delete_config = Elimina configurazione +create_config = Crea configurazione + +# Error +already_used_error = Questo nome è già in uso +invalid_value_error = questo valore non è valido \ No newline at end of file diff --git a/justfile b/justfile index 4b947a5b..02fc7d75 100644 --- a/justfile +++ b/justfile @@ -42,7 +42,7 @@ prettier: # todo: add to CI when ubuntu-image get appstream version 1.0 metainfo-check: - appstreamcli validate --pedantic --explain --strict resource/linux/metainfo.xml + appstreamcli validate --pedantic --explain --strict res/linux/metainfo.xml fmt-lhm: dotnet format ./hardware/LibreHardwareMonitorWrapper/LibreHardwareMonitorWrapper.csproj @@ -50,8 +50,8 @@ fmt-lhm: ################### Clean clean-libsensors: - make -C ./hardware/libsensors/ clean uninstall PREFIX=./../../build/libsensors ETCDIR=./../../build/libsensors/etc || true - rm -r build/libsensors || true + make -C ./hardware/libsensors clean || true + rm -rf build/libsensors || true clean-lhm: dotnet clean ./hardware/LibreHardwareMonitorWrapper/ || true diff --git a/resource/icons/add/20px.svg b/res/icons/add/20px.svg similarity index 100% rename from resource/icons/add/20px.svg rename to res/icons/add/20px.svg diff --git a/resource/icons/add/24px.svg b/res/icons/add/24px.svg similarity index 100% rename from resource/icons/add/24px.svg rename to res/icons/add/24px.svg diff --git a/resource/icons/add/40px.svg b/res/icons/add/40px.svg similarity index 100% rename from resource/icons/add/40px.svg rename to res/icons/add/40px.svg diff --git a/resource/icons/add/48px.svg b/res/icons/add/48px.svg similarity index 100% rename from resource/icons/add/48px.svg rename to res/icons/add/48px.svg diff --git a/resource/icons/alternate_email/20px.svg b/res/icons/alternate_email/20px.svg similarity index 100% rename from resource/icons/alternate_email/20px.svg rename to res/icons/alternate_email/20px.svg diff --git a/resource/icons/alternate_email/24px.svg b/res/icons/alternate_email/24px.svg similarity index 100% rename from resource/icons/alternate_email/24px.svg rename to res/icons/alternate_email/24px.svg diff --git a/resource/icons/alternate_email/40px.svg b/res/icons/alternate_email/40px.svg similarity index 100% rename from resource/icons/alternate_email/40px.svg rename to res/icons/alternate_email/40px.svg diff --git a/resource/icons/alternate_email/48px.svg b/res/icons/alternate_email/48px.svg similarity index 100% rename from resource/icons/alternate_email/48px.svg rename to res/icons/alternate_email/48px.svg diff --git a/resource/icons/arrow_drop_down/20px.svg b/res/icons/arrow_drop_down/20px.svg similarity index 100% rename from resource/icons/arrow_drop_down/20px.svg rename to res/icons/arrow_drop_down/20px.svg diff --git a/resource/icons/arrow_drop_down/24px.svg b/res/icons/arrow_drop_down/24px.svg similarity index 100% rename from resource/icons/arrow_drop_down/24px.svg rename to res/icons/arrow_drop_down/24px.svg diff --git a/resource/icons/arrow_drop_down/40px.svg b/res/icons/arrow_drop_down/40px.svg similarity index 100% rename from resource/icons/arrow_drop_down/40px.svg rename to res/icons/arrow_drop_down/40px.svg diff --git a/resource/icons/arrow_drop_down/48px.svg b/res/icons/arrow_drop_down/48px.svg similarity index 100% rename from resource/icons/arrow_drop_down/48px.svg rename to res/icons/arrow_drop_down/48px.svg diff --git a/resource/icons/arrow_drop_up/20px.svg b/res/icons/arrow_drop_up/20px.svg similarity index 100% rename from resource/icons/arrow_drop_up/20px.svg rename to res/icons/arrow_drop_up/20px.svg diff --git a/resource/icons/arrow_drop_up/24px.svg b/res/icons/arrow_drop_up/24px.svg similarity index 100% rename from resource/icons/arrow_drop_up/24px.svg rename to res/icons/arrow_drop_up/24px.svg diff --git a/resource/icons/arrow_drop_up/40px.svg b/res/icons/arrow_drop_up/40px.svg similarity index 100% rename from resource/icons/arrow_drop_up/40px.svg rename to res/icons/arrow_drop_up/40px.svg diff --git a/resource/icons/arrow_drop_up/48px.svg b/res/icons/arrow_drop_up/48px.svg similarity index 100% rename from resource/icons/arrow_drop_up/48px.svg rename to res/icons/arrow_drop_up/48px.svg diff --git a/resource/icons/chevron_left/20px.svg b/res/icons/chevron_left/20px.svg similarity index 100% rename from resource/icons/chevron_left/20px.svg rename to res/icons/chevron_left/20px.svg diff --git a/resource/icons/chevron_left/24px.svg b/res/icons/chevron_left/24px.svg similarity index 100% rename from resource/icons/chevron_left/24px.svg rename to res/icons/chevron_left/24px.svg diff --git a/resource/icons/chevron_left/40px.svg b/res/icons/chevron_left/40px.svg similarity index 100% rename from resource/icons/chevron_left/40px.svg rename to res/icons/chevron_left/40px.svg diff --git a/resource/icons/chevron_left/48px.svg b/res/icons/chevron_left/48px.svg similarity index 100% rename from resource/icons/chevron_left/48px.svg rename to res/icons/chevron_left/48px.svg diff --git a/resource/icons/chevron_right/20px.svg b/res/icons/chevron_right/20px.svg similarity index 100% rename from resource/icons/chevron_right/20px.svg rename to res/icons/chevron_right/20px.svg diff --git a/resource/icons/chevron_right/24px.svg b/res/icons/chevron_right/24px.svg similarity index 100% rename from resource/icons/chevron_right/24px.svg rename to res/icons/chevron_right/24px.svg diff --git a/resource/icons/chevron_right/40px.svg b/res/icons/chevron_right/40px.svg similarity index 100% rename from resource/icons/chevron_right/40px.svg rename to res/icons/chevron_right/40px.svg diff --git a/resource/icons/chevron_right/48px.svg b/res/icons/chevron_right/48px.svg similarity index 100% rename from resource/icons/chevron_right/48px.svg rename to res/icons/chevron_right/48px.svg diff --git a/resource/icons/close/20px.svg b/res/icons/close/20px.svg similarity index 100% rename from resource/icons/close/20px.svg rename to res/icons/close/20px.svg diff --git a/resource/icons/close/24px.svg b/res/icons/close/24px.svg similarity index 100% rename from resource/icons/close/24px.svg rename to res/icons/close/24px.svg diff --git a/resource/icons/close/40px.svg b/res/icons/close/40px.svg similarity index 100% rename from resource/icons/close/40px.svg rename to res/icons/close/40px.svg diff --git a/resource/icons/close/48px.svg b/res/icons/close/48px.svg similarity index 100% rename from resource/icons/close/48px.svg rename to res/icons/close/48px.svg diff --git a/resource/icons/delete_forever/20px.svg b/res/icons/delete_forever/20px.svg similarity index 100% rename from resource/icons/delete_forever/20px.svg rename to res/icons/delete_forever/20px.svg diff --git a/resource/icons/delete_forever/24px.svg b/res/icons/delete_forever/24px.svg similarity index 100% rename from resource/icons/delete_forever/24px.svg rename to res/icons/delete_forever/24px.svg diff --git a/resource/icons/delete_forever/40px.svg b/res/icons/delete_forever/40px.svg similarity index 100% rename from resource/icons/delete_forever/40px.svg rename to res/icons/delete_forever/40px.svg diff --git a/resource/icons/delete_forever/48px.svg b/res/icons/delete_forever/48px.svg similarity index 100% rename from resource/icons/delete_forever/48px.svg rename to res/icons/delete_forever/48px.svg diff --git a/resource/icons/expand_less/20px.svg b/res/icons/expand_less/20px.svg similarity index 100% rename from resource/icons/expand_less/20px.svg rename to res/icons/expand_less/20px.svg diff --git a/resource/icons/expand_less/24px.svg b/res/icons/expand_less/24px.svg similarity index 100% rename from resource/icons/expand_less/24px.svg rename to res/icons/expand_less/24px.svg diff --git a/resource/icons/expand_less/40px.svg b/res/icons/expand_less/40px.svg similarity index 100% rename from resource/icons/expand_less/40px.svg rename to res/icons/expand_less/40px.svg diff --git a/resource/icons/expand_less/48px.svg b/res/icons/expand_less/48px.svg similarity index 100% rename from resource/icons/expand_less/48px.svg rename to res/icons/expand_less/48px.svg diff --git a/resource/icons/expand_more/20px.svg b/res/icons/expand_more/20px.svg similarity index 100% rename from resource/icons/expand_more/20px.svg rename to res/icons/expand_more/20px.svg diff --git a/resource/icons/expand_more/24px.svg b/res/icons/expand_more/24px.svg similarity index 100% rename from resource/icons/expand_more/24px.svg rename to res/icons/expand_more/24px.svg diff --git a/resource/icons/expand_more/40px.svg b/res/icons/expand_more/40px.svg similarity index 100% rename from resource/icons/expand_more/40px.svg rename to res/icons/expand_more/40px.svg diff --git a/resource/icons/expand_more/48px.svg b/res/icons/expand_more/48px.svg similarity index 100% rename from resource/icons/expand_more/48px.svg rename to res/icons/expand_more/48px.svg diff --git a/resource/icons/horizontal_rule/20px.svg b/res/icons/horizontal_rule/20px.svg similarity index 100% rename from resource/icons/horizontal_rule/20px.svg rename to res/icons/horizontal_rule/20px.svg diff --git a/resource/icons/horizontal_rule/24px.svg b/res/icons/horizontal_rule/24px.svg similarity index 100% rename from resource/icons/horizontal_rule/24px.svg rename to res/icons/horizontal_rule/24px.svg diff --git a/resource/icons/horizontal_rule/40px.svg b/res/icons/horizontal_rule/40px.svg similarity index 100% rename from resource/icons/horizontal_rule/40px.svg rename to res/icons/horizontal_rule/40px.svg diff --git a/resource/icons/horizontal_rule/48px.svg b/res/icons/horizontal_rule/48px.svg similarity index 100% rename from resource/icons/horizontal_rule/48px.svg rename to res/icons/horizontal_rule/48px.svg diff --git a/resource/icons/linear/24px.svg b/res/icons/linear/24px.svg similarity index 100% rename from resource/icons/linear/24px.svg rename to res/icons/linear/24px.svg diff --git a/resource/icons/more_vert/20px.svg b/res/icons/more_vert/20px.svg similarity index 100% rename from resource/icons/more_vert/20px.svg rename to res/icons/more_vert/20px.svg diff --git a/resource/icons/more_vert/24px.svg b/res/icons/more_vert/24px.svg similarity index 100% rename from resource/icons/more_vert/24px.svg rename to res/icons/more_vert/24px.svg diff --git a/resource/icons/more_vert/40px.svg b/res/icons/more_vert/40px.svg similarity index 100% rename from resource/icons/more_vert/40px.svg rename to res/icons/more_vert/40px.svg diff --git a/resource/icons/more_vert/48px.svg b/res/icons/more_vert/48px.svg similarity index 100% rename from resource/icons/more_vert/48px.svg rename to res/icons/more_vert/48px.svg diff --git a/resource/icons/my_location/20px.svg b/res/icons/my_location/20px.svg similarity index 100% rename from resource/icons/my_location/20px.svg rename to res/icons/my_location/20px.svg diff --git a/resource/icons/my_location/24px.svg b/res/icons/my_location/24px.svg similarity index 100% rename from resource/icons/my_location/24px.svg rename to res/icons/my_location/24px.svg diff --git a/resource/icons/my_location/40px.svg b/res/icons/my_location/40px.svg similarity index 100% rename from resource/icons/my_location/40px.svg rename to res/icons/my_location/40px.svg diff --git a/resource/icons/my_location/48px.svg b/res/icons/my_location/48px.svg similarity index 100% rename from resource/icons/my_location/48px.svg rename to res/icons/my_location/48px.svg diff --git a/resource/icons/psychology/20px.svg b/res/icons/psychology/20px.svg similarity index 100% rename from resource/icons/psychology/20px.svg rename to res/icons/psychology/20px.svg diff --git a/resource/icons/psychology/24px.svg b/res/icons/psychology/24px.svg similarity index 100% rename from resource/icons/psychology/24px.svg rename to res/icons/psychology/24px.svg diff --git a/resource/icons/psychology/40px.svg b/res/icons/psychology/40px.svg similarity index 100% rename from resource/icons/psychology/40px.svg rename to res/icons/psychology/40px.svg diff --git a/resource/icons/psychology/48px.svg b/res/icons/psychology/48px.svg similarity index 100% rename from resource/icons/psychology/48px.svg rename to res/icons/psychology/48px.svg diff --git a/resource/icons/remove/20px.svg b/res/icons/remove/20px.svg similarity index 100% rename from resource/icons/remove/20px.svg rename to res/icons/remove/20px.svg diff --git a/resource/icons/remove/24px.svg b/res/icons/remove/24px.svg similarity index 100% rename from resource/icons/remove/24px.svg rename to res/icons/remove/24px.svg diff --git a/resource/icons/remove/40px.svg b/res/icons/remove/40px.svg similarity index 100% rename from resource/icons/remove/40px.svg rename to res/icons/remove/40px.svg diff --git a/resource/icons/remove/48px.svg b/res/icons/remove/48px.svg similarity index 100% rename from resource/icons/remove/48px.svg rename to res/icons/remove/48px.svg diff --git a/resource/icons/save/20px.svg b/res/icons/save/20px.svg similarity index 100% rename from resource/icons/save/20px.svg rename to res/icons/save/20px.svg diff --git a/resource/icons/save/24px.svg b/res/icons/save/24px.svg similarity index 100% rename from resource/icons/save/24px.svg rename to res/icons/save/24px.svg diff --git a/resource/icons/save/40px.svg b/res/icons/save/40px.svg similarity index 100% rename from resource/icons/save/40px.svg rename to res/icons/save/40px.svg diff --git a/resource/icons/save/48px.svg b/res/icons/save/48px.svg similarity index 100% rename from resource/icons/save/48px.svg rename to res/icons/save/48px.svg diff --git a/resource/icons/settings/20px.svg b/res/icons/settings/20px.svg similarity index 100% rename from resource/icons/settings/20px.svg rename to res/icons/settings/20px.svg diff --git a/resource/icons/settings/24px.svg b/res/icons/settings/24px.svg similarity index 100% rename from resource/icons/settings/24px.svg rename to res/icons/settings/24px.svg diff --git a/resource/icons/settings/40px.svg b/res/icons/settings/40px.svg similarity index 100% rename from resource/icons/settings/40px.svg rename to res/icons/settings/40px.svg diff --git a/resource/icons/settings/48px.svg b/res/icons/settings/48px.svg similarity index 100% rename from resource/icons/settings/48px.svg rename to res/icons/settings/48px.svg diff --git a/resource/icons/speed/20px.svg b/res/icons/speed/20px.svg similarity index 100% rename from resource/icons/speed/20px.svg rename to res/icons/speed/20px.svg diff --git a/resource/icons/speed/24px.svg b/res/icons/speed/24px.svg similarity index 100% rename from resource/icons/speed/24px.svg rename to res/icons/speed/24px.svg diff --git a/resource/icons/speed/40px.svg b/res/icons/speed/40px.svg similarity index 100% rename from resource/icons/speed/40px.svg rename to res/icons/speed/40px.svg diff --git a/resource/icons/speed/48px.svg b/res/icons/speed/48px.svg similarity index 100% rename from resource/icons/speed/48px.svg rename to res/icons/speed/48px.svg diff --git a/resource/icons/thermometer/20px.svg b/res/icons/thermometer/20px.svg similarity index 100% rename from resource/icons/thermometer/20px.svg rename to res/icons/thermometer/20px.svg diff --git a/resource/icons/thermometer/24px.svg b/res/icons/thermometer/24px.svg similarity index 100% rename from resource/icons/thermometer/24px.svg rename to res/icons/thermometer/24px.svg diff --git a/resource/icons/thermometer/40px.svg b/res/icons/thermometer/40px.svg similarity index 100% rename from resource/icons/thermometer/40px.svg rename to res/icons/thermometer/40px.svg diff --git a/resource/icons/thermometer/48px.svg b/res/icons/thermometer/48px.svg similarity index 100% rename from resource/icons/thermometer/48px.svg rename to res/icons/thermometer/48px.svg diff --git a/resource/icons/thermostat/20px.svg b/res/icons/thermostat/20px.svg similarity index 100% rename from resource/icons/thermostat/20px.svg rename to res/icons/thermostat/20px.svg diff --git a/resource/icons/thermostat/24px.svg b/res/icons/thermostat/24px.svg similarity index 100% rename from resource/icons/thermostat/24px.svg rename to res/icons/thermostat/24px.svg diff --git a/resource/icons/thermostat/40px.svg b/res/icons/thermostat/40px.svg similarity index 100% rename from resource/icons/thermostat/40px.svg rename to res/icons/thermostat/40px.svg diff --git a/resource/icons/thermostat/48px.svg b/res/icons/thermostat/48px.svg similarity index 100% rename from resource/icons/thermostat/48px.svg rename to res/icons/thermostat/48px.svg diff --git a/resource/icons/toys_fan/20px.svg b/res/icons/toys_fan/20px.svg similarity index 100% rename from resource/icons/toys_fan/20px.svg rename to res/icons/toys_fan/20px.svg diff --git a/resource/icons/toys_fan/24px.svg b/res/icons/toys_fan/24px.svg similarity index 100% rename from resource/icons/toys_fan/24px.svg rename to res/icons/toys_fan/24px.svg diff --git a/resource/icons/toys_fan/40px.svg b/res/icons/toys_fan/40px.svg similarity index 100% rename from resource/icons/toys_fan/40px.svg rename to res/icons/toys_fan/40px.svg diff --git a/resource/icons/toys_fan/48px.svg b/res/icons/toys_fan/48px.svg similarity index 100% rename from resource/icons/toys_fan/48px.svg rename to res/icons/toys_fan/48px.svg diff --git a/res/linux/60-fan-control.rules b/res/linux/60-fan-control.rules new file mode 100644 index 00000000..c1e5517a --- /dev/null +++ b/res/linux/60-fan-control.rules @@ -0,0 +1 @@ +SUBSYSTEM=="hwmon", RUN+="/bin/sh -c '/bin/chmod a+w /sys%p/pwm* || true'" diff --git a/resource/linux/app_icon.svg b/res/linux/app_icon.svg similarity index 100% rename from resource/linux/app_icon.svg rename to res/linux/app_icon.svg diff --git a/resource/linux/desktop_entry.desktop b/res/linux/desktop_entry.desktop similarity index 100% rename from resource/linux/desktop_entry.desktop rename to res/linux/desktop_entry.desktop diff --git a/resource/linux/metainfo.xml b/res/linux/metainfo.xml similarity index 98% rename from resource/linux/metainfo.xml rename to res/linux/metainfo.xml index c6d79d2c..791ba91f 100644 --- a/resource/linux/metainfo.xml +++ b/res/linux/metainfo.xml @@ -51,7 +51,7 @@ fan-control screenshot - https://media.githubusercontent.com/media/wiiznokes/fan-control/master/resource/screenshots/app.png + https://media.githubusercontent.com/media/wiiznokes/fan-control/master/res/screenshots/app.png diff --git a/resource/linux/rules-note.md b/res/linux/rules-note.md similarity index 80% rename from resource/linux/rules-note.md rename to res/linux/rules-note.md index 4a80d2c2..81e63d59 100644 --- a/resource/linux/rules-note.md +++ b/res/linux/rules-note.md @@ -1,26 +1,31 @@ # Some notes on udev rules -### see some logs: +### see some logs: + ```sh journalctl -f ``` -### reload +### reload + ```sh sudo udevadm control --reload-rules && sudo udevadm trigger ``` ### show info about triggering and devices (test the hwmon7 device ?) + ```sh sudo udevadm test /sys/class/hwmon/hwmon7 ``` -### show info +### show info + ```sh udevadm monitor -u | grep hwmon ``` ## Other + ```sh ll /sys/class/hwmon/hwmon7/pwm* sudo /bin/chmod a-w /sys/class/hwmon/hwmon7/pwm* @@ -34,27 +39,32 @@ wget https://openrgb.org/releases/release_0.9/60-openrgb.rules - hwmon7 is the kernel name. It can be refered as %k in the rules file. - %p is the device path. For example, the device path of hwmon7 (`/sys/class/hwmon/hwmon7`) is `/sys/devices/platform/nct6775.656/hwmon/hwmon7` - - `ACTION=="add"`: the rule will only be triggered when a device is added to the system `KERNEL=="hwmon[0-99]"`: match any version of hwmon kernel name ### Export log to a file in a RUN clause + ``` RUN+="/bin/sh -c '{COMMAND} > /tmp/fan-control-udev.txt 2>&1'" ``` -`chmod a+w /sys%p/pwm*`: The * will only make sense in a shell program, that why we spawn /bin/sh before +`chmod a+w /sys%p/pwm*`: The \* will only make sense in a shell program, that why we spawn /bin/sh before ### Attempt to filter pwmX and pwmX_enable This two files are the only one that the app use. -The regex and command work in a terminal on my machine, but don't work inside a RUN clause. +The regex and command work in a terminal on my machine, but don't work inside a RUN clause. + ``` SUBSYSTEM=="hwmon", KERNEL=="hwmon7", RUN+="/bin/sh -c '/bin/find /sys%p -type f -regex '/sys%p/pwm[0-99]\(_enable\)?' -exec /bin/chmod a+w {} \; > /tmp/fan-control-udev.txt 2>&1'" ``` - ### path for rules: + - /etc/udev/rules.d/60-fan-control.rules -- /usr/lib/udev/rules.d/60-fan-control.rules \ No newline at end of file +- /usr/lib/udev/rules.d/60-fan-control.rules + +``` +# LOGS VERSION +# SUBSYSTEM=="hwmon", KERNEL=="hwmon7", RUN+="/bin/sh -c '/bin/chmod -v a+w /sys%p/pwm* > /tmp/fan-control-udev.txt 2>&1'" +``` diff --git a/resource/linux/udev_rules.md b/res/linux/udev_rules.md similarity index 95% rename from resource/linux/udev_rules.md rename to res/linux/udev_rules.md index f0b18510..6966b2ce 100644 --- a/resource/linux/udev_rules.md +++ b/res/linux/udev_rules.md @@ -8,7 +8,7 @@ This is why we use [udev](https://en.wikipedia.org/wiki/Udev), which allows norm # Commands to install the rules ```sh -wget https://raw.githubusercontent.com/wiiznokes/fan-control/master/resource/linux/60-fan-control.rules +wget https://raw.githubusercontent.com/wiiznokes/fan-control/master/res/linux/60-fan-control.rules sudo mv 60-fan-control.rules /etc/udev/rules.d/ sudo udevadm control --reload-rules && sudo udevadm trigger ``` diff --git a/resource/screenshots/app.png b/res/screenshots/app.png similarity index 100% rename from resource/screenshots/app.png rename to res/screenshots/app.png diff --git a/resource/windows/app_icon.ico b/res/windows/app_icon.ico similarity index 100% rename from resource/windows/app_icon.ico rename to res/windows/app_icon.ico diff --git a/resource/windows/manifest.xml b/res/windows/manifest.xml similarity index 100% rename from resource/windows/manifest.xml rename to res/windows/manifest.xml diff --git a/resource/linux/60-fan-control.rules b/resource/linux/60-fan-control.rules deleted file mode 100644 index 72071027..00000000 --- a/resource/linux/60-fan-control.rules +++ /dev/null @@ -1,7 +0,0 @@ - -# XXX: Only hwmon7 because it failed on all other number on machine -SUBSYSTEM=="hwmon", KERNEL=="hwmon7", RUN+="/bin/sh -c '/bin/chmod a+w /sys%p/pwm*'" - - -# LOGS VERSION -# SUBSYSTEM=="hwmon", KERNEL=="hwmon7", RUN+="/bin/sh -c '/bin/chmod -v a+w /sys%p/pwm* > /tmp/fan-control-udev.txt 2>&1'" \ No newline at end of file diff --git a/ui/Cargo.toml b/ui/Cargo.toml index 7443a645..6a5fe990 100644 --- a/ui/Cargo.toml +++ b/ui/Cargo.toml @@ -31,7 +31,7 @@ default-features = false features = [ "smol", # disable because cause seg fault when quitting the app on flatpak - #"wgpu", + "wgpu", "winit", "tokio", "multi-window" diff --git a/ui/src/graph.rs b/ui/src/graph.rs index 678a992c..e8779e41 100644 --- a/ui/src/graph.rs +++ b/ui/src/graph.rs @@ -1,8 +1,8 @@ use cosmic::{ - iced::window, + iced::{window, Size}, iced_core::{Alignment, Length}, - iced_widget::PickList, - widget::{button::text, Button, Column, Row, Space, Text, TextInput}, + iced_widget::{button, PickList}, + widget::{button::text, container, Column, Row, Space, Text, TextInput}, Element, }; use data::{ @@ -19,6 +19,14 @@ use crate::{ pick_list_utils::{self, MyOption}, }; +pub fn window_settings() -> window::Settings { + window::Settings { + size: Size::new(300.0, 200.0), + resizable: false, + ..Default::default() + } +} + pub fn graph_view<'a>( node: &'a Node, graph: &'a Graph, @@ -88,37 +96,59 @@ pub fn graph_window_view<'a>( let temp_input = Row::new() .push( TextInput::new("temp", &graph_window.temp_c) - .on_input(|s| GraphWindowMsg::ChangeTemp(s).into()), + .on_input(|s| GraphWindowMsg::ChangeTemp(s).into()) + .width(Length::Fixed(70.0)), ) - .push(text("°C")); + .push(text("°C")) + .spacing(5) + .align_items(Alignment::Center); let percent_input = Row::new() .push( TextInput::new("percent", &graph_window.percent_c) - .on_input(|s| GraphWindowMsg::ChangePercent(s).into()), + .on_input(|s| GraphWindowMsg::ChangePercent(s).into()) + .width(Length::Fixed(70.0)), ) - .push(text("%")); + .push(text("%")) + .spacing(5) + .align_items(Alignment::Center); let coord = Coord::try_from(( graph_window.temp_c.as_ref(), graph_window.percent_c.as_ref(), )); - let mut add_button = Button::new("add"); + let mut add_button = button("add"); if let Ok(coord) = coord { add_button = add_button .on_press(ModifNodeMsg::Graph(GraphMsg::AddCoord(coord)).to_app(graph_window.node_id)); } - let add_row = Row::new() - .push(Button::new("close").on_press(GraphWindowMsg::Toogle(None).into())) - .push(add_button); - - Column::new() + let inputs_row = Row::new() .push(temp_input) .push(text("=")) .push(percent_input) - .push(add_row) + .align_items(Alignment::Center) + .spacing(5); + + let close_button = button("close").on_press(GraphWindowMsg::Toogle(None).into()); + let actions_row = Row::new() + .push(close_button) + .push(add_button) + .spacing(20) + .align_items(Alignment::Center); + + let content = Column::new() + .push(inputs_row) + .push(actions_row) + .align_items(Alignment::Center) + .spacing(20); + + container(content) + .width(Length::Fill) + .height(Length::Fill) + .center_x() + .center_y() .into() } diff --git a/ui/src/lib.rs b/ui/src/lib.rs index ac675fc6..7d0552bd 100644 --- a/ui/src/lib.rs +++ b/ui/src/lib.rs @@ -446,7 +446,7 @@ impl cosmic::Application for Ui { let node = self.app_state.app_graph.get_mut(&id); let node_c = self.nodes_c.get_mut(&id); - node_c.name = name.clone(); + node_c.name.clone_from(&name); if name_is_valid { node_c.is_error_name = false; let previous_name = node.name().clone(); @@ -462,12 +462,12 @@ impl cosmic::Application for Ui { .iter_mut() .find(|node_input| node_input.id == node_id) { - node_input.name = name.clone(); + node_input.name.clone_from(&name); let mut inputs = n.node_type.get_inputs(); match inputs.iter().position(|n| n == &previous_name) { Some(index) => { - inputs[index] = name.clone(); + inputs[index].clone_from(&name); n.node_type.set_inputs(inputs) } None => { @@ -501,11 +501,9 @@ impl cosmic::Application for Ui { percent_c: String::new(), }); - let settings = window::Settings { - ..Default::default() - }; let command = Command::single(Action::Window(window::Action::Spawn( - new_id, settings, + new_id, + graph::window_settings(), ))); commands.push(command); @@ -577,10 +575,11 @@ impl cosmic::Application for Ui { //cosmic::iced_futures::Subscription::none() } - fn on_app_exit(&mut self) { + fn on_app_exit(&mut self) -> Option { if let Err(e) = self.app_state.bridge.shutdown() { error!("shutdown hardware: {}", e); } + None } fn on_close_requested(&self, _id: iced::window::Id) -> Option { diff --git a/ui/src/pick_list_utils.rs b/ui/src/pick_list_utils.rs index a3424be3..19f6c930 100644 --- a/ui/src/pick_list_utils.rs +++ b/ui/src/pick_list_utils.rs @@ -1,3 +1,5 @@ +use std::fmt::Display; + #[derive(Clone, Debug, PartialEq, Eq)] pub enum MyOption where @@ -7,14 +9,14 @@ where None, } -impl ToString for MyOption +impl Display for MyOption where T: ToString, { - fn to_string(&self) -> String { + fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { match self { - MyOption::Some(t) => t.to_string(), - MyOption::None => fl!("none"), + MyOption::Some(t) => write!(f, "{}", t.to_string()), + MyOption::None => write!(f, "{}", fl!("none")), } } } @@ -124,9 +126,9 @@ pub mod input { pub mod hardware { - use std::rc::Rc; - use hardware::HItem; + use std::fmt::Display; + use std::rc::Rc; use super::MyOption; @@ -141,9 +143,10 @@ pub mod hardware { self.id == other.id } } - impl ToString for HardwarePickListOption { - fn to_string(&self) -> String { - self.name.clone() + + impl Display for HardwarePickListOption { + fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { + write!(f, "{}", self.name) } } diff --git a/utils/Cargo.toml b/utils/Cargo.toml index 64970423..56fb8d6c 100644 --- a/utils/Cargo.toml +++ b/utils/Cargo.toml @@ -12,6 +12,6 @@ keywords.workspace = true [dependencies] -cached = "0.49" +cached = "0.51" cargo-packager-resource-resolver.workspace = true log.workspace = true diff --git a/utils/src/lib.rs b/utils/src/lib.rs index c4b016ff..3fb47b35 100644 --- a/utils/src/lib.rs +++ b/utils/src/lib.rs @@ -16,13 +16,13 @@ pub const APP: &str = "fan-control"; #[cached] pub fn resource_dir() -> PathBuf { if cfg!(FAN_CONTROL_FORMAT = "flatpak") { - PathBuf::from(format!("/app/share/{APP_ID}/resource")) + PathBuf::from(format!("/app/share/{APP_ID}/res")) } else { match resource_resolver::current_format() { Ok(format) => resource_resolver::resources_dir(format).unwrap(), Err(e) => { if matches!(e, resource_resolver::Error::UnkownPackageFormat) { - PathBuf::from("resource") + PathBuf::from("res") } else { error!("{e}"); panic!()