LinuxQuestions.org
Latest LQ Deal: Latest LQ Deals
Home Forums Tutorials Articles Register
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware
User Name
Password
Slackware This Forum is for the discussion of Slackware Linux.

Notices


Reply
  Search this Thread
Old 02-18-2016, 02:30 PM   #196
bassmadrigal
LQ Guru
 
Registered: Nov 2003
Location: West Jordan, UT, USA
Distribution: Slackware
Posts: 8,792

Rep: Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656

The dependency resolution provided by slpkg is based on what the package maintainer specifies. If you get all your packages from one source, you'll likely never run into issues with library versions mismatching.

If Package Maintainer A provides you with Package-1.1 that requires Library-1.2, and Package Maintainer B provides you with Package-1.1 that requires Library-1.3, how is slpkg going to know what to do if you go to install the package from Maintainer A, but you have the library from Maintainer B installed as a dependency of a different program? This is why it is not recommended to mix package repos. While you may not run into collisions frequently, when you do, they can be quite troublesome... plus take into account being the person developing slpkg and trying to determine whether Library v1.2 or v1.3 should be installed. The libraries aren't always backwards compatible.

Like I said, if you get all packages from one source, then you likely won't run into collisions, but if you're grabbing them from many different repos, the chance of issues goes up. Why put the extra burden on the maintainer for supporting something that can very easily cause breakage?
 
Old 02-18-2016, 02:39 PM   #197
dslackw
Member
 
Registered: Aug 2014
Location: Orestiada, GR
Distribution: Slackware 15.0 x86_64 -stable
Posts: 158

Original Poster
Rep: Reputation: 44
Quote:
Originally Posted by bassmadrigal View Post
The dependency resolution provided by slpkg is based on what the package maintainer specifies. If you get all your packages from one source, you'll likely never run into issues with library versions mismatching.

If Package Maintainer A provides you with Package-1.1 that requires Library-1.2, and Package Maintainer B provides you with Package-1.1 that requires Library-1.3, how is slpkg going to know what to do if you go to install the package from Maintainer A, but you have the library from Maintainer B installed as a dependency of a different program? This is why it is not recommended to mix package repos. While you may not run into collisions frequently, when you do, they can be quite troublesome... plus take into account being the person developing slpkg and trying to determine whether Library v1.2 or v1.3 should be installed. The libraries aren't always backwards compatible.

Like I said, if you get all packages from one source, then you likely won't run into collisions, but if you're grabbing them from many different repos, the chance of issues goes up. Why put the extra burden on the maintainer for supporting something that can very easily cause breakage?
+1

Maintainer knows best what version dependencies must be installed on the system to work well, so slpkg conformant to the package instructions.
 
Old 02-18-2016, 03:09 PM   #198
Skaendo
Senior Member
 
Registered: Dec 2014
Location: West Texas, USA
Distribution: Slackware64-14.2
Posts: 1,445

Rep: Reputation: Disabled
Quote:
Originally Posted by bassmadrigal View Post
The dependency resolution provided by slpkg is based on what the package maintainer specifies. If you get all your packages from one source, you'll likely never run into issues with library versions mismatching.

If Package Maintainer A provides you with Package-1.1 that requires Library-1.2, and Package Maintainer B provides you with Package-1.1 that requires Library-1.3, how is slpkg going to know what to do if you go to install the package from Maintainer A, but you have the library from Maintainer B installed as a dependency of a different program? This is why it is not recommended to mix package repos. While you may not run into collisions frequently, when you do, they can be quite troublesome... plus take into account being the person developing slpkg and trying to determine whether Library v1.2 or v1.3 should be installed. The libraries aren't always backwards compatible.

Like I said, if you get all packages from one source, then you likely won't run into collisions, but if you're grabbing them from many different repos, the chance of issues goes up. Why put the extra burden on the maintainer for supporting something that can very easily cause breakage?
I don't get packages from many places; *Slackware-current*, a few from Eric's repo, and a few from SlackBuilds. That's it.


Quote:
Originally Posted by dslackw View Post
+1

Maintainer knows best what version dependencies must be installed on the system to work well, so slpkg conformant to the package instructions.
Weak argument. Most likely the maintainer doesn't update their SlackBuild everytime a dependent package gets upgraded/rebuilt/whatever that comes in the default installation of Slackware. While slpkg is conforming to the package instructions, it is reliant on what the maintainer has specified as a dependency that is not already in the default installation of Slackware and will likely be on SlackBuilds. Slackbuilds can and do depend on other packages that are in the default installation of Slackware that are not listed as dependencies in the SlackBuild itself.

So what is the difference if packages in the default install of Slackware get updated to a package that has been compiled and installed by the user to a possibly outdated version on Slackbuilds?

*This could all just be because of the pending release, hopefully it sorts itself out.

Last edited by Skaendo; 02-18-2016 at 03:10 PM.
 
Old 02-18-2016, 03:25 PM   #199
Didier Spaier
LQ Addict
 
Registered: Nov 2008
Location: Paris, France
Distribution: Slint64-15.0
Posts: 11,058

Rep: Reputation: Disabled
@Skaendo: if you know a way to enhance slpkg so that it does what you think it should do, I suggest that you propose a patch. If that works and cause neither issue nor regression, I am sure that Dimitris will gladly apply it.
 
Old 02-18-2016, 03:33 PM   #200
dslackw
Member
 
Registered: Aug 2014
Location: Orestiada, GR
Distribution: Slackware 15.0 x86_64 -stable
Posts: 158

Original Poster
Rep: Reputation: 44
Quote:
Weak argument. Most likely the maintainer doesn't update their SlackBuild everytime a dependent package gets upgraded/rebuilt/whatever that comes in the default installation of Slackware.
It should...

One example for package pyvim from SBo.

pyvim need some dependencies to work ok?
etc
ptpython == 0.28
prompt_toolkit == 0.57

If you have already install ptpython 0.29 and slpkg skip downgrade this package build perhaps failed.

From pyvim setup.py file (please see install_requires):

Code:
setup(
    name='pyvim',
    author='Jonathan Slenders',
    version=pyvim.__version__,
    license='LICENSE',
    url='https://github.com/jonathanslenders/pyvim',
    description='Pure Pyton Vi Implementation',
    long_description=long_description,
    packages=find_packages('.'),
    install_requires = [
        'prompt-toolkit==0.57',
        'ptpython==0.28',  # For the Python completion (with Jedi.)
        'pyflakes',        # For Python error reporting.
        'docopt',          # For command line arguments.
    ],
    entry_points={
        'console_scripts': [
            'pyvim = pyvim.entry_points.run_pyvim:run',
        ]
    },
)
Just example

Last edited by dslackw; 02-18-2016 at 03:51 PM.
 
Old 02-18-2016, 03:47 PM   #201
bassmadrigal
LQ Guru
 
Registered: Nov 2003
Location: West Jordan, UT, USA
Distribution: Slackware
Posts: 8,792

Rep: Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656
Quote:
Originally Posted by Skaendo View Post
Weak argument. Most likely the maintainer doesn't update their SlackBuild everytime a dependent package gets upgraded/rebuilt/whatever that comes in the default installation of Slackware. While slpkg is conforming to the package instructions, it is reliant on what the maintainer has specified as a dependency that is not already in the default installation of Slackware and will likely be on SlackBuilds. Slackbuilds can and do depend on other packages that are in the default installation of Slackware that are not listed as dependencies in the SlackBuild itself.

So what is the difference if packages in the default install of Slackware get updated to a package that has been compiled and installed by the user to a possibly outdated version on Slackbuilds?

*This could all just be because of the pending release, hopefully it sorts itself out.
I think you're trying too hard to get dependency management fully integrated into a distro that doesn't support it. This program will look at the dependencies provided by the package manager and will attempt to install them from the same repo. That's it! If you're attempting to use package repos that are designed for 14.1 on -current, then that is on you. Unless they specify otherwise, those repos expect a full installation of 14.1 on your system, and if you don't have that, then it is up to you to determine how to proceed. If 14.1 didn't include a dependency that the program requires by -current has added it, you need to figure out if that will work for the program you install. Why should slpkg downgrade a system package because package A was built with an earlier version? Or what will happen if package A requires the version it was built against, but -current runs a newer version? Very few repos (I only know of Eric's) provide pre-compiled package support for -current. If you're willing to venture into those waters, be prepared to run into issues.

As is always the case, when you run -current, you're expected to be able to resolve issues yourself. If you can't manage that, maybe you should look at running the latest stable release, because that is much more well supported.
 
Old 02-18-2016, 03:54 PM   #202
dslackw
Member
 
Registered: Aug 2014
Location: Orestiada, GR
Distribution: Slackware 15.0 x86_64 -stable
Posts: 158

Original Poster
Rep: Reputation: 44
slackonly repository provide packages for -stable and -current but missing some references to dependencies.
 
Old 02-18-2016, 04:03 PM   #203
Skaendo
Senior Member
 
Registered: Dec 2014
Location: West Texas, USA
Distribution: Slackware64-14.2
Posts: 1,445

Rep: Reputation: Disabled
Quote:
Originally Posted by bassmadrigal View Post
I think you're trying too hard to get dependency management fully integrated into a distro that doesn't support it.
I just thought that it would be nice if slpkg didn't try to downgrade already installed packages (that are not hard coded into the setup.py like for pyvim that dslackw exampled). If it is hard coded into the setup then you should get an error when trying to compile, correct?

I can do dependency management manually, and have since I began using Slackware. I just liked slpkg and would have liked it to not try and downgrade packages that I have compiled and installed. While blacklisting does work it is counter-productive if one of the packages that are blacklisted gets updated.

Is there or could there be a way to tell slpkg to not reinstall a package? Example; slpkg -s sbo vlc -ffmpeg

Last edited by Skaendo; 02-18-2016 at 04:09 PM.
 
Old 02-22-2016, 08:38 AM   #204
rng
Senior Member
 
Registered: Aug 2011
Posts: 1,198

Rep: Reputation: 47
I installed virtualbox using slpkg from slackonly repository. However, virtualbox is not running:

Code:
root[~]# slpkg -f virtualbox

Packages with matching name [ virtualbox ]

[ installed ] - virtualbox-4.3.24-i486-2_slack
[ installed ] - virtualbox-kernel-4.3.24_3.10.17_smp-i486-1_slack

Found summary
===============================================================================
Total found 2 matching packages.
Size of installed packages 141.42 Mb.

root[~]# exit 
exit

xyz[etc]$ virtualbox
WARNING: The vboxdrv kernel module is not loaded. Either there is no module
         available for the current kernel (3.10.17-smp) or it failed to
         load. Please recompile the kernel module and install it by

           sudo /etc/init.d/vboxdrv setup

         You will not be able to start VMs until this problem is fixed.

xyz[etc]$ sudo ./rc.d/rc.vboxdrv setup 
Not implemented! Please use the virtualbox-kernel.SlackBuild available at SlackBuilds.org instead.
How can I solve this problem?
 
Old 02-22-2016, 08:43 AM   #205
dslackw
Member
 
Registered: Aug 2014
Location: Orestiada, GR
Distribution: Slackware 15.0 x86_64 -stable
Posts: 158

Original Poster
Rep: Reputation: 44
Quote:
Originally Posted by Skaendo View Post
I just thought that it would be nice if slpkg didn't try to downgrade already installed packages (that are not hard coded into the setup.py like for pyvim that dslackw exampled). If it is hard coded into the setup then you should get an error when trying to compile, correct?

I can do dependency management manually, and have since I began using Slackware. I just liked slpkg and would have liked it to not try and downgrade packages that I have compiled and installed. While blacklisting does work it is counter-productive if one of the packages that are blacklisted gets updated.

Is there or could there be a way to tell slpkg to not reinstall a package? Example; slpkg -s sbo vlc -ffmpeg
I try to find a solution.
 
Old 02-22-2016, 08:43 AM   #206
dslackw
Member
 
Registered: Aug 2014
Location: Orestiada, GR
Distribution: Slackware 15.0 x86_64 -stable
Posts: 158

Original Poster
Rep: Reputation: 44
Quote:
Originally Posted by rng View Post
I installed virtualbox using slpkg from slackonly repository. However, virtualbox is not running:

Code:
root[~]# slpkg -f virtualbox

Packages with matching name [ virtualbox ]

[ installed ] - virtualbox-4.3.24-i486-2_slack
[ installed ] - virtualbox-kernel-4.3.24_3.10.17_smp-i486-1_slack

Found summary
===============================================================================
Total found 2 matching packages.
Size of installed packages 141.42 Mb.

root[~]# exit 
exit

xyz[etc]$ virtualbox
WARNING: The vboxdrv kernel module is not loaded. Either there is no module
         available for the current kernel (3.10.17-smp) or it failed to
         load. Please recompile the kernel module and install it by

           sudo /etc/init.d/vboxdrv setup

         You will not be able to start VMs until this problem is fixed.

xyz[etc]$ sudo ./rc.d/rc.vboxdrv setup 
Not implemented! Please use the virtualbox-kernel.SlackBuild available at SlackBuilds.org instead.
How can I solve this problem?
Read README file
 
Old 02-22-2016, 10:40 AM   #207
rng
Senior Member
 
Registered: Aug 2011
Posts: 1,198

Rep: Reputation: 47
Quote:
Read README file
Yes, (sudo)"groupadd -g 215 vboxusers" (and adding user to this group) as mentioned in (VirtualBox Slackbuilds) README file (and relogging) did the trick. Thanks.

Last edited by rng; 02-22-2016 at 10:43 AM.
 
Old 02-22-2016, 06:54 PM   #208
dslackw
Member
 
Registered: Aug 2014
Location: Orestiada, GR
Distribution: Slackware 15.0 x86_64 -stable
Posts: 158

Original Poster
Rep: Reputation: 44
@Skaendo

slpkg 3.1.1 released and added feature don't downgrade packages, setting via configuration file "/etc/slpkg/slpkg.conf".
Set variable NOT_DOWNGRADE=on.
 
1 members found this post helpful.
Old 02-22-2016, 07:24 PM   #209
Skaendo
Senior Member
 
Registered: Dec 2014
Location: West Texas, USA
Distribution: Slackware64-14.2
Posts: 1,445

Rep: Reputation: Disabled
Quote:
Originally Posted by dslackw View Post
@Skaendo

slpkg 3.1.1 released and added feature don't downgrade packages, setting via configuration file "/etc/slpkg/slpkg.conf".
Set variable NOT_DOWNGRADE=on.
Thank you!

I must say that of all the package managers that I have tried I like your the most. I'm not just saying that, I think that you have done an excellent job with how it builds from SlackBuilds.org, and how easy it is to set up and configure.
 
Old 02-22-2016, 07:36 PM   #210
dslackw
Member
 
Registered: Aug 2014
Location: Orestiada, GR
Distribution: Slackware 15.0 x86_64 -stable
Posts: 158

Original Poster
Rep: Reputation: 44
Quote:
Originally Posted by Skaendo View Post
Thank you!

I must say that of all the package managers that I have tried I like your the most. I'm not just saying that, I think that you have done an excellent job with how it builds from SlackBuilds.org, and how easy it is to set up and configure.
Thank you, please report me any issue for this feature, if happens.
https://github.com/dslackw/slpkg/issues
 
  


Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
Install Advanced Packaging Tool on a linux from scratch machine ledzepp4eva Linux - Newbie 7 12-16-2011 09:13 AM
Upgrading Slackware (packaging questions) jrdioko Slackware 5 08-17-2005 07:23 PM
Slackware packaging wombat53 Slackware - Installation 16 07-08-2005 11:44 AM
Packaging manager for Slackware 9.1 ??? Fernando534 Linux - Newbie 4 05-07-2004 02:26 PM

LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware

All times are GMT -5. The time now is 11:49 AM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration