[Bug 1932084] Re: MANPAGER="grep -F {" man systemd.exec leads to man: command exited with status 1: sed -e ...

Colin Watson 1932084 at bugs.launchpad.net
Mon Jan 31 02:35:58 UTC 2022


** Changed in: man-db (Ubuntu)
       Status: New => Triaged

** Changed in: man-db (Ubuntu)
   Importance: Undecided => Low

-- 
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to man-db in Ubuntu.
https://bugs.launchpad.net/bugs/1932084

Title:
  MANPAGER="grep -F {" man systemd.exec leads to man: command exited
  with status 1: sed -e ...

Status in man-db package in Ubuntu:
  Triaged

Bug description:
  Hello, I wanted to search the systemd.exec(5) manpage for an opening
  brace character, {, in a manner that would be easy to copy-and-paste
  the results if there were any. This unfortunately gives an error
  message:

  $ MANPAGER="grep -F {" man systemd.exec
  man: command exited with status 1: sed -e '/^[[:space:]]*$/{ N; /^[[:space:]]*\n[[:space:]]*$/D; }' | LESS=-ix8RmPm Manual page systemd\.exec(5) ?ltline %lt?L/%L.:byte %bB?s/%s..?e (END):?pB %pB\%.. (press h for help or q to quit)$PM Manual page systemd\.exec(5) ?ltline %lt?L/%L.:byte %bB?s/%s..?e (END):?pB %pB\%.. (press h for help or q to quit)$ MAN_PN=systemd\.exec(5) grep -F {
  $ MANPAGER="grep -F {" man apparmor
                 profile foo flags=(audit) { ... }
  $ 

  It works fine on a simple example, apparmor(7). Other patterns work
  with systemd.exec(5):

  $ MANPAGER="grep -F aa" man systemd.exec
                 StateDirectory=aaa/bbb ccc
             then the environment variable "RUNTIME_DIRECTORY" is set with "/run/foo/bar", and "STATE_DIRECTORY" is set with "/var/lib/aaa/bbb:/var/lib/ccc".
  $ 

  Thus I think when the pager doesn't provide any output we get an ugly
  error message. I expected no output at all if the pattern doesn't
  match.

  Thanks

  And now the --debug output:

  $ MANPAGER="grep -F {" man --debug -s 5 systemd.exec
  ruid=1000, euid=1000
  rgid=1000, egid=1000
  ++priv_drop_count = 1
  From the config file /etc/manpath.config:
    Mandatory mandir `/usr/man'.
    Mandatory mandir `/usr/share/man'.
    Mandatory mandir `/usr/local/share/man'.
    Path `/bin' mapped to mandir `/usr/share/man'.
    Path `/usr/bin' mapped to mandir `/usr/share/man'.
    Path `/sbin' mapped to mandir `/usr/share/man'.
    Path `/usr/sbin' mapped to mandir `/usr/share/man'.
    Path `/usr/local/bin' mapped to mandir `/usr/local/man'.
    Path `/usr/local/bin' mapped to mandir `/usr/local/share/man'.
    Path `/usr/local/sbin' mapped to mandir `/usr/local/man'.
    Path `/usr/local/sbin' mapped to mandir `/usr/local/share/man'.
    Path `/usr/X11R6/bin' mapped to mandir `/usr/X11R6/man'.
    Path `/usr/bin/X11' mapped to mandir `/usr/X11R6/man'.
    Path `/usr/games' mapped to mandir `/usr/share/man'.
    Path `/opt/bin' mapped to mandir `/opt/man'.
    Path `/opt/sbin' mapped to mandir `/opt/man'.
    Global mandir `/usr/man', catdir `/var/cache/man/fsstnd'.
    Global mandir `/usr/share/man', catdir `/var/cache/man'.
    Global mandir `/usr/local/man', catdir `/var/cache/man/oldlocal'.
    Global mandir `/usr/local/share/man', catdir `/var/cache/man/local'.
    Global mandir `/usr/X11R6/man', catdir `/var/cache/man/X11R6'.
    Global mandir `/opt/man', catdir `/var/cache/man/opt'.
    Global mandir `/snap/man', catdir `/var/cache/man/snap'.
    Added sections: `1', `n', `l', `8', `3', `2', `3posix', `3pm', `3perl', `3am', `5', `4', `9', `6', `7'.
  is a tty
  using grep -F { as pager
  path directory /home/sarnold/bin is not in the config file
  path directory /usr/local/sbin is in the config file
    adding /usr/local/man to manpath
    adding /usr/local/share/man to manpath
  path directory /usr/local/bin is in the config file
  path directory /usr/sbin is in the config file
    adding /usr/share/man to manpath
  path directory /usr/bin is in the config file
  path directory /sbin is in the config file
  path directory /bin is in the config file
  path directory /usr/games is in the config file
  path directory /usr/local/games is not in the config file
  path directory /snap/bin is not in the config file
  adding mandatory man directories
  warning: /usr/man: No such file or directory
  add_nls_manpaths(): processing /usr/local/man:/usr/local/share/man:/usr/share/man
  checking for locale en_US.UTF-8
  adding /usr/local/man to manpathlist
  adding /usr/share/man to manpathlist
  final search path = /usr/local/man:/usr/share/man
  --priv_drop_count = 0
  searching in /usr/local/man, section 5
  trying section 5 with globbing
  Layout is GNU (1)
  update_directory_cache /usr/local/man: miss
  globbing pattern in /usr/local/man: man5*
  update_directory_cache /usr/local/man: hit
  globbing pattern in /usr/local/man: cat5*
  Failed to open /var/cache/man/oldlocal/index.db O_RDONLY
  searching in /usr/share/man, section 5
  trying section 5 with globbing
  update_directory_cache /usr/share/man: miss
  globbing pattern in /usr/share/man: man5*
  matched: /usr/share/man/man5
  update_directory_cache /usr/share/man/man5: miss
  globbing pattern in /usr/share/man/man5: systemd.exec.5*
  matched: /usr/share/man/man5/systemd.exec.5.gz

  ult_src: File /usr/share/man/man5/systemd.exec.5.gz in mantree /usr/share/man
  loading seccomp filter (permissive: 0)
  candidate: 0 0 systemd.exec /usr/share/man /usr/share/man/man5/systemd.exec.5.gz A - 5 5
  Checking physical location: /usr/share/man/man5/systemd.exec.5.gz

  ult_src: File /usr/share/man/man5/systemd.exec.5.gz in mantree /usr/share/man
  loading seccomp filter (permissive: 0)
  found ultimate source file /usr/share/man/man5/systemd.exec.5.gz
  converted /usr/share/man/man5/systemd.exec.5.gz to /usr/share/man/cat5/systemd.exec.5.gz
  is_changed: a=/usr/share/man/man5/systemd.exec.5.gz, b=/usr/share/man/cat5/systemd.exec.5.gz (-2)
  converted /var/cache/man/cat5/systemd.exec.5.gz to /var/cache/man/cat5/systemd.exec.5.gz
  will try cat file /var/cache/man/cat5/systemd.exec.5.gz
  loading seccomp filter (permissive: 0)
  pre-processors `t' from file
  page_encoding = ISO-8859-1
  source_encoding = ISO-8859-1
  locale_charset = UTF-8
  roff_device (locale) = utf8
  roff_encoding = ISO-8859-1
  output_encoding = UTF-8
  less_charset = utf-8
  Terminal width 172
  Terminal width 172 not within cat page range [80, 80]
  Using 167-character lines
  formatted_encoding = UTF-8
  format: 1, save_cat: 0, found: 1
  add_output_iconv: source UTF-8, target UTF-8
  Setting LESS to -ix8RmPm Manual page systemd\.exec(5) ?ltline %lt?L/%L.:byte %bB?s/%s..?e (END):?pB %pB\%.. (press h for help or q to quit)$PM Manual page systemd\.exec(5) ?ltline %lt?L/%L.:byte %bB?s/%s..?e (END):?pB %pB\%.. (press h for help or q to quit)$
  Setting MAN_PN to systemd\.exec(5)
  ++priv_drop_count = 1
  man: command exited with status 1: sed -e '/^[[:space:]]*$/{ N; /^[[:space:]]*\n[[:space:]]*$/D; }' | LESS=-ix8RmPm Manual page systemd\.exec(5) ?ltline %lt?L/%L.:byte %bB?s/%s..?e (END):?pB %pB\%.. (press h for help or q to quit)$PM Manual page systemd\.exec(5) ?ltline %lt?L/%L.:byte %bB?s/%s..?e (END):?pB %pB\%.. (press h for help or q to quit)$ MAN_PN=systemd\.exec(5) grep -F {
  $

  ProblemType: Bug
  DistroRelease: Ubuntu 20.04
  Package: man-db 2.9.1-1
  ProcVersionSignature: Ubuntu 5.4.0-74.83-generic 5.4.114
  Uname: Linux 5.4.0-74-generic x86_64
  NonfreeKernelModules: zfs zunicode zavl icp zcommon znvpair
  ApportVersion: 2.20.11-0ubuntu27.18
  Architecture: amd64
  CasperMD5CheckResult: skip
  Date: Wed Jun 16 00:15:22 2021
  SourcePackage: man-db
  UpgradeStatus: Upgraded to focal on 2020-01-24 (508 days ago)

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/man-db/+bug/1932084/+subscriptions




More information about the foundations-bugs mailing list