Replaces/Closes #384302
The problem with this allocator is that it's unstable not recommended
for general use. Remove it entirely.
This means that software using pcre2 and MemoryDenyWriteExecute=yes in
their units is broken with this commit.
gtk 2 is long deprecated and being removed from Nixpkgs, and all the
consumers are using gtk 3 anyway, so let's just make that the default
and drop the old behavior.
Also migrates away from them with these commands, using ast-grep 0.43.0
with these commands in bash (assisted by ChatGPT):
```bash
for old in extractType1 extractType2; do
ast-grep \
--lang nix \
--pattern "\$TOOLS.$old" \
--rewrite '$TOOLS.extract' \
--update-all \
pkgs
done
ast-grep \
--lang nix \
--pattern '$TOOLS.wrapType1' \
--rewrite '$TOOLS.wrapType2' \
--update-all \
pkgs
```
Assisted-by: GPT-5.6-Sol Medium via ChatGPT
upstream changelog:
- This update adds context menu integration for Nautilus, Caja, Nemo, Dolphin and Thunar file
managers. We've also fixed an issue where the AppImage failed to launch after being renamed,
along with additional improvements for a smoother experience.
gtk 2 is unmaintained upstream and is being removed from Nixpkgs where
possible. gtk 3 is already the default, so there's little reason to keep
the support around.
Upstream changelog:
> 2.1.1(03/06/2026)
> This update improves sync responsiveness, Crypto folder reliability, and recovery when the pCloud Drive mount point is unavailable. New 'Enable hardware acceleration' option in Settings is added to use your graphics card for better performance.
Requires Ubuntu 20.04, Mint 20, Fedora 33, Arch Linux, Debian 11 or later derivative distributions.
`pcem` does not build with C23 settings because of an
underspecified argument list for a function pointer:
```
[...]
disc.c: In function 'disc_stop':
disc.c:286:17: error: too many arguments to function 'drives[drive].stop'; expected 0, have 1
286 | drives[drive].stop(drive);
| ^~~~~~ ~~~~~
In file included from disc.c:4:
disc.h:9:16: note: declared here
9 | void (*stop)();
| ^~~~
make[1]: *** [Makefile:2455: pcem-disc.o] Error 1
make[1]: Leaving directory '/build/source/src'
make: *** [Makefile:373: all-recursive] Error 1
```
Switching to `-std=gcc17` fixes this for now. I suspect future
releases of `pcem` will fix this at some point, but this hasn't
happened yet [^1].
[^1]: d674c4088e/includes/private/disc/disc.h (L10)
Done:
- use libdbusmenu-gtk3 instead of libdbusmenu-gtk2
- add bashInteractive to buildinputs, as required by a function in the runner
- add meta.downloadPage
Upstream changelog:
- 2.1.0 (12/05/2026)
This update expands sharing — accept or decline pending folder
invitations, and share multiple files at once.
The app is now built on Electron 39 (Chromium 142), with improved
Wayland support and better desktop integration.
It also brings stability and reliability improvements across the app,
including a more reliable updater and fixes for sync, file transfers,
mounted Drive, Crypto folder, and peer-to-peer connections.