GroupsΒΆ
OS familiesΒΆ
Each platform is assigned to a group of non-overlpaping families:
--- title: <code>extra_platforms.NON_OVERLAPPING_GROUPS</code> - Non-overlapping groups. --- flowchart subgraph "<code>extra_platforms.ANY_WINDOWS</code><br/>πͺ <em>Any Windows</em>" any_windows_windows(<code>windows</code><br/>πͺ <em>Windows</em>) end subgraph "<code>extra_platforms.BSD</code><br/>π ±οΈ+ <em>Any BSD</em>" bsd_freebsd(<code>freebsd</code><br/>π <em>FreeBSD</em>) bsd_macos(<code>macos</code><br/>π <em>macOS</em>) bsd_midnightbsd(<code>midnightbsd</code><br/>π <em>MidnightBSD</em>) bsd_netbsd(<code>netbsd</code><br/>π© <em>NetBSD</em>) bsd_openbsd(<code>openbsd</code><br/>π‘ <em>OpenBSD</em>) bsd_sunos(<code>sunos</code><br/>βοΈ <em>SunOS</em>) end subgraph "<code>extra_platforms.LINUX</code><br/>π§ <em>Any Linux distribution</em>" linux_altlinux(<code>altlinux</code><br/>π§ <em>ALT Linux</em>) linux_amzn(<code>amzn</code><br/>π <em>Amazon Linux</em>) linux_android(<code>android</code><br/>π€ <em>Android</em>) linux_arch(<code>arch</code><br/>ποΈ <em>Arch Linux</em>) linux_buildroot(<code>buildroot</code><br/>βοΈ <em>Buildroot</em>) linux_centos(<code>centos</code><br/>π <em>CentOS</em>) linux_cloudlinux(<code>cloudlinux</code><br/>κ© <em>CloudLinux OS</em>) linux_debian(<code>debian</code><br/>π <em>Debian</em>) linux_exherbo(<code>exherbo</code><br/>π½ <em>Exherbo Linux</em>) linux_fedora(<code>fedora</code><br/>π© <em>Fedora</em>) linux_gentoo(<code>gentoo</code><br/>ποΈ <em>Gentoo Linux</em>) linux_guix(<code>guix</code><br/>π <em>Guix System</em>) linux_ibm_powerkvm(<code>ibm_powerkvm</code><br/>π€Ή <em>IBM PowerKVM</em>) linux_kvmibm(<code>kvmibm</code><br/>π€Ή <em>KVM for IBM z Systems</em>) linux_linuxmint(<code>linuxmint</code><br/>πΏ <em>Linux Mint</em>) linux_mageia(<code>mageia</code><br/>β₯ <em>Mageia</em>) linux_mandriva(<code>mandriva</code><br/>π« <em>Mandriva Linux</em>) linux_nobara(<code>nobara</code><br/>ο <em>Nobara</em>) linux_opensuse(<code>opensuse</code><br/>π¦ <em>openSUSE</em>) linux_oracle(<code>oracle</code><br/>𦴠<em>Oracle Linux</em>) linux_parallels(<code>parallels</code><br/>β₯ <em>Parallels</em>) linux_pidora(<code>pidora</code><br/>π <em>Pidora</em>) linux_raspbian(<code>raspbian</code><br/>π <em>Raspbian</em>) linux_rhel(<code>rhel</code><br/>π© <em>RedHat Enterprise Linux</em>) linux_rocky(<code>rocky</code><br/>β°οΈ <em>Rocky Linux</em>) linux_scientific(<code>scientific</code><br/>βοΈ <em>Scientific Linux</em>) linux_slackware(<code>slackware</code><br/>π¬ <em>Slackware</em>) linux_sles(<code>sles</code><br/>π¦ <em>SUSE Linux Enterprise Server</em>) linux_tumbleweed(<code>tumbleweed</code><br/>β» <em>openSUSE Tumbleweed</em>) linux_tuxedo(<code>tuxedo</code><br/>π€΅ <em>Tuxedo OS</em>) linux_ubuntu(<code>ubuntu</code><br/>π― <em>Ubuntu</em>) linux_unknown_linux(<code>unknown_linux</code><br/>π§ <em>Unknown Linux</em>) linux_xenserver(<code>xenserver</code><br/>β <em>XenServer</em>) end subgraph "<code>extra_platforms.LINUX_LAYERS</code><br/>β <em>Any Linux compatibility layers</em>" linux_layers_wsl1(<code>wsl1</code><br/>β <em>Windows Subsystem for Linux v1</em>) linux_layers_wsl2(<code>wsl2</code><br/>β <em>Windows Subsystem for Linux v2</em>) end subgraph "<code>extra_platforms.OTHER_UNIX</code><br/>β <em>Any other Unix</em>" other_unix_hurd(<code>hurd</code><br/>π <em>GNU/Hurd</em>) end subgraph "<code>extra_platforms.SYSTEM_V</code><br/>β € <em>Any Unix derived from AT&T System Five</em>" system_v_aix(<code>aix</code><br/>βΏ <em>IBM AIX</em>) system_v_solaris(<code>solaris</code><br/>π <em>Solaris</em>) end subgraph "<code>extra_platforms.UNIX_LAYERS</code><br/>β <em>Any Unix compatibility layers</em>" unix_layers_cygwin(<code>cygwin</code><br/>ΟΎ <em>Cygwin</em>) end
Other groupsΒΆ
Other groups are available for convenience, but these overlaps:
--- title: <code>extra_platforms.EXTRA_GROUPS</code> - Overlapping groups, defined for convenience. --- flowchart subgraph "<code>extra_platforms.ALL_PLATFORMS</code><br/>π₯οΈ <em>All platforms</em>" all_platforms_aix(<code>aix</code><br/>βΏ <em>IBM AIX</em>) all_platforms_altlinux(<code>altlinux</code><br/>π§ <em>ALT Linux</em>) all_platforms_amzn(<code>amzn</code><br/>π <em>Amazon Linux</em>) all_platforms_android(<code>android</code><br/>π€ <em>Android</em>) all_platforms_arch(<code>arch</code><br/>ποΈ <em>Arch Linux</em>) all_platforms_buildroot(<code>buildroot</code><br/>βοΈ <em>Buildroot</em>) all_platforms_centos(<code>centos</code><br/>π <em>CentOS</em>) all_platforms_cloudlinux(<code>cloudlinux</code><br/>κ© <em>CloudLinux OS</em>) all_platforms_cygwin(<code>cygwin</code><br/>ΟΎ <em>Cygwin</em>) all_platforms_debian(<code>debian</code><br/>π <em>Debian</em>) all_platforms_exherbo(<code>exherbo</code><br/>π½ <em>Exherbo Linux</em>) all_platforms_fedora(<code>fedora</code><br/>π© <em>Fedora</em>) all_platforms_freebsd(<code>freebsd</code><br/>π <em>FreeBSD</em>) all_platforms_gentoo(<code>gentoo</code><br/>ποΈ <em>Gentoo Linux</em>) all_platforms_guix(<code>guix</code><br/>π <em>Guix System</em>) all_platforms_hurd(<code>hurd</code><br/>π <em>GNU/Hurd</em>) all_platforms_ibm_powerkvm(<code>ibm_powerkvm</code><br/>π€Ή <em>IBM PowerKVM</em>) all_platforms_kvmibm(<code>kvmibm</code><br/>π€Ή <em>KVM for IBM z Systems</em>) all_platforms_linuxmint(<code>linuxmint</code><br/>πΏ <em>Linux Mint</em>) all_platforms_macos(<code>macos</code><br/>π <em>macOS</em>) all_platforms_mageia(<code>mageia</code><br/>β₯ <em>Mageia</em>) all_platforms_mandriva(<code>mandriva</code><br/>π« <em>Mandriva Linux</em>) all_platforms_midnightbsd(<code>midnightbsd</code><br/>π <em>MidnightBSD</em>) all_platforms_netbsd(<code>netbsd</code><br/>π© <em>NetBSD</em>) all_platforms_nobara(<code>nobara</code><br/>ο <em>Nobara</em>) all_platforms_openbsd(<code>openbsd</code><br/>π‘ <em>OpenBSD</em>) all_platforms_opensuse(<code>opensuse</code><br/>π¦ <em>openSUSE</em>) all_platforms_oracle(<code>oracle</code><br/>𦴠<em>Oracle Linux</em>) all_platforms_parallels(<code>parallels</code><br/>β₯ <em>Parallels</em>) all_platforms_pidora(<code>pidora</code><br/>π <em>Pidora</em>) all_platforms_raspbian(<code>raspbian</code><br/>π <em>Raspbian</em>) all_platforms_rhel(<code>rhel</code><br/>π© <em>RedHat Enterprise Linux</em>) all_platforms_rocky(<code>rocky</code><br/>β°οΈ <em>Rocky Linux</em>) all_platforms_scientific(<code>scientific</code><br/>βοΈ <em>Scientific Linux</em>) all_platforms_slackware(<code>slackware</code><br/>π¬ <em>Slackware</em>) all_platforms_sles(<code>sles</code><br/>π¦ <em>SUSE Linux Enterprise Server</em>) all_platforms_solaris(<code>solaris</code><br/>π <em>Solaris</em>) all_platforms_sunos(<code>sunos</code><br/>βοΈ <em>SunOS</em>) all_platforms_tumbleweed(<code>tumbleweed</code><br/>β» <em>openSUSE Tumbleweed</em>) all_platforms_tuxedo(<code>tuxedo</code><br/>π€΅ <em>Tuxedo OS</em>) all_platforms_ubuntu(<code>ubuntu</code><br/>π― <em>Ubuntu</em>) all_platforms_unknown_linux(<code>unknown_linux</code><br/>π§ <em>Unknown Linux</em>) all_platforms_windows(<code>windows</code><br/>πͺ <em>Windows</em>) all_platforms_wsl1(<code>wsl1</code><br/>β <em>Windows Subsystem for Linux v1</em>) all_platforms_wsl2(<code>wsl2</code><br/>β <em>Windows Subsystem for Linux v2</em>) all_platforms_xenserver(<code>xenserver</code><br/>β <em>XenServer</em>) end subgraph "<code>extra_platforms.BSD_WITHOUT_MACOS</code><br/>π ±οΈ <em>Any BSD excluding macOS</em>" bsd_without_macos_freebsd(<code>freebsd</code><br/>π <em>FreeBSD</em>) bsd_without_macos_midnightbsd(<code>midnightbsd</code><br/>π <em>MidnightBSD</em>) bsd_without_macos_netbsd(<code>netbsd</code><br/>π© <em>NetBSD</em>) bsd_without_macos_openbsd(<code>openbsd</code><br/>π‘ <em>OpenBSD</em>) bsd_without_macos_sunos(<code>sunos</code><br/>βοΈ <em>SunOS</em>) end subgraph "<code>extra_platforms.LINUX_LIKE</code><br/>π§+ <em>Any Linux and compatibility layers</em>" linux_like_altlinux(<code>altlinux</code><br/>π§ <em>ALT Linux</em>) linux_like_amzn(<code>amzn</code><br/>π <em>Amazon Linux</em>) linux_like_android(<code>android</code><br/>π€ <em>Android</em>) linux_like_arch(<code>arch</code><br/>ποΈ <em>Arch Linux</em>) linux_like_buildroot(<code>buildroot</code><br/>βοΈ <em>Buildroot</em>) linux_like_centos(<code>centos</code><br/>π <em>CentOS</em>) linux_like_cloudlinux(<code>cloudlinux</code><br/>κ© <em>CloudLinux OS</em>) linux_like_debian(<code>debian</code><br/>π <em>Debian</em>) linux_like_exherbo(<code>exherbo</code><br/>π½ <em>Exherbo Linux</em>) linux_like_fedora(<code>fedora</code><br/>π© <em>Fedora</em>) linux_like_gentoo(<code>gentoo</code><br/>ποΈ <em>Gentoo Linux</em>) linux_like_guix(<code>guix</code><br/>π <em>Guix System</em>) linux_like_ibm_powerkvm(<code>ibm_powerkvm</code><br/>π€Ή <em>IBM PowerKVM</em>) linux_like_kvmibm(<code>kvmibm</code><br/>π€Ή <em>KVM for IBM z Systems</em>) linux_like_linuxmint(<code>linuxmint</code><br/>πΏ <em>Linux Mint</em>) linux_like_mageia(<code>mageia</code><br/>β₯ <em>Mageia</em>) linux_like_mandriva(<code>mandriva</code><br/>π« <em>Mandriva Linux</em>) linux_like_nobara(<code>nobara</code><br/>ο <em>Nobara</em>) linux_like_opensuse(<code>opensuse</code><br/>π¦ <em>openSUSE</em>) linux_like_oracle(<code>oracle</code><br/>𦴠<em>Oracle Linux</em>) linux_like_parallels(<code>parallels</code><br/>β₯ <em>Parallels</em>) linux_like_pidora(<code>pidora</code><br/>π <em>Pidora</em>) linux_like_raspbian(<code>raspbian</code><br/>π <em>Raspbian</em>) linux_like_rhel(<code>rhel</code><br/>π© <em>RedHat Enterprise Linux</em>) linux_like_rocky(<code>rocky</code><br/>β°οΈ <em>Rocky Linux</em>) linux_like_scientific(<code>scientific</code><br/>βοΈ <em>Scientific Linux</em>) linux_like_slackware(<code>slackware</code><br/>π¬ <em>Slackware</em>) linux_like_sles(<code>sles</code><br/>π¦ <em>SUSE Linux Enterprise Server</em>) linux_like_tumbleweed(<code>tumbleweed</code><br/>β» <em>openSUSE Tumbleweed</em>) linux_like_tuxedo(<code>tuxedo</code><br/>π€΅ <em>Tuxedo OS</em>) linux_like_ubuntu(<code>ubuntu</code><br/>π― <em>Ubuntu</em>) linux_like_unknown_linux(<code>unknown_linux</code><br/>π§ <em>Unknown Linux</em>) linux_like_wsl1(<code>wsl1</code><br/>β <em>Windows Subsystem for Linux v1</em>) linux_like_wsl2(<code>wsl2</code><br/>β <em>Windows Subsystem for Linux v2</em>) linux_like_xenserver(<code>xenserver</code><br/>β <em>XenServer</em>) end subgraph "<code>extra_platforms.UNIX</code><br/>β¨· <em>Any Unix</em>" unix_aix(<code>aix</code><br/>βΏ <em>IBM AIX</em>) unix_altlinux(<code>altlinux</code><br/>π§ <em>ALT Linux</em>) unix_amzn(<code>amzn</code><br/>π <em>Amazon Linux</em>) unix_android(<code>android</code><br/>π€ <em>Android</em>) unix_arch(<code>arch</code><br/>ποΈ <em>Arch Linux</em>) unix_buildroot(<code>buildroot</code><br/>βοΈ <em>Buildroot</em>) unix_centos(<code>centos</code><br/>π <em>CentOS</em>) unix_cloudlinux(<code>cloudlinux</code><br/>κ© <em>CloudLinux OS</em>) unix_cygwin(<code>cygwin</code><br/>ΟΎ <em>Cygwin</em>) unix_debian(<code>debian</code><br/>π <em>Debian</em>) unix_exherbo(<code>exherbo</code><br/>π½ <em>Exherbo Linux</em>) unix_fedora(<code>fedora</code><br/>π© <em>Fedora</em>) unix_freebsd(<code>freebsd</code><br/>π <em>FreeBSD</em>) unix_gentoo(<code>gentoo</code><br/>ποΈ <em>Gentoo Linux</em>) unix_guix(<code>guix</code><br/>π <em>Guix System</em>) unix_hurd(<code>hurd</code><br/>π <em>GNU/Hurd</em>) unix_ibm_powerkvm(<code>ibm_powerkvm</code><br/>π€Ή <em>IBM PowerKVM</em>) unix_kvmibm(<code>kvmibm</code><br/>π€Ή <em>KVM for IBM z Systems</em>) unix_linuxmint(<code>linuxmint</code><br/>πΏ <em>Linux Mint</em>) unix_macos(<code>macos</code><br/>π <em>macOS</em>) unix_mageia(<code>mageia</code><br/>β₯ <em>Mageia</em>) unix_mandriva(<code>mandriva</code><br/>π« <em>Mandriva Linux</em>) unix_midnightbsd(<code>midnightbsd</code><br/>π <em>MidnightBSD</em>) unix_netbsd(<code>netbsd</code><br/>π© <em>NetBSD</em>) unix_nobara(<code>nobara</code><br/>ο <em>Nobara</em>) unix_openbsd(<code>openbsd</code><br/>π‘ <em>OpenBSD</em>) unix_opensuse(<code>opensuse</code><br/>π¦ <em>openSUSE</em>) unix_oracle(<code>oracle</code><br/>𦴠<em>Oracle Linux</em>) unix_parallels(<code>parallels</code><br/>β₯ <em>Parallels</em>) unix_pidora(<code>pidora</code><br/>π <em>Pidora</em>) unix_raspbian(<code>raspbian</code><br/>π <em>Raspbian</em>) unix_rhel(<code>rhel</code><br/>π© <em>RedHat Enterprise Linux</em>) unix_rocky(<code>rocky</code><br/>β°οΈ <em>Rocky Linux</em>) unix_scientific(<code>scientific</code><br/>βοΈ <em>Scientific Linux</em>) unix_slackware(<code>slackware</code><br/>π¬ <em>Slackware</em>) unix_sles(<code>sles</code><br/>π¦ <em>SUSE Linux Enterprise Server</em>) unix_solaris(<code>solaris</code><br/>π <em>Solaris</em>) unix_sunos(<code>sunos</code><br/>βοΈ <em>SunOS</em>) unix_tumbleweed(<code>tumbleweed</code><br/>β» <em>openSUSE Tumbleweed</em>) unix_tuxedo(<code>tuxedo</code><br/>π€΅ <em>Tuxedo OS</em>) unix_ubuntu(<code>ubuntu</code><br/>π― <em>Ubuntu</em>) unix_unknown_linux(<code>unknown_linux</code><br/>π§ <em>Unknown Linux</em>) unix_wsl1(<code>wsl1</code><br/>β <em>Windows Subsystem for Linux v1</em>) unix_wsl2(<code>wsl2</code><br/>β <em>Windows Subsystem for Linux v2</em>) unix_xenserver(<code>xenserver</code><br/>β <em>XenServer</em>) end subgraph "<code>extra_platforms.UNIX_WITHOUT_MACOS</code><br/>β¨ <em>Any Unix excluding macOS</em>" unix_without_macos_aix(<code>aix</code><br/>βΏ <em>IBM AIX</em>) unix_without_macos_altlinux(<code>altlinux</code><br/>π§ <em>ALT Linux</em>) unix_without_macos_amzn(<code>amzn</code><br/>π <em>Amazon Linux</em>) unix_without_macos_android(<code>android</code><br/>π€ <em>Android</em>) unix_without_macos_arch(<code>arch</code><br/>ποΈ <em>Arch Linux</em>) unix_without_macos_buildroot(<code>buildroot</code><br/>βοΈ <em>Buildroot</em>) unix_without_macos_centos(<code>centos</code><br/>π <em>CentOS</em>) unix_without_macos_cloudlinux(<code>cloudlinux</code><br/>κ© <em>CloudLinux OS</em>) unix_without_macos_cygwin(<code>cygwin</code><br/>ΟΎ <em>Cygwin</em>) unix_without_macos_debian(<code>debian</code><br/>π <em>Debian</em>) unix_without_macos_exherbo(<code>exherbo</code><br/>π½ <em>Exherbo Linux</em>) unix_without_macos_fedora(<code>fedora</code><br/>π© <em>Fedora</em>) unix_without_macos_freebsd(<code>freebsd</code><br/>π <em>FreeBSD</em>) unix_without_macos_gentoo(<code>gentoo</code><br/>ποΈ <em>Gentoo Linux</em>) unix_without_macos_guix(<code>guix</code><br/>π <em>Guix System</em>) unix_without_macos_hurd(<code>hurd</code><br/>π <em>GNU/Hurd</em>) unix_without_macos_ibm_powerkvm(<code>ibm_powerkvm</code><br/>π€Ή <em>IBM PowerKVM</em>) unix_without_macos_kvmibm(<code>kvmibm</code><br/>π€Ή <em>KVM for IBM z Systems</em>) unix_without_macos_linuxmint(<code>linuxmint</code><br/>πΏ <em>Linux Mint</em>) unix_without_macos_mageia(<code>mageia</code><br/>β₯ <em>Mageia</em>) unix_without_macos_mandriva(<code>mandriva</code><br/>π« <em>Mandriva Linux</em>) unix_without_macos_midnightbsd(<code>midnightbsd</code><br/>π <em>MidnightBSD</em>) unix_without_macos_netbsd(<code>netbsd</code><br/>π© <em>NetBSD</em>) unix_without_macos_nobara(<code>nobara</code><br/>ο <em>Nobara</em>) unix_without_macos_openbsd(<code>openbsd</code><br/>π‘ <em>OpenBSD</em>) unix_without_macos_opensuse(<code>opensuse</code><br/>π¦ <em>openSUSE</em>) unix_without_macos_oracle(<code>oracle</code><br/>𦴠<em>Oracle Linux</em>) unix_without_macos_parallels(<code>parallels</code><br/>β₯ <em>Parallels</em>) unix_without_macos_pidora(<code>pidora</code><br/>π <em>Pidora</em>) unix_without_macos_raspbian(<code>raspbian</code><br/>π <em>Raspbian</em>) unix_without_macos_rhel(<code>rhel</code><br/>π© <em>RedHat Enterprise Linux</em>) unix_without_macos_rocky(<code>rocky</code><br/>β°οΈ <em>Rocky Linux</em>) unix_without_macos_scientific(<code>scientific</code><br/>βοΈ <em>Scientific Linux</em>) unix_without_macos_slackware(<code>slackware</code><br/>π¬ <em>Slackware</em>) unix_without_macos_sles(<code>sles</code><br/>π¦ <em>SUSE Linux Enterprise Server</em>) unix_without_macos_solaris(<code>solaris</code><br/>π <em>Solaris</em>) unix_without_macos_sunos(<code>sunos</code><br/>βοΈ <em>SunOS</em>) unix_without_macos_tumbleweed(<code>tumbleweed</code><br/>β» <em>openSUSE Tumbleweed</em>) unix_without_macos_tuxedo(<code>tuxedo</code><br/>π€΅ <em>Tuxedo OS</em>) unix_without_macos_ubuntu(<code>ubuntu</code><br/>π― <em>Ubuntu</em>) unix_without_macos_unknown_linux(<code>unknown_linux</code><br/>π§ <em>Unknown Linux</em>) unix_without_macos_wsl1(<code>wsl1</code><br/>β <em>Windows Subsystem for Linux v1</em>) unix_without_macos_wsl2(<code>wsl2</code><br/>β <em>Windows Subsystem for Linux v2</em>) unix_without_macos_xenserver(<code>xenserver</code><br/>β <em>XenServer</em>) end
[!IMPORTANT] All the graphs above would be better off if merged. Unfortunately Graphviz is not capable of producing Euler diagrams. Only non-overlapping clusters can be rendered.
Thereβs still a chance to have them supported by Mermaid so we can switch to that if the feature materialize.
extra_platforms.group
APIΒΆ
Group models collection of platforms. Also referred as families or categories.
- class extra_platforms.group.Group(id, name, icon='β', platforms=<factory>)[source]ΒΆ
Bases:
object
A
Group
identify a collection ofPlatform
.Used to group platforms of the same family.
set-like methods are available and performed on the platform objects the group contains (in the
self.platforms
data field).Todo
Replace the
platforms
/platform_ids
combo fields with a singleplatforms
field that is a simple dict of platform ID to platform object. But maybe that going to be too much of a hassle because adict
cannot be frozen.- property short_desc: strΒΆ
Returns the group name with its first letter in lowercase to be used as a short description.
Mainly used to produce docstrings for function dynamically generated for each group.
- isdisjoint(other)[source]ΒΆ
Return True if the group has no platforms in common with
other
.Groups are disjoint if and only if their intersection is an empty set.
other
can be an arbitrarily nestedIterable
ofGroup
andPlatform
.- Return type:
- fullyintersects(other)[source]ΒΆ
Return True if the group has all platforms in common with
other
.- Return type:
- union(*others)[source]ΒΆ
Return a new
Group
with platforms from the group and all others.- Return type:
- ..caution::
The new
Group
will inherits the metadata of the first one. All other groupsβ metadata will be ignored.
- intersection(*others)[source]ΒΆ
Return a new
Group
with platforms common to the group and all others.- Return type:
- ..caution::
The new
Group
will inherits the metadata of the first one. All other groupsβ metadata will be ignored.
- difference(*others)[source]ΒΆ
Return a new
Group
with platforms in the group that are not in the others.- Return type:
- ..caution::
The new
Group
will inherits the metadata of the first one. All other groupsβ metadata will be ignored.
extra_platforms.group_data
APIΒΆ
Definitions of ready-to-use groups.
- extra_platforms.group_data.ALL_PLATFORMS: Group = Group(id='all_platforms', name='All platforms', platform_ids=frozenset({'buildroot', 'oracle', 'opensuse', 'rhel', 'macos', 'wsl2', 'centos', 'slackware', 'ibm_powerkvm', 'nobara', 'openbsd', 'hurd', 'solaris', 'android', 'exherbo', 'amzn', 'linuxmint', 'parallels', 'mageia', 'pidora', 'scientific', 'tumbleweed', 'gentoo', 'raspbian', 'midnightbsd', 'sles', 'debian', 'ubuntu', 'windows', 'fedora', 'xenserver', 'cloudlinux', 'guix', 'freebsd', 'kvmibm', 'rocky', 'arch', 'cygwin', 'mandriva', 'unknown_linux', 'wsl1', 'altlinux', 'sunos', 'tuxedo', 'netbsd', 'aix'}))ΒΆ
All recognized platforms.
- extra_platforms.group_data.ANY_WINDOWS = Group(id='any_windows', name='Any Windows', platform_ids=frozenset({'windows'}))ΒΆ
All Windows operating systems.
- extra_platforms.group_data.UNIX = Group(id='unix', name='Any Unix', platform_ids=frozenset({'buildroot', 'oracle', 'opensuse', 'rhel', 'macos', 'wsl2', 'centos', 'slackware', 'ibm_powerkvm', 'nobara', 'openbsd', 'hurd', 'solaris', 'android', 'exherbo', 'amzn', 'linuxmint', 'parallels', 'mageia', 'pidora', 'scientific', 'tumbleweed', 'gentoo', 'raspbian', 'midnightbsd', 'sles', 'debian', 'ubuntu', 'fedora', 'xenserver', 'cloudlinux', 'guix', 'freebsd', 'kvmibm', 'rocky', 'arch', 'cygwin', 'mandriva', 'unknown_linux', 'wsl1', 'altlinux', 'sunos', 'tuxedo', 'netbsd', 'aix'}))ΒΆ
All Unix-like operating systems and compatibility layers.
- extra_platforms.group_data.UNIX_WITHOUT_MACOS = Group(id='unix_without_macos', name='Any Unix excluding macOS', platform_ids=frozenset({'buildroot', 'oracle', 'opensuse', 'rhel', 'wsl2', 'centos', 'slackware', 'ibm_powerkvm', 'nobara', 'openbsd', 'hurd', 'solaris', 'android', 'exherbo', 'amzn', 'linuxmint', 'parallels', 'mageia', 'pidora', 'scientific', 'tumbleweed', 'gentoo', 'raspbian', 'midnightbsd', 'sles', 'debian', 'ubuntu', 'fedora', 'xenserver', 'cloudlinux', 'guix', 'freebsd', 'kvmibm', 'rocky', 'arch', 'cygwin', 'mandriva', 'unknown_linux', 'wsl1', 'altlinux', 'sunos', 'tuxedo', 'netbsd', 'aix'}))ΒΆ
All Unix platforms, without macOS.
This is useful to avoid macOS-specific workarounds on Unix platforms.
- extra_platforms.group_data.BSD = Group(id='bsd', name='Any BSD', platform_ids=frozenset({'freebsd', 'midnightbsd', 'macos', 'sunos', 'openbsd', 'netbsd'}))ΒΆ
All BSD platforms.
Note
Are considered of this family (according Wikipedia):
386BSD (FreeBSD, NetBSD, OpenBSD, DragonFly BSD)
NeXTSTEP
Darwin (macOS, iOS, audioOS, iPadOS, tvOS, watchOS, bridgeOS)
SunOS
Ultrix
- extra_platforms.group_data.BSD_WITHOUT_MACOS = Group(id='bsd_without_macos', name='Any BSD excluding macOS', platform_ids=frozenset({'freebsd', 'midnightbsd', 'sunos', 'openbsd', 'netbsd'}))ΒΆ
All BSD platforms, without macOS.
This is useful to avoid macOS-specific workarounds on BSD platforms.
- extra_platforms.group_data.LINUX = Group(id='linux', name='Any Linux distribution', platform_ids=frozenset({'buildroot', 'oracle', 'opensuse', 'rhel', 'centos', 'slackware', 'ibm_powerkvm', 'nobara', 'android', 'exherbo', 'amzn', 'linuxmint', 'parallels', 'mageia', 'pidora', 'scientific', 'tumbleweed', 'gentoo', 'raspbian', 'sles', 'debian', 'ubuntu', 'fedora', 'xenserver', 'cloudlinux', 'guix', 'kvmibm', 'rocky', 'arch', 'mandriva', 'unknown_linux', 'altlinux', 'tuxedo'}))ΒΆ
All distributions based on a Linux kernel.
- extra_platforms.group_data.LINUX_LAYERS = Group(id='linux_layers', name='Any Linux compatibility layers', platform_ids=frozenset({'wsl2', 'wsl1'}))ΒΆ
Interfaces that allows Linux binaries to run on a different host system.
- extra_platforms.group_data.LINUX_LIKE = Group(id='linux_like', name='Any Linux and compatibility layers', platform_ids=frozenset({'buildroot', 'oracle', 'opensuse', 'rhel', 'wsl2', 'centos', 'slackware', 'ibm_powerkvm', 'nobara', 'android', 'exherbo', 'amzn', 'linuxmint', 'parallels', 'mageia', 'pidora', 'scientific', 'tumbleweed', 'gentoo', 'raspbian', 'sles', 'debian', 'ubuntu', 'fedora', 'xenserver', 'cloudlinux', 'guix', 'kvmibm', 'rocky', 'arch', 'mandriva', 'unknown_linux', 'wsl1', 'altlinux', 'tuxedo'}))ΒΆ
Sum of all Linux distributions and Linux compatibility layers.
- extra_platforms.group_data.SYSTEM_V = Group(id='system_v', name='Any Unix derived from AT&T System Five', platform_ids=frozenset({'aix', 'solaris'}))ΒΆ
All Unix platforms derived from AT&T System Five.
Note
Are considered of this family (according Wikipedia):
A/UX
AIX
HP-UX
IRIX
OpenServer
Solaris
OpenSolaris
Illumos
Tru64
UNIX
UnixWare
- extra_platforms.group_data.UNIX_LAYERS = Group(id='unix_layers', name='Any Unix compatibility layers', platform_ids=frozenset({'cygwin'}))ΒΆ
Interfaces that allows Unix binaries to run on a different host system.
Note
Are considered of this family (according Wikipedia):
Cygwin
Darling
Eunice
GNV
Interix
MachTen
Microsoft POSIX subsystem
MKS Toolkit
PASE
P.I.P.S.
PWS/VSE-AF
UNIX System Services
UserLAnd Technologies
Windows Services for UNIX
- extra_platforms.group_data.OTHER_UNIX = Group(id='other_unix', name='Any other Unix', platform_ids=frozenset({'hurd'}))ΒΆ
All other Unix platforms.
Note
Are considered of this family (according Wikipedia):
Coherent
GNU/Hurd
HarmonyOS
LiteOS
LynxOS
Minix
MOS
OSF/1
QNX
BlackBerry 10
Research Unix
SerenityOS
- extra_platforms.group_data.NON_OVERLAPPING_GROUPS: frozenset[Group] = frozenset({Group(id='any_windows', name='Any Windows', platform_ids=frozenset({'windows'})), Group(id='other_unix', name='Any other Unix', platform_ids=frozenset({'hurd'})), Group(id='system_v', name='Any Unix derived from AT&T System Five', platform_ids=frozenset({'aix', 'solaris'})), Group(id='unix_layers', name='Any Unix compatibility layers', platform_ids=frozenset({'cygwin'})), Group(id='linux', name='Any Linux distribution', platform_ids=frozenset({'buildroot', 'oracle', 'opensuse', 'rhel', 'centos', 'slackware', 'ibm_powerkvm', 'nobara', 'android', 'exherbo', 'amzn', 'linuxmint', 'parallels', 'mageia', 'pidora', 'scientific', 'tumbleweed', 'gentoo', 'raspbian', 'sles', 'debian', 'ubuntu', 'fedora', 'xenserver', 'cloudlinux', 'guix', 'kvmibm', 'rocky', 'arch', 'mandriva', 'unknown_linux', 'altlinux', 'tuxedo'})), Group(id='bsd', name='Any BSD', platform_ids=frozenset({'freebsd', 'midnightbsd', 'macos', 'sunos', 'openbsd', 'netbsd'})), Group(id='linux_layers', name='Any Linux compatibility layers', platform_ids=frozenset({'wsl2', 'wsl1'}))})ΒΆ
Non-overlapping groups.
- extra_platforms.group_data.EXTRA_GROUPS: frozenset[Group] = frozenset({Group(id='bsd_without_macos', name='Any BSD excluding macOS', platform_ids=frozenset({'freebsd', 'midnightbsd', 'sunos', 'openbsd', 'netbsd'})), Group(id='linux_like', name='Any Linux and compatibility layers', platform_ids=frozenset({'buildroot', 'oracle', 'opensuse', 'rhel', 'wsl2', 'centos', 'slackware', 'ibm_powerkvm', 'nobara', 'android', 'exherbo', 'amzn', 'linuxmint', 'parallels', 'mageia', 'pidora', 'scientific', 'tumbleweed', 'gentoo', 'raspbian', 'sles', 'debian', 'ubuntu', 'fedora', 'xenserver', 'cloudlinux', 'guix', 'kvmibm', 'rocky', 'arch', 'mandriva', 'unknown_linux', 'wsl1', 'altlinux', 'tuxedo'})), Group(id='unix_without_macos', name='Any Unix excluding macOS', platform_ids=frozenset({'buildroot', 'oracle', 'opensuse', 'rhel', 'wsl2', 'centos', 'slackware', 'ibm_powerkvm', 'nobara', 'openbsd', 'hurd', 'solaris', 'android', 'exherbo', 'amzn', 'linuxmint', 'parallels', 'mageia', 'pidora', 'scientific', 'tumbleweed', 'gentoo', 'raspbian', 'midnightbsd', 'sles', 'debian', 'ubuntu', 'fedora', 'xenserver', 'cloudlinux', 'guix', 'freebsd', 'kvmibm', 'rocky', 'arch', 'cygwin', 'mandriva', 'unknown_linux', 'wsl1', 'altlinux', 'sunos', 'tuxedo', 'netbsd', 'aix'})), Group(id='unix', name='Any Unix', platform_ids=frozenset({'buildroot', 'oracle', 'opensuse', 'rhel', 'macos', 'wsl2', 'centos', 'slackware', 'ibm_powerkvm', 'nobara', 'openbsd', 'hurd', 'solaris', 'android', 'exherbo', 'amzn', 'linuxmint', 'parallels', 'mageia', 'pidora', 'scientific', 'tumbleweed', 'gentoo', 'raspbian', 'midnightbsd', 'sles', 'debian', 'ubuntu', 'fedora', 'xenserver', 'cloudlinux', 'guix', 'freebsd', 'kvmibm', 'rocky', 'arch', 'cygwin', 'mandriva', 'unknown_linux', 'wsl1', 'altlinux', 'sunos', 'tuxedo', 'netbsd', 'aix'})), Group(id='all_platforms', name='All platforms', platform_ids=frozenset({'buildroot', 'oracle', 'opensuse', 'rhel', 'macos', 'wsl2', 'centos', 'slackware', 'ibm_powerkvm', 'nobara', 'openbsd', 'hurd', 'solaris', 'android', 'exherbo', 'amzn', 'linuxmint', 'parallels', 'mageia', 'pidora', 'scientific', 'tumbleweed', 'gentoo', 'raspbian', 'midnightbsd', 'sles', 'debian', 'ubuntu', 'windows', 'fedora', 'xenserver', 'cloudlinux', 'guix', 'freebsd', 'kvmibm', 'rocky', 'arch', 'cygwin', 'mandriva', 'unknown_linux', 'wsl1', 'altlinux', 'sunos', 'tuxedo', 'netbsd', 'aix'}))})ΒΆ
Overlapping groups, defined for convenience.
- extra_platforms.group_data.ALL_GROUPS: frozenset[Group] = frozenset({Group(id='unix_without_macos', name='Any Unix excluding macOS', platform_ids=frozenset({'buildroot', 'oracle', 'opensuse', 'rhel', 'wsl2', 'centos', 'slackware', 'ibm_powerkvm', 'nobara', 'openbsd', 'hurd', 'solaris', 'android', 'exherbo', 'amzn', 'linuxmint', 'parallels', 'mageia', 'pidora', 'scientific', 'tumbleweed', 'gentoo', 'raspbian', 'midnightbsd', 'sles', 'debian', 'ubuntu', 'fedora', 'xenserver', 'cloudlinux', 'guix', 'freebsd', 'kvmibm', 'rocky', 'arch', 'cygwin', 'mandriva', 'unknown_linux', 'wsl1', 'altlinux', 'sunos', 'tuxedo', 'netbsd', 'aix'})), Group(id='unix', name='Any Unix', platform_ids=frozenset({'buildroot', 'oracle', 'opensuse', 'rhel', 'macos', 'wsl2', 'centos', 'slackware', 'ibm_powerkvm', 'nobara', 'openbsd', 'hurd', 'solaris', 'android', 'exherbo', 'amzn', 'linuxmint', 'parallels', 'mageia', 'pidora', 'scientific', 'tumbleweed', 'gentoo', 'raspbian', 'midnightbsd', 'sles', 'debian', 'ubuntu', 'fedora', 'xenserver', 'cloudlinux', 'guix', 'freebsd', 'kvmibm', 'rocky', 'arch', 'cygwin', 'mandriva', 'unknown_linux', 'wsl1', 'altlinux', 'sunos', 'tuxedo', 'netbsd', 'aix'})), Group(id='any_windows', name='Any Windows', platform_ids=frozenset({'windows'})), Group(id='other_unix', name='Any other Unix', platform_ids=frozenset({'hurd'})), Group(id='system_v', name='Any Unix derived from AT&T System Five', platform_ids=frozenset({'aix', 'solaris'})), Group(id='unix_layers', name='Any Unix compatibility layers', platform_ids=frozenset({'cygwin'})), Group(id='linux', name='Any Linux distribution', platform_ids=frozenset({'buildroot', 'oracle', 'opensuse', 'rhel', 'centos', 'slackware', 'ibm_powerkvm', 'nobara', 'android', 'exherbo', 'amzn', 'linuxmint', 'parallels', 'mageia', 'pidora', 'scientific', 'tumbleweed', 'gentoo', 'raspbian', 'sles', 'debian', 'ubuntu', 'fedora', 'xenserver', 'cloudlinux', 'guix', 'kvmibm', 'rocky', 'arch', 'mandriva', 'unknown_linux', 'altlinux', 'tuxedo'})), Group(id='bsd_without_macos', name='Any BSD excluding macOS', platform_ids=frozenset({'freebsd', 'midnightbsd', 'sunos', 'openbsd', 'netbsd'})), Group(id='bsd', name='Any BSD', platform_ids=frozenset({'freebsd', 'midnightbsd', 'macos', 'sunos', 'openbsd', 'netbsd'})), Group(id='linux_layers', name='Any Linux compatibility layers', platform_ids=frozenset({'wsl2', 'wsl1'})), Group(id='linux_like', name='Any Linux and compatibility layers', platform_ids=frozenset({'buildroot', 'oracle', 'opensuse', 'rhel', 'wsl2', 'centos', 'slackware', 'ibm_powerkvm', 'nobara', 'android', 'exherbo', 'amzn', 'linuxmint', 'parallels', 'mageia', 'pidora', 'scientific', 'tumbleweed', 'gentoo', 'raspbian', 'sles', 'debian', 'ubuntu', 'fedora', 'xenserver', 'cloudlinux', 'guix', 'kvmibm', 'rocky', 'arch', 'mandriva', 'unknown_linux', 'wsl1', 'altlinux', 'tuxedo'})), Group(id='all_platforms', name='All platforms', platform_ids=frozenset({'buildroot', 'oracle', 'opensuse', 'rhel', 'macos', 'wsl2', 'centos', 'slackware', 'ibm_powerkvm', 'nobara', 'openbsd', 'hurd', 'solaris', 'android', 'exherbo', 'amzn', 'linuxmint', 'parallels', 'mageia', 'pidora', 'scientific', 'tumbleweed', 'gentoo', 'raspbian', 'midnightbsd', 'sles', 'debian', 'ubuntu', 'windows', 'fedora', 'xenserver', 'cloudlinux', 'guix', 'freebsd', 'kvmibm', 'rocky', 'arch', 'cygwin', 'mandriva', 'unknown_linux', 'wsl1', 'altlinux', 'sunos', 'tuxedo', 'netbsd', 'aix'}))})ΒΆ
All groups.