diff --git a/manifests/grub0/kernel_option.pp b/manifests/grub0/kernel_option.pp
index 578442f720770e2d08eaaa0f22871cf255054f43..5cee05f9a1bae23f3b6b4b86211a579235e0ec26 100644
--- a/manifests/grub0/kernel_option.pp
+++ b/manifests/grub0/kernel_option.pp
@@ -1,4 +1,4 @@
-# Copyright © 2017   Thomas Bellman, Linköping, Sweden
+# Copyright © 2017-2018   Thomas Bellman, Linköping, Sweden
 # Licensed under the GNU LGPL v3+; see the README file for more information.
 
 
@@ -7,18 +7,14 @@
  */
 define bootloader::grub0::kernel_option($ensure, $value)
 {
-    $prefix = '^(\s*kernel\s(|.*\s))'
-    $suffix = '(|\s.*)$'
-    $qname = regexp_quote($name)
-
     if ($ensure == 'absent')
     {
-	regexp_replace_lines {
+	augeas {
 	    "bootloader::grub0::kernel_option::${name}":
-		file => '/boot/grub/grub.conf',
-		pattern => "${prefix}${qname}(=\\S*)?${suffix}",
-		# \1 is prefix, \4 is suffix
-		replacement => '\1\4';
+		incl => '/boot/grub/grub.conf',
+		lens => 'Grub.lns',
+		context => '/files/boot/grub/grub.conf',
+		changes => "rm title[*]/kernel/${name}";
 	}
     }
     elsif ($ensure != 'present')