git.delta.rocks / remowt / refs/commits / f01cb7f97360

difftreelog

chore cargo publishing boilerplate

uqvspxnkYaroslav Bolyukin1 week agoparent: #42e2f16.patch.diff
in: trunk

25 files changed

modifiedCargo.lockdiffbeforeafterboth
11081108
1109[[package]]1109[[package]]
1110name = "futures-channel"1110name = "futures-channel"
1111version = "0.3.30"1111version = "0.3.32"
1112source = "registry+https://github.com/rust-lang/crates.io-index"1112source = "registry+https://github.com/rust-lang/crates.io-index"
1113checksum = "eac8f7d7865dcb88bd4373ab671c8cf4508703796caa2b1985a9ca867b3fcb78"1113checksum = "07bbe89c50d7a535e539b8c17bc0b49bdb77747034daa8087407d655f3f7cc1d"
1114dependencies = [1114dependencies = [
1115 "futures-core",1115 "futures-core",
1116 "futures-sink",1116 "futures-sink",
1117]1117]
11181118
1119[[package]]1119[[package]]
1120name = "futures-core"1120name = "futures-core"
1121version = "0.3.30"1121version = "0.3.32"
1122source = "registry+https://github.com/rust-lang/crates.io-index"1122source = "registry+https://github.com/rust-lang/crates.io-index"
1123checksum = "dfc6580bb841c5a68e9ef15c77ccc837b40a7504914d52e47b8b0e9bbda25a1d"1123checksum = "7e3450815272ef58cec6d564423f6e755e25379b217b0bc688e295ba24df6b1d"
11241124
1125[[package]]1125[[package]]
1126name = "futures-executor"1126name = "futures-executor"
11351135
1136[[package]]1136[[package]]
1137name = "futures-io"1137name = "futures-io"
1138version = "0.3.30"1138version = "0.3.32"
1139source = "registry+https://github.com/rust-lang/crates.io-index"1139source = "registry+https://github.com/rust-lang/crates.io-index"
1140checksum = "a44623e20b9681a318efdd71c299b6b222ed6f231972bfe2f224ebad6311f0c1"1140checksum = "cecba35d7ad927e23624b22ad55235f2239cfa44fd10428eecbeba6d6a717718"
11411141
1142[[package]]1142[[package]]
1143name = "futures-lite"1143name = "futures-lite"
11541154
1155[[package]]1155[[package]]
1156name = "futures-macro"1156name = "futures-macro"
1157version = "0.3.30"1157version = "0.3.32"
1158source = "registry+https://github.com/rust-lang/crates.io-index"1158source = "registry+https://github.com/rust-lang/crates.io-index"
1159checksum = "87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac"1159checksum = "e835b70203e41293343137df5c0664546da5745f82ec9b84d40be8336958447b"
1160dependencies = [1160dependencies = [
1161 "proc-macro2",1161 "proc-macro2",
1162 "quote",1162 "quote",
11651165
1166[[package]]1166[[package]]
1167name = "futures-sink"1167name = "futures-sink"
1168version = "0.3.30"1168version = "0.3.32"
1169source = "registry+https://github.com/rust-lang/crates.io-index"1169source = "registry+https://github.com/rust-lang/crates.io-index"
1170checksum = "9fb8e00e87438d937621c1c6269e53f536c14d3fbd6a042bb24879e57d474fb5"1170checksum = "c39754e157331b013978ec91992bde1ac089843443c49cbc7f46150b0fad0893"
11711171
1172[[package]]1172[[package]]
1173name = "futures-task"1173name = "futures-task"
1174version = "0.3.30"1174version = "0.3.32"
1175source = "registry+https://github.com/rust-lang/crates.io-index"1175source = "registry+https://github.com/rust-lang/crates.io-index"
1176checksum = "38d84fa142264698cdce1a9f9172cf383a0c82de1bddcf3092901442c4097004"1176checksum = "037711b3d59c33004d3856fbdc83b99d4ff37a24768fa1be9ce3538a1cde4393"
11771177
1178[[package]]1178[[package]]
1179name = "futures-util"1179name = "futures-util"
1180version = "0.3.30"1180version = "0.3.32"
1181source = "registry+https://github.com/rust-lang/crates.io-index"1181source = "registry+https://github.com/rust-lang/crates.io-index"
1182checksum = "3d6401deb83407ab3da39eba7e33987a73c3df0c82b4bb5813ee871c19c41d48"1182checksum = "389ca41296e6190b48053de0321d02a77f32f8a5d2461dd38762c0593805c6d6"
1183dependencies = [1183dependencies = [
1184 "futures-channel",1184 "futures-channel",
1185 "futures-core",1185 "futures-core",
1189 "futures-task",1189 "futures-task",
1190 "memchr",1190 "memchr",
1191 "pin-project-lite",1191 "pin-project-lite",
1192 "pin-utils",
1193 "slab",1192 "slab",
1194]1193]
11951194
1910source = "registry+https://github.com/rust-lang/crates.io-index"1909source = "registry+https://github.com/rust-lang/crates.io-index"
1911checksum = "bda66fc9667c18cb2758a2ac84d1167245054bcf85d5d1aaa6923f45801bdd02"1910checksum = "bda66fc9667c18cb2758a2ac84d1167245054bcf85d5d1aaa6923f45801bdd02"
1912
1913[[package]]
1914name = "pin-utils"
1915version = "0.1.0"
1916source = "registry+https://github.com/rust-lang/crates.io-index"
1917checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184"
19181911
1919[[package]]1912[[package]]
1920name = "piper"1913name = "piper"
1979 "clap",1972 "clap",
1980 "nix 0.29.0",1973 "nix 0.29.0",
1981 "pam-client",1974 "pam-client",
1982 "polkit-shared",1975 "remowt-polkit-shared",
1976 "remowt-ui-prompt",
1983 "tokio",1977 "tokio",
1984 "tracing",1978 "tracing",
1985 "tracing-subscriber",1979 "tracing-subscriber",
1986 "ui-prompt",
1987 "zbus",1980 "zbus",
1988 "zbus_polkit",1981 "zbus_polkit",
1989]1982]
1990
1991[[package]]
1992name = "polkit-shared"
1993version = "0.1.0"
1994dependencies = [
1995 "nix 0.29.0",
1996 "serde",
1997 "zbus",
1998]
19991983
2000[[package]]1984[[package]]
2001name = "polling"1985name = "polling"
2251 "futures",2235 "futures",
2252 "futures-util",2236 "futures-util",
2253 "nix 0.29.0",2237 "nix 0.29.0",
2254 "polkit-shared",
2255 "rand 0.8.5",2238 "rand 0.8.5",
2256 "remowt-link-shared",2239 "remowt-link-shared",
2257 "remowt-plugin",2240 "remowt-plugin",
2241 "remowt-polkit-shared",
2258 "remowt-pty",2242 "remowt-pty",
2243 "remowt-ui-prompt",
2259 "serde",2244 "serde",
2260 "tempfile",2245 "tempfile",
2261 "tokio",2246 "tokio",
2262 "tokio-util",2247 "tokio-util",
2263 "tracing",2248 "tracing",
2264 "tracing-subscriber",2249 "tracing-subscriber",
2265 "ui-prompt",
2266 "uuid",2250 "uuid",
2267 "zbus",2251 "zbus",
2268 "zbus_polkit",2252 "zbus_polkit",
2310 "remowt-fs",2294 "remowt-fs",
2311 "remowt-pty",2295 "remowt-pty",
2312 "remowt-systemd",2296 "remowt-systemd",
2297 "remowt-ui-prompt",
2313 "serde",2298 "serde",
2314 "serde_json",2299 "serde_json",
2315 "thiserror 1.0.63",2300 "thiserror 1.0.63",
2316 "tokio",2301 "tokio",
2317 "ui-prompt",
2318]2302]
23192303
2320[[package]]2304[[package]]
2347 "tracing-subscriber",2331 "tracing-subscriber",
2348]2332]
2333
2334[[package]]
2335name = "remowt-polkit-shared"
2336version = "0.1.0"
2337dependencies = [
2338 "nix 0.29.0",
2339 "serde",
2340 "zbus",
2341]
23492342
2350[[package]]2343[[package]]
2351name = "remowt-pty"2344name = "remowt-pty"
2375 "openssh",2368 "openssh",
2376 "remowt-client",2369 "remowt-client",
2377 "remowt-link-shared",2370 "remowt-link-shared",
2371 "remowt-ui-prompt",
2378 "russh",2372 "russh",
2379 "russh-config",2373 "russh-config",
2380 "serde",2374 "serde",
2385 "tokio-stream",2379 "tokio-stream",
2386 "tracing",2380 "tracing",
2387 "tracing-subscriber",2381 "tracing-subscriber",
2388 "ui-prompt",
2389 "uuid",2382 "uuid",
2390]2383]
23912384
2400 "zbus",2393 "zbus",
2401]2394]
2395
2396[[package]]
2397name = "remowt-ui-prompt"
2398version = "0.1.0"
2399dependencies = [
2400 "bifrostlink",
2401 "bifrostlink-macros",
2402 "serde",
2403 "serde_json",
2404 "thiserror 1.0.63",
2405 "tokio",
2406 "tracing",
2407 "zbus",
2408]
24022409
2403[[package]]2410[[package]]
2404name = "rfc6979"2411name = "rfc6979"
3217 "winapi",3224 "winapi",
3218]3225]
3219
3220[[package]]
3221name = "ui-prompt"
3222version = "0.1.0"
3223dependencies = [
3224 "bifrostlink",
3225 "bifrostlink-macros",
3226 "serde",
3227 "serde_json",
3228 "thiserror 1.0.63",
3229 "tokio",
3230 "tracing",
3231 "zbus",
3232]
32333226
3234[[package]]3227[[package]]
3235name = "unicode-ident"3228name = "unicode-ident"
modifiedCargo.tomldiffbeforeafterboth
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -1,17 +1,22 @@
 [workspace]
 members = ["cmds/*", "crates/*"]
 resolver = "2"
-package.version = "0.1.0"
 
+[workspace.package]
+version = "0.1.0"
+license = "MIT"
+edition = "2021"
+repository = "https://gitlab.delta.directory/iam/remowt"
+
 [workspace.dependencies]
-remowt-fs = { path = "crates/remowt-fs" }
-remowt-pty = { path = "crates/remowt-pty" }
-remowt-systemd = { path = "crates/remowt-systemd" }
-remowt-client = { path = "crates/remowt-client" }
-polkit-shared = { version = "0.1.0", path = "crates/polkit-shared" }
+remowt-fs = { version = "0.1.0", path = "crates/remowt-fs" }
+remowt-pty = { version = "0.1.0", path = "crates/remowt-pty" }
+remowt-systemd = { version = "0.1.0", path = "crates/remowt-systemd" }
+remowt-client = { version = "0.1.0", path = "crates/remowt-client" }
+remowt-polkit-shared = { version = "0.1.0", path = "crates/polkit-shared" }
 remowt-link-shared = { version = "0.1.0", path = "crates/remowt-link-shared" }
 remowt-plugin = { version = "0.1.0", path = "crates/remowt-plugin" }
-ui-prompt = { version = "0.1.0", path = "crates/ui-prompt" }
+remowt-ui-prompt = { version = "0.1.0", path = "crates/ui-prompt" }
 
 bifrostlink = "0.2.0"
 bifrostlink-macros = "0.2.0"
addedLICENSEdiffbeforeafterboth
--- /dev/null
+++ b/LICENSE
@@ -0,0 +1,21 @@
+MIT License
+
+Copyright (c) 2026 Lach
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
modifiedcmds/polkit-dbus-helper/Cargo.tomldiffbeforeafterboth
--- a/cmds/polkit-dbus-helper/Cargo.toml
+++ b/cmds/polkit-dbus-helper/Cargo.toml
@@ -1,17 +1,19 @@
 [package]
 name = "polkit-backend"
+description = "polkit/PAM D-Bus authentication backend for remowt"
 version.workspace = true
 edition = "2021"
+license.workspace = true
 
 [dependencies]
 anyhow.workspace = true
 clap = { workspace = true, features = ["derive"] }
 nix.workspace = true
 pam-client.workspace = true
-polkit-shared.workspace = true
+remowt-polkit-shared.workspace = true
 tokio = { workspace = true, features = ["macros", "rt", "rt-multi-thread"] }
 tracing.workspace = true
 tracing-subscriber.workspace = true
-ui-prompt.workspace = true
+remowt-ui-prompt.workspace = true
 zbus = { workspace = true, features = ["tokio"] }
 zbus_polkit = { workspace = true, features = ["tokio"] }
modifiedcmds/polkit-dbus-helper/src/main.rsdiffbeforeafterboth
--- a/cmds/polkit-dbus-helper/src/main.rs
+++ b/cmds/polkit-dbus-helper/src/main.rs
@@ -7,11 +7,11 @@
 use clap::Parser;
 use nix::unistd::{setuid, Uid, User};
 use pam_client::{Context, ConversationHandler, ErrorCode, Flag};
-use polkit_shared::BackendRequest;
+use remowt_polkit_shared::BackendRequest;
 use tokio::task::{block_in_place, spawn_blocking};
 use tracing::trace;
-use ui_prompt::dbus::DbusPrompterProxyBlocking;
-use ui_prompt::BlockingPrompter;
+use remowt_ui_prompt::dbus::DbusPrompterProxyBlocking;
+use remowt_ui_prompt::BlockingPrompter;
 use zbus::fdo;
 use zbus::message::Header;
 use zbus::zvariant::OwnedValue;
modifiedcmds/remowt-agent/Cargo.tomldiffbeforeafterboth
--- a/cmds/remowt-agent/Cargo.toml
+++ b/cmds/remowt-agent/Cargo.toml
@@ -1,7 +1,9 @@
 [package]
 name = "remowt-agent"
+description = "remowt on-host agent serving fs/pty/systemd endpoints over bifrostlink"
 version.workspace = true
 edition = "2021"
+license.workspace = true
 
 [dependencies]
 anyhow.workspace = true
@@ -11,7 +13,7 @@
 futures.workspace = true
 futures-util.workspace = true
 nix.workspace = true
-polkit-shared.workspace = true
+remowt-polkit-shared.workspace = true
 rand.workspace = true
 remowt-link-shared.workspace = true
 remowt-plugin.workspace = true
@@ -30,7 +32,7 @@
 tokio-util = { workspace = true, features = ["codec"] }
 tracing.workspace = true
 tracing-subscriber.workspace = true
-ui-prompt.workspace = true
+remowt-ui-prompt.workspace = true
 uuid = { workspace = true, features = ["v4"] }
 zbus = { workspace = true, features = ["tokio"] }
 zbus_polkit = { workspace = true, features = ["tokio"] }
modifiedcmds/remowt-agent/src/askpass.rsdiffbeforeafterboth
--- a/cmds/remowt-agent/src/askpass.rs
+++ b/cmds/remowt-agent/src/askpass.rs
@@ -2,9 +2,9 @@
 use std::io::Write as _;
 
 use anyhow::Context as _;
-use ui_prompt::bifrost::PromptEndpointsClient;
-use ui_prompt::dbus::{DbusPrompterInterface, DbusPrompterProxy};
-use ui_prompt::Source;
+use remowt_ui_prompt::bifrost::PromptEndpointsClient;
+use remowt_ui_prompt::dbus::{DbusPrompterInterface, DbusPrompterProxy};
+use remowt_ui_prompt::Source;
 use zbus::Connection;
 
 use remowt_link_shared::BifConfig;
modifiedcmds/remowt-agent/src/helper/dbus.rsdiffbeforeafterboth
--- a/cmds/remowt-agent/src/helper/dbus.rs
+++ b/cmds/remowt-agent/src/helper/dbus.rs
@@ -1,9 +1,9 @@
 use std::collections::HashMap;
 use std::marker::PhantomData;
 
-use polkit_shared::{BackendRequest, Identity};
-use ui_prompt::dbus::DbusPrompterInterface;
-use ui_prompt::Prompter;
+use remowt_polkit_shared::{BackendRequest, Identity};
+use remowt_ui_prompt::dbus::DbusPrompterInterface;
+use remowt_ui_prompt::Prompter;
 use zbus::Connection;
 
 use crate::PolkitHelperProxy;
modifiedcmds/remowt-agent/src/helper/mod.rsdiffbeforeafterboth
--- a/cmds/remowt-agent/src/helper/mod.rs
+++ b/cmds/remowt-agent/src/helper/mod.rs
@@ -1,6 +1,6 @@
 use futures::Future;
-use polkit_shared::Identity;
-use ui_prompt::Prompter;
+use remowt_polkit_shared::Identity;
+use remowt_ui_prompt::Prompter;
 
 mod dbus;
 mod protocol;
modifiedcmds/remowt-agent/src/helper/protocol.rsdiffbeforeafterboth
--- a/cmds/remowt-agent/src/helper/protocol.rs
+++ b/cmds/remowt-agent/src/helper/protocol.rs
@@ -6,7 +6,7 @@
 use tokio::io::{AsyncRead, AsyncWrite, AsyncWriteExt as _};
 use tokio::select;
 use tokio_util::codec::{FramedRead, LinesCodec};
-use ui_prompt::Prompter;
+use remowt_ui_prompt::Prompter;
 
 pub async fn run_conversation<R, W, P>(reader: R, mut writer: W, prompt: P) -> anyhow::Result<()>
 where
modifiedcmds/remowt-agent/src/helper/socket.rsdiffbeforeafterboth
--- a/cmds/remowt-agent/src/helper/socket.rs
+++ b/cmds/remowt-agent/src/helper/socket.rs
@@ -1,10 +1,10 @@
 use anyhow::{anyhow, bail};
 use nix::unistd::User;
-use polkit_shared::Identity;
+use remowt_polkit_shared::Identity;
+use remowt_ui_prompt::Prompter;
 use tokio::io::AsyncWriteExt as _;
 use tokio::net::UnixStream;
 use tracing::debug;
-use ui_prompt::Prompter;
 
 use super::protocol::run_conversation;
 use super::Helper;
modifiedcmds/remowt-agent/src/helper/suid.rsdiffbeforeafterboth
--- a/cmds/remowt-agent/src/helper/suid.rs
+++ b/cmds/remowt-agent/src/helper/suid.rs
@@ -2,10 +2,10 @@
 
 use anyhow::{anyhow, bail};
 use nix::unistd::User;
-use polkit_shared::Identity;
+use remowt_polkit_shared::Identity;
+use remowt_ui_prompt::Prompter;
 use tokio::io::AsyncWriteExt as _;
 use tokio::process::Command;
-use ui_prompt::Prompter;
 
 use super::protocol::run_conversation;
 use super::Helper;
modifiedcmds/remowt-agent/src/main.rsdiffbeforeafterboth
--- a/cmds/remowt-agent/src/main.rs
+++ b/cmds/remowt-agent/src/main.rs
@@ -11,16 +11,16 @@
 use bifrostlink_ports::stdio::from_stdio;
 use bifrostlink_ports::unix_socket::from_socket;
 use clap::Parser;
-use polkit_shared::{emphasize, BackendRequest, Identity, PidDisplay};
 use remowt_link_shared::editor::EditorEndpointsClient;
 use remowt_link_shared::{Address, BifConfig, Fs, Pty, Systemd};
+use remowt_polkit_shared::{emphasize, BackendRequest, Identity, PidDisplay};
+use remowt_ui_prompt::bifrost::PromptEndpointsClient;
+use remowt_ui_prompt::{PrependSourcePrompter, Prompter, Source};
 use tokio::fs;
 use tokio::net::UnixStream;
 use tokio::runtime::Builder;
 use tokio::task::AbortHandle;
 use tracing::{info, trace};
-use ui_prompt::bifrost::PromptEndpointsClient;
-use ui_prompt::{PrependSourcePrompter, Prompter, Source};
 use zbus::fdo;
 use zbus::zvariant::{OwnedValue, Str};
 use zbus::{interface, proxy, Connection};
modifiedcmds/remowt-ssh/Cargo.tomldiffbeforeafterboth
--- a/cmds/remowt-ssh/Cargo.toml
+++ b/cmds/remowt-ssh/Cargo.toml
@@ -1,7 +1,9 @@
 [package]
 name = "remowt-ssh"
+description = "SSH transport client for connecting to a remowt agent"
 version.workspace = true
 edition = "2021"
+license.workspace = true
 
 [dependencies]
 clap = { workspace = true, features = ["derive"] }
@@ -23,6 +25,6 @@
 thiserror = "2.0.18"
 serde_json.workspace = true
 serde.workspace = true
-ui-prompt.workspace = true
+remowt-ui-prompt.workspace = true
 russh.workspace = true
 russh-config.workspace = true
modifiedcmds/remowt-ssh/src/main.rsdiffbeforeafterboth
--- a/cmds/remowt-ssh/src/main.rs
+++ b/cmds/remowt-ssh/src/main.rs
@@ -17,9 +17,9 @@
 use tokio::io::{AsyncRead, ReadBuf};
 use tokio::signal::unix::{signal, SignalKind};
 use tracing::info;
-use ui_prompt::bifrost::serve_prompts;
-use ui_prompt::rofi::RofiPrompter;
-use ui_prompt::{PrependSourcePrompter, Source};
+use remowt_ui_prompt::bifrost::serve_prompts;
+use remowt_ui_prompt::rofi::RofiPrompter;
+use remowt_ui_prompt::{PrependSourcePrompter, Source};
 
 #[derive(Parser)]
 struct Opts {
modifiedcrates/polkit-shared/Cargo.tomldiffbeforeafterboth
--- a/crates/polkit-shared/Cargo.toml
+++ b/crates/polkit-shared/Cargo.toml
@@ -1,7 +1,9 @@
 [package]
-name = "polkit-shared"
+name = "remowt-polkit-shared"
+description = "Shared polkit/PAM types for remowt"
 version.workspace = true
 edition = "2021"
+license.workspace = true
 
 [dependencies]
 nix.workspace = true
modifiedcrates/remowt-client/Cargo.tomldiffbeforeafterboth
--- a/crates/remowt-client/Cargo.toml
+++ b/crates/remowt-client/Cargo.toml
@@ -3,6 +3,7 @@
 description = "russh-based client connection to a remowt agent"
 version.workspace = true
 edition = "2021"
+license.workspace = true
 
 [dependencies]
 anyhow.workspace = true
modifiedcrates/remowt-fs/Cargo.tomldiffbeforeafterboth
--- a/crates/remowt-fs/Cargo.toml
+++ b/crates/remowt-fs/Cargo.toml
@@ -3,6 +3,7 @@
 description = "Filesystem endpoint for remowt/bifrostlink"
 version.workspace = true
 edition = "2021"
+license.workspace = true
 
 [dependencies]
 bifrostlink.workspace = true
modifiedcrates/remowt-link-shared/Cargo.tomldiffbeforeafterboth
--- a/crates/remowt-link-shared/Cargo.toml
+++ b/crates/remowt-link-shared/Cargo.toml
@@ -1,7 +1,9 @@
 [package]
 name = "remowt-link-shared"
-version = "0.1.0"
+description = "Shared bifrostlink endpoint wiring for remowt"
+version.workspace = true
 edition = "2021"
+license.workspace = true
 
 [dependencies]
 bifrostlink.workspace = true
@@ -12,6 +14,6 @@
 tokio = { workspace = true, features = ["fs"] }
 remowt-fs.workspace = true
 remowt-systemd.workspace = true
-ui-prompt.workspace = true
+remowt-ui-prompt.workspace = true
 camino = { workspace = true, features = ["serde1"] }
 remowt-pty.workspace = true
modifiedcrates/remowt-link-shared/src/lib.rsdiffbeforeafterboth
--- a/crates/remowt-link-shared/src/lib.rs
+++ b/crates/remowt-link-shared/src/lib.rs
@@ -1,3 +1,5 @@
+use std::future::Future;
+
 use bifrostlink::declarative::endpoints;
 use bifrostlink::error::{ErrorT, ListenerForYourRequestHasBeenDeadError, ResponseError};
 use bifrostlink::notification;
@@ -30,7 +32,7 @@
 }
 
 pub trait Elevator: Send + Sync {
-	fn elevate(&self) -> impl std::future::Future<Output = Result<(), ElevateError>> + Send;
+	fn elevate(&self) -> impl Future<Output = Result<(), ElevateError>> + Send;
 }
 
 pub struct ElevateEndpoints<E>(pub E);
@@ -51,7 +53,7 @@
 	Response(String),
 
 	#[error(transparent)]
-	Ui(#[from] ui_prompt::Error),
+	Ui(#[from] remowt_ui_prompt::Error),
 }
 
 impl From<ListenerForYourRequestHasBeenDeadError> for Error {
modifiedcrates/remowt-nix-daemon/Cargo.tomldiffbeforeafterboth
--- a/crates/remowt-nix-daemon/Cargo.toml
+++ b/crates/remowt-nix-daemon/Cargo.toml
@@ -3,6 +3,7 @@
 description = "Nix daemon proxy"
 version.workspace = true
 edition = "2021"
+license.workspace = true
 
 [dependencies]
 anyhow.workspace = true
modifiedcrates/remowt-plugin/Cargo.tomldiffbeforeafterboth
--- a/crates/remowt-plugin/Cargo.toml
+++ b/crates/remowt-plugin/Cargo.toml
@@ -1,7 +1,9 @@
 [package]
 name = "remowt-plugin"
+description = "Plugin host and protocol for remowt agents"
 version.workspace = true
 edition = "2021"
+license.workspace = true
 
 [dependencies]
 anyhow.workspace = true
modifiedcrates/remowt-pty/Cargo.tomldiffbeforeafterboth
--- a/crates/remowt-pty/Cargo.toml
+++ b/crates/remowt-pty/Cargo.toml
@@ -3,6 +3,7 @@
 description = "PTY/shell endpoint for remowt"
 version.workspace = true
 edition = "2021"
+license.workspace = true
 
 [dependencies]
 bifrostlink.workspace = true
modifiedcrates/remowt-systemd/Cargo.tomldiffbeforeafterboth
--- a/crates/remowt-systemd/Cargo.toml
+++ b/crates/remowt-systemd/Cargo.toml
@@ -3,6 +3,7 @@
 description = "systemd control endpoint for remowt/bifrostlink (over D-Bus)"
 version.workspace = true
 edition = "2021"
+license.workspace = true
 
 [dependencies]
 bifrostlink.workspace = true
modifiedcrates/ui-prompt/Cargo.tomldiffbeforeafterboth
--- a/crates/ui-prompt/Cargo.toml
+++ b/crates/ui-prompt/Cargo.toml
@@ -1,7 +1,9 @@
 [package]
-name = "ui-prompt"
+name = "remowt-ui-prompt"
+description = "Interactive UI prompt endpoint for remowt (D-Bus)"
 version.workspace = true
 edition = "2021"
+license.workspace = true
 
 [dependencies]
 bifrostlink.workspace = true