Skip to content

ChaoticSi1ence/linux-zygor-updater

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 

Repository files navigation

linux-zygor-updater

Note: This project was coded by AI. This is not extremely secure, this isn't the best way to do this.

Automated script to download and install the latest Zygor Guides addon for World of Warcraft on Linux.

Features

  • Automatic login and download from Zygor servers
  • Comprehensive version checking using both .toc and Ver.lua files
  • Semantic version comparison to skip unnecessary updates
  • Smart extraction handling for nested zip structures
  • Debug mode for troubleshooting version detection

Requirements

  • Python 3.6+
  • Zygor Guides subscription

Setup

1. Set Environment Variables

Fish shell

set -Ux ZYGOR_USERNAME "your_username"
set -Ux ZYGOR_PASSWORD "your_password"
set -Ux ZYGOR_ADDON_DIR "/path/to/WoW/_retail_/Interface/AddOns"

Bash/Zsh

Add the following to your ~/.bashrc or ~/.zshrc:

export ZYGOR_USERNAME="your_username"
export ZYGOR_PASSWORD="your_password"
export ZYGOR_ADDON_DIR="/path/to/WoW/_retail_/Interface/AddOns"

Then reload your shell configuration:

# For bash
source ~/.bashrc

# For zsh
source ~/.zshrc

2. Make Script Executable

chmod +x update_zygor.py

Usage

Basic usage:

./update_zygor.py

Force update even if versions match:

./update_zygor.py --force

Show detailed version detection information:

./update_zygor.py --debug

How It Works

  1. Version Detection: Reads full version from both .toc (base version like "9.6") and Ver.lua (revision like "35105") to construct complete version string (e.g., "9.6.35105")
  2. Authentication: Logs into Zygor and obtains webauth token
  3. Download: Downloads latest addon package using authenticated session
  4. Comparison: Compares installed version with remote version using semantic versioning
  5. Installation: Extracts and installs addon only if versions differ

Security Notes

  • Credentials are stored in environment variables (not in script)
  • Fish shell stores environment variables in ~/.config/fish/fish_variables with 600 permissions
  • Bash/Zsh store environment variables in ~/.bashrc or ~/.zshrc
  • Never commit credentials to version control

About

Automated script to download and install the latest Zygor Guides addon for World of Warcraft

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages