Devel::CheckOS::Families - what OS "families" are supported "out of the box" by Devel::CheckOS and Devel::AssertOS?
Computing platforms fall into several categories. For example, there is the category of Unix-a-likes. Each of these categories is a "family". A platform can fall into several families.
Broadly speaking, these are platforms where:
That is, there are seperate read/write/execute permissions for file owner, group and anyone. This implies the presence of multiple user accounts and user groups. Permissions may not be supported on all filesystems.
This includes both ordinary Linux and Android. Plain old Linux will match 'Linux'. Android will match both that and 'Android'.
Up until version 1.84 this wasn't a family, and would match any platform which claimed to be Debian via lsb_release -i or on which a file called /etc/debian_version existed. That meant that as well as matching real Debian, it would also match Ubuntu, Raspbian, and so on. As of version 1.85 Linux::Debian has become a family of all the Debian-based Linuxes. If you want to test which particular family member you're on then look at list_family_members("Linux::Debian") to see what's available.
lsb_release -i
/etc/debian_version
Linux::Debian
list_family_members("Linux::Debian")
NB the difference between Linux::RealDebian (which uses lsb_release for identification) and Linux::UnknownDebianLike (which uses the existence of /etc/debian_version for identification). In particular beware that some *very* old Debians don't have lsb_release available and so will be detected as Linux::UnknownDebianLike.
Linux::RealDebian
lsb_release
Linux::UnknownDebianLike
This includes any version of Windows and also includes things like Cygwin which run on top of it.
These include any OS written by, respectively, DEC, Sun, and Apple. They exist because, while, eg, Mac OS Classic and Mac OS X are very different platforms, they do support some unique features - such as AppleScript.
This is for all real-time OSes. So far, it only includes QNX.
OSes which use EBCDIC instead of ASCII.
Copyright 2008 - 2010 David Cantrell <david@cantrell.org.uk>
This documentation is free-as-in-speech. It may be used, distributed and modified under the terms of the Creative Commons Attribution-Share Alike 2.0 UK: England & Wales License, whose text you may read at http://creativecommons.org/licenses/by-sa/2.0/uk/.
This documentation is also free-as-in-mason.
To install Devel::CheckOS, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Devel::CheckOS
CPAN shell
perl -MCPAN -e shell install Devel::CheckOS
For more information on module installation, please visit the detailed CPAN module installation guide.