Commit graph

38 commits

Author SHA1 Message Date
vins
aa935254e8 pkgtools/pkg: only require libbsd on Linux.
To date, we don't know of any platform but Linux where libbsd compiles
fine.
2022-12-19 16:49:59 +00:00
nia
406ad3b7c1 pkgtools: Replace RMD160 checksums with BLAKE2s checksums
All checksums have been double-checked against existing RMD160 and
SHA512 hashes
2021-10-26 11:11:07 +00:00
nia
d171eeaf22 parallel: Remove SHA1 hashes for distfiles 2021-10-07 14:46:45 +00:00
nia
f3199fd0d6 pkg: use libbsd on non-bsd systems 2021-05-14 12:05:38 +00:00
khorben
0742b9d1de pkg: update to version 1.10.99.7
Changes from pkg 1.10.99.6 to 1.10.99.7
- Sort fts traversal in repo creation
- Fix floating pint exception when packaging packages with weird elf files
- More test cases for config merge
- Fix running the testsuite on linux and osx
- Fix pkg version regarding flavors
- Add support for creating packages with a hash in their names
- Accept DT_SONAME anywhere in .dynamic
- make pkg version -r imply -R
- Some fixes for the progression display
- Rename some variables in security periodic scripts.
- Parse FreeBSD OS version and forbid to install too new packages

Changes from pkg 1.10.99.5 to 1.10.99.6
- Lots of fixes/improvements on periodic scripts
- Fix typo in the .pc file
- Only check for origin if the strings contains / in pkg version
- Support flags when exporting the metalog
- Ignore flags when installing as a user
- fix again using pattern as package arch
- recognize armv7
- add %q to pkg_printf(3) and pkg-query(8) to print altabi
- add an extra line when printing pkg-messages to improve readability
- stop considering nfs as dangerous and if a corruption happens on nfs drive
  by a message the user to the highly possible reason of the corruption so
  he can fix
- zsh completion imrpovements

Changes from pkg 1.10.99.4 to 1.10.99.5
- pkg clean is now happy if the cache dir non existing
- 410.pkg-audit now uses anticongestion on freebsd 12
- fix pkg install -r foo if foo is a disabled repository
- fix elf handling on non FreeBSD
- fix support for platforms without AT_SYMLINK_NOFOLLOW
- fix dropping privileges on Linux
- fix build with recent libbsd
- fix duplicate pkg registration overwriting the existing pkg
- better ABI name on linux
- lots of changes in internal API to use fd when possible
- removed option: pkg repo -L

Changes from pkg 1.10
- Use dep_formula in the solver
- Cache pw result to avoid over reloading nssswitch.conf
- Remove pkg2ng and support for pkg_ databases
2020-09-21 03:03:55 +00:00
khorben
32d09f38b3 pkg: update to version 1.9.99.11
The changes since version 1.99.9 appear to be:

- New pkg upgrade --vulnerable
2020-04-10 23:46:14 +00:00
khorben
83e301dfe2 pkg: update to version 1.99.9
The changes since version 1.99.4 appear to be:

- Fix pkg register issues with some version of libarchive:
  * hardlinks not being made hardlinks sometime
  * issues when PREFIX is a symlink to another directory
- Use portable mechanism to find the number of CPUs which allows pkg repo to be
  faster on linux
2020-04-10 23:38:50 +00:00
khorben
66d29d9766 pkg: fix build with developer checks enabled
This adds a patch to fix a portability check.

Bumps PKGREVISION.
2020-04-10 23:28:32 +00:00
nia
dcb43af864 pkg: needs pthreads.
fixes build on netbsd-9.
2019-09-07 23:30:45 +00:00
jperkin
5393242c73 *: Move SUBST_STAGE from post-patch to pre-configure
Performing substitutions during post-patch breaks tools such as mkpatches,
making it very difficult to regenerate correct patches after making changes,
and often leading to substituted string replacements being committed.
2018-07-04 13:40:07 +00:00
rillig
c77d3c5335 pkgtools/*: Realign variables in Makefiles
Mainly done by pkglint, manually reviewed and improved in some few cases.
2018-01-27 19:07:46 +00:00
jlam
ee9212244c pkgtools/pkg: Install manpages into ${PKGMANDIR}.
Pass "mandir=..." when running "make install" to pass the correct
location for installed manpages under ${PKGMANDIR}.
2017-08-19 00:24:13 +00:00
jperkin
cce8ad93ef Recursive revision bump for archivers/libarchive. 2017-05-29 11:09:45 +00:00
marino
c9a3e49932 pkgtools/pkg: Upgrade version 1.9.99.3 => 1.99.4
- Add progress when fetching (number of files to fetch)
- Improved messages about locked packages
- Return 1 when a user rejects the proposed plan
- When dealing with configuration files '@config' never overwrites
  untracked files
- Warn everyone about deprecation of @dirrm and @exec
- Deduplicate metadata loading code
- pkg register now understands context aware messages
2016-11-21 14:04:35 +00:00
marino
aec68ef18b pkgtools/pkg: Upgrade version 1.8.7 => 1.9.99.3
This is a development version, but it contains many fixes for NetBSD and
Linux.  It's better than the release version here.
2016-11-20 01:18:46 +00:00
marino
575470394d pkgtools/pkg: Fix build on recent NetBSD 7.99
After the binutils import, the RPATH is not getting set on -current
versions of NetBSD.  This BUILDLINK_TRANSFORM from wiz should resolve
that issue.
2016-11-18 14:10:18 +00:00
marino
44ed6fe6c2 pkgtools/pkg: Ensure funopen prototypes are imported on libfetch's ftp.c
This is similar to recent fix on http.c
2016-11-15 17:48:56 +00:00
marino
a031c0656c pkgtools/pkg: Follow recent PKG_DBDIR changes in bootstrap script
The default for PKG_DBDIR changed from /var/db/pkg to ${LOCALBASE}/pkgdb
Accordingly, the pkgng location is changing from /var/db/pkgng to
${LOCALBASE}/pkgng-db
2016-11-15 15:42:21 +00:00
marino
74bb64aa0b pkgtools/pkg: Bump PKGREVISION after previous commit 2016-11-14 19:38:11 +00:00
marino
7f254b4536 pkgtools/pkg: bring in most of pkgsrc-synth improvements
Several updates in pkgsrc-synth work are applicable to pkgtools/pkg so
let's bring them in.  Some changes:

1) fetching segfault fixed
2) change VULNXML URL from FreeBSD ports to pkgsrc version
3) Fix vulnerability report URLs (404) to valid ones (DragonFlyBSD.org)
4) Add ability to build debuggable version
5) Fix PKG_DBDIR default setting for pkg (honor mk.conf)
6) Fix another segfault on NetBSD when pkg(8) attempts to read elfhints.
   This is only valid on FreeBSD and DragonFly, so bring in upstream
   fix to block on other platforms.
7) Set as BOOTSTRAP_PKG and block USE_CWRAPPERS for bootstrap reasons
8) realign SUBST* definitions
2016-11-14 18:59:12 +00:00
marino
938915d38c pkgtools/pkg: fix installation of conf files (forgotten PLIST delta)
Use of OWN_DIRS alleviates use of @pkgdir.  Thanks to jperkins
and ultimately wiz for the suggestion.
2016-10-28 23:39:10 +00:00
marino
9a555265f0 pkgtools/pkg: fix installation of conf files (better)
Use of OWN_DIRS alleviates use of @pkgdir.  Thanks to jperkins
and ultimately wiz for the suggestion.
2016-10-28 23:37:53 +00:00
marino
3d7455043c pkgtools/pkg: fix installation of conf files
The CONF_FILES are never installed if their target directories don't
already exist due to other previous installation.  This adds several
@pkgdir entries to ensure the CONF_FILES installation can always succeed.

While here, simplify the post-install target.
2016-10-28 19:35:30 +00:00
marino
dc5dfa8d53 pkgtools/pkg: Honor existing PKG_DBDIR definition
Rather than defaulting to /var/db/pkgng, use the variable that exists
already for this purpose.  Similarly, change cache directory definition
from /var/cache/pkgng to ${VARBASE}/cache/pkgng
2016-10-28 15:35:08 +00:00
marino
354fdffdce pkgtools/pkg: Allow PORTSDIR to be specified
As pointed out by jperkins, defaulting to builder's setting for PKGSRCDIR
for the sources isn't aways correct for the binary package consumers.
This is not a problem unique to pkgtools/pkg and really requires a system-
wide solution.  Until there is such a global variable, rename the PORTSDIR
variable to PKG.portsdir and allow it to be modified by e.g. make.conf.

In the case of pkg, PORTSDIR just refers to a default configuration
location which is overridable by a configuration file.
2016-10-27 13:22:44 +00:00
khorben
58fbab5524 Import the second part of a patch from John Marino
This:
- fixes the "/usr/ports" paths in code and man pages to
  ${PKGSRCDIR} (normal) or hardcoded to "/usr/pkgsrc" (future, its for
  builders like Synth and poudriere)
- changes default DB path from "/var/db/pkg" to "/var/db/pkgng". It
  seems the original default was too ambiguous as "pkg" is used
  everywhere in pkgsrc and it's the default format (not pkgng format)
- similarly, changes default CACHE patch from "/var/cache/pkg" to
  "/var/cache/pkgng"
- bumps PKGREVISION again

Another relevant comment from John and reworded by myself for context:
(all misquotings mine)

« Importantly, FreeBSD, NetBSD, and DragonFly all provide libarchive
in base. Therefore, this changes the port to use the base version when
available because the libarchive requirement is considered heavy. The
OpenSSL dependency brings a lot with, including perl. When trying to
update the bootstrap to build pkgng instead of pkg_* tools, it is
critical that the dependencies remain low. Other platforms will have
to suffer with the libarchive requirement if they want to use pkgng.

Following this, special linking code is needed for DragonFly since the
SSL libraries are now private. In fact, the only userland program
allowed to link with them is pkg(8) for bootstrapping reasons listed
above. »

Thanks again!
2016-10-27 00:24:58 +00:00
khorben
a5726bfecf Improve the most trivial parts of a patch from John Marino
This does:
- remove the requirement for C++ (there is no C++ code there)
- properly substitute $PKGSRCDIR for PORTSDIR
- remove sbin/pkg2ng as it is inapplicable for pkgsrc
- bump PKGREVISION accordingly

More changes pending...
2016-10-27 00:06:54 +00:00
khorben
1944d73fc2 Remove outdated dependencies
From John Marino, thanks!
2016-10-25 12:54:37 +00:00
khorben
e891e80dea Use the official release instead of the GitHub tree
This also adds two patches, to fix the "major OS upgrade detected" error
in NetBSD. A file missing from the original archive was imported too.

Bump package revision as the upstream was changed. The archive downloaded
has a different filename, so there should be no conflict in the
"distfiles" folder.

From John Marino, thanks!
2016-10-25 11:51:40 +00:00
khorben
b362b2540a Package pkg 1.8.7
For 1.8.0:

New features:
- new vital flag that prevent from removing a package with pkg delete when not specifying -f
- upgrade process now has atomicity per packages meaning now we can safely check the return of the pre* scripts
- handle ctrl-c during upgrade/install/update
- solver improvements
- pkg clean now runs in a capsicum sandbox on supported plateforms

Changes:
- pkg delete now fails if one tries to delete it (the pkg package) without -f. Before it was just warning and skipping it
- pkg install --from-root has been renamed pkg install --recursive to avoir confusion

Fixes:
- correctly handle hardlinked setuid files
- better handling of setuid
- fix elf analysis when some bad libraries have SONAME specified by empty
- fix elf analysis when a binary provides elf_notes but not the expected ones and are still valid freebsd binaries
  (this fixes the case when libgdk_pixbuf was not found as a provided lib on i386)
- NAMESERVER option is now working again and inputs are better checked
- lots of bug fixes: potential leaks mostly

For 1.7.0:

Changes:
- Support new "vital" notion: prevent from implicit deletion
- Improved support for OpenBSD/bitrig (still lacks some functions in libc)
- Improved ZSH completion
- Updated libucl
- Lots of fixes in error messages
- Fixed "pkg lock" handling
- Allow to specify "inline" respositories in pkg.conf
- ipv6 fixes
- Allow to restrict the accepted url schemes
- More commands supports "-q"
- Multiple bug fixes
- As usual multiple new bugs
- Improved support for shlibs dependency generation when packaging base via ALLOW_BASE_SHLIBES

For 1.6.0:
- Lots of improvements in the solver (in particular fixes the case like the
  recent jpeg upgrade)
- Lots of fixes in the 3 way merge code
- pkg add can now work without a version specified in the dependency line
- pkg check -d now also check the required libraries
- Improved support for partial upgrades
- Improved zsh completion support
- Improved linux support (now all regression tests passes on linux)
- Messages can now be context aware: (only print a given message during
  installation, upgrade - version aware -, removal, or always)
- @keywords now accepts new entries to add context aware messages
- Add the ability to generate graphiz's dot format representation of the
  solver's problem
- pkg search now default on showing the comments of of the matched packages
- Lots of bug fixes and code cleanup
- Plenty of new bugs
2016-08-27 21:57:05 +00:00
khorben
a4e9115319 Update pkg to version 1.5.6
From the commit log, since 1.5.4:
- More fixes to pkg-check.8
- Important improvements in the pkg check manpage
- HBSD: fix format specifier in libpkg's pkg_vets(...)
- Fix libexpat buffer overflow: CVE-2015-1283
- Always use sqlite3_column_int64 for reading integers from the db
- Add a new configuration item to define custom HTTP User-Agent
- Don't attempt to set file ownership when INSTALL_AS_USER is set
- zsh-completion: updated all of the currently handled subcommands
- Fix typo s/conpact/compact/
- Fix two typos in pkg_vset(), to correspond to pkg_vget()'s code
- Implement AUTOCLEAN
- Clean up some grammar and formatting in pkg.conf(5).
- Update zsh completion
- Do not distribute generated source files
- Add a random delay to pkg-audit when invoked without a TTY
- Fix display of <root directory>
2016-08-27 21:10:59 +00:00
jperkin
c43e8d9265 The recent libarchive update changed the library major. Increase the
ABI depends and perform a PKGREVISION bump for dependents.

Noticed by OSX binary package users.
2016-07-01 17:55:22 +00:00
jperkin
7aefd7c6ee Support PKGMANDIR. 2016-04-01 13:11:14 +00:00
agc
771abda008 Add SHA512 digests for distfiles for pkgtools category
Existing SHA1 digests verified and found to be the same on the machine
holding the existing distfiles (morden).  All existing SHA1 digests
retained for now as an audit trail.
2015-11-04 00:38:39 +00:00
khorben
21a18821d5 Import wip/pkg15 as pkgtools/pkg
pkg is built on top of libpkg, a new library to interface with package
registration backends. It abstracts package management details such as
registration, remote repositories, package creation, updating, etc.
2015-07-04 14:37:25 +00:00
wiz
79a4bfc219 Not needed any more -- COMMENTs are in Makefiles now. 2001-02-16 15:52:49 +00:00
wiz
74874e66d9 remove trailing `.' 2000-03-09 13:47:31 +00:00
agc
a477e5037b + Add a pkgtools category.
+ Add a pkg_install package, in the pkgtools category, which is a copy
of NetBSD-current's /usr/src/usr.sbin/pkg_install sources, as of
August 28th 1998.  This version of the pkg_* tools includes a version
of pkg_info(1) which echoes matching package names, understands sh(1)
globbing, csh(1)-style {,} alternates, and Dewey decimal version
number relational matching.
1998-08-28 12:25:35 +00:00