diff --git a/ChangeLog.md b/ChangeLog.md
--- a/ChangeLog.md
+++ b/ChangeLog.md
@@ -1,3 +1,8 @@
+# 0.4.12 (2024-08-04)
+- fix ordering of rust crates and rubygems
+  by mapping their dynamic BRs to package names
+- drop the manpage generated from --help
+
 # 0.4.11 (2024-02-18)
 - ProvReqs: new module for rpmspec dependency functions
 - ProvReqs: generate pkgconfig and cmake provides from %files (#4)
diff --git a/README.md b/README.md
--- a/README.md
+++ b/README.md
@@ -12,10 +12,12 @@
 ## Usage
 
 `$ rpmbuild-order --version`
+
 ```
-0.4.11
+0.4.12
 ```
 `$ rpmbuild-order --help`
+
 ```
 Order packages by build dependencies
 
diff --git a/rpmbuild-order.1 b/rpmbuild-order.1
deleted file mode 100644
--- a/rpmbuild-order.1
+++ /dev/null
@@ -1,43 +0,0 @@
-.\" DO NOT MODIFY THIS FILE!  It was generated by help2man 1.49.3.
-.TH RPMBUILD-ORDER "1" "February 2024" "rpmbuild-order 0.4.11" "User Commands"
-.SH NAME
-rpmbuild-order \- manual page for rpmbuild-order 0.4.11
-.SH SYNOPSIS
-.B rpmbuild-order
-[\fI\,--version\/\fR] \fI\,COMMAND\/\fR
-.SH DESCRIPTION
-Order packages by build dependencies
-.IP
-Sort package sources (spec files) in build dependency order
-.SS "Available options:"
-.TP
-\fB\-h\fR,\-\-help
-Show this help text
-.TP
-\fB\-\-version\fR
-Show version
-.SS "Available commands:"
-.TP
-sort
-sort packages
-.TP
-deps
-sort dependencies in neighbouring package dirs
-.TP
-rdeps
-sort dependents in neighbouring package dirs
-.TP
-layers
-ordered output of dependency layers
-.TP
-chain
-ordered output suitable for a chain\-build
-.TP
-leaves
-List of the top leaves of package graph
-.TP
-roots
-List lowest root packages
-.TP
-render
-Show graph with graphviz
diff --git a/rpmbuild-order.cabal b/rpmbuild-order.cabal
--- a/rpmbuild-order.cabal
+++ b/rpmbuild-order.cabal
@@ -1,5 +1,5 @@
 Name:             rpmbuild-order
-Version:          0.4.11
+Version:          0.4.12
 License:          BSD3
 License-File:     LICENSE
 Author:           Jens Petersen <petersen@redhat.com>,
@@ -26,12 +26,11 @@
   Since version 0.4, a library API is provided.
 Tested-with:       GHC == 8.0.2, GHC == 8.2.2, GHC == 8.4.4, GHC == 8.6.5,
                    GHC == 8.8.4, GHC == 8.10.7, GHC == 9.0.2, GHC == 9.2.8,
-                   GHC == 9.4.8, GHC == 9.6.4, GHC == 9.8.1
+                   GHC == 9.4.8, GHC == 9.6.6, GHC == 9.8.2
 Cabal-Version:     1.18
 Build-Type:        Simple
 Extra-doc-files:    README.md TODO ChangeLog.md
-Extra-source-files: rpmbuild-order.1
-                    test/pkgs/A/A.spec
+Extra-source-files: test/pkgs/A/A.spec
                     test/pkgs/B/B.spec
                     test/pkgs/C/C.spec
                     test/pkgs/D1.0/D1.0.spec
diff --git a/src/Distribution/RPM/Build/ProvReqs.hs b/src/Distribution/RPM/Build/ProvReqs.hs
--- a/src/Distribution/RPM/Build/ProvReqs.hs
+++ b/src/Distribution/RPM/Build/ProvReqs.hs
@@ -15,7 +15,8 @@
 import Data.Maybe (mapMaybe)
 import SimpleCmd (cmdFull, cmdLines, cmdStdErr, egrep_, error',
                   grep, warning, (+-+))
-import System.Directory (doesFileExist)
+import SimpleCmd.Git (isGitDir)
+import System.Directory (doesFileExist, getCurrentDirectory)
 import System.Exit (exitFailure)
 import System.FilePath
 import System.IO.Extra (withTempDir)
@@ -29,9 +30,8 @@
 rpmspecProvidesBuildRequires :: Bool -- ^ lenient (allow failure)
                              -> [String] -- ^ RPM opts
                              -> FilePath -- ^ spec file
-                             -> IO (Maybe ([String], -- ^ Provides
-                                           [String]  -- ^ BuildRequires
-                                          ))
+                             -- ghc 8.10 haddock cannot annotate inside type
+                             -> IO (Maybe ([String], [String])) -- ^ (Provs,BRs)
 rpmspecProvidesBuildRequires lenient rpmopts spec = do
   dynbr <- generateBuildRequires spec
   if dynbr
@@ -41,7 +41,7 @@
       dynprovs <- dynProvides
       prs <- rpmspecProvides lenient rpmopts spec
       return $ dynprovs ++ prs
-    return $ Just (provs, brs)
+    return $ Just (provs, mapMaybe simplifyDep brs)
     else do
     mcontent <- rpmspecParse
     case mcontent of
@@ -111,21 +111,28 @@
           _ -> Just dep
 
 rpmspecDynBuildRequires :: FilePath -> IO [String]
-rpmspecDynBuildRequires spec = do
+rpmspecDynBuildRequires spec =
   withTempDir $ \tmpdir -> do
-    (out,err) <- cmdStdErr "rpmbuild" ["-br", "--nodeps", "--define", "_srcrpmdir" +-+ tmpdir, spec]
-    -- Wrote: /current/dir/SRPMS/name-version-release.buildreqs.nosrc.rpm
-    let errmsg =
-          "failed to generate srpm for dynamic buildrequires for" +-+ spec ++
-          "\n\n" ++ err
-    case words out of
-      [] -> error' errmsg
-      ws -> do
-        let srpm = last ws
-        exists <- doesFileExist srpm
-        if exists
-          then cmdLines "rpm" ["-qp", "--requires", last ws]
-          else error' errmsg
+  sourceopt <- do
+    isgit <- isGitDir "."
+    if isgit
+      then do
+      cwd <- getCurrentDirectory
+      return ["--define", "_sourcedir" +-+ cwd]
+      else return []
+  (out,err) <- cmdStdErr "rpmbuild" $ ["-br", "--nodeps", "--define", "_srcrpmdir" +-+ tmpdir, spec] ++ sourceopt
+  -- Wrote: /current/dir/SRPMS/name-version-release.buildreqs.nosrc.rpm
+  let errmsg =
+        "failed to generate srpm for dynamic buildrequires for" +-+ spec ++
+        "\n\n" ++ err
+  case words out of
+    [] -> error' errmsg
+    ws -> do
+      let srpm = last ws
+      exists <- doesFileExist srpm
+      if exists
+        then cmdLines "rpm" ["-qp", "--requires", last ws]
+        else error' errmsg
 
 rpmspecProvides :: Bool -> [String] -> FilePath -> IO [String]
 rpmspecProvides lenient rpmopts spec = do
