Tuesday, 9 November 2021. Today KDE releases a bugfix update to KDE
Plasma 5, versioned 5.23.3.
Plasma 5.23 was released in October 2021 with many feature refinements
and new modules to complete the desktop experience.
This release adds two weeks' worth of new translations and fixes from
KDE's contributors. The bugfixes are typically small but important and
include:
* Keyboardlayout: Fix missing Esperanto flag icon in the menu.
* Plasma Networkmanager: OpenVPN: fix logic in auth dialog.
* On FreeBSD do not try to execute powerdevil.backlighthelper.syspath action.
Changelog:
https://kde.org/announcements/changelogs/plasma/5/5.23.2-5.23.3/
Instead of hardcoding the 10s delay for the conflicts warning, add
a new variable CONFLICT_WARNING_WAIT the same way we have WARNING_WAIT
and DEV_WARNING_WAIT
PR: 248548
make distclean target will break when lang/go is not installed. This
provides an informational feedback and skips the gomod-clean target if
go executable is not available.
PR: 258359
MFH: 2021Q4
Submitted by: Rin Morningstar <ports.maintainer@evilphi.com>
Reviewed by: dmgk
Differential Revision: https://reviews.freebsd.org/D32054
Some KDE Gear applications set a different version for the
shared library than the rest of them. Those ports manually
overwrote the variable used in the plist sub.
Make them use a kde.mk defined value, so that only one place
needs to be changed on updates.
Thursday, 4 November 2021
Over 120 individual programs plus dozens of programmer libraries and
feature plugins are released simultaneously as part of KDE Gear.
Changelog:
https://kde.org/announcements/changelogs/gear/21.08.3/
fba040e62b broke makesum for ports
that conditionally override MASTER_SITES in a make(makesum)
block to simplify maintenance like lang/python-doc-html or
devel/freebsd-sysroot where it is impractical to just statically
list all possible MASTER_SITES. It also broke USES=linux ports
that do the same for DISTFILES.
The breakage with DISTFILES was fixed in
50d2c82e01 by explicitly passing
it to the sub-make fetch. Do the same with MASTER_SITES and
PATCH_SITES so we do not have to workaround this with .MAKEFLAGS
or .export.
PR: 249537
Approved by: portmgr (implicit)
Tuesday, 26 October 2021. Today KDE releases a bugfix update to KDE
Plasma 5, versioned 5.23.2.
Plasma 5.23 was released in October 2021 with many feature refinements
and new modules to complete the desktop experience.
This release adds a week's worth of new translations and fixes from
KDE's contributors. The bugfixes are typically small but important and
include:
Plasma Browser Integration: [History Runner] Skip blob URLs.
[Folder View] Fix executing file without prompting. Fixes bug #435560
Desktop as folder: restore functionality of the “delete” action. Fixes bug #442765
View full changelog:
https://kde.org/announcements/changelogs/plasma/5/5.23.1-5.23.2
Git sources from `Cargo.lock` are added to `CARGO_CRATES` through
the normal mechanism of `make cargo-crates` by the porter. They
are used to populate `MASTER_SITES`, `DISTFILES` with static
git-archive(1) tarballs a la `USE_GITHUB`, `USE_GITLAB`. In the
configure phase we generate `[patch]` sections in the config file
which will cause `cargo update` to auto-update `Cargo.lock` to point
to the appropriate extraction directories.
Normally `cargo update` would connect to the network to update all
Git sources but since rust-1.55.0 our cargo has been patched to
skip this when `CARGO_FREEBSD_PORTS_SKIP_GIT_UPDATE` is set in the
environment.
This replaces the old `CARGO_USE_GITHUB`, `CARGO_USE_GITLAB` hacks
where this was done by editing all `Cargo.toml` with sed(1) calls.
Additionally, we try to automatically infer the individiual crate
sub-directories inside the Git sources based on `package.name` in
`Cargo.toml` to remove the need for `CARGO_GIT_SUBDIR`.
USES=cargo also now sets `WRKSRC_crate_$name` for each crate to
point to the crate extraction directories.
PR: 256581
Reviewed by: jbeich
the rebuild of the database is now handled by a trigger and happen only
once at the end of the transaction instead of after each package
installation.
While make shared-mime-info a runtime only dependency
Reviewed by: manu, mat
Differential Revision: https://reviews.freebsd.org/D32452
Plasma 5.23 was released in October 2021 with many feature refinements
and new modules to complete the desktop experience.
This release adds a week's worth of new translations and fixes from
KDE's contributors. The bugfixes are typically small but important and
include:
* Discover: Flatpak, do not crash when a source is disabled.
* KScreenLocker: Fix sleep and hibernate actions.
* Plasma Desktop: Fix “clear emoji history” action.
View full changelog:
https://kde.org/announcements/changelogs/plasma/5/5.23.0-5.23.1
If defined, for each flavors it will create for the non active one:
PLIST_SUB= FLAVORNAME="@comment " NO_FLAVOUNAME=""
and for the active one:
PLIST_SUB= FLAVORNAME="" NO_FLAVOUNAME="@comment "
Same for SUB_LIST
Reviewed by: manu, bdrewery, mat
Differential Revision: https://reviews.freebsd.org/D32495
Saturday, 09 Ocotber 2021
KDE today announces the release of KDE Frameworks 5.87.0.
KDE Frameworks are 83 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 release announcement.
This release is part of a series of planned monthly releases making
improvements available to developers in a quick and predictable manner.
Full announcement:
https://kde.org/announcements/frameworks/5/5.87.0/
Exp-run by: antoine
PR: 259032
We have recommended against USE_GCC=any for a while, and as of more
recently it was completely equivalent to USE_GCC=yes.
With (ancient versions of) GCC hardly available in the base system
of FreeBSD systems at this point, there's unlikely to be a use case
to reintroduce it, so remove the few remaining traces.
PR: 258015
Thursday, 14 October 2021
25 years ago today, Matthias Ettrich sent an email to the
de.comp.os.linux.misc newsgroup explaining a project he was working
on. The latest and direct result of that email (plus a quarter of a
century of relentless experimentation, development and innovation)
has just landed in KDE’s repositories.
This time around, Plasma renews its looks and, not only do you get a
new wallpaper, but also a gust of fresh air from an updated theme:
Breeze - Blue Ocean. The new Breeze theme makes KDE apps and tools
not only more attractive, but also easier to use both on the desktop
and your phone and tablet.
Of course, looks are not the only you can expect from Plasma 25AE:
extra speed, increased reliability and new features have also found
their way into the app launcher, the software manager, the Wayland
implementation, and most other Plasma tools and utilities.
Read on to find out all the details that make the new Plasma 25AE so
deserving of a celebration [1]
Full announcement:
[1] https://kde.org/announcements/plasma/5/5.23.0/
While here, make sure gtk-update-icon-cache is only on run dependency
where added as a dependency
Enforce gtk3 to depend on gtk-update-icon-cache (previously it was
inheriting the dependency)
Triggers are a new feature from pkg 1.17 (stable in 1.17.2)
they are script that are executed at the end of a transaction if
anything triggered them.
To trigger them a files should have been installed in a location which
matches predefined pattern (glob, regexp, or exact matching)
When a package is installed in a cross root installation for example:
pkg -r XXX install something
and if it triggers a trigger, then the execution will be deferred.
The pkg trigger command will execute the deferred triggers
Reviewed by: tcberner
Differential Revision: https://reviews.freebsd.org/D31960
Thursday, 7 October 2021
Over 120 individual programs plus dozens of programmer libraries and
feature plugins are released simultaneously as part of KDE Gear.
Today they all get new bugfix source releases with updated translations,
including:
* kmail: Fix an infinite SSL error dialog loop
* konqueror: Make it compatible with KIO 5.86.0 and don’t open every
URL in a new window
* libksane: Fix multi page detection with certain scanners
Full announcement:
https://kde.org/announcements/gear/21.08.2/
This adds XDG_CACHE_HOME to the set of XDG_* variables exported in
CONFIGURE_ENV and MAKE_ENV.
Without XDG_CACHE_HOME in the environment some software (for ex.
https://github.com/coursier/coursier) falls back to using
/home/{user}/.cache during the build and writes outside the working
directory.
XDG_CACHE_HOME is described in the XDG Base Directory Specification:
https://specifications.freedesktop.org/basedir-spec/basedir-spec-latest.html
PR: 255600
Exp-run by: antoine
The option implied a dependency on gcc but clang got openmp support long ago.
Remove compiler:openmp from Mk/Uses/compiler.mk
For ports using USE=compiler:openmp, just remove it and make them build with
clang.
Fix conditionals when necessary
Bump PORTREVISION where appropriate
If problem arises, they can be addressed by using USE_GCC=yes
An update to the Porter's Handbook will follow.
Approved by: portmgr (bapt)
Differential Revision: https://reviews.freebsd.org/D31971
* The major version was bumped from 28 to 29 since the last update.
Approved by: portmgr (implicit)
Differential Revision: https://reviews.freebsd.org/D32258
It's well known that LTO provides both performance and size benefits for
binaries.
Add preliminary, opt-in support for global LTO enforcement to ports. Ports that
provide LTO option on their own and the ones that don't work with LTO will need
to set LTO_UNSAFE in the future.
PR: 258536
kde@ has been focused recently on reducing the load of "unnecessary"
runtime dependencies, to allow third party distributions to have a
leaner installation.
One part of this effort was to make qt5-testlib a "build only"
dependency.
Unfortunately, parts of qt5-declarative link against testlib (to provide
test functionality for declarative parts).
This lead to an unfortunate loop of pkg-autoremove removing testlib, and
then pkg-update adding it again (as it was an improperly registered
dependency).
This change splits out the "test"-parts into its own port. Thereby
making testlib not even a required build-time dependency for
x11-toolkits/qt5-delcarative.
Reported by: jrm
Differential Revision: https://reviews.freebsd.org/D32097
ncurses from ports and futur ncurses in base differs from current
ncurses in base by the fact it is not providing a giant libncurses.so
but 2 libraries: libtinfo and libncurses, those information often needs
to be reported to the consumer port.
while here remove a now useless test for support of widechar ncurses in
base, all supported version of freebsd have it now.
Since we switched to pkg, NO_PKG_REGISTER was not working anymore.
Since pkg 1.17.2 the pkg register command do support -N option which
allows to bring back NO_PKG_REGISTER.
PR: 191461
devel/cargo-c always passes --target when building consumers.
Some other USES=cargo consumers may also pass --target.
Differential Revision: https://reviews.freebsd.org/D31568
Saturday, 11 September 2021
KDE today announces the release of KDE Frameworks 5.86.0.
KDE Frameworks are 83 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 release announcement.
This release is part of a series of planned monthly releases making
improvements available to developers in a quick and predictable manner.
Full announcement:
https://kde.org/announcements/frameworks/5/5.86.0/
PR: 258426
Exp-run by: antoine
Plasma Systemstats is a successor to (lib)KSysGuard in the way
that Plasma System Monitor is a successor to KSysGuard. The
background idea is that system statistics collection (resource
usage) should be low-overhead and pluggable and the UI in the
application flexible. KSysGuard achieved that with 2010-era
technologies, but time and technology moves on.
Note, though, that the backend -- the actual system-statistics-
collection -- on FreeBSD is missing collection of network
activity (entirely) and memory use (is wrong). System monitor
is **not yet** a replacement for KSysGuard on FreeBSD, but the
CPU monitoring -- which might be the most important and graphically
appealing bit on a desktop machine -- is much improved.
This commit introduces the new port, adds it to USE_KDE,
and makes it a dependency of system-monitor, to ease the
eventual replacement (once the issues mentioned above are
cleared up) of old by new.
Also reset state on function entry otherwise split_url() cannot
really be called multiple times since there would be garbage values
in the url array from previous calls.
rustc stashes intermediary files in TMPDIR (default /tmp) which
might cause issues for users that for some reason space limit their
/tmp. WRKDIR should have plenty of space.
Other ports that use rustc might be affected too, but set it only
in USES=cargo and lang/rust* ports for now.
PR: 258126
With hat: rust
Thursday, 2 September 2021
Over 120 individual programs plus dozens of programmer libraries and
feature plugins are released simultaneously as part of KDE Gear.
Today they all get new bugfix source releases with updated translations,
including:
* konsole: Fix KXmlGUI toolbars and Konsole MainWindow size.
* elisa: Fix the “Files” view.
* skanlite: Fix image saving when preview is not shown.
Full announcement:
https://kde.org/announcements/gear/21.08.1/
Full Changelog:
https://kde.org/announcements/changelogs/gear/21.08.1/
Tuesday, 31 August 2021. Today KDE releases a bugfix update to KDE
Plasma 5, versioned 5.22.5.
Plasma 5.22 was released in June 2021 with many feature refinements and
new modules to complete the desktop experience.
This release adds a month's worth of new translations and fixes from
KDE's contributors. The bugfixes are typically small but important and
include:
* KDE GTK Config: Make sure to actually commit GSettings changes.
* KSystemStats: Fix handling of IPV6 addresses. Fixes bug #436296
* [applets/digitalclock] Let long timezones list scroll.
Fixes bug #439147
Full changelog:
https://kde.org/announcements/changelogs/plasma/5/5.22.4-5.22.5/
- while here: reformat & sort the USES/USE_FOO lines consistently
- Add WANT_LAZARUS_DEVEL option if you want built apps using lazarus trunk
version from ports. This variable can be added to /etc/make.conf. Otherwise,
stable version of lazarus will be used.
- WANT_LAZARUS_DEVEL will use editors/lazarus-devel or editors/lazarus-qt5-devel
ports instead of editors/lazarus or lazarus-qt5 ones
it allows users to set their desired compression level when packaging
in make.conf
PR: 257427
Suggested by: Trond Endrestol <Trond.Endrestol@ximalas.info>
Friday, 13 August 2021
KDE today announces the release of KDE Frameworks 5.85.0.
KDE Frameworks are 83 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 release announcement.
This release is part of a series of planned monthly releases making
improvements available to developers in a quick and predictable manner.
Full announcement and changelog:
https://kde.org/announcements/frameworks/5/5.85.0/
PR: 257837
Exp-run by: antoine
Binutils is not present anymore on elfv2 systems.
Fixes build of audio/invada-studio-plugins-lv2:
/usr/local/bin/ld: unrecognized option '-B/usr/local/bin'
/usr/local/bin/ld: use the --help option for usage information
libxul.so clearly links against libepoll-shim, and we have reports
of firefox failing to start without libepoll-shim. this also affects
mail/thunderbird (once we land it), so fix the problem in bsd.gecko.mk.
First reports are against firefox 90, set the version cutoff
accordingly.
PR: 257490
Reported by: Maxim Filimonov
Keep the new flag though.
This error can occur in some other cases such as building on a
mismatched host kernel+userland. Some further study is needed
and it may be possible to automatically set UNAME_r.
An example of this happening is with recent Poudriere changes:
- Poudriere <= 3.3 used to set UNAME_r in /etc/login.conf's environment
during *jail creation*.
- Poudriere >= 3.4 only sets it in the environment during *jail
runtime*.
Creating a jail with Poudriere 3.4 and then using Poudriere 3.3 on it
would fail to have UNAME_r properly set. It would read OSVERSION from
/usr/include/sys/param.h to find the installed files release. The ports
framework, and builds, need `uname` to be correct for the *jail/chroot*
and not be of the running kernel.
Add a footshoot enabler while here which should not be used for any
reason as it can create packages targetting the release of the running
kernel rather than the chroot/jail's expected version.
Thursday, 12 August 2021
KDE Gear 21.08 improves KDE apps across the board, bringing you quick
and responsive utilities, creativity programs with powerful features,
and secure tools for all your work and play needs.
If this is your first time with KDE software, discover a whole new world
of free and secure programs, packed with incredible possibilities. If
you are already a KDE regular, check out all the fresh innovations we
have added to your favorite apps.
Either way, go forth and try new things!
Full announcement:
https://kde.org/announcements/gear/21.08.0/
Saturday, 10 July 2021
KDE today announces the release of KDE Frameworks 5.84.0.
KDE Frameworks are 83 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 release announcement.
This release is part of a series of planned monthly releases making
improvements available to developers in a quick and predictable manner.
Announcement:
https://kde.org/announcements/frameworks/5/5.84.0/
Exp-run by: antoine
PR: 257100
- To make it possible to easily import mlt-7 move the current port to
a versioned directory.
- Add Mk/Uses/mlt.mk to make it easily possible to depend on a given mlt
version:
USES=mlt:6
will get you a dependency on multimedia/mlt6, while
USES=mlt:7
will get you a dependency on the soon to be added multimedia/mlt7
- Switch the port to use cmake as a build system
- While here, provide some more options to make it possible to have
a leaner package if required
- Bump consumers after rename of the dependency
Plasma 5.22 was released in June 2021 with many feature refinements and
new modules to complete the desktop experience.
This release adds three weeks' worth of new translations and fixes from
KDE's contributors. The bugfixes are typically small but important and
include:
* Discover: Address the keyboard shortcut tooltip.
* Sort Unsplash POTD image categories alphabetically.
* Info Center: Unbreak about CPU value when solid is missing a
product string.
[1] https://kde.org/announcements/plasma/5/5.22.4/
- Improve the text (fix typos) in another .warning message
- And an extra newline after "backward compatibility for users"
.if/.endif block for better readability, kill EOL whitespace
- Replace UTF-8 non-breaking space (C2 A0) with normal ASCII one
TL;DR: new uniq package file extension: '.pkg'
Full changelog for pkg:
- add a new "snap" prefix, to deal with pkg base snapshots
- pkg repo now accepts packages with different compression formats
- pkg now have a single extension: ".pkg" and a backward compatible
symlink is created when the package is created to help transitioning
- Default compression level for zstd is now set to 19
- the default compression level is now a configuration option
- plenty of portability fixes
- fix plenty of typos
- expose the name of the package to lua and shell scripts
- plist:
remove internal support for @*exec (this is now in the ports tree)
remove support for @ignore
remove support for @dirrm/@dirrmtry
remove support for @pkgdep
remove stub support for @stopdaemon
remove stub support for @display
remove stub support for @mtree
remove stub support for @conflict
- VUXML: fetch .xz compressed version of the file by default
- triggers are deferred to later command (firstboot is planned) if run
with pkg -r
- pkg triggers commands has been added and can execute the deferred
triggers for example at firstboot
Changes in the framework:
- Add a backward compatibility layer, so people are not forced to move
to pkg 1.17 yet (new quarter we will enforce the switch for triggers
anyway, but it gives time to people to switch)
- Introduce a new PKG_COMPRESSION_FORMAT for users to specify the
compression format they are willing to use when creating packages:
txz, tar, tgz, tbz, tzst are the valid ones (note that tzst is only
usable on FreeBSD 13 and 14)
- Add a backward compatibility for people who specified the compression
format already via PKG_SUFX and issue a warning to tell them about the
deprecation of PKG_SUFX
in next version of pkg, we now use a uniq extension: '.pkg' whatever the
compression is, the problem is some bootstrap pkg(7) does not handle
that yet, notably on freebsd 11.4 and 12.2.
We already have a compatibility layer by creating a symlink on the old
extension, which works but the signature itself will not exist with the
old extension. Add a workaround in the ports tree to symlink the new
signature to the old expected signature.
Given at the moment we are doing that things are not yet signed by
default we do create a dead symlink, but at the moment the repo are
published the right signature will be there.
glvnd is becoming increasingly required by mesa and various FreeBSD
Ports implementation decisions. Remove the tuple to avoid unexpected
and unsupported combinations.
Reviewed by: x11 (manu, zeising)
Differential Revision: https://reviews.freebsd.org/D30930
Poudriere's CCACHE_STATIC_PREFIX feature (not Mk/) avoids installing
ccache for each port using the native jail ABI and instead copies in a
host static binary. It uses NO_CCACHE_DEPEND to avoid installing
ccache. For example, this is used for ccache-memcached where the
dependency chain would make using ccache unfeasible.
Poudriere sets CCACHE_WRAPPER_PATH, rather than the new CCACHE_PKG_PREFIX.
Because CCACHE_BIN is now computed from CCACHE_PKG_PREFIX rather than
CCACHE_WRAPPER_PATH, CCACHE_BIN was incorrect. Now compute
CCACHE_PKG_PREFIX from CCACHE_WRAPPER_PATH if it is set, otherwise
fallback to using LOCALBASE and computing CCACHE_BIN and
CCACHE_WRAPPER_PATH from there.
PR 257151
Fixes: 6b641f4eb4 ("Mk: Document and simply user-modifiable ...")
This uses the same patches that GCC platforms use. It will allow to selectively switch to GCC for some ports that don't build with Clang, eg. because of missing OpenMP support.
Over 120 individual programs plus dozens of programmer libraries and
feature plugins are released simultaneously as part of KDE Gear.
Today they all get new bugfix source releases.
Full changelog:
https://kde.org/announcements/changelogs/gear/21.04.3/
Saturday, 12 June 2021
KDE today announces the release of KDE Frameworks 5.83.0.
KDE Frameworks are 83 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 release announcement.
This release is part of a series of planned monthly releases making
improvements available to developers in a quick and predictable manner.
Full announcement:
https://kde.org/announcements/frameworks/5/5.83.0/
PR: 256665
Exp-run by: antoine
Tuesday, 6 July 2021. Today KDE releases a bugfix update to KDE Plasma
5, versioned 5.22.3.
Plasma 5.22 was released in June 2021 with many feature refinements and
new modules to complete the desktop experience.
This release adds two weeks' worth of new translations and fixes from
KDE's contributors. The bugfixes are typically small but important and
include:
* Dr Konqi: Repair query construction.
* Plasma Disks: Don’t notify on instabilities.
* [Task Manager] Load album art background asynchronously.
Full Changelog:
https://kde.org/announcements/changelogs/plasma/5/5.22.2-5.22.3/
QtChooser allows you to select your version of Qt among those installed.
However, this tool is no longer supported upstream and will not be
available for Qt6.
By default, our Qt installations are done in
${LOCALBASE}/lib/qt${QT_VERSION} as recommended.
We have added symbolic linking for the main binaries to
${LOCALBASE}/bin with the suffix -qt5.
There have been multiple bug reports where people get compiler
errors with regards to -Xclang -fno-color-diagnostics. This is
caused by partial upgrades and outdated meson packages. For a
better UX, change BUILD_DEPENDS to require a package version that
fixes it.
Fixes: ff2796d5bc
Tuesday, 22 June 2021.
Today KDE releases a bugfix update to KDE Plasma 5, versioned 5.22.2.
Plasma 5.22 was released in June 2021 with many feature refinements and
new modules to complete the desktop experience.
This release adds a week's worth of new translations and fixes from
KDE's contributors. The bugfixes are typically small but important and
include:
* Discover: Flatpak: properly notify about updates.
* [Task Manager] Show window title in tooltip when player title is different
* KWin: Wayland: Implement activities window rule.
View full changelog:
https://kde.org/announcements/changelogs/plasma/5/5.22.1-5.22.2
Now that GCC 11.1 has been released and lang/gcc11 is in place,
explicitly list version 11 as an option for GCC_DEFAULT.
Technically USE_GCC=11 was already working, using lang/gcc11-devel,
alas intentionally undocumented (and definitely unsupported).
Add an explicit note that versions of GCC not listed here are not
supposed to be used. [1]
Suggested by: mandree [1]
The QtPositioning module contains classes to determine a position by
using a variety of possible sources, including satellite, or wifi, or
a text file, and so on. That information can then be used to, for
example, determine a position on a map. In addition satellite
information can be retrieved and area based monitoring can be performed.
https://www.riverbankcomputing.com/static/Docs/PyQt5/api/qtpositioning/qtpositioning-module.html
Reviewed by: lbartoletti, #portmgr!
Approved by: lbartoletti (kde@)
Differential Revision: https://reviews.freebsd.org/D30829
Now that GCC 11.1 has been released and lang/gcc11 is in place,
have USE_GCC=11 use that instead of lang/gcc11-devel.
In addition add support for USE_GCC=12 which uses lang/gcc12-devel
(still in early development, not recommended for production use).
Tuesday, 15 June 2021. Today KDE releases a bugfix update to KDE Plasma
5, versioned 5.22.1.
Plasma 5.22 was released in June 2021 with many feature refinements and
new modules to complete the desktop experience.
This release adds a week's worth of new translations and fixes from
KDE's contributors. The bugfixes are typically small but important and
include:
* KWin: Platforms/drm: support NVidia as secondary GPU with CPU copy.
* Weather applet: Point bbcukmet to new location API.
* Wallpapers: Add milky way.
View full changelog at
https://kde.org/announcements/changelogs/plasma/5/5.22.0-5.22.1
Plasma 5.22 is here, and it is more reliable and stable than ever. By
cleaning up and refactoring code in the background, the Plasma desktop
gives you greater responsiveness and performance, helping you become
even more productive without hiccups or surprises. Enjoy a smoother
experience with KDE’s Plasma 5.22 desktop.
Plasma 5.22 has become more pleasurable to use through improvements to
the design and greater smoothness and consistency in transparencies,
blurs, icons, and animations. Moving things to accessible locations,
offering hints and visual cues, and creating new settings allows you to
customize your work environment to make it fit perfectly to your needs.
Following the true KDE spirit, the push for a more stable and attractive
desktop does not mean you have to renounce control over how you want it
to look or behave. Plasma 5.22, as always, packs all the flexibility and
tools for customization you have come to expect and love, and some more
to boot.
Meanwhile, the push to move Plasma in its entirety to Wayland (the
display protocol of the future) continues in full swing. So much so that
popular distros are starting to ship Plasma with Wayland by default. By
using Wayland behind the scenes, Plasma is able to include features and
bug fixes not possible to implement on X11, offering you a better
experience and more stability.
Full announcement and changelog:
https://kde.org/announcements/plasma/5/5.22.0/
Thursday, 10 June 2021
Over 120 individual programs plus dozens of programmer libraries and
feature plugins are released simultaneously as part of KDE Gear.
The full changelog can be found here:
https://kde.org/announcements/changelogs/gear/21.04.2/
ECHO is builtin variable and is cleared when make(1) is invoked
in silent mode, i.e. as ``make -s'', thus making statements that
use it do nothing. Depending on the context, replace it with
either ${ECHO_CMD} or ${ECHO_MSG} (in one case), as appropriate.
PR: 256185
Submitted by: Franco Fichtner
Previously, for ports with GCONF_SCHEMAS, `gnome-post-gconf-schemas'
target would add a @postunexec rule which was invoked *after* those
files would be removed upon deinstallation, resulting in errors:
I/O warning : failed to load external entity ".../$some.schemas"
Failed to open `.../$some.schemas': No such file or directory
Change it to @preunexec so that `gconftool-2 --makefile-unistall-rule'
command would get called while those files still exist.
PR: 210969
Timeout from: gnome (~5 years)
Hackage now returns a JSON array with all revisions, so sed/grep trickery
is not working anymore. Use Python to parse the reply and extract revision
number.
- Copy devel/py-setuptools to devel/py-setuptools44 (for Python 2.7 support)
- Update devel/py-setuptool to 57.0.0 (adding support for Python 3.10)
- Update Mk/Uses/python.mk to chose between py-setuptools and
py-setuptools44 based on Python version
This allows us to have latest setuptools and working Python 3.10
without breaking packages requiring Python 2 support for remaining
reports that require it.
Exp-run showed 3 ports failing to build with latest setuptools and
they were fixed.
PR: 256173
Exp-run by: antoine
Reviewed by: koobs (python)
Approved by: koobs (python)
Differential_Revision: https://reviews.freebsd.org/D30473
This mainly synchronize the subgroups GH_TAGNAME_${_group}_* variables
with their default GH_TAGNAME_* equivalent.
In order to try and avoid this in the future, add a couple of comments
where those two sets of variables are defined.
PR: 256314
Reported by: yuri
The classic way to handle flavors is to set:
FLAVORS= foo bar
FLAVOR?= ${FLAVORS:[0]}
And in that case, FLAVOR is only set if the variable is not defined. If
you pass an empty flavor using `FLAVOR=` then it remains empty after
that line. It can leads to some ports with complicated logic to assume
the wrong flavor is set.
PR: 256301
Reported by: avg
Differential Revision: https://reviews.freebsd.org/D30579
While no port will ever have an @ in their path name, it might be
possible that PORTSDIR has an @ somewhere in its path.
PR: 256301
Differential Revision: https://reviews.freebsd.org/D30579
On Intel Skylake this enables WebRender for Xorg and Wayland (wlroots).
Xwayland isn't qualified yet but Firefox can be tricked by unsetting
WAYLAND_DISPLAY or simply switching to native via MOZ_ENABLE_WAYLAND.
PR: 255344
Reported by: Evgeniy Khramtsov (via gecko@ list)
USE_GCC=any was introduced to leverage the old version of GCC 4.2
installed as /usr/bin/gcc on some systems. That has increasingly
not been present any longer (not on i386 and amd64 since 12.x and
optionally 11.x, not even on the ppcdevref system according to
linimon@) and hardly anyone actually has been testing ports in
this scenario.
So, finally stop using /usr/bin/gcc (and /usr/bin/gc++ and
/usr/bin/gcpp) even if present.
This makes USE_GCC=any just another way of spelling USE_GCC=yes
before we finally de-orbit it.
Discussed with: mat, linimon, pkubaj
This enables to fetch and checksum on a host without src, for example, a
distfile mirroring service.
Reviewed by: rene
Differential Revision: https://reviews.freebsd.org/D30345
This brings python framework in consistense with handbook recommendations
to prefer DISTVERSION and simplifies adding prerelease versions of
python
PR: 255013
Differential Revision: https://reviews.freebsd.org/D29418
Exp-run by: antoine
Approved by: wen@, no objection from python@ or portmgr@
Release notes: https://www.postgresql.org/docs/devel/release-14.html
Also reintroduce parallel builds. Some components, namely plperl,
plpython, pltcl and contrib, fail to build properly when using parallel
builds. Something with static linking using `ar` that fails.
MAKE_JOBS_UNSAFE is set for these ports.
- Introduce CABAL_PROJECT variable to simplify handling project files in ports.
- Put dependencies into ${WRKSRC}/_cabal_deps subdir to make WRKSRC look
clean after `extract` stage.
- Perform cabal.project trickery on post-patch stage to allow users to fiddle
with the original one before creation.
- Document some code.
sysutils/ansible does not provide the Ansible program directly. It is
provided by its dependencies (sysutils/py-ansible-core at the moment).
Fix the ANSIBLE_RUN_DEPENDS so that it looks for the ansible package
instead of the Ansible binary.
The purpose of this new USES file is to provide a central place for
setting Ansible paths for modules and plugins. Perhaps in the future we
will extend to reduce boilerplate code in existing Ansible-related
ports.
PR: 255920
Reported by: lcook
Reviewed by: madpilot
Differential Revision: https://reviews.freebsd.org/D30312
Currently no supported FreeBSD version has libreadline.so in base.
Then if 'USES=readline' is used devel/readline is always added to
dependency whether or not 'port' argument is specified. So remove
unnecessary 'port' argument now.
PR: 248459
Exp-run by: antoine
May 13, 2021. Over 120 individual programs plus dozens of programmer
libraries and feature plugins are released simultaneously as part of KDE
Gear
Today they all get new bugfix source releases.
Changelogs:
https://kde.org/announcements/changelogs/releases/21.04.1/
Split CARGO_CRATES into (index, crate, name, version) 4-tuples and
use them to construct MASTER_SITES and DISTFILES. We can also match
crate name and versions more directly below.
As a bonus this is slightly faster and will flag a malformed
CARGO_CRATES earlier with a "wrong number of words" error.
Runtime of the following command was noticeably faster
$ <rust-ports /usr/bin/time xe -F make -C {} -V DISTFILES -V MASTER_SITES >/dev/null
Before: 56.99 real 50.05 user 6.44 sys
Now: 38.89 real 31.63 user 6.86 sys
PR: 255608
Exp-run by: antoine
Saturday, 8 May 2021
KDE today announces the release of KDE Frameworks 5.82.0.
KDE Frameworks are 83 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 release announcement.
This release is part of a series of planned monthly releases making
improvements available to developers in a quick and predictable manner.
Full announcement and changelog:
https://kde.org/announcements/frameworks/5/5.82.0/
PR: 255711
Exp-run by: antoine
This will be done before the loading of the actual USES, it allows one
to keep using the USES from the ports tree, and still provide additional
features in the overlay
When USE_GITLAB was changed to follow upstream GitLab's change
in the way tag-tarballs were delivered, a hack was added to
KDE_INVENT because **that** GitLab installation lagged behind
(by one minor revision, Ithink). Now KDE's installation has
been upgraded, it had the same tag-tarball layout as other
GitLabs and the hack is no longer needed.
The ports that use KDE_INVENT have their distinfo updated,
but the ports themselves do not change so I'm not bumping
PORTREVISION; it's the same git checkout, just with different
icing on top.
While it is planned to switch the compression format to zstandard in a
near futur it requires first pkg 1.17 to settle, don't change yet head
compression format.
Tuesday, 4 May 2021. Today KDE releases a bugfix update to KDE Plasma 5, versioned 5.21.5.
Plasma 5.21 was released in February 2021 with many feature refinements
and new modules to complete the desktop experience.
This release adds a month's worth of new translations and fixes from
KDE's contributors. The bugfixes are typically small but important and
include:
Fix crash when stopping PipeWire streaming.
Fix crash on drag-and-drop over panel.
Lockscreen: also activate lock screen windows.
Platforms/drm: Fix crash in EglGbmBackend::presentOnOutput().
Full announcement:
https://kde.org/announcements/plasma/5/5.21.5/
Cross-language LTO in www/firefox requires devel/llvm* and bundled
LLVM in lang/rust to be of the same major version. Adjust the comment
to delay future bumps but until LTO is enabled desync can still happen.
PR: 255359
Suggested by: dim
When setting WITH_DEBUG, separate debuginfo was **not** created,
although the plists for most Qt5 ports list separate debuginfo.
Take a suggestion from rakuco@ and run with it. I rebuilt all the
ports with USES=qmake and none had issues with separate debuginfo.
No general PORTREVISION bump because the packages in most cases
do not change with default options, and WITH_DEBUG would have
failed to package anyway.
PR: 240494
Reported by: jbeich
The kde-kwayland-protocols variable refers to the wrong port name
(or the port is named wrongly and the variable is right -- but
this is the smaller change)
The `cabal-extract` is an auxiliary target that is intended to be run
interactively by the port developer. It populates Cabal cache and then tries
to fetch the main distribution file from Hackage package database. However,
some packages reside on GitHub and other hostings, in which case this target
fails. This commit modifies the target in such way that it does the usual
`make extract`, but preserves the Cabal cache.
Differential Revision: https://reviews.freebsd.org/D30014
Crates should have the file extension .crate not .tar.gz. Cargo
saves them with that extension and it is also what their original
name was according to file(1):
$ file rust/crates/*
rust/crates/better-panic-0.2.0.tar.gz:gzip compressed data, was "better-panic-0.2.0.crate"
rust/crates/binary-space-partition-0.1.2.tar.gz:gzip compressed data, was "binary-space-partition-0.1.2.crate"
...
The only reason we used .tar.gz is that it was that way in OpenBSD's
devel/cargo/cargo.port.mk module. At the moment they are all .tar.gz
but they might have a different format in the future.
Doing a delayed rollout of this over a change-everything-once
approach to
- not immeditately invalidate all uncommitted port changes or
external ports
- not make sweeping changes twice in main and 2021Q2
at the cost of having a transition period where mirrors might have
to carry both the .tar.gz and .crate tarballs (all crates combined
are ~600 MiB).
Reviewed by: jbeich
MFH: 2021Q2 (to ease future cherry picks)
Differential Revision: https://reviews.freebsd.org/D29760
The april bugfix release for KDE Plasma is here. This wasn't
done immediately for the 5.21.3 ports commit that I landed
yesterday because I wasn't paying attention to latest
releases. Release notes are at
https://kde.org/announcements/plasma/5/5.21.4/
KDE Gear 21.04
Thursday, 22 April 2021
Welcome to KDE Gear ⚙️ 21.04!
KDE produces literally dozens of apps for work, play, education, and
creativity. Kontact, for example, gives you control over all your email,
contact, and agenda; Itinerary keeps you up to date with everything you
need regarding your trips; the KAlgebra graphing calculator works
equally well on your desktop and your phone; Cantor provides you with an
intuitive way of analyzing data and graphing the results; and Kdenlive
makes cutting and building sophisticated-looking videos not only easy,
but fun as well.
These are but a few of the apps releasing new updates today. When
combined with the KDE’s powerful Plasma desktop, they provide you with
most, if not all, the tools you need to be productive in a versatile and
flexible Linux^WFreeBSD environment.
But you don’t even need to run Linux! Many of the apps in this
announcement work on Windows, macOS, and Android as well. This is what
convergent means for KDE: use your favorite apps anywhere, on any
system, on your work computer, mobile or even on your TV!
And, remember: KDE’s apps, the Plasma desktop, Plasma Mobile, Plasma
BigScreen and all the rest of KDE’s software are free and open source.
No licensing, no hidden costs, no spying. Share them with your friends,
install them at work, or use them in your school lab. It is your
software to enjoy where and how you want.
Full announcement and changelogs:
https://kde.org/announcements/gear/21.04/
This updates the KDE Plasma parts to release 5.21.3. There is one
new port, plasma5-systemmonitor, which is the upcoming replacement
for KDE sysguard. It is not installed by default.
Release notes are at
https://kde.org/announcements/plasma/5/5.21.3/
Previous commits tidying up DOCS options left some non-
applications consumers without the necessary kdoctools
dependency, so (re)introduce that now.
If a port has no documentation, it doesn't need a DOCS
option (which turns on, or off, exactly an empty set
of documentation). This is now handled correctly by
kde.mk since ports 620d7678c8.
KDE **applications** with a DOCS option get doctools_build
added for free; this covers the majority of KDE-things-with
documentation. Note that DOCS isn't expected to **change**
anything: most of the ports that have (or had) that option
didn't do anything with it and always built the docs anyway.
PR: 255260
Reported by: Naram Qashat
The kde.mk framework automatically does DOCS for KDE ports --
but not all of them have documentation, so then you get a
weird situation of OPTIONS_DEFINE=DOCS in a port that has
no documentation (e.g. sysutils/baloo-widgets) where the
option has no effect at all.
Massage the machinery a little so that the bogus option can
be dropped; KDE ports with no docs should not define a DOCS
option any more.
PR: 252363
By default Meson forces color output. Ninja strips the escape
sequences before they go into the log. Samurai does not do that,
so we end up with some garbage in the logs. Pass -Db_colorout=never
to Meson to disable colors in general. Also see
https://mesonbuild.com/Builtin-options.html
This requires a small backport in devel/meson since the b_colorout
option is broken with Clang at the moment.
PR: 254678
Exp-run by: antoine
Samurai is a Ninja-compatible build tool with fewer dependencies
than Ninja. Hook it to the framework via a new NINJA_DEFAULT.
This also adds %p to NINJA_STATUS to make Ninja or Samurai print
the percentage of completed jobs to make it easier to eyeball how
much of the build is done.
PR: 254678
Exp-run by: antoine
While maintaing a rust application, I found a cargo.toml that specifies
the git URL with { git="https://..." }, cargo.mk expects a form like { git = "https://" }.
This patch improve the regex making the spaces around the '=' optional
Test: built all ports using the CARGO_USE_GIT feature
Approved by: tobik
Differential Revision: https://reviews.freebsd.org/D29805
Some ports need to perform extra build steps for which they need additional distfiles.
This commit makes go.mk to preserve MASTER_SITES,DISTFILES,EXTRACT_ONLY set by port's Makefile.
PR: 255085
Approved by: dmgk (maintainer)
Saturday, 10 April 2021
KDE today announces the release of KDE Frameworks 5.81.0.
KDE Frameworks are 83 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 release announcement.
This release is part of a series of planned monthly releases making
improvements available to developers in a quick and predictable manner.
Full Announcement:
https://kde.org/announcements/frameworks/5/5.81.0/
PR: 254978
Exp-run by: antoine
MASTER_SITES aliases processing in the framework is very inefficient
and the CRATESIO indirection is not worth it. Normally ports only
have a handful of sites at most, but USES=cargo currently adds one
site for each crate by necessity. The inefficiency suddenly matters
a lot.
By consuming MASTER_SITE_CRATESIO directly we can sidestep this
issue without losing anything.
Before:
$ time make -C www/zola -V MASTER_SITES >/dev/null
4.21 real 4.14 user 0.03 sys
After:
$ time make -C www/zola -V MASTER_SITES >/dev/null
0.60 real 0.58 user 0.02 sys
Build scripts might build bundled libraries but non-error output
is hiddden by cargo. Given a crate with large enough bundled library
(looking at you rusty_v8) the build just sits there in silence
forever and you do not know what is happening or if anything is
happening at all. This also makes Poudriere build logs less useful.
Pass an additional --verbose to cargo to get more noisy output.
https://doc.rust-lang.org/cargo/reference/build-scripts.html#outputs-of-the-build-script
Not all GitLab installations are the same; KDE_INVENT is one
that still uses the "old" naming scheme, so set WRKSRC for
ports that use that (all of which as "this should be a
temporary solution until there is a real release again").
Fixes build failures (patch, actually, since the extracted
directories didn't match expectations) in e.g. audio/amarok.