summaryrefslogtreecommitdiff
path: root/doc/forum/Supported_OS
diff options
context:
space:
mode:
authorJoey Hess2018-06-13 11:43:27 -0400
committerJoey Hess2018-06-13 11:43:27 -0400
commit7d3547e68d45f76b533a1b7b61430f38fb191970 (patch)
tree9df056f47413d93e5075cd6bd6c84463ef0c497e /doc/forum/Supported_OS
parent0e779832ba8177ca5ccc30aef1a050c28b210c82 (diff)
improve docs
Diffstat (limited to 'doc/forum/Supported_OS')
-rw-r--r--doc/forum/Supported_OS/comment_1_f324bed708305e2667bd00f80544dd90._comment48
-rw-r--r--doc/forum/Supported_OS/comment_2_4fcaadea6d57e4bf127fd28720e3ba20._comment7
-rw-r--r--doc/forum/Supported_OS/comment_3_f2924708a819b962ba7ed690019601ed._comment7
3 files changed, 34 insertions, 28 deletions
diff --git a/doc/forum/Supported_OS/comment_1_f324bed708305e2667bd00f80544dd90._comment b/doc/forum/Supported_OS/comment_1_f324bed708305e2667bd00f80544dd90._comment
index 7649e95e..4869922e 100644
--- a/doc/forum/Supported_OS/comment_1_f324bed708305e2667bd00f80544dd90._comment
+++ b/doc/forum/Supported_OS/comment_1_f324bed708305e2667bd00f80544dd90._comment
@@ -1,23 +1,43 @@
[[!comment format=mdwn
username="joey"
- subject="""comment 1"""
+ subject="""supported OS's and how to add more"""
date="2014-12-07T15:58:03Z"
content="""
-I have heard of propellor being used on OSX. Probably that user wrote their
-own code for OSX specific stuff.
+Propellor supports Debian and its derivatives, as well as FreeBSD and
+ArchLinux. See
+<http://hackage.haskell.org/package/propellor-5.4.0/docs/Propellor-Types-OS.html>
-Propellor properites can be parameterized by OS. Currently it has support
-for Debian and some untested support for *buntu. A property can be parameterized
-like this:
+Propellor keeps track of what OS's each property supports, as part of the
+type of the propery. So for example, it has separate properties for Debian
+and for FreeBSD that keep the OS's upgraded using their respective
+package managers:
- foo :: Property
- foo = property "foo" withOS desc $ \o -> case o of
- (Just (System (Debian _) _)) -> ensureProperty fooDebian
- (Just (System (Buntish _) _)) -> ensureProperty fooBuntu
+ Apt.upgraded :: Property DebianLike
+
+ Pkg.upgraded :: Property FreeBSD
-The first step for adding a new OS will be to modify <http://hackage.haskell.org/package/propellor/docs/Propellor-Types-OS.html>.
-Compilation will then warn about all OS parameterized properties that
-need to be updated to support your added OS, and it can be taken from there.
+Properties can be combined using `pickOS` to make a property that works
+on multiple OS's:
-I'll accept reasonable patches to support other OS's.
+ upgraded :: Property (DebianLike + FreeBSD)
+ upgraded = Apt.upgraded `pickOS` Pkg.upgraded
+
+The `withOS` function lets a single property do different things for
+different OS versions as well as different OS's.
+
+The ArchLinux and FreeBSD ports were done by propellor users,
+and both are good examples of the scope of the changes involved in making
+propellor support a new OS.
+
+Here are Zihao Wang's commits for ArchLinux support:
+
+* add types for Arch Linux [[!commit 442fa3706de3d7329552c78d314b5a8f653ca65d]]
+* bootstrap propellor using Pacman [[!commit 44f7f7f1c3014586fd574ba1d10a1063204850a7]]
+* add properties for Pacman [[!commit 5b946ea4e32657f64771f3e2ef8bc865afc4c1fc]]
+* add ArchLinux support to specific properties
+ [[!commit 92168164943dcf033682b9f9a26f81beb3c537f4]]
+ [[!commit 0b936d63931baa9cda6b243cf643ad1c71ce5c0b]]
+ [[!commit f95e4fc7dccb9691b8185166c44f83ce884463dc]]
+* fixed type of a property that wrongly claimed to support any Linux but actually
+ only supported DebianLike [[!commit 7781c8098f45481ac03c5ede989614eb8411a6aa]]
"""]]
diff --git a/doc/forum/Supported_OS/comment_2_4fcaadea6d57e4bf127fd28720e3ba20._comment b/doc/forum/Supported_OS/comment_2_4fcaadea6d57e4bf127fd28720e3ba20._comment
deleted file mode 100644
index 07c12d0b..00000000
--- a/doc/forum/Supported_OS/comment_2_4fcaadea6d57e4bf127fd28720e3ba20._comment
+++ /dev/null
@@ -1,7 +0,0 @@
-[[!comment format=mdwn
- username="joey"
- subject="""comment 2"""
- date="2016-03-08T01:48:35Z"
- content="""
-Propellor just got support for [[FreeBSD]]!
-"""]]
diff --git a/doc/forum/Supported_OS/comment_3_f2924708a819b962ba7ed690019601ed._comment b/doc/forum/Supported_OS/comment_3_f2924708a819b962ba7ed690019601ed._comment
deleted file mode 100644
index c03f6cd9..00000000
--- a/doc/forum/Supported_OS/comment_3_f2924708a819b962ba7ed690019601ed._comment
+++ /dev/null
@@ -1,7 +0,0 @@
-[[!comment format=mdwn
- username="joey"
- subject="""Arch too!"""
- date="2017-02-04T21:30:26Z"
- content="""
-Propellor just got support for Arch Linux!
-"""]]