Skip to content

question about sbo-bot #13484

@rizitis

Description

@rizitis

Hello,
I prefer to open here a topic that I encountered from the emaιl list because my question mainly concerns sbo-bot.

In the last update one of the installed packages on my system was cinelerra which needed updating. Both the 2 package managers I use (sbopkg, slpkg) failed to download the source code and the update failed. The reason for the failure was that in the .info file the cinelerra url contains semicolon characters (;)
As we all know In Unix shells (bash, sh,
zsh), a semicolon means “end of command”.
So when the URL is pasted into a terminal without quotes, the shell
splits it into multiple commands and wget only receives the first part
of the URL: https://git.cinelerra-gg.org/git/?p=goodguy/cinelerra.git
As a result, the server returns an HTML page instead of the tarball.
Browsers don’t have this issue because they don’t interpret ;
specially — they send the full URL as-is.

I thought it would be a good idea to inform the package maintainer and as a solution I proposed to escape the URL in the info file, so the shell passes
it correctly to wget:
https://git.cinelerra-gg.org/git/?p=goodguy/cinelerra.git%5C;a=snapshot%5C;h=1914b32609fcead7518186b3069a3df2e07a9bc0%5C;sf=tgz%5C;fn=cinelerra-1914b32.tar.gz

Once escaped, wget sends the same request as the browser and the
download works normally.

The answer I received was that:

  1. If package managers are not supporting valid .info files, it's
    their issue, I suggest filing a bug report with them.
  2. Pasting an URL into a terminal without quotes is the most ridiculous
    idea I have ever heard. Why would you ever do that?
  3. I am not adding work-arounds for sloppy garbage code that cannot escape
    its shell arguments. This is an insult to human conscience.

The second argument (2), in essence, finds me agreeing, because when someone does their work manually, then they will either click through a browser to download the source code and that works, or they will copy and paste the url through a terminal and through curl, wget they will download the file, so they have the option to use quotes, which is also unique.

The third (3) is his opinion and I respect it, if that's what he thinks.

For the first one (1), before I open a bug report in sbopkg, slpkg etc.. I would like an answer on how the specific package passed the sbo-bot check and possibly other similar ones?
When sbo-bot reads the .info file during the build, does it put the urls in quotes?
I say this because there is no relevant information in the README file, so the info file is indeed correct as is.

If sbo-bot actually puts urls in quotes that would be ideal and there should be a relevant announcement in mail list to those who develop package managers for SBo so that they can make their patches.

thanks.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions