diff --git a/osbase/blockdev/BUILD.bazel b/osbase/blockdev/BUILD.bazel
index a720d80..f9a8534 100644
--- a/osbase/blockdev/BUILD.bazel
+++ b/osbase/blockdev/BUILD.bazel
@@ -1,5 +1,5 @@
 load("@io_bazel_rules_go//go:def.bzl", "go_library", "go_test")
-load("//osbase/test/ktest:ktest.bzl", "ktest")
+load("//osbase/test/ktest:ktest.bzl", "k_test")
 
 go_library(
     name = "blockdev",
@@ -50,6 +50,7 @@
     }),
 )
 
-ktest(
+k_test(
+    name = "ktest",
     tester = ":blockdev_test",
 )
diff --git a/osbase/build/def.bzl b/osbase/build/def.bzl
index 57a7dab..73752f7 100644
--- a/osbase/build/def.bzl
+++ b/osbase/build/def.bzl
@@ -49,9 +49,9 @@
     },
 )
 
-def _fsspec_core_impl(ctx, tool, output_file):
+def fsspec_core_impl(ctx, tool, output_file, extra_files = [], extra_fsspecs = []):
     """
-    _fsspec_core_impl implements the core of an fsspec-based rule. It takes
+    fsspec_core_impl implements the core of an fsspec-based rule. It takes
     input from the `files`,`files_cc`, `symlinks` and `fsspecs` attributes
     and calls `tool` with the `-out` parameter pointing to `output_file`
     and paths to all fsspecs as positional arguments.
@@ -61,7 +61,7 @@
 
     fs_files = []
     inputs = []
-    for label, p in ctx.attr.files.items() + ctx.attr.files_cc.items():
+    for label, p in ctx.attr.files.items() + ctx.attr.files_cc.items() + extra_files:
         if not p.startswith("/"):
             fail("file {} invalid: must begin with /".format(p))
 
@@ -97,7 +97,7 @@
 
     extra_specs = []
 
-    for fsspec in ctx.attr.fsspecs:
+    for fsspec in ctx.attr.fsspecs + extra_fsspecs:
         if FSSpecInfo in fsspec:
             fsspec_info = fsspec[FSSpecInfo]
             extra_specs.append(fsspec_info.spec)
@@ -121,7 +121,7 @@
     initramfs_name = ctx.label.name + ".cpio.zst"
     initramfs = ctx.actions.declare_file(initramfs_name)
 
-    _fsspec_core_impl(ctx, ctx.executable._mkcpio, initramfs)
+    fsspec_core_impl(ctx, ctx.executable._mkcpio, initramfs)
 
     # TODO(q3k): Document why this is needed
     return [DefaultInfo(runfiles = ctx.runfiles(files = [initramfs]), files = depset([initramfs]))]
@@ -184,7 +184,7 @@
     fs_name = ctx.label.name + ".img"
     fs_out = ctx.actions.declare_file(fs_name)
 
-    _fsspec_core_impl(ctx, ctx.executable._mkerofs, fs_out)
+    fsspec_core_impl(ctx, ctx.executable._mkerofs, fs_out)
 
     return [DefaultInfo(files = depset([fs_out]))]
 
diff --git a/osbase/erofs/BUILD.bazel b/osbase/erofs/BUILD.bazel
index d48eb1f..52f960c 100644
--- a/osbase/erofs/BUILD.bazel
+++ b/osbase/erofs/BUILD.bazel
@@ -1,5 +1,5 @@
 load("@io_bazel_rules_go//go:def.bzl", "go_library", "go_test")
-load("//osbase/test/ktest:ktest.bzl", "ktest")
+load("//osbase/test/ktest:ktest.bzl", "k_test")
 
 go_library(
     name = "erofs",
@@ -30,7 +30,8 @@
     ],
 )
 
-ktest(
+k_test(
+    name = "ktest",
     cmdline = "ramdisk_size=128",
     tester = ":erofs_test",
 )
diff --git a/osbase/fat32/BUILD.bazel b/osbase/fat32/BUILD.bazel
index 4942844..1e0e909 100644
--- a/osbase/fat32/BUILD.bazel
+++ b/osbase/fat32/BUILD.bazel
@@ -1,5 +1,5 @@
 load("@io_bazel_rules_go//go:def.bzl", "go_library", "go_test")
-load("//osbase/test/ktest:ktest.bzl", "ktest")
+load("//osbase/test/ktest:ktest.bzl", "k_test")
 
 go_library(
     name = "fat32",
@@ -35,7 +35,8 @@
     ],
 )
 
-ktest(
+k_test(
+    name = "ktest",
     cmdline = "ramdisk_size=266240",
     tester = ":fat32_test",
 )
diff --git a/osbase/fsquota/BUILD.bazel b/osbase/fsquota/BUILD.bazel
index 7c62fd7..75a3133 100644
--- a/osbase/fsquota/BUILD.bazel
+++ b/osbase/fsquota/BUILD.bazel
@@ -1,5 +1,5 @@
 load("@io_bazel_rules_go//go:def.bzl", "go_library", "go_test")
-load("//osbase/test/ktest:ktest.bzl", "ktest")
+load("//osbase/test/ktest:ktest.bzl", "k_test")
 
 go_library(
     name = "fsquota",
@@ -23,7 +23,8 @@
     ],
 )
 
-ktest(
+k_test(
+    name = "ktest",
     cmdline = "ramdisk_size=51200",
     files_cc = {
         "@xfsprogs//:mkfs": "/mkfs.xfs",
diff --git a/osbase/gpt/BUILD.bazel b/osbase/gpt/BUILD.bazel
index 67a54ee..6c561d4 100644
--- a/osbase/gpt/BUILD.bazel
+++ b/osbase/gpt/BUILD.bazel
@@ -1,5 +1,5 @@
 load("@io_bazel_rules_go//go:def.bzl", "go_library", "go_test")
-load("//osbase/test/ktest:ktest.bzl", "ktest")
+load("//osbase/test/ktest:ktest.bzl", "k_test")
 
 go_library(
     name = "gpt",
@@ -31,7 +31,8 @@
     ],
 )
 
-ktest(
+k_test(
+    name = "ktest",
     cmdline = "ramdisk_size=4096",
     tester = ":gpt_test",
 )
diff --git a/osbase/kmod/BUILD.bazel b/osbase/kmod/BUILD.bazel
index 4bf0fb5..ce37542 100644
--- a/osbase/kmod/BUILD.bazel
+++ b/osbase/kmod/BUILD.bazel
@@ -1,6 +1,6 @@
 load("@io_bazel_rules_go//go:def.bzl", "go_library", "go_test")
 load("//osbase/build/fwprune:def.bzl", "fsspec_linux_firmware")
-load("//osbase/test/ktest:ktest.bzl", "ktest")
+load("//osbase/test/ktest:ktest.bzl", "k_test")
 
 go_library(
     name = "kmod",
@@ -41,7 +41,8 @@
     metadata = "@linux-firmware//:metadata",
 )
 
-ktest(
+k_test(
+    name = "ktest",
     fsspecs = [
         ":firmware",
     ],
diff --git a/osbase/loop/BUILD.bazel b/osbase/loop/BUILD.bazel
index cc52c8d..eca8529 100644
--- a/osbase/loop/BUILD.bazel
+++ b/osbase/loop/BUILD.bazel
@@ -1,5 +1,5 @@
 load("@io_bazel_rules_go//go:def.bzl", "go_library", "go_test")
-load("//osbase/test/ktest:ktest.bzl", "ktest")
+load("//osbase/test/ktest:ktest.bzl", "k_test")
 
 go_library(
     name = "loop",
@@ -20,6 +20,7 @@
     ],
 )
 
-ktest(
+k_test(
+    name = "ktest",
     tester = ":loop_test",
 )
diff --git a/osbase/test/ktest/ktest.bzl b/osbase/test/ktest/ktest.bzl
index 614832d..42e6b60 100644
--- a/osbase/test/ktest/ktest.bzl
+++ b/osbase/test/ktest/ktest.bzl
@@ -18,41 +18,118 @@
 Ktest provides a macro to run tests under a normal Metropolis node kernel
 """
 
-load("//osbase/build:def.bzl", "node_initramfs")
+load("//osbase/build:def.bzl", "FSSpecInfo", "build_pure_transition", "build_static_transition", "fsspec_core_impl")
 
-def _dict_union(x, y):
-    z = {}
-    z.update(x)
-    z.update(y)
-    return z
+_KTEST_SCRIPT = """
+#!/usr/bin/env bash
 
-def ktest(tester, cmdline = "", files = {}, fsspecs = [], files_cc = {}):
-    node_initramfs(
-        name = "test_initramfs",
-        fsspecs = [
-            "//osbase/build:earlydev.fsspec",
-        ] + fsspecs,
-        files = _dict_union({
-            "//osbase/test/ktest/init": "/init",
-            tester: "/tester",
-        }, files),
-        files_cc = files_cc,
-        testonly = True,
+exec "{ktest}" -initrd-path "{initrd}" -kernel-path "{kernel}" -cmdline "{cmdline}"
+"""
+
+def _ktest_impl(ctx):
+    initramfs_name = ctx.label.name + ".cpio.zst"
+    initramfs = ctx.actions.declare_file(initramfs_name)
+
+    fsspec_core_impl(ctx, ctx.executable._mkcpio, initramfs, [(ctx.attr._ktest_init[0], "/init"), (ctx.attr.tester[0], "/tester")], [ctx.attr._earlydev])
+
+    script_file = ctx.actions.declare_file(ctx.label.name + ".sh")
+
+    ctx.actions.write(
+        output = script_file,
+        content = _KTEST_SCRIPT.format(
+            ktest = ctx.executable._ktest.short_path,
+            initrd = initramfs.short_path,
+            kernel = ctx.file.kernel.short_path,
+            cmdline = ctx.attr.cmdline,
+        ),
+        is_executable = True,
     )
 
-    native.sh_test(
-        name = "ktest",
-        args = [
-            "$(location //osbase/test/ktest)",
-            "$(location :test_initramfs)",
-            "$(location //osbase/test/ktest:linux-testing)",
-            cmdline,
-        ],
-        size = "small",
-        srcs = ["//osbase/test/ktest:test-script"],
-        data = [
-            "//osbase/test/ktest",
-            ":test_initramfs",
-            "//osbase/test/ktest:linux-testing",
-        ],
-    )
+    return [DefaultInfo(
+        executable = script_file,
+        runfiles = ctx.runfiles(
+            files = [ctx.files._ktest[0], initramfs, ctx.file.kernel, ctx.file.tester],
+        ),
+    )]
+
+k_test = rule(
+    implementation = _ktest_impl,
+    doc = """
+        Run a given test program under the Monogon kernel. 
+    """,
+    attrs = {
+        "tester": attr.label(
+            mandatory = True,
+            executable = True,
+            allow_single_file = True,
+            # Runs inside the given kernel, needs to be build for Linux/static
+            cfg = build_static_transition,
+        ),
+        "files": attr.label_keyed_string_dict(
+            allow_files = True,
+            doc = """
+                Dictionary of Labels to String, placing a given Label's output file in the initramfs at the location
+                specified by the String value. The specified labels must only have a single output.
+            """,
+            # Attach pure transition to ensure all binaries added to the initramfs are pure/static binaries.
+            cfg = build_pure_transition,
+        ),
+        "files_cc": attr.label_keyed_string_dict(
+            allow_files = True,
+            doc = """
+                 Special case of 'files' for compilation targets that need to be built with the musl toolchain like
+                 go_binary targets which need cgo or cc_binary targets.
+            """,
+            # Attach static transition to all files_cc inputs to ensure they are built with musl and static.
+            cfg = build_static_transition,
+        ),
+        "symlinks": attr.string_dict(
+            default = {},
+            doc = """
+                Symbolic links to create. Similar format as in files and files_cc, so the target of the symlink is the
+                key and the value of it is the location of the symlink itself. Only raw strings are allowed as targets,
+                labels are not permitted. Include the file using files or files_cc, then symlink to its location.
+            """,
+        ),
+        "fsspecs": attr.label_list(
+            default = [],
+            doc = """
+                List of file system specs (osbase.build.fsspec.FSSpec) to also include in the resulting image.
+                These will be merged with all other given attributes.
+            """,
+            providers = [FSSpecInfo],
+            allow_files = True,
+        ),
+        "kernel": attr.label(
+            default = Label("//osbase/test/ktest:linux-testing"),
+            cfg = "exec",
+            allow_single_file = True,
+        ),
+        "cmdline": attr.string(
+            default = "",
+        ),
+        # Tool
+        "_ktest": attr.label(
+            default = Label("//osbase/test/ktest"),
+            cfg = "exec",
+            executable = True,
+            allow_files = True,
+        ),
+        "_ktest_init": attr.label(
+            default = Label("//osbase/test/ktest/init"),
+            cfg = build_pure_transition,
+            executable = True,
+            allow_single_file = True,
+        ),
+        "_mkcpio": attr.label(
+            default = Label("//osbase/build/mkcpio"),
+            executable = True,
+            cfg = "exec",
+        ),
+        "_earlydev": attr.label(
+            default = Label("//osbase/build:earlydev.fsspec"),
+            allow_files = True,
+        ),
+    },
+    test = True,
+)
diff --git a/osbase/test/launch/launch.go b/osbase/test/launch/launch.go
index cf165a1..df84e7d 100644
--- a/osbase/test/launch/launch.go
+++ b/osbase/test/launch/launch.go
@@ -294,7 +294,7 @@
 	}
 
 	var stdErrBuf bytes.Buffer
-	cmd := exec.CommandContext(ctx, "qemu-system-x86_64", append(baseArgs, extraArgs...)...)
+	cmd := exec.CommandContext(ctx, "/usr/bin/qemu-system-x86_64", append(baseArgs, extraArgs...)...)
 	cmd.Stdout = opts.SerialPort
 	cmd.Stderr = &stdErrBuf
 
diff --git a/osbase/verity/BUILD.bazel b/osbase/verity/BUILD.bazel
index 69cd10f..c44dd2a 100644
--- a/osbase/verity/BUILD.bazel
+++ b/osbase/verity/BUILD.bazel
@@ -1,5 +1,5 @@
 load("@io_bazel_rules_go//go:def.bzl", "go_library", "go_test")
-load("//osbase/test/ktest:ktest.bzl", "ktest")
+load("//osbase/test/ktest:ktest.bzl", "k_test")
 
 go_library(
     name = "verity",
@@ -19,7 +19,8 @@
     ],
 )
 
-ktest(
+k_test(
+    name = "ktest",
     cmdline = "ramdisk_size=16384",
     tester = ":verity_test",
 )
