Page 1 of 2
Package Managers, Module Builders
Posted: 27 Apr 2023, 06:35
by rych
We have 3 module builders so far. Or are there more?! Anyway, I'm going to collect here some brief descriptions, syntax, links, status, comparisons, testimonials. For the newcomers and for everyone
1.a)
getpkg
getpkg is a porteus script (/usr/local/bin/getpkg) that fetches packages from the slackware repo
Code: Select all
getpkg package-name1 package-name2 ...
1.b)
pmod
pmod is a simple wrapper for slackpkg
Code: Select all
pmod -u
pmod -s search-by-package-name
pmod -m package-name
1.c)
getmod
getmod: A wrapper for slapt-get to build modules [Porteus 5.0's USM replacement] getmod: A wrapper for slapt-get to build modules
Code: Select all
getmod -u
getmod -s search-by-package-name-substring
getmod -m package-name
Which one(s) tend to work best for you? For me,
getmod! I noticed, though, that getmod and pmod often build slightly different modules in terms of bundled dependencies. Sometimes the one made by pmod works better.
Package Managers, Module Builders
Posted: 19 May 2023, 11:58
by rych
Package Managers, Module Builders
Posted: 24 May 2023, 03:30
by stealthfreighter
The only foolproof (or even expertproof) method I would recommend is to
1. get the relevant package (and any dependencies) from slackbuilds.org
2. build it on a Slackware or porteus, dependencies first (if building on porteus you will need the 05-devel.xzm module, as Blaze kindly informed me)
3. once built, usually in the /tmp root directory, convert it to the porteus format using the txz2xzm utility (a fantastic tool, you don't need the devel module to use it either)
4. copy it to the relevant directory e.g. /porteus or /porteus/base
Note that while a little bird whispered to me that dependencies are resolved when loading all packages, another bird whispered that they are first loaded in alphabetical order. So mind your file names like this was 1956 (to think that Monster from the Black Lagoon came out only two years earlier...)
Package Managers, Module Builders
Posted: 26 May 2023, 10:21
by rych
stealthfreighter wrote: ↑24 May 2023, 03:30
2. build it on a Slackware or porteus, dependencies first
We absolutely must have an automatic dependency tracer and builder, nobody is going to waste their life resolving dependency chain one by one
Package Managers, Module Builders
Posted: 26 May 2023, 16:13
by francois
@stealthfreighter
Porteus is a skinny version of slackware disigned to be light and fast. There is a lot of packages missing on porteus unlike slackware which is more complete. Slackware does not provide dependency resolution.
All packages are not available as sbo, there are additional repositories other than slackware offered by very good package builders amongst which alien, ponce, slacky ... . These packages are prebuilt. Why would you want to build them by yourself?
Most linux ordinary user just want a simple method to get and install packages on their linux box. So package managers for prebuilt packages and/or package builders (for sbo) are what most linux users want. For porteus most users will appreciate the added feature of dependency resolution.
Package Managers, Module Builders
Posted: 27 May 2023, 10:42
by francois
@rych:
This thread is a good initiative. Package management under porteus and slackware with dependency resolution has always been a concern. But tied to package management there is the availability of a wider pasture of packages.
The pasture which is well addressed by ubuntu, and in some way by archlinux, has always been a concern with porteus. Pasture is clearly not as wide under porteus or slackware.
This is why nemesis porteus was born. Brokenman gave birth to it ingenuously by developping a wrapper over pacman the package manager of arch linux and ncmprhnsbl made the follow up. He is currently maintaining it managing to turn arch linux (artix) into a semi-rolling distribution.
Nemesis Arch based Porteus
and this has brought two other initiatives of our genious neko using debian and arch pastures:
Simple Package Manager for Debian type
ArchLinux packages manager for Porteus
Another way to increase pasture is the git command to install packages from github. It would be nice to be able to make modules from git, instead of a complete install to porteus system. This must be possible but I do not know how.
Package Managers, Module Builders
Posted: 27 May 2023, 12:51
by rych
francois, what do you think about PorteuX (stable or current) and its App Store? Or what is the package manager/ modules builder used there?
Did you know that you can...?
Package Managers, Module Builders
Posted: 27 May 2023, 14:09
by francois
I did not use it yet. I am sure that it is a much performant porteus derivative as fulalas is its creator. I am still too busy with my porteus 5 installation.
How would you rate it in terms of pasture performance?
Package Managers, Module Builders
Posted: 29 May 2023, 20:04
by stealthfreighter
rych wrote: ↑26 May 2023, 10:21
stealthfreighter wrote: ↑24 May 2023, 03:30
2. build it on a Slackware or porteus, dependencies first
We absolutely must have an automatic dependency tracer and builder, nobody is going to waste their life resolving dependency chain one by one
Yes, I understand that automatic dependency resolution is an important aspect of the Linux user experience. For example I do not build stuff like VLC because it would take too much time to build the dependencies and it's not worth it.
What I have written was not meant to replace what you have contributed, only to complete it with a simple (yet guaranteed) solution in case anybody needs just one or two packages, or may not have internet on the machine running porteus.
I am sorry if that lead to confusion, maybe I should have phrased it more "inclusively." In fact I am very glad that some people have a passion for dependency resolution!
@francois
Yes, I understand what you are saying, but 99.5% of packages anybody would ever need are on sbo. Other than that the Slackware philosophy is to build from sources, and that should be reason enough for why I would want to build them myself.
I think we agree on most things, but I would have to take difference with regards to porteus being a linux distribution for the ordinary user; an ordinary user would probably use Ubuntu or Mint or Macintosh.
Package Managers, Module Builders
Posted: 30 May 2023, 02:46
by francois
ordinary user would probably use Ubuntu or Mint to replace windowz. The time they took to make the transition, if invested into porteus, they would get more satisfaction.
Oh yeah! (The Stones not quoted)

Package Managers, Module Builders
Posted: 14 Jun 2024, 10:46
by rych
rych wrote: ↑27 Apr 2023, 06:35
1.a) getpkg
getpkg is a porteus script (/usr/local/bin/getpkg) that fetches packages from the slackware repo
getpkg package-name1 package-name2 ...
1.b) pmod
pmod is a simple wrapper for slackpkg
Code: Select all
pmod -u
pmod -s search-by-package-name
pmod -m package-name
1.c) getmod
getmod: A wrapper for slapt-get to build modules [Porteus 5.0's USM replacement] getmod: A wrapper for slapt-get to build modules
Code: Select all
getmod -u
getmod -s search-by-package-name-substring
getmod -m package-name
1.d) now there is also slapt-mod, another "simple wrapper for slapt-get" (slapt-get is "an implementation of the Debian APT system to Slackware") to build a module", a bash script that only handles the stripping and module creation and directs slapt-get (and installpkg) to do all the package related stuff". How/Why is it different from the getmod above or is it the same essentially? Its configuration is in /etc/slapt-get/slapt-getrc.
Package Managers, Module Builders
Posted: 14 Jun 2024, 16:26
by Ed_P
slapt-mod was added in Porteus 5.01,
Porteus-v5.01 is released!, is based on getmod, and is supported by Porteus.
Package Managers, Module Builders
Posted: 15 Jun 2024, 04:42
by ncmprhnsbl
rych wrote: ↑14 Jun 2024, 10:46
How/Why is it different from the getmod above or is it the same essentially? Its configuration is in /etc/slapt-get/slapt-getrc
it is the same script babam provided with some small modifications by me : recently some color and priv escalation parts but more notably: /etc/slapt-get/slapt-modrc where various stripping options can be set:
Code: Select all
## config file for slapt-mod wrapper for slapt-get
## locale ? 0 or language code eg. de (german) all others will be removed
locale=0
## man pages ? 1 keep or 0 remove
man=0
## headers ? 1 keep or 0 remove
headers=0
## docs ? 1 keep or 0 remove
docs=0
the renaming was to make it clearer what it is wrapping.
Package Managers, Module Builders
Posted: 15 Jun 2024, 13:23
by rych
ncmprhnsbl wrote: ↑15 Jun 2024, 04:42
t is the same script babam provided with some small modifications
Thanks for the new tool. Looks like it inherited some problems of getmod, for example, if you (deactivate your current vlc module first?) and run these:
Code: Select all
root@porteus:~# slapt-mod -s vlc
vlc-3.0.17.3-x86_64-3salix15.0 (VLC media player)
vlc-3.0.19-x86_64-1alien (multimedia player for various audio and video formats)
vlc-3.0.20-x86_64-1ponce (VLC media player)
vlsub-0.10.2-x86_64-1salix15.0 (VLC extension)
root@porteus:~# slapt-mod -m vlc-3.0.20
Reading Package Lists...Done
No such package: vlc-3.0.20
root@porteus:~# slapt-mod -m vlc-3.0.20-x86_64-1ponce
Reading Package Lists...Done
The following NEW packages will be installed:
vlc
0 upgraded, 0 reinstalled, 1 newly installed, 0 to remove, 0 not upgraded.
Need to get 10.6MB of archives.
Do you want to continue? [y/N] y
1/1 Get http://ponce.cc/slackware/slackware64-15.0/packages/ vlc 3.0.20-x86_64-1ponce [10.6MB]...Done
Done
... you can't really find the .xzm file anywhere because it was not built. Something is "Done" but no module built

I don't remember how I ended up getting the latest vlc module after all, perhaps
pmod helped in this case at least getting tkz file for it at least...
Package Managers, Module Builders
Posted: 15 Jun 2024, 15:38
by Ed_P
rych wrote: ↑15 Jun 2024, 13:23
you can't really find the .xzm file anywhere
Did you check the /tmp folder?