propellor-5.8.0: property-based host configuration management in haskell

Safe HaskellNone
LanguageHaskell98

Propellor.Types.OS

Synopsis

Documentation

data System Source #

High level description of a operating system.

Instances
Eq System Source # 
Instance details

Defined in Propellor.Types.OS

Methods

(==) :: System -> System -> Bool #

(/=) :: System -> System -> Bool #

Show System Source # 
Instance details

Defined in Propellor.Types.OS

data Distribution Source #

Constructors

Debian DebianKernel DebianSuite 
Buntish Release

A well-known Debian derivative founded by a space tourist. The actual name of this distribution is not used in Propellor per http://joeyh.name/blog/entry/trademark_nonsense/

ArchLinux 
FreeBSD FreeBSDRelease 
Instances
Eq Distribution Source # 
Instance details

Defined in Propellor.Types.OS

Show Distribution Source # 
Instance details

Defined in Propellor.Types.OS

data TargetOS Source #

Properties can target one or more OS's; the targets are part of the type of the property, so need to be kept fairly simple.

Instances
Eq TargetOS Source # 
Instance details

Defined in Propellor.Types.OS

Ord TargetOS Source # 
Instance details

Defined in Propellor.Types.OS

Show TargetOS Source # 
Instance details

Defined in Propellor.Types.OS

data DebianKernel Source #

Most of Debian ports are based on Linux. There also exist hurd-i386, kfreebsd-i386, kfreebsd-amd64 ports

Constructors

Linux 
KFreeBSD 
Hurd 
Instances
Eq DebianKernel Source # 
Instance details

Defined in Propellor.Types.OS

Show DebianKernel Source # 
Instance details

Defined in Propellor.Types.OS

data DebianSuite Source #

Debian has several rolling suites, and a number of stable releases, such as Stable "stretch".

Instances
Eq DebianSuite Source # 
Instance details

Defined in Propellor.Types.OS

Show DebianSuite Source # 
Instance details

Defined in Propellor.Types.OS

data FBSDVersion Source #

Constructors

FBSD101 
FBSD102 
FBSD093 
Instances
Eq FBSDVersion Source # 
Instance details

Defined in Propellor.Types.OS

Show FBSDVersion Source # 
Instance details

Defined in Propellor.Types.OS

IsString FBSDVersion Source # 
Instance details

Defined in Propellor.Types.OS

ConfigurableValue FBSDVersion Source # 
Instance details

Defined in Propellor.Types.OS

data Architecture Source #

Many of these architecture names are based on the names used by Debian, with a few exceptions for clarity.

Constructors

X86_64

64 bit Intel, called "amd64" in Debian

X86_32

32 bit Intel, called "i386" in Debian

ARMHF 
ARMEL 
PPC 
PPC64 
SPARC 
SPARC64 
MIPS 
MIPSEL 
MIPS64EL 
SH4 
IA64

Itanium

S390 
S390X 
ALPHA 
HPPA 
M68K 
ARM64 
X32

New Linux ABI for 64 bit CPUs using 32-bit integers. Not widely used.

Instances
Eq Architecture Source # 
Instance details

Defined in Propellor.Types.OS

Show Architecture Source # 
Instance details

Defined in Propellor.Types.OS

type HostName = String #

Either a host name e.g., "haskell.org" or a numeric host address string consisting of a dotted decimal IPv4 address or an IPv6 address e.g., "192.168.0.1".

newtype User Source #

Constructors

User UserName 
Instances
Eq User Source # 
Instance details

Defined in Propellor.Types.OS

Methods

(==) :: User -> User -> Bool #

(/=) :: User -> User -> Bool #

Ord User Source # 
Instance details

Defined in Propellor.Types.OS

Methods

compare :: User -> User -> Ordering #

(<) :: User -> User -> Bool #

(<=) :: User -> User -> Bool #

(>) :: User -> User -> Bool #

(>=) :: User -> User -> Bool #

max :: User -> User -> User #

min :: User -> User -> User #

Show User Source # 
Instance details

Defined in Propellor.Types.OS

Methods

showsPrec :: Int -> User -> ShowS #

show :: User -> String #

showList :: [User] -> ShowS #

ConfigurableValue User Source # 
Instance details

Defined in Propellor.Types.OS

Methods

val :: User -> String Source #

newtype Group Source #

Constructors

Group String 
Instances
Eq Group Source # 
Instance details

Defined in Propellor.Types.OS

Methods

(==) :: Group -> Group -> Bool #

(/=) :: Group -> Group -> Bool #

Ord Group Source # 
Instance details

Defined in Propellor.Types.OS

Methods

compare :: Group -> Group -> Ordering #

(<) :: Group -> Group -> Bool #

(<=) :: Group -> Group -> Bool #

(>) :: Group -> Group -> Bool #

(>=) :: Group -> Group -> Bool #

max :: Group -> Group -> Group #

min :: Group -> Group -> Group #

Show Group Source # 
Instance details

Defined in Propellor.Types.OS

Methods

showsPrec :: Int -> Group -> ShowS #

show :: Group -> String #

showList :: [Group] -> ShowS #

ConfigurableValue Group Source # 
Instance details

Defined in Propellor.Types.OS

Methods

val :: Group -> String Source #

userGroup :: User -> Group Source #

Makes a Group with the same name as the User.

newtype Port Source #

Constructors

Port Int 
Instances
Eq Port Source # 
Instance details

Defined in Propellor.Types.OS

Methods

(==) :: Port -> Port -> Bool #

(/=) :: Port -> Port -> Bool #

Ord Port Source # 
Instance details

Defined in Propellor.Types.OS

Methods

compare :: Port -> Port -> Ordering #

(<) :: Port -> Port -> Bool #

(<=) :: Port -> Port -> Bool #

(>) :: Port -> Port -> Bool #

(>=) :: Port -> Port -> Bool #

max :: Port -> Port -> Port #

min :: Port -> Port -> Port #

Show Port Source # 
Instance details

Defined in Propellor.Types.OS

Methods

showsPrec :: Int -> Port -> ShowS #

show :: Port -> String #

showList :: [Port] -> ShowS #

ConfigurableValue Port Source # 
Instance details

Defined in Propellor.Types.OS

Methods

val :: Port -> String Source #

Publishable Port Source # 
Instance details

Defined in Propellor.Property.Systemd

Methods

toPublish :: Port -> String

Publishable (Bound Port) Source # 
Instance details

Defined in Propellor.Property.Docker

Methods

toPublish :: Bound Port -> String

Publishable (Bound Port) Source # 
Instance details

Defined in Propellor.Property.Systemd

Methods

toPublish :: Bound Port -> String

Publishable (Proto, Bound Port) Source # 
Instance details

Defined in Propellor.Property.Systemd

Methods

toPublish :: (Proto, Bound Port) -> String