# Elder Scrolls Online Commadline Addon Manager Elder Scrolls Online addon manager and a Tamriel Trade Centre price table updater. [MIT License](LICENSE) It is recommended that you back up your ESO live profile before using `eso-banana` in case you want to revert back. On Windows, press `Windows Key + e` to open a file explorer and enter the following path in the address bar: ``` %HOME%\Documents\Elder Scrolls Online\ ``` or on Windows 11 ``` Documents\Elder Scrolls Online\ ``` Make a copy of the `live` folder and rename it to something meaningful like `old` or `backup`. # Usage Follow the installation instructions for your `platform`: - [Windows](#windows-installation) - [Linux](#linux-installation) On first run, the `addons.text` file will be created in your ESO live directory. It will look similar to the following: ```yaml addons: - https://www.esoui.com/downloads/info7-LibAddonMenu.html - https://www.esoui.com/downloads/info1245-TamrielTradeCentre.html - https://www.esoui.com/downloads/info1146-LibCustomMenu.html ``` Add the ESOUI url for each additional addon you wish to keep updated. Make sure to prefix each URL line with a dash and a space (`-`). # Windows Installation Install the latest Python 3 using the installer provided by [python.org](https://www.python.org/downloads/windows/). When the python installer asks, [add python to PATH](https://docs.python.org/3/using/windows.html#installation-steps). Open [Windows Terminal](https://www.microsoft.com/en-US/p/windows-terminal/9n0dx20hk701) or any windows command prompt and navigate to this project. Use the Python package manager PIP to install `eso-banana`. ```powershell cd .\banana\ pip install . ``` Once the project is installed to python's packages you may invoke the addon script with the following command: ```powershell eso-banana-script.exe ``` To schedule a periodic background run of `eso-banana`, open Powershell as a user and enter the following commands. ```powershell $Command = (Get-Command "eso-banana-script.exe").Source $Action = New-ScheduledTaskAction -Execute $Command -Argument "--log" $Trigger = New-ScheduledTaskTrigger -Daily -At 11am $Settings = New-ScheduledTaskSettingsSet -RunOnlyIfNetworkAvailable -StartWhenAvailable -RunOnlyIfIdle Register-ScheduledTask -TaskName "eso-banana" -Action $Action -Trigger $Trigger -Settings $Settings -Description "Elder Scrolls Online addon manager and a Tamriel Trade Centre price table updater." ``` To check to make sure the task is registered correctly, enter `Get-ScheduledTask` and check that the first entry looks similar: ``` TaskPath TaskName State -------- -------- ----- \ eso-banana Ready ``` # Windows Unschedule Only run the following command if you wish to remove scheduled run of `eso-banana`. To remove the schedule, use the `Unregister-ScheduledTask` command: ``` Unregister-ScheduledTask eso-banana ``` Press enter to confirm removal. # Linux Installation The following instructions are for any linux system using systemd. Using your distros package management system, install python3-pip. ``` sudo apt install python3-pip ``` Because systemd is cancer you will need to edit the `banana.service` file to include your user's home path. ``` [Unit] Description=Run banana daily and on boot. Wants=banana.timer [Service] Type=oneshot ExecStart=/home/user_name_here/.local/bin/eso-banana-script User=deck [Install] WantedBy=multi-user.target ``` Finally, install `eso-banana` using pip and install the systemd timer and service to run `eso-banana` everyday. ``` cd ./banana/ pip install . cp banana.timer banana.service /etc/systemd/system/ sudo systemctl enable banana.timer sudo systemctl enable banana.service ``` # Linux Unschedule Only run the following command if you wish to remove scheduled run of `eso-banana`. ``` systemctl list-timers --all sudo systemctl disable banana.timer ``` # Steam Deck Installation The following instructions are for arch linux system using systemd. ``` sudo btrfs property set -ts / ro false sudo pacman-key --init sudo pacman-key --populate archlinux sudo pacman -S python-pip cd ./banana/ pip install . cp banana.timer banana.service /etc/systemd/system/ sudo systemctl enable banana.timer sudo systemctl enable banana.service ``` # Steam Deck Only run the following command if you wish to remove scheduled run of `eso-banana`. ``` systemctl list-timers --all sudo systemctl disable banana.timer ```