Platforms¶
Each platform represents an operating system or OS-like environment, and is associated with:
a unique platform ID
a human-readable name
an icon (emoji / unicode character)
various metadata in its
info()method
Platform usage¶
Each platform is materialized by a Platform object, from which you can access various metadata:
>>> from extra_platforms import DEBIAN
>>> DEBIAN
Platform(id='debian', name='Debian')
>>> DEBIAN.id
'debian'
>>> DEBIAN.current
False
>>> DEBIAN.info()
{'id': 'debian', 'name': 'Debian', 'icon': '🌀', 'url': 'https://debian.org', 'current': False, 'distro_id': None, 'version': None, 'version_parts': {'major': None, 'minor': None, 'build_number': None}, 'like': None, 'codename': None}
To check if the current platform matches a specific platform, use the corresponding detection function:
>>> from extra_platforms import is_macos
>>> is_macos()
True
The current platform can be obtained via the current_platform() function:
>>> from extra_platforms import current_platform
>>> current_platform()
Platform(id='macos', name='macOS')
Recognized platforms¶
Icon |
Symbol |
Name |
Detection function |
|---|---|---|---|
➿ |
IBM AIX |
||
🐧 |
ALT Linux |
||
⤻ |
Amazon Linux |
||
🤖 |
Android |
||
🎗️ |
Arch Linux |
||
⛑️ |
Buildroot |
||
⌬ |
CachyOS |
||
💠 |
CentOS |
||
꩜ |
CloudLinux OS |
||
Ͼ |
Cygwin |
||
🌀 |
Debian |
||
🪰 |
DragonFly BSD |
||
🐽 |
Exherbo Linux |
||
🎩 |
Fedora |
||
😈 |
FreeBSD |
||
🗜️ |
Gentoo Linux |
||
🐃 |
Guix System |
||
🍂 |
Haiku |
||
🐃 |
GNU/Hurd |
||
🤹 |
IBM PowerKVM |
||
🔥 |
illumos |
||
🤹 |
KVM for IBM z Systems |
||
🌿 |
Linux Mint |
||
🍎 |
macOS |
||
⍥ |
Mageia |
||
💫 |
Mandriva Linux |
||
🌘 |
MidnightBSD |
||
🚩 |
NetBSD |
||
|
Nobara |
||
🐡 |
OpenBSD |
||
🦎 |
openSUSE |
||
🦴 |
Oracle Linux |
||
∥ |
Parallels |
||
🍓 |
Pidora |
||
🍓 |
Raspbian |
||
🎩 |
RedHat Enterprise Linux |
||
⛰️ |
Rocky Linux |
||
⚛️ |
Scientific Linux |
||
🚬 |
Slackware |
||
🦎 |
SUSE Linux Enterprise Server |
||
🌞 |
Solaris |
||
☀️ |
SunOS |
||
↻ |
openSUSE Tumbleweed |
||
🤵 |
Tuxedo OS |
||
🎯 |
Ubuntu |
||
🌊 |
Ultramarine |
||
🪟 |
Windows |
||
⊞ |
Windows Subsystem for Linux v1 |
||
⊞ |
Windows Subsystem for Linux v2 |
||
Ⓧ |
XenServer |
Hint
The UNKNOWN_PLATFORM trait represents an unrecognized
platform. It is not included in the ALL_PLATFORMS group,
and will be returned by current_platform() if the current
platform is not recognized.
Groups of platforms¶
All platform groups¶
Icon |
Symbol |
Description |
||
|---|---|---|---|---|
⚙️ |
All platforms |
|||
🪟 |
All Windows |
⬥ |
||
🅱️+ |
All BSD |
⬥ |
||
🅱️ |
All BSD excluding macOS |
|||
🐧 |
Linux distributions |
⬥ |
||
≚ |
Linux compatibility layers |
⬥ |
||
🐧+ |
All Linux & compatibility layers |
|||
🅟 |
Other POSIX-compliant platforms |
⬥ |
||
𝐕 |
AT&T System Five |
⬥ |
||
⨷ |
All Unix |
|||
≛ |
Unix compatibility layers |
⬥ |
||
⨂ |
All Unix excluding macOS |
Hint
Canonical groups are non-overlapping groups that together cover all recognized traits. They are marked with a ⬥ icon in the table above.
Other groups are provided for convenience, but overlap with each other or with canonical groups.
Canonical groups¶
All platforms are distributed in groups that are guaranteed to be non-overlapping.
Here is the canonical groups and all platforms, visualized as a Sankey diagram:
---
config:
sankey:
height: 800
showValues: false
width: 800
---
sankey-beta
ALL_PLATFORMS,LINUX,34
ALL_PLATFORMS,BSD,7
ALL_PLATFORMS,SYSTEM_V,3
ALL_PLATFORMS,OTHER_POSIX,2
ALL_PLATFORMS,LINUX_LAYERS,2
ALL_PLATFORMS,UNIX_LAYERS,1
ALL_PLATFORMS,ALL_WINDOWS,1
LINUX,ALTLINUX,1
LINUX,AMZN,1
LINUX,ANDROID,1
LINUX,ARCH,1
LINUX,BUILDROOT,1
LINUX,CACHYOS,1
LINUX,CENTOS,1
LINUX,CLOUDLINUX,1
LINUX,DEBIAN,1
LINUX,EXHERBO,1
LINUX,FEDORA,1
LINUX,GENTOO,1
LINUX,GUIX,1
LINUX,IBM_POWERKVM,1
LINUX,KVMIBM,1
LINUX,LINUXMINT,1
LINUX,MAGEIA,1
LINUX,MANDRIVA,1
LINUX,NOBARA,1
LINUX,OPENSUSE,1
LINUX,ORACLE,1
LINUX,PARALLELS,1
LINUX,PIDORA,1
LINUX,RASPBIAN,1
LINUX,RHEL,1
LINUX,ROCKY,1
LINUX,SCIENTIFIC,1
LINUX,SLACKWARE,1
LINUX,SLES,1
LINUX,TUMBLEWEED,1
LINUX,TUXEDO,1
LINUX,UBUNTU,1
LINUX,ULTRAMARINE,1
LINUX,XENSERVER,1
BSD,DRAGONFLY_BSD,1
BSD,FREEBSD,1
BSD,MACOS,1
BSD,MIDNIGHTBSD,1
BSD,NETBSD,1
BSD,OPENBSD,1
BSD,SUNOS,1
SYSTEM_V,AIX,1
SYSTEM_V,ILLUMOS,1
SYSTEM_V,SOLARIS,1
OTHER_POSIX,HAIKU,1
OTHER_POSIX,HURD,1
LINUX_LAYERS,WSL1,1
LINUX_LAYERS,WSL2,1
UNIX_LAYERS,CYGWIN,1
ALL_WINDOWS,WINDOWS,1
And the same groups visualized as a mindmap:
---
config:
mindmap:
padding: 5
---
mindmap
((⚙️ ALL_PLATFORMS))
)≛ UNIX_LAYERS(
(Ͼ CYGWIN)
)𝐕 SYSTEM_V(
(➿ AIX)
(🔥 ILLUMOS)
(🌞 SOLARIS)
)🅟 OTHER_POSIX(
(🍂 HAIKU)
(🐃 HURD)
)≚ LINUX_LAYERS(
(⊞ WSL1)
(⊞ WSL2)
)🐧 LINUX(
(🐧 ALTLINUX)
(⤻ AMZN)
(🤖 ANDROID)
(🎗️ ARCH)
(⛑️ BUILDROOT)
(⌬ CACHYOS)
(💠 CENTOS)
(꩜ CLOUDLINUX)
(🌀 DEBIAN)
(🐽 EXHERBO)
(🎩 FEDORA)
(🗜️ GENTOO)
(🐃 GUIX)
(🤹 IBM_POWERKVM)
(🤹 KVMIBM)
(🌿 LINUXMINT)
(⍥ MAGEIA)
(💫 MANDRIVA)
( NOBARA)
(🦎 OPENSUSE)
(🦴 ORACLE)
(∥ PARALLELS)
(🍓 PIDORA)
(🍓 RASPBIAN)
(🎩 RHEL)
(⛰️ ROCKY)
(⚛️ SCIENTIFIC)
(🚬 SLACKWARE)
(🦎 SLES)
(↻ TUMBLEWEED)
(🤵 TUXEDO)
(🎯 UBUNTU)
(🌊 ULTRAMARINE)
(Ⓧ XENSERVER)
)🅱️+ BSD(
(🪰 DRAGONFLY_BSD)
(😈 FREEBSD)
(🍎 MACOS)
(🌘 MIDNIGHTBSD)
(🚩 NETBSD)
(🐡 OPENBSD)
(☀️ SUNOS)
)🪟 ALL_WINDOWS(
(🪟 WINDOWS)
Predefined platforms¶
Platform definitions and metadata.
Note
Default icons are inspired from Starship project: - https://starship.rs/config/#os - https://github.com/davidkna/starship/blob/e9faf17/.github/config-schema.json#L1221-L1269
Some icons, especially Linux distributions, have their own dedicated codepoints in NerdFonts.
- extra_platforms.platform_data.NOBARA = Platform(id='nobara', name='Nobara')¶
Note
Instead of using a loose Unicode icon for the Nobara OS, or just not adding any, we are using a NerdFont icon instead: (i.e. nf-linux-nobara / f380).
The side-effect of using a NerdFont character is it will only display correctly when using a supported font. Otherwise, it will appear as an unknown or invisible character depending on the fonts.
Todo
In the future, we may want to have two icons for each platform, one that is Unicode-based, the other that is NerdFont-based.
- extra_platforms.AIX = Platform(id='aix', name='IBM AIX')¶
ID:
aixName: IBM AIX
Icon: ➿
Reference: <https://ibm.com/products/aix/>_
Detection function:
is_aix()Pytest decorators:
skip_aix/unless_aixGroups (5):
ALL_PLATFORMS,ALL_TRAITS,SYSTEM_V⬥,UNIX,UNIX_WITHOUT_MACOS
- extra_platforms.ALTLINUX = Platform(id='altlinux', name='ALT Linux')¶
ID:
altlinuxName: ALT Linux
Icon: 🐧
Reference: <https://altlinux.org>_
Detection function:
is_altlinux()Pytest decorators:
skip_altlinux/unless_altlinuxGroups (6):
ALL_PLATFORMS,ALL_TRAITS,LINUX⬥,LINUX_LIKE,UNIX,UNIX_WITHOUT_MACOS
- extra_platforms.AMZN = Platform(id='amzn', name='Amazon Linux')¶
ID:
amznName: Amazon Linux
Icon: ⤻
Reference: <https://aws.amazon.com/amazon-linux-ami/>_
Detection function:
is_amzn()Pytest decorators:
skip_amzn/unless_amznGroups (6):
ALL_PLATFORMS,ALL_TRAITS,LINUX⬥,LINUX_LIKE,UNIX,UNIX_WITHOUT_MACOS
- extra_platforms.ANDROID = Platform(id='android', name='Android')¶
ID:
androidName: Android
Icon: 🤖
Reference: <https://android.com>_
Detection function:
is_android()Pytest decorators:
skip_android/unless_androidGroups (6):
ALL_PLATFORMS,ALL_TRAITS,LINUX⬥,LINUX_LIKE,UNIX,UNIX_WITHOUT_MACOS
- extra_platforms.ARCH = Platform(id='arch', name='Arch Linux')¶
ID:
archName: Arch Linux
Icon: 🎗️
Reference: <https://archlinux.org>_
Detection function:
is_arch()Pytest decorators:
skip_arch/unless_archGroups (6):
ALL_PLATFORMS,ALL_TRAITS,LINUX⬥,LINUX_LIKE,UNIX,UNIX_WITHOUT_MACOS
- extra_platforms.BUILDROOT = Platform(id='buildroot', name='Buildroot')¶
ID:
buildrootName: Buildroot
Icon: ⛑️
Reference: <https://buildroot.org>_
Detection function:
is_buildroot()Pytest decorators:
skip_buildroot/unless_buildrootGroups (6):
ALL_PLATFORMS,ALL_TRAITS,LINUX⬥,LINUX_LIKE,UNIX,UNIX_WITHOUT_MACOS
- extra_platforms.CACHYOS = Platform(id='cachyos', name='CachyOS')¶
ID:
cachyosName: CachyOS
Icon: ⌬
Reference: <https://cachyos.org>_
Detection function:
is_cachyos()Pytest decorators:
skip_cachyos/unless_cachyosGroups (6):
ALL_PLATFORMS,ALL_TRAITS,LINUX⬥,LINUX_LIKE,UNIX,UNIX_WITHOUT_MACOS
- extra_platforms.CENTOS = Platform(id='centos', name='CentOS')¶
ID:
centosName: CentOS
Icon: 💠
Reference: <https://centos.org>_
Detection function:
is_centos()Pytest decorators:
skip_centos/unless_centosGroups (6):
ALL_PLATFORMS,ALL_TRAITS,LINUX⬥,LINUX_LIKE,UNIX,UNIX_WITHOUT_MACOS
- extra_platforms.CLOUDLINUX = Platform(id='cloudlinux', name='CloudLinux OS')¶
ID:
cloudlinuxName: CloudLinux OS
Icon: ꩜
Reference: <https://cloudlinux.com>_
Detection function:
is_cloudlinux()Pytest decorators:
skip_cloudlinux/unless_cloudlinuxGroups (6):
ALL_PLATFORMS,ALL_TRAITS,LINUX⬥,LINUX_LIKE,UNIX,UNIX_WITHOUT_MACOS
- extra_platforms.CYGWIN = Platform(id='cygwin', name='Cygwin')¶
ID:
cygwinName: Cygwin
Icon: Ͼ
Reference: <https://cygwin.com>_
Detection function:
is_cygwin()Pytest decorators:
skip_cygwin/unless_cygwinGroups (5):
ALL_PLATFORMS,ALL_TRAITS,UNIX,UNIX_LAYERS⬥,UNIX_WITHOUT_MACOS
- extra_platforms.DEBIAN = Platform(id='debian', name='Debian')¶
ID:
debianName: Debian
Icon: 🌀
Reference: <https://debian.org>_
Detection function:
is_debian()Pytest decorators:
skip_debian/unless_debianGroups (6):
ALL_PLATFORMS,ALL_TRAITS,LINUX⬥,LINUX_LIKE,UNIX,UNIX_WITHOUT_MACOS
- extra_platforms.DRAGONFLY_BSD = Platform(id='dragonfly_bsd', name='DragonFly BSD')¶
ID:
dragonfly_bsdName: DragonFly BSD
Icon: 🪰
Reference: <https://www.dragonflybsd.org>_
Detection function:
is_dragonfly_bsd()Pytest decorators:
skip_dragonfly_bsd/unless_dragonfly_bsdGroups (6):
ALL_PLATFORMS,ALL_TRAITS,BSD⬥,BSD_WITHOUT_MACOS,UNIX,UNIX_WITHOUT_MACOS
- extra_platforms.EXHERBO = Platform(id='exherbo', name='Exherbo Linux')¶
ID:
exherboName: Exherbo Linux
Icon: 🐽
Reference: <https://exherbolinux.org>_
Detection function:
is_exherbo()Pytest decorators:
skip_exherbo/unless_exherboGroups (6):
ALL_PLATFORMS,ALL_TRAITS,LINUX⬥,LINUX_LIKE,UNIX,UNIX_WITHOUT_MACOS
- extra_platforms.FEDORA = Platform(id='fedora', name='Fedora')¶
ID:
fedoraName: Fedora
Icon: 🎩
Reference: <https://fedoraproject.org>_
Detection function:
is_fedora()Pytest decorators:
skip_fedora/unless_fedoraGroups (6):
ALL_PLATFORMS,ALL_TRAITS,LINUX⬥,LINUX_LIKE,UNIX,UNIX_WITHOUT_MACOS
- extra_platforms.FREEBSD = Platform(id='freebsd', name='FreeBSD')¶
ID:
freebsdName: FreeBSD
Icon: 😈
Reference: <https://freebsd.org>_
Detection function:
is_freebsd()Pytest decorators:
skip_freebsd/unless_freebsdGroups (6):
ALL_PLATFORMS,ALL_TRAITS,BSD⬥,BSD_WITHOUT_MACOS,UNIX,UNIX_WITHOUT_MACOS
- extra_platforms.GENTOO = Platform(id='gentoo', name='Gentoo Linux')¶
ID:
gentooName: Gentoo Linux
Icon: 🗜️
Reference: <https://gentoo.org>_
Detection function:
is_gentoo()Pytest decorators:
skip_gentoo/unless_gentooGroups (6):
ALL_PLATFORMS,ALL_TRAITS,LINUX⬥,LINUX_LIKE,UNIX,UNIX_WITHOUT_MACOS
- extra_platforms.GUIX = Platform(id='guix', name='Guix System')¶
ID:
guixName: Guix System
Icon: 🐃
Reference: <https://guix.gnu.org>_
Detection function:
is_guix()Pytest decorators:
skip_guix/unless_guixGroups (6):
ALL_PLATFORMS,ALL_TRAITS,LINUX⬥,LINUX_LIKE,UNIX,UNIX_WITHOUT_MACOS
- extra_platforms.HAIKU = Platform(id='haiku', name='Haiku')¶
ID:
haikuName: Haiku
Icon: 🍂
Reference: <https://www.haiku-os.org>_
Detection function:
is_haiku()Pytest decorators:
skip_haiku/unless_haikuGroups (5):
ALL_PLATFORMS,ALL_TRAITS,OTHER_POSIX⬥,UNIX,UNIX_WITHOUT_MACOS
- extra_platforms.HURD = Platform(id='hurd', name='GNU/Hurd')¶
ID:
hurdName: GNU/Hurd
Icon: 🐃
Reference: <https://gnu.org/software/hurd/>_
Detection function:
is_hurd()Pytest decorators:
skip_hurd/unless_hurdGroups (5):
ALL_PLATFORMS,ALL_TRAITS,OTHER_POSIX⬥,UNIX,UNIX_WITHOUT_MACOS
- extra_platforms.IBM_POWERKVM = Platform(id='ibm_powerkvm', name='IBM PowerKVM')¶
ID:
ibm_powerkvmName: IBM PowerKVM
Icon: 🤹
Reference: <https://ibm.com/mysupport/s/topic/0TO50000000QkyPGAS/>_
Detection function:
is_ibm_powerkvm()Pytest decorators:
skip_ibm_powerkvm/unless_ibm_powerkvmGroups (6):
ALL_PLATFORMS,ALL_TRAITS,LINUX⬥,LINUX_LIKE,UNIX,UNIX_WITHOUT_MACOS
- extra_platforms.ILLUMOS = Platform(id='illumos', name='illumos')¶
ID:
illumosName: illumos
Icon: 🔥
Reference: <https://illumos.org>_
Detection function:
is_illumos()Pytest decorators:
skip_illumos/unless_illumosGroups (5):
ALL_PLATFORMS,ALL_TRAITS,SYSTEM_V⬥,UNIX,UNIX_WITHOUT_MACOS
- extra_platforms.KVMIBM = Platform(id='kvmibm', name='KVM for IBM z Systems')¶
ID:
kvmibmName: KVM for IBM z Systems
Icon: 🤹
Reference: <https://ibm.com/products/kvm/>_
Detection function:
is_kvmibm()Pytest decorators:
skip_kvmibm/unless_kvmibmGroups (6):
ALL_PLATFORMS,ALL_TRAITS,LINUX⬥,LINUX_LIKE,UNIX,UNIX_WITHOUT_MACOS
- extra_platforms.LINUXMINT = Platform(id='linuxmint', name='Linux Mint')¶
ID:
linuxmintName: Linux Mint
Icon: 🌿
Reference: <https://linuxmint.com>_
Detection function:
is_linuxmint()Pytest decorators:
skip_linuxmint/unless_linuxmintGroups (6):
ALL_PLATFORMS,ALL_TRAITS,LINUX⬥,LINUX_LIKE,UNIX,UNIX_WITHOUT_MACOS
- extra_platforms.MACOS = Platform(id='macos', name='macOS')¶
ID:
macosName: macOS
Icon: 🍎
Reference: <https://apple.com/macos/>_
Detection function:
is_macos()Pytest decorators:
skip_macos/unless_macosGroups (4):
ALL_PLATFORMS,ALL_TRAITS,BSD⬥,UNIX
- extra_platforms.MAGEIA = Platform(id='mageia', name='Mageia')¶
ID:
mageiaName: Mageia
Icon: ⍥
Reference: <https://mageia.org>_
Detection function:
is_mageia()Pytest decorators:
skip_mageia/unless_mageiaGroups (6):
ALL_PLATFORMS,ALL_TRAITS,LINUX⬥,LINUX_LIKE,UNIX,UNIX_WITHOUT_MACOS
- extra_platforms.MANDRIVA = Platform(id='mandriva', name='Mandriva Linux')¶
ID:
mandrivaName: Mandriva Linux
Icon: 💫
Reference: <https://web.archive.org/web/20150522203942/https://mandriva.com/en/mbs/>_
Detection function:
is_mandriva()Pytest decorators:
skip_mandriva/unless_mandrivaGroups (6):
ALL_PLATFORMS,ALL_TRAITS,LINUX⬥,LINUX_LIKE,UNIX,UNIX_WITHOUT_MACOS
- extra_platforms.MIDNIGHTBSD = Platform(id='midnightbsd', name='MidnightBSD')¶
ID:
midnightbsdName: MidnightBSD
Icon: 🌘
Reference: <https://midnightbsd.org>_
Detection function:
is_midnightbsd()Pytest decorators:
skip_midnightbsd/unless_midnightbsdGroups (6):
ALL_PLATFORMS,ALL_TRAITS,BSD⬥,BSD_WITHOUT_MACOS,UNIX,UNIX_WITHOUT_MACOS
- extra_platforms.NETBSD = Platform(id='netbsd', name='NetBSD')¶
ID:
netbsdName: NetBSD
Icon: 🚩
Reference: <https://netbsd.org>_
Detection function:
is_netbsd()Pytest decorators:
skip_netbsd/unless_netbsdGroups (6):
ALL_PLATFORMS,ALL_TRAITS,BSD⬥,BSD_WITHOUT_MACOS,UNIX,UNIX_WITHOUT_MACOS
- extra_platforms.NOBARA = Platform(id='nobara', name='Nobara')¶
Note
Instead of using a loose Unicode icon for the Nobara OS, or just not adding any, we are using a NerdFont icon instead: (i.e. nf-linux-nobara / f380).
The side-effect of using a NerdFont character is it will only display correctly when using a supported font. Otherwise, it will appear as an unknown or invisible character depending on the fonts.
Todo
In the future, we may want to have two icons for each platform, one that is Unicode-based, the other that is NerdFont-based.
ID:
nobaraName: Nobara
Icon:
Reference: <https://nobaraproject.org>_
Detection function:
is_nobara()Pytest decorators:
skip_nobara/unless_nobaraGroups (6):
ALL_PLATFORMS,ALL_TRAITS,LINUX⬥,LINUX_LIKE,UNIX,UNIX_WITHOUT_MACOS
- extra_platforms.OPENBSD = Platform(id='openbsd', name='OpenBSD')¶
ID:
openbsdName: OpenBSD
Icon: 🐡
Reference: <https://openbsd.org>_
Detection function:
is_openbsd()Pytest decorators:
skip_openbsd/unless_openbsdGroups (6):
ALL_PLATFORMS,ALL_TRAITS,BSD⬥,BSD_WITHOUT_MACOS,UNIX,UNIX_WITHOUT_MACOS
- extra_platforms.OPENSUSE = Platform(id='opensuse', name='openSUSE')¶
ID:
opensuseName: openSUSE
Icon: 🦎
Reference: <https://opensuse.org>_
Detection function:
is_opensuse()Pytest decorators:
skip_opensuse/unless_opensuseGroups (6):
ALL_PLATFORMS,ALL_TRAITS,LINUX⬥,LINUX_LIKE,UNIX,UNIX_WITHOUT_MACOS
- extra_platforms.ORACLE = Platform(id='oracle', name='Oracle Linux')¶
ID:
oracleName: Oracle Linux
Icon: 🦴
Reference: <https://oracle.com/linux/>_
Detection function:
is_oracle()Pytest decorators:
skip_oracle/unless_oracleGroups (6):
ALL_PLATFORMS,ALL_TRAITS,LINUX⬥,LINUX_LIKE,UNIX,UNIX_WITHOUT_MACOS
- extra_platforms.PARALLELS = Platform(id='parallels', name='Parallels')¶
ID:
parallelsName: Parallels
Icon: ∥
Reference: <https://parallels.com>_
Detection function:
is_parallels()Pytest decorators:
skip_parallels/unless_parallelsGroups (6):
ALL_PLATFORMS,ALL_TRAITS,LINUX⬥,LINUX_LIKE,UNIX,UNIX_WITHOUT_MACOS
- extra_platforms.PIDORA = Platform(id='pidora', name='Pidora')¶
ID:
pidoraName: Pidora
Icon: 🍓
Reference: <https://web.archive.org/web/20200227132047/http://pidora.ca:80/>_
Detection function:
is_pidora()Pytest decorators:
skip_pidora/unless_pidoraGroups (6):
ALL_PLATFORMS,ALL_TRAITS,LINUX⬥,LINUX_LIKE,UNIX,UNIX_WITHOUT_MACOS
- extra_platforms.RASPBIAN = Platform(id='raspbian', name='Raspbian')¶
ID:
raspbianName: Raspbian
Icon: 🍓
Reference: <https://raspberrypi.com/software/>_
Detection function:
is_raspbian()Pytest decorators:
skip_raspbian/unless_raspbianGroups (6):
ALL_PLATFORMS,ALL_TRAITS,LINUX⬥,LINUX_LIKE,UNIX,UNIX_WITHOUT_MACOS
- extra_platforms.RHEL = Platform(id='rhel', name='RedHat Enterprise Linux')¶
ID:
rhelName: RedHat Enterprise Linux
Icon: 🎩
Reference: <https://redhat.com/rhel/>_
Detection function:
is_rhel()Pytest decorators:
skip_rhel/unless_rhelGroups (6):
ALL_PLATFORMS,ALL_TRAITS,LINUX⬥,LINUX_LIKE,UNIX,UNIX_WITHOUT_MACOS
- extra_platforms.ROCKY = Platform(id='rocky', name='Rocky Linux')¶
ID:
rockyName: Rocky Linux
Icon: ⛰️
Reference: <https://rockylinux.org>_
Detection function:
is_rocky()Pytest decorators:
skip_rocky/unless_rockyGroups (6):
ALL_PLATFORMS,ALL_TRAITS,LINUX⬥,LINUX_LIKE,UNIX,UNIX_WITHOUT_MACOS
- extra_platforms.SCIENTIFIC = Platform(id='scientific', name='Scientific Linux')¶
ID:
scientificName: Scientific Linux
Icon: ⚛️
Reference: <https://scientificlinux.org>_
Detection function:
is_scientific()Pytest decorators:
skip_scientific/unless_scientificGroups (6):
ALL_PLATFORMS,ALL_TRAITS,LINUX⬥,LINUX_LIKE,UNIX,UNIX_WITHOUT_MACOS
- extra_platforms.SLACKWARE = Platform(id='slackware', name='Slackware')¶
ID:
slackwareName: Slackware
Icon: 🚬
Reference: <https://www.slackware.com>_
Detection function:
is_slackware()Pytest decorators:
skip_slackware/unless_slackwareGroups (6):
ALL_PLATFORMS,ALL_TRAITS,LINUX⬥,LINUX_LIKE,UNIX,UNIX_WITHOUT_MACOS
- extra_platforms.SLES = Platform(id='sles', name='SUSE Linux Enterprise Server')¶
ID:
slesName: SUSE Linux Enterprise Server
Icon: 🦎
Reference: <https://suse.com/products/server/>_
Detection function:
is_sles()Pytest decorators:
skip_sles/unless_slesGroups (6):
ALL_PLATFORMS,ALL_TRAITS,LINUX⬥,LINUX_LIKE,UNIX,UNIX_WITHOUT_MACOS
- extra_platforms.SOLARIS = Platform(id='solaris', name='Solaris')¶
ID:
solarisName: Solaris
Icon: 🌞
Reference: <https://oracle.com/solaris>_
Detection function:
is_solaris()Pytest decorators:
skip_solaris/unless_solarisGroups (5):
ALL_PLATFORMS,ALL_TRAITS,SYSTEM_V⬥,UNIX,UNIX_WITHOUT_MACOS
- extra_platforms.SUNOS = Platform(id='sunos', name='SunOS')¶
ID:
sunosName: SunOS
Icon: ☀️
Reference: <https://wikipedia.org/wiki/SunOS>_
Detection function:
is_sunos()Pytest decorators:
skip_sunos/unless_sunosGroups (6):
ALL_PLATFORMS,ALL_TRAITS,BSD⬥,BSD_WITHOUT_MACOS,UNIX,UNIX_WITHOUT_MACOS
- extra_platforms.TUMBLEWEED = Platform(id='tumbleweed', name='openSUSE Tumbleweed')¶
ID:
tumbleweedName: openSUSE Tumbleweed
Icon: ↻
Reference: <https://get.opensuse.org/tumbleweed/>_
Detection function:
is_tumbleweed()Pytest decorators:
skip_tumbleweed/unless_tumbleweedGroups (6):
ALL_PLATFORMS,ALL_TRAITS,LINUX⬥,LINUX_LIKE,UNIX,UNIX_WITHOUT_MACOS
- extra_platforms.TUXEDO = Platform(id='tuxedo', name='Tuxedo OS')¶
ID:
tuxedoName: Tuxedo OS
Icon: 🤵
Reference: <https://tuxedocomputers.com/os>_
Detection function:
is_tuxedo()Pytest decorators:
skip_tuxedo/unless_tuxedoGroups (6):
ALL_PLATFORMS,ALL_TRAITS,LINUX⬥,LINUX_LIKE,UNIX,UNIX_WITHOUT_MACOS
- extra_platforms.UBUNTU = Platform(id='ubuntu', name='Ubuntu')¶
ID:
ubuntuName: Ubuntu
Icon: 🎯
Reference: <https://ubuntu.com>_
Detection function:
is_ubuntu()Pytest decorators:
skip_ubuntu/unless_ubuntuGroups (6):
ALL_PLATFORMS,ALL_TRAITS,LINUX⬥,LINUX_LIKE,UNIX,UNIX_WITHOUT_MACOS
- extra_platforms.ULTRAMARINE = Platform(id='ultramarine', name='Ultramarine')¶
ID:
ultramarineName: Ultramarine
Icon: 🌊
Reference: <https://ultramarine-linux.org>_
Detection function:
is_ultramarine()Pytest decorators:
skip_ultramarine/unless_ultramarineGroups (6):
ALL_PLATFORMS,ALL_TRAITS,LINUX⬥,LINUX_LIKE,UNIX,UNIX_WITHOUT_MACOS
- extra_platforms.UNKNOWN_PLATFORM = Platform(id='unknown_platform', name='Unknown platform')¶
ID:
unknown_platformName: Unknown platform
Icon: ❓
Reference: <https://en.wikipedia.org/wiki/Computer_platform>_
Detection function:
is_unknown_platform()Pytest decorators:
skip_unknown_platform/unless_unknown_platformGroups (2):
ALL_TRAITS,UNKNOWN⬥
- extra_platforms.WINDOWS = Platform(id='windows', name='Windows')¶
ID:
windowsName: Windows
Icon: 🪟
Reference: <https://windows.com>_
Detection function:
is_windows()Pytest decorators:
skip_windows/unless_windowsGroups (3):
ALL_PLATFORMS,ALL_TRAITS,ALL_WINDOWS⬥
- extra_platforms.WSL1 = Platform(id='wsl1', name='Windows Subsystem for Linux v1')¶
ID:
wsl1Name: Windows Subsystem for Linux v1
Icon: ⊞
Reference: <https://learn.microsoft.com/windows/wsl>_
Detection function:
is_wsl1()Pytest decorators:
skip_wsl1/unless_wsl1Groups (6):
ALL_PLATFORMS,ALL_TRAITS,LINUX_LAYERS⬥,LINUX_LIKE,UNIX,UNIX_WITHOUT_MACOS
- extra_platforms.WSL2 = Platform(id='wsl2', name='Windows Subsystem for Linux v2')¶
ID:
wsl2Name: Windows Subsystem for Linux v2
Icon: ⊞
Reference: <https://learn.microsoft.com/windows/wsl>_
Detection function:
is_wsl2()Pytest decorators:
skip_wsl2/unless_wsl2Groups (6):
ALL_PLATFORMS,ALL_TRAITS,LINUX_LAYERS⬥,LINUX_LIKE,UNIX,UNIX_WITHOUT_MACOS
- extra_platforms.XENSERVER = Platform(id='xenserver', name='XenServer')¶
ID:
xenserverName: XenServer
Icon: Ⓧ
Reference: <https://xenproject.org>_
Detection function:
is_xenserver()Pytest decorators:
skip_xenserver/unless_xenserverGroups (6):
ALL_PLATFORMS,ALL_TRAITS,LINUX⬥,LINUX_LIKE,UNIX,UNIX_WITHOUT_MACOS
Deprecated platforms¶
- extra_platforms.UNKNOWN_LINUX(*args, **kwargs) = Platform(id='unknown_platform', name='Unknown platform')¶
Alias
UNKNOWN_LINUX→UNKNOWN_PLATFORM.Deprecated since version 7.0.0: Use
UNKNOWN_PLATFORMinstead.