# v1.1.1 ## Updates * Added [`nodes.hashvault.pro`](https://hashvault.pro) to [Community Monero Nodes](https://github.com/hinto-janaiyo/gupax#community-monero-nodes) list * Added [`node.moneroworld.com`](https://moneroworld.com) to [Community Monero Nodes](https://github.com/hinto-janaiyo/gupax#community-monero-nodes) list ## Fixes * ## Bundled Versions * [`P2Pool v3.0`](https://github.com/SChernykh/p2pool/releases/tag/v3.0) * [`XMRig v6.18.1`](https://github.com/xmrig/xmrig/releases/tag/v6.18.1) --- # v1.1.0 ## Updates * **Status:** [Added P2Pool submenu](https://github.com/hinto-janaiyo/gupax#Status) - Total payouts across all time - Total XMR mined across all time - Formatted log lines of ALL payouts (date, amount, block) with sorting options - Automatic/Manual calculator for average share/block time - P2Pool/Monero stats for difficulty/hashrate/dominance * **Status:** Added more process stats - P2Pool - Current Monero node IP/RPC/ZMQ - Current Sidechain - Current Monero address - XMRig - Current Pool IP - Current thread usage * **Key Shortcut:** Added two shortcuts - `C | Left Submenu` - `V | Left Submenu` * **Command Line:** Added two flags - `--payouts Print the P2Pool payout log, payout count, and total XMR mined` - `--reset-payouts Reset the permanent P2Pool stats that appear in the [Status] tab` ## Fixes * **macOS:** Added warning (and solution) if `Gupax/P2Pool/XMRig` were quarantined by [`Gatekeeper`](https://support.apple.com/en-us/HT202491) * **P2Pool/XMRig:** Added a red `Start` button on errors (bad PATH, invalid file, etc) and a solution in the tooltip * **P2Pool/XMRig:** Fixed processes sometimes not starting after entering a custom PATH * **P2Pool:** Fixed custom node selection sometimes using old values after save * Miscellaneous UI changes and fixes ## Bundled Versions * [`P2Pool v2.7`](https://github.com/SChernykh/p2pool/releases/tag/v2.7) * [`XMRig v6.18.1`](https://github.com/xmrig/xmrig/releases/tag/v6.18.1) --- # v1.0.0 [Download here](https://github.com/hinto-janaiyo/gupax/releases/latest) or at https://gupax.io. [Watch a 3-minute setup guide here.](https://github.com/hinto-janaiyo/gupax#How-To) ## Changes * Optimized PTY output handling (less memory usage) * Added `Select random node`, `<- Last`, `Next ->` buttons in `P2Pool Simple` * Added `Debug Info` screen (`D` key on `About` tab) * Added Linux distro build profile * Added `21` unit tests * Misc fixes/optimizations ## Bundled Versions * [`P2Pool v2.6`](https://github.com/SChernykh/p2pool/releases/tag/v2.6) * [`XMRig v6.18.1`](https://github.com/xmrig/xmrig/releases/tag/v6.18.1) --- # v0.9.0 ## Beta Release * Connected `[Start/Stop/Restart]` buttons to actual processes: - Current state (settings that may or may not be saved) are passed to the process when (re)starting - Uptime & Exit status display when process is stopped - Added colors for process state: ``` GREEN | Process is online and healthy YELLOW | Process is in the middle of (re)starting/stopping RED | Process is offline, and failed when exiting GRAY | Process is offline ``` * Added keyboard shortcuts: ``` *--------------------------------------* | Key shortcuts | |--------------------------------------| | F11 | Fullscreen | | Escape | Quit screen | | Left/Right | Switch Tabs | | Up | Start/Restart | | Down | Stop | | S | Save | | R | Reset | *--------------------------------------* ``` * Added `PTY` (actual terminals) for P2Pool/XMRig: - Scrollable logs up to 500k bytes (6000~ lines) before refresh - All STDOUT/STDERR relayed to GUI (buffered, lazily read) - `Advanced` tabs have input (STDIN) relayed to process (buffered, 1~sec delay) * Added `sudo` screen for XMRig (macOS/Linux): - Tests password for validity - Starts XMRig with `sudo` for MSR mod & hugepages - Wipes password memory with zeros after usage * Added `Status` tab: - Refreshes all stats once per second - Gupax/System stats - P2Pool stats via API file - XMRig stats via HTTP API * Added `Simple` XMRig tab: - Console - Thread slider - Pause on active slider (Windows/macOS only) * Added `Advanced` XMRig tab: - Includes all simple features - STDIN input - Manual pool database, select/add/edit/delete a custom `Name/IP/Port/RigID` (max 1000 pools), saved at: - Windows: `C:\Users\USER\AppData\Roaming\Gupax\pool.toml` - macOS: `/Users/USER/Library/Application Support/Gupax/pool.toml` - Linux: `/home/USER/.local/share/gupax/pool.toml` - Overriding command arguments - Manual Monero address option - HTTP API IP/Port option - TLS option - Keepalive option * Added `Simple` Gupax tab: - Package updater - `Auto-update` setting - `Update-via-Tor` setting - `Ask-before-quit` setting - `Save-before-quit` setting - `Auto-P2Pool` setting (starts P2Pool on Gupax startup) - `Auto-XMRig` setting (starts XMRig on Gupax startup) * Added `Advanced` Gupax tab: - Includes all simple features - P2Pool binary path selector - XMRig binary path selector - Gupax window width/height adjuster - Startup Tab selector * Added plowsof to community nodes: - Plowsof1: `IP: node.monerodevs.org, RPC: 18089, ZMQ: 18084` - Plowsof2: `IP: node2.monerodevs.org, RPC: 18089, ZMQ: 18084` * Default resolution change `1280x720, 16:9` -> `1280x960, 4:3` * Added fade-in/out of black when resizing resolution * Added more internal documentation (`src/README.md`) * Added many, many `info` & `debug` logs (accessible via env variable `RUST_LOG`) * Bunch of fixes, optimizations, etc. --- ## v0.5.0 ## Prototype Release * Added `Simple` P2Pool tab: - Monero address input with valid address check (base58 regex) - [Community Monero node selector](https://github.com/hinto-janaiyo/gupax/tree/main/README.md#community-monero-nodes) - Community node ping button (asynchronous `JSON-RPC` calls to all nodes) - Color coded list after ping: ``` <300ms = GREEN <1000ms = YELLOW <5000ms = RED >5000ms = BLACK ``` - `Auto-select` - Pick the fastest node after ping automatically - `Auto-ping` - Automatically ping nodes on Gupax startup * Added `Advanced` P2Pool tab: - Manual node database, select/add/edit/delete a custom `Name/IP/RPC/ZMQ` (max 1000 nodes), saved at: - Windows: `C:\Users\USER\AppData\Roaming\Gupax\node.toml` - macOS: `/Users/USER/Library/Application Support/Gupax/node.toml` - Linux: `/home/USER/.local/share/gupax/node.toml` - Overriding command arguments to P2Pool - P2Pool main/mini toggle - Out/In Peers slider - Log level slider * Added command arguments: ``` --help Print this help message --version Print version and build info --state Print Gupax state --nodes Print the manual node list --no-startup Disable all auto-startup settings for this instance --reset-state Reset all Gupax state (your settings) --reset-nodes Reset the manual node list in the [P2Pool] tab --reset-all Reset both the state and the manual node list --ferris Print an extremely cute crab ``` * Added fullscreen GUI error handler (Error message + UI buttons for response, Yes/No, Quit, etc) * Added a native `File Explorer/Finder/GTK` file selector for picking P2Pool/XMRig binary path in `Gupax` tab * Added detailed console log levels `RUST_LOG=(trace|debug|info|warn|error) ./gupax` * [Added new PGP key](https://github.com/hinto-janaiyo/gupax/blob/main/pgp/hinto-janaiyo.asc) * Created website (HTML/CSS only, no JavaScript): https://gupax.io --- ## v0.1.0 ## Prototype Release * Added package updater (by default, via Tor using [`Arti`](https://blog.torproject.org/arti_100_released/)) * Added [custom icons per OS](https://github.com/hinto-janaiyo/gupax/tree/main/images/icons) (File Explorer, Taskbar, Finder, App header, etc) * Added Monero node [`JSON-RPC ping`](https://github.com/hinto-janaiyo/gupax/blob/main/src/node.rs) system, not yet in GUI * Added `F11` fullscreen toggle * Implemented `Ask before quit` * Implemented `Auto-save` * Binaries for all platforms (Windows, macOS, Linux) * Added state file to save settings: - Windows: `C:\Users\USER\AppData\Roaming\Gupax\gupax.toml` - macOS: `/Users/USER/Library/Application Support/Gupax/gupax.toml` - Linux: `/home/USER/.local/share/gupax/gupax.toml` --- ## v0.0.1 ## Prototype Release * Functional (slightly buggy) GUI external * Elements have state (buttons, sliders, etc) * No internals, no connections, no processes * Only binaries for x86_64 Windows/Linux for now