From dc7db9bcc41b7422c178b9d2c8e49b60e65c933b Mon Sep 17 00:00:00 2001 From: Fernando Rodrigues Date: Thu, 26 Sep 2024 16:01:52 +0000 Subject: [PATCH] treewide: rename Xen to Xen Project Xen is a trademark of the Cloud Software Group; we're not packaging Xen(Server), we're packaging the Xen Project Hypervisor, which is open source and owned by the Linux Foundation. This is based on advice from Kelly Choi, the Xen Project Community Manager, who has assisted us in the branding aspects of pacakaging. Signed-off-by: Fernando Rodrigues --- .../manual/release-notes/rl-2411.section.md | 6 ++--- .../virtualisation/xe-guest-utilities.nix | 2 +- .../virtualisation/xen-boot-builder.sh | 4 ++-- nixos/modules/virtualisation/xen-dom0.nix | 8 +++---- .../applications/virtualization/xen/README.md | 6 ++--- .../virtualization/xen/generic/default.nix | 16 +++++++------- .../virtualization/xen/packages.nix | 22 +++++++++---------- 7 files changed, 32 insertions(+), 32 deletions(-) diff --git a/nixos/doc/manual/release-notes/rl-2411.section.md b/nixos/doc/manual/release-notes/rl-2411.section.md index 48dc9b31b68583a..7b176d1cc66c5b6 100644 --- a/nixos/doc/manual/release-notes/rl-2411.section.md +++ b/nixos/doc/manual/release-notes/rl-2411.section.md @@ -49,13 +49,13 @@ - Support for mounting filesystems from block devices protected with [dm-verity](https://docs.kernel.org/admin-guide/device-mapper/verity.html) was added through the `boot.initrd.systemd.dmVerity` option. -- The [Xen Hypervisor](https://xenproject.org) is once again available as a virtualisation option under [`virtualisation.xen`](#opt-virtualisation.xen.enable). +- The [Xen Project Hypervisor](https://xenproject.org) is once again available as a virtualisation option under [`virtualisation.xen`](#opt-virtualisation.xen.enable). - This release includes Xen [4.17.5](https://wiki.xenproject.org/wiki/Xen_Project_4.17_Release_Notes), [4.18.3](https://wiki.xenproject.org/wiki/Xen_Project_4.18_Release_Notes) and [4.19.0](https://wiki.xenproject.org/wiki/Xen_Project_4.19_Release_Notes), as well as support for booting the hypervisor on EFI systems. ::: {.warning} - Booting into Xen through a legacy BIOS bootloader or with the legacy script-based Stage 1 initrd have been **deprecated**. Only EFI booting and the new systemd-based Stage 1 initrd are supported. + Booting into the Xen Project Hypervisor through a legacy BIOS bootloader or with the legacy script-based Stage 1 initrd have been **deprecated**. Only EFI booting and the new systemd-based Stage 1 initrd are supported. ::: - There are two flavours of Xen available by default: `xen`, which includes all built-in components, and `xen-slim`, which replaces the built-in components with their Nixpkgs equivalents. - - The `qemu-xen-traditional` component has been deprecated by upstream Xen, and is no longer available in any of the Xen packages. + - The `qemu-xen-traditional` component has been deprecated by the upstream Xen Project, and is no longer available in any of the Xen Project Hypervisor packages. - The OCaml-based Xen Store can now be configured using [`virtualisation.xen.store.settings`](#opt-virtualisation.xen.store.settings). - The `virtualisation.xen.bridge` options have been deprecated in this release cycle. Users who need network bridges are encouraged to set up their own networking configurations. diff --git a/nixos/modules/virtualisation/xe-guest-utilities.nix b/nixos/modules/virtualisation/xe-guest-utilities.nix index 9bc68c0a3d7d6f2..14dd25e878cf19e 100644 --- a/nixos/modules/virtualisation/xe-guest-utilities.nix +++ b/nixos/modules/virtualisation/xe-guest-utilities.nix @@ -4,7 +4,7 @@ let in { options = { services.xe-guest-utilities = { - enable = lib.mkEnableOption "the Xen guest utilities daemon"; + enable = lib.mkEnableOption "the XenServer guest utilities daemon"; }; }; config = lib.mkIf cfg.enable { diff --git a/nixos/modules/virtualisation/xen-boot-builder.sh b/nixos/modules/virtualisation/xen-boot-builder.sh index 13e1a4e202432f1..1b7c1470f6eb4a2 100755 --- a/nixos/modules/virtualisation/xen-boot-builder.sh +++ b/nixos/modules/virtualisation/xen-boot-builder.sh @@ -5,7 +5,7 @@ [[ $# -ne 1 ]] && echo -e "\e[1;31merror:\e[0m xenBootBuilder must be called with exactly one verbosity argument. See the \e[1;34mvirtualisation.xen.efi.bootBuilderVerbosity\e[0m option." && exit 1 case "$1" in "quiet") true ;; - "default" | "info") echo -n "Installing Xen Hypervisor boot entries..." ;; + "default" | "info") echo -n "Installing Xen Project Hypervisor boot entries..." ;; "debug") echo -e "\e[1;34mxenBootBuilder:\e[0m called with the '$1' flag" ;; *) echo -e "\e[1;31merror:\e[0m xenBootBuilder was called with an invalid argument. See the \e[1;34mvirtualisation.xen.efi.bootBuilderVerbosity\e[0m option." @@ -150,7 +150,7 @@ else esac if [ "$1" = "info" ]; then if [[ ${#preGenerations[@]} == "${#postGenerations[@]}" ]]; then - echo -e "\e[1;33mNo Change:\e[0m Xen Hypervisor boot entries were refreshed, but their contents are identical." + echo -e "\e[1;33mNo Change:\e[0m Xen Project Hypervisor boot entries were refreshed, but their contents are identical." else echo -e "\e[1;32mSuccess:\e[0m Changed the following boot entries:" # We briefly unset errexit and pipefail here, as GNU diff has no option to not fail when files differ. diff --git a/nixos/modules/virtualisation/xen-dom0.nix b/nixos/modules/virtualisation/xen-dom0.nix index 53e0a976858b771..d8f83f96b82c5b2 100644 --- a/nixos/modules/virtualisation/xen-dom0.nix +++ b/nixos/modules/virtualisation/xen-dom0.nix @@ -1,4 +1,4 @@ -# Xen hypervisor (Dom0) support. +# Xen Project Hypervisor (Dom0) support. { config, @@ -123,7 +123,7 @@ in options.virtualisation.xen = { - enable = lib.options.mkEnableOption "the Xen Hypervisor, a virtualisation technology defined as a *type-1 hypervisor*, which allows multiple virtual machines, known as *domains*, to run concurrently on the physical machine. NixOS runs as the privileged *Domain 0*. This option requires a reboot into a Xen kernel to take effect"; + enable = lib.options.mkEnableOption "the Xen Project Hypervisor, a virtualisation technology defined as a *type-1 hypervisor*, which allows multiple virtual machines, known as *domains*, to run concurrently on the physical machine. NixOS runs as the privileged *Domain 0*. This option requires a reboot into a Xen kernel to take effect"; debug = lib.options.mkEnableOption "Xen debug features for Domain 0. This option enables some hidden debugging tests and features, and should not be used in production"; @@ -141,7 +141,7 @@ in defaultText = lib.options.literalExpression "pkgs.xen"; example = lib.options.literalExpression "pkgs.xen-slim"; description = '' - The package used for Xen Hypervisor. + The package used for Xen Project Hypervisor. ''; relatedPackages = [ "xen" @@ -207,7 +207,7 @@ in - `quiet` supresses all messages. - - `default` adds a simple "Installing Xen Hypervisor boot entries...done." message to the script. + - `default` adds a simple "Installing Xen Project Hypervisor boot entries...done." message to the script. - `info` is the same as `default`, but it also prints a diff with information on which generations were altered. - This option adds two extra dependencies to the script: `diffutils` and `bat`. diff --git a/pkgs/applications/virtualization/xen/README.md b/pkgs/applications/virtualization/xen/README.md index 02d1ab72270738d..07087e2fee23014 100644 --- a/pkgs/applications/virtualization/xen/README.md +++ b/pkgs/applications/virtualization/xen/README.md @@ -15,11 +15,11 @@

-# Xen Hypervisor Xen Fu Panda +# Xen Project Hypervisor Xen Fu Panda -This directory includes the build recipes for the [Xen Hypervisor](https://xenproject.org/). +This directory includes the build recipes for the [Xen Project Hypervisor](https://xenproject.org/). -Some other notable packages that compose the Xen Ecosystem include: +Some other notable packages that compose the Xen Project Ecosystem include: - `ocamlPackages.xenstore`: Mirage's `oxenstore` implementation. - `ocamlPackages.vchan`: Mirage's `xen-vchan` implementation. diff --git a/pkgs/applications/virtualization/xen/generic/default.nix b/pkgs/applications/virtualization/xen/generic/default.nix index 461d06625ad6e5c..250e5a41bfc1fd9 100644 --- a/pkgs/applications/virtualization/xen/generic/default.nix +++ b/pkgs/applications/virtualization/xen/generic/default.nix @@ -647,7 +647,7 @@ stdenv.mkDerivation (finalAttrs: { # Short description for Xen. description = - "Xen Hypervisor" + "Xen Project Hypervisor" # The "and related components" addition is automatically hidden if said components aren't being built. + lib.strings.optionalString (prefetchedSources != { }) " and related components" # To alter the description inside the paranthesis, edit ./packages.nix. @@ -681,18 +681,18 @@ stdenv.mkDerivation (finalAttrs: { # Originally, this was a call for the complicated withPrefetchedSources. Since there aren't # that many optional components, we just use lib.strings.optionalString, because it's simpler. # Optional components that aren't being built are automatically hidden. - + lib.strings.optionalString withEFI "\n* `xen.efi`: Xen's [EFI binary](https://xenbits.xenproject.org/docs/${branch}-testing/misc/efi.html), available on the `boot` output of this package." + + lib.strings.optionalString withEFI "\n* `xen.efi`: The Xen Project's [EFI binary](https://xenbits.xenproject.org/docs/${branch}-testing/misc/efi.html), available on the `boot` output of this package." + lib.strings.optionalString withFlask "\n* `xsm-flask`: The [FLASK Xen Security Module](https://wiki.xenproject.org/wiki/Xen_Security_Modules_:_XSM-FLASK). The `xenpolicy-${version}` file is available on the `boot` output of this package." - + lib.strings.optionalString withInternalQEMU "\n* `qemu-xen`: Xen's mirror of [QEMU](https://www.qemu.org/)." - + lib.strings.optionalString withInternalSeaBIOS "\n* `seabios-xen`: Xen's mirror of [SeaBIOS](https://www.seabios.org/SeaBIOS)." - + lib.strings.optionalString withInternalOVMF "\n* `ovmf-xen`: Xen's mirror of [OVMF](https://github.com/tianocore/tianocore.github.io/wiki/OVMF)." - + lib.strings.optionalString withInternalIPXE "\n* `ipxe-xen`: Xen's pinned version of [iPXE](https://ipxe.org/)." + + lib.strings.optionalString withInternalQEMU "\n* `qemu-xen`: The Xen Project's mirror of [QEMU](https://www.qemu.org/)." + + lib.strings.optionalString withInternalSeaBIOS "\n* `seabios-xen`: The Xen Project's mirror of [SeaBIOS](https://www.seabios.org/SeaBIOS)." + + lib.strings.optionalString withInternalOVMF "\n* `ovmf-xen`: The Xen Project's mirror of [OVMF](https://github.com/tianocore/tianocore.github.io/wiki/OVMF)." + + lib.strings.optionalString withInternalIPXE "\n* `ipxe-xen`: The Xen Project's pinned version of [iPXE](https://ipxe.org/)." ) # Finally, we write a notice explaining which vulnerabilities this Xen is NOT vulnerable to. # This will hopefully give users the peace of mind that their Xen is secure, without needing # to search the source code for the XSA patches. + lib.strings.optionalString (writeAdvisoryDescription != [ ]) ( - "\n\nThis Xen (${version}) has been patched against the following known security vulnerabilities:\n" + "\n\nThis Xen Project Hypervisor (${version}) has been patched against the following known security vulnerabilities:\n" + lib.strings.removeSuffix "\n" (lib.strings.concatLines writeAdvisoryDescription) ); @@ -712,8 +712,8 @@ stdenv.mkDerivation (finalAttrs: { ]; # This automatically removes maintainers from EOL versions of Xen, so we aren't bothered about versions we don't explictly support. - knownVulnerabilities = lib.lists.optional (lib.strings.versionOlder version minSupportedVersion) "Xen ${version} is no longer supported by the Xen Security Team. See https://xenbits.xenproject.org/docs/unstable/support-matrix.html"; maintainers = lib.lists.optionals (lib.strings.versionAtLeast version minSupportedVersion) lib.teams.xen.members; + knownVulnerabilities = lib.lists.optional (lib.strings.versionOlder version minSupportedVersion) "The Xen Project Hypervisor version ${version} is no longer supported by the Xen Project Security Team. See https://xenbits.xenproject.org/docs/unstable/support-matrix.html"; mainProgram = "xl"; diff --git a/pkgs/applications/virtualization/xen/packages.nix b/pkgs/applications/virtualization/xen/packages.nix index 77c9cbf099a3cc8..7402edc8bc70f1a 100644 --- a/pkgs/applications/virtualization/xen/packages.nix +++ b/pkgs/applications/virtualization/xen/packages.nix @@ -2,13 +2,13 @@ let standard = { meta = { - description = "Standard Xen"; + description = "Standard"; longDescription = '' - Standard version of Xen. Uses forks of QEMU, SeaBIOS, OVMF and iPXE provided - by the Xen Project. This provides the vanilla Xen experince, but wastes space - and build time. A typical NixOS setup that runs lots of VMs will usually need - to build two different versions of QEMU when using this Xen derivation (one - fork and upstream). + Standard version of the Xen Project Hypervisor. Uses forks of QEMU, SeaBIOS, + OVMF and iPXE provided by the Xen Project. This provides the vanilla Xen + experience, but wastes space and build time. A typical NixOS setup that runs + lots of VMs will usually need to build two different versions of QEMU when using + this Xen derivation (one fork and upstream). ''; }; }; @@ -16,11 +16,11 @@ let meta = { description = "Without Internal Components"; longDescription = '' - Slimmed-down version of Xen that reuses nixpkgs packages as much as possible. - Instead of using the Xen forks for various internal components, this version uses - `seabios`, `ovmf` and `ipxe` from nixpkgs. These components may ocasionally get - out of sync with the hypervisor itself, but this builds faster and uses less space - than the default derivation. + Slimmed-down version of the Xen Project Hypervisor that reuses nixpkgs packages + as much as possible. Instead of using the Xen Project forks for various internal + components, this version uses `seabios`, `ovmf` and `ipxe` from Nixpkgs. These + components may ocasionally get out of sync with the hypervisor itself, but this + builds faster and uses less space than the default derivation. ''; }; };