mirror of
https://github.com/FliegendeWurst/tmux-thumbs.git
synced 2024-11-24 05:45:00 +00:00
Let the user choose the installation method
This commit is contained in:
parent
7e553af99f
commit
b56e9f1099
30
README.md
30
README.md
@ -37,13 +37,24 @@ more with `--regexp` parameter.
|
|||||||
|
|
||||||
[![demo](https://asciinema.org/a/232775.png?ts=1)](https://asciinema.org/a/232775?autoplay=1)
|
[![demo](https://asciinema.org/a/232775.png?ts=1)](https://asciinema.org/a/232775?autoplay=1)
|
||||||
|
|
||||||
## Prerequisites
|
## Using Tmux Plugin Manager
|
||||||
|
|
||||||
|
You can add this line to your list of [TPM](https://github.com/tmux-plugins/tpm) plugins in `.tmux.conf`:
|
||||||
|
|
||||||
|
```
|
||||||
|
set -g @plugin 'fcsonline/tmux-thumbs'
|
||||||
|
|
||||||
|
run-shell ~/.tmux/plugins/tmux-thumbs/tmux-thumbs.tmux
|
||||||
|
```
|
||||||
|
|
||||||
|
To be able to install the plugin just hit <kbd>prefix</kbd> + <kbd>I</kbd>. You should now be able to use
|
||||||
|
the plugin!
|
||||||
|
|
||||||
|
## Installation checking out the source code
|
||||||
|
|
||||||
`tmux-thumbs` is written in Rust. You will need `rustc` version 1.35.0 or higher. The
|
`tmux-thumbs` is written in Rust. You will need `rustc` version 1.35.0 or higher. The
|
||||||
recommended way to install Rust is from the official [download page](https://rustup.rs/).
|
recommended way to install Rust is from the official [download page](https://rustup.rs/).
|
||||||
|
|
||||||
## Tmux integration
|
|
||||||
|
|
||||||
Clone the repo:
|
Clone the repo:
|
||||||
|
|
||||||
```
|
```
|
||||||
@ -69,19 +80,6 @@ Reload TMUX conf by running:
|
|||||||
tmux source-file ~/.tmux.conf
|
tmux source-file ~/.tmux.conf
|
||||||
```
|
```
|
||||||
|
|
||||||
## Using Tmux Plugin Manager
|
|
||||||
|
|
||||||
You can add this line to your list of [TPM](https://github.com/tmux-plugins/tpm) plugins in `.tmux.conf`:
|
|
||||||
|
|
||||||
```
|
|
||||||
set -g @plugin 'fcsonline/tmux-thumbs'
|
|
||||||
|
|
||||||
run-shell ~/.tmux/plugins/tmux-thumbs/tmux-thumbs.tmux
|
|
||||||
```
|
|
||||||
|
|
||||||
To be able to install the plugin just hit <kbd>prefix</kbd> + <kbd>I</kbd>. You should now be able to use
|
|
||||||
the plugin!
|
|
||||||
|
|
||||||
## Configuration
|
## Configuration
|
||||||
|
|
||||||
If you want to customize how is shown your tmux-thumbs hints those all available
|
If you want to customize how is shown your tmux-thumbs hints those all available
|
||||||
|
@ -39,10 +39,8 @@ else
|
|||||||
|
|
||||||
cat << EOF
|
cat << EOF
|
||||||
It looks like this is the first time you are executing tmux-thumbs
|
It looks like this is the first time you are executing tmux-thumbs
|
||||||
because the binary is not present.
|
because the binary is not present. We are going to proceed with the
|
||||||
|
installation.
|
||||||
We are going to proceed with the installation. If you have Rust preinstalled, we will try to
|
|
||||||
compile the binary from source. Otherwise, a prebuild binary for your platform will be used.
|
|
||||||
|
|
||||||
Do you want to continue?
|
Do you want to continue?
|
||||||
|
|
||||||
@ -53,37 +51,61 @@ fi
|
|||||||
|
|
||||||
read -rs -n 1
|
read -rs -n 1
|
||||||
|
|
||||||
if ! [ -x "$(command -v cargo)" ]; then
|
cat << EOF
|
||||||
platform="$(uname -s) $(uname -m)"
|
|
||||||
|
|
||||||
echo " Rust is not installed! Trying to install ${platform} binary..."
|
Which format do you prefer for installation?
|
||||||
|
|
||||||
sources=$(curl -s "https://api.github.com/repos/fcsonline/tmux-thumbs/releases/latest" | grep browser_download_url)
|
1) Compile: will use cargo to compile tmux-thumbs. It requires Rust.
|
||||||
|
2) Download: will download a precompiled binary for your system.
|
||||||
|
|
||||||
case $platform in
|
EOF
|
||||||
"Darwin x86_64")
|
|
||||||
url=$(echo "${sources}" | grep -o 'https://.*darwin.zip' | uniq)
|
|
||||||
curl -sL "${url}" | bsdtar -xf - thumbs tmux-thumbs
|
|
||||||
|
|
||||||
;;
|
select opt in "Compile" "Download"; do
|
||||||
"Linux x86_64")
|
case $opt in
|
||||||
url=$(echo "${sources}" | grep -o 'https://.*linux-musl.tar.gz' | uniq)
|
Compile|1)
|
||||||
curl -sL "${url}" | tar -zxf - thumbs tmux-thumbs
|
|
||||||
|
|
||||||
;;
|
if ! [ -x "$(command -v cargo)" ]; then
|
||||||
|
echo '❌ Rust is not installed!'
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo ' Compiling tmux-thumbs, be patient:'
|
||||||
|
cargo build --release --target-dir=target
|
||||||
|
|
||||||
|
break;;
|
||||||
|
Download|2)
|
||||||
|
platform="$(uname -s)_$(uname -m)"
|
||||||
|
|
||||||
|
echo " Downloading ${platform} binary..."
|
||||||
|
|
||||||
|
sources=$(curl -s "https://api.github.com/repos/fcsonline/tmux-thumbs/releases/latest" | grep browser_download_url)
|
||||||
|
|
||||||
|
case $platform in
|
||||||
|
Darwin_x86_64)
|
||||||
|
url=$(echo "${sources}" | grep -o 'https://.*darwin.zip' | uniq)
|
||||||
|
curl -sL "${url}" | bsdtar -xf - thumbs tmux-thumbs
|
||||||
|
|
||||||
|
;;
|
||||||
|
Linux_x86_64)
|
||||||
|
url=$(echo "${sources}" | grep -o 'https://.*linux-musl.tar.gz' | uniq)
|
||||||
|
curl -sL "${url}" | tar -zxf - thumbs tmux-thumbs
|
||||||
|
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
echo "❌ Unknown platform: ${platform}"
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
chmod +x thumbs tmux-thumbs
|
||||||
|
mkdir -p target/release
|
||||||
|
mv thumbs tmux-thumbs target/release
|
||||||
|
|
||||||
|
break;;
|
||||||
*)
|
*)
|
||||||
echo "Unknown platform: $platform"
|
echo "❌ Ouh? Choose an available option."
|
||||||
exit 1
|
|
||||||
;;
|
|
||||||
esac
|
esac
|
||||||
|
done
|
||||||
chmod +x thumbs tmux-thumbs
|
|
||||||
mkdir -p target/release
|
|
||||||
mv thumbs tmux-thumbs target/release
|
|
||||||
else
|
|
||||||
echo ' Compiling tmux-thumbs, be patient:'
|
|
||||||
cargo build --release --target-dir=target
|
|
||||||
fi
|
|
||||||
|
|
||||||
cat << EOF
|
cat << EOF
|
||||||
Installation complete! 💯
|
Installation complete! 💯
|
||||||
|
Loading…
Reference in New Issue
Block a user