From 8fa09adf1b5801008efae2efb3175e22df86ebca Mon Sep 17 00:00:00 2001 From: jtuomi Date: Thu, 26 Mar 2026 20:46:22 +0200 Subject: [PATCH 01/11] Version up to 1.0.6 and cargo update --- Cargo.lock | 245 +++++++++--------- Cargo.toml | 2 +- org.cosmic_utils.enroll.yml | 55 ++-- .../org.cosmic_utils.enroll.metainfo.xml | 11 + 4 files changed, 156 insertions(+), 157 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 1604768..10df8bb 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -143,23 +143,21 @@ checksum = "3aa2999eb46af81abb65c2d30d446778d7e613b60bbf4e174a027e80f90a3c14" [[package]] name = "android-activity" -version = "0.6.0" +version = "0.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ef6978589202a00cd7e118380c448a08b6ed394c3a8df3a430d0898e3a42d046" +checksum = "0f2a1bb052857d5dd49572219344a7332b31b76405648eabac5bc68978251bcd" dependencies = [ "android-properties", "bitflags 2.11.0", "cc", - "cesu8", "jni", - "jni-sys", "libc", "log", "ndk", "ndk-context", "ndk-sys", "num_enum", - "thiserror 1.0.69", + "thiserror 2.0.18", ] [[package]] @@ -200,9 +198,9 @@ dependencies = [ [[package]] name = "arc-swap" -version = "1.8.2" +version = "1.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f9f3647c145568cec02c42054e07bdf9a5a698e15b466fb2341bfc393cd24aa5" +checksum = "a07d1f37ff60921c83bdfc7407723bdefe89b44b98a9b772f225c8f9d67141a6" dependencies = [ "rustversion", ] @@ -274,9 +272,9 @@ dependencies = [ [[package]] name = "ashpd" -version = "0.13.8" +version = "0.13.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "51b9019bd7f3beac5fbef5b756f5ef67777ab068035ec15683c1e635ad476f54" +checksum = "13bdf0fd848239dcd5e64eeeee35dbc00378ebcc6f3aa4ead0a305eec83d0cfb" dependencies = [ "enumflags2", "futures-util", @@ -690,12 +688,6 @@ dependencies = [ "shlex", ] -[[package]] -name = "cesu8" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6d43a04d8753f35258c91f8ec639f792891f748a1edbd759cf1dcea3382ad83c" - [[package]] name = "cfg-if" version = "1.0.4" @@ -904,7 +896,7 @@ dependencies = [ [[package]] name = "cosmic-config" version = "1.0.0" -source = "git+https://github.com/pop-os/libcosmic.git#7a5676242259c1c743387b7a23df12bd8be1e53f" +source = "git+https://github.com/pop-os/libcosmic.git#adb3e341fc35282c0cee108b73740dcb28d4efe1" dependencies = [ "atomicwrites", "cosmic-config-derive", @@ -925,7 +917,7 @@ dependencies = [ [[package]] name = "cosmic-config-derive" version = "1.0.0" -source = "git+https://github.com/pop-os/libcosmic.git#7a5676242259c1c743387b7a23df12bd8be1e53f" +source = "git+https://github.com/pop-os/libcosmic.git#adb3e341fc35282c0cee108b73740dcb28d4efe1" dependencies = [ "quote", "syn", @@ -993,7 +985,7 @@ dependencies = [ [[package]] name = "cosmic-theme" version = "1.0.0" -source = "git+https://github.com/pop-os/libcosmic.git#7a5676242259c1c743387b7a23df12bd8be1e53f" +source = "git+https://github.com/pop-os/libcosmic.git#adb3e341fc35282c0cee108b73740dcb28d4efe1" dependencies = [ "almost", "configparser", @@ -1009,9 +1001,9 @@ dependencies = [ [[package]] name = "cosmic-utils-enroll" -version = "1.0.5" +version = "1.0.6" dependencies = [ - "ashpd 0.13.8", + "ashpd 0.13.9", "futures-util", "i18n-embed 0.15.4", "i18n-embed-fl 0.9.4", @@ -2110,7 +2102,7 @@ dependencies = [ [[package]] name = "iced" version = "0.14.0" -source = "git+https://github.com/pop-os/libcosmic.git#7a5676242259c1c743387b7a23df12bd8be1e53f" +source = "git+https://github.com/pop-os/libcosmic.git#adb3e341fc35282c0cee108b73740dcb28d4efe1" dependencies = [ "dnd", "iced_accessibility", @@ -2131,7 +2123,7 @@ dependencies = [ [[package]] name = "iced_accessibility" version = "0.1.0" -source = "git+https://github.com/pop-os/libcosmic.git#7a5676242259c1c743387b7a23df12bd8be1e53f" +source = "git+https://github.com/pop-os/libcosmic.git#adb3e341fc35282c0cee108b73740dcb28d4efe1" dependencies = [ "accesskit", "accesskit_winit", @@ -2140,7 +2132,7 @@ dependencies = [ [[package]] name = "iced_core" version = "0.14.0" -source = "git+https://github.com/pop-os/libcosmic.git#7a5676242259c1c743387b7a23df12bd8be1e53f" +source = "git+https://github.com/pop-os/libcosmic.git#adb3e341fc35282c0cee108b73740dcb28d4efe1" dependencies = [ "bitflags 2.11.0", "bytes", @@ -2165,7 +2157,7 @@ dependencies = [ [[package]] name = "iced_debug" version = "0.14.0" -source = "git+https://github.com/pop-os/libcosmic.git#7a5676242259c1c743387b7a23df12bd8be1e53f" +source = "git+https://github.com/pop-os/libcosmic.git#adb3e341fc35282c0cee108b73740dcb28d4efe1" dependencies = [ "iced_core", "iced_futures", @@ -2175,7 +2167,7 @@ dependencies = [ [[package]] name = "iced_futures" version = "0.14.0" -source = "git+https://github.com/pop-os/libcosmic.git#7a5676242259c1c743387b7a23df12bd8be1e53f" +source = "git+https://github.com/pop-os/libcosmic.git#adb3e341fc35282c0cee108b73740dcb28d4efe1" dependencies = [ "futures", "iced_core", @@ -2189,7 +2181,7 @@ dependencies = [ [[package]] name = "iced_graphics" version = "0.14.0" -source = "git+https://github.com/pop-os/libcosmic.git#7a5676242259c1c743387b7a23df12bd8be1e53f" +source = "git+https://github.com/pop-os/libcosmic.git#adb3e341fc35282c0cee108b73740dcb28d4efe1" dependencies = [ "bitflags 2.11.0", "bytemuck", @@ -2210,7 +2202,7 @@ dependencies = [ [[package]] name = "iced_program" version = "0.14.0" -source = "git+https://github.com/pop-os/libcosmic.git#7a5676242259c1c743387b7a23df12bd8be1e53f" +source = "git+https://github.com/pop-os/libcosmic.git#adb3e341fc35282c0cee108b73740dcb28d4efe1" dependencies = [ "iced_graphics", "iced_runtime", @@ -2219,7 +2211,7 @@ dependencies = [ [[package]] name = "iced_renderer" version = "0.14.0" -source = "git+https://github.com/pop-os/libcosmic.git#7a5676242259c1c743387b7a23df12bd8be1e53f" +source = "git+https://github.com/pop-os/libcosmic.git#adb3e341fc35282c0cee108b73740dcb28d4efe1" dependencies = [ "iced_graphics", "iced_tiny_skia", @@ -2231,7 +2223,7 @@ dependencies = [ [[package]] name = "iced_runtime" version = "0.14.0" -source = "git+https://github.com/pop-os/libcosmic.git#7a5676242259c1c743387b7a23df12bd8be1e53f" +source = "git+https://github.com/pop-os/libcosmic.git#adb3e341fc35282c0cee108b73740dcb28d4efe1" dependencies = [ "bytes", "cosmic-client-toolkit", @@ -2247,7 +2239,7 @@ dependencies = [ [[package]] name = "iced_tiny_skia" version = "0.14.0" -source = "git+https://github.com/pop-os/libcosmic.git#7a5676242259c1c743387b7a23df12bd8be1e53f" +source = "git+https://github.com/pop-os/libcosmic.git#adb3e341fc35282c0cee108b73740dcb28d4efe1" dependencies = [ "bytemuck", "cosmic-text", @@ -2264,7 +2256,7 @@ dependencies = [ [[package]] name = "iced_wgpu" version = "0.14.0" -source = "git+https://github.com/pop-os/libcosmic.git#7a5676242259c1c743387b7a23df12bd8be1e53f" +source = "git+https://github.com/pop-os/libcosmic.git#adb3e341fc35282c0cee108b73740dcb28d4efe1" dependencies = [ "as-raw-xcb-connection", "bitflags 2.11.0", @@ -2295,7 +2287,7 @@ dependencies = [ [[package]] name = "iced_widget" version = "0.14.2" -source = "git+https://github.com/pop-os/libcosmic.git#7a5676242259c1c743387b7a23df12bd8be1e53f" +source = "git+https://github.com/pop-os/libcosmic.git#adb3e341fc35282c0cee108b73740dcb28d4efe1" dependencies = [ "cosmic-client-toolkit", "dnd", @@ -2314,7 +2306,7 @@ dependencies = [ [[package]] name = "iced_winit" version = "0.14.0" -source = "git+https://github.com/pop-os/libcosmic.git#7a5676242259c1c743387b7a23df12bd8be1e53f" +source = "git+https://github.com/pop-os/libcosmic.git#adb3e341fc35282c0cee108b73740dcb28d4efe1" dependencies = [ "cosmic-client-toolkit", "cursor-icon", @@ -2470,7 +2462,7 @@ dependencies = [ "num-traits", "png 0.18.1", "zune-core 0.5.1", - "zune-jpeg 0.5.13", + "zune-jpeg 0.5.14", ] [[package]] @@ -2608,25 +2600,61 @@ dependencies = [ [[package]] name = "jni" -version = "0.21.1" +version = "0.22.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a87aa2bb7d2af34197c04845522473242e1aa17c12f4935d5856491a7fb8c97" +checksum = "5efd9a482cf3a427f00d6b35f14332adc7902ce91efb778580e180ff90fa3498" dependencies = [ - "cesu8", "cfg-if", "combine", - "jni-sys", + "jni-macros", + "jni-sys 0.4.1", "log", - "thiserror 1.0.69", + "simd_cesu8", + "thiserror 2.0.18", "walkdir", - "windows-sys 0.45.0", + "windows-link 0.2.1", +] + +[[package]] +name = "jni-macros" +version = "0.22.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a00109accc170f0bdb141fed3e393c565b6f5e072365c3bd58f5b062591560a3" +dependencies = [ + "proc-macro2", + "quote", + "rustc_version", + "simd_cesu8", + "syn", ] [[package]] name = "jni-sys" -version = "0.3.0" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "41a652e1f9b6e0275df1f15b32661cf0d4b78d4d87ddec5e0c3c20f097433258" +dependencies = [ + "jni-sys 0.4.1", +] + +[[package]] +name = "jni-sys" +version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8eaf4bc02d17cbdd7ff4c7438cafcdf7fb9a4613313ad11b4f8fefe7d3fa0130" +checksum = "c6377a88cb3910bee9b0fa88d4f42e1d2da8e79915598f65fb0c7ee14c878af2" +dependencies = [ + "jni-sys-macros", +] + +[[package]] +name = "jni-sys-macros" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "38c0b942f458fe50cdac086d2f946512305e5631e720728f2a61aabcd47a6264" +dependencies = [ + "quote", + "syn", +] [[package]] name = "jobserver" @@ -2755,7 +2783,7 @@ checksum = "b5b646652bf6661599e1da8901b3b9522896f01e736bad5f723fe7a3a27f899d" [[package]] name = "libcosmic" version = "1.0.0" -source = "git+https://github.com/pop-os/libcosmic.git#7a5676242259c1c743387b7a23df12bd8be1e53f" +source = "git+https://github.com/pop-os/libcosmic.git#adb3e341fc35282c0cee108b73740dcb28d4efe1" dependencies = [ "apply", "ashpd 0.12.3", @@ -2818,9 +2846,9 @@ checksum = "b6d2cec3eae94f9f509c767b45932f1ada8350c4bdb85af2fcab4a3c14807981" [[package]] name = "libredox" -version = "0.1.14" +version = "0.1.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1744e39d1d6a9948f4f388969627434e31128196de472883b39f148769bfe30a" +checksum = "7ddbf48fd451246b1f8c2610bd3b4ac0cc6e149d89832867093ab69a17194f08" dependencies = [ "bitflags 2.11.0", "libc", @@ -2950,9 +2978,9 @@ dependencies = [ [[package]] name = "lyon_tessellation" -version = "1.0.19" +version = "1.0.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "05a35a7dd71b845ff317ce1834c4185506b79790294bde397df8d5c23031e357" +checksum = "8e43b7e44161571868f5c931d12583592c223c5583eef86b08aa02b7048a3552" dependencies = [ "float_next_after", "lyon_path", @@ -3095,7 +3123,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c3f42e7bbe13d351b6bead8286a43aac9534b82bd3cc43e47037f012ebfd62d4" dependencies = [ "bitflags 2.11.0", - "jni-sys", + "jni-sys 0.3.1", "log", "ndk-sys", "num_enum", @@ -3115,7 +3143,7 @@ version = "0.6.0+11769913" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ee6cda3051665f1fb8d9e08fc35c96d5a244fb1be711a03b71118828afc9a873" dependencies = [ - "jni-sys", + "jni-sys 0.3.1", ] [[package]] @@ -3159,9 +3187,9 @@ dependencies = [ [[package]] name = "num-conv" -version = "0.2.0" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cf97ec579c3c42f953ef76dbf8d55ac91fb219dde70e49aa4a6b7d74e9919050" +checksum = "c6673768db2d862beb9b39a78fdcb1a69439615d5794a1be50caa9bc92c81967" [[package]] name = "num-traits" @@ -3447,9 +3475,9 @@ dependencies = [ [[package]] name = "ordered-float" -version = "5.1.0" +version = "5.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f4779c6901a562440c3786d08192c6fbda7c1c2060edd10006b05ee35d10f2d" +checksum = "0218004a4aae742209bee9c3cef05672f6b2708be36a50add8eb613b1f2a4008" dependencies = [ "num-traits", ] @@ -4192,6 +4220,15 @@ version = "2.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "357703d41365b4b27c590e3ed91eabb1b663f07c4c084095e60cbed4362dff0d" +[[package]] +name = "rustc_version" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cfcb3a22ef46e85b45de6ee7e79d063319ebb6594faafcf1c225ea92ab6e9b92" +dependencies = [ + "semver", +] + [[package]] name = "rustix" version = "0.38.44" @@ -4385,6 +4422,22 @@ version = "0.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e320a6c5ad31d271ad523dcf3ad13e2767ad8b1cb8f047f75a8aeaf8da139da2" +[[package]] +name = "simd_cesu8" +version = "1.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "94f90157bb87cddf702797c5dadfa0be7d266cdf49e22da2fcaa32eff75b2c33" +dependencies = [ + "rustc_version", + "simdutf8", +] + +[[package]] +name = "simdutf8" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e3a9fe34e3e7a50316060351f37187a3f546bce95496156754b601a5fa71b76e" + [[package]] name = "simplecss" version = "0.2.2" @@ -4849,18 +4902,18 @@ dependencies = [ [[package]] name = "toml_datetime" -version = "1.0.1+spec-1.1.0" +version = "1.1.0+spec-1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9b320e741db58cac564e26c607d3cc1fdc4a88fd36c879568c07856ed83ff3e9" +checksum = "97251a7c317e03ad83774a8752a7e81fb6067740609f75ea2b585b569a59198f" dependencies = [ "serde_core", ] [[package]] name = "toml_edit" -version = "0.25.5+spec-1.1.0" +version = "0.25.8+spec-1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ca1a40644a28bce036923f6a431df0b34236949d111cc07cb6dca830c9ef2e1" +checksum = "16bff38f1d86c47f9ff0647e6838d7bb362522bdf44006c7068c2b1e606f1f3c" dependencies = [ "indexmap", "toml_datetime", @@ -4870,9 +4923,9 @@ dependencies = [ [[package]] name = "toml_parser" -version = "1.0.10+spec-1.1.0" +version = "1.1.0+spec-1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7df25b4befd31c4816df190124375d5a20c6b6921e2cad937316de3fccd63420" +checksum = "2334f11ee363607eb04df9b8fc8a13ca1715a72ba8662a26ac285c98aabb4011" dependencies = [ "winnow 1.0.0", ] @@ -5022,9 +5075,9 @@ checksum = "383ad40bb927465ec0ce7720e033cb4ca06912855fc35db31b5755d0de75b1ee" [[package]] name = "unicode-segmentation" -version = "1.12.0" +version = "1.13.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f6ccf251212114b54433ec949fd6a7841275f9ada20dddd2f29e9ceea4501493" +checksum = "9629274872b2bfaf8d66f5f15725007f635594914870f65218920345aa11aa8c" [[package]] name = "unicode-vo" @@ -5811,15 +5864,6 @@ dependencies = [ "windows-link 0.1.3", ] -[[package]] -name = "windows-sys" -version = "0.45.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "75283be5efb2831d37ea142365f009c02ec203cd29a3ebecbc093d52315b66d0" -dependencies = [ - "windows-targets 0.42.2", -] - [[package]] name = "windows-sys" version = "0.48.0" @@ -5865,21 +5909,6 @@ dependencies = [ "windows-link 0.2.1", ] -[[package]] -name = "windows-targets" -version = "0.42.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e5180c00cd44c9b1c88adb3693291f1cd93605ded80c250a75d472756b4d071" -dependencies = [ - "windows_aarch64_gnullvm 0.42.2", - "windows_aarch64_msvc 0.42.2", - "windows_i686_gnu 0.42.2", - "windows_i686_msvc 0.42.2", - "windows_x86_64_gnu 0.42.2", - "windows_x86_64_gnullvm 0.42.2", - "windows_x86_64_msvc 0.42.2", -] - [[package]] name = "windows-targets" version = "0.48.5" @@ -5937,12 +5966,6 @@ dependencies = [ "windows-link 0.1.3", ] -[[package]] -name = "windows_aarch64_gnullvm" -version = "0.42.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8" - [[package]] name = "windows_aarch64_gnullvm" version = "0.48.5" @@ -5961,12 +5984,6 @@ version = "0.53.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a9d8416fa8b42f5c947f8482c43e7d89e73a173cead56d044f6a56104a6d1b53" -[[package]] -name = "windows_aarch64_msvc" -version = "0.42.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e08e8864a60f06ef0d0ff4ba04124db8b0fb3be5776a5cd47641e942e58c4d43" - [[package]] name = "windows_aarch64_msvc" version = "0.48.5" @@ -5985,12 +6002,6 @@ version = "0.53.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b9d782e804c2f632e395708e99a94275910eb9100b2114651e04744e9b125006" -[[package]] -name = "windows_i686_gnu" -version = "0.42.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c61d927d8da41da96a81f029489353e68739737d3beca43145c8afec9a31a84f" - [[package]] name = "windows_i686_gnu" version = "0.48.5" @@ -6021,12 +6032,6 @@ version = "0.53.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fa7359d10048f68ab8b09fa71c3daccfb0e9b559aed648a8f95469c27057180c" -[[package]] -name = "windows_i686_msvc" -version = "0.42.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "44d840b6ec649f480a41c8d80f9c65108b92d89345dd94027bfe06ac444d1060" - [[package]] name = "windows_i686_msvc" version = "0.48.5" @@ -6045,12 +6050,6 @@ version = "0.53.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1e7ac75179f18232fe9c285163565a57ef8d3c89254a30685b57d83a38d326c2" -[[package]] -name = "windows_x86_64_gnu" -version = "0.42.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8de912b8b8feb55c064867cf047dda097f92d51efad5b491dfb98f6bbb70cb36" - [[package]] name = "windows_x86_64_gnu" version = "0.48.5" @@ -6069,12 +6068,6 @@ version = "0.53.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9c3842cdd74a865a8066ab39c8a7a473c0778a3f29370b5fd6b4b9aa7df4a499" -[[package]] -name = "windows_x86_64_gnullvm" -version = "0.42.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "26d41b46a36d453748aedef1486d5c7a85db22e56aff34643984ea85514e94a3" - [[package]] name = "windows_x86_64_gnullvm" version = "0.48.5" @@ -6093,12 +6086,6 @@ version = "0.53.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0ffa179e2d07eee8ad8f57493436566c7cc30ac536a3379fdf008f47f6bb7ae1" -[[package]] -name = "windows_x86_64_msvc" -version = "0.42.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9aec5da331524158c6d1a4ac0ab1541149c0b9505fde06423b02f5ef0106b9f0" - [[package]] name = "windows_x86_64_msvc" version = "0.48.5" @@ -6788,9 +6775,9 @@ dependencies = [ [[package]] name = "zune-jpeg" -version = "0.5.13" +version = "0.5.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec5f41c76397b7da451efd19915684f727d7e1d516384ca6bd0ec43ec94de23c" +checksum = "0b7a1c0af6e5d8d1363f4994b7a091ccf963d8b694f7da5b0b9cceb82da2c0a6" dependencies = [ "zune-core 0.5.1", ] diff --git a/Cargo.toml b/Cargo.toml index bbfb853..e887a2f 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "cosmic-utils-enroll" -version = "1.0.5" +version = "1.0.6" edition = "2024" license = "MPL-2.0" description = "GUI for fprintd fingerprint enrolling" diff --git a/org.cosmic_utils.enroll.yml b/org.cosmic_utils.enroll.yml index 81dd933..6d9f26a 100644 --- a/org.cosmic_utils.enroll.yml +++ b/org.cosmic_utils.enroll.yml @@ -1,41 +1,42 @@ app-id: org.cosmic_utils.enroll runtime: org.freedesktop.Platform -runtime-version: '25.08' +runtime-version: "25.08" sdk: org.freedesktop.Sdk base: com.system76.Cosmic.BaseApp base-version: stable command: cosmic-utils-enroll finish-args: - - --socket=wayland - - --socket=fallback-x11 - - --share=ipc - - --device=dri - - --system-talk-name=net.reactivated.Fprint - - --system-talk-name=org.freedesktop.PolicyKit1 - - --system-talk-name=org.freedesktop.Accounts - - --talk-name=com.system76.CosmicSettingsDaemon + - --socket=wayland + - --socket=fallback-x11 + - --share=ipc + - --device=dri + - --filesystem=xdg-config/cosmic:rw + - --system-talk-name=net.reactivated.Fprint + - --system-talk-name=org.freedesktop.PolicyKit1 + - --system-talk-name=org.freedesktop.Accounts + - --talk-name=com.system76.CosmicSettingsDaemon sdk-extensions: - - org.freedesktop.Sdk.Extension.rust-stable + - org.freedesktop.Sdk.Extension.rust-stable build-options: - append-path: /usr/lib/sdk/rust-stable/bin - env: - CARGO_HOME: /run/build/cosmic-utils-enroll/cargo + append-path: /usr/lib/sdk/rust-stable/bin + env: + CARGO_HOME: /run/build/cosmic-utils-enroll/cargo modules: - - name: cosmic-utils-enroll - buildsystem: simple - build-commands: - - cargo --offline fetch --manifest-path Cargo.toml - - cargo build --offline --release + - name: cosmic-utils-enroll + buildsystem: simple + build-commands: + - cargo --offline fetch --manifest-path Cargo.toml + - cargo build --offline --release - - install -Dm0755 target/release/cosmic-utils-enroll /app/bin/cosmic-utils-enroll - - install -Dm0644 resources/org.cosmic_utils.enroll.desktop /app/share/applications/org.cosmic_utils.enroll.desktop - - install -Dm0644 resources/org.cosmic_utils.enroll.metainfo.xml /app/share/appdata/org.cosmic_utils.enroll.metainfo.xml - - install -Dm0644 resources/icons/hicolor/scalable/apps/enroll.svg /app/share/icons/hicolor/scalable/apps/org.cosmic_utils.enroll.svg + - install -Dm0755 target/release/cosmic-utils-enroll /app/bin/cosmic-utils-enroll + - install -Dm0644 resources/org.cosmic_utils.enroll.desktop /app/share/applications/org.cosmic_utils.enroll.desktop + - install -Dm0644 resources/org.cosmic_utils.enroll.metainfo.xml /app/share/appdata/org.cosmic_utils.enroll.metainfo.xml + - install -Dm0644 resources/icons/hicolor/scalable/apps/enroll.svg /app/share/icons/hicolor/scalable/apps/org.cosmic_utils.enroll.svg - sources: - - type: git - url: https://github.com/cosmic-utils/enroll.git - tag: 1.0.4 - - cargo-sources.json + sources: + - type: git + url: https://github.com/cosmic-utils/enroll.git + tag: 1.0.6 + - cargo-sources.json diff --git a/resources/org.cosmic_utils.enroll.metainfo.xml b/resources/org.cosmic_utils.enroll.metainfo.xml index 731f2b8..72c0397 100644 --- a/resources/org.cosmic_utils.enroll.metainfo.xml +++ b/resources/org.cosmic_utils.enroll.metainfo.xml @@ -78,6 +78,17 @@ + + +

+ Changes: +

+
    +
  • Decreased minimum height back to original
  • +
  • Updated dependencies
  • +
+
+

From bb33304936d816e08793d4989d71715a6bdc5392 Mon Sep 17 00:00:00 2001 From: jtuomi Date: Fri, 27 Mar 2026 00:29:31 +0200 Subject: [PATCH 02/11] Initial implementation of keyboard navigation 0-9 are finger selection. r,v,c,Ctrl+d control operations --- src/app/application.rs | 38 +++++++++++++++++++++++++++++++++++ src/app/finger.rs | 32 ++++++++++++++++++++++++++++++ src/app/message.rs | 45 ++++++++++++++++++++++++++++++++---------- 3 files changed, 105 insertions(+), 10 deletions(-) diff --git a/src/app/application.rs b/src/app/application.rs index 52ae00a..66d0b82 100644 --- a/src/app/application.rs +++ b/src/app/application.rs @@ -225,6 +225,8 @@ impl cosmic::Application for AppModel { subscriptions.push(portal_theme_subscription(self.config.app_theme)); + subscriptions.push(key_subscription()); + Subscription::batch(subscriptions) } @@ -256,6 +258,7 @@ impl cosmic::Application for AppModel { Message::VerifyStatus(status, done) => self.on_verify_status(status, done), Message::ThemeChanged(is_dark) => self.on_portal_color_scheme_changed(is_dark), Message::ThemeSetting(theme) => self.on_theme_setting(theme), + Message::SelectFingerByNumber(key) => self.on_select_finger_by_number(key), } } @@ -278,6 +281,41 @@ impl cosmic::Application for AppModel { } } +fn key_subscription() -> Subscription { + cosmic::iced::event::listen_raw(|event, _status, _window| { + use cosmic::iced::{Event, keyboard}; + + let Event::Keyboard(keyboard::Event::KeyPressed { key, modifiers, .. }) = event else { + return None; + }; + + use cosmic::iced::keyboard::Key; + + match key { + Key::Character(c) if modifiers.control() && c == "d" => Some(Message::Delete), + Key::Character(c) if !modifiers.control() && !modifiers.logo() && !modifiers.alt() => { + match c.as_str() { + "r" => Some(Message::Register), + "v" => Some(Message::VerifyFinger), + "c" => Some(Message::EnrollStop), + "1" => Some(Message::SelectFingerByNumber(1)), + "2" => Some(Message::SelectFingerByNumber(2)), + "3" => Some(Message::SelectFingerByNumber(3)), + "4" => Some(Message::SelectFingerByNumber(4)), + "5" => Some(Message::SelectFingerByNumber(5)), + "6" => Some(Message::SelectFingerByNumber(6)), + "7" => Some(Message::SelectFingerByNumber(7)), + "8" => Some(Message::SelectFingerByNumber(8)), + "9" => Some(Message::SelectFingerByNumber(9)), + "0" => Some(Message::SelectFingerByNumber(0)), + _ => None, + } + } + _ => None, + } + }) +} + // TODO: about & settings could be in view. others in tasks. impl AppModel { /// The about page for this app. diff --git a/src/app/finger.rs b/src/app/finger.rs index 1e9196d..242cb00 100644 --- a/src/app/finger.rs +++ b/src/app/finger.rs @@ -54,6 +54,23 @@ impl Finger { } } + /// Maps keys 1-0 to fingers (1=RightThumb, 0=LeftPinky). + pub fn from_key(key: u8) -> Option { + match key { + 1 => Some(Finger::RightThumb), + 2 => Some(Finger::RightIndex), + 3 => Some(Finger::RightMiddle), + 4 => Some(Finger::RightRing), + 5 => Some(Finger::RightPinky), + 6 => Some(Finger::LeftThumb), + 7 => Some(Finger::LeftIndex), + 8 => Some(Finger::LeftMiddle), + 9 => Some(Finger::LeftRing), + 0 => Some(Finger::LeftPinky), + _ => None, + } + } + pub fn as_finger_id(&self) -> Option<&'static str> { match self { Finger::RightThumb => Some("right-thumb"), @@ -109,6 +126,21 @@ mod tests { assert!(!Finger::DeleteAllUsersPrints.localized_name().is_empty()); } + #[test] + fn test_finger_from_key() { + assert_eq!(Finger::from_key(1), Some(Finger::RightThumb)); + assert_eq!(Finger::from_key(2), Some(Finger::RightIndex)); + assert_eq!(Finger::from_key(3), Some(Finger::RightMiddle)); + assert_eq!(Finger::from_key(4), Some(Finger::RightRing)); + assert_eq!(Finger::from_key(5), Some(Finger::RightPinky)); + assert_eq!(Finger::from_key(6), Some(Finger::LeftThumb)); + assert_eq!(Finger::from_key(7), Some(Finger::LeftIndex)); + assert_eq!(Finger::from_key(8), Some(Finger::LeftMiddle)); + assert_eq!(Finger::from_key(9), Some(Finger::LeftRing)); + assert_eq!(Finger::from_key(0), Some(Finger::LeftPinky)); + assert_eq!(Finger::from_key(10), None); + } + #[test] fn test_page_as_finger_id() { assert_eq!(Finger::RightThumb.as_finger_id(), Some("right-thumb")); diff --git a/src/app/message.rs b/src/app/message.rs index 8c7a16f..f3dc229 100644 --- a/src/app/message.rs +++ b/src/app/message.rs @@ -40,6 +40,8 @@ pub enum Message { VerifyStatus(String, bool), ThemeChanged(bool), ThemeSetting(AppTheme), + + SelectFingerByNumber(u8), } // Section for handling of Messages @@ -188,9 +190,15 @@ impl AppModel { /// /// **Returns** ***Task***() pub(crate) fn on_verify_finger(&mut self) -> Task> { - self.busy = true; - self.verifying_finger = true; - self.status = fl!("status-starting-verification"); + if self + .selected_finger + .as_finger_id() + .is_some_and(|id| self.enrolled_fingers.iter().any(|ef| ef == id)) + { + self.busy = true; + self.verifying_finger = true; + self.status = fl!("status-starting-verification"); + } Task::none() } @@ -281,6 +289,9 @@ impl AppModel { /// /// **Returns** either ***Task***() or ***task_enroll_stop***() pub(crate) fn on_enroll_stop(&self) -> Task> { + if self.enrolling_finger.is_none() { + return Task::none(); + } if let (Some(path), Some(conn)) = (self.device_path.clone(), self.connection.clone()) { let path = (*path).clone(); return task_enroll_stop(path, conn); @@ -366,11 +377,13 @@ impl AppModel { /// /// **Returns** ***Task***() pub(crate) fn on_register(&mut self) -> Task> { - self.busy = true; - if let Some(finger_id) = self.selected_finger.as_finger_id() { - self.enrolling_finger = Some(Arc::new(finger_id.to_string())); + if !self.busy && self.device_path.is_some() && self.enrolling_finger.is_none() { + self.busy = true; + if let Some(finger_id) = self.selected_finger.as_finger_id() { + self.enrolling_finger = Some(Arc::new(finger_id.to_string())); + } + self.status = fl!("status-starting-enrollment"); } - self.status = fl!("status-starting-enrollment"); Task::none() } @@ -381,9 +394,10 @@ impl AppModel { self.config = config.clone(); if let Some(handler) = &self.config_handler - && let Err(err) = config.write_entry(handler) { - tracing::error!("failed to write config: {}", err); - } + && let Err(err) = config.write_entry(handler) + { + tracing::error!("failed to write config: {}", err); + } Task::none() } @@ -421,4 +435,15 @@ impl AppModel { tasks.push(task); Task::batch(tasks) } + + /// Selects a finger by numeric key (1-0). + /// + /// **Returns** ***Task***() + pub(crate) fn on_select_finger_by_number(&mut self, key: u8) -> Task> { + if let Some(finger) = Finger::from_key(key) { + self.confirm_clear = false; + self.selected_finger = finger; + } + Task::none() + } } From 249e55bd530b45fd7f6c44988ae5eb5d3c27cdb0 Mon Sep 17 00:00:00 2001 From: jtuomi Date: Fri, 27 Mar 2026 00:47:50 +0200 Subject: [PATCH 03/11] Moved key_subcription to subscription.rs --- src/app/application.rs | 37 +------------------------------ src/app/subscription.rs | 48 ++++++++++++++++++++++++++++++++++++----- 2 files changed, 44 insertions(+), 41 deletions(-) diff --git a/src/app/application.rs b/src/app/application.rs index 66d0b82..6eaf8ff 100644 --- a/src/app/application.rs +++ b/src/app/application.rs @@ -281,42 +281,7 @@ impl cosmic::Application for AppModel { } } -fn key_subscription() -> Subscription { - cosmic::iced::event::listen_raw(|event, _status, _window| { - use cosmic::iced::{Event, keyboard}; - - let Event::Keyboard(keyboard::Event::KeyPressed { key, modifiers, .. }) = event else { - return None; - }; - - use cosmic::iced::keyboard::Key; - - match key { - Key::Character(c) if modifiers.control() && c == "d" => Some(Message::Delete), - Key::Character(c) if !modifiers.control() && !modifiers.logo() && !modifiers.alt() => { - match c.as_str() { - "r" => Some(Message::Register), - "v" => Some(Message::VerifyFinger), - "c" => Some(Message::EnrollStop), - "1" => Some(Message::SelectFingerByNumber(1)), - "2" => Some(Message::SelectFingerByNumber(2)), - "3" => Some(Message::SelectFingerByNumber(3)), - "4" => Some(Message::SelectFingerByNumber(4)), - "5" => Some(Message::SelectFingerByNumber(5)), - "6" => Some(Message::SelectFingerByNumber(6)), - "7" => Some(Message::SelectFingerByNumber(7)), - "8" => Some(Message::SelectFingerByNumber(8)), - "9" => Some(Message::SelectFingerByNumber(9)), - "0" => Some(Message::SelectFingerByNumber(0)), - _ => None, - } - } - _ => None, - } - }) -} - -// TODO: about & settings could be in view. others in tasks. +// TODO: about could be in view. others in tasks. impl AppModel { /// The about page for this app. pub fn about(&self) -> Element<'_, Message> { diff --git a/src/app/subscription.rs b/src/app/subscription.rs index c4fa75d..3444d83 100644 --- a/src/app/subscription.rs +++ b/src/app/subscription.rs @@ -4,7 +4,9 @@ use crate::app::{ fprint::{enroll_fingerprint_process, verify_finger_process}, }; use ashpd::desktop::settings::{ColorScheme, Settings}; -use cosmic::iced::{Subscription, futures::channel::mpsc::Sender, stream::channel}; +use cosmic::iced::{ + Event, Subscription, futures::channel::mpsc::Sender, keyboard, stream::channel, +}; use futures_util::{SinkExt, StreamExt}; #[derive(Clone)] @@ -69,7 +71,7 @@ impl std::hash::Hash for EnrollData { } } -/// ***Returns*** a subscription to an ongoing enroll process +/// **Returns** a subscription to an ongoing enroll process pub(crate) fn enroll_subscription(data: EnrollData) -> Subscription { Subscription::run_with(data, |data| { let data = data.clone(); @@ -96,7 +98,7 @@ pub(crate) fn enroll_subscription(data: EnrollData) -> Subscription { }) } -/// ***Returns*** a subscription to an ongoing verify process +/// **Returns** a subscription to an ongoing verify process pub(crate) fn verify_subscription(data: VerifyData) -> Subscription { Subscription::run_with(data, |data| { let data = data.clone(); @@ -119,8 +121,10 @@ pub(crate) fn verify_subscription(data: VerifyData) -> Subscription { }) } -// On non-COSMIC desktops, subscribe to XDG portal color-scheme changes -// so theme updates when user changes their desktop appearance +/// On non-COSMIC desktops, subscribe to XDG portal color-scheme changes +/// so theme updates when user changes their desktop appearance +/// +/// **Returns** subscription to ColorScheme changes or None pub fn portal_theme_subscription(app_theme: crate::config::AppTheme) -> Subscription { if !crate::config::is_cosmic_desktop() && app_theme == crate::config::AppTheme::System { Subscription::run_with(app_theme, |_| { @@ -158,3 +162,37 @@ pub fn portal_theme_subscription(app_theme: crate::config::AppTheme) -> Subscrip Subscription::none() } } + +/// **Returns** a subscription to key events 0-9, r, v, c and Ctrl + d +pub fn key_subscription() -> Subscription { + cosmic::iced::event::listen_raw(|event, _status, _window| { + let Event::Keyboard(keyboard::Event::KeyPressed { key, modifiers, .. }) = event else { + return None; + }; + + use cosmic::iced::keyboard::Key; + + match key { + Key::Character(c) if modifiers.control() && c == "d" => Some(Message::Delete), + Key::Character(c) if !modifiers.control() && !modifiers.logo() && !modifiers.alt() => { + match c.as_str() { + "r" => Some(Message::Register), + "v" => Some(Message::VerifyFinger), + "c" => Some(Message::EnrollStop), + "1" => Some(Message::SelectFingerByNumber(1)), + "2" => Some(Message::SelectFingerByNumber(2)), + "3" => Some(Message::SelectFingerByNumber(3)), + "4" => Some(Message::SelectFingerByNumber(4)), + "5" => Some(Message::SelectFingerByNumber(5)), + "6" => Some(Message::SelectFingerByNumber(6)), + "7" => Some(Message::SelectFingerByNumber(7)), + "8" => Some(Message::SelectFingerByNumber(8)), + "9" => Some(Message::SelectFingerByNumber(9)), + "0" => Some(Message::SelectFingerByNumber(0)), + _ => None, + } + } + _ => None, + } + }) +} From 3eadcb4d590ea8734f9a7cb388585d326c75bafa Mon Sep 17 00:00:00 2001 From: jtuomi Date: Fri, 27 Mar 2026 09:20:13 +0200 Subject: [PATCH 04/11] Changed from_key to match order from screen --- src/app/finger.rs | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/src/app/finger.rs b/src/app/finger.rs index 242cb00..7abf0c0 100644 --- a/src/app/finger.rs +++ b/src/app/finger.rs @@ -57,16 +57,16 @@ impl Finger { /// Maps keys 1-0 to fingers (1=RightThumb, 0=LeftPinky). pub fn from_key(key: u8) -> Option { match key { - 1 => Some(Finger::RightThumb), - 2 => Some(Finger::RightIndex), - 3 => Some(Finger::RightMiddle), - 4 => Some(Finger::RightRing), - 5 => Some(Finger::RightPinky), - 6 => Some(Finger::LeftThumb), - 7 => Some(Finger::LeftIndex), - 8 => Some(Finger::LeftMiddle), - 9 => Some(Finger::LeftRing), - 0 => Some(Finger::LeftPinky), + 1 => Some(Finger::LeftPinky), + 2 => Some(Finger::LeftRing), + 3 => Some(Finger::LeftMiddle), + 4 => Some(Finger::LeftIndex), + 5 => Some(Finger::LeftThumb), + 6 => Some(Finger::RightThumb), + 7 => Some(Finger::RightIndex), + 8 => Some(Finger::RightMiddle), + 9 => Some(Finger::RightRing), + 0 => Some(Finger::RightPinky), _ => None, } } From c08480eddc5727a14f00477228f1a86db4e12b79 Mon Sep 17 00:00:00 2001 From: jtuomi Date: Fri, 27 Mar 2026 09:21:45 +0200 Subject: [PATCH 05/11] Unit test --- src/app/finger.rs | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/src/app/finger.rs b/src/app/finger.rs index 7abf0c0..74d310e 100644 --- a/src/app/finger.rs +++ b/src/app/finger.rs @@ -128,16 +128,16 @@ mod tests { #[test] fn test_finger_from_key() { - assert_eq!(Finger::from_key(1), Some(Finger::RightThumb)); - assert_eq!(Finger::from_key(2), Some(Finger::RightIndex)); - assert_eq!(Finger::from_key(3), Some(Finger::RightMiddle)); - assert_eq!(Finger::from_key(4), Some(Finger::RightRing)); - assert_eq!(Finger::from_key(5), Some(Finger::RightPinky)); - assert_eq!(Finger::from_key(6), Some(Finger::LeftThumb)); - assert_eq!(Finger::from_key(7), Some(Finger::LeftIndex)); - assert_eq!(Finger::from_key(8), Some(Finger::LeftMiddle)); - assert_eq!(Finger::from_key(9), Some(Finger::LeftRing)); - assert_eq!(Finger::from_key(0), Some(Finger::LeftPinky)); + assert_eq!(Finger::from_key(6), Some(Finger::RightThumb)); + assert_eq!(Finger::from_key(7), Some(Finger::RightIndex)); + assert_eq!(Finger::from_key(8), Some(Finger::RightMiddle)); + assert_eq!(Finger::from_key(9), Some(Finger::RightRing)); + assert_eq!(Finger::from_key(0), Some(Finger::RightPinky)); + assert_eq!(Finger::from_key(1), Some(Finger::LeftThumb)); + assert_eq!(Finger::from_key(2), Some(Finger::LeftIndex)); + assert_eq!(Finger::from_key(3), Some(Finger::LeftMiddle)); + assert_eq!(Finger::from_key(4), Some(Finger::LeftRing)); + assert_eq!(Finger::from_key(5), Some(Finger::LeftPinky)); assert_eq!(Finger::from_key(10), None); } From 402e7d0cab4d0827850ea7797b2029d61b0ec51a Mon Sep 17 00:00:00 2001 From: jtuomi Date: Thu, 26 Mar 2026 20:46:22 +0200 Subject: [PATCH 06/11] Version up to 1.0.6 and cargo update --- Cargo.lock | 245 +++++++++--------- Cargo.toml | 2 +- org.cosmic_utils.enroll.yml | 55 ++-- .../org.cosmic_utils.enroll.metainfo.xml | 11 + 4 files changed, 156 insertions(+), 157 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 1604768..10df8bb 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -143,23 +143,21 @@ checksum = "3aa2999eb46af81abb65c2d30d446778d7e613b60bbf4e174a027e80f90a3c14" [[package]] name = "android-activity" -version = "0.6.0" +version = "0.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ef6978589202a00cd7e118380c448a08b6ed394c3a8df3a430d0898e3a42d046" +checksum = "0f2a1bb052857d5dd49572219344a7332b31b76405648eabac5bc68978251bcd" dependencies = [ "android-properties", "bitflags 2.11.0", "cc", - "cesu8", "jni", - "jni-sys", "libc", "log", "ndk", "ndk-context", "ndk-sys", "num_enum", - "thiserror 1.0.69", + "thiserror 2.0.18", ] [[package]] @@ -200,9 +198,9 @@ dependencies = [ [[package]] name = "arc-swap" -version = "1.8.2" +version = "1.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f9f3647c145568cec02c42054e07bdf9a5a698e15b466fb2341bfc393cd24aa5" +checksum = "a07d1f37ff60921c83bdfc7407723bdefe89b44b98a9b772f225c8f9d67141a6" dependencies = [ "rustversion", ] @@ -274,9 +272,9 @@ dependencies = [ [[package]] name = "ashpd" -version = "0.13.8" +version = "0.13.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "51b9019bd7f3beac5fbef5b756f5ef67777ab068035ec15683c1e635ad476f54" +checksum = "13bdf0fd848239dcd5e64eeeee35dbc00378ebcc6f3aa4ead0a305eec83d0cfb" dependencies = [ "enumflags2", "futures-util", @@ -690,12 +688,6 @@ dependencies = [ "shlex", ] -[[package]] -name = "cesu8" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6d43a04d8753f35258c91f8ec639f792891f748a1edbd759cf1dcea3382ad83c" - [[package]] name = "cfg-if" version = "1.0.4" @@ -904,7 +896,7 @@ dependencies = [ [[package]] name = "cosmic-config" version = "1.0.0" -source = "git+https://github.com/pop-os/libcosmic.git#7a5676242259c1c743387b7a23df12bd8be1e53f" +source = "git+https://github.com/pop-os/libcosmic.git#adb3e341fc35282c0cee108b73740dcb28d4efe1" dependencies = [ "atomicwrites", "cosmic-config-derive", @@ -925,7 +917,7 @@ dependencies = [ [[package]] name = "cosmic-config-derive" version = "1.0.0" -source = "git+https://github.com/pop-os/libcosmic.git#7a5676242259c1c743387b7a23df12bd8be1e53f" +source = "git+https://github.com/pop-os/libcosmic.git#adb3e341fc35282c0cee108b73740dcb28d4efe1" dependencies = [ "quote", "syn", @@ -993,7 +985,7 @@ dependencies = [ [[package]] name = "cosmic-theme" version = "1.0.0" -source = "git+https://github.com/pop-os/libcosmic.git#7a5676242259c1c743387b7a23df12bd8be1e53f" +source = "git+https://github.com/pop-os/libcosmic.git#adb3e341fc35282c0cee108b73740dcb28d4efe1" dependencies = [ "almost", "configparser", @@ -1009,9 +1001,9 @@ dependencies = [ [[package]] name = "cosmic-utils-enroll" -version = "1.0.5" +version = "1.0.6" dependencies = [ - "ashpd 0.13.8", + "ashpd 0.13.9", "futures-util", "i18n-embed 0.15.4", "i18n-embed-fl 0.9.4", @@ -2110,7 +2102,7 @@ dependencies = [ [[package]] name = "iced" version = "0.14.0" -source = "git+https://github.com/pop-os/libcosmic.git#7a5676242259c1c743387b7a23df12bd8be1e53f" +source = "git+https://github.com/pop-os/libcosmic.git#adb3e341fc35282c0cee108b73740dcb28d4efe1" dependencies = [ "dnd", "iced_accessibility", @@ -2131,7 +2123,7 @@ dependencies = [ [[package]] name = "iced_accessibility" version = "0.1.0" -source = "git+https://github.com/pop-os/libcosmic.git#7a5676242259c1c743387b7a23df12bd8be1e53f" +source = "git+https://github.com/pop-os/libcosmic.git#adb3e341fc35282c0cee108b73740dcb28d4efe1" dependencies = [ "accesskit", "accesskit_winit", @@ -2140,7 +2132,7 @@ dependencies = [ [[package]] name = "iced_core" version = "0.14.0" -source = "git+https://github.com/pop-os/libcosmic.git#7a5676242259c1c743387b7a23df12bd8be1e53f" +source = "git+https://github.com/pop-os/libcosmic.git#adb3e341fc35282c0cee108b73740dcb28d4efe1" dependencies = [ "bitflags 2.11.0", "bytes", @@ -2165,7 +2157,7 @@ dependencies = [ [[package]] name = "iced_debug" version = "0.14.0" -source = "git+https://github.com/pop-os/libcosmic.git#7a5676242259c1c743387b7a23df12bd8be1e53f" +source = "git+https://github.com/pop-os/libcosmic.git#adb3e341fc35282c0cee108b73740dcb28d4efe1" dependencies = [ "iced_core", "iced_futures", @@ -2175,7 +2167,7 @@ dependencies = [ [[package]] name = "iced_futures" version = "0.14.0" -source = "git+https://github.com/pop-os/libcosmic.git#7a5676242259c1c743387b7a23df12bd8be1e53f" +source = "git+https://github.com/pop-os/libcosmic.git#adb3e341fc35282c0cee108b73740dcb28d4efe1" dependencies = [ "futures", "iced_core", @@ -2189,7 +2181,7 @@ dependencies = [ [[package]] name = "iced_graphics" version = "0.14.0" -source = "git+https://github.com/pop-os/libcosmic.git#7a5676242259c1c743387b7a23df12bd8be1e53f" +source = "git+https://github.com/pop-os/libcosmic.git#adb3e341fc35282c0cee108b73740dcb28d4efe1" dependencies = [ "bitflags 2.11.0", "bytemuck", @@ -2210,7 +2202,7 @@ dependencies = [ [[package]] name = "iced_program" version = "0.14.0" -source = "git+https://github.com/pop-os/libcosmic.git#7a5676242259c1c743387b7a23df12bd8be1e53f" +source = "git+https://github.com/pop-os/libcosmic.git#adb3e341fc35282c0cee108b73740dcb28d4efe1" dependencies = [ "iced_graphics", "iced_runtime", @@ -2219,7 +2211,7 @@ dependencies = [ [[package]] name = "iced_renderer" version = "0.14.0" -source = "git+https://github.com/pop-os/libcosmic.git#7a5676242259c1c743387b7a23df12bd8be1e53f" +source = "git+https://github.com/pop-os/libcosmic.git#adb3e341fc35282c0cee108b73740dcb28d4efe1" dependencies = [ "iced_graphics", "iced_tiny_skia", @@ -2231,7 +2223,7 @@ dependencies = [ [[package]] name = "iced_runtime" version = "0.14.0" -source = "git+https://github.com/pop-os/libcosmic.git#7a5676242259c1c743387b7a23df12bd8be1e53f" +source = "git+https://github.com/pop-os/libcosmic.git#adb3e341fc35282c0cee108b73740dcb28d4efe1" dependencies = [ "bytes", "cosmic-client-toolkit", @@ -2247,7 +2239,7 @@ dependencies = [ [[package]] name = "iced_tiny_skia" version = "0.14.0" -source = "git+https://github.com/pop-os/libcosmic.git#7a5676242259c1c743387b7a23df12bd8be1e53f" +source = "git+https://github.com/pop-os/libcosmic.git#adb3e341fc35282c0cee108b73740dcb28d4efe1" dependencies = [ "bytemuck", "cosmic-text", @@ -2264,7 +2256,7 @@ dependencies = [ [[package]] name = "iced_wgpu" version = "0.14.0" -source = "git+https://github.com/pop-os/libcosmic.git#7a5676242259c1c743387b7a23df12bd8be1e53f" +source = "git+https://github.com/pop-os/libcosmic.git#adb3e341fc35282c0cee108b73740dcb28d4efe1" dependencies = [ "as-raw-xcb-connection", "bitflags 2.11.0", @@ -2295,7 +2287,7 @@ dependencies = [ [[package]] name = "iced_widget" version = "0.14.2" -source = "git+https://github.com/pop-os/libcosmic.git#7a5676242259c1c743387b7a23df12bd8be1e53f" +source = "git+https://github.com/pop-os/libcosmic.git#adb3e341fc35282c0cee108b73740dcb28d4efe1" dependencies = [ "cosmic-client-toolkit", "dnd", @@ -2314,7 +2306,7 @@ dependencies = [ [[package]] name = "iced_winit" version = "0.14.0" -source = "git+https://github.com/pop-os/libcosmic.git#7a5676242259c1c743387b7a23df12bd8be1e53f" +source = "git+https://github.com/pop-os/libcosmic.git#adb3e341fc35282c0cee108b73740dcb28d4efe1" dependencies = [ "cosmic-client-toolkit", "cursor-icon", @@ -2470,7 +2462,7 @@ dependencies = [ "num-traits", "png 0.18.1", "zune-core 0.5.1", - "zune-jpeg 0.5.13", + "zune-jpeg 0.5.14", ] [[package]] @@ -2608,25 +2600,61 @@ dependencies = [ [[package]] name = "jni" -version = "0.21.1" +version = "0.22.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a87aa2bb7d2af34197c04845522473242e1aa17c12f4935d5856491a7fb8c97" +checksum = "5efd9a482cf3a427f00d6b35f14332adc7902ce91efb778580e180ff90fa3498" dependencies = [ - "cesu8", "cfg-if", "combine", - "jni-sys", + "jni-macros", + "jni-sys 0.4.1", "log", - "thiserror 1.0.69", + "simd_cesu8", + "thiserror 2.0.18", "walkdir", - "windows-sys 0.45.0", + "windows-link 0.2.1", +] + +[[package]] +name = "jni-macros" +version = "0.22.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a00109accc170f0bdb141fed3e393c565b6f5e072365c3bd58f5b062591560a3" +dependencies = [ + "proc-macro2", + "quote", + "rustc_version", + "simd_cesu8", + "syn", ] [[package]] name = "jni-sys" -version = "0.3.0" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "41a652e1f9b6e0275df1f15b32661cf0d4b78d4d87ddec5e0c3c20f097433258" +dependencies = [ + "jni-sys 0.4.1", +] + +[[package]] +name = "jni-sys" +version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8eaf4bc02d17cbdd7ff4c7438cafcdf7fb9a4613313ad11b4f8fefe7d3fa0130" +checksum = "c6377a88cb3910bee9b0fa88d4f42e1d2da8e79915598f65fb0c7ee14c878af2" +dependencies = [ + "jni-sys-macros", +] + +[[package]] +name = "jni-sys-macros" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "38c0b942f458fe50cdac086d2f946512305e5631e720728f2a61aabcd47a6264" +dependencies = [ + "quote", + "syn", +] [[package]] name = "jobserver" @@ -2755,7 +2783,7 @@ checksum = "b5b646652bf6661599e1da8901b3b9522896f01e736bad5f723fe7a3a27f899d" [[package]] name = "libcosmic" version = "1.0.0" -source = "git+https://github.com/pop-os/libcosmic.git#7a5676242259c1c743387b7a23df12bd8be1e53f" +source = "git+https://github.com/pop-os/libcosmic.git#adb3e341fc35282c0cee108b73740dcb28d4efe1" dependencies = [ "apply", "ashpd 0.12.3", @@ -2818,9 +2846,9 @@ checksum = "b6d2cec3eae94f9f509c767b45932f1ada8350c4bdb85af2fcab4a3c14807981" [[package]] name = "libredox" -version = "0.1.14" +version = "0.1.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1744e39d1d6a9948f4f388969627434e31128196de472883b39f148769bfe30a" +checksum = "7ddbf48fd451246b1f8c2610bd3b4ac0cc6e149d89832867093ab69a17194f08" dependencies = [ "bitflags 2.11.0", "libc", @@ -2950,9 +2978,9 @@ dependencies = [ [[package]] name = "lyon_tessellation" -version = "1.0.19" +version = "1.0.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "05a35a7dd71b845ff317ce1834c4185506b79790294bde397df8d5c23031e357" +checksum = "8e43b7e44161571868f5c931d12583592c223c5583eef86b08aa02b7048a3552" dependencies = [ "float_next_after", "lyon_path", @@ -3095,7 +3123,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c3f42e7bbe13d351b6bead8286a43aac9534b82bd3cc43e47037f012ebfd62d4" dependencies = [ "bitflags 2.11.0", - "jni-sys", + "jni-sys 0.3.1", "log", "ndk-sys", "num_enum", @@ -3115,7 +3143,7 @@ version = "0.6.0+11769913" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ee6cda3051665f1fb8d9e08fc35c96d5a244fb1be711a03b71118828afc9a873" dependencies = [ - "jni-sys", + "jni-sys 0.3.1", ] [[package]] @@ -3159,9 +3187,9 @@ dependencies = [ [[package]] name = "num-conv" -version = "0.2.0" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cf97ec579c3c42f953ef76dbf8d55ac91fb219dde70e49aa4a6b7d74e9919050" +checksum = "c6673768db2d862beb9b39a78fdcb1a69439615d5794a1be50caa9bc92c81967" [[package]] name = "num-traits" @@ -3447,9 +3475,9 @@ dependencies = [ [[package]] name = "ordered-float" -version = "5.1.0" +version = "5.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f4779c6901a562440c3786d08192c6fbda7c1c2060edd10006b05ee35d10f2d" +checksum = "0218004a4aae742209bee9c3cef05672f6b2708be36a50add8eb613b1f2a4008" dependencies = [ "num-traits", ] @@ -4192,6 +4220,15 @@ version = "2.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "357703d41365b4b27c590e3ed91eabb1b663f07c4c084095e60cbed4362dff0d" +[[package]] +name = "rustc_version" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cfcb3a22ef46e85b45de6ee7e79d063319ebb6594faafcf1c225ea92ab6e9b92" +dependencies = [ + "semver", +] + [[package]] name = "rustix" version = "0.38.44" @@ -4385,6 +4422,22 @@ version = "0.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e320a6c5ad31d271ad523dcf3ad13e2767ad8b1cb8f047f75a8aeaf8da139da2" +[[package]] +name = "simd_cesu8" +version = "1.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "94f90157bb87cddf702797c5dadfa0be7d266cdf49e22da2fcaa32eff75b2c33" +dependencies = [ + "rustc_version", + "simdutf8", +] + +[[package]] +name = "simdutf8" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e3a9fe34e3e7a50316060351f37187a3f546bce95496156754b601a5fa71b76e" + [[package]] name = "simplecss" version = "0.2.2" @@ -4849,18 +4902,18 @@ dependencies = [ [[package]] name = "toml_datetime" -version = "1.0.1+spec-1.1.0" +version = "1.1.0+spec-1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9b320e741db58cac564e26c607d3cc1fdc4a88fd36c879568c07856ed83ff3e9" +checksum = "97251a7c317e03ad83774a8752a7e81fb6067740609f75ea2b585b569a59198f" dependencies = [ "serde_core", ] [[package]] name = "toml_edit" -version = "0.25.5+spec-1.1.0" +version = "0.25.8+spec-1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ca1a40644a28bce036923f6a431df0b34236949d111cc07cb6dca830c9ef2e1" +checksum = "16bff38f1d86c47f9ff0647e6838d7bb362522bdf44006c7068c2b1e606f1f3c" dependencies = [ "indexmap", "toml_datetime", @@ -4870,9 +4923,9 @@ dependencies = [ [[package]] name = "toml_parser" -version = "1.0.10+spec-1.1.0" +version = "1.1.0+spec-1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7df25b4befd31c4816df190124375d5a20c6b6921e2cad937316de3fccd63420" +checksum = "2334f11ee363607eb04df9b8fc8a13ca1715a72ba8662a26ac285c98aabb4011" dependencies = [ "winnow 1.0.0", ] @@ -5022,9 +5075,9 @@ checksum = "383ad40bb927465ec0ce7720e033cb4ca06912855fc35db31b5755d0de75b1ee" [[package]] name = "unicode-segmentation" -version = "1.12.0" +version = "1.13.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f6ccf251212114b54433ec949fd6a7841275f9ada20dddd2f29e9ceea4501493" +checksum = "9629274872b2bfaf8d66f5f15725007f635594914870f65218920345aa11aa8c" [[package]] name = "unicode-vo" @@ -5811,15 +5864,6 @@ dependencies = [ "windows-link 0.1.3", ] -[[package]] -name = "windows-sys" -version = "0.45.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "75283be5efb2831d37ea142365f009c02ec203cd29a3ebecbc093d52315b66d0" -dependencies = [ - "windows-targets 0.42.2", -] - [[package]] name = "windows-sys" version = "0.48.0" @@ -5865,21 +5909,6 @@ dependencies = [ "windows-link 0.2.1", ] -[[package]] -name = "windows-targets" -version = "0.42.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e5180c00cd44c9b1c88adb3693291f1cd93605ded80c250a75d472756b4d071" -dependencies = [ - "windows_aarch64_gnullvm 0.42.2", - "windows_aarch64_msvc 0.42.2", - "windows_i686_gnu 0.42.2", - "windows_i686_msvc 0.42.2", - "windows_x86_64_gnu 0.42.2", - "windows_x86_64_gnullvm 0.42.2", - "windows_x86_64_msvc 0.42.2", -] - [[package]] name = "windows-targets" version = "0.48.5" @@ -5937,12 +5966,6 @@ dependencies = [ "windows-link 0.1.3", ] -[[package]] -name = "windows_aarch64_gnullvm" -version = "0.42.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8" - [[package]] name = "windows_aarch64_gnullvm" version = "0.48.5" @@ -5961,12 +5984,6 @@ version = "0.53.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a9d8416fa8b42f5c947f8482c43e7d89e73a173cead56d044f6a56104a6d1b53" -[[package]] -name = "windows_aarch64_msvc" -version = "0.42.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e08e8864a60f06ef0d0ff4ba04124db8b0fb3be5776a5cd47641e942e58c4d43" - [[package]] name = "windows_aarch64_msvc" version = "0.48.5" @@ -5985,12 +6002,6 @@ version = "0.53.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b9d782e804c2f632e395708e99a94275910eb9100b2114651e04744e9b125006" -[[package]] -name = "windows_i686_gnu" -version = "0.42.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c61d927d8da41da96a81f029489353e68739737d3beca43145c8afec9a31a84f" - [[package]] name = "windows_i686_gnu" version = "0.48.5" @@ -6021,12 +6032,6 @@ version = "0.53.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fa7359d10048f68ab8b09fa71c3daccfb0e9b559aed648a8f95469c27057180c" -[[package]] -name = "windows_i686_msvc" -version = "0.42.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "44d840b6ec649f480a41c8d80f9c65108b92d89345dd94027bfe06ac444d1060" - [[package]] name = "windows_i686_msvc" version = "0.48.5" @@ -6045,12 +6050,6 @@ version = "0.53.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1e7ac75179f18232fe9c285163565a57ef8d3c89254a30685b57d83a38d326c2" -[[package]] -name = "windows_x86_64_gnu" -version = "0.42.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8de912b8b8feb55c064867cf047dda097f92d51efad5b491dfb98f6bbb70cb36" - [[package]] name = "windows_x86_64_gnu" version = "0.48.5" @@ -6069,12 +6068,6 @@ version = "0.53.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9c3842cdd74a865a8066ab39c8a7a473c0778a3f29370b5fd6b4b9aa7df4a499" -[[package]] -name = "windows_x86_64_gnullvm" -version = "0.42.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "26d41b46a36d453748aedef1486d5c7a85db22e56aff34643984ea85514e94a3" - [[package]] name = "windows_x86_64_gnullvm" version = "0.48.5" @@ -6093,12 +6086,6 @@ version = "0.53.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0ffa179e2d07eee8ad8f57493436566c7cc30ac536a3379fdf008f47f6bb7ae1" -[[package]] -name = "windows_x86_64_msvc" -version = "0.42.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9aec5da331524158c6d1a4ac0ab1541149c0b9505fde06423b02f5ef0106b9f0" - [[package]] name = "windows_x86_64_msvc" version = "0.48.5" @@ -6788,9 +6775,9 @@ dependencies = [ [[package]] name = "zune-jpeg" -version = "0.5.13" +version = "0.5.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec5f41c76397b7da451efd19915684f727d7e1d516384ca6bd0ec43ec94de23c" +checksum = "0b7a1c0af6e5d8d1363f4994b7a091ccf963d8b694f7da5b0b9cceb82da2c0a6" dependencies = [ "zune-core 0.5.1", ] diff --git a/Cargo.toml b/Cargo.toml index bbfb853..e887a2f 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "cosmic-utils-enroll" -version = "1.0.5" +version = "1.0.6" edition = "2024" license = "MPL-2.0" description = "GUI for fprintd fingerprint enrolling" diff --git a/org.cosmic_utils.enroll.yml b/org.cosmic_utils.enroll.yml index 81dd933..6d9f26a 100644 --- a/org.cosmic_utils.enroll.yml +++ b/org.cosmic_utils.enroll.yml @@ -1,41 +1,42 @@ app-id: org.cosmic_utils.enroll runtime: org.freedesktop.Platform -runtime-version: '25.08' +runtime-version: "25.08" sdk: org.freedesktop.Sdk base: com.system76.Cosmic.BaseApp base-version: stable command: cosmic-utils-enroll finish-args: - - --socket=wayland - - --socket=fallback-x11 - - --share=ipc - - --device=dri - - --system-talk-name=net.reactivated.Fprint - - --system-talk-name=org.freedesktop.PolicyKit1 - - --system-talk-name=org.freedesktop.Accounts - - --talk-name=com.system76.CosmicSettingsDaemon + - --socket=wayland + - --socket=fallback-x11 + - --share=ipc + - --device=dri + - --filesystem=xdg-config/cosmic:rw + - --system-talk-name=net.reactivated.Fprint + - --system-talk-name=org.freedesktop.PolicyKit1 + - --system-talk-name=org.freedesktop.Accounts + - --talk-name=com.system76.CosmicSettingsDaemon sdk-extensions: - - org.freedesktop.Sdk.Extension.rust-stable + - org.freedesktop.Sdk.Extension.rust-stable build-options: - append-path: /usr/lib/sdk/rust-stable/bin - env: - CARGO_HOME: /run/build/cosmic-utils-enroll/cargo + append-path: /usr/lib/sdk/rust-stable/bin + env: + CARGO_HOME: /run/build/cosmic-utils-enroll/cargo modules: - - name: cosmic-utils-enroll - buildsystem: simple - build-commands: - - cargo --offline fetch --manifest-path Cargo.toml - - cargo build --offline --release + - name: cosmic-utils-enroll + buildsystem: simple + build-commands: + - cargo --offline fetch --manifest-path Cargo.toml + - cargo build --offline --release - - install -Dm0755 target/release/cosmic-utils-enroll /app/bin/cosmic-utils-enroll - - install -Dm0644 resources/org.cosmic_utils.enroll.desktop /app/share/applications/org.cosmic_utils.enroll.desktop - - install -Dm0644 resources/org.cosmic_utils.enroll.metainfo.xml /app/share/appdata/org.cosmic_utils.enroll.metainfo.xml - - install -Dm0644 resources/icons/hicolor/scalable/apps/enroll.svg /app/share/icons/hicolor/scalable/apps/org.cosmic_utils.enroll.svg + - install -Dm0755 target/release/cosmic-utils-enroll /app/bin/cosmic-utils-enroll + - install -Dm0644 resources/org.cosmic_utils.enroll.desktop /app/share/applications/org.cosmic_utils.enroll.desktop + - install -Dm0644 resources/org.cosmic_utils.enroll.metainfo.xml /app/share/appdata/org.cosmic_utils.enroll.metainfo.xml + - install -Dm0644 resources/icons/hicolor/scalable/apps/enroll.svg /app/share/icons/hicolor/scalable/apps/org.cosmic_utils.enroll.svg - sources: - - type: git - url: https://github.com/cosmic-utils/enroll.git - tag: 1.0.4 - - cargo-sources.json + sources: + - type: git + url: https://github.com/cosmic-utils/enroll.git + tag: 1.0.6 + - cargo-sources.json diff --git a/resources/org.cosmic_utils.enroll.metainfo.xml b/resources/org.cosmic_utils.enroll.metainfo.xml index 731f2b8..72c0397 100644 --- a/resources/org.cosmic_utils.enroll.metainfo.xml +++ b/resources/org.cosmic_utils.enroll.metainfo.xml @@ -78,6 +78,17 @@ + + +

+ Changes: +

+
    +
  • Decreased minimum height back to original
  • +
  • Updated dependencies
  • +
+
+

From 6d410ffcff747ad14e8b0e47fe6446e8554b8176 Mon Sep 17 00:00:00 2001 From: albanobattistella <34811668+albanobattistella@users.noreply.github.com> Date: Sun, 29 Mar 2026 14:51:58 +0200 Subject: [PATCH 07/11] Add Italian localization --- i18n/it/cosmic_utils_enroll.ftl | 89 +++++++++++++++++++++++++++++++++ 1 file changed, 89 insertions(+) create mode 100644 i18n/it/cosmic_utils_enroll.ftl diff --git a/i18n/it/cosmic_utils_enroll.ftl b/i18n/it/cosmic_utils_enroll.ftl new file mode 100644 index 0000000..e18df55 --- /dev/null +++ b/i18n/it/cosmic_utils_enroll.ftl @@ -0,0 +1,89 @@ +app-title = Registrazione Impronta Digitale +about = Informazioni +settings = Impostazioni +view = Vista +fprint = Registra +welcome = Registra e/o elimina impronte digitali +git-description = Commit Git {$hash} del {$date} +register = Registra +verify = Verifica +delete = Elimina +danger = Pericolo +cancel = Annulla +success = Successo. Ora registra un'impronta. +deleted = Impronta digitale eliminata. +deleting = Eliminazione impronta digitale in corso... +clear-device = Svuota Dispositivo +confirm-clear = Sei sicuro? +clearing-device = Cancellazione di tutte le impronte digitali dal dispositivo per tutti gli utenti conosciuti... +device-cleared = Dispositivo svuotato per tutti gli utenti conosciuti. +clear-device-confirm = Sei sicuro di voler cancellare le impronte digitali per TUTTI gli utenti conosciuti? + +settings-ui = Interfaccia Utente +alternative-ui = Interfaccia Alternativa +settings-clear-device = Rimuovi tutte le impronte digitali +settings-theme = Tema + +theme-system = Sistema +theme-light = Chiaro +theme-dark = Scuro + +register-tooltip = Registra una nuova impronta digitale +delete-tooltip = Elimina questa impronta digitale +clear-tooltip = Funziona solo per utenti ancora esistenti +verify-tooltip = Verifica l'impronta digitale confrontandola con quelle registrate + +verify-finger = Posiziona {$finger} sul lettore +verify-no-match = L'impronta digitale non corrisponde +verify-match = Impronta digitale corrispondente +verify-retry-scan = Impossibile leggere l'impronta digitale. Riprova. +verify-swipe-too-short = Scorrimento troppo breve. Riprova. +verify-finger-not-centered = Dito non centrato. Riprova. +verify-remove-and-retry = Rimuovi il dito e riprova. +verify-too-fast = Tocco troppo veloce. Riprova. +verify-disconnected = Dispositivo disconnesso. Chiudi la finestra. +verify-unknown-error = Si è verificato un errore sconosciuto. + +page-right-thumb = Pollice Destro +page-right-index-finger = Indice Destro +page-right-middle-finger = Medio Destro +page-right-ring-finger = Anulare Destro +page-right-little-finger = Mignolo Destro +page-left-thumb = Pollice Sinistro +page-left-index-finger = Indice Sinistro +page-left-middle-finger = Medio Sinistro +page-left-ring-finger = Anulare Sinistro +page-left-little-finger = Mignolo Sinistro +page-delete-all-users-prints = Elimina tutte le impronte dell'utente + +status-connecting = Connessione al bus di sistema... +status-searching-device = Ricerca lettore impronte digitali... +status-device-found = Scegli quale impronta digitale registrare. +status-no-device-found = Nessun lettore di impronte digitali trovato. +status-starting-enrollment = Avvio registrazione... +status-starting-verification = Avvio verifica... + +enroll-starting = Posiziona il dito sul lettore per iniziare. +enroll-stage-passed = Scansione riuscita. Continua. +enroll-retry-scan = Impossibile leggere l'impronta digitale. Riprova. +enroll-swipe-too-short = Scorrimento troppo breve. Scorri per tutta la lunghezza del sensore. +enroll-finger-not-centered = Dito non centrato. Posiziona il dito al centro del sensore. +enroll-remove-and-retry = Rimuovi il dito e riprova. +enroll-unknown-error = Si è verificato un errore sconosciuto. +enroll-completed = Impronta digitale registrata. +enroll-failed = Registrazione fallita. +enroll-disconnected = Dispositivo disconnesso. +enroll-data-full = Memoria impronte digitali piena. Elimina alcune impronte digitali. +enroll-too-fast = Scorrimento troppo veloce. Scorri più lentamente. +enroll-duplicate = Questo dito è già registrato. +enroll-cancelled = Registrazione annullata. + +error-permission-denied = Permesso negato. +error-already-in-use = Il dispositivo è già in uso da un'altra applicazione. +error-internal = Si è verificato un errore interno. +error-no-enrolled-prints = Nessuna impronta digitale registrata per questo dito. +error-claim-device = Impossibile acquisire il dispositivo. +error-device-not-found = Dispositivo per impronte digitali non trovato. +error-timeout = Operazione scaduta. +error-prints-not-deleted = Impossibile eliminare le impronte digitali. +error-connect-dbus = Connessione a DBus fallita: {$err} From c2831166eefcf68165eed1e9a532e0a29a956060 Mon Sep 17 00:00:00 2001 From: Joonas Tuomi Date: Thu, 2 Apr 2026 17:59:18 +0300 Subject: [PATCH 08/11] Fixed test of number key to finger and comment --- src/app/finger.rs | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/app/finger.rs b/src/app/finger.rs index 74d310e..b4ab400 100644 --- a/src/app/finger.rs +++ b/src/app/finger.rs @@ -54,7 +54,7 @@ impl Finger { } } - /// Maps keys 1-0 to fingers (1=RightThumb, 0=LeftPinky). + /// Maps keys 1-0 to fingers (1=LeftPinky, 0=RightPinky). pub fn from_key(key: u8) -> Option { match key { 1 => Some(Finger::LeftPinky), @@ -128,16 +128,16 @@ mod tests { #[test] fn test_finger_from_key() { + assert_eq!(Finger::from_key(1), Some(Finger::LeftPinky)); + assert_eq!(Finger::from_key(2), Some(Finger::LeftRing)); + assert_eq!(Finger::from_key(3), Some(Finger::LeftMiddle)); + assert_eq!(Finger::from_key(4), Some(Finger::LeftIndex)); + assert_eq!(Finger::from_key(5), Some(Finger::LeftThumb)); assert_eq!(Finger::from_key(6), Some(Finger::RightThumb)); assert_eq!(Finger::from_key(7), Some(Finger::RightIndex)); assert_eq!(Finger::from_key(8), Some(Finger::RightMiddle)); assert_eq!(Finger::from_key(9), Some(Finger::RightRing)); assert_eq!(Finger::from_key(0), Some(Finger::RightPinky)); - assert_eq!(Finger::from_key(1), Some(Finger::LeftThumb)); - assert_eq!(Finger::from_key(2), Some(Finger::LeftIndex)); - assert_eq!(Finger::from_key(3), Some(Finger::LeftMiddle)); - assert_eq!(Finger::from_key(4), Some(Finger::LeftRing)); - assert_eq!(Finger::from_key(5), Some(Finger::LeftPinky)); assert_eq!(Finger::from_key(10), None); } From de7e9b55ae1d47c8c317a13f98b627a079303587 Mon Sep 17 00:00:00 2001 From: Joonas Tuomi Date: Thu, 2 Apr 2026 18:00:51 +0300 Subject: [PATCH 09/11] Pressing number no longer changes if device busy --- src/app/message.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/app/message.rs b/src/app/message.rs index f3dc229..90e7650 100644 --- a/src/app/message.rs +++ b/src/app/message.rs @@ -440,7 +440,7 @@ impl AppModel { /// /// **Returns** ***Task***() pub(crate) fn on_select_finger_by_number(&mut self, key: u8) -> Task> { - if let Some(finger) = Finger::from_key(key) { + if let Some(finger) = Finger::from_key(key) && !self.busy { self.confirm_clear = false; self.selected_finger = finger; } From a57027f3d15b56be062c4ff95697bdeac6d436a2 Mon Sep 17 00:00:00 2001 From: Joonas Tuomi Date: Thu, 2 Apr 2026 18:23:14 +0300 Subject: [PATCH 10/11] Italian metadata and latest changes --- .../org.cosmic_utils.enroll.metainfo.xml | 28 +++++++++++++++---- 1 file changed, 22 insertions(+), 6 deletions(-) diff --git a/resources/org.cosmic_utils.enroll.metainfo.xml b/resources/org.cosmic_utils.enroll.metainfo.xml index 72c0397..2e8fae7 100644 --- a/resources/org.cosmic_utils.enroll.metainfo.xml +++ b/resources/org.cosmic_utils.enroll.metainfo.xml @@ -2,6 +2,7 @@ org.cosmic_utils.enroll CC0-1.0 + COSMIC MPL-2.0 Enroll

Fingerprint record management @@ -13,17 +14,26 @@

- Fingerprint management for single and multi-user systems. Allows you to register, verify and delete prints. + Fingerprint record management for single and multi-user systems. You can register, verify and delete prints. +

+

+ Select the user you which to register, by default the current user, and then the finger. Click either Register to enroll a print for a new finger, Verify to match against an existing one or Delete to remove it. +

+

+ From View menu you can access Settings where you can configure appearance or access Delete all option, which attempts to clear all registered prints from your scanner device.

Správa otisků prstů pro jednoho i více uživatelů. Umožňuje registrovat, ověřovat a mazat otisky.

Sormenjälkien hallinnointi yhden ja useamman käyttäjän järjestelmille. Sallii sinun luoda, varmentaa sekä poistaa jälkiä. -

-

- Fingerprint registreringshantering för enskilda och flera användare. Tillåter dig att registrera, verifiera och ta bort fingeravtryck. -

+

+

+ Fingerprint registreringshantering för enskilda och flera användare. Tillåter dig att registrera, verifiera och ta bort fingeravtryck. +

+

+ Gestione delle impronte digitali per sistemi monoutente e multiutente. Consente di creare, verificare ed eliminare le impronte digitali. +

https://github.com/cosmic-utils/enroll/raw/main/resources/icons/hicolor/scalable/apps/enroll.svg @@ -58,6 +68,9 @@ Fingerprint Autentisering COSMIC + Impronta digitale + Identificazione + COSMIC #7ea5ae @@ -75,10 +88,11 @@ Hlavní UI Pääkäyttöliittymä Huvudsida + Interfaccia principale - +

Changes: @@ -86,6 +100,8 @@

  • Decreased minimum height back to original
  • Updated dependencies
  • +
  • Italian translations added
  • +
  • Initial keyboard control support
From ec143794674e30bf0a8bb32bc31c6e08e09e8545 Mon Sep 17 00:00:00 2001 From: Joonas Tuomi Date: Thu, 2 Apr 2026 18:29:11 +0300 Subject: [PATCH 11/11] Updated projects own CHANGELOG as well --- CHANGELOG.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index ab6b885..31543ca 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,7 @@ +### 1.0.6: + • Italian translations by @albannobattistella + • Buttons 1-0, v, r & ctrl + d added + • libcosmic update ### 1.0.5: • Config loaded at startup • Theme applied from config