summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormo8it <mo8it@proton.me>2024-03-30 18:52:49 +0100
committermo8it <mo8it@proton.me>2024-03-30 18:52:49 +0100
commitfe7d775818021acee7d5ae40c5cf9fdac69b2122 (patch)
treebc5869df164b03021e8d50f45e50bfb824e26bbd
parent8e3cc9d70c627ace4553e4fe62af3443e970e64f (diff)
Remove the installation scripts
-rw-r--r--install.ps194
-rwxr-xr-xinstall.sh184
2 files changed, 0 insertions, 278 deletions
diff --git a/install.ps1 b/install.ps1
deleted file mode 100644
index 844b013..0000000
--- a/install.ps1
+++ /dev/null
@@ -1,94 +0,0 @@
-#!/usr/bin/env pwsh
-
-#Requires -Version 5
-param($path = "$home/rustlings")
-
-Write-Host "Let's get you set up with Rustlings!"
-
-Write-Host "Checking requirements..."
-if (Get-Command git -ErrorAction SilentlyContinue) {
- Write-Host "SUCCESS: Git is installed"
-} else {
- Write-Host "WARNING: Git does not seem to be installed."
- Write-Host "Please download Git using your package manager or over https://git-scm.com/!"
- exit 1
-}
-
-if (Get-Command rustc -ErrorAction SilentlyContinue) {
- Write-Host "SUCCESS: Rust is installed"
-} else {
- Write-Host "WARNING: Rust does not seem to be installed."
- Write-Host "Please download Rust using https://rustup.rs!"
- exit 1
-}
-
-if (Get-Command cargo -ErrorAction SilentlyContinue) {
- Write-Host "SUCCESS: Cargo is installed"
-} else {
- Write-Host "WARNING: Cargo does not seem to be installed."
- Write-Host "Please download Rust and Cargo using https://rustup.rs!"
- exit 1
-}
-
-# Function that compares two versions strings v1 and v2 given in arguments (e.g 1.31 and 1.33.0).
-# Returns 1 if v1 > v2, 0 if v1 == v2, 2 if v1 < v2.
-function vercomp($v1, $v2) {
- if ($v1 -eq $v2) {
- return 0
- }
-
- $v1 = $v1.Replace(".", "0")
- $v2 = $v2.Replace(".", "0")
- if ($v1.Length -gt $v2.Length) {
- $v2 = $v2.PadRight($v1.Length, "0")
- } else {
- $v1 = $v1.PadRight($v2.Length, "0")
- }
-
- if ($v1 -gt $v2) {
- return 1
- } else {
- return 2
- }
-}
-
-$rustVersion = $(rustc --version).Split(" ")[1]
-$minRustVersion = "1.70"
-if ((vercomp $rustVersion $minRustVersion) -eq 2) {
- Write-Host "WARNING: Rust version is too old: $rustVersion - needs at least $minRustVersion"
- Write-Host "Please update Rust with 'rustup update'"
- exit 1
-} else {
- Write-Host "SUCCESS: Rust is up to date"
-}
-
-Write-Host "Cloning Rustlings at $path"
-git clone -q https://github.com/rust-lang/rustlings $path
-if (!($LASTEXITCODE -eq 0)) {
- exit 1
-}
-
-# UseBasicParsing is deprecated, pwsh 6 or above will automatically use it,
-# but anyone running pwsh 5 will have to pass the argument.
-$version = Invoke-WebRequest -UseBasicParsing https://api.github.com/repos/rust-lang/rustlings/releases/latest `
- | ConvertFrom-Json | Select-Object -ExpandProperty tag_name
-
-Write-Host "Checking out version $version..."
-Set-Location $path
-git checkout -q tags/$version
-
-Write-Host "Installing the 'rustlings' executable..."
-cargo install --force --path .
-if (!(Get-Command rustlings -ErrorAction SilentlyContinue)) {
- Write-Host "WARNING: Please check that you have '~/.cargo/bin' in your PATH environment variable!"
-}
-
-# Checking whether Clippy is installed.
-# Due to a bug in Cargo, this must be done with Rustup: https://github.com/rust-lang/rustup/issues/1514
-$clippy = (rustup component list | Select-String "clippy" | Select-String "installed") | Out-String
-if (!$clippy) {
- Write-Host "Installing the 'cargo-clippy' executable..."
- rustup component add clippy
-}
-
-Write-Host "All done! Navigate to $path and run 'rustlings' to get started!"
diff --git a/install.sh b/install.sh
deleted file mode 100755
index fdbe8d4..0000000
--- a/install.sh
+++ /dev/null
@@ -1,184 +0,0 @@
-#!/usr/bin/env bash
-set -euo pipefail
-
-echo -e "\nLet's get you set up with Rustlings!"
-
-echo "Checking requirements..."
-if [ -x "$(command -v git)" ]
-then
- echo "SUCCESS: Git is installed"
-else
- echo "ERROR: Git does not seem to be installed."
- echo "Please download Git using your package manager or over https://git-scm.com/!"
- exit 1
-fi
-
-if [ -x "$(command -v cc)" ]
-then
- echo "SUCCESS: cc is installed"
-else
- echo "ERROR: cc does not seem to be installed."
- echo "Please download (g)cc using your package manager."
- echo "OSX: xcode-select --install"
- echo "Deb: sudo apt install gcc"
- echo "Yum: sudo yum -y install gcc"
- exit 1
-fi
-
-if [ -x "$(command -v rustup)" ]
-then
- echo "SUCCESS: rustup is installed"
-else
- echo "ERROR: rustup does not seem to be installed."
- echo "Please download rustup using https://rustup.rs!"
- exit 1
-fi
-
-if [ -x "$(command -v rustc)" ]
-then
- echo "SUCCESS: Rust is installed"
-else
- echo "ERROR: Rust does not seem to be installed."
- echo "Please download Rust using rustup!"
- exit 1
-fi
-
-if [ -x "$(command -v cargo)" ]
-then
- echo "SUCCESS: Cargo is installed"
-else
- echo "ERROR: Cargo does not seem to be installed."
- echo "Please download Rust and Cargo using rustup!"
- exit 1
-fi
-
-# Look up python installations, starting with 3 with a fallback of 2
-if [ -x "$(command -v python3)" ]
-then
- PY="$(command -v python3)"
-elif [ -x "$(command -v python)" ]
-then
- PY="$(command -v python)"
-elif [ -x "$(command -v python2)" ]
-then
- PY="$(command -v python2)"
-else
- echo "ERROR: No working python installation was found"
- echo "Please install python and add it to the PATH variable"
- exit 1
-fi
-
-# Function that compares two versions strings v1 and v2 given in arguments (e.g 1.31 and 1.33.0).
-# Returns 1 if v1 > v2, 0 if v1 == v2, 2 if v1 < v2.
-function vercomp() {
- if [[ $1 == $2 ]]
- then
- return 0
- fi
- v1=( ${1//./ } )
- v2=( ${2//./ } )
- len1=${#v1[@]}
- len2=${#v2[@]}
- max_len=$len1
- if [[ $max_len -lt $len2 ]]
- then
- max_len=$len2
- fi
-
- #pad right in short arr
- if [[ len1 -gt len2 ]];
- then
- for ((i = len2; i < len1; i++));
- do
- v2[$i]=0
- done
- else
- for ((i = len1; i < len2; i++));
- do
- v1[$i]=0
- done
- fi
-
- for i in `seq 0 $((max_len-1))`
- do
- # Fill empty fields with zeros in v1
- if [ -z "${v1[$i]}" ]
- then
- v1[$i]=0
- fi
- # And in v2
- if [ -z "${v2[$i]}" ]
- then
- v2[$i]=0
- fi
- if [ ${v1[$i]} -gt ${v2[$i]} ]
- then
- return 1
- fi
- if [ ${v1[$i]} -lt ${v2[$i]} ]
- then
- return 2
- fi
- done
- return 0
-}
-
-RustVersion=$(rustc --version | cut -d " " -f 2)
-MinRustVersion=1.70
-vercomp "$RustVersion" $MinRustVersion || ec=$?
-if [ ${ec:-0} -eq 2 ]
-then
- echo "ERROR: Rust version is too old: $RustVersion - needs at least $MinRustVersion"
- echo "Please update Rust with 'rustup update'"
- exit 1
-else
- echo "SUCCESS: Rust is up to date"
-fi
-
-Path=${1:-rustlings/}
-echo "Cloning Rustlings at $Path..."
-git clone -q https://github.com/rust-lang/rustlings.git "$Path"
-
-cd "$Path"
-
-Version=$(curl -s https://api.github.com/repos/rust-lang/rustlings/releases/latest | ${PY} -c "import json,sys;obj=json.load(sys.stdin);print(obj['tag_name']) if 'tag_name' in obj else sys.exit(f\"Error: {obj['message']}\");")
-CargoBin="${CARGO_HOME:-$HOME/.cargo}/bin"
-
-if [[ -z ${Version} ]]
-then
- echo "The latest tag version could not be fetched remotely."
- echo "Using the local git repository..."
- Version=$(ls -tr .git/refs/tags/ | tail -1)
- if [[ -z ${Version} ]]
- then
- echo "No valid tag version found"
- echo "Rustlings will be installed using the main branch"
- Version="main"
- else
- Version="tags/${Version}"
- fi
-else
- Version="tags/${Version}"
-fi
-
-echo "Checking out version $Version..."
-git checkout -q ${Version}
-
-echo "Installing the 'rustlings' executable..."
-cargo install --force --path .
-
-if ! [ -x "$(command -v rustlings)" ]
-then
- echo "WARNING: Please check that you have '$CargoBin' in your PATH environment variable!"
-fi
-
-# Checking whether Clippy is installed.
-# Due to a bug in Cargo, this must be done with Rustup: https://github.com/rust-lang/rustup/issues/1514
-Clippy=$(rustup component list | grep "clippy" | grep "installed")
-if [ -z "$Clippy" ]
-then
- echo "Installing the 'cargo-clippy' executable..."
- rustup component add clippy
-fi
-
-echo "All done! Run 'rustlings' to get started."