diff --git a/.idea/.gitignore b/.idea/.gitignore
new file mode 100644
index 0000000..13566b8
--- /dev/null
+++ b/.idea/.gitignore
@@ -0,0 +1,8 @@
+# Default ignored files
+/shelf/
+/workspace.xml
+# Editor-based HTTP Client requests
+/httpRequests/
+# Datasource local storage ignored files
+/dataSources/
+/dataSources.local.xml
diff --git a/.idea/Utils.iml b/.idea/Utils.iml
new file mode 100644
index 0000000..c956989
--- /dev/null
+++ b/.idea/Utils.iml
@@ -0,0 +1,8 @@
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/deployment.xml b/.idea/deployment.xml
new file mode 100644
index 0000000..e159bed
--- /dev/null
+++ b/.idea/deployment.xml
@@ -0,0 +1,35 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/modules.xml b/.idea/modules.xml
new file mode 100644
index 0000000..9e64c4f
--- /dev/null
+++ b/.idea/modules.xml
@@ -0,0 +1,8 @@
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/vcs.xml b/.idea/vcs.xml
new file mode 100644
index 0000000..94a25f7
--- /dev/null
+++ b/.idea/vcs.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Installers/README.dm b/Installers/README.dm
new file mode 100644
index 0000000..a197d2c
--- /dev/null
+++ b/Installers/README.dm
@@ -0,0 +1,10 @@
+Each script helps you to install compiler
+
+Example to use docker:
+. <(wget -qO- https://raw.githubusercontent.com/letsnode/Utils/main/installers/docker.sh)
+
+go:
+. <(wget -qO- https://raw.githubusercontent.com/letsnode/Utils/main/installers/golang.sh)
+
+rust:
+. <(wget -qO- https://raw.githubusercontent.com/letsnode/Utils/main/installers/rust.sh)
\ No newline at end of file
diff --git a/Installers/docker.sh b/Installers/docker.sh
new file mode 100644
index 0000000..d556fec
--- /dev/null
+++ b/Installers/docker.sh
@@ -0,0 +1,95 @@
+#!/bin/bash
+
+dive="false"
+action="install"
+
+. <(wget -qO- https://raw.githubusercontent.com/letsnode/Utils/main/bashbuilder/colors.sh) --
+
+function option_value() {
+ echo "$1" | sed -e 's%^--[^=]*=%%g; s%^-[^=]*=%%g';
+}
+
+function install() {
+ cd
+ if ! docker --version; then
+ echo -e "${C_LGn}Docker installation...${RES}"
+ sudo apt update
+ sudo apt upgrade -y
+ sudo apt install curl apt-transport-https ca-certificates gnupg lsb-release -y
+ . /etc/*-release
+ wget -qO- "https://download.docker.com/linux/${DISTRIB_ID,,}/gpg" | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
+ echo "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/${DISTRIB_ID,,} ${DISTRIB_CODENAME} stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
+ sudo apt update
+ sudo apt install docker-ce docker-ce-cli containerd.io -y
+ docker_version=`apt-cache madison docker-ce | grep -oPm1 "(?<=docker-ce \| )([^_]+)(?= \| https)"`
+ sudo apt install docker-ce="$docker_version" docker-ce-cli="$docker_version" containerd.io -y
+ fi
+ if ! docker-compose --version; then
+ echo -e "${C_LGn}Docker Сompose installation...${RES}"
+ sudo apt update
+ sudo apt upgrade -y
+ sudo apt install wget jq -y
+ local docker_compose_version=`wget -qO- https://api.github.com/repos/docker/compose/releases/latest | jq -r ".tag_name"`
+ sudo wget -O /usr/bin/docker-compose "https://github.com/docker/compose/releases/download/${docker_compose_version}/docker-compose-`uname -s`-`uname -m`"
+ sudo chmod +x /usr/bin/docker-compose
+ . $HOME/.bash_profile
+ fi
+ if [ "$dive" = "true" ] && ! dpkg -s dive | grep -q "ok installed"; then
+ echo -e "${C_LGn}Dive installation...${RES}"
+ wget https://github.com/wagoodman/dive/releases/download/v0.9.2/dive_0.9.2_linux_amd64.deb
+ sudo apt install ./dive_0.9.2_linux_amd64.deb
+ rm -rf dive_0.9.2_linux_amd64.deb
+ fi
+}
+
+function uninstall() {
+ echo -e "${C_LGn}Docker uninstalling...${RES}"
+ sudo dpkg -r dive
+ sudo systemctl stop docker.service docker.socket
+ sudo systemctl disable docker.service docker.socket
+ sudo rm -rf `systemctl cat docker.service | grep -oPm1 "(?<=^#)([^%]+)"` `systemctl cat docker.socket | grep -oPm1 "(?<=^#)([^%]+)"` /usr/bin/docker-compose
+ sudo apt purge docker-engine docker docker.io docker-ce docker-ce-cli -y
+ sudo apt autoremove --purge docker-engine docker docker.io docker-ce -y
+ sudo apt autoclean
+ sudo rm -rf /var/lib/docker /etc/appasudo rmor.d/docker
+ sudo groupdel docker
+ sudo rm -rf /etc/docker /usr/bin/docker /usr/libexec/docker /usr/libexec/docker/cli-plugins/docker-buildx /usr/libexec/docker/cli-plugins/docker-scan /usr/libexec/docker/cli-plugins/docker-app /usr/share/keyrings/docker-archive-keyring.gpg
+}
+
+while test $# -gt 0; do
+ case "$1" in
+ -h|--help)
+ . <(wget -qO- https://raw.githubusercontent.com/letsnode/Utils/main/bashbuilder/logo.sh)
+ echo
+ echo -e "${C_LGn}Functionality${RES}: the script installs or uninstalls Docker"
+ echo
+ echo -e "${C_LGn}Usage${RES}: script ${C_LGn}[OPTIONS]${RES}"
+ echo
+ echo -e "${C_LGn}Options${RES}:"
+ echo -e " -h, --help show the help page"
+ echo -e " -d, --dive install Dive (images analyser)"
+ echo -e " -u, --uninstall uninstall Docker (${C_R}completely delete all images and containers${RES})"
+ echo
+ echo -e "${C_LGn}Useful URLs${RES}:"
+ echo -e "Script URL: https://raw.githubusercontent.com/letsnode/Utils/main/installers/docker.sh"
+ echo -e "Telegram community: https://t.me/letskynode — node Community"
+ echo
+ return 0 2>/dev/null; exit 0
+ ;;
+ -d|--dive)
+ dive="true"
+ shift
+ ;;
+ -u|--uninstall)
+ action="uninstall"
+ shift
+ ;;
+ *|--)
+ break
+ ;;
+ esac
+done
+
+$action
+
+echo -e "${C_LGn}Done!${RES}"
diff --git a/Installers/golang.sh b/Installers/golang.sh
new file mode 100644
index 0000000..e400af5
--- /dev/null
+++ b/Installers/golang.sh
@@ -0,0 +1,1837 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Utils/golang.sh at main · letsnode/Utils · GitHub
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
{{ message }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Permalink
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Cannot retrieve contributors at this time
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
+ Learn more about bidirectional Unicode characters
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ You can’t perform that action at this time.
+
+
+
+
+
+
+
You signed in with another tab or window. Reload to refresh your session.
+
You signed out in another tab or window. Reload to refresh your session.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Installers/rust.sh b/Installers/rust.sh
new file mode 100644
index 0000000..f46cee9
--- /dev/null
+++ b/Installers/rust.sh
@@ -0,0 +1,1787 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Utils/rust.sh at main · letsnode/Utils · GitHub
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
{{ message }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Permalink
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Cannot retrieve contributors at this time
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
+ Learn more about bidirectional Unicode characters
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ You can’t perform that action at this time.
+
+
+
+
+
+
+
You signed in with another tab or window. Reload to refresh your session.
+
You signed out in another tab or window. Reload to refresh your session.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+