commit 5c3f732c068e45ddebd585d567a9832a7d60ac60
parent a0fcf814687eb9ba27fc81f9abd88b7a789850d1
Author: triesap <tyson@radroots.org>
Date: Sun, 19 Apr 2026 22:18:21 +0000
build: normalize facade migration baseline
- keep the mf2_i18n rename and local vendor path posture as the app baseline
- retain the live remote signer and file-backed custody dependency posture intentionally
- promote shared nostr connect and protected store foundations into workspace dependencies
- validate with cargo metadata --format-version 1 --no-deps and git diff --check
Diffstat:
7 files changed, 238 insertions(+), 186 deletions(-)
diff --git a/Cargo.lock b/Cargo.lock
@@ -437,6 +437,37 @@ dependencies = [
]
[[package]]
+name = "async-utility"
+version = "0.3.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a34a3b57207a7a1007832416c3e4862378c8451b4e8e093e436f48c2d3d2c151"
+dependencies = [
+ "futures-util",
+ "gloo-timers",
+ "tokio",
+ "wasm-bindgen-futures",
+]
+
+[[package]]
+name = "async-wsocket"
+version = "0.13.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1c92385c7c8b3eb2de1b78aeca225212e4c9a69a78b802832759b108681a5069"
+dependencies = [
+ "async-utility",
+ "futures",
+ "futures-util",
+ "js-sys",
+ "tokio",
+ "tokio-rustls",
+ "tokio-socks",
+ "tokio-tungstenite",
+ "url",
+ "wasm-bindgen",
+ "web-sys",
+]
+
+[[package]]
name = "async_zip"
version = "0.0.17"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -456,6 +487,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c59bdb34bc650a32731b31bd8f0829cc15d24a708ee31559e0bb34f2bc320cba"
[[package]]
+name = "atomic-destructor"
+version = "0.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ef49f5882e4b6afaac09ad239a4f8c70a24b8f2b0897edb1f706008efd109cf4"
+
+[[package]]
name = "atomic-waker"
version = "1.1.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -977,7 +1014,7 @@ dependencies = [
"cocoa-foundation 0.1.2",
"core-foundation 0.9.4",
"core-graphics 0.23.2",
- "foreign-types 0.5.0",
+ "foreign-types",
"libc",
"objc",
]
@@ -993,7 +1030,7 @@ dependencies = [
"cocoa-foundation 0.2.0",
"core-foundation 0.10.0",
"core-graphics 0.24.0",
- "foreign-types 0.5.0",
+ "foreign-types",
"libc",
"objc",
]
@@ -1181,7 +1218,7 @@ dependencies = [
"bitflags 1.3.2",
"core-foundation 0.9.4",
"core-graphics-types 0.1.3",
- "foreign-types 0.5.0",
+ "foreign-types",
"libc",
]
@@ -1194,7 +1231,7 @@ dependencies = [
"bitflags 2.11.1",
"core-foundation 0.10.0",
"core-graphics-types 0.2.0",
- "foreign-types 0.5.0",
+ "foreign-types",
"libc",
]
@@ -1207,7 +1244,7 @@ dependencies = [
"bitflags 2.11.1",
"core-foundation 0.9.4",
"core-graphics-types 0.1.3",
- "foreign-types 0.5.0",
+ "foreign-types",
"libc",
]
@@ -1254,7 +1291,7 @@ checksum = "a593227b66cbd4007b2a050dfdd9e1d1318311409c8d600dc82ba1b15ca9c130"
dependencies = [
"core-foundation 0.10.0",
"core-graphics 0.24.0",
- "foreign-types 0.5.0",
+ "foreign-types",
"libc",
]
@@ -1435,32 +1472,16 @@ dependencies = [
]
[[package]]
-name = "data-url"
-version = "0.3.2"
+name = "data-encoding"
+version = "2.10.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "be1e0bca6c3637f992fc1cc7cbc52a78c1ef6db076dbf1059c4323d6a2048376"
+checksum = "d7a1e2f27636f116493b8b860f5546edb47c8d8f8ea73e1d2a20be88e28d1fea"
[[package]]
-name = "dbus"
-version = "0.9.10"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "21b3aa68d7e7abee336255bd7248ea965cc393f3e70411135a6f6a4b651345d4"
-dependencies = [
- "libc",
- "libdbus-sys",
- "windows-sys 0.59.0",
-]
-
-[[package]]
-name = "dbus-secret-service"
-version = "4.1.0"
+name = "data-url"
+version = "0.3.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "708b509edf7889e53d7efb0ffadd994cc6c2345ccb62f55cfd6b0682165e4fa6"
-dependencies = [
- "dbus",
- "openssl",
- "zeroize",
-]
+checksum = "be1e0bca6c3637f992fc1cc7cbc52a78c1ef6db076dbf1059c4323d6a2048376"
[[package]]
name = "deflate64"
@@ -2049,21 +2070,12 @@ dependencies = [
[[package]]
name = "foreign-types"
-version = "0.3.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1"
-dependencies = [
- "foreign-types-shared 0.1.1",
-]
-
-[[package]]
-name = "foreign-types"
version = "0.5.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d737d9aa519fb7b749cbc3b962edcf310a8dd1f4b67c91c4f83975dbdd17d965"
dependencies = [
"foreign-types-macros",
- "foreign-types-shared 0.3.1",
+ "foreign-types-shared",
]
[[package]]
@@ -2079,12 +2091,6 @@ dependencies = [
[[package]]
name = "foreign-types-shared"
-version = "0.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b"
-
-[[package]]
-name = "foreign-types-shared"
version = "0.3.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "aa9a19cbb55df58761df49b23516a86d432839add4af60fc256da840f66ed35b"
@@ -2431,7 +2437,7 @@ dependencies = [
"etagere",
"filedescriptor",
"flume",
- "foreign-types 0.5.0",
+ "foreign-types",
"futures",
"gpui-macros",
"gpui_collections",
@@ -2626,7 +2632,7 @@ dependencies = [
"core-foundation 0.10.0",
"core-video",
"ctor",
- "foreign-types 0.5.0",
+ "foreign-types",
"metal",
"objc",
]
@@ -3368,23 +3374,6 @@ dependencies = [
]
[[package]]
-name = "keyring"
-version = "3.6.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "eebcc3aff044e5944a8fbaf69eb277d11986064cba30c468730e8b9909fb551c"
-dependencies = [
- "byteorder",
- "dbus-secret-service",
- "linux-keyutils",
- "log",
- "openssl",
- "security-framework 2.11.1",
- "security-framework 3.7.0",
- "windows-sys 0.60.2",
- "zeroize",
-]
-
-[[package]]
name = "khronos-egl"
version = "6.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -3477,16 +3466,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "52ff2c0fe9bc6cb6b14a0592c2ff4fa9ceb83eea9db979b0487cd054946a2b8f"
[[package]]
-name = "libdbus-sys"
-version = "0.2.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "328c4789d42200f1eeec05bd86c9c13c7f091d2ba9a6ea35acdf51f31bc0f043"
-dependencies = [
- "cc",
- "pkg-config",
-]
-
-[[package]]
name = "libfuzzer-sys"
version = "0.4.12"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -3536,16 +3515,6 @@ dependencies = [
]
[[package]]
-name = "linux-keyutils"
-version = "0.2.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "83270a18e9f90d0707c41e9f35efada77b64c0e6f3f1810e71c8368a864d5590"
-dependencies = [
- "bitflags 2.11.1",
- "libc",
-]
-
-[[package]]
name = "linux-raw-sys"
version = "0.4.15"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -3592,6 +3561,12 @@ dependencies = [
]
[[package]]
+name = "lru"
+version = "0.16.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7f66e8d5d03f609abc3a39e6f08e4164ebf1447a732906d39eb9b99b7919ef39"
+
+[[package]]
name = "lru-slab"
version = "0.1.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -3774,20 +3749,19 @@ dependencies = [
"bitflags 2.11.1",
"block",
"core-graphics-types 0.1.3",
- "foreign-types 0.5.0",
+ "foreign-types",
"log",
"objc",
"paste",
]
[[package]]
-name = "mf2-i18n-build"
+name = "mf2_i18n_build"
version = "0.1.0"
-source = "git+https://github.com/triesap/mf2-i18n.git?rev=0c3ba2729b309f27aed3e27ae4e753b0147a75ec#0c3ba2729b309f27aed3e27ae4e753b0147a75ec"
dependencies = [
"blake3",
"hex",
- "mf2-i18n-core",
+ "mf2_i18n_core",
"serde",
"serde_json",
"sha2",
@@ -3796,39 +3770,35 @@ dependencies = [
]
[[package]]
-name = "mf2-i18n-core"
+name = "mf2_i18n_core"
version = "0.1.0"
-source = "git+https://github.com/triesap/mf2-i18n.git?rev=0c3ba2729b309f27aed3e27ae4e753b0147a75ec#0c3ba2729b309f27aed3e27ae4e753b0147a75ec"
[[package]]
-name = "mf2-i18n-embedded"
+name = "mf2_i18n_embedded"
version = "0.1.0"
-source = "git+https://github.com/triesap/mf2-i18n.git?rev=0c3ba2729b309f27aed3e27ae4e753b0147a75ec#0c3ba2729b309f27aed3e27ae4e753b0147a75ec"
dependencies = [
- "mf2-i18n-core",
+ "mf2_i18n_core",
]
[[package]]
-name = "mf2-i18n-native"
+name = "mf2_i18n_native"
version = "0.1.0"
-source = "git+https://github.com/triesap/mf2-i18n.git?rev=0c3ba2729b309f27aed3e27ae4e753b0147a75ec#0c3ba2729b309f27aed3e27ae4e753b0147a75ec"
dependencies = [
- "mf2-i18n-core",
- "mf2-i18n-embedded",
- "mf2-i18n-runtime",
- "mf2-i18n-std",
+ "mf2_i18n_core",
+ "mf2_i18n_embedded",
+ "mf2_i18n_runtime",
+ "mf2_i18n_std",
"thiserror 1.0.69",
]
[[package]]
-name = "mf2-i18n-runtime"
+name = "mf2_i18n_runtime"
version = "0.1.0"
-source = "git+https://github.com/triesap/mf2-i18n.git?rev=0c3ba2729b309f27aed3e27ae4e753b0147a75ec#0c3ba2729b309f27aed3e27ae4e753b0147a75ec"
dependencies = [
"ed25519-dalek",
"hex",
- "mf2-i18n-core",
- "mf2-i18n-std",
+ "mf2_i18n_core",
+ "mf2_i18n_std",
"serde",
"serde_json",
"sha2",
@@ -3836,13 +3806,12 @@ dependencies = [
]
[[package]]
-name = "mf2-i18n-std"
+name = "mf2_i18n_std"
version = "0.1.0"
-source = "git+https://github.com/triesap/mf2-i18n.git?rev=0c3ba2729b309f27aed3e27ae4e753b0147a75ec#0c3ba2729b309f27aed3e27ae4e753b0147a75ec"
dependencies = [
"chrono",
"intl_pluralrules",
- "mf2-i18n-core",
+ "mf2_i18n_core",
"num-format",
"pure-rust-locales",
"thiserror 1.0.69",
@@ -3944,6 +3913,12 @@ dependencies = [
]
[[package]]
+name = "negentropy"
+version = "0.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f0efe882e02d206d8d279c20eb40e03baf7cb5136a1476dc084a324fbc3ec42d"
+
+[[package]]
name = "new_debug_unreachable"
version = "1.0.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -4042,6 +4017,59 @@ dependencies = [
]
[[package]]
+name = "nostr-database"
+version = "0.44.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7462c9d8ae5ef6a28d66a192d399ad2530f1f2130b13186296dbb11bdef5b3d1"
+dependencies = [
+ "lru",
+ "nostr",
+ "tokio",
+]
+
+[[package]]
+name = "nostr-gossip"
+version = "0.44.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ade30de16869618919c6b5efc8258f47b654a98b51541eb77f85e8ec5e3c83a6"
+dependencies = [
+ "nostr",
+]
+
+[[package]]
+name = "nostr-relay-pool"
+version = "0.44.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4b1073ccfbaea5549fb914a9d52c68dab2aecda61535e5143dd73e95445a804b"
+dependencies = [
+ "async-utility",
+ "async-wsocket",
+ "atomic-destructor",
+ "hex",
+ "lru",
+ "negentropy",
+ "nostr",
+ "nostr-database",
+ "tokio",
+ "tracing",
+]
+
+[[package]]
+name = "nostr-sdk"
+version = "0.44.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "471732576710e779b64f04c55e3f8b5292f865fea228436daf19694f0bf70393"
+dependencies = [
+ "async-utility",
+ "nostr",
+ "nostr-database",
+ "nostr-gossip",
+ "nostr-relay-pool",
+ "tokio",
+ "tracing",
+]
+
+[[package]]
name = "notify"
version = "7.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -4410,60 +4438,12 @@ dependencies = [
]
[[package]]
-name = "openssl"
-version = "0.10.77"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bfe4646e360ec77dff7dde40ed3d6c5fee52d156ef4a62f53973d38294dad87f"
-dependencies = [
- "bitflags 2.11.1",
- "cfg-if",
- "foreign-types 0.3.2",
- "libc",
- "once_cell",
- "openssl-macros",
- "openssl-sys",
-]
-
-[[package]]
-name = "openssl-macros"
-version = "0.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.117",
-]
-
-[[package]]
name = "openssl-probe"
version = "0.2.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7c87def4c32ab89d880effc9e097653c8da5d6ef28e6b539d313baaacfbafcbe"
[[package]]
-name = "openssl-src"
-version = "300.6.0+3.6.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a8e8cbfd3a4a8c8f089147fd7aaa33cf8c7450c4d09f8f80698a0cf093abeff4"
-dependencies = [
- "cc",
-]
-
-[[package]]
-name = "openssl-sys"
-version = "0.9.113"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ad2f2c0eba47118757e4c6d2bff2838f3e0523380021356e7875e858372ce644"
-dependencies = [
- "cc",
- "libc",
- "openssl-src",
- "pkg-config",
- "vcpkg",
-]
-
-[[package]]
name = "option-ext"
version = "0.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -5048,12 +5028,15 @@ dependencies = [
"radroots_app_core",
"radroots_app_i18n",
"radroots_app_models",
+ "radroots_app_remote_signer",
"radroots_app_sqlite",
"radroots_app_state",
"radroots_app_sync",
"radroots_app_ui",
"radroots_identity",
+ "radroots_nostr",
"radroots_nostr_accounts",
+ "radroots_protected_store",
"radroots_secret_vault",
"thiserror 2.0.18",
"tracing",
@@ -5078,9 +5061,9 @@ name = "radroots_app_i18n"
version = "0.1.0"
dependencies = [
"hex",
- "mf2-i18n-build",
- "mf2-i18n-core",
- "mf2-i18n-native",
+ "mf2_i18n_build",
+ "mf2_i18n_core",
+ "mf2_i18n_native",
"serde",
"serde_json",
"toml 0.8.23",
@@ -5091,10 +5074,26 @@ name = "radroots_app_models"
version = "0.1.0"
dependencies = [
"serde",
+ "url",
"uuid",
]
[[package]]
+name = "radroots_app_remote_signer"
+version = "0.1.0"
+dependencies = [
+ "nostr",
+ "radroots_identity",
+ "radroots_nostr",
+ "radroots_nostr_connect",
+ "serde",
+ "serde_json",
+ "tempfile",
+ "tokio",
+ "url",
+]
+
+[[package]]
name = "radroots_app_sqlite"
version = "0.1.0"
dependencies = [
@@ -5179,6 +5178,8 @@ name = "radroots_nostr"
version = "0.1.0-alpha.2"
dependencies = [
"nostr",
+ "nostr-sdk",
+ "radroots_identity",
"serde",
"serde_json",
"thiserror 1.0.69",
@@ -5273,9 +5274,6 @@ dependencies = [
[[package]]
name = "radroots_secret_vault"
version = "0.1.0-alpha.2"
-dependencies = [
- "keyring",
-]
[[package]]
name = "rand"
@@ -5797,7 +5795,7 @@ dependencies = [
"openssl-probe",
"rustls-pki-types",
"schannel",
- "security-framework 3.7.0",
+ "security-framework",
]
[[package]]
@@ -6005,19 +6003,6 @@ dependencies = [
[[package]]
name = "security-framework"
-version = "2.11.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "897b2245f0b511c87893af39b033e5ca9cce68824c4d7e7630b5a1d339658d02"
-dependencies = [
- "bitflags 2.11.1",
- "core-foundation 0.9.4",
- "core-foundation-sys",
- "libc",
- "security-framework-sys",
-]
-
-[[package]]
-name = "security-framework"
version = "3.7.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b7f4bc775c73d9a02cde8bf7b2ec4c9d12743edf609006c7facc23998404cd1d"
@@ -6183,6 +6168,17 @@ dependencies = [
]
[[package]]
+name = "sha1"
+version = "0.10.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e3bf829a2d51ab4a5ddf1352d8470c140cadc8301b2ae1789db023f01cedd6ba"
+dependencies = [
+ "cfg-if",
+ "cpufeatures 0.2.17",
+ "digest",
+]
+
+[[package]]
name = "sha1_smol"
version = "1.0.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -6970,6 +6966,22 @@ dependencies = [
]
[[package]]
+name = "tokio-tungstenite"
+version = "0.26.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7a9daff607c6d2bf6c16fd681ccb7eecc83e4e2cdc1ca067ffaadfca5de7f084"
+dependencies = [
+ "futures-util",
+ "log",
+ "rustls",
+ "rustls-pki-types",
+ "tokio",
+ "tokio-rustls",
+ "tungstenite",
+ "webpki-roots 0.26.11",
+]
+
+[[package]]
name = "tokio-util"
version = "0.7.18"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -7253,6 +7265,25 @@ dependencies = [
]
[[package]]
+name = "tungstenite"
+version = "0.26.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4793cb5e56680ecbb1d843515b23b6de9a75eb04b66643e256a396d43be33c13"
+dependencies = [
+ "bytes",
+ "data-encoding",
+ "http",
+ "httparse",
+ "log",
+ "rand 0.9.4",
+ "rustls",
+ "rustls-pki-types",
+ "sha1",
+ "thiserror 2.0.18",
+ "utf-8",
+]
+
+[[package]]
name = "typeid"
version = "1.0.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -7840,6 +7871,24 @@ dependencies = [
]
[[package]]
+name = "webpki-roots"
+version = "0.26.11"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "521bc38abb08001b01866da9f51eb7c5d647a19260e00054a8c7fd5f9e57f7a9"
+dependencies = [
+ "webpki-roots 1.0.7",
+]
+
+[[package]]
+name = "webpki-roots"
+version = "1.0.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "52f5ee44c96cf55f1b349600768e3ece3a8f26010c05265ab73f945bb1a2eb9d"
+dependencies = [
+ "rustls-pki-types",
+]
+
+[[package]]
name = "weezl"
version = "0.1.12"
source = "registry+https://github.com/rust-lang/crates.io-index"
diff --git a/Cargo.toml b/Cargo.toml
@@ -28,12 +28,15 @@ gpui = "0.2.2"
gpui-component = "0.5.1"
gpui-component-assets = "0.5.1"
hex = "0.4"
-mf2-i18n-build = { git = "https://github.com/triesap/mf2-i18n.git", rev = "0c3ba2729b309f27aed3e27ae4e753b0147a75ec" }
-mf2-i18n-core = { git = "https://github.com/triesap/mf2-i18n.git", rev = "0c3ba2729b309f27aed3e27ae4e753b0147a75ec" }
-mf2-i18n-native = { git = "https://github.com/triesap/mf2-i18n.git", rev = "0c3ba2729b309f27aed3e27ae4e753b0147a75ec" }
+mf2_i18n_build = { path = "../../../../vendor/triesap/mf2_i18n/crates/mf2_i18n_build" }
+mf2_i18n_core = { path = "../../../../vendor/triesap/mf2_i18n/crates/mf2_i18n_core" }
+mf2_i18n_native = { path = "../../../../vendor/triesap/mf2_i18n/crates/mf2_i18n_native" }
radroots_identity = { path = "../lib/crates/identity" }
-radroots_nostr_accounts = { path = "../lib/crates/nostr_accounts", features = ["os-keyring"] }
-radroots_secret_vault = { path = "../lib/crates/secret_vault", default-features = false, features = ["std", "os-keyring"] }
+radroots_nostr = { path = "../lib/crates/nostr", features = ["client"] }
+radroots_nostr_accounts = { path = "../lib/crates/nostr_accounts" }
+radroots_nostr_connect = { path = "../lib/crates/nostr_connect" }
+radroots_protected_store = { path = "../lib/crates/protected_store" }
+radroots_secret_vault = { path = "../lib/crates/secret_vault", default-features = false, features = ["std"] }
radroots_app_core = { path = "crates/shared/core", version = "0.1.0" }
radroots_app_i18n = { path = "crates/shared/i18n", version = "0.1.0" }
radroots_app_models = { path = "crates/shared/models", version = "0.1.0" }
diff --git a/crates/launchers/desktop/Cargo.toml b/crates/launchers/desktop/Cargo.toml
@@ -14,7 +14,7 @@ gpui-component-assets.workspace = true
radroots_identity.workspace = true
radroots_nostr.workspace = true
radroots_nostr_accounts.workspace = true
-radroots_protected_store = { path = "../../../../lib/crates/protected_store" }
+radroots_protected_store.workspace = true
radroots_secret_vault.workspace = true
radroots_app_core.workspace = true
radroots_app_i18n.workspace = true
diff --git a/crates/shared/i18n/Cargo.toml b/crates/shared/i18n/Cargo.toml
@@ -9,13 +9,13 @@ publish = false
build = "build.rs"
[dependencies]
-mf2-i18n-core.workspace = true
-mf2-i18n-native.workspace = true
+mf2_i18n_core.workspace = true
+mf2_i18n_native.workspace = true
[build-dependencies]
hex.workspace = true
-mf2-i18n-build.workspace = true
-mf2-i18n-core.workspace = true
+mf2_i18n_build.workspace = true
+mf2_i18n_core.workspace = true
serde.workspace = true
serde_json.workspace = true
toml.workspace = true
diff --git a/crates/shared/i18n/build.rs b/crates/shared/i18n/build.rs
@@ -28,7 +28,7 @@ fn main() {
.and_then(Path::parent)
.expect("app root should be discoverable from shared i18n crate");
let i18n_root = app_root.join("i18n");
- let config_path = i18n_root.join("mf2-i18n.toml");
+ let config_path = i18n_root.join("mf2_i18n.toml");
println!("cargo:rerun-if-changed={}", config_path.display());
let config = load_project_config(&config_path);
diff --git a/crates/shared/remote_signer/Cargo.toml b/crates/shared/remote_signer/Cargo.toml
@@ -15,8 +15,8 @@ workspace = true
[dependencies]
nostr = { version = "0.44.2", features = ["nip44"] }
radroots_identity.workspace = true
-radroots_nostr = { path = "../../../../lib/crates/nostr", features = ["client"] }
-radroots_nostr_connect = { path = "../../../../lib/crates/nostr_connect" }
+radroots_nostr.workspace = true
+radroots_nostr_connect.workspace = true
serde.workspace = true
serde_json.workspace = true
tokio = { version = "1.48", features = ["rt", "sync", "time"] }
diff --git a/i18n/mf2-i18n.toml b/i18n/mf2_i18n.toml