hstr

bash and zsh shell history suggest box - easily view, navigate, search and manage your command history.

View on GitHub

Installation

Install:

Build:

Tarball:

Ubuntu

Install HSTR on Ubuntu using one-liner:

sudo add-apt-repository ppa:ultradvorka/ppa && sudo apt-get update && sudo apt-get install hstr && hstr --show-configuration >> ~/.bashrc && . ~/.bashrc

… or step by step:

sudo add-apt-repository ppa:ultradvorka/ppa
sudo apt-get update
sudo apt-get install hstr

Configure HSTR and check its man page.

Debian/Mint

Install HSTR from PPA. Add my PPA, trust GPG key and install HSTR:

# add PPA to APT sources:
sudo echo -e "\ndeb https://www.mindforger.com/debian stretch main" >> /etc/apt/sources.list

# import PPA's GPG key
wget -qO - https://www.mindforger.com/gpgpubkey.txt | sudo apt-key add -

# update sources
sudo apt update

# install MindForger
sudo apt install hstr

Configure HSTR and check its man page.


Alternatively you can download and install .deb archive from GitHub releases section of the project:

wget -O hstr.deb https://github.com/dvorka/hstr/releases/download/2.3/hstr_<major>.<minor>.<revision>-1_amd64.deb

# dependencies:
apt-get install libncursesw5 libtinfo5

sudo dpkg -i hstr.deb

Fedora/RHEL/CentOS/Scientific

Install HSTR on Fedora, RHEL, CentOS or Scientific Linux:

sudo dnf install hstr

… or:

sudo yum install hstr

Configure HSTR and check its man page.


If you want to make sure you have the latest version, then download .rpm archive from GitHub releases and install it:

sudo dnf install ./hstr-<major>.<minor>.<revision>-2.x86_64.rpm

openSUSE

To install HSTR on openSUSE, please check https://software.opensuse.org/package/hstr first. You can install HSTR as shown below (just choose repository you like):

zypper addrepo https://download.opensuse.org/repositories/home:lemmy04/openSUSE_Leap_15.1/home:lemmy04.repo
zypper refresh
zypper install hstr

Configure HSTR and check its man page.

Gentoo

To install HSTR on Gentoo run (HSTR has been added to Portage):

emerge app-shells/hstr

Configure HSTR and check its man page.

Arch/Manjaro Linux

To install HSTR on Arch or Manjaro Linux download the latest distribution from GitHub releases.

Use PKGBUILD in the root of the distribution to build package using makepkg.

To install HSTR from the Arch User Repository (AUR) run yaourt -S hstr-git in command line.

Milis Linux

To install HSTR on Milis Linux run the following commands as root:

mps kur hstr

Configure HSTR and check its man page.

Haiku OS

To install HSTR on Haiku OS use Haiku Depot:

Configure HSTR and check its man page.

macOS

Install HSTR on macOS using Homebrew (formula):

brew install hstr

Configure HSTR and check its man page.

nix package manager

To install HSTR using the nix package manager e.g. on NixOS you can use the nix derivation for HSTR:

nix-env -i hstr

Configure HSTR and check its man page.

Guix package manager

To install HSTR in GuixSD or using the standalone Guix package manager you can install the hstr package, e.g.

guix package -i hstr

Configure HSTR and check its man page.

Build

Build HSTR from source code.

Build on any Linux distro

Clone Git repository:

git clone https://github.com/dvorka/hstr.git

Create build files using:

cd ./build/tarball && ./tarball-automake.sh && cd ../..

Build and install HSTR using:

./configure && make && make install

Configure HSTR and check its man page.

Build snap

To build snap for HSTR first clone Git repository:

git clone https://github.com/dvorka/hstr.git

Make sure that you can build HSTR from source code as described in a “Build on …” section for your distribution.

Install snapcraft and build snap by running snapcraft in the root of Git repository:

$ ls ./snap
  snapcraft.yaml
$ snapcraft
  ...

Find hstr_0+git..._amd64.snap in the current directory.

Build on Ubuntu

To build HSTR on Ubuntu clone Git repository:

git clone https://github.com/dvorka/hstr.git

Install dependencies:

sudo apt install automake gcc make libncursesw5-dev libreadline-dev

Create build files using:

cd ./build/tarball && ./tarball-automake.sh && cd ../..

Build and install HSTR using:

./configure && make && make install

Configure HSTR and check its man page.

Build on Debian

To build HSTR on Debian clone Git repository:

git clone https://github.com/dvorka/hstr.git

Install dependencies:

sudo apt install autotools gcc make libncursesw5-dev libreadline-dev

Create build files using:

cd ./build/tarball && ./tarball-automake.sh && cd ../..

Build and install HSTR using:

./configure && make && make install

Configure HSTR and check its man page.

Build on Fedora

To build HSTR on Fedora clone Git repository:

git clone https://github.com/dvorka/hstr.git

Install dependencies:

sudo dnf install autotools ncurses-devel readline-devel

Create build files using:

cd ./build/tarball && ./tarball-automake.sh && cd ../..

Build and install HSTR using:

./configure && make && make install

Configure HSTR and check its man page.

Build on WSL

To build HSTR on Windows Subsystem for Linux (WSL) clone Git repository:

git clone https://github.com/dvorka/hstr.git

Install dependencies:

sudo apt install automake gcc make libncursesw5-dev libreadline-dev

Create build files using:

cd ./build/tarball && ./tarball-automake.sh && cd ../..

Build and install hstr using:

./configure && make && make install

It’s important to finish installation by configuration of HSTR binding which ensures propagation of chosen command to the prompt:

hstr --show-configuration >> ~/.bashrc
. ~/.bashrc

Make sure to run HSTR using Ctrl-r (or hstrwsl) - otherwise commands will not appear in prompt.

Configure HSTR and check its man page.

Build on Cygwin

To build HSTR on Cygwin clone Git repository:

git clone https://github.com/dvorka/hstr.git

Create build files using:

cd ./build/tarball && ./tarball-automake.sh && cd ../..

Build and install HSTR using:

./configure && make && make install

It’s important to finish installation by configuration of HSTR binding which ensures propagation of chosen command to the prompt:

hstr --show-configuration >> ~/.bashrc
. ~/.bashrc

Make sure to run HSTR using Ctrl-r (or hstrcygwin) - otherwise commands will not appear in prompt.

Configure HSTR and check its man page.

Build on macOS

HSTR can be built on macOS either using MacPorts or Homebrew.


To build HSTR using MacPorts install readline and ncurses:

port install readline
port install ncurses

Check portfile either on macports.com or GitHub:

autoreconf -fvi
./configure CFLAGS=-I/opt/local/include/ LDFLAGS=-L/opt/local/lib
make

Configure HSTR and check its man page.


To build HSTR using Homebrew:

autoreconf -fvi
./configure CFLAGS=-I$(brew --prefix)/opt/readline/include LDFLAGS=-L$(brew --prefix)/opt/readline/lib
make

Configure HSTR and check its man page.

Tarball

Download and install HSTR tarball.

Build and Install Tarball

Download latest tarball from GitHub releases section. Expand the archive and install HSTR using:

./configure && make && make install

Configure HSTR and check its man page.