diff --git a/flake.lock b/flake.lock
index a2d8e37..f0c3b8e 100644
--- a/flake.lock
+++ b/flake.lock
@@ -20,11 +20,11 @@
]
},
"locked": {
- "lastModified": 1742213273,
- "narHash": "sha256-0l0vDb4anfsBu1rOs94bC73Hub+xEivgBAo6QXl2MmU=",
+ "lastModified": 1752936381,
+ "narHash": "sha256-b191B12GRfvOT3odGpx5IFyGRPZbBrvCLADZfFHoJFg=",
"owner": "hyprwm",
"repo": "aquamarine",
- "rev": "484b732195cc53f4536ce4bd59a5c6402b1e7ccf",
+ "rev": "141a991678b34e768f09b3a670c61a4c1d5d7110",
"type": "github"
},
"original": {
@@ -590,16 +590,16 @@
]
},
"locked": {
- "lastModified": 1743128724,
- "narHash": "sha256-CUlxc2u1Y8gpeAl7NKrZxxpeZjyU2DBxOYb8b0haM2M=",
+ "lastModified": 1752830283,
+ "narHash": "sha256-1BTJSqkj+lkIry27HuqA5UB7uRqAUvGT7LAUDQhKjU0=",
"owner": "outfoxxed",
"repo": "hy3",
- "rev": "4014433d1c3d1bf36c6684cff14c23d538337070",
+ "rev": "d61a2eb9b9f22c6e46edad3e8f5fbd3578961b11",
"type": "github"
},
"original": {
"owner": "outfoxxed",
- "ref": "hl0.48.0",
+ "ref": "hl0.50.0",
"repo": "hy3",
"type": "github"
}
@@ -620,11 +620,11 @@
]
},
"locked": {
- "lastModified": 1742215578,
- "narHash": "sha256-zfs71PXVVPEe56WEyNi2TJQPs0wabU4WAlq0XV7GcdE=",
+ "lastModified": 1749155331,
+ "narHash": "sha256-XR9fsI0zwLiFWfqi/pdS/VD+YNorKb3XIykgTg4l1nA=",
"owner": "hyprwm",
"repo": "hyprcursor",
- "rev": "2fd36421c21aa87e2fe3bee11067540ae612f719",
+ "rev": "45fcc10b4c282746d93ec406a740c43b48b4ef80",
"type": "github"
},
"original": {
@@ -649,11 +649,11 @@
]
},
"locked": {
- "lastModified": 1739049071,
- "narHash": "sha256-3+7TpXMrbsUXSwgr5VAKAnmkzMb6JO+Rvc9XRb5NMg4=",
+ "lastModified": 1752149140,
+ "narHash": "sha256-gbh1HL98Fdqu0jJIWN4OJQN7Kkth7+rbkFpSZLm/62A=",
"owner": "hyprwm",
"repo": "hyprgraphics",
- "rev": "175c6b29b6ff82100539e7c4363a35a02c74dd73",
+ "rev": "340494a38b5ec453dfc542c6226481f736cc8a9a",
"type": "github"
},
"original": {
@@ -678,17 +678,17 @@
"xdph": "xdph"
},
"locked": {
- "lastModified": 1743178567,
- "narHash": "sha256-skuJFly6LSFfyAVy2ByNolkEwIijsTu2TxzQ9ugWarI=",
- "ref": "refs/tags/v0.48.1",
- "rev": "29e2e59fdbab8ed2cc23a20e3c6043d5decb5cdc",
- "revCount": 5937,
+ "lastModified": 1752961026,
+ "narHash": "sha256-ALp/WkfOfXMScwytTmjxpjRNmbezrgFQdEX6n3py7L8=",
+ "ref": "refs/tags/v0.50.1",
+ "rev": "4e242d086e20b32951fdc0ebcbfb4d41b5be8dcc",
+ "revCount": 6291,
"submodules": true,
"type": "git",
"url": "https://github.com/hyprwm/Hyprland"
},
"original": {
- "ref": "refs/tags/v0.48.1",
+ "ref": "refs/tags/v0.50.1",
"submodules": true,
"type": "git",
"url": "https://github.com/hyprwm/Hyprland"
@@ -706,11 +706,11 @@
]
},
"locked": {
- "lastModified": 1738422629,
- "narHash": "sha256-5v+bv75wJWvahyM2xcMTSNNxmV8a7hb01Eey5zYnBJw=",
+ "lastModified": 1749046714,
+ "narHash": "sha256-kymV5FMnddYGI+UjwIw8ceDjdeg7ToDVjbHCvUlhn14=",
"owner": "hyprwm",
"repo": "hyprland-protocols",
- "rev": "755aef8dab49d0fc4663c715fa4ad221b2aedaed",
+ "rev": "613878cb6f459c5e323aaafe1e6f388ac8a36330",
"type": "github"
},
"original": {
@@ -738,11 +738,11 @@
]
},
"locked": {
- "lastModified": 1737634706,
- "narHash": "sha256-nGCibkfsXz7ARx5R+SnisRtMq21IQIhazp6viBU8I/A=",
+ "lastModified": 1749154592,
+ "narHash": "sha256-DO7z5CeT/ddSGDEnK9mAXm1qlGL47L3VAHLlLXoCjhE=",
"owner": "hyprwm",
"repo": "hyprland-qt-support",
- "rev": "8810df502cdee755993cb803eba7b23f189db795",
+ "rev": "4c8053c3c888138a30c3a6c45c2e45f5484f2074",
"type": "github"
},
"original": {
@@ -774,11 +774,11 @@
]
},
"locked": {
- "lastModified": 1739048983,
- "narHash": "sha256-REhTcXq4qs3B3cCDtLlYDz0GZvmsBSh947Ub6pQWGTQ=",
+ "lastModified": 1750371812,
+ "narHash": "sha256-D868K1dVEACw17elVxRgXC6hOxY+54wIEjURztDWLk8=",
"owner": "hyprwm",
"repo": "hyprland-qtutils",
- "rev": "3504a293c8f8db4127cb0f7cfc1a318ffb4316f8",
+ "rev": "b13c7481e37856f322177010bdf75fccacd1adc8",
"type": "github"
},
"original": {
@@ -803,11 +803,11 @@
]
},
"locked": {
- "lastModified": 1741191527,
- "narHash": "sha256-kM+11Nch47Xwfgtw2EpRitJuORy4miwoMuRi5tyMBDY=",
+ "lastModified": 1750371198,
+ "narHash": "sha256-/iuJ1paQOBoSLqHflRNNGyroqfF/yvPNurxzcCT0cAE=",
"owner": "hyprwm",
"repo": "hyprlang",
- "rev": "72df3861f1197e41b078faa3e38eedd60e00018d",
+ "rev": "cee01452bca58d6cadb3224e21e370de8bc20f0b",
"type": "github"
},
"original": {
@@ -828,11 +828,11 @@
]
},
"locked": {
- "lastModified": 1741534688,
- "narHash": "sha256-EV3945SnjOCuRVbGRghsWx/9D89FyshnSO1Q6/TuQ14=",
+ "lastModified": 1752252310,
+ "narHash": "sha256-06i1pIh6wb+sDeDmWlzuPwIdaFMxLlj1J9I5B9XqSeo=",
"owner": "hyprwm",
"repo": "hyprutils",
- "rev": "dd1f720cbc2dbb3c71167c9598045dd3261d27b3",
+ "rev": "bcabcbada90ed2aacb435dc09b91001819a6dc82",
"type": "github"
},
"original": {
@@ -853,11 +853,11 @@
]
},
"locked": {
- "lastModified": 1739870480,
- "narHash": "sha256-SiDN5BGxa/1hAsqhgJsS03C3t2QrLgBT8u+ENJ0Qzwc=",
+ "lastModified": 1751897909,
+ "narHash": "sha256-FnhBENxihITZldThvbO7883PdXC/2dzW4eiNvtoV5Ao=",
"owner": "hyprwm",
"repo": "hyprwayland-scanner",
- "rev": "206367a08dc5ac4ba7ad31bdca391d098082e64b",
+ "rev": "fcca0c61f988a9d092cbb33e906775014c61579d",
"type": "github"
},
"original": {
@@ -1207,11 +1207,11 @@
},
"nixpkgs_7": {
"locked": {
- "lastModified": 1742069588,
- "narHash": "sha256-C7jVfohcGzdZRF6DO+ybyG/sqpo1h6bZi9T56sxLy+k=",
+ "lastModified": 1752687322,
+ "narHash": "sha256-RKwfXA4OZROjBTQAl9WOZQFm7L8Bo93FQwSJpAiSRvo=",
"owner": "NixOS",
"repo": "nixpkgs",
- "rev": "c80f6a7e10b39afcc1894e02ef785b1ad0b0d7e5",
+ "rev": "6e987485eb2c77e5dcc5af4e3c70843711ef9251",
"type": "github"
},
"original": {
@@ -1281,11 +1281,11 @@
]
},
"locked": {
- "lastModified": 1742058297,
- "narHash": "sha256-b4SZc6TkKw8WQQssbN5O2DaCEzmFfvSTPYHlx/SFW9Y=",
+ "lastModified": 1750779888,
+ "narHash": "sha256-wibppH3g/E2lxU43ZQHC5yA/7kIKLGxVEnsnVK1BtRg=",
"owner": "cachix",
"repo": "git-hooks.nix",
- "rev": "59f17850021620cd348ad2e9c0c64f4e6325ce2a",
+ "rev": "16ec914f6fb6f599ce988427d9d94efddf25fe6d",
"type": "github"
},
"original": {
@@ -1545,11 +1545,11 @@
]
},
"locked": {
- "lastModified": 1741934139,
- "narHash": "sha256-ZhTcTH9FoeAtbPfWGrhkH7RjLJZ7GeF18nygLAMR+WE=",
+ "lastModified": 1751300244,
+ "narHash": "sha256-PFuv1TZVYvQhha0ac53E3YgdtmLShrN0t4T6xqHl0jE=",
"owner": "hyprwm",
"repo": "xdg-desktop-portal-hyprland",
- "rev": "150b0b6f52bb422a1b232a53698606fe0320dde0",
+ "rev": "6115f3fdcb2c1a57b4a80a69f3c797e47607b90a",
"type": "github"
},
"original": {
diff --git a/flake.nix b/flake.nix
index 675a614..d38e272 100755
--- a/flake.nix
+++ b/flake.nix
@@ -102,9 +102,9 @@
flake = false;
};
- hyprland.url = "git+https://github.com/hyprwm/Hyprland?submodules=1&ref=refs/tags/v0.48.1";
+ hyprland.url = "git+https://github.com/hyprwm/Hyprland?submodules=1&ref=refs/tags/v0.50.1";
hy3 = {
- url = "github:outfoxxed/hy3?ref=hl0.48.0";
+ url = "github:outfoxxed/hy3?ref=hl0.50.0";
inputs.hyprland.follows = "hyprland";
};
diff --git a/host/Rory-nginx/services/matrix/synapse/workers/event-creator.nix b/host/Rory-nginx/services/matrix/synapse/workers/event-creator.nix
index 0966573..9534b62 100644
--- a/host/Rory-nginx/services/matrix/synapse/workers/event-creator.nix
+++ b/host/Rory-nginx/services/matrix/synapse/workers/event-creator.nix
@@ -14,6 +14,7 @@ let
"~ ^/_matrix/client/(api/v1|r0|v3|unstable)/knock/"
"~ ^/_matrix/client/(api/v1|r0|v3|unstable)/profile/"
"~ ^/_synapse/admin/v1/rooms" # We have a lot of them, so let's do a bunch of jobs at once!
+ "~ ^/_matrix/client/unstable/gay.rory.bulk_send_events/rooms/.*/bulk_send_events"
];
federation = [ ];
media = [ ];
diff --git a/packages/overlays/matrix-synapse/patches/0014-Add-bulk-send-events-endpoint.patch b/packages/overlays/matrix-synapse/patches/0014-Add-bulk-send-events-endpoint.patch
index 56d6fc5..fdd6030 100644
--- a/packages/overlays/matrix-synapse/patches/0014-Add-bulk-send-events-endpoint.patch
+++ b/packages/overlays/matrix-synapse/patches/0014-Add-bulk-send-events-endpoint.patch
@@ -1,12 +1,27 @@
-From 4e94a2b4d56f3e6e98378e1f10900ef8ec9af8e6 Mon Sep 17 00:00:00 2001
+From 452f38800dd00b8686543099d6a085f9b4210687 Mon Sep 17 00:00:00 2001
From: Rory& <root@rory.gay>
Date: Sat, 26 Jul 2025 09:50:56 +0200
Subject: [PATCH 14/14] Add bulk send events endpoint
---
- synapse/rest/client/room.py | 117 +++++++++++++++++++++++++++++++++++-
- 1 file changed, 116 insertions(+), 1 deletion(-)
+ synapse/rest/client/capabilities.py | 3 +
+ synapse/rest/client/room.py | 117 +++++++++++++++++++++++++++-
+ 2 files changed, 119 insertions(+), 1 deletion(-)
+diff --git a/synapse/rest/client/capabilities.py b/synapse/rest/client/capabilities.py
+index 8f3193fb47..7220b75006 100644
+--- a/synapse/rest/client/capabilities.py
++++ b/synapse/rest/client/capabilities.py
+@@ -74,6 +74,9 @@ class CapabilitiesRestServlet(RestServlet):
+ "m.get_login_token": {
+ "enabled": self.config.auth.login_via_existing_enabled,
+ },
++ "gay.rory.bulk_send_events": {
++ "enabled": True
++ }
+ }
+ }
+
diff --git a/synapse/rest/client/room.py b/synapse/rest/client/room.py
index f61152c35b..19ba13dd64 100644
--- a/synapse/rest/client/room.py
|