slpkg : package manager

New features which should be implemented in Porteus; suggestions are welcome. All questions or problems with testing releases (alpha, beta, or rc) should go in their relevant thread here, rather than the Bug Reports section.
Post Reply
User avatar
francois
Contributor
Contributor
Posts: 4902
Joined: 28 Dec 2010, 14:25
Distribution: kde xfce porteus manjaro kubun
Location: Enfin l'été, le changement climatique attendu: le soleil.

slpkg : package manager

Post#1 by francois » 25 Jun 2017, 13:07

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

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. :)
Voltaire: Le mieux est l'ennemi du bien.

User avatar
brokenman
Site Admin
Site Admin
Posts: 5436
Joined: 27 Dec 2010, 03:50
Distribution: Porteus v3.2rcX all desktops
Location: Brazil
Contact:

Re: slpkg : package manager

Post#2 by brokenman » 25 Jun 2017, 14:28

Yes, at first glance it appears to be impressive. I'd like to see people test this one!
How do i become super user?
Wear your underpants on the outside and put on a cape.

User avatar
francois
Contributor
Contributor
Posts: 4902
Joined: 28 Dec 2010, 14:25
Distribution: kde xfce porteus manjaro kubun
Location: Enfin l'été, le changement climatique attendu: le soleil.

Re: slpkg : package manager

Post#3 by francois » 04 Jul 2017, 04:28

I have done some testing, but not thoroughly enough. The impression is still good.

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. :)
Voltaire: Le mieux est l'ennemi du bien.

User avatar
brokenman
Site Admin
Site Admin
Posts: 5436
Joined: 27 Dec 2010, 03:50
Distribution: Porteus v3.2rcX all desktops
Location: Brazil
Contact:

Re: slpkg : package manager

Post#4 by brokenman » 04 Jul 2017, 21:56

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.
How do i become super user?
Wear your underpants on the outside and put on a cape.

Post Reply