Safe Haskell | None |
---|---|
Language | Haskell98 |
Synopsis
- data System = System Distribution Architecture
- data Distribution
- data TargetOS
- data DebianKernel
- data DebianSuite
- data FreeBSDRelease
- data FBSDVersion
- isStable :: DebianSuite -> Bool
- type Release = String
- data Architecture
- architectureToDebianArchString :: Architecture -> String
- type HostName = String
- type UserName = String
- newtype User = User UserName
- newtype Group = Group String
- userGroup :: User -> Group
- newtype Port = Port Int
- systemToTargetOS :: System -> TargetOS
Documentation
High level description of a operating system.
data Distribution Source #
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 # | |
Defined in Propellor.Types.OS (==) :: Distribution -> Distribution -> Bool # (/=) :: Distribution -> Distribution -> Bool # | |
Show Distribution Source # | |
Defined in Propellor.Types.OS showsPrec :: Int -> Distribution -> ShowS # show :: Distribution -> String # showList :: [Distribution] -> ShowS # |
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.
data DebianKernel Source #
Most of Debian ports are based on Linux. There also exist hurd-i386, kfreebsd-i386, kfreebsd-amd64 ports
Instances
Eq DebianKernel Source # | |
Defined in Propellor.Types.OS (==) :: DebianKernel -> DebianKernel -> Bool # (/=) :: DebianKernel -> DebianKernel -> Bool # | |
Show DebianKernel Source # | |
Defined in Propellor.Types.OS showsPrec :: Int -> DebianKernel -> ShowS # show :: DebianKernel -> String # showList :: [DebianKernel] -> ShowS # |
data DebianSuite Source #
Debian has several rolling suites, and a number of stable releases, such as Stable "buster".
Instances
Eq DebianSuite Source # | |
Defined in Propellor.Types.OS (==) :: DebianSuite -> DebianSuite -> Bool # (/=) :: DebianSuite -> DebianSuite -> Bool # | |
Show DebianSuite Source # | |
Defined in Propellor.Types.OS showsPrec :: Int -> DebianSuite -> ShowS # show :: DebianSuite -> String # showList :: [DebianSuite] -> ShowS # |
data FreeBSDRelease Source #
FreeBSD breaks their releases into Production and Legacy.
Instances
Eq FreeBSDRelease Source # | |
Defined in Propellor.Types.OS (==) :: FreeBSDRelease -> FreeBSDRelease -> Bool # (/=) :: FreeBSDRelease -> FreeBSDRelease -> Bool # | |
Show FreeBSDRelease Source # | |
Defined in Propellor.Types.OS showsPrec :: Int -> FreeBSDRelease -> ShowS # show :: FreeBSDRelease -> String # showList :: [FreeBSDRelease] -> ShowS # |
data FBSDVersion Source #
Instances
Eq FBSDVersion Source # | |
Defined in Propellor.Types.OS (==) :: FBSDVersion -> FBSDVersion -> Bool # (/=) :: FBSDVersion -> FBSDVersion -> Bool # | |
Show FBSDVersion Source # | |
Defined in Propellor.Types.OS showsPrec :: Int -> FBSDVersion -> ShowS # show :: FBSDVersion -> String # showList :: [FBSDVersion] -> ShowS # | |
IsString FBSDVersion Source # | |
Defined in Propellor.Types.OS fromString :: String -> FBSDVersion # | |
ConfigurableValue FBSDVersion Source # | |
Defined in Propellor.Types.OS val :: FBSDVersion -> String Source # |
isStable :: DebianSuite -> Bool Source #
data Architecture Source #
Many of these architecture names are based on the names used by Debian, with a few exceptions for clarity.
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 # | |
Defined in Propellor.Types.OS (==) :: Architecture -> Architecture -> Bool # (/=) :: Architecture -> Architecture -> Bool # | |
Show Architecture Source # | |
Defined in Propellor.Types.OS showsPrec :: Int -> Architecture -> ShowS # show :: Architecture -> String # showList :: [Architecture] -> ShowS # |
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"
.
Instances
Eq Port Source # | |
Ord Port Source # | |
Show Port Source # | |
ConfigurableValue Port Source # | |
Publishable Port Source # | |
Defined in Propellor.Property.Systemd | |
Publishable (Bound Port) Source # | |
Defined in Propellor.Property.Docker | |
Publishable (Bound Port) Source # | |
Defined in Propellor.Property.Systemd | |
Publishable (Proto, Bound Port) Source # | |
systemToTargetOS :: System -> TargetOS Source #