Earlier quoted context omitted.
Maybe. It's open to interpretation, which is the problem. If the author of Atuin maybe sees this: While this not (yet?) a commercial project, it is highly problematic to advertise your product like this. You cannot just put the logos of companies on your front page without permission, even with that carefully worded caveat in front. At the very least, this can lead to a C&D.
A problem for whom? How do you know he didn't get permission? I work/ed for some of the companies on the list and endorse his web page. The turtle logo is cute, seems fine to me.
Atuin – Magical shell history
91–100 of 118 posts
Re: Atuin – Magical shell history
#92Re: Atuin – Magical shell history
#93When I start a new shell, it starts a new history with a generated meaningful name. That is good for one-off things and experiments. History is still always preserved. Nothing gets lost.
Most of my work is done in (usually long-lived) manually named sessions, that write their history to a file named like the session. I can restart old sessions any time.
Everything is in plain text files in ~/.history, which has pros and cons. One advantage is that I can archive older history files very easily. I often ripgrep through my whole history as well, though I occasionally long for it being in a proper database and content being more structured.
I can share my history sessions and use them from multiple shells simultaneously, but practically never do that, so it is not an important use case for me.
Would Atuin bring any benefit for me?
Re: Atuin – Magical shell history
#94I love how it looks and I love some of the fancy features. But above all, it's a solution to two real problems I had. I work in several terminals. Sometimes tabs or Windows in my emulator, sometimes screen or tmux. And all those sessions would overwrite eachothers history. I lost many actual important history entries that way. And I (almost) ran many wrong commands, expecting another one to be my last entry. Arrow-up…
- For your 1st issue, you can setup bash to append commands rather than overwrite them. Here the part of my .bashrc about history: # append rather than overwrite shopt -s histappend # attempts to save all lines of a multiple-line command in the same history entry shopt -s cmdhist # with cmdhist, saved with embedded newlines rather than semicolon separators shopt -s lithist HISTCONTROL=ignoreboth HISTSIZE=10000 HISTFI…
I have far more confidence in atuin handling race-conditions and upserts than in my bash-spagetti not doing that.
Also, fzf, has a better append-history, but even there I managed to get it into some race-condition now and again. I presume it has to do with when the append happens: after the command ran and finished vs when I hit enter? Again, I don't know the details, and frankly, don't really want to know them either, if I can just lean on a tool by people who truly understand the problem.
Re: Atuin – Magical shell history
#95Re: Atuin – Magical shell history
#96Re: Atuin – Magical shell history
#97I love how it looks and I love some of the fancy features. But above all, it's a solution to two real problems I had. I work in several terminals. Sometimes tabs or Windows in my emulator, sometimes screen or tmux. And all those sessions would overwrite eachothers history. I lost many actual important history entries that way. And I (almost) ran many wrong commands, expecting another one to be my last entry. Arrow-up…
- For your 1st issue, you can setup bash to append commands rather than overwrite them. Here the part of my .bashrc about history: # append rather than overwrite shopt -s histappend # attempts to save all lines of a multiple-line command in the same history entry shopt -s cmdhist # with cmdhist, saved with embedded newlines rather than semicolon separators shopt -s lithist HISTCONTROL=ignoreboth HISTSIZE=10000 HISTFI…
Good, but even better (IMHO) is to write one history file for each terminal window, shell and level as in
export HISTFILE=$HOME/.history/${TTY##*/}.$SHLVL
And then I tell zsh to add timestamps setopt APPENDHISTORY # don't overwrite HISTFILE
setopt EXTENDEDHISTORY # add timestamps to HISTFILE
setopt HISTIGNORESPACE # aka setopt -g
set HIST_FIND_NO_DUPS # don't show duplicates on ctrl-RNow I can grep my history and, based on other work notes I take, can even limit my search by date/time if needed.
Re: Atuin – Magical shell history
#98Really impressed with the self-host setup. I've found these are usually a bit of an afterthought, involving a bunch of service dependencies and an arcane config process. Postgres 14 and a few tweaks to a TOML file and you're running. Not wild about the password-only Postgres connection though.
>> A valid PostgreSQL URI, for saving history (default: false)
Looks like you are free to specify socket or ssl if you prefer?
I was recently shocked to learn that the postgres standard "sslmode=require" only check host name vs cert - not if the cert is trusted (ie meaningless).
https://www.postgresql.org/docs/current/libpq-ssl.html#LIBQ-...
Re: Atuin – Magical shell history
#99Can it do the magic of deduplication, cleaning failed commands with typos so your history isn't cluttered, and use frecency for autocompletions?
The reason it saves every command is so that it can produce statistics, for example exit code distribution and runs per day etc.
Re: Atuin – Magical shell history
#100Been using atuin for a couple months now on Windows in bash. Its a very nice tool however I've been experiencing a huge lag sometimes after typing just one character. Intuition says there could be the database performance is lacking or Im missing some configuration. Anyone else experiencing something similar?