Commit graph

94 commits

Author SHA1 Message Date
Baptiste Daroussin
721fca0324 Add a patch to fix pkg-static with linked against openssl 1.1.1
This is needed to be able to sign repository with pkg-static

Reported by:	many (based on a patch by gjb)
MFH:		2018Q4
2018-10-16 10:08:01 +00:00
Brad Davis
27f9bf5942 Apply a patch from git that fixes make packages with hardlinks and config files. 2018-09-10 22:28:59 +00:00
Brad Davis
8a3ef66b51 Add a small patch to pkg to fix NULL check in pkg_is_config_file().
This helps pkgbase users with recent updates.

Approved by:	bapt
2018-08-20 16:53:05 +00:00
Brad Davis
2a713fb09d Apply patch for a segfault on upgrade
https://github.com/freebsd/pkg/issues/1663

Approved by:	bapt
2018-05-09 16:00:37 +00:00
Baptiste Daroussin
39150e2743 Update to 1.10.4
- Fix progression display
- Parse FreeBSD OS version and forbid to install too new packages
2018-01-06 23:50:22 +00:00
Baptiste Daroussin
bfd7582edd Fix segfault in pkg version against the ports tree
PR:		224023
Reported by:	jrm, kib, Trond.Endrestol@ximalas.info
Tested by:	jrm (an early version of the patch)
2017-12-05 16:22:01 +00:00
Baptiste Daroussin
d389ce1e3e Update to 1.10.3
- Accept DT_SONAME anywhere in .dynamic when parsing elf binaries
- Fix pkg version when it deals with the ports tree and INDEX after flavors
- Sort fts traversal in repo creation (for reproducible builds)
- Documentation improvements
- make pkg version -r imply -R
2017-12-04 21:32:01 +00:00
Baptiste Daroussin
bec657efdd Add patches from git to handle pkg version with newly flavoured ports tree 2017-12-01 14:10:54 +00:00
Baptiste Daroussin
6b22736a0e Update to 1.10.1
- Cache pw result to avoid over reloading nssswitch.conf
- Fix allow to set env per repo for everykind of repo
- Fix signing_command something saving a truncated signature in the file
  as a result pkg will reject any repository signed
- Fix sqlite vfs overload with new sqlite
- pkg which: add -m to show what files matched using globs
- Revert the new UI which does not respect 80 columns
- Fix query '%q' printing the internal arch instead of the official one
2017-03-26 21:25:47 +00:00
Baptiste Daroussin
7c12f910f1 Fix signing_command something saving a truncated signature in the file
as a result pkg will reject any repository signed
2017-02-27 14:32:36 +00:00
Baptiste Daroussin
f646936a1d Allow per repo environment variable to be set for
every kind of repositories

Reported by:	kib
Tested by:	kib
2017-02-25 12:28:48 +00:00
Baptiste Daroussin
e69e8ebbc4 Release pkg 1.10.0
* fix pkg which -g
* Do not use openssl for sha256
* Improve the default output when fetching data
* Update libfetch to the version of FreeBSD 11
* Fix NetBSD ABI
* Add a fallback for utimensat when reporting EOPNOTSUPP
* replace libsbuf with utstring for portability
* Overwrite some sqlite vfs functions to allow more capsicumisation of pkg
* move more pkg audit details into the library
* allow to run pkg query without any privileges
* extend the audit periodic script to report deprecated packages
* Fix fd leak to rcscripts
* stop dropping privieges during fetching it causes more issues than it solves
* speed walking though [reverse]dependencies
* Update blake2b to latest version
* Add blake2s to the list of supported checksums
* Internal digest now default on blake2b on 64 bits and blake2s on 32 bits.
* Fix segfault when ABI is defined but empty
* Do not use the shared library provides/requires on non FreeBSD/Linux
* Define _NETBSD_SOURCES on NetBSD to allow libfetch to use funopen
* Document vital flags
* Fix potential double free when dealing with @config keyword
* 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 non tracked
  files
* Warn everyone about deprecation of @dirrm and @exec
* Deduplicate metadata loading code
* pkg register now understands context aware messages
* 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
* New pkg upgrade --vulnerable
2017-02-24 22:55:51 +00:00
Baptiste Daroussin
0693ccefbe Fix file descriptor leak that might lead to errors on packages with lots of files
PR:		215544
Submitted by:	pasokondokoro@gmail.com
2016-12-25 15:15:38 +00:00
Baptiste Daroussin
e7badd6689 Add javavmwrapper 2.5_1 to the list of buggy scripts 2016-09-13 20:29:54 +00:00
Baptiste Daroussin
a203d9f11c Add a hack in pkg to skip running predeinstall for javavmwrapper-2.5
During upgrades/reinstall javavmwrapper 2.5 pre deinstall script deletes the pkg
temporary files preventing to finish the upgrade.

A fixed version of javavmwrapper will be made soon, this hack will remain in the
ports tree and not in pkg(8) itself. This hack is made to not bother users is
only affecting upgrade/reinstall phase not proper deinstall

PR:		210313
2016-07-31 11:52:22 +00:00
Baptiste Daroussin
80871d0e41 Release 1.8.6
- Important fixes in the solver
- When conflicts are found, they are explicitly printed
- Reduce namecache contention a bit
- Temporary files created during extraction are now hidden
- Accept symlinks to directories when pkg is expecting a directory
2016-06-25 11:48:14 +00:00
Baptiste Daroussin
d7f63035c7 Fix pkg upgrade -f 2016-06-12 22:41:04 +00:00
Baptiste Daroussin
f8a8451d63 Release 1.8.5
Changes:
- Fix mirror_type: http with https servers
- Fix regression in the solver that tries to reinstall reverse deps sometime
2016-06-09 21:21:03 +00:00
Baptiste Daroussin
2c20fde739 Add a patch to fix grabbing mirror lists over https
Note that people are using mirror_type: http when they should not
most probably due to bad documentation on our side so we will improve that later

mirror_type: http is only useful if you actually host multiple mirror of your
repos see pkg-repository(5).
2016-06-08 14:04:50 +00:00
Baptiste Daroussin
5f4b8f7e80 Update to pkg 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
2016-04-01 22:24:56 +00:00
Bryan Drewery
da7ab928ba Add missing patch for r409562 2016-02-25 22:35:10 +00:00
John Marino
aadfeb0da6 ports-mgmt/pkg: Regenerate EXTRA_PATCHES (unbreaks DragonFly)
The patch target will fail if EXTRA_PATCHES is defined, but it is
only defined on DragonFly (change is no-op for FreeBSD)

Approved by:	Just fix it
2015-04-14 21:32:00 +00:00
Baptiste Daroussin
4126c83152 Update pkg to 1.4.0
Update pkg-devel to 1.4.99.0 (aka 1.5 pre-alpha0)
Changes since pkg 1.3.0:
Changes you can expect in pkg 1.4 are the following:
- Loads of bug fixes
- Stricter checking of the path passed via the plist
- Removal of the bundled libyaml
- new --raw-format to chose the output format for info -R and search -R
- ABI (for freebsd, unchanged for dragonfly) is now follwing MACHINE_ARCH
  (freebsd:10:x86:64 become FreeBSD:10:amd64) the old ABI is available as a
  fallback in ALTABI
- pkg check now support a quiet mode
- new 3 way merge code ("stolen" from the fossil-scm) to allow automerging
configuration files
- new @config keyword to mark a file as a config file (during
  upgrade/reinstallation it will try to merge the configuration with the one the
  user may have modified) an option AUTOMERGE is available to prevent
  automerging if automerge fails a .pkgnew file will be created along with the
  untouched user version of the configuration
- The update procedure has been improved and speed up a lot (in particular for
  machine with low resources)
- The unique identifier has been modified to be pkgname meaning now ports can be
  moved in new categories without having to be considered a different package
- Only libraries starting by lib* are added to the provided libraries
- General speed up of all operations
- pkg set gain a -n option (equivalent to -o but works on name rather than origin)
- pkg set -o now considered deprecated
- pkg version accept '?' and '!' in pkg version limchar
2014-12-09 14:22:10 +00:00
Baptiste Daroussin
3a885f4283 Fix a regression that made some plist errors non fatal
Reported by:	antoine
2014-10-07 06:53:49 +00:00
Baptiste Daroussin
1ab7d6e712 Fix an important regresion preventing pkg2ng to work properly
Reported by:	roberto
Tested by:	roberto
2014-09-26 13:14:20 +00:00
Bryan Drewery
d3649e3087 - Fix crash when overriding repo configs.
PR:		193890
Reported by:	Nikolai Lifanov
With hat:	portmgr
Pointyhat to:	bdrewery
2014-09-24 18:35:27 +00:00
Baptiste Daroussin
89baf77680 Update to 1.3.2
Changes:
- Import fixes from libucl (fixes memory corruption with pkg.conf)
- Fix memory corruption when reinstalling packages
- Rework pkg repo process distribution
2014-07-27 23:30:11 +00:00
Andrej Zverev
8451b85d1b Fix reading pkg.conf (this will prevent pkg from segfault)
Approved by:	bapt@ (portmrg@)
2014-07-27 15:33:13 +00:00
Alexey Dokuchaev
aea9f4fb4b Fix the build on PowerPC: apparently it declares that it has atomic builtins,
but GCC 4.2 bombs with internal compiler error (= unrecognizable instruction)
when compiling libucl/src/ucl_util.c.

Approved by:	bapt (portmgr, maintainer)
2014-07-23 16:49:42 +00:00
Baptiste Daroussin
d68c200ddc Update to 1.3.0
Since pkg 1.2:
- 373 files changed, 66973 insertions(+), 38512 deletions(-)
- 29 differents contributors
- Merge of one of the 2013 Summer of code project

Changelog:
- New solver that can support external solvers using the CUDF format and the
internal SAT solver
- pkg-ssh(8) is now sandboxed with capsicum if it is available
- pkg-ssh(8) now uses poll(2)
- Remove StringList usage to improve portability
- Rework the build system to use autotools to help portability
- Now fetching is done to a temporary location and cleaned up if it fails
- Remove PACKAGESITE
- pkg-audit: remove support for portaudit compact database (only VulnXML will be
used)
- Improved UI experience based on jmmv write up
(http://julipedia.meroh.net/search/label/cli-design)
- Reworking the database locking mechanism into a finer grain and more clever
system
- Dynamic conflict handling if a conflict on files is detected at the sanity
check level, try to solve the problem again with the new conflict information
- Fix %t (timestamp) modifier in pkg_printf(3)
- Full output now has a new field "date installed"
- New pkg -o A=B to overwrite configuration from command line without the need
of defining environment variables
- pkg-install now can handle local files
- pkg-add is now an alias on pkg-install
- Simplify API by using more and more libucl objects (hidden behind an opaque
'pkg_object')
- Rework multirepository handling
- Prepare code for repository abstraction support
- Sandbox signature checking and extraction
- Support long options
- Rework the extraction process
- unicity of a package is now origin~name allowing subpackages and flavours
- Improve ui for all commands
- pkg lock -l now list the locked packages
- symlinks now has a checksum to ensure they are valid
- pkg backups generated by the distributed script are now plain sql files
- Tons of bugfixes
- Tons of behavour fixes
2014-07-23 14:22:09 +00:00
Bryan Drewery
0d888b0e8a - Fix pkg-rquery -I to have all expected output.
Obtained from:	upstream 29c9c84e0e11c2c182a8d79634344e57bf2575f1
With hat:	portmgr
Reported by:	dteske
2014-07-04 20:08:11 +00:00
Baptiste Daroussin
119d718d67 Add a version script to only public expose public function in libpkg
PR:		190742
Submitted by:	feld
With help from:	jilles
2014-06-11 15:04:35 +00:00
Antoine Brodin
7e36c656f6 Fix packaging on head, .MAKE.FreeBSD_UL has been retired from bmake
With hat:	portmgr
2014-05-29 06:24:08 +00:00
Baptiste Daroussin
33c20959d8 Add the ability to specifiy the file where the ABI string will be determined from 2014-04-03 13:30:39 +00:00
Antoine Brodin
fb61d858df Detect invalid packages that list directories as a file in plist
Exp-run by:	bdrewery
With hat:	portmgr
2014-04-01 18:34:03 +00:00
Baptiste Daroussin
eeedb5abf8 Update to 1.2.5:
- Manpage improvements
- fix $auditfile in pkg audit periodic script
- Fix repo-*.sqlite being corrupted when pkg update is interrupted by the user
- pkg add now tells the version of the package missing
- Strop decoding/encoding all fields, only scripts and description are now encoded/decoded
2014-01-13 14:19:29 +00:00
Baptiste Daroussin
b2fac3aa96 Fix sefault while cleaning up
It only happens if one has list or key/value list in pkg.conf
a workaround to update is to comment it out the time to upgrade

Reported by:	many
Pointyhat to:	bapt (again)
2013-12-16 11:16:41 +00:00
Baptiste Daroussin
0041687f76 Update to pkg 1.2.3
Changes:
- Workaround a bug in bsd.*.mk on FreeBSD 8.x
- Fix a pkg repo segfault
- Document aliases in pkg.conf(5)
- Be more verbose when refusing a repository configuration file
- Sync libucl with upstream (bug fixes)
- Fix a fd leak in pkg repo
- Fix memory leaks due bad usage of libarchive
2013-12-10 15:44:42 +00:00
Bryan Drewery
36eebfc58a - Fix build on 8.x
With hat:	portmgr
2013-12-06 16:14:27 +00:00
John Marino
2600ce4b43 ports-mgmt/pkg*: Prepare for alternative PORTSDIR support
With the PKG_PORTSDIR make argument set, Release 1.2.2 will properly build
pkg when PORTSDIR doesn't equal the default /usr/ports, as is the standard
case with DragonFly.

Additionally, pkg(8) and pkg-static(8) man pages are conditionally edited
to remove references to the -j option when libjail isn't found on the
system.  This extra-patch should never be used on FreeBSD.
2013-11-29 18:34:34 +00:00
Baptiste Daroussin
a00c8be88c Release pkg 1.2.1
Changes:
- Fix pkg rquery always printing index like lines
- Fix pkg -vv suggestion so it print something actually usable
- Fix shlib's -P and -R options were swapped round.
- Replace broken pkg_repos_count() by pkg_repos_total_count() and pkg_repos_activated_count()
- Fix parsing of options (in manifest)
- pkg add http:// now fetch to a temporary location and cleanup after itself
- Fix generation of the manifest digest
- Properly calculate how many packages where removed
- Fix support for dependencies with the same name (grrrr Fix you port if they have package name collision !!!!)
- Fix pkg info -R in case multiple dependencies has the same name
2013-11-27 18:26:48 +00:00
Baptiste Daroussin
3022fc034b First errata:
- Fix pkg rquery always printing index like lines [1]
- Fix pkg -vv suggestion so it print something actually usable [2]

Reported by:	gjb [1]
Reported by:	ohauer [2]
2013-11-26 17:39:40 +00:00
Baptiste Daroussin
579d16acec Welcome pkg 1.2 final
Changelog:
- Improved build system
- Allow to hook plugins, before closing the local db if it was opened in RW mode
- Allow ARCH to be printed by pkg info
- New pkg bootstrap subcommand that is the counter part of the pkg(7) bootstrap subcommand
- Use port specified in the SRV entries to connect to a given mirror
- Properly support srv priority/weigh when ordering mirrors
- Lots of spelling/grammar fixes
- Broken incremental pkg repo support was removed.
- ABI is now checked again using globs:
  * a 'noarch' package should just specify: ARCH: 'freebsd:*'
  * a package working on both i386 and amd64: ARCH: 'freebsd:9:x86:*'
- new pkg config subcommand to allow direct query of options
- options can now have a description
- pkg repo can now take new arguments:
  pkg repo [path] [rsa_key|'signing_command: <command>']
  This allow calling external command to perform the signing and
  pass the checksum to be signed in the command stdin.
- in case pkg info is querying a file or is a single direct match
  query then default on -f
- pkg info -q is now equivalent of pkg info -qa
- expat is now always bundled (for vuxml)
- vuxml is now the default source for pkg audit
- Accept empty/comment only configuration files
- Print a pkg name only once - even if multiple vulns were found - when using -q
  in pkg audit
- pkg info now default on glob matching
- Support for pkg+foo url scheme where foo can be (http, https, ftp).
- pkg add is now able to read the packages from a pipe or a non-regular
  file '-' is an alias for stdin, this also works from pipes, fifos,
  unix domain sockets etc.
- New 'fingerprint' kind of signature:
    if a repository is declared using the fingerprint type of
    signature, a fingerprint directory should also be provided.
    Inside that fingerprint directory should be 2 directories:
    trusted and revoked.  Those directories will contains files (in
    yaml/ucl format) containing the fingerprint of the trusted
    certificated and the revoked ones:

    --- begins --
    function: sha256
    fingerprint: an_hex_representation_of_the_fingerprint
    --- ends ---

    All unknown attribute will be silently ignored to allow extending
    in the future.

    It also support multiple signatures inside the catalog. the
    catalog should provide the signature in the following form:
    name.sig
    name.cert

- packagesite in pkg.conf is deprecated in favour using dedicated
  repository configuration files
- REPO_DIR is now a list instead of a simple string
- New git like aliases to allow creating custom commands
- Allow using '?' operator in pkg query expressions
- Fix ssh:// support
- New PKG_SSH_ARGS to allow passing custom arguments to ssh command
  used for the ssh:// protocol
- Do not generate catalogs in pkg 1.0 format anymore.
- YAML is replaced by UCL format:

  Both formats are really simular. pkg(8) will falls back on parsing YAML
  when the UCL parser fail. And will emit a warning to the
  user showing a syntax that is compatible with both YAML and UCL.
  More informations on UCL: https://github.com/vstakhov/libucl
- Dependencies on library is now automatic via pkg register and pkg
  create
- Auto upgrade of pkg(8) now restart the upgrade process automatically
- Lots of bug fixes discovered by Coverity Scan
- New debug level traces
- Bug fixes in zsh completion
- rquery can now take a -I argument to output index like lines (needed for
bsdconfig)
- Skip self upgrade with -F is passed
- Autodetect if libelf should be used bundled
- Lots of bug fixes

Thanks a lot to all people allowed this release to happen, may that be from providing
code, ideas, submitting bugs, documenting or just supporting.
2013-11-26 14:49:04 +00:00
Bryan Drewery
5f801cfb4a - Update to 1.1.4_10 ahead of 1.2 update with critical fixes
Changes:
 * When using SRV mirrors, order the mirrors by the advertised
   priority and weight. This should fix 'pkg update' using mirror
   A while 'pkg upgrade' and 'pkg fetch' end up using mirrors
   A, B and C, resulting in checksum errors due to not all mirrors
   being updated at the same time.
 * Add support for 'pkg+http://' URL scheme and deprecate
   'http://' when using SRV mirroring. This is only a cosmetic change
   that encourages users to not try loading the PACKAGESITE into
   a browser to view it.

Discussed with:	bapt
With hat:	portmgr
Obtained from:	upstream git
2013-11-19 17:30:14 +00:00
Bryan Drewery
982a938e19 - Force pkg to not use base libbsdyml, which was available in head|stable/10
for some months. libbsdyml is being removed for 10-R. The bundled libyaml
  will be used instead.

Discussed with:	bapt
With hat:	portmgr
2013-10-13 22:33:48 +00:00
Baptiste Daroussin
db16c975cd Fix pkg register -i (staged pass mode) not properly respecting @owner/@group
Reported by:	naddy
2013-10-05 17:52:42 +00:00
Bryan Drewery
0b87b36a60 - Fix spelling of "Upgrades" since it keeps being reported
With hat:	portmgr
2013-09-25 13:40:58 +00:00
Bryan Drewery
adcf207c9d - Fix staging of meta ports that have no files, such as
mail/squirrelmail-plugins

Discussed with:	bapt
With hat:	portmgr
2013-09-24 21:43:43 +00:00
Baptiste Daroussin
93fdaf74af Fix @exec/post-install script execution with pkg register -i [1]
Fix MTREE not properly being extracted with pkg register -i [2]

Reported by:	garga [1]
		bdrewery [2]
2013-09-24 12:26:43 +00:00
Baptiste Daroussin
b8cd572806 Fix build on mips
Fix analyzing elf when package/registering from a stage directory
2013-09-19 20:04:51 +00:00