[Slackbuilds-users] issue submitting new slackbuild
B. Watson
urchlay at slackware.uk
Fri Jun 5 23:29:37 UTC 2026
On Fri, 5 Jun 2026, Tim Dickson wrote:
> Great. Of course when actually running tar -xzf project.tar.gz to extract
> everything, the permissions are fine; because during creation, the addition
> of the slackbuild to the tar with 755 permissions also sets the directory
> permissions in the tar to 755, correcting the earlier set 644 perms. :-)
Actually, no. Extracting a tarball with 0644 perms on the enclosing
dir, actually creates the dir with 0644 perms and leaves it that way.
> I'm not sure how you would verify that easily without actually extracting the
> files though.
Well, I don't have to. sbolint and the submission form both work by
extracting the tarball.
I've also made another discovery and a change to sbolint: The script
permissions inside a submission tarball *don't actually matter*,
so sbolint no longer requires it to be 755. It'll allow either 755
or 644.
The submission form never cared about the file permissions inside
the tarball, only the existence of the files. It only cares about
the directory's perms because it extracts the tarball and then cd's
into the dir (which will fail without +x on the dir). Since it fails
to cd, it doesn't see any of the other files it's looking for, and
gives the rather confusing error message that says it can't find the
.SlackBuild, .info, slack-desc, or README files. Probably I'll change
it so it still fails, but gives a better error message.
In the ancient pre-git days, we wanted +x for the .SlackBuild because
we actually served up the submission tarball for download... but we
haven't done that in well over a decade now: we have a git hook that
sets the perms to 644 when the files are checked into git, and the
download tarballs on the website are created from the git repo, and
the script that creates them sets the perms explicitly to 755.
This means you will be able to create submission tarballs where
the script's perms are either 0644 or 0755, and either way it'll be
accepted by both sbolint and the web form.
It's also worth mentioning... during development, there's no need
to set +x on the SlackBuild either. When you test-run it, you can
just run "sh foo.SlackBuild" (or "bash foo.SlackBuild") instead of
"./foo.SlackBuild".
More information about the SlackBuilds-users
mailing list