Skip to content

Commit 5525603

Browse files
authored
treewide: deprecate Plasma 5 (#383664)
2 parents ec2ab40 + d443c67 commit 5525603

File tree

3 files changed

+62
-44
lines changed

3 files changed

+62
-44
lines changed

doc/release-notes/rl-2505.section.md

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,9 @@
5353

5454
### Deprecations {#sec-nixpkgs-release-25.05-lib-deprecations}
5555

56-
`functor` is an implementation detail and should not be relied upon, but since its status wasn't clear and it has had some use cases without alternatives, changes are being handled as gracefully as possible. Deprecations within functor:
57-
- `functor.wrapped` is now deprecated for some types and using it will give a warning with migration instructions. It is deprecated for these types:
56+
- `functor` is an implementation detail and should not be relied upon, but since its status wasn't clear and it has had some use cases without alternatives, changes are being handled as gracefully as possible. Deprecations within functor:
57+
- `functor.wrapped` is now deprecated for some types and using it will give a warning with migration instructions. It is deprecated for these types:
5858
- `lib.types.attrsWith`
5959
- `lib.types.listOf`
60+
61+
- Plasma 5 and Qt 5 based versions of associated software are deprecated in NixOS 25.05, and will be removed in NixOS 25.11. Users are encouraged to upgrade to Plasma 6.

nixos/modules/services/x11/desktop-managers/plasma5.nix

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -168,6 +168,9 @@ in
168168
config = mkMerge [
169169
# Common Plasma dependencies
170170
(mkIf (cfg.enable || cfg.mobile.enable || cfg.bigscreen.enable) {
171+
warnings = [
172+
"Plasma 5 has been deprecated and will be removed in NixOS 25.11. Please migrate your configuration to Plasma 6."
173+
];
171174

172175
security.wrappers = {
173176
kwin_wayland = {

pkgs/top-level/aliases.nix

Lines changed: 55 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,55 @@ let
4040
p4 = "${prefix}transmission_4${suffix}";
4141
in "${p} has been renamed to ${p3} since ${p4} is also available. Note that upgrade caused data loss for some users so backup is recommended (see NixOS 24.11 release notes for details)";
4242

43+
deprecatedPlasma5Packages = {
44+
inherit (plasma5Packages)
45+
akonadi akregator arianna ark bluedevil bomber bovo breeze-grub breeze-gtk
46+
breeze-icons breeze-plymouth breeze-qt5 colord-kde discover dolphin dragon elisa falkon
47+
ffmpegthumbs filelight granatier gwenview k3b kactivitymanagerd kaddressbook
48+
kalzium kapman kapptemplate kate katomic kblackbox kblocks kbounce
49+
kcachegrind kcalc kcharselect kcolorchooser kde-cli-tools kde-gtk-config
50+
kdenlive kdeplasma-addons kdevelop-pg-qt kdevelop-unwrapped kdev-php
51+
kdev-python kdevelop kdf kdialog kdiamond keditbookmarks kfind
52+
kgamma5 kget kgpg khelpcenter kig kigo killbots kinfocenter kitinerary
53+
kleopatra klettres klines kmag kmail kmenuedit kmines kmix kmplot
54+
knavalbattle knetwalk knights kollision kolourpaint kompare konsole kontact
55+
konversation korganizer kpkpass krdc kreversi krfb kscreen kscreenlocker
56+
kshisen ksquares ksshaskpass ksystemlog kteatime ktimer ktorrent ktouch
57+
kturtle kwallet-pam kwalletmanager kwave kwayland-integration kwin kwrited
58+
marble merkuro milou minuet okular oxygen oxygen-icons5 picmi
59+
plasma-browser-integration plasma-desktop plasma-integration plasma-nano
60+
plasma-nm plasma-pa plasma-mobile plasma-systemmonitor plasma-thunderbolt
61+
plasma-vault plasma-workspace plasma-workspace-wallpapers polkit-kde-agent
62+
powerdevil qqc2-breeze-style sddm-kcm skanlite skanpage spectacle
63+
systemsettings xdg-desktop-portal-kde yakuake zanshin
64+
;
65+
66+
inherit (plasma5Packages.thirdParty)
67+
krohnkite
68+
krunner-ssh
69+
krunner-symbols
70+
kwin-dynamic-workspaces
71+
kwin-tiling
72+
plasma-applet-caffeine-plus
73+
plasma-applet-virtual-desktop-bar
74+
;
75+
76+
inherit (libsForQt5)
77+
sddm
78+
;
79+
};
80+
81+
makePlasma5Throw = name: throw ''
82+
The top-level ${name} alias has been removed.
83+
84+
Please explicitly use kdePackages.${name} for the latest Qt 6-based version,
85+
or libsForQt5.${name} for the deprecated Qt 5 version.
86+
87+
Note that Qt 5 versions of most KDE software will be removed in NixOS 25.11.
88+
'';
89+
90+
plasma5Throws = lib.mapAttrs (k: _: makePlasma5Throw k) deprecatedPlasma5Packages;
91+
4392
# Make sure that we are not shadowing something from all-packages.nix.
4493
checkInPkgs = n: alias:
4594
if builtins.hasAttr n super
@@ -476,7 +525,7 @@ mapAliases {
476525
gfortran49 = throw "'gfortran49' has been removed from nixpkgs"; # Added 2024-09-11
477526
gfortran7 = throw "gfortran7 has been removed from Nixpkgs, as it is unmaintained and obsolete"; # Added 2024-11-20
478527
gfortran8 = throw "gfortran8 has been removed from Nixpkgs, as it is unmaintained and obsolete"; # Added 2024-11-20
479-
ghostwriter = libsForQt5.kdeGear.ghostwriter; # Added 2023-03-18
528+
ghostwriter = makePlasma5Throw "ghostwriter"; # Added 2023-03-18
480529
git-codeowners = throw "'git-codeowners' has been removed due to lack of upstream maintenance"; # Added 2025-01-25
481530
gmp5 = throw "'gmp5' has been removed as it is unmaintained. Consider using 'gmp' instead"; # Added 2024-10-28
482531
gmpc = throw "'gmpc' has been removed due to lack of maintenance upstream. Consider using 'plattenalbum' instead"; # Added 2024-09-14
@@ -664,7 +713,7 @@ mapAliases {
664713
kgx = gnome-console; # Added 2022-02-19
665714
kibana7 = throw "Kibana 7.x has been removed from nixpkgs as it depends on an end of life Node.js version and received no maintenance in time."; # Added 2023-30-10
666715
kibana = kibana7;
667-
kio-admin = libsForQt5.kdeGear.kio-admin; # Added 2023-03-18
716+
kio-admin = makePlasma5Throw "kio-admin"; # Added 2023-03-18
668717
kiwitalk = throw "KiwiTalk has been removed because the upstream has been deprecated at the request of Kakao and it's now obsolete."; # Added 2024-10-10
669718
kodiGBM = kodi-gbm;
670719
kodiPlain = kodi;
@@ -964,7 +1013,7 @@ mapAliases {
9641013
''; # Added 2024-06-25
9651014
nextcloud27Packages = throw "Nextcloud27 is EOL!"; # Added 2024-06-25
9661015
nagiosPluginsOfficial = monitoring-plugins;
967-
neochat = libsForQt5.kdeGear.neochat; # added 2022-05-10
1016+
neochat = makePlasma5Throw "neochat"; # added 2022-05-10
9681017
nerdfonts = throw ''
9691018
nerdfonts has been separated into individual font packages under the namespace nerd-fonts.
9701019
For example change:
@@ -1091,7 +1140,7 @@ mapAliases {
10911140
paperoni = throw "paperoni has been removed, because it is unmaintained"; # Added 2024-07-14
10921141
paperless = throw "'paperless' has been renamed to/replaced by 'paperless-ngx'"; # Converted to throw 2024-10-17
10931142
paperless-ng = paperless-ngx; # Added 2022-04-11
1094-
partition-manager = libsForQt5.partitionmanager; # Added 2024-01-08
1143+
partition-manager = makePlasma5Throw "partitionmanager"; # Added 2024-01-08
10951144
patchelfStable = patchelf; # Added 2024-01-25
10961145
paup = paup-cli; # Added 2024-09-11
10971146
pcsctools = pcsc-tools; # Added 2023-12-07
@@ -1577,7 +1626,7 @@ mapAliases {
15771626
xtrlock-pam = throw "xtrlock-pam has been removed because it is unmaintained for 10 years and doesn't support Python 3.10 or newer"; # Added 2025-01-25
15781627
xulrunner = firefox-unwrapped; # Added 2023-11-03
15791628
xvfb_run = throw "'xvfb_run' has been renamed to/replaced by 'xvfb-run'"; # Converted to throw 2024-10-17
1580-
xwaylandvideobridge = libsForQt5.xwaylandvideobridge; # Added 2024-09-27
1629+
xwaylandvideobridge = makePlasma5Throw "xwaylandvideobridge"; # Added 2024-09-27
15811630
xxv = throw "'xxv' has been removed due to lack of upstream maintenance"; # Added 2025-01-25
15821631

15831632
### Y ###
@@ -1627,45 +1676,9 @@ mapAliases {
16271676
between mixed versions of qt. See:
16281677
https://github.com/NixOS/nixpkgs/pull/101369 */
16291678

1630-
inherit (plasma5Packages)
1631-
akonadi akregator arianna ark bluedevil bomber bovo breeze-grub breeze-gtk
1632-
breeze-icons breeze-plymouth breeze-qt5 colord-kde discover dolphin dragon elisa falkon
1633-
ffmpegthumbs filelight granatier gwenview k3b kactivitymanagerd kaddressbook
1634-
kalzium kapman kapptemplate kate katomic kblackbox kblocks kbounce
1635-
kcachegrind kcalc kcharselect kcolorchooser kde-cli-tools kde-gtk-config
1636-
kdenlive kdeplasma-addons kdevelop-pg-qt kdevelop-unwrapped kdev-php
1637-
kdev-python kdevelop kdf kdialog kdiamond keditbookmarks kfind
1638-
kgamma5 kget kgpg khelpcenter kig kigo killbots kinfocenter kitinerary
1639-
kleopatra klettres klines kmag kmail kmenuedit kmines kmix kmplot
1640-
knavalbattle knetwalk knights kollision kolourpaint kompare konsole kontact
1641-
konversation korganizer kpkpass krdc kreversi krfb kscreen kscreenlocker
1642-
kshisen ksquares ksshaskpass ksystemlog kteatime ktimer ktorrent ktouch
1643-
kturtle kwallet-pam kwalletmanager kwave kwayland-integration kwin kwrited
1644-
marble merkuro milou minuet okular oxygen oxygen-icons5 picmi
1645-
plasma-browser-integration plasma-desktop plasma-integration plasma-nano
1646-
plasma-nm plasma-pa plasma-mobile plasma-systemmonitor plasma-thunderbolt
1647-
plasma-vault plasma-workspace plasma-workspace-wallpapers polkit-kde-agent
1648-
powerdevil qqc2-breeze-style sddm-kcm skanlite skanpage spectacle
1649-
systemsettings xdg-desktop-portal-kde yakuake zanshin
1650-
;
1651-
16521679
kalendar = merkuro; # Renamed in 23.08
16531680
kfloppy = throw "kfloppy has been removed upstream in KDE Gear 23.08";
16541681

1655-
inherit (plasma5Packages.thirdParty)
1656-
krohnkite
1657-
krunner-ssh
1658-
krunner-symbols
1659-
kwin-dynamic-workspaces
1660-
kwin-tiling
1661-
plasma-applet-caffeine-plus
1662-
plasma-applet-virtual-desktop-bar
1663-
;
1664-
1665-
inherit (libsForQt5)
1666-
sddm
1667-
;
1668-
16691682
inherit (pidginPackages)
16701683
pidgin-indicator
16711684
pidgin-latex
@@ -1694,4 +1707,4 @@ mapAliases {
16941707
purple-facebook
16951708
;
16961709

1697-
}
1710+
} // plasma5Throws

0 commit comments

Comments
 (0)