diff --git a/BUILD_INSTRUCTIONS.md b/BUILD_INSTRUCTIONS.md deleted file mode 100644 index 73597ab..0000000 --- a/BUILD_INSTRUCTIONS.md +++ /dev/null @@ -1,519 +0,0 @@ -# Complete Build Instructions for NexTOR IP Changer Debian Package - -## Quick Start - -```bash -# Install dependencies -sudo apt-get update -sudo apt-get install -y build-essential debhelper dh-python python3-setuptools devscripts - -# Build the package -debuild -us -uc - -# Test the package -lintian -i ../nextor_1.1-1_all.deb - -# Install it -sudo dpkg -i ../nextor_1.1-1_all.deb -sudo apt-get install -f -``` - -## Detailed Build Process - -### Phase 1: Environment Setup - -#### 1.1 Install Build Tools - -```bash -# Update package lists -sudo apt-get update - -# Install essential build tools -sudo apt-get install -y \ - build-essential \ - debhelper \ - dh-python \ - devscripts \ - python3-setuptools \ - python3-all \ - lintian \ - fakeroot - -# Optional: for signing and advanced operations -sudo apt-get install -y \ - git-buildpackage \ - pristine-tar \ - gnupg \ - gpg-agent -``` - -#### 1.2 Configure Git (for commit signing) - -```bash -# Set up Git identity -git config --global user.name "Your Name" -git config --global user.email "your@email.com" - -# If you want to sign releases (recommended) -# First, generate a GPG key if you don't have one -gpg --gen-key - -# List your keys -gpg --list-keys - -# Configure Git to use your signing key -git config --global user.signingkey -git config --global commit.gpgsign true -``` - -#### 1.3 Verify Installation - -```bash -# Check debhelper version -dh --version - -# Check python tools -python3 --version -python3 -m pip --version - -# Check dpkg-buildpackage -dpkg-buildpackage --version -``` - -### Phase 2: Source Preparation - -#### 2.1 Navigate to Project Directory - -```bash -cd /path/to/NexTOR_IP_CHANGER -``` - -#### 2.2 Verify Project Structure - -```bash -# Expected structure: -find . -maxdepth 2 -type f | grep -E "(debian/|setup.py|pyproject.toml)" | sort -``` - -Should output: -``` -./debian/control -./debian/changelog -./debian/copyright -./debian/rules -./debian/install -./debian/nextor.1 -./debian/compat -./debian/source/format -./setup.py -./pyproject.toml -``` - -#### 2.3 Clean Previous Builds - -```bash -# Remove old build artifacts -debclean - -# Or manually remove -rm -rf build/ dist/ *.egg-info/ -rm -f debian/nextor/ -rm -f ../nextor_* -``` - -### Phase 3: Building the Package - -#### 3.1 Build with debuild (Recommended Method) - -```bash -# Navigate to project root -cd /path/to/NexTOR_IP_CHANGER - -# Build binary package only (unsigned) -debuild -us -uc -b - -# Or build source and binary (for full release) -debuild -us -uc - -# With detailed output -debuild -v -us -uc -``` - -**Build Output:** (in parent directory) -``` -../nextor_1.1-1_all.deb # Binary package -../nextor_1.1-1_amd64.changes # Changes file -../nextor_1.1-1.dsc # Source description (if building -S) -../nextor_1.1-1.tar.gz # Source tarball (if building -S) -../nextor_1.1-1.tar.xz # Source tarball XZ (if building -S) -``` - -#### 3.2 Alternative: Build with dpkg-buildpackage - -```bash -# Install build dependencies first -sudo apt-get build-dep . - -# Build binary package -dpkg-buildpackage -us -uc -b - -# Build everything (with signing) -dpkg-buildpackage -k -``` - -#### 3.3 Verify Build Success - -```bash -# Check package was created -ls -lh ../nextor_*.deb - -# Examine package details -file ../nextor_1.1-1_all.deb - -# Show package info -dpkg-deb -I ../nextor_1.1-1_all.deb -``` - -### Phase 4: Quality Assurance Testing - -#### 4.1 Lintian Analysis - -```bash -# Basic lintian check -lintian ../nextor_1.1-1_all.deb - -# Detailed (with explanations) -lintian -i ../nextor_1.1-1_all.deb - -# Show all severity levels -lintian --display-info ../nextor_1.1-1_all.deb - -# Check for specific category -lintian -t debian_policy ../nextor_1.1-1_all.deb -``` - -**Expected Output:** Clean or only informational messages - -#### 4.2 Manual Package Inspection - -```bash -# Extract package to temporary location -mkdir /tmp/nextor-inspect -dpkg-deb -x ../nextor_1.1-1_all.deb /tmp/nextor-inspect - -# Browse extracted files -tree /tmp/nextor-inspect -cd /tmp/nextor-inspect && find . -type f | sort - -# Check key files exist -ls -la /tmp/nextor-inspect/usr/bin/nextor -ls -la /tmp/nextor-inspect/usr/share/man/man1/nextor.1* -``` - -#### 4.3 Dependency Verification - -```bash -# Extract and analyze dependencies -dpkg-deb -f ../nextor_1.1-1_all.deb Depends - -# Verify each dependency is installable -apt-cache search python3-stem -apt-cache search python3-requests -apt-cache search tor - -# Check package provides -dpkg-deb -f ../nextor_1.1-1_all.deb Provides -``` - -### Phase 5: Installation and Functional Testing - -#### 5.1 Test Installation - -```bash -# Install the package -sudo dpkg -i ../nextor_1.1-1_all.deb - -# If dependency issues, use apt to fix -sudo apt-get install -f - -# Verify installation -dpkg -l | grep nextor -which nextor -``` - -#### 5.2 Functional Testing - -```bash -# Test command availability -nextor --help 2>&1 || echo "Command executed" - -# View man page -man nextor - -# Check file permissions -ls -la /usr/bin/nextor -ls -la /usr/share/doc/nextor/ - -# Test Python imports -python3 -c "from Nex_Tor_IP_changer import NexTOR; print('✓ Import successful')" - -# Verify dependencies are accessible -python3 -c "import requests; print('✓ requests available')" -python3 -c "import stem; print('✓ stem available')" -``` - -#### 5.3 Uninstallation Testing - -```bash -# Remove package -sudo apt-get remove nextor - -# Verify clean removal of package files -dpkg -L nextor 2>&1 | head -5 - -# Completely remove (purge config files) -sudo apt-get purge nextor - -# Verify complete removal -which nextor || echo "✓ nextor fully removed" -``` - -### Phase 6: Build Artifact Management - -#### 6.1 Archive Build Products - -```bash -# Create build artifacts directory -mkdir -p ~/nextor-builds/v1.1-1 - -# Copy build artifacts -cp ../nextor_1.1-1_all.deb ~/nextor-builds/v1.1-1/ -cp ../nextor_1.1-1_amd64.changes ~/nextor-builds/v1.1-1/ -cp ../nextor_1.1-1.dsc ~/nextor-builds/v1.1-1/ # if available -cp ../nextor_1.1-1.tar.* ~/nextor-builds/v1.1-1/ # source archives - -# List archived artifacts -ls -lh ~/nextor-builds/v1.1-1/ -``` - -#### 6.2 Create Build Summary - -```bash -# Generate build info -cat > ~/nextor-builds/v1.1-1/BUILD_INFO.txt << 'EOF' -NexTOR IP Changer Debian Package Build -====================================== - -Build Date: $(date) -Package Version: 1.1-1 -Architecture: all -Distribution: Debian/Kali Linux - -Build System Information ------------------------- -Debian/Ubuntu Version: $(lsb_release -ds) -Kernel: $(uname -r) -Python: $(python3 --version) -Build Tools: debhelper $(dh --version), dpkg-buildpackage - -Build Command Used ------------------- -debuild -us -uc - -Quality Assurance ------------------ -Lintian Status: PASSED -Installation Test: PASSED -Functional Test: PASSED - -Artifacts Included ------------------- -- nextor_1.1-1_all.deb (Binary package) -- nextor_1.1-1_amd64.changes (Changes file) -- nextor_1.1-1.dsc (Source description) [if available] -- nextor_1.1-1.tar.* (Source archives) [if available] - -Installation Instructions --------------------------- -sudo dpkg -i nextor_1.1-1_all.deb -sudo apt-get install -f -EOF - -cat ~/nextor-builds/v1.1-1/BUILD_INFO.txt -``` - -## Troubleshooting - -### Build Failures - -#### Error: "Build-depends not satisfied" - -```bash -# Install missing build dependencies -sudo apt-get build-dep . - -# Or manually install from control file -sudo apt-get install debhelper-compat dh-python python3-setuptools -``` - -#### Error: "debuild command not found" - -```bash -# Install devscripts package -sudo apt-get install devscripts - -# Verify installation -devscripts --version -``` - -#### Error: "Permission denied" on debian/rules - -```bash -# Make rules executable -chmod +x debian/rules - -# Or during first build -debuild -us -uc -``` - -#### Error: "Package has no source" - -```bash -# Ensure you're in the correct directory -pwd -ls -la debian/control - -# Ensure debian/ directory exists -[ -d debian ] && echo "debian/ exists" || echo "Missing debian/" -``` - -### Package Installation Failures - -#### Error: "dependency issues / unmet dependencies" - -```bash -# Preview dependencies before installing -dpkg -I ../nextor_1.1-1_all.deb | grep Depends - -# Install with dependency resolution -sudo apt-get install -y tor python3-stem python3-requests -sudo dpkg -i ../nextor_1.1-1_all.deb -sudo apt-get install -f -``` - -#### Error: "Package conflicts with installed version" - -```bash -# Remove conflicting package first -sudo apt-get remove nextor-ip-changer - -# Or purge to remove config files -sudo apt-get purge nextor-ip-changer - -# Then install new package -sudo dpkg -i ../nextor_1.1-1_all.deb -``` - -### Runtime Failures - -#### Error: "nextor: command not found" - -```bash -# Verify installation -dpkg -l | grep nextor - -# Check binary exists and is executable -ls -la /usr/bin/nextor - -# Verify PATH includes /usr/bin -echo $PATH | grep /usr/bin - -# Reinstall if necessary -sudo dpkg --configure nextor -``` - -#### Error: "Python import failed" - -```bash -# Verify Python package installed correctly -dpkg -L nextor | grep -E '\.py$' - -# Check package contents -dpkg -c ../nextor_1.1-1_all.deb | grep -E '\.py$' - -# Verify Python path -python3 -c "import sys; print(sys.path)" - -# Test imports manually -python3 -c "from Nex_Tor_IP_changer.NexTOR import main" -``` - -## Additional Commands - -### Size Analysis - -```bash -# Binary package size -du -h ../nextor_1.1-1_all.deb - -# Uncompressed size -dpkg-deb -I ../nextor_1.1-1_all.deb | grep Installed-Size - -# Breakdown by directory -dpkg-deb -x ../nextor_1.1-1_all.deb /tmp/analyze -du -sh /tmp/analyze/*/ -``` - -### Compatibility Testing - -```bash -# Test on different distributions -# Simulate Debian Bookworm -debootstrap bookworm /tmp/bookworm -chroot /tmp/bookworm /bin/bash -dpkg -i /nextor_1.1-1_all.deb - -# Or use Docker for isolation -docker run -it debian:bookworm bash -apt-get update -dpkg -i /nextor_1.1-1_all.deb -``` - -### Security Checks - -```bash -# Scan for vulnerabilities in dependencies -apt-cache depends --recurse nextor - -# Verify GPG signature (if signed) -dpkg-sig --verify ../nextor_1.1-1_all.deb - -# Check for suspicious permissions -dpkg-deb -x ../nextor_1.1-1_all.deb /tmp/sec -find /tmp/sec -type f -perm /006 -``` - -## Final Checklist - -Before submitting to Kali Linux: - -- [ ] `debuild -us -uc` completes without errors -- [ ] Package file exists: `../nextor_1.1-1_all.deb` -- [ ] `lintian -i` shows no errors (only warnings/info) -- [ ] `sudo dpkg -i` installs successfully -- [ ] `nextor` command is executable -- [ ] `man nextor` displays properly -- [ ] `python3 -c "from Nex_Tor_IP_changer import NexTOR"` works -- [ ] Dependencies listed in `debian/control` are all required and available -- [ ] No Debian Policy violations -- [ ] Copyright file is complete and accurate -- [ ] Package builds on target distributions (Debian/Kali) -- [ ] All Python files have shebang header if executable - ---- - -**For more information:** -- [DEBIAN_PACKAGING.md](DEBIAN_PACKAGING.md) - Detailed Debian packaging guide -- [KALI_SUBMISSION.md](KALI_SUBMISSION.md) - Kali Linux submission process -- [Debian Policy Manual](https://www.debian.org/doc/debian-policy/) -- [debhelper Documentation](https://manpages.debian.org/debhelper) diff --git a/COMPLETE_PACKAGING_GUIDE.md b/COMPLETE_PACKAGING_GUIDE.md deleted file mode 100644 index c68d511..0000000 --- a/COMPLETE_PACKAGING_GUIDE.md +++ /dev/null @@ -1,676 +0,0 @@ -# NexTOR IP Changer - Complete Debian Package Documentation - -**Version:** 1.1 -**Date:** April 14, 2026 -**License:** MIT -**Distribution:** Debian/Kali Linux - ---- - -## 📦 Executive Summary - -NexTOR IP Changer is now a fully-packaged, production-ready Debian package suitable for integration into Kali Linux. This document provides a complete overview of the packaging structure, build process, and submission guidelines. - -### Key Achievements - -✅ Complete Debian packaging structure (Policy 4.6.1 compliant) -✅ Professional man page documentation -✅ Automated build and test infrastructure ready -✅ Kali Linux submission guidelines included -✅ All dependencies properly declared -✅ MIT License compliance verified -✅ Python 3.6+ compatibility ensured -✅ Zero build warnings expected - ---- - -## 📋 Package Information - -| Field | Value | -|-------|-------| -| **Package Name** | nextor | -| **Version** | 1.1-1 | -| **Architecture** | all (architecture-independent) | -| **Section** | utils | -| **Priority** | optional | -| **Maintainer** | Staff | -| **License** | MIT | -| **Homepage** | https://github.com/0x5t4l1n/NexTOR_IP_CHANGER | -| **Installer** | /usr/bin/nextor | -| **Built With** | debhelper 13, dh-python | - -### Dependencies - -**Runtime:** -- python3 (>= 3.6) -- python3-requests (>= 2.22.0) -- python3-stem (>= 1.8.0) -- tor (latest) - -**Build:** -- debhelper-compat (= 13) -- dh-python -- python3-setuptools -- python3-all - ---- - -## 📂 Project Structure - -``` -NexTOR_IP_CHANGER/ -│ -├── debian/ ← DEBIAN PACKAGING FILES -│ ├── control Package metadata (dependencies, maintainer) -│ ├── changelog Version/release history -│ ├── copyright License: MIT -│ ├── rules Build rules (debhelper-based) -│ ├── install File installation manifest -│ ├── nextor.1 Man page (documentation) -│ ├── compat Debhelper compatibility: level 13 -│ └── source/ -│ └── format Source format: 3.0 (quilt) -│ -├── Nex_Tor_IP_changer/ ← PYTHON PACKAGE -│ ├── __init__.py Package initialization (NEW) -│ ├── NexTOR.py Main executable -│ ├── nex.py Utility functions -│ └── install.py Installation utilities -│ -├── setup.py ← PYTHON SETUP (NEW) -│ Installation script for pip/setuptools -│ -├── pyproject.toml ← BUILD CONFIG (NEW) -│ Modern Python build specification (PEP 517, 518) -│ -├── MANIFEST.in ← BUILD MANIFEST (NEW) -│ Specifies which files to include -│ -├── .gitignore ← SCM (NEW) -│ Git ignore rules -│ -├── BUILD_INSTRUCTIONS.md ← DOCUMENTATION (NEW) -│ Complete step-by-step build guide -│ -├── DEBIAN_PACKAGING.md ← DOCUMENTATION (NEW) -│ Debian Policy compliance details -│ -├── KALI_SUBMISSION.md ← DOCUMENTATION (NEW) -│ Kali Linux submission process -│ -├── QUICK_REFERENCE.md ← DOCUMENTATION (NEW) -│ Command quick reference -│ -├── LICENSE MIT License -│ -└── README.md Project documentation -``` - ---- - -## 🔧 Installation & Building Guide - -### Quick Start (5 minutes) - -```bash -# Terminal: 1. Navigate to project directory -cd /home/w4nn4d13/Downloads/NexTOR_IP_CHANGER - -# Terminal: 2. Install build dependencies -sudo apt-get update -sudo apt-get install -y build-essential debhelper dh-python devscripts - -# Terminal: 3. Build the Debian package -debuild -us -uc - -# Terminal: 4. Verify the build -ls -lh ../nextor_1.1-1_all.deb - -# Terminal: 5. Test package quality -lintian -i ../nextor_1.1-1_all.deb - -# Terminal: 6. Install the package -sudo dpkg -i ../nextor_1.1-1_all.deb -sudo apt-get install -f - -# Terminal: 7. Test the installation -nextor --help -man nextor -``` - -### Step-by-Step Build Process - -#### Step 1: Environment Setup - -```bash -# Install all required build tools -sudo apt-get install -y \ - build-essential \ - debhelper \ - dh-python \ - devscripts \ - python3-setuptools \ - python3-all \ - lintian \ - fakeroot - -# Verify installation -dh --version -python3 --version -lintian --version -``` - -#### Step 2: Navigate to Project - -```bash -cd /home/w4nn4d13/Downloads/NexTOR_IP_CHANGER -pwd # Verify correct directory -ls -la debian/ # Verify debian/ exists -``` - -#### Step 3: Build the Package - -```bash -# Standard build (unsigned, binary only) -debuild -us -uc - -# Or with more verbose output -debuild -v -us -uc -``` - -**Build Process:** -1. Source cleanup -2. Dependency resolution -3. Python build (setuptools) -4. Debian integration (debhelper) -5. Package creation -6. Control file generation - -#### Step 4: Quality Assurance - -```bash -# Run lintian scanner -lintian -i ../nextor_1.1-1_all.deb - -# Expected: Clean or only informational messages -# Any errors must be fixed before submission -``` - -#### Step 5: Installation Testing - -```bash -# Install the package -sudo dpkg -i ../nextor_1.1-1_all.deb - -# Fix any dependency issues -sudo apt-get install -f - -# Verify installation -which nextor -dpkg -l | grep nextor - -# Test functionality -nextor --help # or test interactively -man nextor - -# Test Python imports -python3 -c "from Nex_Tor_IP_changer import NexTOR; print('✓ OK')" -``` - -#### Step 6: Cleanup (Optional) - -```bash -# Clean build artifacts -debclean - -# Or manual cleanup -rm -f ../nextor_* -rm -rf debian/nextor/ build/ dist/ -``` - -### Troubleshooting Build Issues - -**Problem:** `debuild: command not found` -```bash -Solution: sudo apt-get install devscripts -``` - -**Problem:** Build dependency errors -```bash -Solution: sudo apt-get build-dep . -``` - -**Problem:** `lintian` shows errors -```bash -Solution: See DEBIAN_PACKAGING.md for specific linting errors -``` - -**Problem:** Installation dependency failed -```bash -Solution: sudo apt-get install -f -``` - ---- - -## 📖 Documentation Files - -### 1. BUILD_INSTRUCTIONS.md -**Purpose:** Complete build guide with detailed steps -**Audience:** Package builders and maintainers -**Contents:** -- Environment setup -- Phase-by-phase build process -- Quality assurance testing -- Troubleshooting guide -- Build artifact management - -**Usage:** -```bash -# Reference for detailed build steps -cat BUILD_INSTRUCTIONS.md | less -``` - -### 2. DEBIAN_PACKAGING.md -**Purpose:** Debian Policy compliance and standards -**Audience:** Developers maintaining the package -**Contents:** -- Debian package structure explanation -- Policy file details (control, rules, etc.) -- Debian compliance checklist -- Common linting errors and fixes - -**Usage:** -```bash -# Reference for Debian standards -grep "lintian\|control\|copyright" DEBIAN_PACKAGING.md -``` - -### 3. KALI_SUBMISSION.md -**Purpose:** Submission guidelines for Kali Linux -**Audience:** Package maintainers submitting to Kali -**Contents:** -- Kali packaging standards -- GitLab repository structure -- Merge request process -- CI/CD requirements -- Post-acceptance responsibilities - -**Usage:** -```bash -# Reference for Kali submission process -cat KALI_SUBMISSION.md | less -``` - -### 4. QUICK_REFERENCE.md -**Purpose:** Command cheat sheet -**Audience:** All users (for quick lookup) -**Contents:** -- Essential commands (build, test, install) -- Common issues & quick fixes -- Directory structure overview -- Package metadata quick view - -**Usage:** -```bash -# Quick command lookup -grep "debuild\|lintian\|installation" QUICK_REFERENCE.md -``` - ---- - -## 🚀 Using the Package - -### Installation Method 1: From Built Package - -```bash -# Build (from above) -debuild -us -uc - -# Install -sudo dpkg -i ../nextor_1.1-1_all.deb -sudo apt-get install -f - -# Verify -nextor -``` - -### Installation Method 2: From Repository (Future) - -Once submitted to Kali Linux: - -```bash -# Update package list -sudo apt-get update - -# Install from Kali repository -sudo apt-get install nextor - -# Verify -nextor -``` - -### Running NexTOR - -```bash -# Start the interactive tool -nextor - -# The tool prompts for: -# 1. Rotation interval (seconds) -# 2. Number of rotations (or infinite) -# 3. Confirmation to start - -# View help -man nextor - -# View package info -dpkg -L nextor -``` - ---- - -## ✅ Quality Assurance Checklist - -Before any submission or deployment: - -- [ ] **Build Process** - - [ ] `debuild -us -uc` completes successfully - - [ ] No build errors or warnings - - [ ] Binary package created: `nextor_1.1-1_all.deb` - -- [ ] **Code Quality** - - [ ] `lintian -i` shows no errors - - [ ] All Debian Policy violations fixed - - [ ] Man page syntax is correct - -- [ ] **Installation Testing** - - [ ] `sudo dpkg -i` installs successfully - - [ ] `sudo apt-get install -f` fixes dependencies - - [ ] No orphaned files after removal - -- [ ] **Functionality Testing** - - [ ] `nextor` command is in PATH - - [ ] `which nextor` returns `/usr/bin/nextor` - - [ ] `man nextor` displays properly - - [ ] Python imports work: `python3 -c "from Nex_Tor_IP_changer import NexTOR"` - -- [ ] **Dependency Verification** - - [ ] All dependencies listed in `debian/control` - - [ ] No missing dependencies - - [ ] Version constraints are correct - - [ ] All packages are available in repositories - -- [ ] **Documentation** - - [ ] `debian/copyright` is complete - - [ ] `debian/changelog` has proper format - - [ ] `README.md` describes the tool - - [ ] Man page is comprehensive - -- [ ] **Compliance** - - [ ] Debian Policy 4.6.1 compliant - - [ ] License (MIT) properly specified - - [ ] No proprietary code included - - [ ] Git history is clean - ---- - -## 📝 Package Files Explained - -### debian/control -Metadata file specifying package information -``` -Source: Package name -Maintainer: Contact information -Build-Depends: Tools needed to build -Package: Binary package name -Architecture: Target architecture (all=universal) -Depends: Runtime dependencies -Description: Package description -``` - -### debian/changelog -Release history in Debian format -``` -Format: () ; urgency= - * Change entry - * Another change - -- Maintainer Date -``` - -### debian/copyright -License information in DEP-5 format -``` -Files: Which files -Copyright: Copyright holder + year -License: License name - -``` - -### debian/rules -Build rules (uses debhelper) -``` -#!/usr/bin/make -f -%: - dh $@ --with python3 -``` - -### debian/install -Installation manifest -``` -source/path target/path -``` - -### debian/nextor.1 -Man page in troff format -``` -.TH NEXTOR 1 "Date" "nextor Version" "User Commands" -.SH NAME -.SH SYNOPSIS -.SH DESCRIPTION -etc. -``` - -### setup.py -Python package installer -```python -setup( - name="nextor", - version="1.1", - packages=find_packages(), - install_requires=[...], - entry_points={"console_scripts": [...]}, -) -``` - -### pyproject.toml -Modern Python build configuration (PEP 517, 518) -```toml -[project] -name = "nextor" -version = "1.1" -[project.scripts] -nextor = "Nex_Tor_IP_changer.NexTOR:main" -``` - ---- - -## 🔄 Debian Policy Compliance - -**Standards Version:** 4.6.1 (current stable) - -### Checked Compliance - -✅ Proper package structure -✅ `debian/` directory with all required files -✅ Valid `debian/control` format -✅ Proper `debian/copyright` declarations -✅ Executable `debian/rules` file -✅ Valid `debian/changelog` entries -✅ Appropriate section (utils) -✅ Clear and descriptive package description -✅ Proper dependency declarations -✅ License compliance (MIT) -✅ Man page installation -✅ Python3 compatibility - -### Build System - -- **Debhelper:** Level 13 (current) -- **Build Tool:** dh-python (Python support) -- **Source Format:** 3.0 (quilt) - for easy patching - ---- - -## 🎯 Kali Linux Submission Process - -### Prerequisites - -1. GitLab account and Kali team access -2. GPG key for signing (recommended) -3. Knowledge of the submission process - -### Quick Submission Steps - -```bash -# 1. Clone Kali packages repository -git clone https://gitlab.com/kali-team/packages/nextor.git - -# 2. Update maintainer information -# - Change Maintainer to "Kali Linux " -# - Add yourself as Uploader - -# 3. Update version -# Edit debian/changelog: Add "-1kali1" suffix - -# 4. Build and test -debuild -us -uc -lintian -i ../nextor_*.deb - -# 5. Commit with signature -git add debian/ -git commit -S -m "Initial Kali Linux package for nextor" -git push origin main - -# 6. Create merge request on GitLab -# Target: kali-team/packages/nextor:master -# Include build verification and lintian report -``` - -### Full Details - -See [KALI_SUBMISSION.md](KALI_SUBMISSION.md) for: -- Account setup -- Repository structure -- Merge request guidelines -- CI/CD requirements -- Post-acceptance maintenance - ---- - -## 📊 Statistics - -### Package Contents - -| Component | Count | Size | -|-----------|-------|------| -| Python files | 4 | ~150 KB | -| Documentation | 6 | ~350 KB | -| Debian files | 8 | ~100 KB | -| Total | 18+ files | ~600 KB | - -### Build Artifacts - -| File | Purpose | -|------|---------| -| nextor_1.1-1_all.deb | Binary package | -| nextor_1.1-1_amd64.changes | Changes file | -| nextor_1.1-1.dsc | Source description | -| nextor_1.1-1.tar.gz | Source tarball | -| nextor_1.1-1.tar.xz | Compressed source | - -### Dependencies - -| Package | Version | Purpose | -|---------|---------|---------| -| python3 | ≥3.6 | Runtime | -| python3-requests | ≥2.22.0 | HTTP library | -| python3-stem | ≥1.8.0 | Tor control | -| tor | latest | Tor daemon | - ---- - -## 🔗 Quick Links - -| Document | Purpose | -|----------|---------| -| [BUILD_INSTRUCTIONS.md](BUILD_INSTRUCTIONS.md) | Detailed build guide | -| [DEBIAN_PACKAGING.md](DEBIAN_PACKAGING.md) | Debian standards | -| [KALI_SUBMISSION.md](KALI_SUBMISSION.md) | Kali submission | -| [QUICK_REFERENCE.md](QUICK_REFERENCE.md) | Command cheatsheet | -| [GitHub Repository](https://github.com/0x5t4l1n/NexTOR_IP_CHANGER) | Upstream source | - ---- - -## 📱 Support & Contact - -- **Package Maintainer:** Stalin -- **GitHub Issues:** Report bugs at https://github.com/0x5t4l1n/NexTOR_IP_CHANGER/issues -- **Kali Contact:** devel@kali.org (after submission) - ---- - -## 📜 License - -This package is licensed under the MIT License. See [LICENSE](LICENSE) for full details. - -``` -MIT License - Full Open Source -✓ Free to use, modify, distribute -✓ Requires attribution -✓ No warranty provided -``` - ---- - -## 🎓 Learning Resources - -### For Debian Packaging -- [Debian New Maintainers' Guide](https://www.debian.org/doc/manuals/debian-faq/) -- [Debian Policy Manual](https://www.debian.org/doc/debian-policy/) -- [debhelper Manual](https://manpages.debian.org/debhelper) - -### For Kali Linux -- [Kali Linux Documentation](https://www.kali.org/docs/) -- [Kali Devel Mailing List](https://www.kali.org/docs/community/kali-developers/) -- [Kali GitLab](https://gitlab.com/kali-team/) - -### For Python Packaging -- [Python Packaging Guide](https://packaging.python.org/) -- [PEP 517 - Build Backend](https://peps.python.org/pep-0517/) -- [PEP 518 - pyproject.toml](https://peps.python.org/pep-0518/) - ---- - -## ✨ Summary - -You now have a **complete, professional-grade Debian package** for NexTOR IP Changer ready for: - -✅ Local distribution and testing -✅ Community sharing -✅ Kali Linux repository submission -✅ Private enterprise deployment -✅ Long-term maintenance - -All files follow Debian Policy 4.6.1, include comprehensive documentation, and are ready for immediate use. - -**Next Steps:** -1. Run `debuild -us -uc` to build the package -2. Test with `lintian` and `dpkg -i` -3. Follow KALI_SUBMISSION.md to submit to Kali Linux (optional) -4. Deploy and maintain the package - ---- - -**Document Version:** 1.0 -**Last Updated:** April 14, 2026 -**Status:** ✅ Complete and Ready for Production diff --git a/DEBIAN_PACKAGING.md b/DEBIAN_PACKAGING.md deleted file mode 100644 index 3796234..0000000 --- a/DEBIAN_PACKAGING.md +++ /dev/null @@ -1,381 +0,0 @@ -# Debian Packaging Guide for NexTOR IP Changer - -This guide provides complete instructions for building, testing, and deploying the NexTOR IP Changer as a Debian package. - -## Table of Contents - -1. [Overview](#overview) -2. [Prerequisites](#prerequisites) -3. [Package Structure](#package-structure) -4. [Building the Package](#building-the-package) -5. [Testing the Package](#testing-the-package) -6. [Installation](#installation) -7. [Troubleshooting](#troubleshooting) - -## Overview - -**Package Name:** nextor -**Version:** 1.1 -**License:** MIT -**Architecture:** all (architecture-independent) -**Section:** utils - -NexTOR IP Changer is a command-line tool for rotating Tor exit nodes and changing your public IP address dynamically. - -## Prerequisites - -### Required Tools - -```bash -sudo apt-get update -sudo apt-get install -y \ - build-essential \ - debhelper \ - dh-python \ - python3-setuptools \ - python3-all \ - devscripts \ - lintian \ - fakeroot \ - git -``` - -### System Requirements - -- Debian-based system (Ubuntu, Kali Linux, etc.) -- Python 3.6 or later -- Git (for version control) - -## Package Structure - -The complete Debian package structure is as follows: - -``` -NexTOR_IP_CHANGER/ -├── debian/ # Debian packaging files -│ ├── control # Package metadata -│ ├── changelog # Release history -│ ├── copyright # License information -│ ├── rules # Build rules -│ ├── install # File installation instructions -│ ├── nextor.1 # Man page -│ ├── compat # Debhelper compatibility level -│ └── source/ -│ └── format # Source format specification -├── Nex_Tor_IP_changer/ # Python package directory -│ ├── __init__.py # Package initialization -│ ├── NexTOR.py # Main executable -│ ├── nex.py # Utility functions -│ └── install.py # Installation utilities -├── setup.py # Python package setup -├── pyproject.toml # Build system configuration -├── MANIFEST.in # Build manifest -├── .gitignore # Git ignore rules -├── LICENSE # MIT License -└── README.md # Project documentation -``` - -### Debian Files Explained - -#### `debian/control` -- **Source:** Package source metadata -- **Package:** Binary package configuration -- Dependencies (Depends, Recommends, Conflicts) -- Homepage, version control links - -#### `debian/changelog` -- Maintains release history -- Required Debian policy file -- Format: `package (version) distribution; urgency=level` - -#### `debian/copyright` -- Specifies licensing information -- Lists copyright holders -- Required by Debian policy - -#### `debian/rules` -- Makefile for building the package -- Uses debhelper (dh) -- Automates compilation and installation - -#### `debian/install` -- Specifies which files to install -- Format: `source destination` -- Example: `NexTOR.py usr/share/nextor/` - -#### `debian/nextor.1` -- Man page (documentation) -- Accessed via `man nextor` -- Standard Debian documentation file - -#### `debian/source/format` -- Specifies packaging format: `3.0 (quilt)` for source format v3 - -#### `debian/compat` -- Debhelper compatibility level -- Current standard: level 13 - -## Building the Package - -### Step 1: Prepare the Build Environment - -```bash -cd /path/to/NexTOR_IP_CHANGER -``` - -### Step 2: Install Build Dependencies - -```bash -sudo apt-get build-dep . -``` - -Or manually: - -```bash -sudo apt-get install -y \ - debhelper-compat \ - dh-python \ - python3-setuptools \ - python3-all -``` - -### Step 3: Build the Package - -#### Option A: Using `debuild` (Recommended) - -```bash -debuild -us -uc -``` - -**Flags Explanation:** -- `-us`: Don't sign source file -- `-uc`: Don't sign changes file - -**Output Files:** Generated in parent directory -- `nextor_1.1-1_all.deb` - Binary package -- `nextor_1.1-1.dsc` - Source package description -- `nextor_1.1-1.tar.gz` - Source tarball -- `nextor_1.1-1_amd64.changes` - Changes file - -#### Option B: Using `dpkg-buildpackage` - -```bash -dpkg-buildpackage -us -uc -b -``` - -**Flags:** -- `-us`: Don't sign source file -- `-uc`: Don't sign changes file -- `-b`: Build binary package only - -#### Option C: Using `debuild` with Signing (Release) - -```bash -debuild -S -``` - -This creates signed source package for upload to repositories. - -### Step 4: Check Build Output - -```bash -ls -lh ../nextor*.deb -file ../nextor_1.1-1_all.deb -``` - -## Testing the Package - -### 1. Linting with `lintian` - -Check for Debian Policy violations: - -```bash -lintian -i ../nextor_1.1-1_all.deb -``` - -**Output Levels:** -- `E:` - Error (must fix) -- `W:` - Warning (should fix) -- `I:` - Info (informational) -- `N:` - Note (minor issue) - -### 2. Installation Test - -```bash -# Install the package -sudo dpkg -i ../nextor_1.1-1_all.deb - -# Verify installation -dpkg -l | grep nextor -which nextor - -# Check installed files -dpkg -L nextor -``` - -### 3. Functional Testing - -```bash -# Check dependencies -nextor --help 2>&1 || echo "May require manual setup" - -# View man page -man nextor - -# Test import -python3 -c "from Nex_Tor_IP_changer import NexTOR; print('Import successful')" -``` - -### 4. Uninstall Test - -```bash -sudo apt-get remove nextor -sudo apt-get purge nextor -``` - -Verify clean removal: - -```bash -dpkg -L nextor 2>&1 | grep "No such file" -``` - -## Installation - -### Method 1: Installation from Built Package - -```bash -sudo dpkg -i nextor_1.1-1_all.deb -sudo apt-get install -f # Fix any dependency issues -``` - -### Method 2: Installation from Repository (Future) - -When the package is added to Kali Linux repository: - -```bash -sudo apt-get update -sudo apt-get install nextor -``` - -### Post-Installation - -1. Ensure Tor is installed and running: - -```bash -sudo apt-get install tor -sudo systemctl enable tor -sudo systemctl start tor -``` - -2. Verify installation: - -```bash -nextor --help -man nextor -``` - -## Build Troubleshooting - -### Common Issues - -#### 1. "Package not found" or dependency errors - -**Solution:** -```bash -sudo apt-get update -sudo apt-get install -y python3-setuptools dh-python -``` - -#### 2. "Permission denied" during build - -**Solution:** -```bash -chmod +x debian/rules -sudo chown $USER:$USER -R . -``` - -#### 3. `lintian` reports errors - -**Common errors and fixes:** - -| Error | Solution | -|-------|----------| -| `E: changelog-is-dh_make-template` | Update changelog with real changes | -| `W: maintainer-not-in-uploaders` | Add maintainer to Uploaders field | -| `W: missing-upstream-changelog` | Add upstream changelog | -| `E: missing-build-depends` | Add missing tool to Build-Depends | - -#### 4. Build fails with "missing dependency" - -```bash -# Auto-install build dependencies -sudo apt-get build-dep . - -# Or manually from debian/control -sudo apt-get install $(grep Build-Depends debian/control \ - | sed 's/.*: //; s/,.*//; s/\[.*\]//g') -``` - -#### 5. Python import errors - -Ensure package has `__init__.py`: - -```bash -touch Nex_Tor_IP_changer/__init__.py -``` - -### Debug Commands - -```bash -# See full build process -debuild -v - -# Extract and inspect binary package -dpkg-deb -x ../nextor_1.1-1_all.deb /tmp/nextor-inspect - -# List package contents -dpkg -c ../nextor_1.1-1_all.deb - -# Show package information -dpkg-deb -I ../nextor_1.1-1_all.deb - -# Check dependencies -dpkg -I ../nextor_1.1-1_all.deb | grep Depends -``` - -## Clean Up - -Clean build artifacts: - -```bash -# Remove build directory -debclean - -# Remove all build files -rm -f ../nextor* -rm -rf debian/nextor/ -rm -rf build/ dist/ *.egg-info/ - -# Clean source tree -fakeroot debian/rules clean -``` - -## Checklist Before Release - -- [ ] Version bumped in `debian/changelog` -- [ ] `lintian` reports no errors -- [ ] Package installs without errors -- [ ] `nextor` command works -- [ ] Man page is readable: `man nextor` -- [ ] All dependencies correct in `debian/control` -- [ ] Copyright file complete and accurate -- [ ] LICENSE file present -- [ ] README documentation up-to-date - -## Additional Resources - -- [Debian New Maintainers' Guide](https://www.debian.org/doc/manuals/debian-faq/) -- [Debian Policy Manual](https://www.debian.org/doc/debian-policy/) -- [Debhelper Documentation](https://manpages.debian.org/debhelper) -- [dh_python Documentation](https://manpages.debian.org/dh_python3) -- [Lintian Checks](https://lintian.debian.org/manual/section-2.3.html) diff --git a/KALI_SUBMISSION.md b/KALI_SUBMISSION.md deleted file mode 100644 index 6d23042..0000000 --- a/KALI_SUBMISSION.md +++ /dev/null @@ -1,555 +0,0 @@ -# Kali Linux Package Submission Guide - -This guide explains how to submit the NexTOR IP Changer package to the official Kali Linux repository. - -## Table of Contents - -1. [Prerequisites](#prerequisites) -2. [Kali Linux Packaging Standards](#kali-linux-packaging-standards) -3. [Repository Structure](#repository-structure) -4. [GitLab Setup](#gitlab-setup) -5. [Package Submission Process](#package-submission-process) -6. [Merge Request Guidelines](#merge-request-guidelines) -7. [After Acceptance](#after-acceptance) - -## Prerequisites - -### Required Accounts and Tools - -1. **Kali Linux GitLab Account** - - Register at https://gitlab.com/ - - Join the Kali Linux organization - - Request maintainer access - -2. **GPG Key Setup** (for signing packages) - - ```bash - # Generate GPG key if you don't have one - gpg --gen-key - - # List your keys - gpg --list-keys - - # Configure git to use your key - git config --global user.signingkey - ``` - -3. **Git Tools** - - ```bash - sudo apt-get install -y \ - git \ - Git-buildpackage \ - debhelper \ - devscripts \ - pristine-tar - ``` - -4. **Debian Build Tools** - - ```bash - sudo apt-get install -y \ - build-essential \ - dh-python \ - python3-setuptools \ - lintian - ``` - -## Kali Linux Packaging Standards - -### Package Naming Conventions - -**Kali Repository Structure:** -``` -kali-tools/packages/ -└── nextor/ - ├── debian/ - │ └── (all debian files) - ├── Nex_Tor_IP_changer/ - ├── upstream/ - │ └── (tracks upstream source) - ├── .git-buildpackagerc - └── README -``` - -### Mandatory Changes for Kali - -1. **Adjust Maintainer Field** - - In `debian/control`, change to: - - ``` - Maintainer: Kali Linux - Uploaders: Stalin - ``` - -2. **Add Kali-Specific Section** - - In `debian/control`: - - ``` - Homepage: https://github.com/0x5t4l1n/NexTOR_IP_CHANGER - Vcs-Git: https://gitlab.com/kali-team/packages/nextor.git - Vcs-Browser: https://gitlab.com/kali-team/packages/nextor - ``` - -3. **Update Changelog Entry** - - In `debian/changelog`: - - ``` - nextor (1.1-1kali1) kali-dev; urgency=high - - * Kali Linux package release - * Automated Tor exit node rotation - - -- Kali Linux Mon, 14 Apr 2026 00:00:00 +0000 - ``` - -4. **Add Package Metadata** - - Create `debian/README.Debian`: - - ``` - NexTOR IP Changer for Debian - - Installation: - apt-get install nextor - - Usage: - nextor - - Documentation: - man nextor - - Upstream: https://github.com/0x5t4l1n/NexTOR_IP_CHANGER - ``` - -### Compliance Checklist - -- [ ] No proprietary code or non-open-source dependencies -- [ ] Clean lintian report -- [ ] Proper copyright headers -- [ ] MIT License compatible with Debian -- [ ] No security vulnerabilities in dependencies -- [ ] Package builds on all supported Debian releases -- [ ] Binary package is reproducible -- [ ] Documentation is complete - -## Repository Structure - -### Kali Packages Repository - -Kali Linux maintains packages in a structured GitLab repository: - -``` -https://gitlab.com/kali-team/packages/ -``` - -Each package has its own repository: - -``` -https://gitlab.com/kali-team/packages/nextor/ -``` - -### Repository Organization - -``` -nextor/ -├── .git/ # Git repository -├── .gitlab-ci.yml # CI/CD pipeline configuration -├── debian/ # Debian packaging files -├── upstream/ # Upstream source tracking (pristine-tar) -├── .git-buildpackagerc -├── README -└── docs/ # Additional documentation -``` - -## GitLab Setup - -### Fork the Repository - -1. Visit https://gitlab.com/kali-team/packages -2. Fork the organization (request access first) -3. Clone the kali-tools repository - - ```bash - git clone https://gitlab.com/kali-team/packages/nextor.git - cd nextor - ``` - -### Configure Git - -```bash -# Set user information -git config user.name "Your Name" -git config user.email "your.email@example.com" - -# Set signing key -git config user.signingkey - -# Enable auto-signing -git config commit.gpgsign true -``` - -### Create Remote Tracking - -```bash -# Add upstream -git remote add upstream https://gitlab.com/kali-team/packages/nextor.git - -# Verify remotes -git remote -v -``` - -## Package Submission Process - -### Step 1: Prepare the Repository - -```bash -# Create working directory -mkdir -p ~/kali-packages -cd ~/kali-packages - -# Clone or initialize -git clone https://gitlab.com//packages/nextor.git -cd nextor - -# If new repo, copy files -cp -r /path/to/NexTOR_IP_CHANGER/* . -``` - -### Step 2: Update Packaging Files - -Update files for Kali compliance: - -```bash -# Edit maintainer information -nano debian/control - -# Update version for Kali -nano debian/changelog - -# Add Kali-specific documentation -cat > debian/README.Debian << 'EOF' -NexTOR IP Changer for Kali Linux - -This package provides automated Tor exit node rotation for privacy -research, OSINT, and security testing. - -Installation: - sudo apt-get install nextor - -Usage: - nextor - -Requirements: - - Tor daemon must be running - - Python 3.6+ - -See man page for detailed usage: - man nextor - -Security: - This tool is for ethical use only. Ensure compliance with all - applicable laws and terms of service. -EOF -``` - -### Step 3: Build and Test - -```bash -# Install build dependencies -sudo apt-get build-dep . - -# Build the package -debuild -us -uc - -# Run lintian -lintian -i ../nextor_*.deb - -# Test installation -sudo dpkg -i ../nextor_*.deb -``` - -### Step 4: Commit Changes - -```bash -# Stage all changes -git add debian/ .gitignore MANIFEST.in pyproject.toml setup.py - -# Create signed commit -git commit -S -m "Initial Kali Linux package for nextor 1.1" - -# Verify commit is signed -git log --show-signature -``` - -### Step 5: Push to GitLab - -```bash -# Push to your fork -git push -u origin main - -# Or to specific branch for merge request -git checkout -b submit/nextor-1.1 -git push -u origin submit/nextor-1.1 -``` - -### Step 6: Create Merge Request - -1. Visit your forked repository on GitLab -2. Click "Create merge request" -3. Target: `kali-team/packages/nextor:master` -4. Source: Your feature branch - -**Merge Request Template:** - -```markdown -## Summary -Initial Debian package for NexTOR IP Changer v1.1 - -## Description -NexTOR IP Changer is a command-line tool for rotating Tor exit nodes -and dynamically changing your public IP address. Designed for privacy -research, OSINT, and security testing. - -## Checklist -- [x] Builds cleanly -- [x] Lintian report clean -- [x] Dependencies correct -- [x] Copyright file complete -- [x] Man page included -- [x] Tested on Debian/Kali -- [x] License compliant (MIT) - -## Testing -```bash -debuild -us -uc -lintian -i ../nextor_*.deb -sudo dpkg -i ../nextor_*.deb -nextor --help -man nextor -``` - -## References -- GitHub: https://github.com/0x5t4l1n/NexTOR_IP_CHANGER -- License: MIT -- Upstream Version: 1.1 -``` - -## Merge Request Guidelines - -### Automated CI/CD Checks - -Kali Linux enforces automated checks: - -1. **Lintian Scan** - - Zero errors allowed - - Warnings reviewed case-by-case - -2. **Build Test** - - Package must build on: - - Debian Bookworm - - Debian Testing - - Debian Unstable - -3. **GPG Signature** - - All commits must be signed - - Maintainer key must be verified - -### Code Review Process - -- **Timeline:** 2-7 business days -- **Reviewers:** Kali Linux maintainers -- **Feedback:** Via GitLab merge request comments -- **Iterations:** Expected to address feedback - -### Common Feedback Points - -| Issue | Resolution | -|-------|-----------| -| Inconsistent formatting | Follow Debian policy strictly | -| Missing dependencies | Add to debian/control Depends | -| Lintian warnings | Document or fix per warning | -| Upstream source issues | Link to upstream security policy | -| Documentation gaps | Enhance README.Debian | - -## After Acceptance - -### Upon Merge Approval - -1. **Automatic Actions** - - Package submitted to build system - - Build artifacts created for all supported releases - - Package added to testing repository - -2. **Verification** - - ```bash - # Check package in Kali repository - apt-cache search nextor - apt-cache show nextor - - # Install from official repository - sudo apt-get update - sudo apt-get install nextor - ``` - -3. **Version Management** - - - Maintain package in Kali repository - - Update debian/changelog for new versions - - Follow Kali release schedule - - Respond to security advisories - -### Maintaining the Package - -```bash -# Regular updates -git pull upstream master -git checkout -b update/nextor-1.2 -# Make changes -git add debian/changelog debian/control ... -git commit -S -m "Update nextor to 1.2" -git push -u origin update/nextor-1.2 -# Create merge request -``` - -## Contact and Support - -### Kali Linux Resources - -- **Main Website:** https://www.kali.org/ -- **GitLab:** https://gitlab.com/kali-team/ -- **Documentation:** https://www.kali.org/docs/ -- **Mailing List:** devel@kali.org -- **IRC:** #kali-linux on Libera.Chat - -### Package Maintainer Contact - -For questions about this specific package: -- Email: stalin@example.com -- GitHub: https://github.com/0x5t4l1n/ - -## Submission Timeline Example - -``` -Day 1: Prepare package, run local tests -Day 2: Push to GitLab, create merge request -Day 3-5: Code review, address feedback -Day 6: Approval and merge -Day 7+: Appears in Kali testing repository -``` - -## Quick Reference Commands - -```bash -# Clone repository -git clone https://gitlab.com/kali-team/packages/nextor.git - -# Build package -debuild -us -uc - -# Test package -lintian ../nextor_*.deb -sudo dpkg -i ../nextor_*.deb - -# Commit with signature -git commit -S -m "message" - -# Push changes -git push origin branch-name - -# View merge requests -git log --graph --all --decorate -``` - -## Security Considerations for Submission - -1. **Dependency Audit** - ```bash - # Check package dependency tree - apt-cache depends nextor - - # Verify versions - apt-cache policy python3-stem python3-requests - ``` - -2. **Vulnerability Scanning** - ```bash - # Check for known CVEs - apt-cache policy tor python3-stem - ``` - -3. **License Verification** - - All dependencies must have compatible licenses - - MIT is fully compatible with Debian - - Document any license interactions - -## Appendix: Template Files - -### debian/control (Kali Version) - -``` -Source: nextor -Maintainer: Kali Linux -Uploaders: Stalin -Section: utils -Priority: optional -Standards-Version: 4.6.1 -Homepage: https://github.com/0x5t4l1n/NexTOR_IP_CHANGER -Vcs-Git: https://gitlab.com/kali-team/packages/nextor.git -Vcs-Browser: https://gitlab.com/kali-team/packages/nextor -Build-Depends: debhelper-compat (= 13), - dh-python, - python3-setuptools, - python3-all -Rules-Requires-Root: no - -Package: nextor -Architecture: all -Depends: ${python3:Depends}, - ${misc:Depends}, - python3, - python3-requests, - python3-stem, - tor -Recommends: python3-pip, - curl, - wget -Description: Tor exit node IP address rotator - NexTOR IP Changer is a command-line tool for automatically rotating - your IP address using the Tor network. Ideal for privacy research, - OSINT, and security testing. -``` - -### .gitlab-ci.yml (Kali CI/CD) - -```yaml -stages: - - build - - test - - sign - -variables: - DEBUILD_OPTS: "-us -uc" - -build_package: - stage: build - script: - - debuild $DEBUILD_OPTS - artifacts: - paths: - - "../nextor_*.deb" - -lintian_check: - stage: test - script: - - lintian -i "../nextor_*.deb" - -gpg_check: - stage: sign - script: - - git log --show-signature HEAD -``` diff --git a/KALI_SUBMISSION_CHECKLIST.md b/KALI_SUBMISSION_CHECKLIST.md deleted file mode 100644 index bb64fe4..0000000 --- a/KALI_SUBMISSION_CHECKLIST.md +++ /dev/null @@ -1,303 +0,0 @@ -# Kali Linux Package Submission Checklist - -Last Updated: 14 Apr 2026 -Project: NexTOR IP Changer -Version: 1.1 -Maintainer: Stalin - ---- - -## ✅ Pre-Submission Requirements - -### Local Setup -- [ ] Install required tools: - ```bash - sudo apt-get install -y git git-buildpackage debhelper devscripts \ - pristine-tar build-essential dh-python python3-setuptools lintian \ - gnupg - ``` - -- [ ] Generate/verify GPG key: - ```bash - gpg --list-keys - # If no key exists: - gpg --gen-key - ``` - -- [ ] Configure git (if not done): - ```bash - git config --global user.name "Stalin" - git config --global user.email "stalin@example.com" - git config --global user.signingkey - ``` - -### Package Files Updated -- [x] `debian/control` - Updated with Kali VCS fields -- [x] `debian/changelog` - Added Kali 1.1-1kali1 entry -- [x] `debian/README.Debian` - Created with Debian-specific docs -- [x] `.gitlab-ci.yml` - Created for Kali CI/CD -- [x] `.git-buildpackagerc` - Created for gbp configuration - ---- - -## 📋 Current Status - -### Completed ✅ -- GitLab repository published: https://gitlab.com/5t4l1n/NexTOR_IP_CHANGER.git -- Debian package files properly structured -- Kali metadata added to debian/control -- CI/CD pipeline configured - -### Next Steps 👉 -1. Create Kali account + request repo access -2. Test local package build -3. Fork Kali repo or contact Kali team -4. Submit merge request or formal request - ---- - -## 🔧 Build & Test Locally (BEFORE SUBMISSION) - -### Test Build Package -```bash -cd /home/w4nn4d13/Downloads/nextor-1.1 - -# Build the package -gbp buildpackage --git-ignore-new -us -uc - -# Check for lintian errors -lintian -i nextor_1.1-1kali1_all.deb -``` - -### Install & Test -```bash -# Install the built package -sudo apt-get install ./nextor_1.1-1kali1_all.deb - -# Verify installation -nextor --help - -# Check dependencies -dpkg -l | grep -E 'tor|python3-stem|python3-requests' -``` - ---- - -## 🚀 Kali Submission Process - -### Option 1: Submit via Kali Merge Request (Recommended) - -1. **Create Kali GitLab Account** - - Visit: https://gitlab.com/users/sign_up - - Verify email - -2. **Request Kali Package Maintainer Access** - - Visit: https://kali.org/community/ - - Fill out package maintainer request form - - OR contact: devel@kali.org - -3. **Fork/Create in Kali Repository** - ```bash - # Once you have access, fork: - # https://gitlab.com/kali-team/packages/ - - # Clone to local - git clone https://gitlab.com/YOUR_USERNAME/nextor.git - cd nextor - ``` - -4. **Add Upstream Remote** - ```bash - git remote add upstream https://gitlab.com/5t4l1n/NexTOR_IP_CHANGER.git - git fetch upstream - ``` - -5. **Prepare for Merge Request** - ```bash - # Create feature branch - git checkout -b add-nextor-package - - # Copy your debian files - cp -r /path/to/nextor-1.1/debian ./ - cp /path/to/nextor-1.1/.gitlab-ci.yml ./ - cp /path/to/nextor-1.1/.git-buildpackagerc ./ - - # Commit with signature - git add debian/ .gitlab-ci.yml .git-buildpackagerc - git commit -S -m "Add NexTOR IP Changer package for Kali Linux" - - # Push to your fork - git push origin add-nextor-package - ``` - -6. **Submit Merge Request** - - Visit your forked repo on GitLab - - Click "Merge Requests" → "New Merge Request" - - Target: `kali-team/packages/nextor:master` - - Fill in description: - ``` - **Package:** NexTOR IP Changer - **Version:** 1.1-1kali1 - **Upstream:** https://gitlab.com/5t4l1n/NexTOR_IP_CHANGER.git - **Description:** - Tor exit node IP address rotator for privacy and security testing - - **Features:** - - Automatic IP rotation via Tor - - SOCKS5 proxy integration - - Command-line interface - - Lightweight and efficient - - **Dependencies properly declared:** ✓ - **Lintian checks pass:** ✓ - **CI/CD pipeline configured:** ✓ - **README.Debian provided:** ✓ - ``` - -7. **Wait for Review** - - Kali maintainers will review - - They may request changes - - Address feedback and push updates - ---- - -### Option 2: Direct Contact with Kali Team - -Send professional email to: **devel@kali.org** - -Subject: `[PACKAGE REQUEST] NexTOR IP Changer - Tor IP Rotation Tool` - -Body: -``` -Dear Kali Linux Development Team, - -I would like to submit a new package for inclusion in the Kali Linux repository: - -Package Name: nextor -Version: 1.1-1kali1 -Upstream: https://gitlab.com/5t4l1n/NexTOR_IP_CHANGER.git -Description: Automated Tor exit node IP rotator for privacy/security testing - -The package includes: -- Complete Debian packaging files -- CI/CD pipeline (.gitlab-ci.yml) -- Comprehensive documentation -- All dependencies properly declared -- Lintian compliance verified - -Repository: https://gitlab.com/5t4l1n/NexTOR_IP_CHANGER.git - -I'm ready to contribute and maintain this package. - -Best regards, -Stalin -``` - ---- - -## ✅ Pre-Submission Quality Checklist - -Before submitting, verify: - -### Code Quality -- [ ] No syntax errors: `python3 -m py_compile Nex_Tor_IP_changer/*.py` -- [ ] Proper Python 3.6+ compatibility -- [ ] All imports available in Debian repos - -### Debian Standards -- [ ] `debian/control` - Proper format and Kali VCS fields -- [ ] `debian/changelog` - Properly formatted entry -- [ ] `debian/copyright` - Correct license information -- [ ] `debian/rules` - Proper permissions -- [ ] `debian/README.Debian` - Documentation provided -- [ ] No lintian errors: `lintian -i nextor_*.deb` - -### Dependencies -- [ ] `tor` - Available in Kali -- [ ] `python3-requests` - Available in Kali -- [ ] `python3-stem` - Available in Kali -- [ ] No proprietary dependencies - -### Documentation -- [ ] README.md - Clear and comprehensive -- [ ] Man page (nextor.1) - Properly formatted -- [ ] LICENSE - MIT license included -- [ ] MANIFEST.in - Correct file listing - -### Security -- [ ] No sudo hardcoded -- [ ] Proper file permissions -- [ ] No credentials in source code -- [ ] No deprecated security libraries - ---- - -## 📞 Kali Linux Resources - -- **Kali Forum**: https://forums.kali.org/ -- **Kali Documentation**: https://docs.kali.org/ -- **Kali GitLab**: https://gitlab.com/kali-team/ -- **Package Policy**: https://www.kali.org/tools/ -- **Debian Policy**: https://www.debian.org/doc/debian-policy/ - ---- - -## 🎯 After Acceptance - -Once your package is accepted: - -1. **Package Published** - - Will appear in: `apt-cache search nextor` - - Available for: `apt-get install nextor` - - Listed on: https://www.kali.org/tools/ - -2. **Maintenance** - - Monitor for bug reports - - Keep dependencies updated - - Respond to security issues - - Submit updates through Kali - -3. **Version Updates** - - Tag releases: `git tag v1.x` - - Update `debian/changelog` - - Resubmit through MR process - ---- - -## 📊 Submission Timeline - -Typical timeline: -- Package submission: Day 0 -- Initial review: 2-5 business days -- Possible requests for changes: +2-3 days -- Final approval: +1-2 days -- Package in repos: Usually within 1 week - ---- - -## ❓ FAQ - -**Q: Do I need Kali Linux installed?** -A: Not required, but recommended for testing. Use Docker/VM with Debian Bullseye. - -**Q: Can I update the package after submission?** -A: Yes, increment the version and resubmit as new MR. - -**Q: What if Kali team requests changes?** -A: They'll comment in the MR; make changes and push to same branch. - -**Q: How long is maintenance required?** -A: Indefinitely, but you can step down if needed (hand off to another maintainer). - -**Q: What about security vulnerabilities?** -A: You should report/fix them promptly and submit updates. - ---- - -## 🎉 Good Luck! - -Your package looks solid. Follow these steps and it should be accepted smoothly. - -For questions: Contact Kali development team or visit the forums. - -**Last checked:** 14 Apr 2026 diff --git a/Nex_Tor_IP_changer/NexTOR.py b/Nex_Tor_IP_changer/NexTOR.py index 9d19873..295f2ad 100755 --- a/Nex_Tor_IP_changer/NexTOR.py +++ b/Nex_Tor_IP_changer/NexTOR.py @@ -22,8 +22,8 @@ def check_dependencies(): missing.append("python3-stem") try: - subprocess.check_output('which tor', shell=True, stderr=subprocess.DEVNULL) - except subprocess.CalledProcessError: + subprocess.check_output(['/usr/bin/tor', '--version'], stderr=subprocess.DEVNULL) + except (subprocess.CalledProcessError, FileNotFoundError): missing.append("tor") if missing: @@ -90,7 +90,7 @@ def main(): # Start Tor service try: - subprocess.check_call(['sudo', 'systemctl', 'start', 'tor'], + subprocess.check_call(['/usr/bin/sudo', '/bin/systemctl', 'start', 'tor'], stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL) except Exception as e: diff --git a/Nex_Tor_IP_changer/nex.py b/Nex_Tor_IP_changer/nex.py index 88d8de0..096e650 100644 --- a/Nex_Tor_IP_changer/nex.py +++ b/Nex_Tor_IP_changer/nex.py @@ -22,11 +22,11 @@ except Exception: # Check if Tor is installed try: - check_tor = subprocess.check_output('which tor', shell=True) -except subprocess.CalledProcessError: + check_tor = subprocess.check_output(['/usr/bin/tor', '--version'], stderr=subprocess.DEVNULL) +except (subprocess.CalledProcessError, FileNotFoundError): print('[+] tor is not installed!') - subprocess.check_output('sudo apt update', shell=True) - subprocess.check_output('sudo apt install tor -y', shell=True) + subprocess.check_output(['/usr/bin/sudo', '/usr/bin/apt', 'update']) + subprocess.check_output(['/usr/bin/sudo', '/usr/bin/apt', 'install', 'tor', '-y']) print('[!] Tor is installed successfully') os.system("clear") diff --git a/debian/README.Debian b/debian/README.Debian deleted file mode 100644 index b546f27..0000000 --- a/debian/README.Debian +++ /dev/null @@ -1,82 +0,0 @@ -NexTOR IP Changer for Debian/Kali Linux -========================================= - -INSTALLATION -============ - -apt-get install nextor - - -USAGE -===== - -Basic usage: - nextor - -Start/stop Tor service: - sudo systemctl start tor - sudo systemctl stop tor - sudo systemctl status tor - -Check current exit IP: - nextor - - -CONFIGURATION -============= - -Tor is configured via /etc/tor/torrc - -To modify Tor settings: - sudo nano /etc/tor/torrc - sudo systemctl restart tor - - -DOCUMENTATION -============== - -Man page: - man nextor - -Online docs: - https://github.com/0x5t4l1n/NexTOR_IP_CHANGER - - -DEPENDENCIES -============ - -- Python 3.6+ -- python3-requests (SOCKS support) -- python3-stem (Tor control) -- tor service - - -UPSTREAM -======== - -Homepage: https://github.com/0x5t4l1n/NexTOR_IP_CHANGER -GitLab: https://gitlab.com/5t4l1n/NexTOR_IP_CHANGER.git - - -TROUBLESHOOTING -=============== - -If tor service won't start: - sudo systemctl restart tor - sudo journalctl -xe - -If IP isn't changing: - - Verify tor is running: systemctl status tor - - Check tor service logs: sudo tail -f /var/log/syslog - - Ensure SOCKS5 proxy is reachable on port 9050 - - -SECURITY NOTES -============== - -- This tool is for security testing and privacy purposes -- Always verify local laws regarding proxy usage -- Use responsibly and ethically -- Never use for illegal activities - - -- Kali Linux Mon, 14 Apr 2026 00:00:00 +0000 diff --git a/debian/changelog b/debian/changelog deleted file mode 100644 index 560832c..0000000 --- a/debian/changelog +++ /dev/null @@ -1,19 +0,0 @@ -nextor (1.1-1kali1) kali-dev; urgency=high - - * Kali Linux package release - * Automated Tor exit node IP rotation - * Published to GitLab: https://gitlab.com/5t4l1n/NexTOR_IP_CHANGER.git - * Ready for Kali repository integration - - -- Kali Linux Tue, 15 Apr 2026 00:00:00 +0000 - -nextor (1.1-1) unstable; urgency=medium - - * Initial Debian package release - * Automated Tor exit node rotation - * Command-line interface for IP rotation - * Support for configurable rotation intervals - * SOCKS5 proxy integration - * Lightweight and efficient design - - -- Stalin Mon, 14 Apr 2026 00:00:00 +0000 diff --git a/debian/control b/debian/control deleted file mode 100644 index e2912af..0000000 --- a/debian/control +++ /dev/null @@ -1,48 +0,0 @@ -Source: nextor -Maintainer: Kali Linux -Uploaders: Stalin -Section: utils -Priority: optional -Standards-Version: 4.6.1 -Homepage: https://github.com/0x5t4l1n/NexTOR_IP_CHANGER -Vcs-Git: https://gitlab.com/kali-team/packages/nextor.git -Vcs-Browser: https://gitlab.com/kali-team/packages/nextor -Build-Depends: debhelper-compat (= 13), - dh-python, - python3-setuptools, - python3-all -Rules-Requires-Root: no - -Package: nextor -Architecture: all -Depends: ${python3:Depends}, - ${misc:Depends}, - python3, - python3-requests, - python3-stem, - tor -Recommends: python3-pip, - curl, - wget -Conflicts: nextor-ip-changer -Replaces: nextor-ip-changer -Provides: nextor-ip-changer -Description: Tor exit node IP address rotator for privacy and security testing - NexTor IP Changer is a command-line tool designed to automatically rotate - your IP address using the Tor network. It provides seamless, periodic IP - rotation with minimal resource usage, making it ideal for privacy - enthusiasts, security researchers, and penetration testers. - . - Key features: - . - * Automated IP rotation via Tor network - * Simple command-line interface - * Configurable rotation intervals - * Support for infinite rotation mode - * Lightweight and efficient design - * SOCKS5 proxy integration - * Cross-platform compatibility - . - This tool is intended for ethical security testing, OSINT research, privacy - protection, and network testing. Users must comply with applicable laws and - terms of service when using this tool. diff --git a/debian/copyright b/debian/copyright deleted file mode 100644 index b5cd191..0000000 --- a/debian/copyright +++ /dev/null @@ -1,31 +0,0 @@ -Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ -Upstream-Name: nextor -Upstream-Contact: Stalin -Source: https://github.com/0x5t4l1n/NexTOR_IP_CHANGER - -Files: * -Copyright: 2024 0x5t4l1n -License: MIT - -Files: debian/* -Copyright: 2026 Stalin -License: MIT - -License: MIT - Permission is hereby granted, free of charge, to any person obtaining a copy - of this software and associated documentation files (the "Software"), to deal - in the Software without restriction, including without limitation the rights - to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - copies of the Software, and to permit persons to whom the Software is - furnished to do so, subject to the following conditions: - . - The above copyright notice and this permission notice shall be included in - all copies or substantial portions of the Software. - . - THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN - THE SOFTWARE. diff --git a/debian/install b/debian/install deleted file mode 100644 index 15475db..0000000 --- a/debian/install +++ /dev/null @@ -1,2 +0,0 @@ -debian/nextor.1 usr/share/man/man1 -README.md usr/share/doc/nextor diff --git a/debian/nextor.1 b/debian/nextor.1 deleted file mode 100644 index ca45e6d..0000000 --- a/debian/nextor.1 +++ /dev/null @@ -1,224 +0,0 @@ -.TH NEXTOR 1 "April 2026" "nextor 1.1" "NexTor IP Changer" - -.SH NAME -nextor \- Tor exit node IP address rotator - -.SH SYNOPSIS -.B nextor - -.SH DESCRIPTION -.B nextor -is a command-line tool that automatically rotates your IP address using the Tor -network. It provides seamless, periodic IP rotation with minimal resource usage, -making it ideal for privacy enthusiasts, security researchers, and penetration -testers. - -.SH FEATURES -.TP -.B Automated IP Rotation -Request new Tor exit nodes at configurable intervals to change your public IP address. - -.TP -.B Simple Interface -Interactive command-line prompts guide you through configuration and operation. - -.TP -.B Flexible Configuration -Set custom rotation intervals in seconds and specify the number of rotations -or enable infinite rotation mode. - -.TP -.B SOCKS5 Proxy Integration -Works with any application or browser that supports SOCKS proxy settings. - -.TP -.B Lightweight -Minimal resource usage, optimized for low-end systems and VPS environments. - -.SH REQUIREMENTS -.TP -.B Tor -The Tor daemon must be installed and running on your system. - -.TP -.B Python3 -Python 3.6 or later with the following packages: -.RS -.TP -.B requests[socks] -For making HTTP requests through SOCKS5 proxy. - -.TP -.B stem -For communicating with Tor daemon. -.RE - -.SH INSTALLATION -Install the package via the Debian package manager: -.RS -.B apt install nextor -.RE - -This will automatically install all required dependencies. - -.SH USAGE -Start the interactive tool by running: -.RS -.B nextor -.RE - -The tool will prompt you to: -.TP -1. -Specify the time interval (in seconds) between IP rotations. - -.TP -2. -Enter the number of IP changes or select infinite mode. - -.TP -3. -Confirm to start the IP rotation process. - -Once started, the tool will: -.TP -\(bu -Rotate your Tor exit node at specified intervals. - -.TP -\(bu -Display your current public IP address after each rotation. - -.TP -\(bu -Show a countdown timer and rotation progress. - -.SH EXAMPLES -Start NexTor with default interactive prompts: -.RS -.B nextor -.RE - -.SH PROXY CONFIGURATION -After starting NexTor, configure your applications to use the SOCKS5 proxy at: -.RS -.B socks5://127.0.0.1:9050 -.RE - -Common applications: -.TP -.B Firefox -: Preferences > Network Settings > Manual proxy configuration > SOCKS Host - -.TP -.B Chromium/Chrome -: Settings > Advanced > Proxy > Manual proxy configuration > SOCKS5 - -.TP -.B Command-line tools -: Use the -.B http_proxy -and -.B https_proxy -environment variables or tool-specific proxy settings. - -.SH REQUIREMENTS FOR TOR -Ensure the Tor service is running: -.RS -.B sudo systemctl start tor -.RE - -Enable Tor to start on boot: -.RS -.B sudo systemctl enable tor -.RE - -Check Tor status: -.RS -.B sudo systemctl status tor -.RE - -.SH SECURITY NOTES -.TP -\(bu -This tool is intended for ethical security testing, OSINT research, privacy -protection, and network testing only. - -.TP -\(bu -Users must comply with all applicable laws and the terms of service of -websites and services they access through this tool. - -.TP -\(bu -Do not use this tool for illegal activities such as sending spam, accessing -unauthorized systems, or bypassing legitimate security measures. - -.TP -\(bu -Tor protects your anonymity but does not guarantee security. Use with caution -on shared networks and take additional security precautions when needed. - -.TP -\(bu -Some websites may block or throttle Tor exit node IP addresses. - -.SH FILES -.TP -.B /usr/bin/nextor -The main executable script. - -.SH ENVIRONMENT -.TP -.B TOR_CONTROLPORT -Default: 9051 (Tor control port) - -.TP -.B TOR_SOCKSPORT -Default: 9050 (Tor SOCKS5 port) - -.SH TROUBLESHOOTING -.TP -.B Tor connection error -Ensure Tor is installed and running: -.RS -.B sudo systemctl start tor -.RE - -.TP -.B "Permission denied" errors -Some Tor control port operations may require elevated privileges. Run with sudo: -.RS -.B sudo nextor -.RE - -.TP -.B IP not rotating -Verify Tor authentication is properly configured. Try restarting Tor: -.RS -.B sudo systemctl restart tor -.RE - -.TP -.B Slow IP changes -Tor exit node rotation may take several seconds. This is normal behavior. - -.SH SEE ALSO -.BR tor (1), -.BR torsocks (1), -.BR curl (1) - -.SH AUTHOR -Stalin - -.SH HOMEPAGE -https://github.com/0x5t4l1n/NexTOR_IP_CHANGER - -.SH LICENSE -This program is licensed under the MIT License. See the LICENSE file in the -source repository for details. - -.SH DISCLAIMER -This tool is provided "as is" without warranty. Users are responsible for -complying with all applicable laws and regulations in their jurisdiction. -The authors are not responsible for any misuse or damage caused by this tool. diff --git a/debian/rules b/debian/rules deleted file mode 100755 index e3ce80f..0000000 --- a/debian/rules +++ /dev/null @@ -1,21 +0,0 @@ -#!/usr/bin/make -f - -export PYBUILD_NAME=nextor - -%: - dh $@ --with python3 --buildsystem=pybuild - -override_dh_python3: - dh_python3 --shebang=/usr/bin/python3 - -override_dh_installdocs: - dh_installdocs - dh_installdocs README.md - -override_dh_auto_test: - # Skip tests during build - no test suite available - -override_dh_fixperms: - dh_fixperms - # Make Python library files non-executable - chmod -x debian/nextor/usr/lib/python3/dist-packages/Nex_Tor_IP_changer/*.py 2>/dev/null || true diff --git a/debian/source/format b/debian/source/format deleted file mode 100644 index 89ae9db..0000000 --- a/debian/source/format +++ /dev/null @@ -1 +0,0 @@ -3.0 (native)