[ Avaa Bypassed ]




Upload:

Command:

www-data@18.188.180.227: ~ $
# Pardus Linux
Pardus Linux			1.0			pardus-linux	1.0	`cat /etc/pardus-release 2>/dev/null` =~ /Pardus\s+1.0\s+/i
Pardus Linux			2007                   	pardus-linux	2007	`cat /etc/pardus-release 2>/dev/null` =~ /Pardus\s+2007\s+/i
Pardus Linux			2007.1 Felis chaus	pardus-linux	2007.1	`cat /etc/pardus-release 2>/dev/null` =~ /Pardus\s+2007.1\s+/i
Pardus Linux			2007.2 Caracac caracal	pardus-linux	2007.2	`cat /etc/pardus-release 2>/dev/null` =~ /Pardus\s+2007.2\s+/i
Pardus Linux			2007.3 Lynx lynx	pardus-linux	2007.3	`cat /etc/pardus-release 2>/dev/null` =~ /Pardus\s+2007.3\s+/i
Pardus Linux			2008			pardus-linux	2008	`cat /etc/pardus-release 2>/dev/null` =~ /Pardus\s+2008\s+/i
Pardus Linux			2008.1 Hyaena hyaena	pardus-linux	2008.1	`cat /etc/pardus-release 2>/dev/null` =~ /Pardus\s+2008.1\s+/i
Pardus Linux			2008.2 Canis aureus	pardus-linux	2008.2	`cat /etc/pardus-release 2>/dev/null` =~ /Pardus\s+2008.2\s+/i
Pardus Linux			2009			pardus-linux	2009	`cat /etc/pardus-release 2>/dev/null` =~ /Pardus\s+2009\s+/i
Pardus Linux			2009.1 Anthropoides virgo	pardus-linux	2009.1	`cat /etc/pardus-release 2>/dev/null` =~ /Pardus\s+2009.1\s+/i
Pardus Linux			2009.2 Geronticus eremita	pardus-linux	2009.2	`cat /etc/pardus-release 2>/dev/null` =~ /Pardus\s+2009.2\s+/i
Pardus Linux			2011			pardus-linux	2011	`cat /etc/pardus-release 2>/dev/null` =~ /Pardus\s+2011\s+/i
Pardus Linux			2011.1 Dama Dama	pardus-linux	2011	`cat /etc/pardus-release 2>/dev/null` =~ /Pardus\s+2011\s+/i
Pardus Linux			2011.2 Cervus elaptus	pardus-linux	2011	`cat /etc/pardus-release 2>/dev/null` =~ /Pardus\s+2011\s+/i

# Solaris forks
SmartOS				$2	solaris		$2	$uname =~ /SunOS.*\s5\.(\S+)\s(joyent_\d{8}T\d{6}Z)/i

# Sun Solaris
Sun Solaris			2.5.1	solaris		2.5.1	$uname =~ /SunOS.*\s5\.5\.1\s/i
Sun Solaris			2.6	solaris		2.6	$uname =~ /SunOS.*\s5\.6\s/i
Sun Solaris			$1	solaris		$1	$uname =~ /SunOS.*\s5\.(\S+)\s/i

# Caldera clones
Lycoris Desktop/LX		1.0	open-linux	3.1e	$etc_issue =~ /Lycoris Desktop/i

# Caldera's Linux
Caldera OpenLinux eServer	2.3	open-linux	2.3e	$etc_issue =~ /OpenLinux.*eServer.*\n.*\s2\.3\s/i
Caldera OpenLinux		2.3	open-linux	2.3	$etc_issue =~ /OpenLinux.*\n.*\s2\.3\s/i
Caldera OpenLinux		2.4	open-linux	2.4	$etc_issue =~ /OpenLinux.*\n.*\s2\.4\s/i
Caldera OpenLinux		2.5	open-linux	2.5	$etc_issue =~ /OpenLinux.*\n.*\s2\.5\s/i || $etc_issue =~ /Caldera.*2000/i
Caldera OpenLinux		3.1	open-linux	3.1e	$etc_issue =~ /OpenLinux.*3\.1/i
Caldera OpenLinux		3.2	open-linux	3.2e	$etc_issue =~ /OpenLinux.*3\.2/i

# Redhat enterprise clones
Asianux Server			$1	redhat-linux	$1+10.0	`cat /etc/asianux-release 2>/dev/null` =~ /Asianux\s+Server\s+(\d+)/i
Asianux				$1	redhat-linux	$1+10.0	`cat /etc/asianux-release 2>/dev/null` =~ /Asianux\s+release\s+(\d+\.\d+)/i
Whitebox Linux			$1	redhat-linux	10.0	`cat /etc/whitebox-release 2>/dev/null` =~ /White\s+Box\s+Enterprise\s+Linux\s+release\s+(\S+)/i
Tao Linux			$1	redhat-linux	10.0	`cat /etc/redhat-release 2>/dev/null` =~ /Tao\s+Linux\s+release\s+(\S+)/i
CentOS Linux			$1	redhat-linux	10.0	`cat /etc/centos-release /etc/redhat-release 2>/dev/null` =~ /CentOS\s+release\s+(\S+)/i && $1 < 4
CentOS Linux			$2	redhat-linux	$2+8.0	`cat /etc/centos-release /etc/redhat-release 2>/dev/null` =~ /CentOS\s+(Linux\s+)?release\s+(\S+)/i && $2 >= 4
CentOS Stream Linux		$2	redhat-linux	$2+8.0	`cat /etc/centos-release /etc/redhat-release 2>/dev/null` =~ /CentOS\s+(Stream\s+)?release\s+(\S+)/i && $2 >= 4
Springdale Linux		$2	redhat-linux	$2+8.0	`cat /etc/centos-release /etc/redhat-release 2>/dev/null` =~ /Springdale\s+(Linux\s+)?release\s+(\S+)/i && $2 >= 4
Virtuozzo Linux			$2	redhat-linux	$2+8.0	`cat /etc/centos-release /etc/redhat-release 2>/dev/null` =~ /Springdale\s+(Linux\s+)?release\s+(\S+)/i && $2 >= 4
Scientific Linux		$1	redhat-linux	10.0	`cat /etc/redhat-release 2>/dev/null` =~ /Scientific\s+Linux.*\s+release\s+(\S+)/i && $1 < 4
Scientific Linux		$1	redhat-linux	$1+8.0	`cat /etc/redhat-release 2>/dev/null` =~ /Scientific\s+Linux.*\s+release\s+([0-9\.]+)/i && $1 >= 4
Gralinux			$1	redhat-linux	$2+8.0	`cat /etc/redhtat-release 2>/dev/null` =~ /Gralinux\s+(ES|AS|WS)\s+release\s+(\d+)/i
NeoShine Linux			$1	redhat-linux	$1+10	`cat /etc/neoshine-release 2>/dev/null` =~ /NeoShine\s+Linux.*release\s+(\d+)/i
Endian Firewall Linux		$1	redhat-linux	$1+10.0	`cat /etc/endian-release 2>/dev/null` =~ /release\s+(\S+)/
Oracle Enterprise Linux		$1	redhat-linux	$1+8.0	`cat /etc/enterprise-release 2>/dev/null` =~ /Enterprise.*Linux\s+Enterprise\s+Linux\s+Server\s+release\s+(\d+)/i
Oracle Linux			$1	redhat-linux	$1+8.0	`cat /etc/oracle-release 2>/dev/null` =~ /Oracle\s+Linux\s+Server\s+.*?([0-9\.]+)/i
Oracle VM			$1	redhat-linux	$1+8.0	`cat /etc/ovs-release 2>/dev/null` =~ /Oracle.*VM\s+server\s+release\s+(\d+)/i
XenServer Linux			$1	redhat-linux	13.0	`cat /etc/redhat-release 2>/dev/null` =~ /XenServer\s+release\s+5\./
XCP-ng Linux				$1	redhat-linux	$2+8.0	`cat /etc/redhat-release 2>/dev/null` =~ /XCP-ng\s+release\s+([\d\.]+)/
MostlyLinux			$1	redhat-linux	$2+8.0	`cat /etc/redhat-release 2>/dev/null` =~ /MostlyLinux\s+Linux\s+release\s+(\d+)/
Cloudrouter Linux		$1	redhat-linux	15	`cat /etc/cloudrouter-release 2>/dev/null` =~ /CloudRouter\s+release\s+(\d+)\s+/
Sangoma Linux			$1	redhat-linux	$2+8.0	`cat /etc/sangoma-release 2>/dev/null` =~ /Sangoma\s+Linux\s+(\S+)/
Virtuozzo Linux			$1	redhat-linux	$2+8.0	`cat /etc/vzlinux-release 2>/dev/null` =~ /Virtuozzo\s+Linux\s+release\s+(\S+)/
Citrix Hypervisor		$1	redhat-linux	$2+8.0	`cat /etc/os-release 2>/dev/null` =~ /Citrix\s+Hypervisor\s+(\S+)/

# Redhat enterprise versions
Redhat Enterprise Linux			2.1AS	redhat-linux	7.3	`cat /etc/redhat-release 2>/dev/null` =~ /(Advanced\s+Server.*2\.1)|(AS.*2\.1)/i
Redhat Enterprise Linux			2.1ES	redhat-linux	7.3	`cat /etc/redhat-release 2>/dev/null` =~ /ES.*2\.1/
Redhat Enterprise Linux			2.1WS	redhat-linux	7.3	`cat /etc/redhat-release 2>/dev/null` =~ /WS.*2\.1/
Redhat Enterprise Linux			3.0AS	redhat-linux	10.0	`cat /etc/redhat-release 2>/dev/null` =~ /(3\.0AS)|(2\.9\.5AS)|(AS\s+release\s+3)/i
Redhat Enterprise Linux			"$2$1"	redhat-linux	$2 >= 4 ? $2+8.0 : 10.0	`cat /etc/redhat-release 2>/dev/null` =~ /(ES|AS|WS)\s+release\s+(\S+)/
Redhat Enterprise Linux			$3	redhat-linux	$3+8.0	`cat /etc/redhat-release 2>/dev/null` =~ /Red.*Hat\s+Enterprise\s+Linux(\s+(Server|Client|Workstation|Everything))?\s+release\s+([0-9\.]+)/i

# Redhat enterprise desktop
Redhat Linux Desktop			$1	redhat-linux	10.0	`cat /etc/redhat-release 2>/dev/null` =~ /Desktop\s+release\s+(\S+)/i || `cat /etc/redhat-release 2>/dev/null` =~ /ES\s+release\s+(\S+)/i

# Redhat clones
AlmaLinux				$1	redhat-linux	$1+8.0	`cat /etc/almalinux-release 2>/dev/null` =~ /AlmaLinux.*?([\d\.]+)/i || `cat /etc/redhat-release 2>/dev/null` =~ /AlmaLinux.*?([\d\.]+)/i
CloudLinux				$1	redhat-linux	$1+8.0	`cat /etc/cloudlinux-release 2>/dev/null` =~ /CloudLinux.*?([\d\.]+)/i || `cat /etc/redhat-release 2>/dev/null` =~ /CloudLinux.*?([\d\.]+)/i
Rocky Linux				$1	redhat-linux	$1+8.0	`cat /etc/rocky-release 2>/dev/null` =~ /Rocky.*?([\d\.]+)/i || `cat /etc/redhat-release 2>/dev/null` =~ /Rocky.*?([\d\.]+)/i
AlphaCore Linux			$1	redhat-linux	11.0	`cat /etc/alphacore-release 2>/dev/null` =~ /Alpha\s*Core\s+release\s+(\S+)\s/i
X/OS Linux				$1	redhat-linux	sprintf("%.1f", 9.0+$1)		`cat /etc/redhat-release /etc/fedora-release 2>/dev/null` =~ /X\/OS.*release\s(\S+)\s/i
Haansoft Linux			$1	redhat-linux	10.0	`cat /etc/Haansoft-release 2>/dev/null` =~ /Haansoft\s+Linux\s+OS\s+release\s+(\S+)/i
cAos Linux				$1	redhat-linux	sprintf("%.1f", 10.0+$1)	`cat /etc/caos-release 2>/dev/null` =~ /release\s+(\S+)/i
Wind River Linux		3.0	redhat-linux	18.0	`cat /etc/wrs-release 2>/dev/null` =~ /Wind\s+River\s+Linux\s+3\.0/
Wind River Linux		2.0	redhat-linux	16.0	`cat /etc/wrs-release 2>/dev/null` =~ /Wind\s+River\s+Linux\s+2\.0/

# Amazon Linux (1.x)
Amazon Linux			$1	redhat-linux	20.0	`cat /etc/system-release 2>/dev/null` =~ /Amazon\s+Linux.*\s(201[1-9])/

# Amazon Linux (2, approximately based on CentOS 7)
Amazon Linux			$1	redhat-linux	15.0	`cat /etc/system-release 2>/dev/null` =~ /Amazon\s+Linux\s+(2)\n/ || `cat /etc/system-release 2>/dev/null` =~ /Amazon\s+Linux\s+release\s+(2)\s/

# Free Redhat Linux and Fedora
Redhat Linux			$1	redhat-linux	$1	`cat /etc/redhat-release 2>/dev/null` =~ /red.*hat.*release\s+(\S+)/i && `cat /etc/redhat-release 2>/dev/null` !~ /[eE]nterprise|AS|ES|WS|[aA]dvanced/
Fedora Linux			$1	redhat-linux	sprintf("%.1f", 9.0+$1)		`cat /etc/redhat-release /etc/fedora-release 2>/dev/null` =~ /Fedora.*\s([0-9\.]+)\s/i || `cat /etc/redhat-release /etc/fedora-release 2>/dev/null` =~ /Fedora.*\sFC(\S+)\s/i

# Slackware clones
White Dwarf Linux		2.1.0	slackware-linux	8.1	`cat /tmp/wd/version 2>/dev/null` =~ /2\.1\.0/
Slamd64 Linux			$1	slackware-linux	11.1	`cat /etc/slamd64-version 2>/dev/null` =~ /\s([0-9\.]+)/

# Slackware Linux
Slackware Linux			$1	slackware-linux	$1	`cat /etc/slackware-version 2>/dev/null` =~ /Slackware ([0-9\.]+)/i

# Debian clones
Xandros Linux			2.0	debian-linux	3.0	$etc_issue =~ /Xandros.*\s2\.0/i
Xandros Linux			3.0	debian-linux	3.1	$etc_issue =~ /Xandros.*\s3\.0/i
Xandros Linux			$1	debian-linux	3.2	$etc_issue =~ /Xandros.*\s(4\.\d+)/i
APLINUX				1.3	debian-linux	3.1	$etc_issue =~ /APLINUX.*1\.3/i
BigBlock			$1	suse-linux	8.2	`cat /etc/bigblock-revision 2>/dev/null` =~ /Version:\s(1[0-9\.-]+)\s/i
BigBlock			$1	debian-linux	3.0	`cat /etc/bigblock-revision 2>/dev/null` =~ /Version:\s(2[0-9\.-]+)\s/i
Pop!OS				$1	debian-linux	13.0	$os_release =~ /Pop!OS\s+(22\.[0-9\.]+)/
Ubuntu Linux			$1	debian-linux	4.0	$etc_issue =~ /Ubuntu.*\sgutsy/i
Ubuntu Linux			$1	debian-linux	4.0	$etc_issue =~ /Ubuntu.*\s(7\.[0-9\.]+)\s/i
Ubuntu Linux			$1	debian-linux	4.0	$etc_issue =~ /Ubuntu.*\s(8\.[0-9\.]+)\s/i
Ubuntu Linux			$1	debian-linux	5.0	$etc_issue =~ /Ubuntu.*\s(9\.[0-9\.]+)\s/i
Ubuntu Linux			$1	debian-linux	5.0	$etc_issue =~ /Ubuntu.*\s(10\.[0-9\.]+)\s/i
Ubuntu Linux			$1	debian-linux	6.0	$etc_issue =~ /Ubuntu.*\s(11\.[0-9\.]+)\s/i || $etc_issue =~ /Ubuntu\s+natty/i
Ubuntu Linux			$1	debian-linux	7.0	$etc_issue =~ /Ubuntu.*\s(12\.[0-9\.]+)\s/i || $etc_issue =~ /Ubuntu\s+precise/i
Ubuntu Linux			$1	debian-linux	8.0	$os_release =~ /Ubuntu\s+(13\.[0-9\.]+)/ || $etc_issue =~ /Ubuntu.*\s(13\.[0-9\.]+)\s/i || $etc_issue =~ /Ubuntu\s+raring/i
Ubuntu Linux			$1	debian-linux	8.0	$os_release =~ /Ubuntu\s+(14\.[0-9\.]+)/ || $etc_issue =~ /Ubuntu.*\s(14\.[0-9\.]+)\s/i || $etc_issue =~ /Ubuntu\s+trusty/i
Ubuntu Linux			$1	debian-linux	8.0	$os_release =~ /Ubuntu\s+(15\.[0-9\.]+)/ || $etc_issue =~ /Ubuntu.*\s(15\.[0-9\.]+)\s/i || $etc_issue =~ /Ubuntu\s+vidid/i
Ubuntu Linux			$1	debian-linux	9.0	$os_release =~ /Ubuntu\s+(16\.[0-9\.]+)/ || $etc_issue =~ /Ubuntu.*\s(16\.[0-9\.]+)\s/i || $etc_issue =~ /Ubuntu\s+xenial/i
Ubuntu Linux			$1	debian-linux	9.0	$os_release =~ /Ubuntu\s+(17\.[0-9\.]+)/ || $etc_issue =~ /Ubuntu.*\s(17\.[0-9\.]+)\s/i
Ubuntu Linux			$1	debian-linux	9.0	$os_release =~ /Ubuntu\s+(18\.[0-9\.]+)/ || $etc_issue =~ /Ubuntu.*\s(18\.[0-9\.]+)\s/i || $etc_issue =~ /Ubuntu\s+bionic/i
Ubuntu Linux			$1	debian-linux	11.0	$os_release =~ /Ubuntu\s+(20\.[0-9\.]+)/ || $etc_issue =~ /Ubuntu.*\s(20\.[0-9\.]+)\s/i || $etc_issue =~ /Ubuntu\s+focal/i
Ubuntu Linux			$1	debian-linux	12.0	$os_release =~ /Ubuntu\s+(21\.[0-9\.]+)/ || $etc_issue =~ /Ubuntu.*\s(21\.[0-9\.]+)\s/i || $etc_issue =~ /Ubuntu\s+(hirsute|impish)/i
Ubuntu Linux			$1	debian-linux	13.0	$os_release =~ /Ubuntu\s+(22\.[0-9\.]+)/ || $etc_issue =~ /Ubuntu.*\s(22\.[0-9\.]+)\s/i || $etc_issue =~ /Ubuntu\s+jammy/i
Ubuntu Linux			$1	debian-linux	3.1	$etc_issue =~ /Ubuntu.*\s([0-9\.]+)\s/i
Mepis Linux				$1	debian-linux	$1	$etc_issue =~ /MEPIS/ && `cat /etc/debian_version 2>/dev/null` =~ /([0-9\.]+)/
Mepis Linux				$1	debian-linux	4.0	$etc_issue =~ /MEPIS/ && `cat /etc/debian_version 2>/dev/null` =~ /(stable)/
Devuan Linux			$1	debian-linux	8.0	$etc_issue =~ /Devuan/ && `cat /etc/devuan_version 2>/dev/null` =~ /^(jessie)/i
Devuan Linux			$1	debian-linux	9.0	$etc_issue =~ /Devuan/ && `cat /etc/devuan_version 2>/dev/null` =~ /^(ascii)/i
Devuan Linux			$1	debian-linux	10.0	$etc_issue =~ /Devuan/ && `cat /etc/devuan_version 2>/dev/null` =~ /^(beowulf)/i
Devuan Linux			$1	debian-linux	10.0	$etc_issue =~ /Devuan/ && `cat /etc/devuan_version 2>/dev/null` =~ /^(ceres)/i
Raspbian Linux			$1	debian-linux	$1	`cat /etc/os-release 2>/dev/null` =~ /Raspbian\s+GNU\/Linux\s+(\S+)/
Kali GNU/Linux Rolling	$1	debian-linux	$1+5.0	$etc_issue =~ /Kali/ && `cat /etc/os-release 2>/dev/null` =~ /VERSION=\"([0-9\.]+)\"/
Parrot OS				$1	debian-linux	$1+5.0	$etc_issue =~ /Parrot/ && `cat /etc/os-release 2>/dev/null` =~ /VERSION=\"([0-9\.]+).*\"/
Linux Lite				$1	debian-linux	$1+16.0	$etc_issue =~ /Linux\s+Lite\s+([0-9\.]+)/

# Linux Mint (Mint should be before Debian to avoid false-positive)
Linux Mint			6	debian-linux	5.0	`cat /etc/lsb-release 2>/dev/null | grep DISTRIB_DESCRIPTION` =~ /^DISTRIB_DESCRIPTION="Linux Mint 6 Felicia"/
Linux Mint			7	debian-linux	5.0	`cat /etc/lsb-release 2>/dev/null | grep DISTRIB_DESCRIPTION` =~ /^DISTRIB_DESCRIPTION="Linux Mint 7 Gloria"/
Linux Mint			8	debian-linux	6.0	`cat /etc/lsb-release 2>/dev/null | grep DISTRIB_DESCRIPTION` =~ /^DISTRIB_DESCRIPTION="Linux Mint 8 Helena"/
Linux Mint			9	debian-linux	6.0	`cat /etc/lsb-release 2>/dev/null | grep DISTRIB_DESCRIPTION` =~ /^DISTRIB_DESCRIPTION="Linux Mint 9 Isadora"/
Linux Mint			10	debian-linux	6.0	`cat /etc/lsb-release 2>/dev/null | grep DISTRIB_DESCRIPTION` =~ /^DISTRIB_DESCRIPTION="Linux Mint 10 Julia"/
Linux Mint			11	debian-linux	6.0	`cat /etc/lsb-release 2>/dev/null | grep DISTRIB_DESCRIPTION` =~ /^DISTRIB_DESCRIPTION="Linux Mint 11 Katya"/
Linux Mint			12	debian-linux	6.0	`cat /etc/lsb-release 2>/dev/null | grep DISTRIB_DESCRIPTION` =~ /^DISTRIB_DESCRIPTION="Linux Mint 12 Lisa"/
Linux Mint			13	debian-linux	6.0	`cat /etc/lsb-release 2>/dev/null | grep DISTRIB_DESCRIPTION` =~ /^DISTRIB_DESCRIPTION="Linux Mint 13 Maya"/
Linux Mint			14	debian-linux	6.0	`cat /etc/lsb-release 2>/dev/null | grep DISTRIB_DESCRIPTION` =~ /^DISTRIB_DESCRIPTION="Linux Mint 14 Nadia"/
Linux Mint			15	debian-linux	7.0	`cat /etc/lsb-release 2>/dev/null | grep DISTRIB_DESCRIPTION` =~ /^DISTRIB_DESCRIPTION="Linux Mint 15 Olivia"/
Linux Mint			16	debian-linux	8.0	`cat /etc/lsb-release 2>/dev/null | grep DISTRIB_DESCRIPTION` =~ /^DISTRIB_DESCRIPTION="Linux Mint 16 Petra"/
Linux Mint			17	debian-linux	8.0	`cat /etc/lsb-release 2>/dev/null | grep DISTRIB_DESCRIPTION` =~ /^DISTRIB_DESCRIPTION="Linux Mint 17 Qiana"/
Linux Mint			17.1	debian-linux	8.0	`cat /etc/lsb-release 2>/dev/null | grep DISTRIB_DESCRIPTION` =~ /^DISTRIB_DESCRIPTION="Linux Mint 17.1 Rebecca"/
Linux Mint			17.2	debian-linux	8.0	`cat /etc/lsb-release 2>/dev/null | grep DISTRIB_DESCRIPTION` =~ /^DISTRIB_DESCRIPTION="Linux Mint 17.2 Rafaela"/
Linux Mint			17.3	debian-linux	8.0	`cat /etc/lsb-release 2>/dev/null | grep DISTRIB_DESCRIPTION` =~ /^DISTRIB_DESCRIPTION="Linux Mint 17.3 Rosa"/
Linux Mint			18	debian-linux	8.0	`cat /etc/lsb-release 2>/dev/null | grep DISTRIB_DESCRIPTION` =~ /^DISTRIB_DESCRIPTION="Linux Mint 18 Sarah"/
Linux Mint			18.1	debian-linux	8.0	`cat /etc/lsb-release 2>/dev/null | grep DISTRIB_DESCRIPTION` =~ /^DISTRIB_DESCRIPTION="Linux Mint 18.1 Serena"/
Linux Mint			$1		debian-linux	11.0	`cat /etc/lsb-release 2>/dev/null | grep DISTRIB_DESCRIPTION` =~ /^DISTRIB_DESCRIPTION="Linux Mint ([0-9\.]+)\s+\w+/

# Debian Linux versions with numbers
Debian Linux			$1	debian-linux	$1	$etc_issue =~ /Debian.*\s([0-9\.]+)\s/i || `cat /etc/debian_version 2>/dev/null` =~ /([0-9\.]+)/
Debian Linux			2.0	debian-linux	2.0	`cat /etc/debian_version 2>/dev/null` =~ /^(hamm)/i
Debian Linux			2.1	debian-linux	2.1	`cat /etc/debian_version 2>/dev/null` =~ /^(slink)/i
Debian Linux			2.2	debian-linux	2.2	`cat /etc/debian_version 2>/dev/null` =~ /^(potato)/i
Debian Linux			3.0	debian-linux	3.0	`cat /etc/debian_version 2>/dev/null` =~ /^(woody)/i
Debian Linux			3.1	debian-linux	3.1	`cat /etc/debian_version 2>/dev/null` =~ /^(sarge)/i
Debian Linux			4.0	debian-linux	4.0	`cat /etc/debian_version 2>/dev/null` =~ /^(etch)/i
Debian Linux			5.0	debian-linux	5.0	`cat /etc/debian_version 2>/dev/null` =~ /^(lenny)/i
Debian Linux			6.0	debian-linux	6.0	`cat /etc/debian_version 2>/dev/null` =~ /^(squeeze)/i
Debian Linux			7.0	debian-linux	7.0	`cat /etc/debian_version 2>/dev/null` =~ /^(wheezy)/i
Debian Linux			8.0	debian-linux	8.0	`cat /etc/debian_version 2>/dev/null` =~ /^(jessie)/i
Debian Linux			9.0	debian-linux	9.0	`cat /etc/debian_version 2>/dev/null` =~ /^(stretch)/i
# These change sometimes...
Debian Linux			9.0	debian-linux	9.0	`cat /etc/debian_version 2>/dev/null` =~ /^(stable)/i
# These don't have a version number yet, so we use the one from "stable"
Debian Linux			10.0	debian-linux	10.0	`cat /etc/debian_version 2>/dev/null` =~ /^(testing)/i
Debian Linux			10.0	debian-linux	10.0	`cat /etc/debian_version 2>/dev/null` =~ /^(unstable)/i
Debian Linux			10.0	debian-linux	10.0	`cat /etc/debian_version 2>/dev/null` =~ /^(sid)/i
Debian Linux			10.0	debian-linux	10.0	`cat /etc/debian_version 2>/dev/null` =~ /^(buster)/i
Debian Linux			11.0	debian-linux	11.0	`cat /etc/debian_version 2>/dev/null` =~ /^(bullseye)/i
Debian Linux			12.0	debian-linux	12.0	`cat /etc/debian_version 2>/dev/null` =~ /^(bookworm)/i

# SuSE enterprise versions
SuSE OpenExchange Linux		$1	suse-linux	8.2	`cat /etc/SLOX-release 2>/dev/null` =~ /VERSION\s+=\s+(\S+)/i
SuSE SLES Linux			$1	suse-linux	sprintf("%.1f", $1)	$etc_issue =~ /SuSE\s+SLES-(\S+)/i

# openSUSE Linux (in 2006 with version 10.2, the SUSE Linux distribution was officially renamed to openSUSE)
openSUSE Linux					$1	suse-linux	$1	`cat /etc/os-release 2>/dev/null` =~ /openSUSE\s+Leap\s+(1[\d\.]+)/ 

# openSUSE Linux Tumbleweed
openSUSE Linux					$1	suse-linux	15	`cat /etc/os-release 2>/dev/null` =~ /openSUSE\s+Tumbleweed/ && `cat /etc/os-release 2>/dev/null` =~ /VERSION_ID\s*=.*?(\d+)/

# SuSE Linux
SuSE Linux					$1	suse-linux	$1	`cat /etc/SuSE-release 2>/dev/null` =~ /([0-9\.]+)/ || `cat /etc/os-release 2>/dev/null` =~ /openSUSE\s+Leap\s+([\d\.]+)/ || $etc_issue =~ /SuSE\s+Linux\s+(\S+)\s/i || `cat /etc/SUSE-brand 2>/dev/null` =~ /VERSION\s*=\s(\S+)/

# United Linux only ever had version 1.0 I think
United Linux			$1	united-linux	$1	`cat /etc/UnitedLinux-release 2>/dev/null` =~ /([0-9\.]+)/

# Corel Linux
Corel Linux			$1	corel-linux	$1	$etc_issue =~ /Corel\s+LINUX\s+(\S+)/i

# Turbo Linux
TurboLinux			$1	turbo-linux	sprintf("%.1f", $1)	`cat /etc/turbolinux-release 2>/dev/null` =~ /([0-9\.]+)/i

# Cobalt Linux, from the Raq and Qube systems
Cobalt Linux			$1	cobalt-linux	$1	$etc_issue =~ /Cobalt\s+Linux\s+release\s+(\S+)/i || `cat /etc/cobalt-release 2>/dev/null` =~ /([0-9\.]+)/
Cobalt Linux			6.4	cobalt-linux	6.4	`uname -r` =~ /2.2.16/ && -r "/etc/cobalt-release"

# Mandrake corporate
Mandrake Linux Corporate Server	1.0	redhat-linux	6.2	$etc_issue =~ /Mandrake\s+Corporate\s+Server\s+release\s+1\.0/i

# Mandrake derivatives
pclinuxos Linux			2005	mandrake-linux	10.0	`cat /etc/mandrake-release 2>/dev/null` =~ /pclinuxos\s+Linux\s+release\s+2005/i
pclinuxos Linux			2006	mandrake-linux	10.2	`cat /etc/mandrake-release 2>/dev/null` =~ /pclinuxos\s+Linux\s+release\s+2006/i
pclinuxos Linux			2007	mandrake-linux	10.3	`cat /etc/mandrake-release 2>/dev/null` =~ /PCLinuxOS\s+release\s+2007/i
pclinuxos Linux			2008	mandrake-linux	10.4	`cat /etc/mandrake-release 2>/dev/null` =~ /PCLinuxOS\s+release\s+2008/i
pclinuxos Linux			2009	mandrake-linux	10.5	`cat /etc/mandrake-release 2>/dev/null` =~ /PCLinuxOS\s+release\s+2009/i
Mageia Linux			$1	mandrake-linux	2011	`cat /etc/mageia-release 2>/dev/null` =~ /Mageia\s+release\s+(\d+)/i

# Mandrake Linux
Mandrake Linux			5.3	redhat-linux	5.0	$etc_issue =~ /Mandrake\s+release\s+5\.3/i
Mandrake Linux			6.0	redhat-linux	6.0	$etc_issue =~ /Mandrake\s+release\s+6\.0/i
Mandrake Linux			6.1	redhat-linux	6.0	$etc_issue =~ /Mandrake\s+release\s+6\.1/i
Mandrake Linux			7.0	redhat-linux	6.1	$etc_issue =~ /Mandrake\s+release\s+7\.0/i
Mandrake Linux			7.1	redhat-linux	6.2	$etc_issue =~ /Mandrake\s+release\s+7\.1/i
Mandrake Linux			$1	mandrake-linux	$1	`cat /etc/mandrake-release 2>/dev/null` =~ /Mandrake.*?([0-9\.]+)/i || $etc_issue =~ /Mandrake\s+release\s+([0-9\.]+)/i || $etc_issue =~ /Mandrakelinux\s+release\s+([0-9\.]+)/i

# Mandriva Linux
Mandriva Linux			$2	mandrake-linux	10.2	$etc_issue =~ /(Mandrakelinux|Mandriva).*(2006\.\d+)/i || `cat /etc/mandrake-release 2>/dev/null` =~ /(Mandrakelinux|Mandriva).*(2007\.\d+)/i
Mandriva Linux			$2	mandrake-linux	10.3	$etc_issue =~ /(Mandrakelinux|Mandriva).*(2007\.\d+)/i || `cat /etc/mandrake-release 2>/dev/null` =~ /(Mandrakelinux|Mandriva).*(2007\.\d+)/i
Mandriva Linux			$2	mandrake-linux	10.4	$etc_issue =~ /(Mandrakelinux|Mandriva).*(2008\.\d+)/i || `cat /etc/mandrake-release 2>/dev/null` =~ /(Mandrakelinux|Mandriva).*(2008\.\d+)/i
Mandriva Linux			$2	mandrake-linux	10.5	$etc_issue =~ /(Mandrakelinux|Mandriva).*(2009\.\d+)/i || `cat /etc/mandrake-release 2>/dev/null` =~ /(Mandrakelinux|Mandriva).*(2009\.\d+)/i
Mandriva Linux			$2	mandrake-linux	$2	$etc_issue =~ /(Mandriva).*(20\d\d\.\d+)/i || `cat /etc/mandriva-release 2>/dev/null` =~ /(Mandriva).*(20\d\d\.\d+)/i

# Mandriva Corporate
Mandrake Linux Corporate Server		$i	mandrake-linux	$i	$etc_issue =~ /Mandrake\s+Linux\s+Corporate\s+Server\s+release\s+([0-9\.]+)/i
Mandriva Linux Enterprise Server	5.0	mandrake-linux	2009	$etc_issue =~ /Mandriva\s+Linux\s+Enterprise\s+Server\s+release\s+5\.0\s+\(Official\)\s+for\s+(i586|x86_64)/i

# Conectiva Linux (now subsumed into Mandrake?)
Conectiva Linux			3.0	redhat-linux	5.2	$etc_issue =~ /Conectiva.*Linux.*3\.0/i
Conectiva Linux			4.0	redhat-linux	6.0	$etc_issue =~ /Conectiva.*Linux.*4\.0/i
Conectiva Linux			4.1	redhat-linux	6.1	$etc_issue =~ /Conectiva.*Linux.*4\.1/i
Conectiva Linux			4.2	redhat-linux	6.1	$etc_issue =~ /Conectiva.*Linux.*4\.2/i
Conectiva Linux			5.0	redhat-linux	6.2	$etc_issue =~ /Conectiva.*Linux.*5\.0/i
Conectiva Linux			5.1	redhat-linux	6.2	$etc_issue =~ /Conectiva.*Linux.*5\.1/i
Conectiva Linux			6.0	redhat-linux	7.0	$etc_issue =~ /Conectiva.*Linux.*6\.0/i
Conectiva Linux			7.0	redhat-linux	7.1	$etc_issue =~ /Conectiva.*Linux.*7\.0/i
Conectiva Linux			8	redhat-linux	7.3	$etc_issue =~ /Conectiva.*Linux.*\s8/i
Conectiva Linux			9	redhat-linux	8.0	$etc_issue =~ /Conectiva.*Linux.*\s9/i
Conectiva Linux			10	redhat-linux	10.0	$etc_issue =~ /Conectiva.*Linux.*\s10\s/i

# ThizLinux Desktop
ThizLinux Desktop		5.0	redhat-linux	7.2	$etc_issue =~ /Thiz.*Linux.*\s5\.0/i
ThizLinux Desktop		6.0	redhat-linux	7.3	$etc_issue =~ /Thiz.*Linux.*\s6\.0/i
ThizLinux Desktop		6.2	redhat-linux	7.3	$etc_issue =~ /Thiz.*Linux.*\s6\.2/i
ThizLinux Desktop		7.0	redhat-linux	8.0	$etc_issue =~ /Thiz.*Linux.*\s7\.0/i

# ThizLinux Server
ThizServer			4.3	redhat-linux	7.1	$etc_issue =~ /Thiz.*\s?Server.*\s4\.3/i
ThizServer			6.0	redhat-linux	7.3	$etc_issue =~ /Thiz.*\s?Server.*\s6\.0/i
ThizServer			7.0	redhat-linux	8.0	$etc_issue =~ /Thiz.*\s?Server.*\s7\.0/i

# MSC Linux, which used date-based versions (no longer released)
MSC Linux			January 2001	msc-linux	2001.2	`cat /etc/msclinux-release 2>/dev/null` =~ /2001.*January/i || $etc_issue =~ /2001.*January/i
MSC Linux			February 2001	msc-linux	2001.2	`cat /etc/msclinux-release 2>/dev/null` =~ /2001.*February/i || $etc_issue =~ /2001.*February/i
MSC Linux			May 2001	msc-linux	2001.5	`cat /etc/msclinux-release 2>/dev/null` =~ /2001.*May/i || $etc_issue =~ /2001.*May/i
MSC Linux			June 2001	msc-linux	2001.6	`cat /etc/msclinux-release 2>/dev/null` =~ /2001.*June/i || $etc_issue =~ /2001.*June/i
MSC Linux			August 2001	msc-linux	2001.8	`cat /etc/msclinux-release 2>/dev/null` =~ /2001.*August/i || $etc_issue =~ /2001.*August/i
MSC Linux			February 2002	msc-linux	2002.2	`cat /etc/msclinux-release 2>/dev/null` =~ /2002.*February/i || $etc_issue =~ /2002.*February/i
MSC Linux			March 2002	msc-linux	2002.3	`cat /etc/msclinux-release 2>/dev/null` =~ /2002.*March/i || $etc_issue =~ /2002.*March/i
MSC Linux			May 2002	msc-linux	2002.5	`cat /etc/msclinux-release 2>/dev/null` =~ /2002.*May/i || $etc_issue =~ /2002.*May/i
MSC Linux			July 2002	msc-linux	2002.7	`cat /etc/msclinux-release 2>/dev/null` =~ /2002.*July/i || $etc_issue =~ /2002.*July/i
MSC Linux			Nov 2002	msc-linux	2002.11	`cat /etc/msclinux-release 2>/dev/null` =~ /2002.*Nov/i || $etc_issue =~ /2002.*Nov/i

# SCI Linux, which has replaced MSC Linux
SCI Linux			2003 Summer	msc-linux	2003.6	`cat /etc/scilinux-relase 2>/dev/null` =~ /2003.*Summer/i
SCI Linux			2004 Summer	msc-linux	2004.6	`cat /etc/scilinux-relase 2>/dev/null` =~ /2004.*Summer/i
SCI Linux			2005 Summer	msc-linux	2005.6	`cat /etc/scilinux-relase 2>/dev/null` =~ /2005.*Summer/i

# PPC Linux
LinuxPPC			2000	redhat-linux	6.1	$etc_issue =~ /LinuxPPC\s+2000/i

# Trustix enterprise
Trustix SE			$1	trustix-linux	sprintf("%.1f", $1)	$etc_issue =~ /Trustix.*Enterprise.*([0-9\.]+)/i

# Trustix Linux
Trustix				1.1	redhat-linux	6.2	$etc_issue =~ /Trustix.*1\.1/i
Trustix				1.2	redhat-linux	7.0	$etc_issue =~ /Trustix.*1\.2/i
Trustix				1.5	redhat-linux	7.1	$etc_issue =~ /Trustix.*1\.5/i
Trustix				$1	trustix-linux	$1	$etc_issue =~ /Trustix.*\s([0-9\.]+)/i

# Trustix clones
Tawie Server Linux		$1	trustix-linux	$1	$etc_issue =~ /Tawie\s+Server\s+Linux.*([0-9\.]+)/i
TinySofa Linux			1.0	trustix-linux	2.0	$etc_issue =~ /tinysofa.*release\s+1\.0/i
TinySofa Linux			Classic 2.0	trustix-linux	2.2	`cat /etc/tinysofa-release 2>/dev/null` =~ /classic.*release\s+2\.0/i
TinySofa Linux			Enterprise 2.0	redhat-linux	11.0	`cat /etc/tinysofa-release 2>/dev/null` =~ /enterprise.*release\s+2\.0/i

# Cendio Linux (discontinued?)
Cendio LBS Linux		3.1	redhat-linux	6.1	$etc_issue =~ /Cendio\s*LBS.*\s3\.1/i || `cat /etc/lbs-release 2>/dev/null` =~ /3\.1/
Cendio LBS Linux		3.2	redhat-linux	6.2	$etc_issue =~ /Cendio\s*LBS.*\s3\.2/i || `cat /etc/lbs-release 2>/dev/null` =~ /3\.2/
Cendio LBS Linux		3.3	redhat-linux	6.2	$etc_issue =~ /Cendio\s*LBS.*\s3\.3/i || `cat /etc/lbs-release 2>/dev/null` =~ /3\.3/
Cendio LBS Linux		4.0	redhat-linux	7.1	$etc_issue =~ /Cendio\s*LBS.*\s4\.0/i || `cat /etc/lbs-release 2>/dev/null` =~ /4\.0/
Cendio LBS Linux		4.1	redhat-linux	7.1	$etc_issue =~ /Cendio\s*LBS.*\s4\.1/i || `cat /etc/lbs-release 2>/dev/null` =~ /4\.1/

# Ute Linux (never got beyond 1.0)
Ute Linux			1.0	redhat-linux	6.2	`cat /etc/ute-release 2>/dev/null` =~ /Ute\s+Linux\s+release\s+1\.0/i

# Lanthan Linux (appears to be dead)
Lanthan Linux			1.0	redhat-linux	6.2	$etc_issue =~ /Lanthan\s+Linux\s+release\s+1\.0/i || `cat /etc/lanthan-release 2>/dev/null` =~ /1\.0/
Lanthan Linux			2.0	redhat-linux	7.0	$etc_issue =~ /Lanthan\s+Linux\s+release\s+2\.0/i || `cat /etc/lanthan-release 2>/dev/null` =~ /2\.0/
Lanthan Linux			3.0	redhat-linux	7.1	$etc_issue =~ /Lanthan\s+Linux\s+release\s+3\.0/i || `cat /etc/lanthan-release 2>/dev/null` =~ /3\.0/

# Yellow Dog Linux, for PPC
Yellow Dog Linux		2.0	redhat-linux	7.0	$etc_issue =~ /Yellow\s+Dog\s+Linux\s+release\s+2\.0\s+/i || `cat /etc/yellowdog-release 2>/dev/null` =~ /Yellow\s+Dog\s+Linux\s+release\s+2\.0\s+/i
Yellow Dog Linux		2.1	redhat-linux	7.1	$etc_issue =~ /Yellow\s+Dog\s+Linux\s+release\s+2\.1\s+/i || `cat /etc/yellowdog-release 2>/dev/null` =~ /Yellow\s+Dog\s+Linux\s+release\s+2\.1\s+/i
Yellow Dog Linux		2.2	redhat-linux	7.2	$etc_issue =~ /Yellow\s+Dog\s+Linux\s+release\s+2\.2\s+/i || `cat /etc/yellowdog-release 2>/dev/null` =~ /Yellow\s+Dog\s+Linux\s+release\s+2\.2\s+/i
Yellow Dog Linux		2.3	redhat-linux	8.0	$etc_issue =~ /Yellow\s+Dog\s+Linux\s+release\s+2\.3\s+/i || `cat /etc/yellowdog-release 2>/dev/null` =~ /Yellow\s+Dog\s+Linux\s+release\s+2\.3\s+/i
Yellow Dog Linux		3.0	redhat-linux	9.0	$etc_issue =~ /Yellow\s+Dog\s+Linux\s+release\s+3\.0\s+/i || `cat /etc/yellowdog-release 2>/dev/null` =~ /Yellow\s+Dog\s+Linux\s+release\s+3\.0\s+/i
Yellow Dog Linux		4.0	redhat-linux	11.0	$etc_issue =~ /Yellow\s+Dog\s+Linux\s+release\s+4\.0\s+/i || `cat /etc/yellowdog-release 2>/dev/null` =~ /\s4\.0\s/i

# Latinux (appears to be discontinued?)
Corvus Latinux			8.0	redhat-linux	7.1	`cat /etc/latinux-release 2>/dev/null` =~ /Latinux\s+8\s/i

# Immunix Linux (discontinued)
Immunix Linux			$1	redhat-linux	$1	$etc_issue =~ /Immunix.*\s([0-9\.]+)/i || `cat /etc/immunix-release 2>/dev/null` =~ /([0-9\.]+)/

# All versions of Gentoo (which don't appear to have version numbers)
Gentoo Linux			Any version	gentoo-linux	*	-d "/usr/portage"

# Secure Linux (now called Trustix?)
Secure Linux			1.0	redhat-linux	7.2	`cat /etc/securelinux-release 2>/dev/null` =~ /SecureLinux.*1\.0/i

# OpenNA Linux
OpenNA Linux			1.0	redhat-linux	9.0	`cat /etc/openna-release 2>/dev/null` =~ /release\s+1\.0\s/i
OpenNA Linux			2.0	redhat-linux	10.0	`cat /etc/openna-release 2>/dev/null` =~ /release\s+2\.0\s/i

# SoL Linux 
SoL Linux			17.00	sol-linux	17.00	-r "/etc/antitachyon-distribution" && `uname -r` =~ /2\.4\./
SoL Linux			18.00	sol-linux	18.00	-r "/etc/antitachyon-distribution" && `uname -r` =~ /2\.6\./

# Coherent Linux
Coherent Technology Linux	$1	coherent-linux	$1	$etc_issue =~ /coherent\s*technology.*\s([0-9\.]+)/i || `cat /etc/coherent-release 2>/dev/null` =~ /([0-9\.]+)/ 

# Linux for the playstation
Playstation Linux		1.0	redhat-linux	6.2	$etc_issue =~ /PS2\s+Linux\s+release\s+1.0/i

# StartCom Linux
StartCom Linux			$1	redhat-linux	10.0	`cat /etc/startcom-release 2>/dev/null` =~ /([0-9\.]+)/

# Yoper Linux
Yoper Linux			2.0	redhat-linux	10.0	`cat /etc/yoper-release 2>/dev/null` =~ /Yoper\s+Linux\s+2.0/i
Yoper Linux			2.1	redhat-linux	11.0	`cat /etc/yoper-release 2>/dev/null` =~ /Yoper\s+Linux\s+2.1/i
Yoper Linux			2.2	redhat-linux	12.0	`cat /etc/yoper-release 2>/dev/null` =~ /Yoper\s+Linux\s+2.2/i

# Caixa Linux
Caixa Magica			8.1	suse-linux	8.0	`cat /etc/CxM-release 2>/dev/null` =~ /8\.1/ || $etc_issue =~ /Caixa\s+8\.1\s/i
Caixa Magica			10.0	suse-linux	9.2	`cat /etc/CxM-release 2>/dev/null` =~ /10\.0/ || $etc_issue =~ /Caixa\s+10\.0\s/i

# openmamba Linux
openmamba Linux			$1	openmamba-linux	$1	`cat /etc/openmamba-release 2>/dev/null` =~ /openmamba\s+release\s+(\S+)/i

# All FreeBSD versions
FreeBSD				$1	freebsd		$1	`freebsd-version 2>/dev/null` =~ /([0-9]+\.[0-9\.]+)/i
FreeBSD				$1	freebsd		$1	$uname =~ /FreeBSD.*?\s([0-9]+\.[0-9\.]+)/i

# FreeBSD clones
DragonFly BSD			1.0	freebsd		4.8	$uname =~ /DragonFly.*?\s1\.0A/i
DragonFly BSD			1.2	freebsd		4.10	$uname =~ /DragonFly.*?\s1\.2A/i

# All OpenBSD versions
OpenBSD				$1	openbsd		$1	$uname =~ /OpenBSD.*?\s([0-9\.]+)/i

# All NetBSD versions
NetBSD				1.5	netbsd		1.5	$uname =~ /NetBSD.*1\.5/i
NetBSD				1.6	netbsd		1.6	$uname =~ /NetBSD.*1\.6/i
NetBSD				2.0	netbsd		2.0	$uname =~ /NetBSD.*2\.0/i
NetBSD				3.0	netbsd		3.0	$uname =~ /NetBSD.*3\.0/i
NetBSD				4.0	netbsd		4.0	$uname =~ /NetBSD.*4\.0/i
NetBSD				$1	netbsd		$1	`uname` =~ /NetBSD/ && `uname -r` =~ /([\d.]+)/

# BSDI (may not be detected properly)
BSDI				$1	freebsd		$1	$uname =~ /BSDI.*\s([0-9\.]+)/i

# HP/UX
HP/UX				$1	hpux		$1	$uname =~ /HP-UX.*(1[01]\.[0-9\.]+)/

# Irix
SGI Irix			$1	irix		$1	$uname =~ /IRIX.*([0-9]+\.[0-9]+)/i

# DEC OSF/1 or Tru64 (discontinued)
DEC/Compaq OSF/1		4.0	osf1		4.0	$uname =~ /OSF1.*4\.0/
DEC/Compaq OSF/1		5.1	osf1		5.1	$uname =~ /OSF1.*V5.1/

# AIX
IBM AIX				"$2.$1"	aix		"$2.$1"	$uname =~ /AIX\s+\S+\s+(\d+)\s+(\d+)\s+/i

# SCO's operating systems (no longer developed)
SCO UnixWare			2	unixware	2
SCO UnixWare			7	unixware	7
SCO UnixWare			8	unixware	8
SCO OpenServer			5	openserver	5	$uname =~ /SCO_SV.*\s5\./i
SCO OpenServer			6	openserver	6	$uname =~ /SCO_SV.*\s6\./i

# Apple's OS X versions
macOS Catalina			10.15	macos		19.0	`sw_vers 2>/dev/null` =~ /ProductVersion:\s+10\.15/i
macOS Mojave			10.14	macos		18.0	`sw_vers 2>/dev/null` =~ /ProductVersion:\s+10\.14/i
macOS High Sierra		10.13	macos		17.0	`sw_vers 2>/dev/null` =~ /ProductVersion:\s+10\.13/i
macOS Sierra			10.12	macos		16.0	`sw_vers 2>/dev/null` =~ /ProductVersion:\s+10\.12/i
OS X					10.11	macos		15.0	`sw_vers 2>/dev/null` =~ /ProductVersion:\s+10\.11/i
OS X					10.10	macos		14.0	`sw_vers 2>/dev/null` =~ /ProductVersion:\s+10\.10/i
OS X					10.9	macos		13.0	`sw_vers 2>/dev/null` =~ /ProductVersion:\s+10\.9/i
OS X					10.8	macos		12.0	`sw_vers 2>/dev/null` =~ /ProductVersion:\s+10\.8/i
Mac OS X				10.7	macos		11.0	`sw_vers 2>/dev/null` =~ /ProductVersion:\s+10\.7/i
Mac OS X				10.6	macos		10.0	`sw_vers 2>/dev/null` =~ /ProductVersion:\s+10\.6/i
Mac OS X				10.5	macos		9.2		`sw_vers 2>/dev/null` =~ /ProductVersion:\s+10\.5/i
Mac OS X				10.4	macos		8.1		`sw_vers 2>/dev/null` =~ /ProductVersion:\s+10\.4/i
Mac OS X				10.3	macos		7.0		`sw_vers 2>/dev/null` =~ /ProductVersion:\s+10\.3/i
Mac OS X				10.2	macos		6.0		`sw_vers 2>/dev/null` =~ /ProductVersion:\s+10\.2/i
Mac OS X				10.1	macos		1.4		`sw_vers 2>/dev/null` =~ /ProductVersion:\s+10\.1/i
Mac OS X				10.0	macos		1.3		`sw_vers 2>/dev/null` =~ /ProductVersion:\s+10\.0/i

# Darwin, the open source version of OS X
Darwin				$1	macos		$1	$uname =~ /Darwin.*\s([0-9\.]+)/

# OpenDarwin
OpenDarwin			6.6.1	macos		6.0
OpenDarwin			6.6.2	macos		6.0
OpenDarwin			7.2.1	macos		7.0

# Webmin running under Windows
Cygwin				1.1	cygwin		1.1
Cygwin				1.3	cygwin		1.3

# Sun's desktop Linux and Solaris systems
Sun Java Desktop System		1.0 (Linux)	suse-linux	9.1	`cat /etc/SuSE-release 2>/dev/null` =~ /Java Desktop System.*\nVERSION = 1\.0/i
Sun Java Desktop System		2.0 (Linux)	suse-linux	9.2	`cat /etc/SuSE-release 2>/dev/null` =~ /Java Desktop System.*\nVERSION = 2\.0/i
Sun Java Desktop System		3.0 (Linux)	suse-linux	9.2	`cat /etc/SuSE-release 2>/dev/null` =~ /Java Desktop System.*\nVERSION = 3\.0/i
Sun Java Desktop System		2.0 (Solaris)	solaris		9	$uname =~ /SunOS.*\s5\.9\s/i && `cat /etc/sun-release 2>/dev/null` =~ /Sun\s+Java\s+Desktop/

# Synology NAS, Syno Linux - DSM Version 6.x+
Synology DSM		$1	syno-linux	$1	`cat /etc.defaults/VERSION 2>/dev/null` =~ /productversion="([0-9]+\.[0-9]+(\.[0-9]+)?)/

# All other Linux variants, identified by kernel version
Generic Linux			$1	generic-linux	$1	`uname -r` =~ /^([0-9]+\.[0-9+])\./

# Windows
Windows				XP	windows		xp	(-d "c:/windows" || -d "c:/winnt") && `ver` =~ /XP/
Windows				2000	windows		2000	(-d "c:/windows" || -d "c:/winnt") && `ver` =~ /2000/
Windows				2003	windows		2003	(-d "c:/windows" || -d "c:/winnt") && `ver` =~ /2003|\s5\.2/
Windows				Vista	windows		Vista	(-d "c:/windows" || -d "c:/winnt") && `ver` =~ /\s6\.0\.6001/
Windows				2008	windows		2008	(-d "c:/windows" || -d "c:/winnt") && `ver` =~ /\s6\.0\.6002/
Windows				7	windows		7	(-d "c:/windows" || -d "c:/winnt") && `ver` =~ /\s6\.0\.76[0-9][0-9]/
Windows				8	windows		8	(-d "c:/windows" || -d "c:/winnt") && `ver` =~ /\s6\.2\.92[0-9][0-9]/
Windows				8.1	windows		8.1	(-d "c:/windows" || -d "c:/winnt") && `ver` =~ /\s6\.3\.9[0-9]00/
Windows				10	windows		10	(-d "c:/windows" || -d "c:/winnt") && `ver` =~ /\s10\.0\.[0-9][0-9][0-9][0-9]/

Filemanager

Name Type Size Permission Actions
acl Folder 0755
adsl-client Folder 0755
apache Folder 0755
at Folder 0755
authentic-theme Folder 0755
backup-config Folder 0755
bacula-backup Folder 0755
bandwidth Folder 0755
bin Folder 0755
bind8 Folder 0755
blue-theme Folder 0755
change-user Folder 0755
cluster-copy Folder 0755
cluster-cron Folder 0755
cluster-passwd Folder 0755
cluster-shell Folder 0755
cluster-software Folder 0755
cluster-useradmin Folder 0755
cluster-usermin Folder 0755
cluster-webmin Folder 0755
cpan Folder 0755
cron Folder 0755
custom Folder 0755
dfsadmin Folder 0755
dhcpd Folder 0755
dovecot Folder 0755
exim Folder 0755
exports Folder 0755
fail2ban Folder 0755
fdisk Folder 0755
fetchmail Folder 0755
filemin Folder 0755
filter Folder 0755
firewall Folder 0755
firewall6 Folder 0755
firewalld Folder 0755
fsdump Folder 0755
gray-theme Folder 0755
grub Folder 0755
heartbeat Folder 0755
htaccess-htpasswd Folder 0755
idmapd Folder 0755
images Folder 0755
inetd Folder 0755
init Folder 0755
inittab Folder 0755
ipfilter Folder 0755
ipfw Folder 0755
ipsec Folder 0755
iscsi-client Folder 0755
iscsi-server Folder 0755
iscsi-target Folder 0755
iscsi-tgtd Folder 0755
jabber Folder 0755
krb5 Folder 0755
lang Folder 0755
ldap-client Folder 0755
ldap-server Folder 0755
ldap-useradmin Folder 0755
logrotate Folder 0755
logviewer Folder 0755
lpadmin Folder 0755
lvm Folder 0755
mailboxes Folder 0755
mailcap Folder 0755
man Folder 0755
mon Folder 0755
mount Folder 0755
mysql Folder 0755
net Folder 0755
nis Folder 0755
openslp Folder 0755
package-updates Folder 0755
pam Folder 0755
pap Folder 0755
passwd Folder 0755
phpini Folder 0755
postfix Folder 0755
postgresql Folder 0755
ppp-client Folder 0755
pptp-client Folder 0755
pptp-server Folder 0755
proc Folder 0755
procmail Folder 0755
proftpd Folder 0755
qmailadmin Folder 0755
quota Folder 0755
raid Folder 0755
samba Folder 0755
sarg Folder 0755
sendmail Folder 0755
servers Folder 0755
shell Folder 0755
shorewall Folder 0755
shorewall6 Folder 0755
smart-status Folder 0755
smf Folder 0755
software Folder 0755
spam Folder 0755
squid Folder 0755
sshd Folder 0755
status Folder 0755
stunnel Folder 0755
syslog Folder 0755
syslog-ng Folder 0755
system-status Folder 0755
tcpwrappers Folder 0755
time Folder 0755
tunnel Folder 0755
unauthenticated Folder 0755
updown Folder 0755
useradmin Folder 0755
usermin Folder 0755
vendor_perl Folder 0755
vgetty Folder 0755
webalizer Folder 0755
webmin Folder 0755
webmincron Folder 0755
webminlog Folder 0755
wuftpd Folder 0755
xinetd Folder 0755
xterm Folder 0755
LICENCE File 1.48 KB 0644
LICENCE.ja File 1.62 KB 0644
README.md File 4.25 KB 0644
WebminCore.pm File 7.85 KB 0644
acl_security.pl File 4.51 KB 0755
changepass.pl File 868 B 0755
chooser.cgi File 7.21 KB 0755
config-aix File 227 B 0644
config-cobalt-linux File 264 B 0644
config-coherent-linux File 264 B 0644
config-corel-linux File 264 B 0644
config-debian-linux File 264 B 0644
config-freebsd File 256 B 0644
config-generic-linux File 264 B 0644
config-gentoo-linux File 264 B 0644
config-hpux File 243 B 0644
config-irix File 284 B 0644
config-lib.pl File 10.82 KB 0755
config-macos File 260 B 0644
config-mandrake-linux File 278 B 0644
config-msc-linux File 264 B 0644
config-netbsd File 283 B 0644
config-open-linux File 264 B 0644
config-openbsd File 241 B 0644
config-openmamba-linux File 264 B 0644
config-openserver File 236 B 0644
config-osf1 File 266 B 0644
config-pardus-linux File 264 B 0644
config-redhat-linux File 264 B 0644
config-slackware-linux File 280 B 0644
config-sol-linux File 264 B 0644
config-solaris File 417 B 0644
config-suse-linux File 264 B 0644
config-syno-linux File 364 B 0644
config-trustix-linux File 264 B 0644
config-turbo-linux File 264 B 0644
config-united-linux File 264 B 0644
config-unixware File 286 B 0644
config-windows File 88 B 0644
config.cgi File 1.55 KB 0755
config_save.cgi File 1.64 KB 0755
copyconfig.pl File 4.33 KB 0755
create-module.pl File 3.82 KB 0755
date_chooser.cgi File 2.19 KB 0755
deb-name File 7 B 0644
defaultacl File 98 B 0644
defaulttheme File 16 B 0644
entities_map.txt File 1.47 KB 0644
fastrpc.cgi File 10.18 KB 0755
favicon.ico File 14.73 KB 0644
feedback.cgi File 6.37 KB 0755
feedback_form.cgi File 3.45 KB 0755
group_chooser.cgi File 7.36 KB 0755
help.cgi File 2.94 KB 0755
index.cgi File 5.61 KB 0755
install-module.pl File 1.54 KB 0755
install-type File 4 B 0644
javascript-lib.pl File 14.69 KB 0755
lang_list.txt File 3.41 KB 0644
maketemp.pl File 424 B 0755
mime.types File 12.42 KB 0644
miniserv.pem File 2.9 KB 0644
miniserv.pl File 179.71 KB 0755
module_chooser.cgi File 4.14 KB 0755
newmods.pl File 1.25 KB 0755
os_list.txt File 34.18 KB 0644
oschooser.pl File 4.55 KB 0755
pam_login.cgi File 2.83 KB 0755
password_change.cgi File 7 KB 0755
password_form.cgi File 1.3 KB 0755
perlpath.pl File 571 B 0755
record-failed.pl File 503 B 0755
record-login.pl File 513 B 0755
record-logout.pl File 516 B 0755
robots.txt File 26 B 0644
rpc.cgi File 4 KB 0755
run-postinstalls.pl File 1 KB 0755
run-uninstalls.pl File 1004 B 0755
safeacl File 44 B 0644
session_login.cgi File 3.55 KB 0755
setup-repos.sh File 4.66 KB 0755
setup.bat File 3.09 KB 0644
setup.pl File 30.33 KB 0755
setup.sh File 32.06 KB 0755
switch_skill.cgi File 293 B 0755
switch_user.cgi File 404 B 0755
thirdparty.pl File 1.73 KB 0755
ui-lib.pl File 82.8 KB 0755
update-from-repo.sh File 14.8 KB 0755
uptracker.cgi File 2.88 KB 0755
user_chooser.cgi File 7.29 KB 0755
version File 6 B 0644
web-lib-funcs.pl File 356.13 KB 0755
web-lib.pl File 907 B 0755
webmin-daemon File 80 B 0644
webmin-init File 1.93 KB 0755
webmin-pam File 101 B 0644
webmin-search-lib.pl File 9.42 KB 0755
webmin-systemd File 371 B 0644
webmin_search.cgi File 2.63 KB 0755
xmlrpc.cgi File 7.53 KB 0755