summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--config-joey.hs9
-rw-r--r--src/Propellor/Property/Grub.hs8
-rw-r--r--src/Propellor/Property/HostingProvider/Linode.hs2
3 files changed, 13 insertions, 6 deletions
diff --git a/config-joey.hs b/config-joey.hs
index 09df857f..d269c4e7 100644
--- a/config-joey.hs
+++ b/config-joey.hs
@@ -78,8 +78,13 @@ hosts = -- (o) `
& ipv4 "66.228.36.95"
& ipv6 "2600:3c03::f03c:91ff:fe73:b0d2"
+ & File.hasContent "/etc/motd"
+ [ "Welcome to the new kitenet.net server!"
+ , "This is still under construction and not yet live.."
+ ]
+
& Apt.installed ["linux-image-amd64"]
- & Linode.chainPVGrub
+ & Linode.chainPVGrub 5
& Hostname.sane
& Apt.unattendedUpgrades
& Apt.installed ["systemd"]
@@ -151,7 +156,7 @@ hosts = -- (o) `
in standardSystem "elephant.kitenet.net" Unstable "amd64"
& ipv4 "193.234.225.114"
- & Grub.chainPVGrub "hd0,0" "xen/xvda1"
+ & Grub.chainPVGrub "hd0,0" "xen/xvda1" 30
& Hostname.sane
& Postfix.satellite
& Apt.unattendedUpgrades
diff --git a/src/Propellor/Property/Grub.hs b/src/Propellor/Property/Grub.hs
index b8e1b662..841861f4 100644
--- a/src/Propellor/Property/Grub.hs
+++ b/src/Propellor/Property/Grub.hs
@@ -7,6 +7,8 @@ import qualified Propellor.Property.Apt as Apt
-- | Eg, hd0,0 or xen/xvda1
type GrubDevice = String
+type TimeoutSecs = Int
+
-- | Use PV-grub chaining to boot
--
-- Useful when the VPS's pv-grub is too old to boot a modern kernel image.
@@ -15,12 +17,12 @@ type GrubDevice = String
--
-- The rootdev should be in the form "hd0", while the bootdev is in the form
-- "xen/xvda".
-chainPVGrub :: GrubDevice -> GrubDevice -> Property
-chainPVGrub rootdev bootdev = combineProperties desc
+chainPVGrub :: GrubDevice -> GrubDevice -> TimeoutSecs -> Property
+chainPVGrub rootdev bootdev timeout = combineProperties desc
[ File.dirExists "/boot/grub"
, "/boot/grub/menu.lst" `File.hasContent`
[ "default 1"
- , "timeout 30"
+ , "timeout " ++ show timeout
, ""
, "title grub-xen shim"
, "root (" ++ rootdev ++ ")"
diff --git a/src/Propellor/Property/HostingProvider/Linode.hs b/src/Propellor/Property/HostingProvider/Linode.hs
index cfabe814..34d72184 100644
--- a/src/Propellor/Property/HostingProvider/Linode.hs
+++ b/src/Propellor/Property/HostingProvider/Linode.hs
@@ -6,5 +6,5 @@ import qualified Propellor.Property.Grub as Grub
-- | Linode's pv-grub-x86_64 does not currently support booting recent
-- Debian kernels compressed with xz. This sets up pv-grub chaing to enable
-- it.
-chainPVGrub :: Property
+chainPVGrub :: Grub.TimeoutSecs -> Property
chainPVGrub = Grub.chainPVGrub "hd0" "xen/xvda"