How should I update programs installed from SlackBuilds scripts?
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.
How should I update programs installed from SlackBuilds scripts?
The question is already asked in the title: what is the proper way of updating SlackBuilds installed programs? Should I completely remove them and install again newer version from scratch or not? I'm using Slackware for two years already, but need to update something just now.
I usually download the tar and use a slackbuild that I modify to fit that tar then run it when that is done I then run updatepkg - but you can if you want uninstall the previous one removepkg, then run installpkg too.
Yes, sbopkg provides the update dialog which will present you with all the potential upgrades of SBo-based packages. You can select what you want and let it do its thing. However, it's possible that one program that needs to be updated could mean that one of its dependencies needs to be updated as well. It is then possible that another program that requires that dependency will now need to be rebuilt to work with the new dependency.
Some programs are super easy to upgrade while others may require rebuilding a large number of packages. When I used sbopkg, I would typically ignore most updates and only update programs when absolutely needed. When I did upgrade, I prepared myself to rebuild programs, if needed, to make sure it all worked.
What program do you want to upgrade? Knowing what it is may allow us to tell you how likely it is that upgrading it could require other packages to be rebuilt (but we might not know for sure without you trying it yourself).
But, if you use sbopkg, when you build a new package, it can install/upgrade it for you automatically. If you are building it manually, you can run upgradepkg on the new package and it will upgrade the old one. If you're using other tools, you'd need to look into what they offer.
ACKAGE DESCRIPTION:
# blender (3D Content Creation Suite)
#
# Blender is the free open source 3D content creation suite, available
# for all major operating systems under the GNU General Public License.
#
# http://blender.org
#
Executing install script for blender-2.78c-x86_64-1_SBo.tgz.
Package blender-2.78c-x86_64-1_SBo.tgz installed.
Package blender-2.79-x86_64-1_SBo upgraded with new package /tmp/blender-2.78c-x86_64-1_SBo.tgz.
Cleaning for blender-2.78c...
/tmp/blender-2.78c-x86_64-1_SBo.tgz stored in /media/ntfs/sboprograms
userx@~ <>
look at versions ,
I had 2.79 installed, and it back stroked on me and upgraded ( down graded ) to version 2.78c
even though I still use sbotools, now I have to redo it using my own slackbuild to put back that actual upgrade, again.
this is how it is suppose to be,
Code:
--> Deleting empty directory /opt/blender/2.78/
Verifying package blender-2.79-x86_64-1_SBo.tgz.
Installing package blender-2.79-x86_64-1_SBo.tgz:
PACKAGE DESCRIPTION:
# blender (3D Content Creation Suite)
#
# Blender is the free open source 3D content creation suite, available
# for all major operating systems under the GNU General Public License.
#
# http://blender.org
#
Executing install script for blender-2.79-x86_64-1_SBo.tgz.
Package blender-2.79-x86_64-1_SBo.tgz installed.
Package blender-2.78c-x86_64-1_SBo upgraded with new package /media/ntfs/sboprograms/blender-2.79-x86_64-1_SBo.tgz.
None of the Slackware package management tools attempt to parse the version strings and determine if the package to be installed is actually newer than the one they are replacing, nor should they, because there are an infinite number of possible versioning schemes. An "upgrade" is when the repository you are drawing from has a different (but not necessarily higher) version than the one you have installed. It's up to you to choose whether you actually want to upgrade the package.
By the way, this is one of the reasons why I put a blacklist function in sboui.
+1
Nothing wrong with sbotools. If you have a local package that you want to protect, blacklist it.
And meditate upon what just happened with freetype in -current
Code:
+--------------------------+
Tue Sep 19 20:49:07 UTC 2017
l/freetype-2.8-x86_64-1.txz: Upgraded.
Reverted due to rendering issues with programs such as Firefox that violate
the Freetype API. We'll revisit this after upstream programs have some time
to catch up.
+--------------------------+
Mon Sep 18 19:15:03 UTC 2017
l/freetype-2.8.1-x86_64-1.txz: Upgraded.
+1
Nothing wrong with sbotools. If you have a local package that you want to protect, blacklist it.
And meditate upon what just happened with freetype in -current
Code:
+--------------------------+
Tue Sep 19 20:49:07 UTC 2017
l/freetype-2.8-x86_64-1.txz: Upgraded.
Reverted due to rendering issues with programs such as Firefox that violate
the Freetype API. We'll revisit this after upstream programs have some time
to catch up.
+--------------------------+
Mon Sep 18 19:15:03 UTC 2017
l/freetype-2.8.1-x86_64-1.txz: Upgraded.
upgrade from 3.0 to 1.0 is not an upgrade it is a down grade. I don't even think Slack allows that if I remember correctly from trying to do that before, awhile back, and I don't really feel like trying to think of what I can use to prove my point, maybe later I will.
hold on let me mess with blender -- brb
wow it did screw it up
Code:
exit
userx@/media/ntfs/sboprograms <> blender --version
Blender 2.79 (sub 0)
....
userx@/media/ntfs/sboprograms <> su
Password:
root@/media/ntfs/sboprograms <> upgradepkg blender-2.78c-x86_64-1_SBo.tgz
+==============================================================================
| Upgrading blender-2.79-x86_64-1_SBo package using ./blender-2.78c-x86_64-1_SBo.tgz
+==============================================================================
Pre-installing package blender-2.78c-x86_64-1_SBo...
......
Package blender-2.79-x86_64-1_SBo upgraded with new package ./blender-2.78c-x86_64-1_SBo.tgz.
I'd think one would put a check for the version 'sizes' to be sure 2.78c is not larger then 2.79(x)
Code:
code to chop it off until it gets the ver numbers code;
if ( ver being install < what is already installed)
printf( this is not an upgrade because it is a lower version then what is already installed\n)
else
install that thing.
looks like a simple simple check to because the tars all have a same pattern
upgrade from 3.0 to 1.0 is not an upgrade it is a down grade. I don't even think Slack allows that if I remember correctly from trying to do that before, awhile back, and I don't really feel like trying to think of what I can use to prove my point, maybe later I will.
ugradepkg doesn't try at all to guess which version is the more recent, so it could as well be named replacepkg. Quoting the email "sent" by Patrick Volkerding to root during Slackware's installation:
Quote:
Some also think that any package with a larger
build number is "better", when there have been many instances that a
new upstream release wasn't working properly and we had to roll back to
an earlier one, and an automated upgrade tool didn't want to
"downgrade" the package.
We just had an example...
Incidentally slapt-get (automated upgrade tool) behaves exactly as upgradepkg on that respect
Last edited by Didier Spaier; 09-23-2017 at 12:16 PM.
ugradepkg doesn't try at all to guess which version is the more recent, so it could as well be named replacepkg. Quoting the email "sent" by Patrick Volkerding to root during Slackware's installation:
We just had an example...
Incidentally slapt-get (automated upgrade tool) behaves exactly as upgradepkg on that respect
I guess ... it is left up to operator error handling .. np
or
Pat needs to slap-get his butt up in a chair and behind the keyboard and fix that.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.