Constellation, Spacedust, Slingshot, UFOs: atproto crates and services for microcosm

fix cross-compiling for original raspi model b

tls it's always tls

Changed files
+81 -95
who-am-i
+65 -95
Cargo.lock
··· 2051 2051 2052 2052 [[package]] 2053 2053 name = "hyper-util" 2054 - version = "0.1.11" 2054 + version = "0.1.14" 2055 2055 source = "registry+https://github.com/rust-lang/crates.io-index" 2056 - checksum = "497bbc33a26fdd4af9ed9c70d63f61cf56a938375fbb32df34db9b1cd6d643f2" 2056 + checksum = "dc2fdfdbff08affe55bb779f33b053aa1fe5dd5b54c257343c17edfa55711bdb" 2057 2057 dependencies = [ 2058 + "base64 0.22.1", 2058 2059 "bytes", 2059 2060 "futures-channel", 2061 + "futures-core", 2060 2062 "futures-util", 2061 2063 "http", 2062 2064 "http-body", 2063 2065 "hyper", 2066 + "ipnet", 2064 2067 "libc", 2068 + "percent-encoding", 2065 2069 "pin-project-lite", 2066 2070 "socket2", 2071 + "system-configuration", 2067 2072 "tokio", 2068 2073 "tower-service", 2069 2074 "tracing", 2075 + "windows-registry", 2070 2076 ] 2071 2077 2072 2078 [[package]] ··· 2297 2303 version = "2.11.0" 2298 2304 source = "registry+https://github.com/rust-lang/crates.io-index" 2299 2305 checksum = "469fb0b9cefa57e3ef31275ee7cacb78f2fdca44e4765491884a2b119d4eb130" 2306 + 2307 + [[package]] 2308 + name = "iri-string" 2309 + version = "0.7.8" 2310 + source = "registry+https://github.com/rust-lang/crates.io-index" 2311 + checksum = "dbc5ebe9c3a1a7a5127f920a418f7585e9e758e911d0466ed004f393b0e380b2" 2312 + dependencies = [ 2313 + "memchr", 2314 + "serde", 2315 + ] 2300 2316 2301 2317 [[package]] 2302 2318 name = "is-terminal" ··· 3488 3504 3489 3505 [[package]] 3490 3506 name = "reqwest" 3491 - version = "0.12.15" 3507 + version = "0.12.22" 3492 3508 source = "registry+https://github.com/rust-lang/crates.io-index" 3493 - checksum = "d19c46a6fdd48bc4dab94b6103fccc55d34c67cc0ad04653aad4ea2a07cd7bbb" 3509 + checksum = "cbc931937e6ca3a06e3b6c0aa7841849b160a90351d6ab467a8b9b9959767531" 3494 3510 dependencies = [ 3495 3511 "async-compression", 3496 3512 "base64 0.22.1", 3497 3513 "bytes", 3514 + "encoding_rs", 3498 3515 "futures-core", 3499 3516 "futures-util", 3517 + "h2", 3500 3518 "http", 3501 3519 "http-body", 3502 3520 "http-body-util", 3503 3521 "hyper", 3522 + "hyper-rustls", 3504 3523 "hyper-tls", 3505 3524 "hyper-util", 3506 - "ipnet", 3507 3525 "js-sys", 3508 3526 "log", 3509 3527 "mime", 3510 3528 "native-tls", 3511 - "once_cell", 3512 3529 "percent-encoding", 3513 3530 "pin-project-lite", 3514 - "rustls-pemfile", 3531 + "rustls-pki-types", 3515 3532 "serde", 3516 3533 "serde_json", 3517 3534 "serde_urlencoded", ··· 3520 3537 "tokio-native-tls", 3521 3538 "tokio-util", 3522 3539 "tower", 3540 + "tower-http", 3523 3541 "tower-service", 3524 3542 "url", 3525 3543 "wasm-bindgen", 3526 3544 "wasm-bindgen-futures", 3527 3545 "web-sys", 3528 - "windows-registry", 3529 3546 ] 3530 3547 3531 3548 [[package]] ··· 4224 4241 ] 4225 4242 4226 4243 [[package]] 4244 + name = "system-configuration" 4245 + version = "0.6.1" 4246 + source = "registry+https://github.com/rust-lang/crates.io-index" 4247 + checksum = "3c879d448e9d986b661742763247d3693ed13609438cf3d006f51f5368a5ba6b" 4248 + dependencies = [ 4249 + "bitflags", 4250 + "core-foundation 0.9.4", 4251 + "system-configuration-sys", 4252 + ] 4253 + 4254 + [[package]] 4255 + name = "system-configuration-sys" 4256 + version = "0.6.0" 4257 + source = "registry+https://github.com/rust-lang/crates.io-index" 4258 + checksum = "8e1d1b10ced5ca923a1fcb8d03e96b8d3268065d724548c0211415ff6ac6bac4" 4259 + dependencies = [ 4260 + "core-foundation-sys", 4261 + "libc", 4262 + ] 4263 + 4264 + [[package]] 4227 4265 name = "tagptr" 4228 4266 version = "0.2.0" 4229 4267 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 4551 4589 4552 4590 [[package]] 4553 4591 name = "tower-http" 4554 - version = "0.6.2" 4592 + version = "0.6.6" 4555 4593 source = "registry+https://github.com/rust-lang/crates.io-index" 4556 - checksum = "403fa3b783d4b626a8ad51d766ab03cb6d2dbfc46b1c5d4448395e6628dc9697" 4594 + checksum = "adc82fd73de2a9722ac5da747f12383d2bfdb93591ee6c58486e0097890f05f2" 4557 4595 dependencies = [ 4558 4596 "bitflags", 4559 4597 "bytes", 4598 + "futures-util", 4560 4599 "http", 4600 + "http-body", 4601 + "iri-string", 4561 4602 "pin-project-lite", 4603 + "tower", 4562 4604 "tower-layer", 4563 4605 "tower-service", 4564 4606 ] ··· 5022 5064 "hickory-resolver", 5023 5065 "metrics", 5024 5066 "rand 0.9.1", 5067 + "reqwest", 5025 5068 "serde", 5026 5069 "serde_json", 5027 5070 "thiserror 2.0.12", ··· 5099 5142 "windows-implement 0.60.0", 5100 5143 "windows-interface 0.59.1", 5101 5144 "windows-link", 5102 - "windows-result 0.3.2", 5103 - "windows-strings 0.4.0", 5145 + "windows-result 0.3.4", 5146 + "windows-strings 0.4.2", 5104 5147 ] 5105 5148 5106 5149 [[package]] ··· 5155 5198 5156 5199 [[package]] 5157 5200 name = "windows-registry" 5158 - version = "0.4.0" 5201 + version = "0.5.2" 5159 5202 source = "registry+https://github.com/rust-lang/crates.io-index" 5160 - checksum = "4286ad90ddb45071efd1a66dfa43eb02dd0dfbae1545ad6cc3c51cf34d7e8ba3" 5203 + checksum = "b3bab093bdd303a1240bb99b8aba8ea8a69ee19d34c9e2ef9594e708a4878820" 5161 5204 dependencies = [ 5162 - "windows-result 0.3.2", 5163 - "windows-strings 0.3.1", 5164 - "windows-targets 0.53.2", 5205 + "windows-link", 5206 + "windows-result 0.3.4", 5207 + "windows-strings 0.4.2", 5165 5208 ] 5166 5209 5167 5210 [[package]] ··· 5175 5218 5176 5219 [[package]] 5177 5220 name = "windows-result" 5178 - version = "0.3.2" 5221 + version = "0.3.4" 5179 5222 source = "registry+https://github.com/rust-lang/crates.io-index" 5180 - checksum = "c64fd11a4fd95df68efcfee5f44a294fe71b8bc6a91993e2791938abcc712252" 5223 + checksum = "56f42bd332cc6c8eac5af113fc0c1fd6a8fd2aa08a0119358686e5160d0586c6" 5181 5224 dependencies = [ 5182 5225 "windows-link", 5183 5226 ] ··· 5194 5237 5195 5238 [[package]] 5196 5239 name = "windows-strings" 5197 - version = "0.3.1" 5240 + version = "0.4.2" 5198 5241 source = "registry+https://github.com/rust-lang/crates.io-index" 5199 - checksum = "87fa48cc5d406560701792be122a10132491cff9d0aeb23583cc2dcafc847319" 5200 - dependencies = [ 5201 - "windows-link", 5202 - ] 5203 - 5204 - [[package]] 5205 - name = "windows-strings" 5206 - version = "0.4.0" 5207 - source = "registry+https://github.com/rust-lang/crates.io-index" 5208 - checksum = "7a2ba9642430ee452d5a7aa78d72907ebe8cfda358e8cb7918a2050581322f97" 5242 + checksum = "56e6c93f3a0c3b36176cb1327a4958a0353d5d166c2a35cb268ace15e91d3b57" 5209 5243 dependencies = [ 5210 5244 "windows-link", 5211 5245 ] ··· 5261 5295 "windows_aarch64_gnullvm 0.52.6", 5262 5296 "windows_aarch64_msvc 0.52.6", 5263 5297 "windows_i686_gnu 0.52.6", 5264 - "windows_i686_gnullvm 0.52.6", 5298 + "windows_i686_gnullvm", 5265 5299 "windows_i686_msvc 0.52.6", 5266 5300 "windows_x86_64_gnu 0.52.6", 5267 5301 "windows_x86_64_gnullvm 0.52.6", ··· 5269 5303 ] 5270 5304 5271 5305 [[package]] 5272 - name = "windows-targets" 5273 - version = "0.53.2" 5274 - source = "registry+https://github.com/rust-lang/crates.io-index" 5275 - checksum = "c66f69fcc9ce11da9966ddb31a40968cad001c5bedeb5c2b82ede4253ab48aef" 5276 - dependencies = [ 5277 - "windows_aarch64_gnullvm 0.53.0", 5278 - "windows_aarch64_msvc 0.53.0", 5279 - "windows_i686_gnu 0.53.0", 5280 - "windows_i686_gnullvm 0.53.0", 5281 - "windows_i686_msvc 0.53.0", 5282 - "windows_x86_64_gnu 0.53.0", 5283 - "windows_x86_64_gnullvm 0.53.0", 5284 - "windows_x86_64_msvc 0.53.0", 5285 - ] 5286 - 5287 - [[package]] 5288 5306 name = "windows_aarch64_gnullvm" 5289 5307 version = "0.48.5" 5290 5308 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 5297 5315 checksum = "32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3" 5298 5316 5299 5317 [[package]] 5300 - name = "windows_aarch64_gnullvm" 5301 - version = "0.53.0" 5302 - source = "registry+https://github.com/rust-lang/crates.io-index" 5303 - checksum = "86b8d5f90ddd19cb4a147a5fa63ca848db3df085e25fee3cc10b39b6eebae764" 5304 - 5305 - [[package]] 5306 5318 name = "windows_aarch64_msvc" 5307 5319 version = "0.48.5" 5308 5320 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 5315 5327 checksum = "09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469" 5316 5328 5317 5329 [[package]] 5318 - name = "windows_aarch64_msvc" 5319 - version = "0.53.0" 5320 - source = "registry+https://github.com/rust-lang/crates.io-index" 5321 - checksum = "c7651a1f62a11b8cbd5e0d42526e55f2c99886c77e007179efff86c2b137e66c" 5322 - 5323 - [[package]] 5324 5330 name = "windows_i686_gnu" 5325 5331 version = "0.48.5" 5326 5332 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 5331 5337 version = "0.52.6" 5332 5338 source = "registry+https://github.com/rust-lang/crates.io-index" 5333 5339 checksum = "8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b" 5334 - 5335 - [[package]] 5336 - name = "windows_i686_gnu" 5337 - version = "0.53.0" 5338 - source = "registry+https://github.com/rust-lang/crates.io-index" 5339 - checksum = "c1dc67659d35f387f5f6c479dc4e28f1d4bb90ddd1a5d3da2e5d97b42d6272c3" 5340 5340 5341 5341 [[package]] 5342 5342 name = "windows_i686_gnullvm" ··· 5345 5345 checksum = "0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66" 5346 5346 5347 5347 [[package]] 5348 - name = "windows_i686_gnullvm" 5349 - version = "0.53.0" 5350 - source = "registry+https://github.com/rust-lang/crates.io-index" 5351 - checksum = "9ce6ccbdedbf6d6354471319e781c0dfef054c81fbc7cf83f338a4296c0cae11" 5352 - 5353 - [[package]] 5354 5348 name = "windows_i686_msvc" 5355 5349 version = "0.48.5" 5356 5350 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 5363 5357 checksum = "240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66" 5364 5358 5365 5359 [[package]] 5366 - name = "windows_i686_msvc" 5367 - version = "0.53.0" 5368 - source = "registry+https://github.com/rust-lang/crates.io-index" 5369 - checksum = "581fee95406bb13382d2f65cd4a908ca7b1e4c2f1917f143ba16efe98a589b5d" 5370 - 5371 - [[package]] 5372 5360 name = "windows_x86_64_gnu" 5373 5361 version = "0.48.5" 5374 5362 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 5381 5369 checksum = "147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78" 5382 5370 5383 5371 [[package]] 5384 - name = "windows_x86_64_gnu" 5385 - version = "0.53.0" 5386 - source = "registry+https://github.com/rust-lang/crates.io-index" 5387 - checksum = "2e55b5ac9ea33f2fc1716d1742db15574fd6fc8dadc51caab1c16a3d3b4190ba" 5388 - 5389 - [[package]] 5390 5372 name = "windows_x86_64_gnullvm" 5391 5373 version = "0.48.5" 5392 5374 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 5399 5381 checksum = "24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d" 5400 5382 5401 5383 [[package]] 5402 - name = "windows_x86_64_gnullvm" 5403 - version = "0.53.0" 5404 - source = "registry+https://github.com/rust-lang/crates.io-index" 5405 - checksum = "0a6e035dd0599267ce1ee132e51c27dd29437f63325753051e71dd9e42406c57" 5406 - 5407 - [[package]] 5408 5384 name = "windows_x86_64_msvc" 5409 5385 version = "0.48.5" 5410 5386 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 5415 5391 version = "0.52.6" 5416 5392 source = "registry+https://github.com/rust-lang/crates.io-index" 5417 5393 checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" 5418 - 5419 - [[package]] 5420 - name = "windows_x86_64_msvc" 5421 - version = "0.53.0" 5422 - source = "registry+https://github.com/rust-lang/crates.io-index" 5423 - checksum = "271414315aff87387382ec3d271b52d7ae78726f5d44ac98b4f4030c91880486" 5424 5394 5425 5395 [[package]] 5426 5396 name = "winnow"
+1
who-am-i/Cargo.toml
··· 18 18 hickory-resolver = "0.25.2" 19 19 metrics = "0.24.2" 20 20 rand = "0.9.1" 21 + reqwest = { version = "0.12.22", features = ["native-tls-vendored"] } 21 22 serde = { version = "1.0.219", features = ["derive"] } 22 23 serde_json = "1.0.140" 23 24 thiserror = "2.0.12"
+15
who-am-i/readme.md
··· 49 49 ### todo 50 50 51 51 provide a pubkey-signed JWT of the identity (just the DID as `sub` probably). (**you probably SHOULD NOT USE THIS in any serious environment**) 52 + 53 + 54 + ## building 55 + 56 + for raspi 1 model b: 57 + 58 + atrium-oauth uses reqwest with default tls config that requires openssl which `cross` doesn't have a good time getting the os deps for. 59 + 60 + fortunately, simply *enabling* a differnent tls feature for reqwest actually stops the default problematic one from causing problems, so we have a `reqwest` direct dependency with a feature enabled, even though it's never imported into actual code, 61 + 62 + it builds with 63 + 64 + ```bash 65 + cross build --release --target arm-unknown-linux-gnueabihf 66 + ```