Safe Haskell | None |
---|---|
Language | Haskell98 |
Propellor.Types.OS
- 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.
Constructors
System Distribution Architecture |
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
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.
Constructors
OSDebian | |
OSBuntish | |
OSArchLinux | |
OSFreeBSD |
Instances
Eq TargetOS Source # | |
Ord TargetOS Source # | |
Show TargetOS Source # | |
type EqT TargetOS OSDebian OSDebian Source # | |
type EqT TargetOS OSDebian OSBuntish Source # | |
type EqT TargetOS OSDebian OSArchLinux Source # | |
type EqT TargetOS OSDebian OSFreeBSD Source # | |
type EqT TargetOS OSBuntish OSDebian Source # | |
type EqT TargetOS OSBuntish OSBuntish Source # | |
type EqT TargetOS OSBuntish OSArchLinux Source # | |
type EqT TargetOS OSBuntish OSFreeBSD Source # | |
type EqT TargetOS OSArchLinux OSDebian Source # | |
type EqT TargetOS OSArchLinux OSBuntish Source # | |
type EqT TargetOS OSArchLinux OSArchLinux Source # | |
type EqT TargetOS OSArchLinux OSFreeBSD Source # | |
type EqT TargetOS OSFreeBSD OSDebian Source # | |
type EqT TargetOS OSFreeBSD OSBuntish Source # | |
type EqT TargetOS OSFreeBSD OSArchLinux Source # | |
type EqT TargetOS OSFreeBSD OSFreeBSD Source # | |
data DebianKernel Source #
Most of Debian ports are based on Linux. There also exist hurd-i386, kfreebsd-i386, kfreebsd-amd64 ports
Instances
data DebianSuite Source #
Debian has several rolling suites, and a number of stable releases, such as Stable "stretch".
Constructors
Experimental | |
Unstable | |
Testing | |
Stable Release |
Instances
data FreeBSDRelease Source #
FreeBSD breaks their releases into Production and Legacy.
Constructors
FBSDProduction FBSDVersion | |
FBSDLegacy FBSDVersion |
Instances
data FBSDVersion 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.
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
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"
.
systemToTargetOS :: System -> TargetOS Source #