aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Zeller <mike@mikezeller.net>2026-04-14 17:16:36 -0400
committerGitHub <noreply@github.com>2026-04-14 21:16:36 +0000
commita811149da42f7c5bff9b2adf44c75d249a9c032a (patch)
tree17b5b89f1a537b68af5f9de5d75157d0d26240cc
parentfeat: Add OCI standard labels to Dockerfile (#3412) (diff)
downloadatuin-a811149da42f7c5bff9b2adf44c75d249a9c032a.zip
feat: Enable atuin hex for illumos (#3413)
This bumps the `portable-pty` dep which itself has a dependency on a newer termios that knows about illumos. Unless this was pinned for a particular reason I think this is fine. With this dep bumped we can enable `atuin hex` on illumos. ## Checks - [x] I am happy for maintainers to push small adjustments to this PR, to speed up the review cycle - [x] I have checked that there are no existing pull requests for the same thing
-rw-r--r--Cargo.lock98
-rw-r--r--crates/atuin-hex/Cargo.toml4
-rw-r--r--crates/atuin-hex/src/lib.rs6
3 files changed, 27 insertions, 81 deletions
diff --git a/Cargo.lock b/Cargo.lock
index b9712630..2b5d4972 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -795,6 +795,12 @@ checksum = "9330f8b2ff13f34540b44e946ef35111825727b38d33286ef986142615121801"
[[package]]
name = "cfg_aliases"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fd16c4719339c4530435d38e511904438d07cce7950afa3718a84ac36c10e89e"
+
+[[package]]
+name = "cfg_aliases"
version = "0.2.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "613afe47fcd5fac7ccf1db93babcb082c5994d996f20b8b159f2ad1658eb5724"
@@ -2348,15 +2354,6 @@ dependencies = [
]
[[package]]
-name = "ioctl-rs"
-version = "0.1.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f7970510895cee30b3e9128319f2cefd4bde883a39f38baa279567ba3a7eb97d"
-dependencies = [
- "libc",
-]
-
-[[package]]
name = "ipnet"
version = "2.12.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2701,15 +2698,6 @@ checksum = "38d1115007560874e373613744c6fba374c17688327a71c1476d1a5954cc857b"
[[package]]
name = "memoffset"
-version = "0.6.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5aa361d4faea93603064a027415f07bd8e1d5c88c9fbf68bf56a285428fd79ce"
-dependencies = [
- "autocfg",
-]
-
-[[package]]
-name = "memoffset"
version = "0.9.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "488016bfae457b036d996092f6cb448677611ce4449e970ceaf42695203f218a"
@@ -2827,16 +2815,14 @@ checksum = "1d87ecb2933e8aeadb3e3a02b828fed80a7528047e68b4f424523a0981a3a084"
[[package]]
name = "nix"
-version = "0.25.1"
+version = "0.28.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f346ff70e7dbfd675fe90590b92d59ef2de15a8779ae305ebcbfd3f0caf59be4"
+checksum = "ab2156c4fce2f8df6c499cc1c763e4394b7482525bf2a9701c9d79d215f519e4"
dependencies = [
- "autocfg",
- "bitflags 1.3.2",
+ "bitflags 2.11.0",
"cfg-if",
+ "cfg_aliases 0.1.1",
"libc",
- "memoffset 0.6.5",
- "pin-utils",
]
[[package]]
@@ -2847,9 +2833,9 @@ checksum = "71e2746dc3a24dd78b3cfcb7be93368c6de9963d30f43a6a73998a9cf4b17b46"
dependencies = [
"bitflags 2.11.0",
"cfg-if",
- "cfg_aliases",
+ "cfg_aliases 0.2.1",
"libc",
- "memoffset 0.9.1",
+ "memoffset",
]
[[package]]
@@ -3426,9 +3412,9 @@ checksum = "c33a9471896f1c69cecef8d20cbe2f7accd12527ce60845ff44c153bb2a21b49"
[[package]]
name = "portable-pty"
-version = "0.8.1"
+version = "0.9.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "806ee80c2a03dbe1a9fb9534f8d19e4c0546b790cde8fd1fea9d6390644cb0be"
+checksum = "b4a596a2b3d2752d94f51fac2d4a96737b8705dddd311a32b9af47211f08671e"
dependencies = [
"anyhow",
"bitflags 1.3.2",
@@ -3437,8 +3423,8 @@ dependencies = [
"lazy_static",
"libc",
"log",
- "nix 0.25.1",
- "serial",
+ "nix 0.28.0",
+ "serial2",
"shared_library",
"shell-words",
"winapi",
@@ -4402,45 +4388,14 @@ dependencies = [
]
[[package]]
-name = "serial"
-version = "0.4.0"
+name = "serial2"
+version = "0.2.36"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a1237a96570fc377c13baa1b88c7589ab66edced652e43ffb17088f003db3e86"
-dependencies = [
- "serial-core",
- "serial-unix",
- "serial-windows",
-]
-
-[[package]]
-name = "serial-core"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3f46209b345401737ae2125fe5b19a77acce90cd53e1658cda928e4fe9a64581"
-dependencies = [
- "libc",
-]
-
-[[package]]
-name = "serial-unix"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f03fbca4c9d866e24a459cbca71283f545a37f8e3e002ad8c70593871453cab7"
-dependencies = [
- "ioctl-rs",
- "libc",
- "serial-core",
- "termios 0.2.2",
-]
-
-[[package]]
-name = "serial-windows"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "15c6d3b776267a75d31bbdfd5d36c0ca051251caafc285827052bc53bcdc8162"
+checksum = "fcdbc46aa3882ec3d48ec2b5abcb4f0d863a13d7599265f3faa6d851f23c12f3"
dependencies = [
+ "cfg-if",
"libc",
- "serial-core",
+ "winapi",
]
[[package]]
@@ -4967,15 +4922,6 @@ dependencies = [
[[package]]
name = "termios"
-version = "0.2.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d5d9cf598a6d7ce700a4e6a9199da127e6819a61e64b68609683cc9a01b5683a"
-dependencies = [
- "libc",
-]
-
-[[package]]
-name = "termios"
version = "0.3.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "411c5bf740737c7918b8b1fe232dca4dc9f8e754b8ad5e20966814001ed0ac6b"
@@ -5012,7 +4958,7 @@ dependencies = [
"signal-hook",
"siphasher",
"terminfo",
- "termios 0.3.3",
+ "termios",
"thiserror 1.0.69",
"ucd-trie",
"unicode-segmentation",
diff --git a/crates/atuin-hex/Cargo.toml b/crates/atuin-hex/Cargo.toml
index 9625f67d..85ed8f14 100644
--- a/crates/atuin-hex/Cargo.toml
+++ b/crates/atuin-hex/Cargo.toml
@@ -13,9 +13,9 @@ repository = { workspace = true }
[dependencies]
clap = { workspace = true }
-[target.'cfg(all(unix, not(target_os = "illumos")))'.dependencies]
+# [target.'cfg(all(unix, not(target_os = "illumos")))'.dependencies]
crossterm = { workspace = true }
eyre = { workspace = true }
-portable-pty = "0.8"
+portable-pty = "0.9"
signal-hook = "0.3"
vt100 = { workspace = true }
diff --git a/crates/atuin-hex/src/lib.rs b/crates/atuin-hex/src/lib.rs
index f449a386..75ec895f 100644
--- a/crates/atuin-hex/src/lib.rs
+++ b/crates/atuin-hex/src/lib.rs
@@ -151,15 +151,15 @@ end
}
}
-#[cfg(any(not(unix), target_os = "illumos"))]
+#[cfg(not(unix))]
mod app {
pub(crate) fn main() {
- eprintln!("atuin hex currently supports unix platforms excluding illumos");
+ eprintln!("atuin hex currently supports unix platforms");
std::process::exit(1);
}
}
-#[cfg(all(unix, not(target_os = "illumos")))]
+#[cfg(unix)]
mod app {
use std::io::{Read, Write};
use std::os::unix::net::UnixListener;