{"url":"https://nexovirt.com/changelog","title":"NexoVirt changelog: releases & update notes","description":"Release notes for NexoVirt, the self-hosted Proxmox control panel: new features, fixes and important updates for every version, listed newest first.","markdown_url":"https://nexovirt.com/changelog.md","sections":[{"heading":"NexoVirt changelog and release notes","content":"Every NexoVirt release with its notes, newest first. Updates install in place on your own server; releases marked \"Important update\" should be applied soon.\n\n[Install free](https://docs.nexovirt.com/getting-started/installation/) [See all features](https://nexovirt.com/features)"},{"heading":"All releases","content":"### [v1.3.7](#v1.3.7): New and reinstalled VMs show their real status and IP right away\n\nOctober 15, 2026\n\nFixes\n\n- A new or reinstalled guest goes straight from \"provisioning\" to \"running\" instead of briefly showing \"stopped\" with its old disk size.\n- After a VM reinstall the panel no longer shows the previous IP address: a VM that gets its address by DHCP shows the new one as soon as the guest agent reports it, instead of up to five minutes later.\n- A newly created DHCP VM also shows its address as soon as the guest agent reports it.\n\n### [v1.3.6](#v1.3.6): Accurate guest status after actions, clean deletes\n\nOctober 15, 2026\n\nFixes\n\n- A guest no longer flickers back to its old state after Start, Stop, Shutdown or Reboot: the panel and the API keep showing the action until Proxmox reports the new state.\n- A deleted guest disappears from the panel within seconds instead of staying on \"deleting\" for several minutes, and the metrics collector stops polling it.\n- Deleting a VM also removes the cloud-init snippet the panel wrote for it, so no `nexovirt-<id>.yml` files pile up on the node.\n- `GET /api/v1/hosts/{id}/next-vmid` skips IDs the panel already uses, so a create with the returned ID no longer fails with \"already in use\".\n- The single-guest API endpoint reports a running action like the guest list does.\n- The update history keeps its entry even when the panel needs a moment to come back after a rollback.\n- The \"Claim this install\" link opens the NexoVirt account portal directly.\n\n### [v1.3.4](#v1.3.4): Portal self-service with resource packs, customer password change, VPN teardown\n\nOctober 15, 2026\n\nNexoVirt 1.3.4\n\nNew\n\n- Self-service with resource packs: give a customer a resource pack and they create and delete their own servers in the portal, within the pack's cores, memory, disk and server count. Node, storage, network and IPs come from the pack.\n- Customers change their own password on the portal Security page.\n\nFixes\n\n- Removing the agent from a node (or deleting a node with the wipe switch on) now also removes NexoVirt's WireGuard VPN and NAT from the node.\n- Reseller branding falls back field by field: a reseller that set only a name keeps your logo and colours instead of the NexoVirt defaults, and themes you set for a reseller as admin are shown.\n\n### [v1.3.3](#v1.3.3): Release polish: reseller security, safer node delete, alert and image fixes\n\nOctober 15, 2026\n\nNexoVirt 1.3\n\nA big release: a reworked interface, a much safer installer and updater, image management for your nodes, and new tools to move, balance and protect your guests.\n\nBefore you update\n\n- Re-upload your logos and avatars after this update. Updaters before 1.3 remove uploaded files when they install a new version. This happens one last time on the way to 1.3; from now on uploads are kept on every update.\n- After the update, run Update agent on each node. The panel shows a notice until every node runs agent 0.24.1.\n\nNew\n\n- Images on nodes (Provisioning > QEMU templates): each node keeps a cached copy of your OS images, with status, size and progress. Download, re-download or delete per node. New VMs and reinstalls use the cached image instead of downloading it every time.\n- Large images, done right: downloads run in the background on the node, resume after interruptions, are checked against their SHA-256 and no longer block other jobs. Windows images are downloaded only when you choose to.\n- Move guests between nodes: cross-node migration with a pre-flight check, IP and port-forward plans and a safety copy, plus maintenance mode and node evacuation.\n- Automatic placement and balancing: new guests can land on the node with the most room, and the Balance page suggests migrations when a node runs hot.\n- Assisted failover: when a node is down, restore its guests on another node from their latest Proxmox Backup Server backup.\n- WireGuard VPN: switch on a VPN per node and create named configs for every node, a single node or selected SDN project networks.\n- Free DynDNS names: a free nxvdns.link name per node that follows its public IPv4 and IPv6.\n- Node updates: install Debian and Proxmox package updates on a node from its page, without a reboot.\n- Reworked interface across the panel, the customer portal and the reseller portal: consistent pages, clearer status, better empty states.\n\nSafer installs and updates\n\n- Updates are verified (signature and checksum) before anything changes, and roll back completely (code, database, settings) if something fails.\n- A short maintenance window during the update, a check that the panel answers afterwards, and disk space checks before downloading.\n- Automatic updates only install fixes of the version line you run, never a feature release, and pause after repeated failures.\n- The system no longer runs panel code as root; the update and domain tasks run through dedicated, root-owned helpers.\n- Uninstalling also removes the root helpers, the root cron entry and the sudoers rule.\n\nLicensing\n\n- Your license is checked with a signed token. Paid features keep working for up to 14 days without a connection to the license server.\n\nFixes\n\n- Deleting a node removes it only from the panel unless you switch on \"Also remove the agent and image storage from the node\".\n- Reseller API tokens stop working as soon as the reseller is deleted or deactivated, and deleting a reseller removes its tokens, assignments and branding.\n- Changing a server's limits in the reseller portal now respects the reseller's quota.\n- Customers of a reseller without own branding see your brand instead of the NexoVirt default.\n- The \"Backup failed\" and \"Backup stale\" alert rules can be edited, and all alert emails are editable under Settings > Email.\n- Node scans and firewall analysis keep running on nodes whose agent is not updated yet.\n- A Stop now takes over a reboot or shutdown that hangs in Proxmox.\n- Many smaller fixes across guests, backups (PBS), networking and the portals.\n\n### [v1.2.14](#v1.2.14): NexoVirt v1.2.14\n\nSeptember 14, 2026 · Feature · by Bjarne Fomferra\n\nNew Features\n\n- Host IPv4 Forwarding Control: Admins can now discover and toggle host IPv4 forwarding directly from the panel, enhancing network management capabilities.\n- Background SDN Collection: The system now collects SDN data in the background, allowing for a smoother user experience without UI freezes.\n- Dynamic IP Assignment for Projects: Each project network now has its own IPAM, enabling automatic IP assignments without manual entry.\n- Static-Capable Flag for CT Templates: A new flag indicates whether a container template can apply a static IP, improving user guidance during network configurations.\n- Zero-Setup DHCP Backend: A safe DHCP backend (dnsmasq) can now be enabled without prior setup, simplifying network configurations for users.\n- Enhanced Project Network Creation: Users can now attach guests to a project VNet during creation, streamlining the setup process.\n\nImprovements\n\n- Improved NAT Configuration: The agent now accepts port-forward destinations in allowed SDN subnets, enhancing flexibility in network configurations.\n- Optimized Timeout Handling: The timeout for PVE connections has been bounded, allowing unreachable hosts to fail faster, improving overall responsiveness.\n- UI Enhancements: The top header bar now features rendered page actions and inline badges, providing a more intuitive navigation experience.\n\nFixes\n\n- Guest Detail Title Fix: The title in the guest detail view now displays correctly, improving clarity for users.\n- Project Network Wizard Fixes: Resolved issues in the project network wizard, ensuring users can now select static IPs correctly and align content with headers.\n- Actionable Error Messages: Improved error handling when a guest fails to stop, providing clearer guidance to users.\n- Alert Evaluation Optimization: Alerts now evaluate out-of-memory (OOM) conditions more effectively by selecting the latest guest snapshot.\n- Consistent Checkbox Behavior: Fixed spacing and consistency issues with checkboxes in container options, enhancing the user interface.\n\n### [v1.2.13](#v1.2.13): NexoVirt v1.2.13\n\nAugust 25, 2026 · Feature · by Bjarne Fomferra\n\nNew Features\n\n- Prometheus Exporter: A new `/metrics` endpoint is now available for Prometheus integration, allowing users to scrape metrics from NexoVirt.\n- Grafana Dashboard: A new NexoVirt Grafana dashboard (slice 2) has been shipped, providing a visual representation of metrics.\n- Prometheus Settings Page: A dedicated settings page for managing the Prometheus exporter has been added, allowing admins to enable the endpoint and configure IP allowlists.\n\nImprovements\n\n- Enhanced Metrics View: The Prometheus settings view now utilizes the full width of the panel and eliminates duplicate headers for a cleaner interface.\n- Export Format for Grafana: The dashboard is now available in an export-for-sharing format for easy cataloging on grafana.com.\n\nFixes\n\n- Metrics Token Filter: A new filter has been implemented to ensure that the `/metrics` endpoint is gated by a valid token and IP allowlist, enhancing security.\n- Dashboard Export Fix: Fixed an issue with the Grafana dashboard export format to ensure compatibility with the grafana.com catalog.\n\n### [v1.2.12](#v1.2.12): NexoVirt v1.2.12\n\nAugust 24, 2026 · Update · by Bjarne Fomferra\n\nNew Features\n\n- Dismiss Failed-Provisioning Banner: Users can now dismiss the failed-provisioning banner for guests, clearing any lingering notifications.\n- Bulk Snapshot and Delete: Admins can perform bulk snapshots and deletions directly from the guests list, streamlining management tasks.\n\nImprovements\n\n- Enhanced Guest Management: The interface now includes options for bulk actions, improving efficiency when managing multiple guests.\n\nFixes\n\n- Provisioning Job Handling: Fixed issues related to the status of provisioning jobs, ensuring that dismissed jobs do not show as failed.\n\n### [v1.2.11](#v1.2.11): NexoVirt v1.2.11\n\nAugust 24, 2026 · Update · by Bjarne Fomferra\n\nNew Features\n\nAdd IP addresses to a guest after creation\nAssign extra IPv4 or IPv6 addresses to a running VM or CT. Each additional address is added as its own NIC (net1, net2, and so on) with static config, and releasing one address removes only that address and its NIC.\n\nGlobal search for IPs and tags\nThe guests list search now matches on IP address and on Proxmox tags, in addition to name and VMID. Tags show as small badges under the guest name.\n\nDashboard node widgets\nThe dashboard node table gained two columns: an open alert badge per node (colored by worst severity, links to the Alerts page) and a 24 hour CPU trend sparkline.\n\nSkeleton loading\nTables and lazy loaded panes now show animated placeholder skeletons while data loads, instead of a bare spinner. Applies across every panel table plus the guest network, OS reinstall, and node PCIe panes.\n\nPanel layout toggle\nSwitch the panel chrome between the sidebar layout and a top navbar layout from Appearance settings, with the navigation regrouped for both.\n\nImprovements\n\nGuest detail page redesign\nA centered power card with the OS glyph, split Specifications and Details cards with clearer icons, equal height KPI tiles with inline usage bars, a storage dropdown in the top right, and an All IPs dropdown listing every assigned address.\n\nLicense recheck every 5 minutes\nLicense state is re validated on a short interval, so an upgrade, renewal, or suspension is reflected in the panel within minutes.\n\nModal stacking\nStacked modals now layer correctly, so a dialog opened on top of another modal always appears above it.\n\nAgent gate lockout escape\nThe blocking agent gate can no longer trap you: the embedded Set up and Updeachable, and the gate clears itself once the agent reports current.\n\nFixes\n\nIP address release freed too many addresses\nReleasing a single IP used to free every address of the same family on thatly the address you clicked.\n\nAdding an IP failed with a 501 error\nContainer configuration writes were sent with the wrong HTTP verb. Containeword writes now use the correct verb, so adding an IP and similar container\nchanges work.\n\nNetwork and IPAM tab stuck on Loading after reload\nThe network topology and IP filter panes now load reliably on tab click and when opened directly.\n\nGuest console and email template editor could stay blank\nBoth relied on a tab event that fires unreliably in this build. They now in so the console connects and the editor renders.\n\nActions reported success even when Proxmox failed\nReleasing a secondary IP, renewing a plan that then fails to start, and the expire actions now report the real error instead of a false success.\n\nGuest firewall changes could silently fail\nFirewall rule sync now distinguishes a genuine Proxmox rejection from other failures and reports the real outcome, including clearing stale fields on rule updates.\n\nFirewall disabled switch showed the wrong state\nA disabled rule sometimes displayed as enabled because a stored string value was misread. The switch now reflects the stored value correctly.\n\n### [v1.2.7](#v1.2.7): NexoVirt v1.2.7 - VM Firewall importer\n\nAugust 19, 2026 · Feature · by Bjarne Fomferra\n\nFixed: The per-guest Firewall tab only read NexoVirt's own database, so firewall rules and the enabled/policy state configured directly in Proxmox (outside NexoVirt) never appeared. A guest with an active firewall and live rules would show up as disabled with zero rules.\n\nWhat changed: Opening a guest's Firewall tab now reconciles the live Proxmox state back into the panel. NexoVirt reads the current PVE rules and options and mirrors them into its database, so externally-made changes stay accurately reflected everywhere the firewall is shown.\n\nDetails:\n\n- Rules still present in Proxmox keep their existing owner.\n- Rules found only in Proxmox are imported as admin-owned (locked in the customer portal).\n- The customer portal and reseller views read the same reconciled data, so they pick up external rules automatically once an admin opens the guest.\n- Fail-safe: if Proxmox is unreachable, the tab falls back to the last-known view instead of erroring\n\n### [v1.2.6](#v1.2.6)\n\nAugust 19, 2026 · Feature · by Bjarne Fomferra\n\nNew\n\n- Event webhooks (Enterprise). Fire outbound JSON webhooks on lifecycle\n\nevents (guest create/delete/power, plan suspend/resume, alerts, and more).\nPer-hook URL, method, custom headers, and a templated body with `{Field}`\nplaceholders. Optional HMAC signing, async delivery with automatic retries,\na delivery log, and one-click test send. Managed under Settings, Webhooks.\n\n- Self-service resource packs. Give a customer a raw resource budget\n\n(no billing) they can spend across their own servers. Admin creates packs,\nlinks them to templates, and assigns one per customer.\n\n- Edit resource limits after create. Change an existing guest's cores,\n\nmemory, and disk from the panel, for both admins and resellers, without a\nreinstall.\n\n- Plan port speed and traffic throttling. Plans can now set a network\n\nport speed, applied at create. When a guest goes over its traffic limit it\nis throttled at the NIC instead of being powered off (configurable).\n\n- New account emails. Server reinstalled, password reset, and server\n\ndeleted now send owner notifications, alongside the existing welcome and\nserver-created mails.\n\n- Full-page log detail. Open any log entry on its own page with correct\n\nseverity badge colouring.\n\nImproved\n\n- Email template editor. A three-column layout: grouped template list,\n\na wide HTML body editor with syntax highlighting and pretty-printing, and a\nlive preview. Panes are draggable and the editor is vertically resizable.\n\n- Reseller parity. The reseller guest detail now matches the admin and\n\nportal layout: the KVM vertical sidebar (Monitoring, Limits, Network,\nFirewall, Snapshots, OS, Danger), a single flat content card, a matching\npower card, and a unified sidebar user block. Resellers also get a Security\npage (2FA and change password), a light/dark logo uploader, and a tabbed\nedit page.\n\n- Guests list at a glance. Defaults to 10 rows with inline memory,\n\nstorage, and traffic sparklines per guest.\n\n- Consistent tabs. Horizontal tab strips across the panel now use the\n\nstandard Tabler tab style with icons.\n\n- Dismissible Discord banner on the dashboard.\n- Faster backups view. The per-guest backup scan is cached briefly, so\n\nopening a guest's backups no longer runs the scan twice.\n\nFixed\n\n- Console connects on IP-only and plain-HTTP installs. The guest and node\n\nconsole now uses the panel's own origin, so remote sessions connect\nreliably. Localhost development is unaffected.\n\n- LXC root-password change now works through the host agent (containers\n\nhave no config API for it).\n\n- LXC port-speed changes now apply correctly.\n- Mail log status colours read correctly: sent is green, queued and\n\npending are blue, failed is red.\n\n- Various guest-detail layout fixes (power buttons, status text size, nested\n\ncards).\n\n### [v1.2.0](#v1.2.0): NexoVirt v1.2.0\n\nAugust 6, 2026 · Feature · by Bjarne Fomferra\n\nNexoVirt v1.2.0\n\nReseller tier (Enterprise)\n\nResellers are now node-scoped mini-admins with a self-service portal: manage their own customers, provision servers (full admin-parity wizard), power/console/snapshots, per-guest firewall + IP, reseller-owned plans, assigned IP pools, and per-customer SSH keys. Per-reseller quotas + usage reports (CSV). Strict tenant isolation throughout.\n\nWhite-label & theming (Enterprise)\n\n- Separate App and Login logos with light/dark variants + independent sizing (contained, no stretching).\n- Custom favicon (SVG).\n- Full theme colors: primary, background, surface, text, borders for light + dark, with a live preview.\n- Theme presets (Ocean/Forest/Sunset/Grape) + one-click Reset to defaults.\n\nEnterprise security & compliance\n\n- OIDC single sign-on with IdP group → panel-role mapping.\n- Role-based access control + dedicated admin management.\n- 4-eyes approval workflow for sensitive actions.\n- Alert escalation, SIEM log forwarding (webhook), audit/event-log CSV export.\n\nProvisioning & portal\n\n- New 6-step create wizard with saved draft.\n- Customer portal parity + live provisioning status.\n- IP zone LAN scan, compact allocation view, dual-stack change/release.\n- One-click datacenter firewall enable; top-level Updates page.\n\nFixes\n\nReseller-created guests show immediately; Branding \"Save\" fix; PVE array-param serialization (agent exec 400s); reinstall/destroy race retry; various UI/stability fixes.\n\nUpgrade notes\n\nIncludes DB migrations (applied automatically, health-checked with auto-rollback). Run \"Update agent\" on each Proxmox host after upgrading. All new features are edition-gated — Community installs are unaffected.\n\n### [v1.0.34](#v1.0.34): NexoVirt v1.0.34: first public release\n\nJune 25, 2026 · Release · by Bjarne Fomferra\n\nThe first public release of NexoVirt is here — a self-hosted control panel that turns\none or many Proxmox VE hosts into a clean, multi-tenant platform with a friendlier UI\nand a proper REST API.\n\nHighlights\n\n- Multi-host management — bring every Proxmox host into one dashboard. Works with\n\nalready-running nodes via the discovery agent (no reinstall); credentials encrypted,\nper-host SSH-key auth.\n\n- Full guest lifecycle — a step-by-step create wizard for VMs and LXCs, reinstall,\n\npower and bulk actions, all async with instant UI updates.\n\n- In-browser console — an xterm.js serial terminal with a noVNC graphical fallback.\n- Cloud-init OS templates — an editable, branded template library with managed image\n\nstorage and on-demand per-node downloads.\n\n- Networking & IPAM — IPv4/IPv6 zones, static or DHCP assignment, NAT/port-forwarding,\n\nhost firewall inspection with a network map, and per-guest firewall rules with presets.\n\n- Plans & enforcement — cores, memory, disk, monthly traffic and expiry, with automatic\n\nsuspend, delete and resume.\n\n- Backups & snapshots — on-demand vzdump backups, scheduled jobs, Proxmox Backup Server\n\n(PBS) integration, plus instant per-guest snapshots with rollback.\n\n- Customer portal & RBAC — give customers a scoped portal with console, SSH keys and 2FA.\n\nMulti-tenant by design, with admin impersonation and a global audit log.\n\n- Alerting — rule-based alerts via inbox, email and webhooks (Discord & Google Chat).\n- Clean REST API — bearer-token, consistent envelope, in-app docs.\n\nGood to know\n\nNexoVirt is in beta — we're polishing for the full release. Bug reports and feedback\nare very welcome and genuinely shape what ships next. Thanks for trying it!"},{"heading":"Related pages","content":"- [ Installation and updates Install, update and uninstall NexoVirt. ](https://docs.nexovirt.com/getting-started/installation/)\n- [ All features Everything NexoVirt adds to Proxmox VE. ](https://nexovirt.com/features)\n- [ Blog Guides for Proxmox admins and hosting providers. ](https://nexovirt.com/blog)"},{"heading":"Start running NexoVirt today","content":"Free for homelabs with unlimited VMs on up to 2 nodes. Running a hosting business? Upgrade in place when you grow, no migration.\n\n[Install free](https://docs.nexovirt.com/getting-started/installation/) [See pricing](https://nexovirt.com/pricing)"}],"faq":[]}