#!/usr/bin/with-contenv bash # check npm exists if [ -f /usr/bin/npm ]; then echo "creating npm global folder in /config" mkdir -p /config/npm-global echo "setting npm to global folder in /config" npm config set prefix '/config/npm-global' if grep -q "/config/npm-global/bin" "/etc/services.d/code-server/run" 2>/dev/null || \ grep -q "/config/npm-global/bin" "/etc/services.d/openvscode-server/run" 2>/dev/null || \ grep -q "/config/npm-global/bin" "/etc/s6-overlay/s6-rc.d/svc-code-server/run" 2>/dev/null || \ grep -q "/config/npm-global/bin" "/etc/s6-overlay/s6-rc.d/svc-openvscode-server/run" 2>/dev/null; then echo "npm-global already in PATH" elif [ -f "/etc/services.d/code-server/run" ]; then echo "ensuring npm-global is in PATH" sed -i '/^#!\/usr\/bin/a \\n# Added by codeserver-npmglobal\nexport PATH=/config/npm-global/bin:$PATH' /etc/services.d/code-server/run elif [ -f "/etc/services.d/openvscode-server/run" ]; then echo "ensuring npm-global is in PATH" sed -i '/^#!\/usr\/bin/a \\n# Added by codeserver-npmglobal\nexport PATH=/config/npm-global/bin:$PATH' /etc/services.d/openvscode-server/run elif [ -f "/etc/s6-overlay/s6-rc.d/svc-code-server/run" ]; then echo "ensuring npm-global is in PATH" sed -i '/^#!\/usr\/bin/a \\n# Added by codeserver-npmglobal\nexport PATH=/config/npm-global/bin:$PATH' /etc/s6-overlay/s6-rc.d/svc-code-server/run elif [ -f "/etc/s6-overlay/s6-rc.d/svc-openvscode-server/run" ]; then echo "ensuring npm-global is in PATH" sed -i '/^#!\/usr\/bin/a \\n# Added by codeserver-npmglobal\nexport PATH=/config/npm-global/bin:$PATH' /etc/s6-overlay/s6-rc.d/svc-openvscode-server/run fi else echo "**** npm not installed, skipping npmglobal install ****" fi