SlackwareThis Forum is for the discussion of Slackware Linux.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
Slackware package names are made up a few components, following the format '$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE'.
The purpose of most are clear, PRGNAM (program or application name), ARCH (x86 etc). What is the purpose of 'TAG'? Slackware official packages sometimes use the Slackware version, third package sources like slackbuilds use their own (SBO).
Are there rules or best practices for TAG's? Under what circumstances should one use a new tag?
Slackware package names are made up a few components, following the format '$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE'.
The purpose of most are clear, PRGNAM (program or application name), ARCH (x86 etc). What is the purpose of 'TAG'? Slackware official packages sometimes use the Slackware version, third package sources like slackbuilds use their own (SBO).
Are there rules or best practices for TAG's? Under what circumstances should one use a new tag?
Usually tags are used to tell from which repository the package come, or who built the package. SBo means that the package has been built from a SlackBuild available at SBo. But the SBo admins require that if this package is redistributed (made available in a third party repository) the tag be changed as they have no control on how the package was built (which options were used, and possible modification) so they can't take responsibility if this package is "bad".
PS As far as I know genuine Slackware packages do not bear a tag, but in case of patches (packages updated from a previous version originally shipped for a Slackware stable version). For instance patches intended to replace a previous version shipped in Slackware version 15.0 bear the tag _slack15.0 as for instance here.
Last edited by Didier Spaier; 03-24-2024 at 10:56 AM.
Reason: PS added.
Don't use '-' in a tag or start it with a number as that will cause confusion, but other than that it's pretty much up to you. I'd recommend always starting them with an underscore — it's a common convention and helps with readability — but it's not a hard requirement and not everyone does that.
I use a "_local" tag for all my locally built packages.
Eric tags his packages as "alien".
Pat uses a special tag for any packages he makes available in patches/ .e.g. "_slack15.0" for the Slackware 15.0 patches.
And, as Didier has already mentioned "_SBo" is the default tag used in slackbuilds.org build scripts.
Slackware package names are made up a few components, following the format '$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE'.
The purpose of most are clear, PRGNAM (program or application name), ARCH (x86 etc). What is the purpose of 'TAG'? Slackware official packages sometimes use the Slackware version, third package sources like slackbuilds use their own (SBO).
Are there rules or best practices for TAG's? Under what circumstances should one use a new tag?
This is my self imposed rules, view of on this subject.
A tag is a mechanism to identify packages that are not part of the base Slackware tree (main tree, extra, pasture and testing). None of those packages have tags. Packages in patches on the other hand are base packages with patches applied. In general a patched package will have the same package name as the base package with the addition of the tag (_slack15.0 for Slackware 15.0 packages) to identify the package as a patched package.
With the exception of patches all packages with tags are third party packages. If I build a package using my own SlackBuild, that package will have the tag "cgs". If I build it, I tag it. This also applies to base Slackware package in which I modify the SlackBuild script. I will add a tag. As an example, I use the Slackware source SlackBuild for mozilla-firefox to build the standard release vice esr. The only modification I make to the SlackBuild script is to change "BUILD=${BUILD:-1}" to "BUILD=${BUILD:-1cgs}". Another example, I used to rebuild imagemagick-7.1.1_29-x86_64-1.txz so it will pick up libheif. The resulting package was imagemagick-7.1.1_29-x86_64-1cgs.txz.
I currently have packages on this system with the tags compat32 (262), alien (26), mt (1), me (1) and cgs (186).
Last edited by chrisretusn; 03-25-2024 at 12:34 AM.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.