woof-CE
woof-CE copied to clipboard
Forking sc0ttman's pkg
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?
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).
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?
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 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
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.
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>
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 the forked pkg respects the commands and features you established. However the changes was under-the-hood package management.
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..