* cache aliases when set locally
* handle rebuild on sync and tidy things a bit
* support all shells except nu
* make clippy happy
* fmt
* fix for no features
* fix: install script echo
* fix(nu): Update atuin.nu to resolve 0.92 deprecation (#1913)
* feat(install): Update install.sh to support KDE Neon (#1908)
KDE Neon is based on Ubuntu 22.04, but the OS List for Ubuntu-based distros does not have the string "neon". This commit adds it.
* chore(deps): bump lukemathwalker/cargo-chef (#1901)
Bumps lukemathwalker/cargo-chef from latest-rust-1.76.0-buster to latest-rust-1.77.0-buster.
---
updated-dependencies:
- dependency-name: lukemathwalker/cargo-chef
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* chore(deps): flake.lock: Update (#1910)
Flake lock file updates:
• Updated input 'flake-utils':
'github:numtide/flake-utils/d465f4819400de7c8d874d50b982301f28a84605' (2024-02-28)
→ 'github:numtide/flake-utils/b1d9ab70662946ef0850d488da1c9019f3a9752a' (2024-03-11)
• Updated input 'nixpkgs':
'github:NixOS/nixpkgs/ebe6e807793e7c9cc59cf81225fdee1a03413811' (2024-02-29)
→ 'github:NixOS/nixpkgs/807c549feabce7eddbf259dbdcec9e0600a0660d' (2024-03-29)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
* fix(doctor): detect preexec plugin using env ATUIN_PREEXEC_BACKEND (#1856)
* refactor(doctor): update func names and desc to match current impl
* fix(doctor): use environment variable to detect plugin if possible
In this patch, if the plugin provides an environment variable, we use
the environment variable to test the existence of the plugin. When an
environment variable is not available, we continue to use the mock
interactive session by "shell -ic command". We also test
shell-specific plugins only in the corresponding shells. An
additional test can be performed by a custom function for each plugin.
* chore(deps): bump sysinfo from 0.30.6 to 0.30.7 (#1888)
Bumps [sysinfo](https://github.com/GuillaumeGomez/sysinfo) from 0.30.6 to 0.30.7.
- [Changelog](https://github.com/GuillaumeGomez/sysinfo/blob/master/CHANGELOG.md)
- [Commits](https://github.com/GuillaumeGomez/sysinfo/compare/v0.30.6...v0.30.7)
---
updated-dependencies:
- dependency-name: sysinfo
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
---------
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: Ivan Toriya <toriya@precisdigital.com>
Co-authored-by: Wind <WindSoilder@outlook.com>
Co-authored-by: Diego Carrasco Gubernatis <557703+dacog@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: Koichi Murase <myoga.murase@gmail.com>
* refactor(doctor): update func names and desc to match current impl
* fix(doctor): use environment variable to detect plugin if possible
In this patch, if the plugin provides an environment variable, we use
the environment variable to test the existence of the plugin. When an
environment variable is not available, we continue to use the mock
interactive session by "shell -ic command". We also test
shell-specific plugins only in the corresponding shells. An
additional test can be performed by a custom function for each plugin.
In the conventional terminal protocol, Backspace can be transmitted as
the code \x08 or \x7F depending on the terminal. Ctrl+Backspace can
also be transmitted as the code \x08 or \x7F. These overlap with the
code for Ctrl+H and Ctrl+?. The crossterm library does not try to
handle these terminal dependencies (probably because it is hard to
resolve it perfectly). To provide a consistent experience among
terminals, we assign to C-h and C-? the same feature as backspace.
Note: The crossterm seems to produce Ctrl+Backspace only in the
extended keyboard protocol, so we can trust crossterm particularly for
Ctrl+Backspace. For this reason, we keep the feature of removing a
backward word by Ctrl+Backspace.
https://github.com/atuinsh/atuin/issues/1753
I also tried getting FreeBSD to work, but didn't get too far sadly. I don't
have the time to debug this so I just put in a comment for now. (With my
changes, Atuin works great on FreeBSD as well.)
Hi!
I've been trying to get atuin set up on the illumos machine I built for work
@oxidecomputer, and I ran into a few issues which are fixed here:
1. The `clipboard` feature was only supported on Windows, Mac and Linux. I've
added a platform gate for that.
2. The `atomic-write-file` crate needed an update to the version of `nix` --
that is included.
3. As part of this, I found a [security
bug](https://rustsec.org/advisories/RUSTSEC-2024-0020.html) in the whoami
crate. The bug has been fixed upstream and I've included it.
whoami 1.5.0 deprecates the `hostname` function, which produced some fresh
warnings. While fixing the warnings I also took the liberty of doing some
code rearrangement, adding a few functions that wrap some common operations. I
didn't really know where to put those functions, so I created a new `utils`
module for it. If you have a better place to put them, I'm happy to change
the PR.
Feel free to make any changes to this PR if you like before landing it, or to
ask for review.
As a followup I'm also happy to set up a cross-compile build for atuin on
illumos. It's a bit harder to run tests in CI for illumos at the moment, but
I'm trying to get a project started up to make that happen in the future as
well.