Bug 1220024 - rpm2docserv fails to handle freeradius-server
Summary: rpm2docserv fails to handle freeradius-server
Status: RESOLVED WONTFIX
Alias: None
Product: openSUSE Tumbleweed
Classification: openSUSE
Component: Other (show other bugs)
Version: Current
Hardware: Other Other
: P5 - None : Normal (vote)
Target Milestone: ---
Assignee: Thorsten Kukuk
QA Contact: E-mail List
URL:
Whiteboard:
Keywords:
Depends on: 1220025
Blocks:
  Show dependency treegraph
 
Reported: 2024-02-16 23:49 UTC by Marcus Rückert
Modified: 2024-02-20 15:25 UTC (History)
1 user (show)

See Also:
Found By: ---
Services Priority:
Business Priority:
Blocker: ---
Marketing QA Status: ---
IT Deployment: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Marcus Rückert 2024-02-16 23:49:04 UTC
```
Feb 16 23:14:24 pontifex rpm2docserv[4919]: 2024/02/16 23:14:24 main.go:111: Gathered all packages, total 55506 packages
Feb 16 23:22:08 pontifex rpm2docserv[4919]: 2024/02/16 23:22:08 main.go:265: extracing manual pages: Error waiting for cpio (freeradius-server-3.2.3-3.1.x86_64.rpm): exit status 2, stderr: cpio: ./etc/raddb/mods-config/sql/moonshot-targeted-ids/mysql/queries.conf: Cannot open: Permission denied
Feb 16 23:22:08 pontifex rpm2docserv[4919]: cpio: ./etc/raddb/mods-config/sql/moonshot-targeted-ids/mysql/schema.sql: Cannot open: Permission denied
Feb 16 23:22:08 pontifex rpm2docserv[4919]: cpio: ./etc/raddb/mods-config/sql/moonshot-targeted-ids/postgresql/queries.conf: Cannot open: Permission denied
Feb 16 23:22:08 pontifex rpm2docserv[4919]: cpio: ./etc/raddb/mods-config/sql/moonshot-targeted-ids/postgresql/schema.sql: Cannot open: Permission denied
Feb 16 23:22:08 pontifex rpm2docserv[4919]: cpio: ./etc/raddb/mods-config/sql/moonshot-targeted-ids/sqlite/queries.conf: Cannot open: Permission denied
Feb 16 23:22:08 pontifex rpm2docserv[4919]: cpio: ./etc/raddb/mods-config/sql/moonshot-targeted-ids/sqlite/schema.sql: Cannot open: Permission denied
Feb 16 23:22:08 pontifex rpm2docserv[4919]: 7381 blocks
Feb 16 23:22:08 pontifex systemd[1]: rpm2docserv.service: Main process exited, code=exited, status=1/FAILURE
Feb 16 23:22:08 pontifex systemd[1]: rpm2docserv.service: Failed with result 'exit-code'.
Feb 16 23:22:08 pontifex systemd[1]: Failed to start rpm2docserv.
```

FWIW: bsdtar xf handles the unpacking just fine at least.

but it leads to a follow up error
```
total 0
drwxr-x--- 5 spielkind users  51 Feb  8 20:47 .
drwxr-x--- 9 spielkind users 118 Feb  8 20:47 ..
drw-r----- 2 spielkind users  44 Feb  8 20:47 mysql
drw-r----- 2 spielkind users  44 Feb  8 20:47 postgresql
drw-r----- 2 spielkind users  44 Feb  8 20:47 sqlite
```

directories without X bit.
Comment 1 Marcus Rückert 2024-02-16 23:53:26 UTC
but the unpacking could still be a bit more robust. maybe replace rpm2cpio + cpio call with bsdtar xf. and instead of completely dying in the job it could skip this package and continue.
Comment 2 Marcus Rückert 2024-02-16 23:58:33 UTC
correction. also fails as root.
Comment 3 Marcus Rückert 2024-02-17 00:07:31 UTC
oh and while we are at it. unrelated to this issue but still something that might be worth a look:

```
Feb 16 23:14:24 pontifex rpm2docserv[4919]: 2024/02/16 23:14:24 globalview.go:213: package "Tumbleweed/po4a-lang" has errors: [Trying to interpret path "zh_CHS/man7/po4a.7.gz": Cannot parse language "zh_CHS": language: subtag "chs" is well-formed but unknown Trying to interpret path "zh_CHS/man1/po4a.1p.gz": Cannot parse language "zh_CHS": language: subtag "chs" is well-formed but unknown Trying to interpret path "zh_CHS/man1/msguntypot.1p.gz": Cannot parse language "zh_CHS": language: subtag "chs" is well-formed but unknown Trying to interpret path "zh_CHS/man1/po4a-updatepo.1p.gz": Cannot parse language "zh_CHS": language: subtag "chs" is well-formed but unknown Trying to interpret path "zh_CHS/man1/po4a-normalize.1p.gz": Cannot parse language "zh_CHS": language: subtag "chs" is well-formed but unknown Trying to interpret path "zh_CHS/man1/po4a-translate.1p.gz": Cannot parse language "zh_CHS": language: subtag "chs" is well-formed but unknown Trying to interpret path "zh_CHS/man1/po4a-display-pod.1.gz": Cannot parse language "zh_CHS": language: subtag "chs" is well-formed but unknown Trying to interpret path "zh_CHS/man1/po4a-display-man.1.gz": Cannot parse language "zh_CHS": language: subtag "chs" is well-formed but unknown Trying to interpret path "zh_CHS/man3/Locale::Po4a::Po.3pm.gz": Cannot parse language "zh_CHS": language: subtag "chs" is well-formed but unknown Trying to interpret path "zh_CHS/man3/Locale::Po4a::Pod.3pm.gz": Cannot parse language "zh_CHS": language: subtag "chs" is well-formed but unknown Trying to interpret path "zh_CHS/man3/Locale::Po4a::Dia.3pm.gz": Cannot parse language "zh_CHS": language: subtag "chs" is well-formed but unknown Trying to interpret path "zh_CHS/man3/Locale::Po4a::Xml.3pm.gz": Cannot parse language "zh_CHS": language: subtag "chs" is well-formed but unknown Trying to interpret path "zh_CHS/man3/Locale::Po4a::Wml.3pm.gz": Cannot parse language "zh_CHS": language: subtag "chs" is well-formed but unknown Trying to interpret path "zh_CHS/man3/Locale::Po4a::Ini.3pm.gz": Cannot parse language "zh_CHS": language: subtag "chs" is well-formed but unknown Trying to interpret path "zh_CHS/man3/Locale::Po4a::TeX.3pm.gz": Cannot parse language "zh_CHS": language: subtag "chs" is well-formed but unknown Trying to interpret path "zh_CHS/man3/Locale::Po4a::Man.3pm.gz": Cannot parse language "zh_CHS": language: subtag "chs" is well-formed but unknown Trying to interpret path "zh_CHS/man3/Locale::Po4a::Sgml.3pm.gz": Cannot parse language "zh_CHS": language: subtag "chs" is well-formed but unknown Trying to interpret path "zh_CHS/man3/Locale::Po4a::Text.3pm.gz": Cannot parse language "zh_CHS": language: subtag "chs" is well-formed but unknown Trying to interpret path "zh_CHS/man3/Locale::Po4a::Yaml.3pm.gz": Cannot parse language "zh_CHS": language: subtag "chs" is well-formed but unknown Trying to interpret path "zh_CHS/man3/Locale::Po4a::Guide.3pm.gz": Cannot parse language "zh_CHS": language: subtag "chs" is well-formed but unknown Trying to interpret path "zh_CHS/man3/Locale::Po4a::Xhtml.3pm.gz": Cannot parse language "zh_CHS": language: subtag "chs" is well-formed but unknown Trying to interpret path "zh_CHS/man3/Locale::Po4a::LaTeX.3pm.gz": Cannot parse language "zh_CHS": language: subtag "chs" is well-formed but unknown Trying to interpret path "zh_CHS/man3/Locale::Po4a::BibTeX.3pm.gz": Cannot parse language "zh_CHS": language: subtag "chs" is well-formed but unknown Trying to interpret path "zh_CHS/man3/Locale::Po4a::Common.3pm.gz": Cannot parse language "zh_CHS": language: subtag "chs" is well-formed but unknown Trying to interpret path "zh_CHS/man3/Locale::Po4a::Texinfo.3pm.gz": Cannot parse language "zh_CHS": language: subtag "chs" is well-formed but unknown Trying to interpret path "zh_CHS/man3/Locale::Po4a::RubyDoc.3pm.gz": Cannot parse language "zh_CHS": language: subtag "chs" is well-formed but unknown Trying to interpret path "zh_CHS/man3/Locale::Po4a::Halibut.3pm.gz": Cannot parse language "zh_CHS": language: subtag "chs" is well-formed but unknown Trying to interpret path "zh_CHS/man3/Locale::Po4a::Docbook.3pm.gz": Cannot parse language "zh_CHS": language: subtag "chs" is well-formed but unknown Trying to interpret path "zh_CHS/man3/Locale::Po4a::Chooser.3pm.gz": Cannot parse language "zh_CHS": language: subtag "chs" is well-formed but unknown Trying to interpret path "zh_CHS/man3/Locale::Po4a::AsciiDoc.3pm.gz": Cannot parse language "zh_CHS": language: subtag "chs" is well-formed but unknown Trying to interpret path "zh_CHS/man3/Locale::Po4a::KernelHelp.3pm.gz": Cannot parse language "zh_CHS": language: subtag "chs" is well-formed but unknown Trying to interpret path "zh_CHS/man3/Locale::Po4a::TransTractor.3pm.gz": Cannot parse language "zh_CHS": language: subtag "chs" is well-formed but unknown]
```
Comment 4 Marcus Rückert 2024-02-17 00:17:36 UTC
for the freeradius issue: `bsdtar xf /path/to/rpm ; chmod -R a+rX .` would fix the issue probably.
Comment 5 Christian Boltz 2024-02-17 18:20:40 UTC
Somewhat related: SR 1147355 should fix the freeradius-server issue as soon as it reaches Tumbleweed.

On a more general note - having a check for non-executable directories in a package would be a good idea, but maybe that should be done by rpmlint, and not by rpm2docsev ;-)
Comment 6 Marcus Rückert 2024-02-17 19:05:34 UTC
for the freeradius issue you can add https://bugzilla.suse.com/show_bug.cgi?id=1220025 to the changes entry. that tracks the broken permissions issue.
Comment 8 Thorsten Kukuk 2024-02-19 09:11:20 UTC
(In reply to Marcus Rückert from comment #1)
> but the unpacking could still be a bit more robust. maybe replace rpm2cpio +
> cpio call with bsdtar xf. and instead of completely dying in the job it
> could skip this package and continue.

Skipping the package and continue is not possible due to the internal data structure, that would go out of sync and create to many other issues later during the build process or on the webpage.

The whole thing needs a rewrite, as the original code is based on the Debians deb packages and their product layout, and Debian is much, much stricter with package cleanness and manual page handling then we are.

But since we will not get the resources to do so, we have to live with what we have.

About "Cannot parse language "zh_CHS"": this error comes from go itself (golang.org/x/text/language). zh_CHS is no official existing language and thus unsupported by go.

I don't see currently anything I can do on rpm2docserv side.
Comment 9 Marcus Rückert 2024-02-19 10:26:33 UTC
you could at least do the "bsdtar"+"chmod -R a+rX" to handle this situation better.
Comment 10 Thorsten Kukuk 2024-02-19 10:38:56 UTC
As written: we have no resources for this and I have no time, so beside real important bug fixes nothing will happen, especially not even more workarounds for broken packages.
We should work on the quality of our packages instead.
Comment 11 OBSbugzilla Bot 2024-02-20 15:25:01 UTC
This is an autogenerated message for OBS integration:
This bug (1220024) was mentioned in
https://build.opensuse.org/request/show/1148113 Factory / freeradius-server