From 9ee81034ac19eb35eb2e204d2e9d8dfa2d47767d Mon Sep 17 00:00:00 2001 From: Samuel Larkin Date: Fri, 2 Feb 2024 11:05:08 -0500 Subject: [PATCH] feat: sorted tasks --- taskfiles/compiled_essentials.yml | 156 +++++++++++++++--------------- taskfiles/fzf.yml | 62 ++++++------ taskfiles/tmux.yml | 20 ++-- taskfiles/vim.yml | 20 ++-- 4 files changed, 129 insertions(+), 129 deletions(-) diff --git a/taskfiles/compiled_essentials.yml b/taskfiles/compiled_essentials.yml index 98a1f04..d2454e8 100644 --- a/taskfiles/compiled_essentials.yml +++ b/taskfiles/compiled_essentials.yml @@ -16,6 +16,57 @@ tasks: - tig - ugrep + htop: + desc: > + [htop - GitHub](https://github.com/htop-dev/htop): + is a cross-platform interactive process viewer. + cmds: + - | + curl \ + --create-dirs --fail --location \ + --output "htop-$VERSION.tar.xz" \ + "https://github.com/htop-dev/htop/releases/download/$VERSION/htop-$VERSION.tar.xz" + - defer: rm htop-$VERSION.tar.xz + - tar xf htop-$VERSION.tar.xz + - defer: rm -fr htop-$VERSION + - | + cd htop-$VERSION + ./autogen.sh + ./configure --prefix={{.INSTALL_DIR}} + \make -j $(nproc) install + dir: $HOME/tmp + env: + VERSION: 3.2.2 + generates: + - "{{.BIN_DIR}}/htop" + status: + - which htop + preconditions: + - which make + + hyperfine: + desc: > + [hyperfine - GitHub](https://github.com/sharkdp/hyperfine): + A command-line benchmarking tool. + NOTE: probably already install by `cargo install hyperfine`. + cmds: + - | + curl \ + --create-dirs --fail --location \ + --output hyperfine-v$VERSION-x86_64-unknown-linux-musl.tar.gz \ + "https://github.com/sharkdp/hyperfine/releases/download/v$VERSION/hyperfine-v$VERSION-x86_64-unknown-linux-musl.tar.gz" + - defer: rm hyperfine-v$VERSION-x86_64-unknown-linux-musl.tar.gz + - tar xf hyperfine-v$VERSION-x86_64-unknown-linux-musl.tar.gz + - defer: rm -fr hyperfine-v$VERSION-x86_64-unknown-linux-musl + - cp hyperfine-v$VERSION-x86_64-unknown-linux-musl/hyperfine "{{.BIN_DIR}}" + dir: "{{.HOME}}/tmp" + env: + VERSION: 1.12.0 + generates: + - "{{.BIN_DIR}}/hyperfine" + status: + - which hyperfine + jq: desc: > [jq - GitHub](https://stedolan.github.io/jq/): jq is a lightweight and flexible command-line JSON processor. @@ -84,6 +135,33 @@ tasks: preconditions: - which make + parallel: + desc: > + [parallel - GNU parallel](https://www.gnu.org/software/parallel/): + is a shell tool for executing jobs in parallel using one or more computers. + cmds: + - | + curl \ + --create-dirs --fail --location \ + --output parallel-$VERSION.tar.bz2 \ + "https://ftp.gnu.org/gnu/parallel/parallel-$VERSION.tar.bz2" + - defer: rm parallel-$VERSION.tar.bz2 + - tar xf parallel-$VERSION.tar.bz2 + - defer: rm -fr parallel-$VERSION + - | + cd parallel-$VERSION + ./configure --prefix={{.INSTALL_DIR}}" + \make -j $(nproc) install + dir: "{{.HOME}}/tmp" + env: + VERSION: 20231022 + generates: + - "{{.BIN_DIR}}/parallel" + status: + - which parallel + preconditions: + - which make + tig: desc: > Install tig @@ -121,34 +199,6 @@ tasks: preconditions: - which make - htop: - desc: > - [htop - GitHub](https://github.com/htop-dev/htop): - is a cross-platform interactive process viewer. - cmds: - - | - curl \ - --create-dirs --fail --location \ - --output "htop-$VERSION.tar.xz" \ - "https://github.com/htop-dev/htop/releases/download/$VERSION/htop-$VERSION.tar.xz" - - defer: rm htop-$VERSION.tar.xz - - tar xf htop-$VERSION.tar.xz - - defer: rm -fr htop-$VERSION - - | - cd htop-$VERSION - ./autogen.sh - ./configure --prefix={{.INSTALL_DIR}} - \make -j $(nproc) install - dir: $HOME/tmp - env: - VERSION: 3.2.2 - generates: - - "{{.BIN_DIR}}/htop" - status: - - which htop - preconditions: - - which make - ugrep: desc: > [ug/ugrep - GitHub](https://github.com/Genivia/ugrep): @@ -174,53 +224,3 @@ tasks: - which ugrep preconditions: - which make - - parallel: - desc: > - [parallel - GNU parallel](https://www.gnu.org/software/parallel/): - is a shell tool for executing jobs in parallel using one or more computers. - cmds: - - | - curl \ - --create-dirs --fail --location \ - --output parallel-$VERSION.tar.bz2 \ - "https://ftp.gnu.org/gnu/parallel/parallel-$VERSION.tar.bz2" - - defer: rm parallel-$VERSION.tar.bz2 - - tar xf parallel-$VERSION.tar.bz2 - - defer: rm -fr parallel-$VERSION - - | - cd parallel-$VERSION - ./configure --prefix={{.INSTALL_DIR}}" - \make -j $(nproc) install - dir: "{{.HOME}}/tmp" - env: - VERSION: 20231022 - generates: - - "{{.BIN_DIR}}/parallel" - status: - - which parallel - preconditions: - - which make - - hyperfine: - desc: > - [hyperfine - GitHub](https://github.com/sharkdp/hyperfine): - A command-line benchmarking tool. - NOTE: probably already install by `cargo install hyperfine`. - cmds: - - | - curl \ - --create-dirs --fail --location \ - --output hyperfine-v$VERSION-x86_64-unknown-linux-musl.tar.gz \ - "https://github.com/sharkdp/hyperfine/releases/download/v$VERSION/hyperfine-v$VERSION-x86_64-unknown-linux-musl.tar.gz" - - defer: rm hyperfine-v$VERSION-x86_64-unknown-linux-musl.tar.gz - - tar xf hyperfine-v$VERSION-x86_64-unknown-linux-musl.tar.gz - - defer: rm -fr hyperfine-v$VERSION-x86_64-unknown-linux-musl - - cp hyperfine-v$VERSION-x86_64-unknown-linux-musl/hyperfine "{{.BIN_DIR}}" - dir: "{{.HOME}}/tmp" - env: - VERSION: 1.12.0 - generates: - - "{{.BIN_DIR}}/hyperfine" - status: - - which hyperfine diff --git a/taskfiles/fzf.yml b/taskfiles/fzf.yml index 3c33807..6e6cb20 100644 --- a/taskfiles/fzf.yml +++ b/taskfiles/fzf.yml @@ -14,6 +14,20 @@ tasks: - fzf-tmux - shell_completion + forgit: + desc: > + [forgit - GitHub](https://github.com/wfxr/forgit): + A utility tool powered by fzf for using git interactively. + cmd: > + curl \ + --create-dirs --fail --location \ + --output {{.BIN_DIR}}/'#1' \ + 'https://raw.githubusercontent.com/wfxr/forgit/master/bin/{git-forgit}' + generates: + - "{{.BIN_DIR}}/forgit" + status: + - which forgit + fzf: desc: > [fzf - GitHub](https://github.com/junegunn/fzf): @@ -24,6 +38,22 @@ tasks: status: - which fzf + fzf-git: + desc: > + [fzf-git.sh - GitHub](https://github.com/junegunn/fzf-git.sh): + bash and zsh key bindings for Git objects, powered by fzf + deps: + - fzf + cmd: | + curl \ + --create-dirs --fail --location \ + --output {{.BASH_COMPLETION_D}}}/'#1' \ + 'https://raw.githubusercontent.com/junegunn/fzf-git.sh/main/{fzf-git.sh}' + generates: + - "{{.BASH_COMPLETION_D}}/fzf-git.sh" + status: + - test -f {{.BASH_COMPLETION_D}}/fzf-git.sh + fzf-tmux: desc: > Install fzf's integration with tmux. @@ -41,20 +71,6 @@ tasks: status: - which fzf-tmux - forgit: - desc: > - [forgit - GitHub](https://github.com/wfxr/forgit): - A utility tool powered by fzf for using git interactively. - cmd: > - curl \ - --create-dirs --fail --location \ - --output {{.BIN_DIR}}/'#1' \ - 'https://raw.githubusercontent.com/wfxr/forgit/master/bin/{git-forgit}' - generates: - - "{{.BIN_DIR}}/forgit" - status: - - which forgit - shell_completion: desc: > Install fzf's shell completion. @@ -78,21 +94,5 @@ tasks: - "{{.BASH_COMPLETION_D}}/completion.bash" - "{{.BASH_COMPLETION_D}}/key-bindings.bash" status: - - test -f {{.BASH_COMPLETION_D}}/completion.bash + - test -f {{.BASH_COMPLETION_D}}/completion.bash - test -f {{.BASH_COMPLETION_D}}/key-bindings.bash - - fzf-git: - desc: > - [fzf-git.sh - GitHub](https://github.com/junegunn/fzf-git.sh): - bash and zsh key bindings for Git objects, powered by fzf - deps: - - fzf - cmd: | - curl \ - --create-dirs --fail --location \ - --output {{.BASH_COMPLETION_D}}}/'#1' \ - 'https://raw.githubusercontent.com/junegunn/fzf-git.sh/main/{fzf-git.sh}' - generates: - - "{{.BASH_COMPLETION_D}}/fzf-git.sh" - status: - - test -f {{.BASH_COMPLETION_D}}/fzf-git.sh diff --git a/taskfiles/tmux.yml b/taskfiles/tmux.yml index 0304517..9e8aacf 100644 --- a/taskfiles/tmux.yml +++ b/taskfiles/tmux.yml @@ -6,17 +6,8 @@ env: tasks: default: deps: - - shell_completion - plugin_manager - - shell_completion: - desc: > - Install tmux shell completion - cmd: | - curl \ - --create-dirs --fail --location \ - --output {{.BASH_COMPLETION_D}}/'#1' \ - 'https://raw.githubusercontent.com/imomaliev/tmux-bash-completion/master/completions/{tmux}' + - shell_completion plugin_manager: desc: > @@ -27,3 +18,12 @@ tasks: https://github.com/tmux-plugins/tpm \ {{.HOME}}/.tmux/plugins/tpm \ || ( cd {{.HOME}}/.tmux/plugins/tpm && git pull; ) + + shell_completion: + desc: > + Install tmux shell completion + cmd: | + curl \ + --create-dirs --fail --location \ + --output {{.BASH_COMPLETION_D}}/'#1' \ + 'https://raw.githubusercontent.com/imomaliev/tmux-bash-completion/master/completions/{tmux}' diff --git a/taskfiles/vim.yml b/taskfiles/vim.yml index b64dd8c..61c2e09 100644 --- a/taskfiles/vim.yml +++ b/taskfiles/vim.yml @@ -3,17 +3,8 @@ version: '3' tasks: default: deps: - - plugin_manager - plugin_install - - plugin_manager: - desc: > - Intall plug.vim - cmd: | - curl \ - --create-dirs --fail --location \ - --output {{.HOME}}/.vim/autoload/plug.vim \ - https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim + - plugin_manager plugin_install: desc: > @@ -28,3 +19,12 @@ tasks: preconditions: - which npm - which node + + plugin_manager: + desc: > + Intall plug.vim + cmd: | + curl \ + --create-dirs --fail --location \ + --output {{.HOME}}/.vim/autoload/plug.vim \ + https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim