ShellCheck
stan
Our great sponsors
ShellCheck | stan | |
---|---|---|
487 | 3 | |
34,757 | 557 | |
- | 1.4% | |
8.6 | 8.1 | |
16 days ago | about 1 month ago | |
Haskell | Haskell | |
GNU General Public License v3.0 only | Mozilla Public License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
ShellCheck
-
DevSecOps with AWS- IaC at scale - Building your own platform - Part 1
... #************************** Terraform ************************************* ARG TERRAFORM_VERSION=1.7.3 RUN set -ex \ && curl -O https://releases.hashicorp.com/terraform/${TERRAFORM_VERSION}/terraform_${TERRAFORM_VERSION}_linux_amd64.zip && unzip terraform_${TERRAFORM_VERSION}_linux_amd64.zip -d /usr/local/bin/ RUN set -ex \ && mkdir -p $HOME/.terraform.d/plugin-cache && echo 'plugin_cache_dir = "$HOME/.terraform.d/plugin-cache"' > ~/.terraformrc #************************* Terragrunt ************************************* ARG TERRAGRUNT_VERSION=0.55.1 RUN set -ex \ && wget https://github.com/gruntwork-io/terragrunt/releases/download/v${TERRAGRUNT_VERSION}/terragrunt_linux_amd64 -q \ && mv terragrunt_linux_amd64 /usr/local/bin/terragrunt \ && chmod +x /usr/local/bin/terragrunt #*********************** Terramate **************************************** ARG TERRAMATE_VERSION=0.4.5 RUN set -ex \ && wget https://github.com/mineiros-io/terramate/releases/download/v${TERRAMATE_VERSION}/terramate_${TERRAMATE_VERSION}_linux_x86_64.tar.gz \ && tar -xzf terramate_${TERRAMATE_VERSION}_linux_x86_64.tar.gz \ && mv terramate /usr/local/bin/terramate \ && chmod +x /usr/local/bin/terramate #*********************** tfsec ******************************************** ARG TFSEC_VERSION=1.28.5 RUN set -ex \ && wget https://github.com/aquasecurity/tfsec/releases/download/v${TFSEC_VERSION}/tfsec-linux-amd64 \ && mv tfsec-linux-amd64 /usr/local/bin/tfsec \ && chmod +x /usr/local/bin/tfsec \ && terragrunt --version #**********************Terraform docs ************************************ ARG TERRRAFORM_DOCS_VERSION=0.17.0 RUN set -ex \ && curl -sSLo ./terraform-docs.tar.gz https://terraform-docs.io/dl/v${TERRRAFORM_DOCS_VERSION}/terraform-docs-v${TERRRAFORM_DOCS_VERSION}-$(uname)-amd64.tar.gz \ && tar -xzf terraform-docs.tar.gz \ && chmod +x terraform-docs \ && mv terraform-docs /usr/local/bin/terraform-docs #********************* ShellCheck ***************************************** ARG SHELLCHECK_VERSION="stable" RUN set -ex \ && wget -qO- "https://github.com/koalaman/shellcheck/releases/download/${SHELLCHECK_VERSION?}/shellcheck-${SHELLCHECK_VERSION?}.linux.x86_64.tar.xz" | tar -xJv \ && cp "shellcheck-${SHELLCHECK_VERSION}/shellcheck" /usr/bin/ \ && shellcheck --version ...
-
Ask HN: Popular open source tool originally written in Haskell?
ShellCheck: https://github.com/koalaman/shellcheck
-
Google ZX – A tool for writing better scripts
If I want to write better shell scripts I usually run shellcheck and adjust accordingly or if I need facilities not provided by the shell i switch to a full fledged programming language. Ans oh yes, `sh` is present almost on every BSD and Linux box for free so I consider it an important thing to at least be comfortable with.
shellcheck: https://www.shellcheck.net/
-
How I use Nix in my Elm projects
When I run nix-shell at the root of the project it puts me in a Nix shell that contains, among other programs, caddy and shellcheck. Notice that in the shellHook I add the project's shell scripts to the PATH. So once I'm in the Nix shell I can, among other things:
-
Shellcheck finds bugs in your shell scripts
The error checks can be pretty arcane:
https://github.com/koalaman/shellcheck/wiki/Checks
zsh was originally supported, but unceremoniously removed: https://github.com/koalaman/shellcheck/issues/298
I've had great experiences with this tool, but, for some reason, this issue always makes me question taking too great a dependency on it.
-
Is there a syntax checker?
Similar to for instance shellcheck to check the syntax of shell scripts, is there an equivalent for the set of roff commands typically used in a (Linux) man page? I'm aware that e.g. pandoc permits the conversion of an other format (e.g., org) to both roff man and roff ms.
-
Ask HN: How does one practice day to day shell scripting
I forgot to mention "shellcheck" at https://www.shellcheck.net/ and the explanation of its error codes at https://www.shellcheck.net/wiki/
This is also referenced by Shotts, and has been discussed on Hacker News -- not to be missed.
-
Ask HN: Share a shell script you like
shellcheck, whilst not a script itself, I do find it useful when writing them.
stan
-
Hsthrift: Open-sourcing Thrift for Haskell - Facebook Engineering
However, I'm a huge fan of static tools like this in general. I've heard great things about https://package.elm-lang.org/packages/jfmengels/elm-review/latest/ and I need to try out https://github.com/kowainik/stan. Also its possible HLint has ways to write more advanced rules and I just don't know about them, but even if that's so hopefully I've explained why just dropping it in isn't a huge win.
What are some alternatives?
bash-language-server - A language server for Bash
shfmt - Dockernized shfmt. This formats shell script.
shellharden - The corrective bash syntax highlighter
shfmt - A shell formatter (sh/bash/mksh)
PowerShell - PowerShell for every system!
neomake - Asynchronous linting and make framework for Neovim/Vim
efm-langserver - General purpose Language Server
sh - A shell parser, formatter, and interpreter with bash support; includes shfmt
hdocs - Haskell docs tool
hadolint - Dockerfile linter, validate inline bash, written in Haskell
proot - An chroot-like implementation using ptrace.
maam - A monadic approach to static analysis following the methodology of AAM