There are a few ways to install cicada into your system.
https://pkgs.alpinelinux.org/package/edge/testing/x86_64/cicada
$ apk add cicada -X https://dl-cdn.alpinelinux.org/alpine/edge/testing/
Note:
makepkg
will install rust system and other packages.
$ git clone https://aur.archlinux.org/cicada-shell.git
$ cd cicada-shell/
$ makepkg -si
If rust installed on your system, you can install cicada with:
$ cargo install -f cicada
Optionally, you can move the binary downloaded to a common place:
$ cp ~/.cargo/bin/cicada /usr/local/bin/cicada
First download the latest right binary for your system from Release Page.
Move it to right place and add runable permisson:
# on Mac
$ mv cicada-mac-arm64 /usr/local/bin/cicada
# on Linux
$ mv cicada-linux-x86_64 /usr/local/bin/cicada
$ chmod +x /usr/local/bin/cicada
If you encounter error when running the binary downloaded:
... libc.so.6: version `GLIBC_2.31' not found (required by ./cicada)
That indicate the GLIBC version on your system is too old. Please try install cicada with other options.
Note: Rust environment (Rust stable or above) is required.
$ git clone https://github.com/mitnk/cicada
$ cd cicada
# try cicada without installing
$ make
$ make install
cicada will be installed under /usr/local/bin
I found on newer MacOS, a reboot is needed after generating a new binary. This may be an bug/feature of the OS security things.
WARNING: Please test cicada on your system before setting it as default shell.
In file /etc/shells
, append the following line:
/usr/local/bin/cicada
Then run
$ chsh -s /usr/local/bin/cicada
Next time you open a terminal window, cicada shell will be the default one.
For GNOME Terminal on Ubuntu or other systems, you may need reboot after
running chsh
. If failed, another way to config terminal to use cicada is
following:
Preferences --> Profiles (Unnamed) --> Tab Command:
- [checked] Run command as a login shell
- [checked] Run a custom command instead of my shell:
- Custom command:
cicada -l
- Custom command:
For better terminal use experience, I have following in my ~/.inputrc
file:
"\e[1;3D": backward-word
"\e[1;3C": forward-word
"\e[1;9D": backward-word
"\e[1;9C": forward-word
"\e[A": history-search-backward
"\e[B": history-search-forward