···449449 For those unable to upgrade yet, there is a [v0 compatibility mode](https://www.openpolicyagent.org/docs/v1.0.1/v0-compatibility/)
450450 available too.
451451452452+- Wordpress with the Caddy webserver (`services.wordpress.webserver = "caddy"`) now sets up sites with Caddy's automatic HTTPS instead of HTTP-only.
453453+ Given a site example.com, http://example.com now 301 redirects to https://example.com.
454454+ To keep the old behavior for a site `example.com`, set `services.caddy.virtualHosts."example.com".hostName = "http://example.com"`.
455455+452456- `vscode-utils.buildVscodeExtension` now requires pname as an argument
453457454458- The behavior of `services.hostapd.radios.<name>.networks.<name>.authentication.enableRecommendedPairwiseCiphers` was changed to not include `CCMP-256` anymore.
···11+diff --git a/Maelstrom-netd.c b/Maelstrom-netd.c
22+index 3e6e942..41ed9a5 100644
33+--- a/Maelstrom-netd.c
44++++ b/Maelstrom-netd.c
55+@@ -13,6 +13,7 @@
66+ #include <arpa/inet.h>
77+ #include <netdb.h>
88+ #include <unistd.h>
99++#include <time.h>
1010+1111+ /* We wait in a loop for players to connect and tell us how many people
1212+ are playing. Then, once all players have connected, then we broadcast
···11+{
22+ buildGoModule,
33+ fetchFromGitHub,
44+ lib,
55+}:
66+77+buildGoModule (finalAttrs: {
88+ pname = "mouseless";
99+ version = "0.2.0";
1010+1111+ vendorHash = "sha256-2q7L9BVcAaT4h/vUcNjVc5nOAFnb4J3WabcEGxI+hsA=";
1212+1313+ src = fetchFromGitHub {
1414+ owner = "jbensmann";
1515+ repo = "mouseless";
1616+ tag = "v${finalAttrs.version}";
1717+ hash = "sha256-iDSTV2ugvHoBuQWmMg2ILXP/Mlt7eq5B2dVaB0jwJOE=";
1818+ };
1919+2020+ meta = {
2121+ description = "Replacement for the mouse in Linux";
2222+ longDescription = ''
2323+ This program allows you to control the mouse pointer in Linux
2424+ with the keyboard. It works in all Linux distributions, even those
2525+ running with Wayland.
2626+ '';
2727+ homepage = "https://github.com/jbensmann/mouseless";
2828+ changelog = "https://github.com/jbensmann/mouseless/releases/tag/v${finalAttrs.version}";
2929+ maintainers = with lib.maintainers; [ imsuck ];
3030+ license = lib.licenses.mit;
3131+ platforms = lib.platforms.linux;
3232+ mainProgram = "mouseless";
3333+ };
3434+})
···11+diff --git a/src/core/worker.cpp b/src/core/worker.cpp
22+index da423731c..443c8db19 100644
33+--- a/src/core/worker.cpp
44++++ b/src/core/worker.cpp
55+@@ -343,13 +343,13 @@ Worker *Worker::createWorker(const QString &protocol, const QUrl &url, int &erro
66+ return nullptr;
77+ }
88+99+- if (protocol == QLatin1String("admin") && !lib_path.startsWith(QLatin1String{KDE_INSTALL_FULL_KIO_PLUGINDIR})) {
1010++ if (protocol == QLatin1String("admin") && !lib_path.startsWith(QLatin1String("/nix/store"))) {
1111+ error_text = i18nc("@info %2 and %3 are paths",
1212+ "The KIO worker for protocol “%1” in %2 was not loaded because all KIO workers which are located outside of %3 and ask for elevated "
1313+ "privileges are considered insecure.",
1414+ protocol,
1515+ lib_path,
1616+- QLatin1String{KDE_INSTALL_FULL_KIO_PLUGINDIR});
1717++ QLatin1String("/nix/store"));
1818+ error = KIO::ERR_CANNOT_CREATE_WORKER;
1919+ return nullptr;
2020+ }
+2
pkgs/kde/frameworks/kio/default.nix
···1111 patches = [
1212 # Remove hardcoded smbd search path
1313 ./0001-Remove-impure-smbd-search-path.patch
1414+ # Allow loading kio-admin from the store
1515+ ./allow-admin-from-store.patch
1416 ];
15171618 extraBuildInputs = [