# `CONSFIGURATOR.PROPERTY.OS`

## API reference

### Basic OS types

#### Class: `OS:UNIXLIKE`

#### Class: `OS:LINUX`

#### Property: `OS:LINUX`

`(os:linux)`

#### Class: `OS:DEBIANLIKE`

#### Class: `OS:DEBIAN`

#### Class: `OS:DEBIAN-STABLE`

#### Property: `OS:DEBIAN-STABLE`

`(os:debian-stable suite architecture)`

#### Class: `OS:DEBIAN-TESTING`

#### Property: `OS:DEBIAN-TESTING`

`(os:debian-testing architecture)`

#### Class: `OS:DEBIAN-UNSTABLE`

#### Property: `OS:DEBIAN-UNSTABLE`

`(os:debian-unstable architecture)`

#### Class: `OS:DEBIAN-EXPERIMENTAL`

#### Class: `OS:FREEBSD`

#### Class: `OS:FREEBSD-RELEASE`

#### Property: `OS:FREEBSD-RELEASE`

`(os:freebsd-release version architecture)`

#### Class: `OS:FREEBSD-DEVEL`

An unreleased version of FreeBSD: -CURRENT, -STABLE, -ALPHA, -BETA etc.

#### Property: `OS:FREEBSD-DEVEL`

`(os:freebsd-devel architecture)`

### Utilities

#### Function: `OS:REQUIRED`

`(os:required type)`

Error out if the OS of the host being deployed is not of type TYPE.

Used in property :HOSTATTRS subroutines.

#### Generic function: `OS:SUPPORTS-ARCH-P`

`(os:supports-arch-p target-os binary-os)`

Can binaries for BINARY-OS run on TARGET-OS?