242 lines
		
	
	
		
			6.8 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			242 lines
		
	
	
		
			6.8 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
# MOXYTOOL
 | 
						|
 | 
						|
> Proxmox Administration Tool for vGPU setup, VM management, and cluster configuration
 | 
						|
 | 
						|
[](https://www.npmjs.com/package/@serve.zone/moxytool)
 | 
						|
[](https://opensource.org/licenses/MIT)
 | 
						|
 | 
						|
## Overview
 | 
						|
 | 
						|
MOXYTOOL is a comprehensive command-line tool for managing Proxmox servers, with a focus on simplified vGPU setup and advanced server configuration. Built with Deno and compiled to native binaries for maximum performance and portability.
 | 
						|
 | 
						|
## Features
 | 
						|
 | 
						|
- **vGPU Setup**: Automated installation and configuration of NVIDIA vGPU support on Proxmox
 | 
						|
- **Cross-Platform**: Native binaries for Linux, macOS, and Windows
 | 
						|
- **Multi-Architecture**: Support for x64 and ARM64 processors
 | 
						|
- **Interactive CLI**: User-friendly command-line interface with detailed guidance
 | 
						|
- **Proxmox Integration**: Deep integration with Proxmox VE for seamless management
 | 
						|
 | 
						|
## Installation
 | 
						|
 | 
						|
### One-Line Installation (Recommended)
 | 
						|
 | 
						|
```bash
 | 
						|
# Download and install MOXYTOOL automatically
 | 
						|
curl -sSL https://code.foss.global/serve.zone/moxytool/raw/branch/main/install.sh | sudo bash
 | 
						|
```
 | 
						|
 | 
						|
This will:
 | 
						|
- Detect your platform automatically (Linux x64/ARM64, macOS Intel/Apple Silicon, Windows)
 | 
						|
- Download the latest binary from Gitea releases (~400-500KB)
 | 
						|
- Install to `/usr/local/bin/moxytool`
 | 
						|
- Make it available system-wide
 | 
						|
 | 
						|
### Via npm (Alternative)
 | 
						|
 | 
						|
Install globally using npm:
 | 
						|
 | 
						|
```bash
 | 
						|
npm install -g @serve.zone/moxytool
 | 
						|
```
 | 
						|
 | 
						|
or with pnpm:
 | 
						|
 | 
						|
```bash
 | 
						|
pnpm install -g @serve.zone/moxytool
 | 
						|
```
 | 
						|
 | 
						|
**Benefits:**
 | 
						|
- Automatic platform detection and binary download
 | 
						|
- Easy updates via `npm update -g @serve.zone/moxytool`
 | 
						|
- Version management with npm
 | 
						|
- Works with Node.js >=14
 | 
						|
 | 
						|
## Usage
 | 
						|
 | 
						|
### Updating MOXYTOOL
 | 
						|
 | 
						|
Update to the latest version from the repository:
 | 
						|
 | 
						|
```bash
 | 
						|
moxytool update
 | 
						|
```
 | 
						|
 | 
						|
This command will:
 | 
						|
- Check the current version
 | 
						|
- Fetch the latest release from Gitea
 | 
						|
- Automatically download and install the update if available
 | 
						|
- Preserve your existing configuration
 | 
						|
 | 
						|
### vGPU Setup
 | 
						|
 | 
						|
Install and configure NVIDIA vGPU support on your Proxmox host:
 | 
						|
 | 
						|
```bash
 | 
						|
sudo moxytool vgpu-setup
 | 
						|
```
 | 
						|
 | 
						|
#### Arguments
 | 
						|
 | 
						|
- `--step <number>` - Force execution at a specific installation step
 | 
						|
- `--url <url>` - Use a custom driver URL (.run or .zip format)
 | 
						|
- `--file <path>` - Use a local driver file
 | 
						|
- `--debug` - Enable debug output mode
 | 
						|
 | 
						|
#### Examples
 | 
						|
 | 
						|
```bash
 | 
						|
# Basic setup with interactive prompts
 | 
						|
sudo moxytool vgpu-setup
 | 
						|
 | 
						|
# Use a custom driver URL
 | 
						|
sudo moxytool vgpu-setup --url https://example.com/driver.run
 | 
						|
 | 
						|
# Use a local driver file
 | 
						|
sudo moxytool vgpu-setup --file /path/to/driver.run
 | 
						|
 | 
						|
# Resume at a specific step
 | 
						|
sudo moxytool vgpu-setup --step 2
 | 
						|
 | 
						|
# Debug mode
 | 
						|
sudo moxytool vgpu-setup --debug
 | 
						|
```
 | 
						|
 | 
						|
### Installation Process
 | 
						|
 | 
						|
1. **Prerequisites**: Ensure virtualization is enabled in BIOS (Intel Vt-d or AMD IOMMU)
 | 
						|
2. **Run Setup**: Execute `sudo moxytool vgpu-setup`
 | 
						|
3. **Follow Prompts**: The installer will guide you through the process
 | 
						|
4. **Reboot**: System will require a reboot after initial setup
 | 
						|
5. **Complete Setup**: Run the command again after reboot to finish installation
 | 
						|
6. **Verify**: Check installation with `mdevctl types`
 | 
						|
 | 
						|
### Post-Installation
 | 
						|
 | 
						|
After successful installation:
 | 
						|
 | 
						|
1. **Verify vGPU profiles**: `mdevctl types`
 | 
						|
2. **Configure VMs**: Add vGPU devices in Proxmox web UI (VM → Hardware → Add → PCI Device)
 | 
						|
3. **Install guest drivers**: Download and install NVIDIA vGPU guest drivers in your VMs
 | 
						|
 | 
						|
### Community Scripts
 | 
						|
 | 
						|
Access and deploy 400+ community-maintained Proxmox installation scripts:
 | 
						|
 | 
						|
```bash
 | 
						|
# List all available scripts
 | 
						|
moxytool scripts list
 | 
						|
 | 
						|
# Search for specific applications
 | 
						|
moxytool scripts search docker
 | 
						|
moxytool scripts search homeassistant
 | 
						|
 | 
						|
# View detailed information
 | 
						|
moxytool scripts info docker
 | 
						|
 | 
						|
# Install a script
 | 
						|
sudo moxytool scripts run docker
 | 
						|
 | 
						|
# Refresh the script index
 | 
						|
moxytool scripts refresh
 | 
						|
```
 | 
						|
 | 
						|
**Features:**
 | 
						|
- Automatic daily index updates (cached locally)
 | 
						|
- 400+ LXC containers and VM templates
 | 
						|
- Full interactive installation support
 | 
						|
- Applications include: Docker, Jellyfin, Home Assistant, Pi-hole, Nextcloud, and many more
 | 
						|
 | 
						|
**Script Categories:**
 | 
						|
- Containerization (Docker, Podman, Kubernetes)
 | 
						|
- Media servers (Plex, Jellyfin, Emby)
 | 
						|
- Home automation (Home Assistant, Node-RED)
 | 
						|
- Development tools (GitLab, Jenkins, Gitea)
 | 
						|
- Network tools (Pi-hole, AdGuard, WireGuard)
 | 
						|
- Databases (PostgreSQL, MariaDB, MongoDB)
 | 
						|
- And much more...
 | 
						|
 | 
						|
## Requirements
 | 
						|
 | 
						|
- Proxmox VE 7.4-9.x
 | 
						|
- Root/sudo access
 | 
						|
- Internet connection for downloading scripts/drivers
 | 
						|
 | 
						|
**Note:** The tool comes as a pre-compiled binary - no runtime dependencies needed!
 | 
						|
 | 
						|
## Supported Platforms
 | 
						|
 | 
						|
- **Linux**: x64, ARM64
 | 
						|
- **macOS**: x64, ARM64 (Apple Silicon)
 | 
						|
- **Windows**: x64
 | 
						|
 | 
						|
## Development
 | 
						|
 | 
						|
**Note:** Development requires Deno. End users don't need Deno - they use pre-compiled binaries.
 | 
						|
 | 
						|
### Prerequisites
 | 
						|
 | 
						|
- Deno 2.x or later
 | 
						|
- Bash (for compilation scripts)
 | 
						|
 | 
						|
### Building from Source
 | 
						|
 | 
						|
```bash
 | 
						|
# Clone the repository
 | 
						|
git clone https://code.foss.global/serve.zone/moxytool.git
 | 
						|
cd moxytool
 | 
						|
 | 
						|
# Run locally with Deno
 | 
						|
deno task dev
 | 
						|
 | 
						|
# Compile binaries for all platforms
 | 
						|
deno task compile:all
 | 
						|
 | 
						|
# Run tests
 | 
						|
deno task test
 | 
						|
```
 | 
						|
 | 
						|
### Project Structure
 | 
						|
 | 
						|
```
 | 
						|
moxytool/
 | 
						|
├── mod.ts                      # Main entry point
 | 
						|
├── deno.json                   # Deno configuration
 | 
						|
├── package.json                # NPM package manifest
 | 
						|
├── ts/                         # TypeScript source files
 | 
						|
│   ├── moxytool.cli.ts        # CLI command definitions
 | 
						|
│   ├── moxytool.plugins.ts    # Plugin imports
 | 
						|
│   ├── moxytool.logging.ts    # Logging setup
 | 
						|
│   ├── moxytool.paths.ts      # Path definitions
 | 
						|
│   └── index.ts               # Node.js entry point
 | 
						|
├── bin/                        # Binary wrapper
 | 
						|
│   └── moxytool-wrapper.js    # NPM binary wrapper
 | 
						|
├── scripts/                    # Build scripts
 | 
						|
│   ├── compile-all.sh         # Compilation script
 | 
						|
│   └── install-binary.js      # Binary installation
 | 
						|
└── dist/                       # Compiled binaries
 | 
						|
    └── binaries/
 | 
						|
```
 | 
						|
 | 
						|
## Credits
 | 
						|
 | 
						|
MOXYTOOL uses the excellent [proxmox-vgpu-installer](https://github.com/anomixer/proxmox-vgpu-installer) by anomixer for the core vGPU installation process, which supports Proxmox v9.
 | 
						|
 | 
						|
## License
 | 
						|
 | 
						|
MIT License - see [LICENSE](license) file for details
 | 
						|
 | 
						|
## Support
 | 
						|
 | 
						|
- **Issues**: [https://code.foss.global/serve.zone/moxytool/issues](https://code.foss.global/serve.zone/moxytool/issues)
 | 
						|
- **Repository**: [https://code.foss.global/serve.zone/moxytool](https://code.foss.global/serve.zone/moxytool)
 | 
						|
 | 
						|
## Related Projects
 | 
						|
 | 
						|
- [NUPST](https://code.foss.global/serve.zone/nupst) - Network UPS Shutdown Tool
 | 
						|
- [SPARK](https://code.foss.global/serve.zone/spark) - Server Configuration and Management Tool
 | 
						|
 | 
						|
---
 | 
						|
 | 
						|
Made with ❤️ by [Serve Zone](https://serve.zone)
 |