woof-CE icon indicating copy to clipboard operation
woof-CE copied to clipboard

Forking sc0ttman's pkg

Open rizalmart opened this issue 3 years ago • 9 comments
trafficstars

sc0ttman's pkg was great and powerful tool however his code was too outdated lag behind PPM with huge improvements such as package downgrade/upgrade. What if I fork the pkg?

rizalmart avatar Mar 02 '22 22:03 rizalmart

hi @rizalmart ,
i definitely would like to see pkg be able to update all builtin packages (as well as user installed stuff). i would also like it to be faster at installing/uninstalling (same for the ppm).

mrfricks avatar Mar 03 '22 09:03 mrfricks

hi @rizalmart , i definitely would like to see pkg be able to update all builtin packages (as well as user installed stuff). i would also like it to be faster at installing/uninstalling (same for the ppm).

I wonder if I make a pull request for pkg here?

rizalmart avatar Mar 03 '22 10:03 rizalmart

What if I fork the pkg?

What's wrong with https://github.com/puppylinux-woof-CE/pkg?

EDIT: what I mean is, why don't you just use the existing repo? Why fork it, if you can just continue the project? It's unmaintained, and you won't run into conflicts with a non-existing upstream project.

dimkr avatar Mar 07 '22 06:03 dimkr

@dimkr why I forked pkg because of development differences. I made a overhaul on pkg because pkg package installation and removal process was lagged behind PPM on later revisions. Also my overhauled pkg has configurable paths compared to original one

rizalmart avatar Mar 11 '22 12:03 rizalmart

sc0ttman's pkg was great and powerful tool however his code was too outdated lag behind PPM with huge improvements such as package downgrade/upgrade. What if I fork the pkg?

i definitely would like to see pkg be able to update all builtin packages (as well as user installed stuff).

Just an FYI - I can't remember off the top of my head the exact commands, but you actually can do those things with Pkg, even if it's outdated in other ways.

You can do pkg update <name> to update a package.. IIRC.. to downgrade you just force install an older one: pkg --force add <name-version>.

In general, you can force install any package, giving its exact version when you do so - meaning upgrading/downgrading packages was always possible using Pkg.

You can also install newer built-in packages using Pkg, which people say you can't. IIRC, you manually list the built ins, download each one, and install each one..

something like

pkg --list-builtins | pkg --force download - && pkg --list-builtins && pkg --force install -

might do it (can't remember exactly)..

You can also do something like:

pkg --list-installed | pkg update -

that ^ will update all user installed packages, in one go.

About using the existing github repo:

It's unmaintained, and you won't run into conflicts with a non-existing upstream project.

Plus, I've already said before anyone can make PRs on that Pkg github repo, I don't care if that or Gitlab repo is the main one.

Happy for the regulars PR mergers to maintain it - any sensible PRs that come in should be easy enough to maintain/review/decide on, despite the large size of the script overall.

sc0ttj avatar May 26 '22 17:05 sc0ttj

Update to the above:

# pkg usage update

Usage: pkg update PKGNAME

Download and install the newest version available
of PKGNAME found in any supported repositories.

If PKGNAME is a builtin, then it will not
be updated or replaced.

^ that will respect the fallback repo order set for your current repo

But it also has the "bleeding edge" option:

bleeding-edge no|yes       if yes, get latest pkg versions, from ANY repo

Also you can rebuild any installed package you updated youself:

pkg repack <PKGNAME>

sc0ttj avatar May 26 '22 18:05 sc0ttj

If you're unsure what command Pkg has, or how to use them do pkg help or pkg usage:

# pkg usage
Usage: pkg usage CMD

Commands:
add-repo       get-only         repo-convert
add-source     help             repo-dep-scope
all-pkgs       help-all         repo-file-list
add            remove           repo-info
ask            install          repo-list
autoclean      install-all      repo-pkg-scope
bleeding-edge  list-deps        repo-update
clean          list-downloaded  search
contents       list-installed   search-all
deb2pet        names            sfs2pet
delete         names-all        sfs-combine
delete-all     names-exact      show-config
deps           names-exact-all  split
deps-all       pet2sfs          tgz2pet
deps-check     pet2tgz          uninstall
deps-download  pet2txz          uninstall-all
dir2pet        build            unpack
dir2sfs        build-list       update-sources
dir2tgz        pkg-combine      version
download       installed        which
examples       repack           which-repo
extract        status           rdep-check
force          update           what-needs
func-list      workdir          rm-repo
txz2pet        dir2repo         merge
whitelist      blacklist        manpage

Usage: pkg usage CMD

sc0ttj avatar May 26 '22 18:05 sc0ttj

@sc0ttj the forked pkg respects the commands and features you established. However the changes was under-the-hood package management.

rizalmart avatar May 30 '22 13:05 rizalmart

Yeah i've seen what changes you've done - mostly updating ~/.packages/ to /var/packages, and replacing hard coded paths with variables.. and post install cache fixes, and some stuff about settings PATHs vars, etc - not sure it warrants a whole new fork tbh..

But up to u guys obvs..

sc0ttj avatar May 31 '22 07:05 sc0ttj