Use rules_shell in tests

This is required for testing with bazel @ HEAD
diff --git a/MODULE.bazel b/MODULE.bazel
index 55d4c87..36e555e 100644
--- a/MODULE.bazel
+++ b/MODULE.bazel
@@ -14,6 +14,7 @@
 bazel_dep(name = "platforms", version = "0.0.10", dev_dependency = True)
 bazel_dep(name = "rules_cc", version = "0.0.17", dev_dependency = True)
 bazel_dep(name = "stardoc", version = "0.7.2", dev_dependency = True)
+bazel_dep(name = "rules_shell", version = "0.3.0", dev_dependency = True)
 
 # Find the system rpmbuild if one is available.
 find_rpm = use_extension("//toolchains/rpm:rpmbuild_configure.bzl", "find_system_rpmbuild_bzlmod", dev_dependency = True)
diff --git a/tests/BUILD b/tests/BUILD
index 93774a2..8ff3a79 100644
--- a/tests/BUILD
+++ b/tests/BUILD
@@ -15,6 +15,7 @@
 
 load("@rules_cc//cc:defs.bzl", "cc_binary", "cc_library")
 load("@rules_python//python:defs.bzl", "py_test")
+load("@rules_shell//shell:sh_test.bzl", "sh_test")
 load("//pkg:deb.bzl", "pkg_deb")
 load("//pkg:mappings.bzl", "pkg_attributes", "pkg_files", "strip_prefix")
 load("//pkg:tar.bzl", "pkg_tar")
diff --git a/tests/mappings/filter_directory/defs.bzl b/tests/mappings/filter_directory/defs.bzl
index eb1dd62..344c08a 100644
--- a/tests/mappings/filter_directory/defs.bzl
+++ b/tests/mappings/filter_directory/defs.bzl
@@ -15,6 +15,7 @@
 """Rules and macros to support testing rules that output directories."""
 
 load("@rules_python//python:defs.bzl", "py_test")
+load("@rules_shell//shell:sh_library.bzl", "sh_library")
 
 def _inspect_directory_script_impl(ctx):
     script = ctx.actions.declare_file("{}.py".format(ctx.attr.name))
@@ -58,7 +59,7 @@
 
     # This appears to be necessary because of
     # https://github.com/bazelbuild/bazel/issues/1147
-    native.sh_library(
+    sh_library(
         name = name + "_dir_lib",
         srcs = [directory],
     )
diff --git a/tests/rpm/BUILD b/tests/rpm/BUILD
index 1146158..070374a 100644
--- a/tests/rpm/BUILD
+++ b/tests/rpm/BUILD
@@ -16,6 +16,7 @@
 load("@bazel_skylib//rules:build_test.bzl", "build_test")
 load("@bazel_skylib//rules:diff_test.bzl", "diff_test")
 load("@rules_python//python:defs.bzl", "py_library", "py_test")
+load("@rules_shell//shell:sh_library.bzl", "sh_library")
 load(
     "//pkg:mappings.bzl",
     "pkg_attributes",
diff --git a/tests/rpm/source_date_epoch/BUILD b/tests/rpm/source_date_epoch/BUILD
index 156f844..59c944f 100644
--- a/tests/rpm/source_date_epoch/BUILD
+++ b/tests/rpm/source_date_epoch/BUILD
@@ -13,6 +13,7 @@
 # limitations under the License.
 
 load("@rules_python//python:defs.bzl", "py_test")
+load("@rules_shell//shell:sh_library.bzl", "sh_library")
 load("//pkg:mappings.bzl", "pkg_filegroup", "pkg_files")
 load("//pkg:rpm.bzl", "pkg_rpm")
 
diff --git a/tests/rpm/tree_artifacts/BUILD b/tests/rpm/tree_artifacts/BUILD
index d295a1a..a1f1344 100644
--- a/tests/rpm/tree_artifacts/BUILD
+++ b/tests/rpm/tree_artifacts/BUILD
@@ -13,6 +13,7 @@
 # limitations under the License.
 
 load("@rules_python//python:defs.bzl", "py_test")
+load("@rules_shell//shell:sh_library.bzl", "sh_library")
 load(
     "//pkg:mappings.bzl",
     "REMOVE_BASE_DIRECTORY",