#!/bin/sh # # curl -s https://nvim.luminiferous.eu | sh # # Init Portable Folder export NVIM="$HOME/.nvim-portable" rm -rf $NVIM mkdir $NVIM cd $NVIM # Get nvim AppImage curl -LO https://github.com/neovim/neovim-releases/releases/latest/download/nvim-linux-x86_64.appimage mv nvim-linux-x86_64.appimage nvim.appimage chmod u+x nvim.appimage # Create runtime directory Structure mkdir -p runtime/lua/mini # Get config file curl -L https://git.luminiferous.eu/Luminiferous/dotfiles/raw/branch/nvim/init.lua -o runtime/init.lua # Add Current folder to runtimepath sed -i "1s@^@vim.opt.runtimepath:append('$NVIM/runtime')\n@" runtime/init.lua # Get required Mini Plugins curl -L https://git.luminiferous.eu/Luminiferous/dotfiles/raw/branch/nvim/lua/mini-pick.lua -o runtime/lua/mini-pick.lua curl -L https://raw.githubusercontent.com/nvim-mini/mini.nvim/refs/heads/main/lua/mini/pick.lua -o runtime/lua/mini/pick.lua # Get ripgrep curl -LO $(curl -s https://api.github.com/repos/BurntSushi/ripgrep/releases/latest | grep '"browser_download_url"' | grep 'x86_64-unknown-linux-musl.tar.gz' | grep -vE '(\.pem|\.sig|\.sha256)' | grep -o 'https://[^"]*') mv ripgrep* archive.tar.gz tar -xvf archive.tar.gz rm -rf archive.tar.gz mv ripgrep*/rg rg chmod +x rg rm -rf ripgrep* # Write Launch Files cat > $NVIM/init.sh << EndOfMessage #!/bin/sh export PATH="$NVIM:\$PATH" EndOfMessage chmod u+x $NVIM/init.sh cat > $NVIM/nvim << EndOfMessage #!/bin/sh NVIM_LOG_FILE=/dev/null \$(dirname "\$0")/nvim.appimage -n -i NONE -u \$(dirname "\$0")/runtime/init.lua "\$@" EndOfMessage chmod u+x $NVIM/nvim