3.4 KiB
3.4 KiB
Nushell plugins for Provisioning
A Nushell plugins collection for Provisioning project
Warning
This repo contains sub-repos, use git clone --recurse-submodules
git clone --recurse-submodules [URL-to-clone-nushell-plugin]
Caution
nu_plugin_* have dependencies to nushell source via local path in Cargo.toml Nushell and plugins require to be sync with same version
FILES (content layout)
. ├── collect-install.sh Script to collect all nu_plugin_* and install in /usr/local/bin ├── env Main value settings ├── pack-dist.sh Script to archive **distribution** nu_plugin_* as architecture-platform.tar.gz ├── distribution │ ├── collect-install.sh Script to build and collect nu_plugin_* │ ├── install.sh Script to install nu_plugin_* binaries │ ├── install_nu_plugins.nu Nushell script to install nu_plugin_* │ ├── LICENSE │ └── README.txt ├── generate Template to generate plugins. Used with make_plugin.sh │ └── nu_plugin_template ├── LICENSE ├── make_plugin.sh To generate Nushell plugins. Used with generate path ├── nushell Nushell repo to be used as path for all nu_plugin_* ├── nu_plugin_clipboard ├── nu_plugin_desktop_notifications ├── nu_plugin_hashes ├── nu_plugin_highlight ├── nu_plugin_image ├── nu_plugin_port_extension ├── nu_plugin_qr_maker ├── nu_plugin_kcl Repo for nu_plugin_kcl (repo sub-module) ├── nu_plugin_tera Repo for nu_plugin_tera (repo sub-module) ├── api_nu_plugin_kcl A try to use API KCL, nu_plugin_kcl is recommended option ├── bin_archives Repo with plataform binaries as archives └── README.md
Main values can be changed in env
export APP_NAME=nushell-plugins
export TARGET_PATH=${TARGET_PATH:-distribution}
export INSTALL_FILE=${INSTALL_FILE:-install_nu_plugins.nu}
export INSTALL_BIN_PATH=${INSTALL_BIN_PATH:-/usr/local/bin}
export ARCHIVE_DIR_PATH=${ARCHIVE_DIR_PATH:-/tmp}
export BIN_ARCHIVES_DIR_PATH=bin_archives
Build and Install
- Run build-all.sh
./build-all.sh
- Collect all target/release with collect-install.sh, this will:
- Run distribution/collect-install.sh to copy release binaries into distribution directory
- Install distribution directory nu_plugin_ into $INSTALL_BIN_PATH (/usr/local/bin)
- Generatel distribution nu_plugin_ install script in install_nu_plugin.nu
./collect-install.sh
Nushell install
Plugins have to be added from Nushell
distribution/install_nu_plugin.nu
Pack distribution
pack-dist.sh is script to archive distribution nu_plugin_* as architecture-platform.tar.gz
./pack-dis.sh
This will generate an architecture-platform.tar.gz like: darwin-arm64-nushell-plugins.tar.gz
To install in a plataform:
cd /tmp
tar xzf architecture-platform.tar.gz
cd distribution
./install.sh
./install_nu_plugin.nu
cd /tmp