Puppy Linux Discussion Forum Forum Index Puppy Linux Discussion Forum
Puppy HOME page : puppylinux.com
"THE" alternative forum : puppylinux.info
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

The time now is Sun 16 Jun 2019, 11:18
All times are UTC - 4
 Forum index » Advanced Topics » Puppy Derivatives
EasyOS 1.0.14, March 15, 2019
Moderators: Flash, JohnMurga
Post new topic   Reply to topic View previous topic :: View next topic
Page 104 of 104 [1549 Posts]   Goto page: Previous 1, 2, 3, ..., 102, 103, 104
Author Message
BarryK
Puppy Master


Joined: 09 May 2005
Posts: 8888
Location: Perth, Western Australia

PostPosted: Tue 11 Jun 2019, 20:24    Post subject:  

A heads-up about something interesting...

I posted a comment to the ScPup forum thread:

http://murga-linux.com/puppy/viewtopic.php?p=1030095#1030095

As the slackware64-current repository is, by definition, always going to be changing, there is no guarantee that packages installed from the slackware-14.2 repo will work -- even if many do now, there is no guarantee in the future.

As ScPup is built with slackware64-current packages (or slackware-current for the 32-bit build), compiling packages in ScPup and creating PETs, same story, they may not work in future builds of ScPup.

I probably put a dampener on the the ScPup project (and on LxPup), however, there is a solution. Slackware lacks dependency management, and I have conceived how it can be added in Woof, both my Woof fork and for woof-CE.

The database entry for each package needs a list of dependencies, and also the version of each dependency must be specified. The Salix distro did this partially for Slackware 14.2, but only listed deps for each package, no versioning of deps.

The first step to the fix is to create a file that has the name of a package on each line, with all the deps. Versions of deps are not yet required.
This file will be named 'DEPENDENCIES' and will be in Woof. I have written a script that generates this file, from the Ubuntu packages database -- it generates the "real" package names, not the split up names as used for DEBs.

Next, will modify the '0setup' script in Woof, so that when it converts the Slackware 'PACKAGES.TXT' file to Puppy-standard-format, it will read 'DEPENDENCIES' and automatically generate deps for each package, complete with required version of each dep.

Changes will also have to be made to the PPM.

Will post to my blog as this progresses.

_________________
http://bkhome.org/news/
Back to top
View user's profile Send private message Visit poster's website 
peebee


Joined: 21 Sep 2008
Posts: 3884
Location: Worcestershire, UK

PostPosted: Wed 12 Jun 2019, 02:29    Post subject:  

BarryK wrote:
I probably put a dampener on the the ScPup project (and on LxPup)

Hi Barry

Will be interested in this initiative - would request that you try to make anything you do applicable to Woof-CE if possible.

My experience is that Slackware is reasonably good at being backwards compatible - i.e. Slackware-14.2 apps do run on Slackware-Current**. I haven't seen the reports of problems you alluded to in your post on the ScPup thread....

Thanks
peebee

p.s. ** As an example Alien-Bob actually makes Chromium available for both 14.2 and Current and its the same 14.2 build for both that runs perfectly happily on both.... LibreOffice and Thunderbird are the same.

_________________
LxPup = Puppy + LXDE
Main version used daily: LxPupSc; Assembler of UPup, ScPup & ScPup64, LxPup, LxPupSc and LxPupSc64
Back to top
View user's profile Send private message Visit poster's website 
foxpup


Joined: 29 Jul 2016
Posts: 846
Location: europa near northsea

PostPosted: Wed 12 Jun 2019, 04:26    Post subject:  

BarryK wrote:
The database entry for each package needs a list of dependencies, and also the version of each dependency must be specified. The Salix distro did this partially for Slackware 14.2, but only listed deps for each package, no versioning of deps.

The first step to the fix is to create a file that has the name of a package on each line, with all the deps. Versions of deps are not yet required.
This file will be named 'DEPENDENCIES' and will be in Woof. I have written a script that generates this file, from the Ubuntu packages database -- it generates the "real" package names, not the split up names as used for DEBs.
Noob, but thinking and Confused :
Isn't the ubuntu DEPENDENCIES list the same thing as the deps list from Salix?
And can the (general) dependencies of a (real) package not change from version to version? And (hence) from distro to distro?
Back to top
View user's profile Send private message 
BarryK
Puppy Master


Joined: 09 May 2005
Posts: 8888
Location: Perth, Western Australia

PostPosted: Wed 12 Jun 2019, 05:48    Post subject:  

foxpup wrote:
BarryK wrote:
The database entry for each package needs a list of dependencies, and also the version of each dependency must be specified. The Salix distro did this partially for Slackware 14.2, but only listed deps for each package, no versioning of deps.

The first step to the fix is to create a file that has the name of a package on each line, with all the deps. Versions of deps are not yet required.
This file will be named 'DEPENDENCIES' and will be in Woof. I have written a script that generates this file, from the Ubuntu packages database -- it generates the "real" package names, not the split up names as used for DEBs.
Noob, but thinking and Confused :
Isn't the ubuntu DEPENDENCIES list the same thing as the deps list from Salix?
And can the (general) dependencies of a (real) package not change from version to version? And (hence) from distro to distro?


@foxpup,
The deps will probably stay the same for most packages, if going from Slackware 14.2 to 15.0 for example. But not necessarily for all. For example, a media player might introduce support for a new media library. Or, a package might change from one library to another, for example from openssl to libressl.

Regarding Ubuntu versus Slackware pkg deps, the good thing about Debian and Ubuntu is they compile apps with every capability enabled, so there will often be more deps. This means bloated, however such a deps list is good, as it covers every possible dep that a app may possibly require.
Mapping that to a Slackware-based build is easy, just remove a dep if it isn't in the Slackware repo.

@peebee,
Yes, you can usually get by with running 14.2 apps in a slackware-current build, there may be just a few library packages that are incompatible, except for examples I mentioned above. And you can provide PETs of the old libraries -- though, that only works if the app is linked against a different library name -- if the new library is say abc.1.2.so and the older library is also abc.1.2.so, then you have to get creative and use LD_PRELOAD to specifically load the old library for the app -- but that is getting very difficult to implement.

It could be that I am over-dramatizing the problem. It could be that Patrick is taking care not to break 14.2 packages running in the upcoming 15.0, in that case, very good.

Anyway, I will keep you posted on my proposed fix, and will make it woof-CE compatible.

_________________
http://bkhome.org/news/
Back to top
View user's profile Send private message Visit poster's website 
Display posts from previous:   Sort by:   
Page 104 of 104 [1549 Posts]   Goto page: Previous 1, 2, 3, ..., 102, 103, 104
Post new topic   Reply to topic View previous topic :: View next topic
 Forum index » Advanced Topics » Puppy Derivatives
Jump to:  

You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum


Powered by phpBB © 2001, 2005 phpBB Group
[ Time: 0.0329s ][ Queries: 13 (0.0059s) ][ GZIP on ]