Skip to content

Commit

Permalink
feat: install fnm to manage Node.js
Browse files Browse the repository at this point in the history
Signed-off-by: Vladyslav Dukhin <[email protected]>
  • Loading branch information
primeare committed Dec 7, 2024
1 parent 9488a03 commit 834f468
Show file tree
Hide file tree
Showing 5 changed files with 36 additions and 41 deletions.
3 changes: 2 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -35,4 +35,5 @@ Temporary Items
### Custom ###

# this file is autogenerated
.config/fish/completions/docker.fish
.config/fish/completions/*
!.config/fish/completions/aws.fish
20 changes: 20 additions & 0 deletions scripts/install-fnm.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
#!/usr/bin/env bash

# exit immediately if a pipeline exits with a non-zero status
set -Eeuxo pipefail

# Install FNM (https://github.com/Schniz/fnm)
curl -fsSL https://fnm.vercel.app/install | bash -s -- --force-no-brew --install-dir "$HOME/.fnm" --skip-shell

# Setup Fish shell for FNM
mkdir -p ~/.config/fish/conf.d
cat << 'EOF' > "$HOME/.config/fish/conf.d/fnm.fish"
fish_add_path "$HOME/.fnm"
fnm env --use-on-cd --version-file-strategy=recursive --resolve-engines --shell fish | source
EOF

# Setup Fish FNM completions
fnm completions --shell=fish > ~/.config/fish/completions/fnm.fish

# Install latest Node.js version
fnm install --latest
29 changes: 0 additions & 29 deletions scripts/install-nodejs.sh

This file was deleted.

22 changes: 11 additions & 11 deletions setup
Original file line number Diff line number Diff line change
Expand Up @@ -39,38 +39,38 @@ if [[ $ARCH == "arm64" ]]; then
softwareupdate --install-rosetta --agree-to-license --verbose
fi

# install Fish shell
# Install Fish shell
"$SCRIPT_DIR/scripts/install-fish.sh"

# install Starship prompt
# Install Starship prompt
"$SCRIPT_DIR/scripts/install-starship.sh"

# install Node.js
"$SCRIPT_DIR/scripts/install-nodejs.sh"
# Install FNM (Fast Node Manager)
"$SCRIPT_DIR/scripts/install-fnm.sh"

# install fonts
# Install fonts
"$SCRIPT_DIR/scripts/install-fonts.sh"

# install Visual Studio Code
# Install Visual Studio Code
"$SCRIPT_DIR/scripts/install-vscode.sh"

# create directories if they don't exist
# Create directories if they don't exist
mkdir -p -v "$HOME/.config/git"
mkdir -p -v "$HOME/.config/fish"
mkdir -p -v "$HOME/Library/Application Support/Code/User/snippets"

# create symbolic links to file and directories in the .dotfiles
# Create symbolic links to file and directories in the .dotfiles
for LINK in "${LINKING_MAP[@]}"; do
SOURCE="${LINK%%:*}"
DESTINATION="${LINK##*:}"
ln -f -s -v "$SOURCE" "$DESTINATION"
done

# install Docker Desktop
# Install Docker Desktop
"$SCRIPT_DIR/scripts/install-docker.sh"

# install AWS CLI
# Install AWS CLI
"$SCRIPT_DIR/scripts/install-aws-cli.sh"

# install Visual Studio Code extensions
# Install Visual Studio Code extensions
"$SCRIPT_DIR/scripts/install-vscode-extensions.sh"
3 changes: 3 additions & 0 deletions test
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,9 @@ fish --version
whereis starship
starship --version

whereis fnm
fnm --version

whereis node
node --version

Expand Down

0 comments on commit 834f468

Please sign in to comment.