Skip to content

feat: atuin hex support $SHELL#3327

Draft
xav-ie wants to merge 2 commits intoatuinsh:mainfrom
xav-ie:main
Draft

feat: atuin hex support $SHELL#3327
xav-ie wants to merge 2 commits intoatuinsh:mainfrom
xav-ie:main

Conversation

@xav-ie
Copy link
Copy Markdown
Contributor

@xav-ie xav-ie commented Mar 22, 2026

Greetings, I am open to an alternative solution like subcommand support or something else which I am happy to accomodate.

Fixes #3326.

Checks

  • I am happy for maintainers to push small adjustments to this PR, to speed up the review cycle
  • I have checked that there are no existing pull requests for the same thing

Instead of using login shell, prefer current $SHELL.
@xav-ie xav-ie marked this pull request as ready for review March 22, 2026 21:40
@greptile-apps
Copy link
Copy Markdown
Contributor

greptile-apps bot commented Mar 22, 2026

Greptile Summary

Small fix that prefers $SHELL over CommandBuilder::new_default_prog() when spawning the user's shell in atuin hex, with a fallback to the original behavior when $SHELL is unset.

  • The approach is correct and idiomatic for Unix systems; Windows users unaffected since $SHELL is typically unset there.
  • One minor edge case: $SHELL="" (set but empty) reaches CommandBuilder::new("") and fails at spawn with an opaque error rather than falling back gracefully.

Important Files Changed

Filename Overview
crates/atuin-hex/src/lib.rs Uses $SHELL env var to spawn the user's preferred shell instead of always relying on new_default_prog(). One minor edge case: if $SHELL is set to an empty string, CommandBuilder::new("") will be called and fail at spawn time.

Reviews (1): Last reviewed commit: "feat(atuin hex): allow subshell spawn to..." | Re-trigger Greptile

@BinaryMuse BinaryMuse added the hex Relating to the Atuin Hex PTY proxy label Mar 22, 2026
Simply fallback to login shell.
Copy link
Copy Markdown
Member

@ellie ellie left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you for the work here! I'm not sure this makes sense to override it - typically, $SHELL is set to the login shell, and while it could make sense to allow the user to override it to change what hex launches, it may then affect anything running within hex that might expect that to remain true

In this case, I think we'd be better off allowing the user to provide --shell to hex, and pass in a path to launch

@xav-ie
Copy link
Copy Markdown
Contributor Author

xav-ie commented Mar 24, 2026

That sounds good to me. Let me try to update this PR

@xav-ie xav-ie marked this pull request as draft March 24, 2026 18:16
@limonkufu
Copy link
Copy Markdown

Hey any progress on this or a workaround for nushell?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

hex Relating to the Atuin Hex PTY proxy

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Bug]: atuin hex ignores $SHELL and there is no way to change it

4 participants