public inbox for pdm-devel@lists.proxmox.com
 help / color / mirror / Atom feed
From: Lukas Wagner <l.wagner@proxmox.com>
To: pdm-devel@lists.proxmox.com
Subject: [RFC datacenter-manager 5/6] tests: add captured responses for integration tests
Date: Thu, 29 Jan 2026 14:44:17 +0100	[thread overview]
Message-ID: <20260129134418.307552-7-l.wagner@proxmox.com> (raw)
In-Reply-To: <20260129134418.307552-1-l.wagner@proxmox.com>

Separated into its own commit so that these do not pollute the diff for
the commit adding the actual tests.

Signed-off-by: Lukas Wagner <l.wagner@proxmox.com>
---
 server/tests/api_responses/pve/apt_repos.json | 469 +++++++++++
 .../tests/api_responses/pve/apt_update.json   | 638 +++++++++++++++
 .../tests/api_responses/pve/apt_versions.json | 736 ++++++++++++++++++
 .../api_responses/pve/node_subscription.json  |   6 +
 4 files changed, 1849 insertions(+)
 create mode 100644 server/tests/api_responses/pve/apt_repos.json
 create mode 100644 server/tests/api_responses/pve/apt_update.json
 create mode 100644 server/tests/api_responses/pve/apt_versions.json
 create mode 100644 server/tests/api_responses/pve/node_subscription.json

diff --git a/server/tests/api_responses/pve/apt_repos.json b/server/tests/api_responses/pve/apt_repos.json
new file mode 100644
index 00000000..7e9567e1
--- /dev/null
+++ b/server/tests/api_responses/pve/apt_repos.json
@@ -0,0 +1,469 @@
+{
+   "digest" : "0ec7d07d2b0c95500dc7f10583c7721070ecd54c15531cd9fd9da9d89c281204",
+   "errors" : [],
+   "files" : [
+      {
+         "digest" : [
+            25,
+            16,
+            2,
+            105,
+            244,
+            161,
+            26,
+            50,
+            187,
+            214,
+            7,
+            97,
+            129,
+            101,
+            179,
+            13,
+            81,
+            128,
+            11,
+            47,
+            248,
+            216,
+            50,
+            97,
+            241,
+            154,
+            73,
+            246,
+            154,
+            173,
+            129,
+            83
+         ],
+         "file-type" : "list",
+         "path" : "/etc/apt/sources.list",
+         "repositories" : [
+            {
+               "Components" : [
+                  "main",
+                  "contrib"
+               ],
+               "Enabled" : 1,
+               "FileType" : "list",
+               "Suites" : [
+                  "trixie"
+               ],
+               "Types" : [
+                  "deb"
+               ],
+               "URIs" : [
+                  "http://ftp.at.debian.org/debian"
+               ]
+            },
+            {
+               "Components" : [
+                  "main",
+                  "contrib"
+               ],
+               "Enabled" : 1,
+               "FileType" : "list",
+               "Suites" : [
+                  "trixie-updates"
+               ],
+               "Types" : [
+                  "deb"
+               ],
+               "URIs" : [
+                  "http://ftp.at.debian.org/debian"
+               ]
+            },
+            {
+               "Comment" : " security updates\n",
+               "Components" : [
+                  "main",
+                  "contrib"
+               ],
+               "Enabled" : 1,
+               "FileType" : "list",
+               "Suites" : [
+                  "trixie-security"
+               ],
+               "Types" : [
+                  "deb"
+               ],
+               "URIs" : [
+                  "http://security.debian.org"
+               ]
+            }
+         ]
+      },
+      {
+         "digest" : [
+            20,
+            143,
+            139,
+            119,
+            109,
+            20,
+            12,
+            89,
+            123,
+            154,
+            12,
+            13,
+            60,
+            101,
+            189,
+            249,
+            60,
+            176,
+            128,
+            234,
+            128,
+            168,
+            157,
+            17,
+            68,
+            70,
+            52,
+            3,
+            92,
+            193,
+            131,
+            132
+         ],
+         "file-type" : "sources",
+         "path" : "/etc/apt/sources.list.d/proxmox.sources",
+         "repositories" : [
+            {
+               "Components" : [
+                  "pve-no-subscription"
+               ],
+               "Enabled" : 0,
+               "FileType" : "sources",
+               "Options" : [
+                  {
+                     "Key" : "Signed-By",
+                     "Values" : [
+                        "/usr/share/keyrings/proxmox-archive-keyring.gpg"
+                     ]
+                  },
+                  {
+                     "Key" : "Enabled",
+                     "Values" : [
+                        "false"
+                     ]
+                  }
+               ],
+               "Suites" : [
+                  "trixie"
+               ],
+               "Types" : [
+                  "deb"
+               ],
+               "URIs" : [
+                  "http://download.proxmox.com/debian/pve"
+               ]
+            },
+            {
+               "Components" : [
+                  "pve-test"
+               ],
+               "Enabled" : 1,
+               "FileType" : "sources",
+               "Options" : [
+                  {
+                     "Key" : "Signed-By",
+                     "Values" : [
+                        "/usr/share/keyrings/proxmox-archive-keyring.gpg"
+                     ]
+                  }
+               ],
+               "Suites" : [
+                  "trixie"
+               ],
+               "Types" : [
+                  "deb"
+               ],
+               "URIs" : [
+                  "http://download.proxmox.com/debian/pve"
+               ]
+            }
+         ]
+      },
+      {
+         "digest" : [
+            240,
+            120,
+            248,
+            18,
+            110,
+            2,
+            197,
+            189,
+            38,
+            29,
+            38,
+            0,
+            102,
+            69,
+            77,
+            164,
+            121,
+            40,
+            26,
+            112,
+            179,
+            41,
+            253,
+            179,
+            100,
+            65,
+            49,
+            152,
+            186,
+            96,
+            165,
+            40
+         ],
+         "file-type" : "list",
+         "path" : "/etc/apt/sources.list.d/ceph.list",
+         "repositories" : [
+            {
+               "Components" : [
+                  "enterprise"
+               ],
+               "Enabled" : 0,
+               "FileType" : "list",
+               "Suites" : [
+                  "bookworm"
+               ],
+               "Types" : [
+                  "deb"
+               ],
+               "URIs" : [
+                  "https://enterprise.proxmox.com/debian/ceph-quincy"
+               ]
+            },
+            {
+               "Components" : [
+                  "no-subscription"
+               ],
+               "Enabled" : 0,
+               "FileType" : "list",
+               "Suites" : [
+                  "bookworm"
+               ],
+               "Types" : [
+                  "deb"
+               ],
+               "URIs" : [
+                  "http://download.proxmox.com/debian/ceph-quincy"
+               ]
+            }
+         ]
+      },
+      {
+         "digest" : [
+            206,
+            114,
+            195,
+            192,
+            184,
+            195,
+            73,
+            240,
+            227,
+            21,
+            111,
+            157,
+            215,
+            226,
+            7,
+            187,
+            189,
+            165,
+            36,
+            130,
+            22,
+            142,
+            192,
+            201,
+            249,
+            11,
+            112,
+            159,
+            247,
+            190,
+            35,
+            155
+         ],
+         "file-type" : "sources",
+         "path" : "/etc/apt/sources.list.d/pve-enterprise.sources",
+         "repositories" : [
+            {
+               "Components" : [
+                  "pve-9"
+               ],
+               "Enabled" : 0,
+               "FileType" : "sources",
+               "Options" : [
+                  {
+                     "Key" : "Signed-By",
+                     "Values" : [
+                        "/usr/share/keyrings/proxmox-archive-keyring.gpg"
+                     ]
+                  },
+                  {
+                     "Key" : "Enabled",
+                     "Values" : [
+                        "false"
+                     ]
+                  }
+               ],
+               "Suites" : [
+                  "trixie"
+               ],
+               "Types" : [
+                  "deb"
+               ],
+               "URIs" : [
+                  "http://repo.proxmox.com/staging/pve"
+               ]
+            },
+            {
+               "Components" : [
+                  "pve-enterprise"
+               ],
+               "Enabled" : 0,
+               "FileType" : "sources",
+               "Options" : [
+                  {
+                     "Key" : "Signed-By",
+                     "Values" : [
+                        "/usr/share/keyrings/proxmox-archive-keyring.gpg"
+                     ]
+                  },
+                  {
+                     "Key" : "Enabled",
+                     "Values" : [
+                        "false"
+                     ]
+                  }
+               ],
+               "Suites" : [
+                  "trixie"
+               ],
+               "Types" : [
+                  "deb"
+               ],
+               "URIs" : [
+                  "https://enterprise.proxmox.com/debian/pve"
+               ]
+            }
+         ]
+      }
+   ],
+   "infos" : [
+      {
+         "index" : 0,
+         "kind" : "origin",
+         "message" : "Debian",
+         "path" : "/etc/apt/sources.list"
+      },
+      {
+         "index" : 1,
+         "kind" : "origin",
+         "message" : "Debian",
+         "path" : "/etc/apt/sources.list"
+      },
+      {
+         "index" : 2,
+         "kind" : "origin",
+         "message" : "Debian",
+         "path" : "/etc/apt/sources.list"
+      },
+      {
+         "index" : 0,
+         "kind" : "origin",
+         "message" : "Proxmox",
+         "path" : "/etc/apt/sources.list.d/proxmox.sources"
+      },
+      {
+         "index" : 1,
+         "kind" : "origin",
+         "message" : "Proxmox",
+         "path" : "/etc/apt/sources.list.d/proxmox.sources"
+      },
+      {
+         "index" : 0,
+         "kind" : "warning",
+         "message" : "old suite 'bookworm' configured!",
+         "path" : "/etc/apt/sources.list.d/ceph.list",
+         "property" : "Suites"
+      },
+      {
+         "index" : 1,
+         "kind" : "warning",
+         "message" : "old suite 'bookworm' configured!",
+         "path" : "/etc/apt/sources.list.d/ceph.list",
+         "property" : "Suites"
+      },
+      {
+         "index" : 0,
+         "kind" : "origin",
+         "message" : "Proxmox",
+         "path" : "/etc/apt/sources.list.d/ceph.list"
+      },
+      {
+         "index" : 1,
+         "kind" : "origin",
+         "message" : "Proxmox",
+         "path" : "/etc/apt/sources.list.d/ceph.list"
+      },
+      {
+         "index" : 0,
+         "kind" : "origin",
+         "message" : "Proxmox",
+         "path" : "/etc/apt/sources.list.d/pve-enterprise.sources"
+      },
+      {
+         "index" : 1,
+         "kind" : "origin",
+         "message" : "Proxmox",
+         "path" : "/etc/apt/sources.list.d/pve-enterprise.sources"
+      }
+   ],
+   "standard-repos" : [
+      {
+         "description" : "This is the default, stable, and recommended repository, available for all Proxmox subscription users.",
+         "handle" : "enterprise",
+         "name" : "Enterprise",
+         "status" : 0
+      },
+      {
+         "description" : "This is the recommended repository for testing and non-production use. Its packages are not as heavily tested and validated as the production ready enterprise repository. You don't need a subscription key to access this repository.",
+         "handle" : "no-subscription",
+         "name" : "No-Subscription",
+         "status" : 0
+      },
+      {
+         "description" : "This repository contains the latest packages and is primarily used for test labs and by developers to test new features.",
+         "handle" : "test",
+         "name" : "Test",
+         "status" : 1
+      },
+      {
+         "description" : "This repository holds the production-ready Proxmox Ceph Squid packages.",
+         "handle" : "ceph-squid-enterprise",
+         "name" : "Ceph Squid Enterprise"
+      },
+      {
+         "description" : "This repository holds the Proxmox Ceph Squid packages intended for non-production use.",
+         "handle" : "ceph-squid-no-subscription",
+         "name" : "Ceph Squid No-Subscription"
+      },
+      {
+         "description" : "This repository contains the Ceph Squid packages before they are moved to the main repository.",
+         "handle" : "ceph-squid-test",
+         "name" : "Ceph Squid Test"
+      }
+   ]
+}
diff --git a/server/tests/api_responses/pve/apt_update.json b/server/tests/api_responses/pve/apt_update.json
new file mode 100644
index 00000000..183acf94
--- /dev/null
+++ b/server/tests/api_responses/pve/apt_update.json
@@ -0,0 +1,638 @@
+[
+   {
+      "Arch" : "all",
+      "Description" : "This package contains the Proxmox VE Documentation files.",
+      "OldVersion" : "9.1.1",
+      "Origin" : "Proxmox",
+      "Package" : "pve-docs",
+      "Priority" : "optional",
+      "Section" : "doc",
+      "Title" : "Proxmox VE Documentation",
+      "Version" : "9.1.2"
+   },
+   {
+      "Arch" : "all",
+      "Description" : "This is a metapackage which will install the kernel image for the default Proxmox kernel series.",
+      "OldVersion" : "2.0.1",
+      "Origin" : "Proxmox",
+      "Package" : "proxmox-default-kernel",
+      "Priority" : "optional",
+      "Section" : "admin",
+      "Title" : "Default Proxmox Kernel Image",
+      "Version" : "2.0.2"
+   },
+   {
+      "Arch" : "all",
+      "Description" : "The base framework providing widgets, models, and general utilities for the ExtJS based Web UIs of various Proxmox projects",
+      "OldVersion" : "5.1.2",
+      "Origin" : "Proxmox",
+      "Package" : "proxmox-widget-toolkit",
+      "Priority" : "optional",
+      "Section" : "web",
+      "Title" : "Core Widgets and ExtJS Helper Classes for Proxmox Web UIs",
+      "Version" : "5.1.5"
+   },
+   {
+      "Arch" : "amd64",
+      "Description" : "This package contains the source for the Rust pve-rs crate, packaged by debcargo for use with cargo and dh-cargo.",
+      "OldVersion" : "0.11.3",
+      "Origin" : "Proxmox",
+      "Package" : "libpve-rs-perl",
+      "Priority" : "optional",
+      "Section" : "perl",
+      "Title" : "PVE parts which have been ported to Rust - Rust source code",
+      "Version" : "0.11.4"
+   },
+   {
+      "Arch" : "amd64",
+      "Description" : "GnuPG is GNU's tool for secure communication and data storage. It can be used to encrypt data and to create digital signatures. It includes an advanced key management facility and is compliant with the proposed OpenPGP Internet standard as described in RFC4880. . This package contains /usr/bin/gpg itself, and is useful on its own only for public key operations (encryption, signature verification, listing OpenPGP certificates, etc).  If you want full capabilities (including secret key operations, network access, etc), please install the \"gnupg\" package, which pulls in the full suite of tools.",
+      "OldVersion" : "2.4.7-21+b3",
+      "Origin" : "Debian",
+      "Package" : "gpg",
+      "Priority" : "optional",
+      "Section" : "utils",
+      "Title" : "GNU Privacy Guard -- minimalist public key operations",
+      "Version" : "2.4.7-21+deb13u1+b1"
+   },
+   {
+      "Arch" : "amd64",
+      "Description" : "BusyBox combines tiny versions of many common UNIX utilities into a single small executable. It provides minimalist replacements for the most common utilities you would usually find on your desktop system (i.e., ls, cp, mv, mount, tar, etc.). The utilities in BusyBox generally have fewer options than their full-featured GNU cousins; however, the options that are included provide the expected functionality and behave very much like their GNU counterparts. . This package installs the BusyBox binary but does not install symlinks for any of the supported utilities. Some of the utilities can be used in the system by installing the busybox-syslogd, udhcpc or udhcpd packages.",
+      "OldVersion" : "1:1.37.0-6+b3",
+      "Origin" : "Debian",
+      "Package" : "busybox",
+      "Priority" : "optional",
+      "Section" : "utils",
+      "Title" : "Tiny utilities for small and embedded systems",
+      "Version" : "1:1.37.0-6+b5"
+   },
+   {
+      "Arch" : "amd64",
+      "Description" : "sqv is a single-purpose CLI for verifying OpenPGP signatures, designed to be used from scripts. . OpenPGP users looking for the full range of OpenPGP functionality will usually prefer sq, the Sequoia PGP project's primary CLI, which provides a richer signature verification interface and other functionality like certificate management.",
+      "OldVersion" : "1.3.0-3",
+      "Origin" : "Debian",
+      "Package" : "sqv",
+      "Priority" : "optional",
+      "Section" : "utils",
+      "Title" : "OpenPGP signature verification program from Sequoia",
+      "Version" : "1.3.0-3+b2"
+   },
+   {
+      "Arch" : "amd64",
+      "Description" : "Using KVM, one can run multiple virtual PCs, each running unmodified Linux or Windows images. Each virtual machine has private virtualized hardware: a network card, disk, graphics adapter, etc.",
+      "OldVersion" : "10.1.2-4",
+      "Origin" : "Proxmox",
+      "Package" : "pve-qemu-kvm",
+      "Priority" : "optional",
+      "Section" : "admin",
+      "Title" : "Full virtualization on x86 hardware",
+      "Version" : "10.1.2-5"
+   },
+   {
+      "Arch" : "amd64",
+      "Description" : "Libcap implements the user-space interfaces to the POSIX 1003.1e capabilities available in Linux kernels. These capabilities are a partitioning of the all powerful root privilege into a set of distinct privileges. . This package contains additional utilities.",
+      "OldVersion" : "1:2.75-10+b1",
+      "Origin" : "Debian",
+      "Package" : "libcap2-bin",
+      "Priority" : "optional",
+      "Section" : "utils",
+      "Title" : "POSIX 1003.1e capabilities (utilities)",
+      "Version" : "1:2.75-10+b3"
+   },
+   {
+      "Arch" : "amd64",
+      "Description" : "GObject Introspection is a project for providing machine readable introspection data of the API of C libraries. This introspection data can be used in several different use cases, for example automatic code generation for bindings, API verification and documentation generation. . This package contains the introspection data for the GLib, GObject, GModule and Gio libraries, in the typelib format used to generate bindings for dynamic languages like JavaScript and Python.",
+      "OldVersion" : "2.84.4-3~deb13u1",
+      "Origin" : "Debian",
+      "Package" : "gir1.2-glib-2.0",
+      "Priority" : "optional",
+      "Section" : "introspection",
+      "Title" : "Introspection data for GLib, GObject, Gio and GModule",
+      "Version" : "2.84.4-3~deb13u2"
+   },
+   {
+      "Arch" : "amd64",
+      "Description" : "debug symbols for qemu-server",
+      "OldVersion" : "9.1.1",
+      "Origin" : "Proxmox",
+      "Package" : "qemu-server-dbgsym",
+      "Priority" : "optional",
+      "Section" : "debug",
+      "Title" : "debug symbols for qemu-server",
+      "Version" : "9.1.3"
+   },
+   {
+      "Arch" : "amd64",
+      "Description" : "The ext2, ext3 and ext4 file systems are successors of the original ext (\"extended\") file system. They are the main file system types used for hard disks on Debian and other Linux systems. . This package provides the ext2fs and e2p libraries, for userspace software that directly accesses extended file systems. Programs that use libext2fs include e2fsck, mke2fs, and tune2fs. Programs that use libe2p include dumpe2fs, chattr, and lsattr.",
+      "OldVersion" : "1.47.2-3+b3",
+      "Origin" : "Debian",
+      "Package" : "libext2fs2t64",
+      "Priority" : "optional",
+      "Section" : "libs",
+      "Title" : "ext2/ext3/ext4 file system libraries",
+      "Version" : "1.47.2-3+b7"
+   },
+   {
+      "Arch" : "amd64",
+      "Description" : "HA Manager Proxmox VE.",
+      "OldVersion" : "5.0.8",
+      "Origin" : "Proxmox",
+      "Package" : "pve-ha-manager",
+      "Priority" : "optional",
+      "Section" : "perl",
+      "Title" : "Proxmox VE HA Manager",
+      "Version" : "5.1.0"
+   },
+   {
+      "Arch" : "all",
+      "Description" : "GnuPG is GNU's tool for secure communication and data storage. It can be used to encrypt data and to create digital signatures. It includes an advanced key management facility and is compliant with the proposed OpenPGP Internet standard as described in RFC4880. . This package contains the full suite of GnuPG tools for cryptographic communications and data storage.",
+      "OldVersion" : "2.4.7-21",
+      "Origin" : "Debian",
+      "Package" : "gnupg",
+      "Priority" : "optional",
+      "Section" : "utils",
+      "Title" : "GNU privacy guard - a free PGP replacement",
+      "Version" : "2.4.7-21+deb13u1"
+   },
+   {
+      "Arch" : "amd64",
+      "Description" : "GnuPG is GNU's tool for secure communication and data storage. It can be used to encrypt data and to create digital signatures. It includes an advanced key management facility and is compliant with the proposed OpenPGP Internet standard as described in RFC4880. . This package provides the GnuPG server for the Web Key Service protocol. . A Web Key Service is a service that allows users to upload keys per mail to be verified over https as described in https://tools.ietf.org/html/draft-koch-openpgp-webkey-service . For more information see: https://wiki.gnupg.org/WKS",
+      "OldVersion" : "2.4.7-21+b3",
+      "Origin" : "Debian",
+      "Package" : "gpg-wks-server",
+      "Priority" : "optional",
+      "Section" : "utils",
+      "Title" : "GNU privacy guard - Web Key Service server",
+      "Version" : "2.4.7-21+deb13u1+b1"
+   },
+   {
+      "Arch" : "all",
+      "Description" : "This package provides the translations into all available languages.",
+      "OldVersion" : "3.6.5",
+      "Origin" : "Proxmox",
+      "Package" : "pve-yew-mobile-i18n",
+      "Priority" : "optional",
+      "Section" : "perl",
+      "Title" : "Internationalization support for Proxmox Virtual Environment (yew PWA)",
+      "Version" : "3.6.6"
+   },
+   {
+      "Arch" : "all",
+      "Description" : "GLib is a library containing many useful C routines for things such as trees, hashes, lists, and strings.  It is a useful general-purpose C library used by projects such as GTK+, GIMP, and GNOME. . This package is needed for the runtime libraries to display messages in languages other than English.",
+      "OldVersion" : "2.84.4-3~deb13u1",
+      "Origin" : "Debian",
+      "Package" : "libglib2.0-data",
+      "Priority" : "optional",
+      "Section" : "libs",
+      "Title" : "Common files for GLib library",
+      "Version" : "2.84.4-3~deb13u2"
+   },
+   {
+      "Arch" : "amd64",
+      "Description" : "GnuPG is GNU's tool for secure communication and data storage. It can be used to encrypt data and to create digital signatures. It includes an advanced key management facility and is compliant with the proposed OpenPGP Internet standard as described in RFC4880. . This package contains the agent program gpg-agent which handles all secret key material for OpenPGP and S/MIME use.  The agent also provides a passphrase cache, which is used by pre-2.1 versions of GnuPG for OpenPGP operations.  Without this package, trying to do secret-key operations with any part of the modern GnuPG suite will fail.",
+      "OldVersion" : "2.4.7-21+b3",
+      "Origin" : "Debian",
+      "Package" : "gpg-agent",
+      "Priority" : "optional",
+      "Section" : "utils",
+      "Title" : "GNU privacy guard - cryptographic agent",
+      "Version" : "2.4.7-21+deb13u1+b1"
+   },
+   {
+      "Arch" : "amd64",
+      "Description" : "libcomerr is an attempt to present a common error-handling mechanism to manipulate the most common form of error code in a fashion that does not have the problems identified with mechanisms commonly in use.",
+      "OldVersion" : "1.47.2-3+b3",
+      "Origin" : "Debian",
+      "Package" : "libcom-err2",
+      "Priority" : "optional",
+      "Section" : "libs",
+      "Title" : "common error description library",
+      "Version" : "1.47.2-3+b7"
+   },
+   {
+      "Arch" : "amd64",
+      "Description" : "NaCl (pronounced \"salt\") is a new easy-to-use high-speed software library for network communication, encryption, decryption, signatures, etc. . NaCl's goal is to provide all of the core operations needed to build higher-level cryptographic tools. . Sodium is a portable, cross-compilable, installable, packageable fork of NaCl, with a compatible API.",
+      "OldVersion" : "1.0.18-1+b2",
+      "Origin" : "Debian",
+      "Package" : "libsodium23",
+      "Priority" : "optional",
+      "Section" : "libs",
+      "Title" : "Network communication, cryptography and signaturing library",
+      "Version" : "1.0.18-1+deb13u1"
+   },
+   {
+      "Arch" : "amd64",
+      "Description" : "Libcap implements the user-space interfaces to the POSIX 1003.1e capabilities available in Linux kernels. These capabilities are a partitioning of the all powerful root privilege into a set of distinct privileges. . This package contains the shared library.",
+      "OldVersion" : "1:2.75-10+b1",
+      "Origin" : "Debian",
+      "Package" : "libcap2",
+      "Priority" : "optional",
+      "Section" : "libs",
+      "Title" : "POSIX 1003.1e capabilities (library)",
+      "Version" : "1:2.75-10+b3"
+   },
+   {
+      "Arch" : "amd64",
+      "Description" : "This package contains the Proxmox Backup single file restore client for restoring individual files and folders from both host/container and VM/block device backups. It includes a block device restore driver using QEMU.",
+      "OldVersion" : "4.1.0-1",
+      "Origin" : "Proxmox",
+      "Package" : "proxmox-backup-file-restore",
+      "Priority" : "optional",
+      "Section" : "admin",
+      "Title" : "Proxmox Backup single file restore tools for pxar and block device backups",
+      "Version" : "4.1.1-1"
+   },
+   {
+      "Arch" : "amd64",
+      "Description" : "Contains the standard libraries that are used by nearly all programs on the system. This package includes shared versions of the standard C library and the standard math library, as well as many others.",
+      "OldVersion" : "2.41-12",
+      "Origin" : "Debian",
+      "Package" : "libc6",
+      "Priority" : "optional",
+      "Section" : "libs",
+      "Title" : "GNU C Library: Shared libraries",
+      "Version" : "2.41-12+deb13u1"
+   },
+   {
+      "Arch" : "all",
+      "Description" : "Machine-readable data files, shared objects and programs used by the C library for localization (l10n) and internationalization (i18n) support. . This package contains tools to generate locale definitions from source files (included in this package). It allows you to customize which definitions actually get generated. This is a space-saver over how this package used to be, with all locales generated by default. This created a package that unpacked to an excess of 30 megs.",
+      "OldVersion" : "2.41-12",
+      "Origin" : "Debian",
+      "Package" : "locales",
+      "Priority" : "standard",
+      "Section" : "localization",
+      "Title" : "GNU C Library: National Language (locale) data [support]",
+      "Version" : "2.41-12+deb13u1"
+   },
+   {
+      "Arch" : "all",
+      "Description" : "This is a metapackage which will install the latest available proxmox kernel from the 6.14 series.",
+      "OldVersion" : "6.14.11-4",
+      "Origin" : "Proxmox",
+      "Package" : "proxmox-kernel-6.14",
+      "Priority" : "optional",
+      "Section" : "admin",
+      "Title" : "Latest Proxmox Kernel Image",
+      "Version" : "6.14.11-5"
+   },
+   {
+      "Arch" : "amd64",
+      "Description" : "This package contains the linux kernel and initial ramdisk used for booting . This package contains the kernel image signed by the Proxmox Secure Boot CA.",
+      "Origin" : "Proxmox",
+      "Package" : "proxmox-kernel-6.14.11-5-pve-signed",
+      "Priority" : "optional",
+      "Section" : "admin",
+      "Title" : "Proxmox Kernel Image (signed)",
+      "Version" : "6.14.11-5"
+   },
+   {
+      "Arch" : "all",
+      "Description" : "This is a metapackage which will install the latest available proxmox kernel from the 6.17 series.",
+      "OldVersion" : "6.17.2-2",
+      "Origin" : "Proxmox",
+      "Package" : "proxmox-kernel-6.17",
+      "Priority" : "optional",
+      "Section" : "admin",
+      "Title" : "Latest Proxmox Kernel Image",
+      "Version" : "6.17.4-2"
+   },
+   {
+      "Arch" : "amd64",
+      "Description" : "This package contains the linux kernel and initial ramdisk used for booting . This package contains the kernel image signed by the Proxmox Secure Boot CA.",
+      "Origin" : "Proxmox",
+      "Package" : "proxmox-kernel-6.17.4-2-pve-signed",
+      "Priority" : "optional",
+      "Section" : "admin",
+      "Title" : "Proxmox Kernel Image (signed)",
+      "Version" : "6.17.4-2"
+   },
+   {
+      "Arch" : "amd64",
+      "Description" : "This package contains the Qemu Server tools used by Proxmox VE",
+      "OldVersion" : "9.1.1",
+      "Origin" : "Proxmox",
+      "Package" : "qemu-server",
+      "Priority" : "optional",
+      "Section" : "admin",
+      "Title" : "Qemu Server Tools",
+      "Version" : "9.1.3"
+   },
+   {
+      "Arch" : "amd64",
+      "Description" : "GnuPG is GNU's tool for secure communication and data storage. . gpgv is actually a stripped-down version of gpg which is only able to check signatures. It is somewhat smaller than the fully-blown gpg and uses a different (and simpler) way to check that the public keys used to make the signature are valid. There are no configuration files and only a few options are implemented.",
+      "OldVersion" : "2.4.7-21+b3",
+      "Origin" : "Debian",
+      "Package" : "gpgv",
+      "Priority" : "optional",
+      "Section" : "utils",
+      "Title" : "GNU privacy guard - signature verification tool",
+      "Version" : "2.4.7-21+deb13u1+b1"
+   },
+   {
+      "Arch" : "all",
+      "Description" : "This package contains the role based user management and access control function used by Proxmox VE.",
+      "OldVersion" : "9.0.4",
+      "Origin" : "Proxmox",
+      "Package" : "libpve-access-control",
+      "Priority" : "optional",
+      "Section" : "perl",
+      "Title" : "Proxmox VE access control library",
+      "Version" : "9.0.5"
+   },
+   {
+      "Arch" : "amd64",
+      "Description" : "Bash is an sh-compatible command language interpreter that executes commands read from the standard input or from a file.  Bash also incorporates useful features from the Korn and C shells (ksh and csh). . Bash is ultimately intended to be a conformant implementation of the IEEE POSIX Shell and Tools specification (IEEE Working Group 1003.2). . The Programmable Completion Code, by Ian Macdonald, is now found in the bash-completion package.",
+      "OldVersion" : "5.2.37-2+b5",
+      "Origin" : "Debian",
+      "Package" : "bash",
+      "Priority" : "required",
+      "Section" : "shells",
+      "Title" : "GNU Bourne Again SHell",
+      "Version" : "5.2.37-2+b7"
+   },
+   {
+      "Arch" : "all",
+      "Description" : "This package provides the translations into all available languages.",
+      "OldVersion" : "3.6.5",
+      "Origin" : "Proxmox",
+      "Package" : "pve-i18n",
+      "Priority" : "optional",
+      "Section" : "perl",
+      "Title" : "Internationalization support for Proxmox VE",
+      "Version" : "3.6.6"
+   },
+   {
+      "Arch" : "amd64",
+      "Description" : "This package contains the basic filesystem hierarchy of a Debian system, and several important miscellaneous files, such as /etc/debian_version, /etc/host.conf, /etc/issue, /etc/motd, /etc/profile, and others, and the text of several common licenses in use on Debian systems.",
+      "OldVersion" : "13.8+deb13u2",
+      "Origin" : "Debian",
+      "Package" : "base-files",
+      "Priority" : "required",
+      "Section" : "admin",
+      "Title" : "Debian base system miscellaneous files",
+      "Version" : "13.8+deb13u3"
+   },
+   {
+      "Arch" : "amd64",
+      "Description" : "GnuTLS is a portable library which implements the Transport Layer Security (TLS 1.0, 1.1, 1.2, 1.3) and Datagram Transport Layer Security (DTLS 1.0, 1.2) protocols. . GnuTLS features support for:  - certificate path validation, as well as DANE and trust on first use.  - the Online Certificate Status Protocol (OCSP).  - public key methods, including RSA and Elliptic curves, as well as password    and key authentication methods such as SRP and PSK protocols.  - all the strong encryption algorithms, including AES and Camellia.  - CPU-assisted cryptography with VIA padlock and AES-NI instruction sets.  - HSMs and cryptographic tokens, via PKCS #11. . This package contains a commandline interface to the GNU TLS library, which can be used to set up secure connections from e.g. shell scripts, debugging connection issues or managing certificates. . Useful utilities include:  - TLS termination: gnutls-cli, gnutls-serv  - key and certificate management: certtool, ocsptool, p11tool  - credential management: srptool, psktool",
+      "OldVersion" : "3.8.9-3",
+      "Origin" : "Debian",
+      "Package" : "gnutls-bin",
+      "Priority" : "optional",
+      "Section" : "net",
+      "Title" : "GNU TLS library - commandline utilities",
+      "Version" : "3.8.9-3+deb13u1"
+   },
+   {
+      "Arch" : "amd64",
+      "Description" : "rsync is a fast and versatile file-copying tool which can copy locally and to/from a remote host. It offers many options to control its behavior, and its remote-update protocol can minimize network traffic to make transferring updates between machines fast and efficient. . It is widely used for backups and mirroring and as an improved copy command for everyday use. . This package provides both the rsync command line tool and optional daemon functionality.",
+      "OldVersion" : "3.4.1+ds1-5",
+      "Origin" : "Debian",
+      "Package" : "rsync",
+      "Priority" : "optional",
+      "Section" : "net",
+      "Title" : "fast, versatile, remote (and local) file-copying tool",
+      "Version" : "3.4.1+ds1-5+deb13u1"
+   },
+   {
+      "Arch" : "amd64",
+      "Description" : "GnuPG is GNU's tool for secure communication and data storage. It can be used to encrypt data and to create digital signatures. It includes an advanced key management facility and is compliant with the proposed OpenPGP Internet standard as described in RFC4880. . This package contains the gpgsm program. gpgsm is a tool to provide digital encryption and signing services on X.509 certificates and the CMS protocol. gpgsm includes complete certificate management.",
+      "OldVersion" : "2.4.7-21+b3",
+      "Origin" : "Debian",
+      "Package" : "gpgsm",
+      "Priority" : "optional",
+      "Section" : "utils",
+      "Title" : "GNU privacy guard - S/MIME version",
+      "Version" : "2.4.7-21+deb13u1+b1"
+   },
+   {
+      "Arch" : "amd64",
+      "Description" : "libunbound performs and validates DNS lookups; it can be used to convert hostnames to IP addresses and back and obtain other information from the DNS. Cryptographic validation of results is performed with DNSSEC.",
+      "OldVersion" : "1.22.0-2",
+      "Origin" : "Debian",
+      "Package" : "libunbound8",
+      "Priority" : "optional",
+      "Section" : "libs",
+      "Title" : "library implementing DNS resolution and validation",
+      "Version" : "1.22.0-2+deb13u1"
+   },
+   {
+      "Arch" : "amd64",
+      "Description" : "This package contains the Proxmox Backup client, which provides a simple command line tool to create and restore backups.",
+      "OldVersion" : "4.1.0-1",
+      "Origin" : "Proxmox",
+      "Package" : "proxmox-backup-client",
+      "Priority" : "optional",
+      "Section" : "admin",
+      "Title" : "Proxmox Backup Client tools",
+      "Version" : "4.1.1-1"
+   },
+   {
+      "Arch" : "all",
+      "Description" : "This package contains the API endpoints for the Software Defined Network of Proxmox VE.",
+      "OldVersion" : "1.2.3",
+      "Origin" : "Proxmox",
+      "Package" : "libpve-network-api-perl",
+      "Priority" : "optional",
+      "Section" : "perl",
+      "Title" : "API endpoints for Proxmox VE's SDN stack",
+      "Version" : "1.2.4"
+   },
+   {
+      "Arch" : "amd64",
+      "Description" : "GnuTLS is a portable library which implements the Transport Layer Security (TLS 1.0, 1.1, 1.2, 1.3) and Datagram Transport Layer Security (DTLS 1.0, 1.2) protocols. . GnuTLS features support for:  - certificate path validation, as well as DANE and trust on first use.  - the Online Certificate Status Protocol (OCSP).  - public key methods, including RSA and Elliptic curves, as well as password    and key authentication methods such as SRP and PSK protocols.  - all the strong encryption algorithms, including AES and Camellia.  - CPU-assisted cryptography with VIA padlock and AES-NI instruction sets.  - HSMs and cryptographic tokens, via PKCS #11. . This package contains the runtime library for DANE (DNS-based Authentication of Named Entities) support.",
+      "OldVersion" : "3.8.9-3",
+      "Origin" : "Debian",
+      "Package" : "libgnutls-dane0t64",
+      "Priority" : "optional",
+      "Section" : "libs",
+      "Title" : "GNU TLS library - DANE security support",
+      "Version" : "3.8.9-3+deb13u1"
+   },
+   {
+      "Arch" : "all",
+      "Description" : "This package contains the Proxmox Virtual Environment management tools.",
+      "OldVersion" : "9.1.2",
+      "Origin" : "Proxmox",
+      "Package" : "pve-manager",
+      "Priority" : "optional",
+      "Section" : "admin",
+      "Title" : "Proxmox Virtual Environment Management Tools",
+      "Version" : "9.1.4"
+   },
+   {
+      "Arch" : "all",
+      "Description" : "This package contains the base library used by other Proxmox VE components.",
+      "OldVersion" : "9.1.0",
+      "Origin" : "Proxmox",
+      "Package" : "libpve-common-perl",
+      "Priority" : "optional",
+      "Section" : "perl",
+      "Title" : "Proxmox VE base library",
+      "Version" : "9.1.4"
+   },
+   {
+      "Arch" : "all",
+      "Description" : "This package contains the perl side of the Software Defined Network implementation for Proxmox VE.",
+      "OldVersion" : "1.2.3",
+      "Origin" : "Proxmox",
+      "Package" : "libpve-network-perl",
+      "Priority" : "optional",
+      "Section" : "perl",
+      "Title" : "Proxmox VE's SDN (Software Defined Network) stack",
+      "Version" : "1.2.4"
+   },
+   {
+      "Arch" : "all",
+      "Description" : "This package contains the translation files for the GNU C library and utility programs.",
+      "OldVersion" : "2.41-12",
+      "Origin" : "Debian",
+      "Package" : "libc-l10n",
+      "Priority" : "standard",
+      "Section" : "localization",
+      "Title" : "GNU C Library: localization files",
+      "Version" : "2.41-12+deb13u1"
+   },
+   {
+      "Arch" : "amd64",
+      "Description" : "This package contains utility programs related to the GNU C Library. .  * getconf: query system configuration variables  * getent: get entries from administrative databases  * iconv, iconvconfig: convert between character encodings  * ldd, ldconfig: print/configure shared library dependencies  * locale, localedef: show/generate locale definitions  * tzselect, zdump, zic: select/dump/compile time zones",
+      "OldVersion" : "2.41-12",
+      "Origin" : "Debian",
+      "Package" : "libc-bin",
+      "Priority" : "required",
+      "Section" : "libs",
+      "Title" : "GNU C Library: Binaries",
+      "Version" : "2.41-12+deb13u1"
+   },
+   {
+      "Arch" : "amd64",
+      "Description" : "c-ares is a C library that performs DNS requests and name resolution asynchronously. . It is a fork of the library named \"ares\", with additional features:  * IPv6 support;  * extended cross-platform portability;  * 64-bit clean sources. . This package provides the shared libraries.",
+      "OldVersion" : "1.34.5-1",
+      "Origin" : "Debian",
+      "Package" : "libcares2",
+      "Priority" : "optional",
+      "Section" : "libs",
+      "Title" : "asynchronous name resolver",
+      "Version" : "1.34.5-1+deb13u1"
+   },
+   {
+      "Arch" : "amd64",
+      "Description" : "GnuTLS is a portable library which implements the Transport Layer Security (TLS 1.0, 1.1, 1.2, 1.3) and Datagram Transport Layer Security (DTLS 1.0, 1.2) protocols. . GnuTLS features support for:  - certificate path validation, as well as DANE and trust on first use.  - the Online Certificate Status Protocol (OCSP).  - public key methods, including RSA and Elliptic curves, as well as password    and key authentication methods such as SRP and PSK protocols.  - all the strong encryption algorithms, including AES and Camellia.  - CPU-assisted cryptography with VIA padlock and AES-NI instruction sets.  - HSMs and cryptographic tokens, via PKCS #11. . This package contains the main runtime library.",
+      "OldVersion" : "3.8.9-3",
+      "Origin" : "Debian",
+      "Package" : "libgnutls30t64",
+      "Priority" : "optional",
+      "Section" : "libs",
+      "Title" : "GNU TLS library - main runtime library",
+      "Version" : "3.8.9-3+deb13u1"
+   },
+   {
+      "Arch" : "amd64",
+      "Description" : "dirmngr is a server for managing and downloading OpenPGP and X.509 certificates, as well as updates and status signals related to those certificates.  For OpenPGP, this means pulling from the public HKP/HKPS keyservers, or from LDAP servers.  For X.509 this includes Certificate Revocation Lists (CRLs) and Online Certificate Status Protocol updates (OCSP).  It is capable of using Tor for network access. . dirmngr is used for network access by gpg, gpgsm, and dirmngr-client, among other tools.  Unless this package is installed, the parts of the GnuPG suite that try to interact with the network will fail.",
+      "OldVersion" : "2.4.7-21+b3",
+      "Origin" : "Debian",
+      "Package" : "dirmngr",
+      "Priority" : "optional",
+      "Section" : "utils",
+      "Title" : "GNU privacy guard - network certificate management service",
+      "Version" : "2.4.7-21+deb13u1+b1"
+   },
+   {
+      "Arch" : "amd64",
+      "Description" : "GnuPG is GNU's tool for secure communication and data storage. . This package contains several useful utilities for manipulating OpenPGP data and other related cryptographic elements.  It includes: .  * addgnupghome -- create .gnupg home directories  * applygnupgdefaults -- run gpgconf --apply-defaults for all users  * gpgparsemail -- parse an e-mail message into annotated format  * gpgsplit -- split a sequence of OpenPGP packets into files  * gpgtar -- encrypt or sign files in an archive  * kbxutil -- list, export, import Keybox data  * lspgpot -- convert PGP ownertrust values to GnuPG  * migrate-pubring-from-classic-gpg -- use only \"modern\" formats  * symcryptrun -- use simple symmetric encryption tool in GnuPG framework  * watchgnupg -- watch socket-based logs",
+      "OldVersion" : "2.4.7-21+b3",
+      "Origin" : "Debian",
+      "Package" : "gnupg-utils",
+      "Priority" : "extra",
+      "Section" : "utils",
+      "Title" : "GNU privacy guard - utility programs",
+      "Version" : "2.4.7-21+deb13u1+b1"
+   },
+   {
+      "Arch" : "amd64",
+      "Description" : "The logsave program will execute cmd_prog with the specified argument(s), and save a copy of its output to logfile.  If the containing directory for logfile does not exist, logsave will accumulate the output in memory until it can be written out.  A copy of the output will also be written to standard output.",
+      "OldVersion" : "1.47.2-3+b3",
+      "Origin" : "Debian",
+      "Package" : "logsave",
+      "Priority" : "optional",
+      "Section" : "admin",
+      "Title" : "save the output of a command in a log file",
+      "Version" : "1.47.2-3+b7"
+   },
+   {
+      "Arch" : "all",
+      "Description" : "GnuPG is GNU's tool for secure communication and data storage. It can be used to encrypt data and to create digital signatures. It includes an advanced key management facility and is compliant with the proposed OpenPGP Internet standard as described in RFC 4880. . This package contains the translation files for the use of GnuPG in non-English locales.",
+      "OldVersion" : "2.4.7-21",
+      "Origin" : "Debian",
+      "Package" : "gnupg-l10n",
+      "Priority" : "optional",
+      "Section" : "localization",
+      "Title" : "GNU privacy guard - localization files",
+      "Version" : "2.4.7-21+deb13u1"
+   },
+   {
+      "Arch" : "amd64",
+      "Description" : "GnuPG is GNU's tool for secure communication and data storage. It can be used to encrypt data and to create digital signatures. It includes an advanced key management facility and is compliant with the proposed OpenPGP Internet standard as described in RFC4880. . This package provides the GnuPG client for the Web Key Service protocol. . A Web Key Service is a service that allows users to upload keys per mail to be verified over https as described in https://tools.ietf.org/html/draft-koch-openpgp-webkey-service . For more information see: https://wiki.gnupg.org/WKS",
+      "OldVersion" : "2.4.7-21+b3",
+      "Origin" : "Debian",
+      "Package" : "gpg-wks-client",
+      "Priority" : "optional",
+      "Section" : "utils",
+      "Title" : "GNU privacy guard - Web Key Service client",
+      "Version" : "2.4.7-21+deb13u1+b1"
+   },
+   {
+      "Arch" : "amd64",
+      "Description" : "libpng is a library implementing an interface for reading and writing PNG (Portable Network Graphics) format files. . This package contains the runtime library files needed to run software using libpng.",
+      "OldVersion" : "1.6.48-1",
+      "Origin" : "Debian",
+      "Package" : "libpng16-16t64",
+      "Priority" : "optional",
+      "Section" : "libs",
+      "Title" : "PNG library - runtime (version 1.6)",
+      "Version" : "1.6.48-1+deb13u1"
+   },
+   {
+      "Arch" : "amd64",
+      "Description" : "GnuPG is GNU's tool for secure communication and data storage. . This package contains core utilities used by different tools in the suite offered by GnuPG.  It can be used to programmatically edit config files for tools in the GnuPG suite, to launch or terminate per-user daemons (if installed), etc.",
+      "OldVersion" : "2.4.7-21+b3",
+      "Origin" : "Debian",
+      "Package" : "gpgconf",
+      "Priority" : "optional",
+      "Section" : "utils",
+      "Title" : "GNU privacy guard - core configuration utilities",
+      "Version" : "2.4.7-21+deb13u1+b1"
+   },
+   {
+      "Arch" : "amd64",
+      "Description" : "libss provides a simple command-line interface parser which will accept input from the user, parse the command into an argv argument vector, and then dispatch it to a handler function. . It was originally inspired by the Multics SubSystem library.",
+      "OldVersion" : "1.47.2-3+b3",
+      "Origin" : "Debian",
+      "Package" : "libss2",
+      "Priority" : "optional",
+      "Section" : "libs",
+      "Title" : "command-line interface parsing library",
+      "Version" : "1.47.2-3+b7"
+   },
+   {
+      "Arch" : "amd64",
+      "Description" : "GLib is a library containing many useful C routines for things such as trees, hashes, lists, and strings.  It is a useful general-purpose C library used by projects such as GTK+, GIMP, and GNOME. . This package contains the shared libraries.",
+      "OldVersion" : "2.84.4-3~deb13u1",
+      "Origin" : "Debian",
+      "Package" : "libglib2.0-0t64",
+      "Priority" : "optional",
+      "Section" : "libs",
+      "Title" : "GLib library of C routines",
+      "Version" : "2.84.4-3~deb13u2"
+   },
+   {
+      "Arch" : "amd64",
+      "Description" : "The ext2, ext3 and ext4 file systems are successors of the original ext (\"extended\") file system. They are the main file system types used for hard disks on Debian and other Linux systems. . This package contains programs for creating, checking, and maintaining ext2/3/4-based file systems.  It also includes the \"badblocks\" program, which can be used to scan for bad blocks on a disk or other storage device.",
+      "OldVersion" : "1.47.2-3+b3",
+      "Origin" : "Debian",
+      "Package" : "e2fsprogs",
+      "Priority" : "important",
+      "Section" : "admin",
+      "Title" : "ext2/ext3/ext4 file system utilities",
+      "Version" : "1.47.2-3+b7"
+   }
+]
diff --git a/server/tests/api_responses/pve/apt_versions.json b/server/tests/api_responses/pve/apt_versions.json
new file mode 100644
index 00000000..005a62dc
--- /dev/null
+++ b/server/tests/api_responses/pve/apt_versions.json
@@ -0,0 +1,736 @@
+[
+   {
+      "Arch" : "all",
+      "CurrentState" : "Installed",
+      "Description" : "The Proxmox Virtual Environment is an easy to use Open Source virtualization platform for running Virtual Appliances and Virtual Machines. This is a meta package which will install everything needed.",
+      "OldVersion" : "9.1.0",
+      "Origin" : "Proxmox",
+      "Package" : "proxmox-ve",
+      "Priority" : "optional",
+      "RunningKernel" : "6.17.2-2-pve",
+      "Section" : "admin",
+      "Title" : "Proxmox Virtual Environment",
+      "Version" : "9.1.0"
+   },
+   {
+      "Arch" : "all",
+      "CurrentState" : "Installed",
+      "Description" : "This package contains the Proxmox Virtual Environment management tools.",
+      "ManagerVersion" : "9.1.2/9d436f37a0ac4172",
+      "OldVersion" : "9.1.2",
+      "Origin" : "Proxmox",
+      "Package" : "pve-manager",
+      "Priority" : "optional",
+      "Section" : "admin",
+      "Title" : "Proxmox Virtual Environment Management Tools",
+      "Version" : "9.1.4"
+   },
+   {
+      "Arch" : "all",
+      "CurrentState" : "Installed",
+      "Description" : "This package includes kernel-hooks for marking certain kernels as NeverAutoRemove and helpers for systemd-boot",
+      "OldVersion" : "9.0.4",
+      "Origin" : "Proxmox",
+      "Package" : "proxmox-kernel-helper",
+      "Priority" : "optional",
+      "Section" : "admin",
+      "Title" : "Function for various kernel maintenance tasks.",
+      "Version" : "9.0.4"
+   },
+   {
+      "Arch" : "amd64",
+      "CurrentState" : "Installed",
+      "Description" : "This package contains the linux kernel and initial ramdisk used for booting . This package contains the kernel image signed by the Proxmox Secure Boot CA.",
+      "OldVersion" : "6.17.2-2",
+      "Origin" : "Proxmox",
+      "Package" : "proxmox-kernel-6.17.2-2-pve-signed",
+      "Priority" : "optional",
+      "Section" : "admin",
+      "Title" : "Proxmox Kernel Image (signed)",
+      "Version" : "6.17.2-2"
+   },
+   {
+      "Arch" : "all",
+      "CurrentState" : "Installed",
+      "Description" : "This is a metapackage which will install the latest available proxmox kernel from the 6.17 series.",
+      "OldVersion" : "6.17.2-2",
+      "Origin" : "Proxmox",
+      "Package" : "proxmox-kernel-6.17",
+      "Priority" : "optional",
+      "Section" : "admin",
+      "Title" : "Latest Proxmox Kernel Image",
+      "Version" : "6.17.9-1"
+   },
+   {
+      "Arch" : "amd64",
+      "CurrentState" : "Installed",
+      "Description" : "This package contains the linux kernel and initial ramdisk used for booting . This package contains the kernel image signed by the Proxmox Secure Boot CA.",
+      "OldVersion" : "6.14.11-4",
+      "Origin" : "Proxmox",
+      "Package" : "proxmox-kernel-6.14.11-4-pve-signed",
+      "Priority" : "optional",
+      "Section" : "admin",
+      "Title" : "Proxmox Kernel Image (signed)",
+      "Version" : "6.14.11-4"
+   },
+   {
+      "Arch" : "all",
+      "CurrentState" : "Installed",
+      "Description" : "This is a metapackage which will install the latest available proxmox kernel from the 6.14 series.",
+      "OldVersion" : "6.14.11-4",
+      "Origin" : "Proxmox",
+      "Package" : "proxmox-kernel-6.14",
+      "Priority" : "optional",
+      "Section" : "admin",
+      "Title" : "Latest Proxmox Kernel Image",
+      "Version" : "6.14.11-5"
+   },
+   {
+      "Arch" : "amd64",
+      "CurrentState" : "Installed",
+      "Description" : "This package contains the linux kernel and initial ramdisk used for booting . This package contains the kernel image signed by the Proxmox Secure Boot CA.",
+      "OldVersion" : "6.8.12-13",
+      "Origin" : "unknown",
+      "Package" : "proxmox-kernel-6.8.12-13-pve-signed",
+      "Priority" : "optional",
+      "Section" : "admin",
+      "Title" : "Proxmox Kernel Image (signed)",
+      "Version" : "6.8.12-13"
+   },
+   {
+      "Arch" : "all",
+      "CurrentState" : "Installed",
+      "Description" : "This is a metapackage which will install the latest available proxmox kernel from the 6.8 series.",
+      "OldVersion" : "6.8.12-13",
+      "Origin" : "unknown",
+      "Package" : "proxmox-kernel-6.8",
+      "Priority" : "optional",
+      "Section" : "admin",
+      "Title" : "Latest Proxmox Kernel Image",
+      "Version" : "6.8.12-13"
+   },
+   {
+      "Arch" : "amd64",
+      "CurrentState" : "Installed",
+      "Description" : "This package contains the linux kernel and initial ramdisk used for booting . This package contains the kernel image signed by the Proxmox Secure Boot CA.",
+      "OldVersion" : "6.8.12-4",
+      "Origin" : "unknown",
+      "Package" : "proxmox-kernel-6.8.12-4-pve-signed",
+      "Priority" : "optional",
+      "Section" : "admin",
+      "Title" : "Proxmox Kernel Image (signed)",
+      "Version" : "6.8.12-4"
+   },
+   {
+      "Arch" : "amd64",
+      "CurrentState" : "Installed",
+      "Description" : "Ceph is a massively scalable, open-source, distributed storage system that runs on commodity hardware and delivers object, block and file system storage.  This is a FUSE-based client that allows one to mount a Ceph file system without root privileges. . Because the FUSE-based client has certain inherent performance limitations, it is recommended that the native Linux kernel client be used if possible.  If it is not practical to load a kernel module (insufficient privileges, older kernel, etc.), then the FUSE client will do.",
+      "OldVersion" : "19.2.3-pve1",
+      "Origin" : "Proxmox",
+      "Package" : "ceph-fuse",
+      "Priority" : "optional",
+      "Section" : "admin",
+      "Title" : "FUSE-based client for the Ceph distributed file system",
+      "Version" : "19.2.3-pve1"
+   },
+   {
+      "Arch" : "amd64",
+      "CurrentState" : "Installed",
+      "Description" : "The Corosync Cluster Engine is a Group Communication System with additional features for implementing high availability within applications. The project provides four C Application Programming Interface features: .  * A closed process group communication model with virtual synchrony    guarantees for creating replicated state machines.  * A simple availability manager that restarts the application process    when it has failed.  * A configuration and statistics in-memory database that provide the    ability to set, retrieve, and receive change notifications of    information.  * A quorum system that notifies applications when quorum is achieved    or lost. . This package contains the Corosync daemon and some administration tools.",
+      "OldVersion" : "3.1.9-pve2",
+      "Origin" : "Proxmox",
+      "Package" : "corosync",
+      "Priority" : "optional",
+      "Section" : "admin",
+      "Title" : "cluster engine daemon and utilities",
+      "Version" : "3.1.9-pve2"
+   },
+   {
+      "Arch" : "amd64",
+      "CurrentState" : "Installed",
+      "Description" : "criu contains the utilities to checkpoint and restore processes in userspace. . It can freeze a running container (or an individual application) and checkpoint its state to disk. The data saved can be used to restore the application and run it exactly as it was during the time of the freeze. Using this functionality, application or container live migration, snapshots, remote debugging, and many other things are now possible. . This package provides the criu and compel binaries, comprising the main functionality of criu. . Note that 'criu-ns' and 'crit' scripts come with the python3-pycriu package.",
+      "OldVersion" : "4.1.1-1",
+      "Origin" : "Debian",
+      "Package" : "criu",
+      "Priority" : "optional",
+      "Section" : "admin",
+      "Title" : "checkpoint and restore in userspace",
+      "Version" : "4.1.1-1"
+   },
+   {
+      "Arch" : "all",
+      "CurrentState" : "Installed",
+      "Description" : "The FRRouting suite uses a small Python tool to provide configuration reload functionality, particularly useful when the interactive configuration shell is not used. . Without this package installed, \"reload\" (as a systemd or init script invocation) will not work for the FRR daemons.",
+      "OldVersion" : "10.4.1-1+pve1",
+      "Origin" : "Proxmox",
+      "Package" : "frr-pythontools",
+      "Priority" : "optional",
+      "Section" : "net",
+      "Title" : "FRRouting suite - Python tools",
+      "Version" : "10.4.1-1+pve1"
+   },
+   {
+      "Arch" : "all",
+      "CurrentState" : "Installed",
+      "Description" : "ifupdown2 is ifupdown re-written in Python. It replaces ifupdown and provides the same user interface as ifupdown for network interface configuration. Like ifupdown, ifupdown2 is a high level tool to configure (or, respectively deconfigure) network interfaces based on interface definitions in /etc/network/interfaces. It is capable of detecting network interface dependencies and comes with several new features which are available as new command options to ifup/ifdown/ifquery commands. It also comes with a new command ifreload to reload interface configuration with minimum disruption. Most commands are also capable of input and output in JSON format. It is backward compatible with ifupdown /etc/network/interfaces format and supports newer simplified format. It also supports interface templates with python-mako for large scale interface deployments. See /usr/share/doc/ifupdown2/README.rst for details about ifupdown2. Examples are available under /usr/share/doc/ifupdown2/examples.",
+      "OldVersion" : "3.3.0-1+pmx11",
+      "Origin" : "Proxmox",
+      "Package" : "ifupdown2",
+      "Priority" : "optional",
+      "Section" : "admin",
+      "Title" : "Network Interface Management tool similar to ifupdown",
+      "Version" : "3.3.0-1+pmx11"
+   },
+   {
+      "Arch" : "all",
+      "CurrentState" : "Installed",
+      "Description" : "This package contains the KSM tuning daemon which controls whether ksm should ksm search duplicated pages.",
+      "OldVersion" : "1.5-1",
+      "Origin" : "Proxmox",
+      "Package" : "ksm-control-daemon",
+      "Priority" : "optional",
+      "Section" : "admin",
+      "Title" : "Kernel Samepage Merging (KSM) Tuning Daemon",
+      "Version" : "1.5-1"
+   },
+   {
+      "Arch" : "all",
+      "CurrentState" : "Installed",
+      "Description" : "Ext JS is a cross-browser JavaScript library for building rich internet applications.",
+      "OldVersion" : "7.0.0-5",
+      "Origin" : "Proxmox",
+      "Package" : "libjs-extjs",
+      "Priority" : "optional",
+      "Section" : "web",
+      "Title" : "cross-browser JavaScript library",
+      "Version" : "7.0.0-5"
+   },
+   {
+      "Arch" : "all",
+      "CurrentState" : "Installed",
+      "Description" : "Used in perl-based Proxmox project as common interface for DNS and HTTP ACME challenges.",
+      "OldVersion" : "1.7.0",
+      "Origin" : "Proxmox",
+      "Package" : "libproxmox-acme-perl",
+      "Priority" : "optional",
+      "Section" : "admin",
+      "Title" : "Proxmox ACME integration perl library",
+      "Version" : "1.7.0"
+   },
+   {
+      "Arch" : "amd64",
+      "CurrentState" : "Installed",
+      "Description" : "This library contains the library to access the Proxmox Backup server from within QEMU.",
+      "OldVersion" : "2.0.1",
+      "Origin" : "Proxmox",
+      "Package" : "libproxmox-backup-qemu0",
+      "Priority" : "optional",
+      "Section" : "admin",
+      "Title" : "Proxmox Backup Server client library for QEMU",
+      "Version" : "2.0.1"
+   },
+   {
+      "Arch" : "all",
+      "CurrentState" : "Installed",
+      "Description" : "Contains the perl side of modules provided by the libraries of both libpve-rs-perl and libpmg-rs-perl, loading whichever is available.",
+      "OldVersion" : "0.4.1",
+      "Origin" : "Proxmox",
+      "Package" : "libproxmox-rs-perl",
+      "Priority" : "optional",
+      "Section" : "perl",
+      "Title" : "PVE/PMG common perl parts for Rust perlmod bindings",
+      "Version" : "0.4.1"
+   },
+   {
+      "Arch" : "all",
+      "CurrentState" : "Installed",
+      "Description" : "This package contains the role based user management and access control function used by Proxmox VE.",
+      "OldVersion" : "9.0.4",
+      "Origin" : "Proxmox",
+      "Package" : "libpve-access-control",
+      "Priority" : "optional",
+      "Section" : "perl",
+      "Title" : "Proxmox VE access control library",
+      "Version" : "9.0.5"
+   },
+   {
+      "Arch" : "all",
+      "CurrentState" : "Installed",
+      "Description" : "This implements an API client for Proxmox VE in perl.",
+      "OldVersion" : "3.4.2",
+      "Origin" : "Proxmox",
+      "Package" : "libpve-apiclient-perl",
+      "Priority" : "optional",
+      "Section" : "perl",
+      "Title" : "Proxmox VE API client library",
+      "Version" : "3.4.2"
+   },
+   {
+      "Arch" : "all",
+      "CurrentState" : "Installed",
+      "Description" : "This package contains the API2 endpoints and CLI binary 'pvecm'.",
+      "OldVersion" : "9.0.7",
+      "Origin" : "Proxmox",
+      "Package" : "libpve-cluster-api-perl",
+      "Priority" : "optional",
+      "Section" : "admin",
+      "Title" : "Proxmox Virtual Environment cluster Perl API modules.",
+      "Version" : "9.0.7"
+   },
+   {
+      "Arch" : "all",
+      "CurrentState" : "Installed",
+      "Description" : "This package contains various cluster-related perl modules.",
+      "OldVersion" : "9.0.7",
+      "Origin" : "Proxmox",
+      "Package" : "libpve-cluster-perl",
+      "Priority" : "optional",
+      "Section" : "admin",
+      "Title" : "Proxmox Virtual Environment cluster Perl modules.",
+      "Version" : "9.0.7"
+   },
+   {
+      "Arch" : "all",
+      "CurrentState" : "Installed",
+      "Description" : "This package contains the base library used by other Proxmox VE components.",
+      "OldVersion" : "9.1.0",
+      "Origin" : "Proxmox",
+      "Package" : "libpve-common-perl",
+      "Priority" : "optional",
+      "Section" : "perl",
+      "Title" : "Proxmox VE base library",
+      "Version" : "9.1.7"
+   },
+   {
+      "Arch" : "all",
+      "CurrentState" : "Installed",
+      "Description" : "This package contains a common code base for Proxmox VE guests. It is mainly used by pve-container and qemu-server.",
+      "OldVersion" : "6.0.2",
+      "Origin" : "Proxmox",
+      "Package" : "libpve-guest-common-perl",
+      "Priority" : "optional",
+      "Section" : "perl",
+      "Title" : "Proxmox VE common guest-related modules",
+      "Version" : "6.0.2"
+   },
+   {
+      "Arch" : "all",
+      "CurrentState" : "Installed",
+      "Description" : "This package is used as base to implement the REST API in all perl based Proxmox projects.",
+      "OldVersion" : "6.0.5",
+      "Origin" : "Proxmox",
+      "Package" : "libpve-http-server-perl",
+      "Priority" : "optional",
+      "Section" : "perl",
+      "Title" : "Proxmox Asynchrounous HTTP Server Implementation",
+      "Version" : "6.0.5"
+   },
+   {
+      "Arch" : "all",
+      "CurrentState" : "Installed",
+      "Description" : "This package contains the perl side of the Software Defined Network implementation for Proxmox VE.",
+      "OldVersion" : "1.2.3",
+      "Origin" : "Proxmox",
+      "Package" : "libpve-network-perl",
+      "Priority" : "optional",
+      "Section" : "perl",
+      "Title" : "Proxmox VE's SDN (Software Defined Network) stack",
+      "Version" : "1.2.4"
+   },
+   {
+      "Arch" : "amd64",
+      "CurrentState" : "Installed",
+      "Description" : "This package contains the source for the Rust pve-rs crate, packaged by debcargo for use with cargo and dh-cargo.",
+      "OldVersion" : "0.11.3",
+      "Origin" : "Proxmox",
+      "Package" : "libpve-rs-perl",
+      "Priority" : "optional",
+      "Section" : "perl",
+      "Title" : "PVE parts which have been ported to Rust - Rust source code",
+      "Version" : "0.11.4"
+   },
+   {
+      "Arch" : "all",
+      "CurrentState" : "Installed",
+      "Description" : "This package contains the storage management library used by Proxmox VE.",
+      "OldVersion" : "9.1.0",
+      "Origin" : "Proxmox",
+      "Package" : "libpve-storage-perl",
+      "Priority" : "optional",
+      "Section" : "perl",
+      "Title" : "Proxmox VE storage management library",
+      "Version" : "9.1.0"
+   },
+   {
+      "Arch" : "amd64",
+      "CurrentState" : "Installed",
+      "Description" : "The Simple Protocol for Independent Computing Environments (SPICE) is a remote display system built for virtual environments which allows you to view a computing 'desktop' environment not only on the machine where it is running, but from anywhere on the Internet and from a wide variety of machine architectures. . This package contains the run-time libraries for any application that wishes to be a SPICE server.",
+      "OldVersion" : "0.15.2-1+b1",
+      "Origin" : "Debian",
+      "Package" : "libspice-server1",
+      "Priority" : "optional",
+      "Section" : "libs",
+      "Title" : "Implements the server side of the SPICE protocol",
+      "Version" : "0.15.2-1+b1"
+   },
+   {
+      "Arch" : "amd64",
+      "CurrentState" : "Installed",
+      "Description" : "This is LVM2, the rewrite of The Linux Logical Volume Manager.  LVM supports enterprise level volume management of disk and disk subsystems by grouping arbitrary disks into volume groups. The total capacity of volume groups can be allocated to logical volumes, which are accessed as regular block devices.",
+      "OldVersion" : "2.03.31-2+pmx1",
+      "Origin" : "Proxmox",
+      "Package" : "lvm2",
+      "Priority" : "optional",
+      "Section" : "admin",
+      "Title" : "Linux Logical Volume Manager",
+      "Version" : "2.03.31-2+pmx1"
+   },
+   {
+      "Arch" : "amd64",
+      "CurrentState" : "Installed",
+      "Description" : "Containers provides resource management through control groups and resource isolation through namespaces. The linux containers, lxc, aims to use these new functionalities to provide an userspace container object which provides full resource isolation and resource control for an applications or a system.",
+      "OldVersion" : "6.0.5-3",
+      "Origin" : "Proxmox",
+      "Package" : "lxc-pve",
+      "Priority" : "optional",
+      "Section" : "admin",
+      "Title" : "Linux containers userspace tools",
+      "Version" : "6.0.5-3"
+   },
+   {
+      "Arch" : "amd64",
+      "CurrentState" : "Installed",
+      "Description" : "LXCFS is a simple userspace filesystem designed to workaround some current limitations of the Linux kernel. The main driver for this work was the need to run systemd based containers as a regular unprivileged user while still allowing systemd inside the container to interact with cgroups.",
+      "OldVersion" : "6.0.4-pve1",
+      "Origin" : "Proxmox",
+      "Package" : "lxcfs",
+      "Priority" : "optional",
+      "Section" : "admin",
+      "Title" : "LXC userspace filesystem",
+      "Version" : "6.0.4-pve1"
+   },
+   {
+      "Arch" : "all",
+      "CurrentState" : "Installed",
+      "Description" : "VNC client using HTML5 (WebSockets, Canvas). This packet is use by Proxmox VE to provide HTML VM console.",
+      "OldVersion" : "1.6.0-3",
+      "Origin" : "Proxmox",
+      "Package" : "novnc-pve",
+      "Priority" : "optional",
+      "Section" : "web",
+      "Title" : "HTML5 VNC client",
+      "Version" : "1.6.0-3"
+   },
+   {
+      "Arch" : "amd64",
+      "CurrentState" : "Installed",
+      "Description" : "This package contains the Proxmox Backup client, which provides a simple command line tool to create and restore backups.",
+      "OldVersion" : "4.1.0-1",
+      "Origin" : "Proxmox",
+      "Package" : "proxmox-backup-client",
+      "Priority" : "optional",
+      "Section" : "admin",
+      "Title" : "Proxmox Backup Client tools",
+      "Version" : "4.1.1-1"
+   },
+   {
+      "Arch" : "amd64",
+      "CurrentState" : "Installed",
+      "Description" : "This package contains the Proxmox Backup single file restore client for restoring individual files and folders from both host/container and VM/block device backups. It includes a block device restore driver using QEMU.",
+      "OldVersion" : "4.1.0-1",
+      "Origin" : "Proxmox",
+      "Package" : "proxmox-backup-file-restore",
+      "Priority" : "optional",
+      "Section" : "admin",
+      "Title" : "Proxmox Backup single file restore tools for pxar and block device backups",
+      "Version" : "4.1.1-1"
+   },
+   {
+      "Arch" : "amd64",
+      "CurrentState" : "Installed",
+      "Description" : "Preconfigured images used as base for single file restore of Proxmox Backup Server snapshots. Not really useful on their own, so best used together with the proxmox-backup-file-restore package, which provide the actual tools.",
+      "OldVersion" : "1.0.0",
+      "Origin" : "Proxmox",
+      "Package" : "proxmox-backup-restore-image",
+      "Priority" : "optional",
+      "Section" : "admin",
+      "Title" : "Kernel/initramfs images for Proxmox Backup single-file restore.",
+      "Version" : "1.0.0"
+   },
+   {
+      "Arch" : "amd64",
+      "CurrentState" : "Installed",
+      "Description" : "This package contains a nftables-based implementation of the Proxmox VE Firewall",
+      "OldVersion" : "1.2.1",
+      "Origin" : "Proxmox",
+      "Package" : "proxmox-firewall",
+      "Priority" : "optional",
+      "Section" : "admin",
+      "Title" : "Proxmox's nftables-based firewall written in rust",
+      "Version" : "1.2.1"
+   },
+   {
+      "Arch" : "all",
+      "CurrentState" : "Installed",
+      "Description" : "This package includes kernel-hooks for marking certain kernels as NeverAutoRemove and helpers for systemd-boot",
+      "OldVersion" : "9.0.4",
+      "Origin" : "Proxmox",
+      "Package" : "proxmox-kernel-helper",
+      "Priority" : "optional",
+      "Section" : "admin",
+      "Title" : "Function for various kernel maintenance tasks.",
+      "Version" : "9.0.4"
+   },
+   {
+      "Arch" : "amd64",
+      "CurrentState" : "Installed",
+      "Description" : "This package contains the Proxmox mail forward helper. It forwards mails to the address(es) of the root@pam user in Proxmox Backup Server and Proxmox VE.",
+      "OldVersion" : "1.0.2",
+      "Origin" : "Proxmox",
+      "Package" : "proxmox-mail-forward",
+      "Priority" : "optional",
+      "Section" : "rust",
+      "Title" : "Proxmox mail forward helper",
+      "Version" : "1.0.2"
+   },
+   {
+      "Arch" : "amd64",
+      "CurrentState" : "Installed",
+      "Description" : "A minimal application to read the last X lines of the systemd journal or the last X lines before a cursor.",
+      "OldVersion" : "1.6",
+      "Origin" : "Proxmox",
+      "Package" : "proxmox-mini-journalreader",
+      "Priority" : "optional",
+      "Section" : "admin",
+      "Title" : "Minimal systemd Journal Reader",
+      "Version" : "1.6"
+   },
+   {
+      "Arch" : "amd64",
+      "CurrentState" : "Installed",
+      "Description" : "This package contains the proxmox-offline-mirror-helper binary for managing Proxmox offline APT repositories and subscription keys on Proxmox offline systems.",
+      "OldVersion" : "0.7.3",
+      "Origin" : "Proxmox",
+      "Package" : "proxmox-offline-mirror-helper",
+      "Priority" : "optional",
+      "Section" : "admin",
+      "Title" : "Proxmox offline repository mirror and subscription key manager helper",
+      "Version" : "0.7.3"
+   },
+   {
+      "Arch" : "all",
+      "CurrentState" : "Installed",
+      "Description" : "The base framework providing widgets, models, and general utilities for the ExtJS based Web UIs of various Proxmox projects",
+      "OldVersion" : "5.1.2",
+      "Origin" : "Proxmox",
+      "Package" : "proxmox-widget-toolkit",
+      "Priority" : "optional",
+      "Section" : "web",
+      "Title" : "Core Widgets and ExtJS Helper Classes for Proxmox Web UIs",
+      "Version" : "5.1.5"
+   },
+   {
+      "Arch" : "amd64",
+      "CurrentState" : "Installed",
+      "Description" : "This FUSE filesystem is using corosync and sqlite3 to provide a cluster-wide, consistent view of config and other files.",
+      "OldVersion" : "9.0.7",
+      "Origin" : "Proxmox",
+      "Package" : "pve-cluster",
+      "Priority" : "optional",
+      "Section" : "admin",
+      "Title" : "\"pmxcfs\" distributed cluster filesystem for Proxmox Virtual Environment.",
+      "Version" : "9.0.7"
+   },
+   {
+      "Arch" : "all",
+      "CurrentState" : "Installed",
+      "Description" : "Tool to manage Linux Containers on Proxmox VE.",
+      "OldVersion" : "6.0.18",
+      "Origin" : "Proxmox",
+      "Package" : "pve-container",
+      "Priority" : "optional",
+      "Section" : "perl",
+      "Title" : "Proxmox VE Container management tool",
+      "Version" : "6.0.18"
+   },
+   {
+      "Arch" : "all",
+      "CurrentState" : "Installed",
+      "Description" : "This package contains the Proxmox VE Documentation files.",
+      "OldVersion" : "9.1.1",
+      "Origin" : "Proxmox",
+      "Package" : "pve-docs",
+      "Priority" : "optional",
+      "Section" : "doc",
+      "Title" : "Proxmox VE Documentation",
+      "Version" : "9.1.2"
+   },
+   {
+      "Arch" : "all",
+      "CurrentState" : "Installed",
+      "Description" : "Open Virtual Machine Firmware is a build of EDK II for 64-bit, 32-bit x86 virtual machines. It includes full support for UEFI, including Secure Boot, allowing use of UEFI in place of a traditional BIOS in your VM. Meta package depending on OVMF and Legacy OVMF images to ease the upgrade transition.",
+      "OldVersion" : "4.2025.05-2",
+      "Origin" : "Proxmox",
+      "Package" : "pve-edk2-firmware",
+      "Priority" : "optional",
+      "Section" : "misc",
+      "Title" : "edk2 based UEFI firmware modules for virtual machines",
+      "Version" : "4.2025.05-2"
+   },
+   {
+      "Arch" : "amd64",
+      "CurrentState" : "Installed",
+      "Description" : "Provides a FUSE file system to access files on ESXi hosts and a python utility to query the list of VMs and datastores.",
+      "OldVersion" : "1.0.1",
+      "Origin" : "Proxmox",
+      "Package" : "pve-esxi-import-tools",
+      "Priority" : "optional",
+      "Section" : "admin",
+      "Title" : "Tools to allow importing VMs from ESXi hosts",
+      "Version" : "1.0.1"
+   },
+   {
+      "Arch" : "amd64",
+      "CurrentState" : "Installed",
+      "Description" : "This package contains the Proxmox VE Firewall.",
+      "OldVersion" : "6.0.4",
+      "Origin" : "Proxmox",
+      "Package" : "pve-firewall",
+      "Priority" : "optional",
+      "Section" : "admin",
+      "Title" : "Proxmox VE Firewall",
+      "Version" : "6.0.4"
+   },
+   {
+      "Arch" : "all",
+      "CurrentState" : "Installed",
+      "Description" : "This package contains the binary firmware for various modules used in the pve-kernel.",
+      "OldVersion" : "3.17-2",
+      "Origin" : "Proxmox",
+      "Package" : "pve-firmware",
+      "Priority" : "optional",
+      "Section" : "misc",
+      "Title" : "Binary firmware code for the pve-kernel",
+      "Version" : "3.17-2"
+   },
+   {
+      "Arch" : "amd64",
+      "CurrentState" : "Installed",
+      "Description" : "HA Manager Proxmox VE.",
+      "OldVersion" : "5.0.8",
+      "Origin" : "Proxmox",
+      "Package" : "pve-ha-manager",
+      "Priority" : "optional",
+      "Section" : "perl",
+      "Title" : "Proxmox VE HA Manager",
+      "Version" : "5.1.0"
+   },
+   {
+      "Arch" : "all",
+      "CurrentState" : "Installed",
+      "Description" : "This package provides the translations into all available languages.",
+      "OldVersion" : "3.6.5",
+      "Origin" : "Proxmox",
+      "Package" : "pve-i18n",
+      "Priority" : "optional",
+      "Section" : "perl",
+      "Title" : "Internationalization support for Proxmox VE",
+      "Version" : "3.6.6"
+   },
+   {
+      "Arch" : "amd64",
+      "CurrentState" : "Installed",
+      "Description" : "Using KVM, one can run multiple virtual PCs, each running unmodified Linux or Windows images. Each virtual machine has private virtualized hardware: a network card, disk, graphics adapter, etc.",
+      "OldVersion" : "10.1.2-4",
+      "Origin" : "Proxmox",
+      "Package" : "pve-qemu-kvm",
+      "Priority" : "optional",
+      "Section" : "admin",
+      "Title" : "Full virtualization on x86 hardware",
+      "Version" : "10.1.2-5"
+   },
+   {
+      "Arch" : "all",
+      "CurrentState" : "Installed",
+      "Description" : "Provides the xterm.js frontend for the terminal feature in Proxmox projects' web UI's, like for host administration or Proxmox VE containers shells.",
+      "OldVersion" : "5.5.0-3",
+      "Origin" : "Proxmox",
+      "Package" : "pve-xtermjs",
+      "Priority" : "optional",
+      "Section" : "admin",
+      "Title" : "HTML/TypeScript based fully-featured terminal for Proxmox projects",
+      "Version" : "5.5.0-3"
+   },
+   {
+      "Arch" : "amd64",
+      "CurrentState" : "Installed",
+      "Description" : "This package contains the Qemu Server tools used by Proxmox VE",
+      "OldVersion" : "9.1.1",
+      "Origin" : "Proxmox",
+      "Package" : "qemu-server",
+      "Priority" : "optional",
+      "Section" : "admin",
+      "Title" : "Qemu Server Tools",
+      "Version" : "9.1.4"
+   },
+   {
+      "Arch" : "amd64",
+      "CurrentState" : "Installed",
+      "Description" : "The smartmontools package contains two utility programs (smartctl and smartd) to control and monitor storage systems using the Self-Monitoring, Analysis and Reporting Technology System (S.M.A.R.T.) built into most modern ATA and SCSI hard disks. It is derived from the smartsuite package, and includes support for ATA/ATAPI-5 disks. It should run on any modern Linux system.",
+      "OldVersion" : "7.4-pve1",
+      "Origin" : "Proxmox",
+      "Package" : "smartmontools",
+      "Priority" : "optional",
+      "Section" : "utils",
+      "Title" : "control and monitor storage systems using S.M.A.R.T.",
+      "Version" : "7.4-pve1"
+   },
+   {
+      "Arch" : "amd64",
+      "CurrentState" : "Installed",
+      "Description" : "With spiceterm you can start commands and export its standard input and output to any SPICE client (simulating a xterm Terminal).",
+      "OldVersion" : "3.4.1",
+      "Origin" : "Proxmox",
+      "Package" : "spiceterm",
+      "Priority" : "optional",
+      "Section" : "admin",
+      "Title" : "SPICE Terminal Emulator",
+      "Version" : "3.4.1"
+   },
+   {
+      "Arch" : "amd64",
+      "CurrentState" : "Installed",
+      "Description" : "The swtpm package provides TPM emulators that listen for TPM commands on sockets, character devices, or CUSE devices.",
+      "OldVersion" : "0.8.0+pve3",
+      "Origin" : "Proxmox",
+      "Package" : "swtpm",
+      "Priority" : "optional",
+      "Section" : "misc",
+      "Title" : "Libtpms-based TPM emulator",
+      "Version" : "0.8.0+pve3"
+   },
+   {
+      "Arch" : "amd64",
+      "CurrentState" : "Installed",
+      "Description" : "With vncterm you can start commands and export its standard input and output to any VNC client (simulating a xterm Terminal).",
+      "OldVersion" : "1.9.1",
+      "Origin" : "Proxmox",
+      "Package" : "vncterm",
+      "Priority" : "optional",
+      "Section" : "x11",
+      "Title" : "VNC Terminal Emulator",
+      "Version" : "1.9.1"
+   },
+   {
+      "Arch" : "amd64",
+      "CurrentState" : "Installed",
+      "Description" : "OpenZFS is a storage platform that encompasses the functionality of traditional filesystems and volume managers. It supports data checksums, compression, encryption, snapshots, and more. . This package provides the zfs and zpool commands to create and administer OpenZFS filesystems.",
+      "OldVersion" : "2.3.4-pve1",
+      "Origin" : "Proxmox",
+      "Package" : "zfsutils-linux",
+      "Priority" : "optional",
+      "Section" : "contrib/admin",
+      "Title" : "command-line tools to manage OpenZFS filesystems",
+      "Version" : "2.4.0-pve1"
+   }
+]
diff --git a/server/tests/api_responses/pve/node_subscription.json b/server/tests/api_responses/pve/node_subscription.json
new file mode 100644
index 00000000..851bca39
--- /dev/null
+++ b/server/tests/api_responses/pve/node_subscription.json
@@ -0,0 +1,6 @@
+{
+   "message" : "There is no subscription key",
+   "serverid" : "DE0E8A66368D921A763F2B6AC6AA43DD",
+   "status" : "notfound",
+   "url" : "https://www.proxmox.com/en/proxmox-virtual-environment/pricing"
+}
-- 
2.47.3





  parent reply	other threads:[~2026-01-29 13:44 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-01-29 13:44 [RFC datacenter-manager/proxmox 0/7] inject application context via rpcenv for easier integration testing Lukas Wagner
2026-01-29 13:44 ` [RFC proxmox 1/1] router: rpc environment: allow to provide a application-specific context handle via rpcenv Lukas Wagner
2026-01-29 13:44 ` [RFC datacenter-manager 1/6] connection: store client factory in an Arc and add public getter Lukas Wagner
2026-01-29 13:44 ` [RFC datacenter-manager 2/6] parallel fetcher: allow to use custom client factory Lukas Wagner
2026-01-29 13:44 ` [RFC datacenter-manager 3/6] introduce PdmApplication struct and inject it during API server startup Lukas Wagner
2026-01-29 13:44 ` [RFC datacenter-manager 4/6] remote updates: use PdmApplication object to derive paths, permissions and client factory Lukas Wagner
2026-01-29 13:44 ` Lukas Wagner [this message]
2026-01-29 13:44 ` [RFC datacenter-manager 6/6] tests: add basic integration tests for the remote updates API Lukas Wagner
2026-02-03 11:02 ` [RFC datacenter-manager/proxmox 0/7] inject application context via rpcenv for easier integration testing Robert Obkircher

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20260129134418.307552-7-l.wagner@proxmox.com \
    --to=l.wagner@proxmox.com \
    --cc=pdm-devel@lists.proxmox.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
Service provided by Proxmox Server Solutions GmbH | Privacy | Legal