teams: create the Xen Project Team and rename instances of `Xen` to `Xen Project`. (#344314)

Emily 818089ba 813868bc

Changed files
+65 -46
maintainers
nixos
doc
manual
release-notes
modules
pkgs
applications
virtualization
by-name
xe
xen-guest-agent
xt
development
ocaml-modules
vchan
xenstore
xenstore_transport
+12
maintainers/maintainer-list.nix
···
githubId = 287769;
name = "Sergii Paryzhskyi";
};
+
hehongbo = {
+
name = "Hongbo";
+
github = "hehongbo";
+
githubId = 665472;
+
matrix = "@hehongbo:matrix.org";
+
};
heijligen = {
email = "src@posteo.de";
github = "heijligen";
···
github = "Rampoina";
githubId = 5653911;
name = "Rampoina";
+
};
+
rane = {
+
email = "rane+nix@junkyard.systems";
+
github = "digitalrane";
+
githubId = 1829286;
+
name = "Rane";
ranfdev = {
email = "ranfdev@gmail.com";
+13
maintainers/team-list.nix
···
shortName = "WDZ GmbH";
};
+
xen = {
+
members = [
+
hehongbo
+
lach
+
rane
+
sigmasquadron
+
];
+
scope = "Maintain the Xen Project Hypervisor and the related tooling ecosystem.";
+
shortName = "Xen Project Hypervisor";
+
enableFeatureFreezePing = true;
+
githubTeams = [ "xen-project" ];
+
};
+
xfce = {
members = [
bobby285271
+3 -3
nixos/doc/manual/release-notes/rl-2411.section.md
···
- 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.
+1 -1
nixos/modules/virtualisation/xe-guest-utilities.nix
···
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 {
+2 -2
nixos/modules/virtualisation/xen-boot-builder.sh
···
[[ $# -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."
···
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.
+5 -5
nixos/modules/virtualisation/xen-dom0.nix
···
-
# Xen hypervisor (Dom0) support.
+
# Xen Project Hypervisor (Dom0) support.
{
config,
···
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";
···
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"
···
- `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`.
···
};
};
};
-
meta.maintainers = with lib.maintainers; [ sigmasquadron ];
+
meta.maintainers = lib.teams.xen.members;
}
+3 -3
pkgs/applications/virtualization/xen/README.md
···
</a>
</p>
-
# Xen Hypervisor <a href="https://xenproject.org/"><img src="https://downloads.xenproject.org/Branding/Mascots/Xen-Fu-Panda-2000px.png" width="48px" align="top" alt="Xen Fu Panda"></a>
+
# Xen Project Hypervisor <a href="https://xenproject.org/"><img src="https://downloads.xenproject.org/Branding/Mascots/Xen-Fu-Panda-2000px.png" width="48px" align="top" alt="Xen Fu Panda"></a>
-
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.
+9 -11
pkgs/applications/virtualization/xen/generic/default.nix
···
# 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.
···
# 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)
);
···
];
# This automatically removes maintainers from EOL versions of Xen, so we aren't bothered about versions we don't explictly support.
-
maintainers = lib.lists.optionals (lib.strings.versionAtLeast version minSupportedVersion) (
-
with lib.maintainers; [ sigmasquadron ]
-
);
-
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";
+11 -11
pkgs/applications/virtualization/xen/packages.nix
···
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).
'';
};
};
···
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.
'';
};
};
+2 -4
pkgs/by-name/xe/xen-guest-agent/package.nix
···
homepage = "https://gitlab.com/xen-project/xen-guest-agent";
license = lib.licenses.agpl3Only;
platforms = lib.platforms.unix;
-
maintainers = with lib.maintainers; [
-
matdibu
-
sigmasquadron
-
];
+
maintainers = lib.teams.xen.members;
+
mainProgram = "xen-guest-agent";
};
}
+1 -1
pkgs/by-name/xt/xtf/package.nix
···
description = "Xen Test Framework and Suite for creating microkernel-based tests";
homepage = "https://xenbits.xenproject.org/docs/xtf/index.html";
license = lib.licenses.bsd2;
-
maintainers = with lib.maintainers; [ sigmasquadron ];
+
maintainers = lib.teams.xen.members;
mainProgram = "xtf-runner";
platforms = lib.lists.intersectLists lib.platforms.linux lib.platforms.x86_64;
};
+1 -1
pkgs/development/ocaml-modules/vchan/default.nix
···
description = "Xen Vchan implementation";
homepage = "https://github.com/mirage/ocaml-vchan";
license = licenses.isc;
-
maintainers = [ maintainers.sternenseemann ];
+
maintainers = teams.xen.members ++ [ maintainers.sternenseemann ];
};
}
+1 -4
pkgs/development/ocaml-modules/xenstore/default.nix
···
meta = with lib; {
description = "Xenstore protocol in pure OCaml";
license = licenses.lgpl21Only;
-
maintainers = with maintainers; [
-
sternenseemann
-
sigmasquadron
-
];
+
maintainers = teams.xen.members ++ [ maintainers.sternenseemann ];
homepage = "https://github.com/mirage/ocaml-xenstore";
};
}
+1
pkgs/development/ocaml-modules/xenstore_transport/default.nix
···
description = "Low-level libraries for connecting to a xenstore service on a xen host";
license = licenses.lgpl21Only;
homepage = "https://github.com/xapi-project/ocaml-xenstore-clients";
+
maintainers = teams.xen.members;
};
}