Skip to content

Installation Guide

Mikhail Deynekin edited this page Dec 23, 2025 · 2 revisions

This guide provides comprehensive instructions for installing Clean BOM Senior across multiple platforms and environments.

System Requirements

Minimum Requirements

  • RAM: 128 MB
  • Disk Space: 1 MB for script + optional dependencies
  • Bash: 3.2+ (bash 4.0+ recommended)
  • POSIX-compliant shell: sh, bash, zsh, ksh
  • Standard utilities: find, od or hexdump or xxd, sed or tr

Recommended Requirements

  • RAM: 512 MB+
  • Bash: 4.0+
  • GNU tools: GNU find, GNU sed, GNU coreutils
  • Additional tools: git (for development), make (for building)
  • Storage: SSD for processing large file sets

Supported Platforms

Linux Distributions

  • Ubuntu: 18.04 LTS, 20.04 LTS, 22.04 LTS, 24.04 LTS
  • Debian: 10, 11, 12 (Bookworm)
  • CentOS/RHEL: 7, 8, 9
  • Fedora: 35+
  • Arch Linux: Current release
  • Alpine Linux: 3.13+
  • openSUSE: 15.0+

macOS

  • Intel-based: macOS 10.13 (High Sierra) and later
  • Apple Silicon: macOS 11.0+ (Big Sur and later)
  • Homebrew: Available via Homebrew package manager

Windows

  • Windows 10: Build 1909 and later (WSL2 recommended)
  • Windows 11: Full support with WSL2
  • WSL2: Ubuntu, Debian, or other Linux distributions
  • Git Bash: MinGW-w64 based bash environment
  • Cygwin: Full support with POSIX utilities

Other Unix-like Systems

  • BSD: FreeBSD 11+, OpenBSD 6.5+, NetBSD 8.0+
  • Solaris/illumos: 11+
  • AIX: 7.1+

Installation Methods

Method 1: Direct Download (Recommended)

Linux/macOS

# Download the latest release
wget https://raw.githubusercontent.com/paulmann/Clean_BOM_Senior/main/clean-bom-senior.sh

# Or using curl
curl -O https://raw.githubusercontent.com/paulmann/Clean_BOM_Senior/main/clean-bom-senior.sh

# Make it executable
chmod +x clean-bom-senior.sh

# Optional: Move to a system path for global access
sudo mv clean-bom-senior.sh /usr/local/bin/clean-bom-senior

Windows (WSL2 or Git Bash)

# Use wget or curl (same as Linux/macOS above)
wget https://raw.githubusercontent.com/paulmann/Clean_BOM_Senior/main/clean-bom-senior.sh
chmod +x clean-bom-senior.sh

Method 2: Git Clone (Development)

# Clone the repository
git clone https://github.com/paulmann/Clean_BOM_Senior.git
cd Clean_BOM_Senior

# Make script executable
chmod +x clean-bom-senior.sh

# Verify installation
./clean-bom-senior.sh --version

# Optional: Create symlink for system-wide access
sudo ln -s $(pwd)/clean-bom-senior.sh /usr/local/bin/clean-bom-senior

Method 3: Package Manager (Linux)

Ubuntu/Debian

# Add PPA repository
sudo add-apt-repository ppa:paulmann/clean-bom-senior
sudo apt-get update
sudo apt-get install clean-bom-senior

# Verify installation
clean-bom-senior --version

Fedora/CentOS

# Using dnf (Fedora 22+)
sudo dnf install clean-bom-senior

# Or using yum (CentOS 7)
sudo yum install clean-bom-senior

Arch Linux

# From AUR
git clone https://aur.archlinux.org/clean-bom-senior.git
cd clean-bom-senior
makepkg -si

Method 4: Homebrew (macOS)

# Add tap (if available)
brew tap paulmann/clean-bom-senior

# Install
brew install clean-bom-senior

Method 5: Docker Container

# Pull Docker image
docker pull paulmann/clean-bom-senior:latest

# Run directly
docker run -v /path/to/files:/data paulmann/clean-bom-senior:latest clean-bom-senior /data

Post-Installation Configuration

Verify Installation

# Check version
./clean-bom-senior.sh --version

# Display help information
./clean-bom-senior.sh --help

# Test with dry-run
./clean-bom-senior.sh --dry-run /path/to/test/directory

Add to PATH (System-wide Access)

# Copy to system bin directory
sudo cp clean-bom-senior.sh /usr/local/bin/clean-bom-senior

# Or create symbolic link
sudo ln -s /full/path/to/clean-bom-senior.sh /usr/local/bin/clean-bom-senior

# Verify PATH inclusion
which clean-bom-senior

User-only Access

# Add to user bin directory
mkdir -p ~/.local/bin
cp clean-bom-senior.sh ~/.local/bin/clean-bom-senior
chmod +x ~/.local/bin/clean-bom-senior

# Add to PATH in ~/.bashrc or ~/.zshrc
echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bashrc
source ~/.bashrc

Troubleshooting Installation

Issue: Command not found

# Solution 1: Use full path
/path/to/clean-bom-senior.sh --help

# Solution 2: Create proper symlink
sudo ln -sf /full/path/to/clean-bom-senior.sh /usr/local/bin/clean-bom-senior

# Solution 3: Check PATH
echo $PATH
which clean-bom-senior

Issue: Permission Denied

# Make script executable
chmod +x clean-bom-senior.sh

# Or use bash explicitly
bash clean-bom-senior.sh /path/to/files

Issue: Bash not found or old version

# Check bash version (minimum: 3.2, recommended: 4.0+)
bash --version

# Install bash:
# Ubuntu/Debian
sudo apt-get install bash

# macOS
brew install bash

Issue: Required utilities not found

# Install missing tools:
# Ubuntu/Debian
sudo apt-get install coreutils findutils grep sed

# macOS
brew install coreutils gnu-sed findutils

# CentOS/RHEL
sudo yum install coreutils findutils grep sed

Uninstallation

Remove from System Path

sudo rm /usr/local/bin/clean-bom-senior

Remove User Installation

rm ~/.local/bin/clean-bom-senior
rm -rf ~/Clean_BOM_Senior

Next Steps

After successful installation, proceed to:

Clone this wiki locally