Dozens of KDE apps are getting new releases from KDE’s release service. New
features, usability improvements, re-designs and bug fixes all contribute to
helping boost your productivity and making this new batch of applications more
efficient and pleasant to use.
Full announcement:
https://kde.org/announcements/releases/2020-08-apps-update/
July 04, 2020. KDE today announces the release of KDE Frameworks 5.72.0.
KDE Frameworks are over 70 addon libraries to Qt which provide a wide variety
of commonly needed functionality in mature, peer reviewed and well tested
libraries with friendly licensing terms. For an introduction see the KDE
Frameworks web page.
This release is part of a series of planned monthly releases making
improvements available to developers in a quick and predictable manner.
Changelog:
https://kde.org/announcements/kde-frameworks-5.72.0.php?site_locale=en
- net/kdav became a framework and was therefore moved to net/kf5-kdav.
- thanks to adridg@ for fixing the fallout
Exp-run by: antoine
PR: 247907
from adding lang/python, lang/python2, or lang/python3 as a dependency of
another port. "This is to prevent adding dependencies to meta ports that
are only there to improve the end user experience." - I build my own packages
via poudriere. I want to create my own meta-package which has such packages
as RUN_DEPENDS. It's been suggested that I patch my own copy of the tree.
This patch moves towards tools, not policy.
This patch allows me to set this variable in a poudriere make.conf file:
QA_ENV+= IGNORE_DEPENDS_BLACKLIST="YES"
Reviewed by: mat
Approved by: portmgr
Differential Revision: https://reviews.freebsd.org/D25450
patches even if one fail.
This helps when upgrading ports with a large number of patches, like
www/chromium where having to fix one patch, re-do the patching, fix the
fallout, 800 times, is really painful.
This fixes the first attempt at this which would make ports with
multiple patches patching one file somewhat explode.
This makes the process of make patch, fix fallout, make makepatch much
easier as only one iteration is required.
While there, refactor things around, and streamline messages passed
between functions.
PR: 244626
Reported by: cem
Bump the minimum required pkg version to a version that accepts
properly lua scripts
Lua script offers the advantages over shell scripts that they are
running in a capsicum sandbox and they are natively rootdir friendly
Reviewed by: portmgr (mat)
Differential Revision: https://reviews.freebsd.org/D21433
The generated pre-install scripts isn't pkg -r friendly for all
ports that have USERS/GROUPS with an homedir, fix that.
Reviewed by: bapt
Approved by: portmgr (bapt)
Differential Revision: https://reviews.freebsd.org/D24531
The glob in `find ./*` is handled by the shell and actually sorts the
files, so one needs to to ask find to sort the result, using `find -s`.
`find ./* -maxdepth 0` is not equivalent to `find . -maxdepth 0`, the
depth increases by one as `./x` is on level deeper than `.`.
Pointy hat: bdrewery
This attempts to provide a nicer error message for the subset of
users who build their own kernels without COMPAT_FREEBSD11 and then
attempt to build lang/rust. The Rust ecosystem currently uses
pre-ino64 syscalls, so building lang/rust without COMPAT_FREEBSD11
is not going to work.
The error message for this is non-obvious and there is a new bug
for this at least every 1-2 months. Hopefully this will improve
the situation a little.
Cargo and Gecko ports are similarly affected, so add the pre-build
check to them too.
Reviewed by: jbeich, mikael.urankar@gmail.com
Tested by: madpilot (negative case)
Approved by: gecko (jbeich)
Differential Revision: https://reviews.freebsd.org/D23100
The new format [1,2] dropped the [metadata] table. As a consequence
our cargo-crates.awk script no longer outputs CARGO_CRATES. We can
get the crate list from the various [[package]] tables instead.
This should work with the new as well as the old format.
[1] https://github.com/rust-lang/cargo/pull/7070
[2] https://github.com/rust-lang/cargo/pull/7579
PR: 242416
Reported by: jbeich
- makeplist/check-plist: Don't suggest or complain about @dir entries
for debug symbols added by this script. Same as is done for the
debug symbols themselves.
Sponsored by: DellEMC
overlays are a way to help users to integrate their own ports tree
with the official ports tree without having to maintain clone of the
official tree and remerge on regular basis.
The ports tree will lookup in the overlays (in the order the are listed in
OVERLAY variable) for the dependencies and the USES. It will use the first
found.
in order to use it the user have to declare his overlays that way in their
make.conf:
OVERLAYS= overlay1 overlay2 overlay3
Reviewed by: manu
Approved by: swills
Differential Revision: https://reviews.freebsd.org/D21468
This prevents an improbable MITM attack on dependencies where the target
is "fetch" and the port is built manuallt. (Which means a port depends
on a dependency being fetched, but not built or anything else.) In this
case, as the target is only "fetch", the distribution files of the
dependency are not checked against the dependency's distinfo file. One
could, in theory, impersonate the dependency's master site and provide a
malicious distribution file.
The ports that could in theory be affected are russian/gd, ukrainian/gd,
and ukrainian/webalizer. They are only affected when building manually,
as when building with poudriere, the *-depends target do not have
network access, and the build would fail if the distribution files are
not already present. (From the dependencies being built normally, where
checksum would have ran.)
The detail is described here:
https://www.reddit.com/r/BSD/comments/br62hm/freebsd_cryptographic_bypass_and_mitmbased/
Reported by: emaste (on IRC)
Reviewed by: swills emaste antoine
MFH: 2019Q3
Differential Revision: https://reviews.freebsd.org/D21230
For example, in audio/spotifyd some crates have their sources on
GitHub instead of crates.io and share the same repository and commit
in Cargo.lock like
[[package]]
name = "librespot"
source = "git+https://github.com/librespot-org/librespot.git#4e3576ba7c6146cf68e1953daeec929d619b26b1"
[[package]]
name = "librespot-audio"
source = "git+https://github.com/librespot-org/librespot.git#4e3576ba7c6146cf68e1953daeec929d619b26b1"
Based on this cargo-crates.awk would naively generate multiple
identical entries like
librespot-org:librespot:4e3576ba7c6146cf68e1953daeec929d619b26b1:librespot
librespot-org:librespot:4e3576ba7c6146cf68e1953daeec929d619b26b1:librespotaudio
This adds a lot of extra noise to the port and distinfo and is not
really needed for anything.
The fetch-list target is used to generate a shell script that will more
or less replicates what do-fetch does. It allows one to do most things
as a regular user, and generate that script to run, say, on another
machine, if the one where you build things does not have access to the
internet, or has much slower access.
It was failing when DISTDIR was not writable by the current user, and
the port had a distribution file with a path in it. (Not using
DIST_SUBDIR, something else, like lang/rust does.) It was failing
because it was trying to create that subdirectory unconditionally,
instead of only creating the subdirectory if actually had to. This also
fixes the bug that the generated script did not have the appropriate
mkdirs for those directories.
PR: 239293
Submitted by: tobik (earlier version)
Reported by: Ruslan Garipov
Differential Revision: https://reviews.freebsd.org/D21112
This file originated from Isilon's codebase. When I upstreamed it
originally I refactored it to a broken version. This is now the
working version.
Debug files are purposely moved to LOCALBASE/lib/debug regardless
of what PREFIX is.
Sponsored by: DellEMC
This uses the same pattern we have in qa.sh. Rather than using file(1),
which reads the whole file and does too much magic, use readelf(1) which
bails out if the file lacks the proper ELF headers.
(This file is not yet used by anything)
Sponsored by: DellEMC
Remain backward compatible but use ucl for the pkg-messages, which allows to:
- append messages one after the other
- only print message on delete, install, upgrade from a version to another
If pkg-message starts with a [ we consider it should be a valid ucl file
The format is the following:
[
{ message: "Always print" },
{ message: "package being removed", type: remove },
{ message: "package being installed", type: install },
{ message: "package is being upgraded", type: upgrade },
{ message: "Upgrading from lower than 1.0", maximum_version: "1.0", type: upgrade },
{ message: "Upgrading from higher than 1.0", minimum_version: "1.0", type: upgrade },
{ message: "Upgrading from >1.0 < 3.0", maximum_version: "3.0", minimum_version: "1.0",
]
Because it is ucl one can use some sugar like:
[
{ message = <<EOD
formatted
message 'with fancy things'
EOD
},
}
Submitted by: bapt
Reviewed by: bapt, mat
Differential Revision: https://reviews.freebsd.org/D19310
Use the return value of the pkg audit command instead of parsing its output
The output will change in the next version of pkg
Approved by: mat (portmgr)
Reviewed by: mat (portmgr)
Differential Revision: https://reviews.freebsd.org/D20376
- synchronize the list of components
- update the comment on how to generate the components for the now kde- prefixed names
- remove the now unnecessary part about Qt4
Reviewed by: yuri
Approved by: portmgr (rene)
Differential Revision: https://reviews.freebsd.org/D19894
Those ports are meta ports, and are only there to improve the user's
experience, in which, if they want, say, python or gcc, they do not have
to figure out what version they should be installing, they simply
install python or gcc.
Reviewed by: antoine
Approved by: adamw
Differential Revision: https://reviews.freebsd.org/D19562