Page 1 of 3

slpkg : package builder (manager) linux

Posted: 25 Jun 2017, 13:07
by francois
slpkg is said to be a simple command line manager slackware packages and slackbuilds. It will accomodate many different repositories:
https://github.com/dslackw/slpkg/blob/master/README.rst

Use of slpkg commented by alien bob:
http://alien.slackbook.org/blog/introdu ... ositories/

First run:

Code: Select all

# slpkg update
Syntax:

Code: Select all

root@porteus:~# slpkg -h

slpkg - version 3.2.7 | Slackware release: stable - 14.2

Slpkg is a user-friendly package manager for Slackware installations

Usage: slpkg [COMMANDS|OPTIONS] {repository|package...}

                                                 _       _
                                             ___| |_ __ | | ____ _
                                            / __| | '_ \| |/ / _` |
                                            \__ \ | |_) |   < (_| |
                                            |___/_| .__/|_|\_\__, |
                                                  |_|        |___/

Commands:
   update, --only=[...]                      Run this command to update all
                                             the packages list.

   upgrade, --only=[...]                     Delete and recreate all packages
                                             lists.

   repo-add [repository name] [URL]          Add custom repository.

   repo-remove [repository]                  Remove custom repository.

   repo-enable                               Enable or disable default
                                             repositories via dialog utility.

   repo-list                                 Print a list of all the
                                             repositories.

   repo-info [repository]                    Get information about a
                                             repository.

   update slpkg                              Upgrade the program directly from
                                             repository.

   health, --silent                          Health check installed packages.

   deps-status, --tree, --graph=[type]       Print dependencies status used by
                                             packages or drawing dependencies
                                             diagram.

   new-config                                Manage .new configuration files.

Optional arguments:
  -h | --help                                Print this help message and exit.

  -v | --version                             Print program version and exit.

  -a | --autobuild, [script] [source...]     Auto build SBo packages.
                                             If you already have downloaded the
                                             script and the source code you can
                                             build a new package with this
                                             command.

  -b | --blacklist, [package...] --add,      Manage packages in the blacklist.
       --remove, list                        Add or remove packages and print
                                             the list. Each package is added
                                             here will not be accessible by the
                                             program.

  -q | --queue, [package...] --add,          Manage SBo packages in the queue.
       --remove, list, build, install,       Add or remove and print the list
       build-install                         of packages. Build and then
                                             install the packages from the
                                             queue.

  -g | --config, print, edit, reset          Configuration file management.
                                             Print, edit the configuration file
                                             or reset in the default values.

  -l | --list, [repository], --index,        Print a list of all available
       --installed, --name                   packages from repository, index or
                                             print only packages installed on
                                             the system.

  -c | --check, [repository], --upgrade,     Check for updated packages from
       --rebuild --skip=[...],               the repositories and upgrade or
       --resolve-off, --checklist            install with all dependencies.

  -s | --sync, [repository] [package...],    Sync packages. Install packages
       --rebuild, --reinstall,               directly from remote repositories
       --resolve-off, --download-only,       with all dependencies.
       --directory-prefix=[dir],
       --case-ins

  -t | --tracking, [repository] [package],   Tracking package dependencies and
       --check-deps, --graph=[type],         print package dependencies tree
       --case-ins                            with highlight if packages is
                                             installed. Also check if
                                             dependencies used or drawing
                                             dependencies diagram.

  -p | --desc, [repository] [package],       Print description of a package
       --color=[]                            directly from the repository and
                                             change color text.

  -n | --network, [package], --checklist,    View a standard of SBo page in
       --case-ins                            terminal and manage multiple
                                             options like reading, downloading,
                                             building, installation, etc.

  -F | --FIND, [package...], --case-ins      Find packages from each enabled
                                             repository and view results.

  -f | --find, [package...], --case-ins      Find and print installed packages
                                             reporting the size and the sum.

  -i | --installpkg, [options] [package...]  Installs single or multiple *.tgz
       options=[--warn, --md5sum, --root,    (or .tbz, .tlz, .txz) Slackware
       --infobox, --menu, --terse, --ask,    binary packages designed for use
       --priority, --tagfile]                with the Slackware Linux
                                             distribution onto your system.

  -u | --upgradepkg, [options] [package...]  Upgrade single or multiple
       options=[--dry-run, --install-new,    Slackware binary packages from
       --reinstall, --verbose]               an older version to a newer one.

  -r | --removepkg, [options] [package...],  Removes a previously installed
       --deps, --check-deps, --tag,          Slackware binary packages,
       --checklist                           while writing a progress report
       options=[-warn, -preserve, -copy,     to the standard output.
       -keep]                                Use only package name.

  -d | --display, [package...]               Display the contents of installed
                                             packages and file list.

You can read more about slpkg from manpage or see examples from readme file.
Issues: https://github.com/dslackw/slpkg/issues
Homepage: https://github.com/dslackw/slpkg

root@porteus:~#

Downloads:
Slackware: slpkg-3.2.7-i586-1_dsw.txz
https://github.com/dslackw/slpkg/releas ... -1_dsw.txz
Slackware64: slpkg-3.2.7-x86_64-1_dsw.txz
https://github.com/dslackw/slpkg/releas ... -1_dsw.txz
git:
https://github.com/dslackw/slpkg

Optional dependencies, all available thru usm:
python2-pythondialog for dialog box interface
pygraphviz for drawing dependencies diagram
graph-easy for drawing ascii dependencies diagram
httpie alternative downloader
aria2 alternative downloader

Video demonstration seems impressive:
https://www.youtube.com/watch?v=oTtD4XhHKlA

Has to be tested. :)

Re: slpkg : package manager

Posted: 25 Jun 2017, 14:28
by brokenman
Yes, at first glance it appears to be impressive. I'd like to see people test this one!

slpkg : package manager

Posted: 04 Jul 2017, 04:28
by francois
I have done some testing, but not thoroughly enough. The impression is still good.

More info in:
https://github.com/dslackw/slpkg#readme

Interesting is the track package dependencies function:
https://github.com/dslackw/slpkg/blob/master/README.rst
Tracking the dependencies of a package with command '# slpkg -t <repository> <package>'. Displays a package dependency tree and also tells you which ones are installed on your system events. Check if packages used from other packages with additional option '--check-deps' or drawing image map dependencies with additional option '--graph=[image]'.

There are some repository functions and a great selection of repositories available stock. They are easily selected of deselected.


Other testers needed. If there is enough enthusiasm, we might get in contact with the developer. And ask for adaptations, like the possibility to build packages and dependencies without installation, ... ... and maybe a GUI interface.

Building from source without installation is already a possibility.

Really, other testers needed. :)

Re: slpkg : package manager

Posted: 04 Jul 2017, 21:56
by brokenman
My first test was to build a package under xfce4 (slackware-current) but it did not pull all dependencies and left me with a non functional package. It may have been my error though, I may have made the program mistake the version of slackware. I will have to test it again.

slpkg : package manager

Posted: 30 Mar 2020, 16:01
by francois
As beny as proposed it slpkg. Contrarily to sbopkg, it should resolve dependencies. See:
https://foro.seguridadwireless.net/cola ... slapt-src/

I know this is necrobumping, as soon as I get enough time and info, I will make a bis version of this old thread. :)

slpkg : package builder (manager) linux

Posted: 03 Apr 2020, 14:47
by francois
If someone has a working module of slpkg. It would be appreciated. My first try at it was a failure.

Thanks.

slpkg : package builder (manager) linux

Posted: 13 Apr 2020, 19:00
by beny

slpkg : package builder (manager) linux

Posted: 07 Sep 2020, 02:00
by Arleson
francois wrote:
03 Apr 2020, 14:47
If someone has a working module of slpkg. It would be appreciated. My first try at it was a failure.

Thanks.
For me too!!!!

slpkg : package builder (manager) linux

Posted: 07 Sep 2020, 21:09
by beny
hi this work on porteus rc2 http://www.mediafire.com/folder/wkszlw3x6358o/slpkg ,try if work for...

slpkg : package builder (manager) linux

Posted: 08 Sep 2020, 04:48
by Ed_P
beny this is what I saw in Porteus Cinnamon rc2 when I tried your file.

Code: Select all

guest@porteus:~$ slpkg
Traceback (most recent call last):
  File "/usr/bin/slpkg", line 35, in <module>
    from slpkg.main import main
  File "/usr/lib64/python3.8/site-packages/slpkg/main.py", line 58, in <module>
    from slpkg.sbo.queue import QueuePkgs
  File "/usr/lib64/python3.8/site-packages/slpkg/sbo/queue.py", line 39, in <module>
    from slpkg.sbo.slack_find import slack_package
  File "/usr/lib64/python3.8/site-packages/slpkg/sbo/slack_find.py", line 26, in <module>
    from pkg_resources import parse_version
ModuleNotFoundError: No module named 'pkg_resources'
guest@porteus:~$ 
What am I doing wrong?

slpkg : package builder (manager) linux

Posted: 08 Sep 2020, 07:27
by donald
@Ed
Activate the 05-devel module.
Reason:
the python-setuptools are needed.

Code: Select all

root@porteus:/home/guest# slpkg repo-list
+==============================================================================
| Repo id  Repo URL                                            Default   Status
+==============================================================================
  alien    http://bear.alienbase.nl/mirrors/people/alien/sb~   yes     disabled
  connos   https://connochaetos.org/slack-n-free/              yes     disabled
  conrad   http://slack.conraid.net/repository/slackware64-~   yes     disabled
  csb      http://slackware.uk/csb/                            yes     disabled
  ktown    http://alien.slackbook.org/ktown/                   yes     disabled
  mles     http://slackware.uk/microlinux/                     yes     disabled
  msb      http://slackware.org.uk/msb/                        yes     disabled
  multi    http://bear.alienbase.nl/mirrors/people/alien/mu~   yes     disabled
  rested   http://bear.alienbase.nl/mirrors/people/alien/re~   yes     disabled
  rlw      http://slackware.uk/people/rlworkman/               yes     disabled
  salix    http://download.salixos.org/                        yes     disabled
  sbo      http://slackbuilds.org/slackbuilds/                 yes      enabled
  slack    http://mirrors.slackware.com/slackware/             yes      enabled
  slacke   http://ngc891.blogdns.net/pub/                      yes     disabled
  slackl   http://www.slackel.gr/repo/                         yes     disabled
  slacky   http://repository.slacky.eu/                        yes     disabled
  slonly   https://slackonly.com/pub/packages/                 yes     disabled

Repositories summary
===============================================================================
2/17 enabled default repositories and 0 custom.
Edit the file '/etc/slpkg/repositories.conf' for enable and disable default
repositories or run 'slpkg repo-enable' command.
EDIT
Activating the devel module just for that?
download and convert to xzm
http://mirrors.slackware.com/slackware/ ... 6_64-1.txz

One file is still missing, you also need /usr/lib64/python3.8/pydoc.py
you'll find this file in the devel module [mloop devel.xzm > find/copy file > uloop devel.xzm]
B)
last but not least, one could merge all this into a single module. :)
python-setuptools-50.3.0-x86_64-1
python-urllib3-1.25.7-x86_64-1_SBo
slpkg-3.9.0-x86_64-1ponce
pydoc.py

slpkg : package builder (manager) linux

Posted: 08 Sep 2020, 09:43
by beny
hi i have to add python3-pythondialog-3.5.1-x86_64-1ponce.xzm that allow to use a gui but in porteus 5 rc2 work you have to tweak repos that you use:
guest@porteus:~$ su root
Password:
root@porteus:/home/guest# slpkg
Usage: slpkg [COMMANDS|OPTIONS] {repository|package...}

Commands:
[update, --repositories=[...]]
[upgrade, --repositories=[...]]
[repo-add [repository name] [URL]]
[repo-remove [repository]]
[repo-enable]
[repo-list]
[repo-info [repository]]
[update [slpkg]]
[health, --silent]
[deps-status, --tree, --graph=[type]]
[new-config]
[clean-tmp]

Optional arguments:
[-h] [-v]
[-a [script] [sources...]]
[-b [package...] --add, --remove,
  • ]
    [-q [package...] --add, --remove,
    [list, build, install, build-install]]
    [-g [print, edit, reset]]
    [-l [repository], --index, --installed, --name]
    [-c [repository], --upgrade, --rebuild, --skip=[...],
    --resolve-off, --checklist]
    [-s [repository] [package...], --rebuild, --reinstall,
    --resolve-off, --download-only,
    --directory-prefix=[dir],
    --case-ins, --patches]
    [-t [repository] [package], --check-deps, --graph=[type],
    --case-ins]
    [-p [repository] [package], --color=[]]
    [-n [SBo package], --checklist, --case-ins]
    [-F [package...], --case-ins]
    [-f [package...], --case-ins, --third-party]
    [-i [options] [package...]]
    [-u [options] [package...]]
    [-r [options] [package...], --deps, --check-deps, --tag,
    --checklist, --third-party]
    [-d [package...]]

    For more information try 'slpkg -h, --help' or view manpage
    http://www.mediafire.com/folder/wkszlw3x6358o/slpkg into the folder ther are 3 files we have to download all the files inside.

slpkg : package builder (manager) linux

Posted: 08 Sep 2020, 09:46
by beny
btw if someone with a lot of skill make a script to convert files in xzm format is welcome slpkg is a bit dangerous when start to download deps or files...

slpkg : package builder (manager) linux

Posted: 08 Sep 2020, 13:06
by beny
well the sbo build of claws-mail at fist sight fail but because search for enchant that is not in rc2,i have installed the current version of enchant and work with libetpan and claws-mail from sbo via slpkg,the 14.2+ is a strange mix...ok vlc is the next...

slpkg : package builder (manager) linux

Posted: 08 Sep 2020, 14:33
by Ed_P
Adding a test to see if the 05-devel module is loaded would be helpful. Similar to the root test.

Code: Select all

guest@porteus:~$ slpkg

slpkg: Error: Must have root privileges

guest@porteus:~$ su
Password: 
root@porteus:/home/guest# slpkg
Usage: slpkg [COMMANDS|OPTIONS] {repository|package...}
beny wrote:
08 Sep 2020, 09:46
btw if someone with a lot of skill make a script to convert files in xzm format is welcome slpkg is a bit dangerous when start to download deps or files...
slpkg doesn't download dependencies or downloads the requested app and it's dependencies but doesn't make a xzm module with all of them?? :%)

Where are all the app downloads saved? /tmp?

Added in 1 hour 10 minutes 43 seconds:
It would be helpful if the help options mentioned what they do. For example -i means Install not Info.

Code: Select all

For more information try 'slpkg -h, --help' or view manpage

root@porteus:/home/guest# slpkg -r solitaire
Packages with name matching [ solitaire ]

No such package solitaire: Can't remove

root@porteus:/home/guest# slpkg -p solitaire

slpkg: Error: Repository 'solitaire' does not exist

root@porteus:/home/guest# slpkg -f solitaire
Packages with matching name [ solitaire ]

No such package solitaire: Can't find

root@porteus:/home/guest# slpkg -i solitaire
Cannot install solitaire:  file not found
root@porteus:/home/guest#