Compare commits

...

322 commits

Author SHA1 Message Date
nixpkgs-ci[bot]
8486e8a7b3
Merge fbdfe58264 into haskell-updates 2026-07-06 00:43:34 +00:00
nixpkgs-ci[bot]
fbdfe58264
oh-my-posh: 29.19.0 -> 29.20.0 (#538602) 2026-07-05 18:19:13 +00:00
Michael Daniels
f55e91e36f
fsverity-utils: 1.6 -> 1.7 (#474224) 2026-07-05 18:17:56 +00:00
Michael Daniels
2445e27798
firezone-headless-client: 1.5.5 -> 1.5.6 (#481493) 2026-07-05 18:17:34 +00:00
Michael Daniels
2d7bb95357
python3Packages.python-apt: 2.9.9 -> 3.1.0 (#450845) 2026-07-05 18:11:14 +00:00
Michael Daniels
feb27dfa42
wimlib: 1.14.4 -> 1.14.5 (#485307) 2026-07-05 18:10:08 +00:00
Michael Daniels
16ad072a24
stig: 0.14.1a0 -> 0.14.2a0 (#485279) 2026-07-05 18:09:23 +00:00
Michael Daniels
c375ac785c
python3Packages.omniorb: 4.3.3 -> 4.3.4 (#477326) 2026-07-05 18:02:43 +00:00
R. Ryantm
6d59678cd9
stig: 0.14.1a0 -> 0.14.2a0 2026-07-05 14:01:53 -04:00
R. Ryantm
b25dcd3eb1
wimlib: 1.14.4 -> 1.14.5 2026-07-05 14:01:16 -04:00
Niklas Korz
36deb2970e
gram: fix darwin build (#538691) 2026-07-05 18:00:08 +00:00
R. Ryantm
db95ac286c
firezone-headless-client: 1.5.5 -> 1.5.6 2026-07-05 13:59:34 -04:00
Michael Daniels
dc7865623f
trackma-qt: 0.9 -> 0.10.3 (#481206) 2026-07-05 17:58:07 +00:00
Christian Kögler
1fbf821b8e
avdl: 0.1.9+1.12.1 -> 0.1.10+1.12.1 (#538700) 2026-07-05 17:55:53 +00:00
Michael Daniels
0152fc2442
evilwm: 1.4.3 -> 1.5 (#472948) 2026-07-05 17:54:31 +00:00
Michael Daniels
1453b41819
terraform-local: 0.24.1 -> 0.25.0 (#470043) 2026-07-05 17:52:16 +00:00
nixpkgs-ci[bot]
443e204170
seafile-shared: 9.0.15 -> 9.0.20 (#477730) 2026-07-05 17:51:42 +00:00
isabel
f38d2c6aea
python3Packages.beets-ytimport: init at 1.13.0 (#538488) 2026-07-05 17:46:56 +00:00
R. Ryantm
98737c282d
evilwm: 1.4.3 -> 1.5 2026-07-05 13:46:44 -04:00
isabel
aa30b833ce
python3Packages.beets-importreplace: init at 0.3 (#538493) 2026-07-05 17:46:43 +00:00
R. Ryantm
7ecd8eb1a6
fsverity-utils: 1.6 -> 1.7 2026-07-05 13:45:34 -04:00
R. Ryantm
ef2619c394
python3Packages.omniorb: 4.3.3 -> 4.3.4 2026-07-05 13:44:53 -04:00
R. Ryantm
052ed6d3ef
trackma-qt: 0.9 -> 0.10.3 2026-07-05 13:43:09 -04:00
Michael Daniels
c94d374285
fatsort: 1.6.5.640 -> 1.7.679 (#463661) 2026-07-05 17:40:58 +00:00
R. Ryantm
9c66314ac7
terraform-local: 0.24.1 -> 0.25.0 2026-07-05 13:40:18 -04:00
Michael Daniels
138166fa37
flintlock: 0.8.1 -> 0.9.0 (#463423) 2026-07-05 17:39:21 +00:00
Michael Daniels
97de25b34c
python3Packages.texsoup: 0.3.1 -> 0.3.3 (#508000) 2026-07-05 17:39:02 +00:00
R. Ryantm
ca87cf7b5f
fatsort: 1.6.5.640 -> 1.7.679 2026-07-05 13:34:50 -04:00
R. Ryantm
85622c9ca4
python3Packages.python-apt: 2.9.9 -> 3.1.0 2026-07-05 13:33:34 -04:00
R. Ryantm
a95a7de300
flintlock: 0.8.1 -> 0.9.0 2026-07-05 13:31:16 -04:00
dish
bc13a5880d python3Packages.beets-ytimport: init at 1.13.0 2026-07-05 13:27:47 -04:00
Thomas Gerbet
e58be98c76
mysql84: 8.4.9 -> 8.4.10 (#533954) 2026-07-05 17:26:03 +00:00
Thomas Gerbet
b58a5c28d1
docker: 29.6.0 -> 29.6.1 (#538107) 2026-07-05 17:25:44 +00:00
nixpkgs-ci[bot]
e55e3f4476
stevenblack-blocklist: 3.16.91 -> 3.16.94 (#538247) 2026-07-05 17:25:19 +00:00
R. Ryantm
6511b07569
python3Packages.texsoup: 0.3.1 -> 0.3.3 2026-07-05 13:16:11 -04:00
Michael Daniels
da7286fd02
python3Packages.bleak: cleanup, adopt (#517078) 2026-07-05 17:06:29 +00:00
Ryan Hendrickson
705374990b
python3Packages.bleak: add rhendric to maintainers 2026-07-05 12:53:47 -04:00
Ryan Hendrickson
5791387933
python3Packages.bleak: reorder formals 2026-07-05 12:53:37 -04:00
Doron Behar
787089e5e4
syncthing: 2.1.0 -> 2.1.1 (#538375) 2026-07-05 16:42:00 +00:00
LIN, Jian
64ba1ebe9a
emacsPackages.ghostel: 0.39.0-unstable-2026-06-26 -> 0.41.0-unstable-2026-07-05 (#538633) 2026-07-05 16:26:38 +00:00
Thomas Gerbet
7bde72eae6
seafile-client: 9.0.15 -> 9.0.20 (#538242) 2026-07-05 16:25:53 +00:00
Thomas Gerbet
584196f474
bazarr: 1.5.6 -> 1.6.0 (#538399) 2026-07-05 16:20:23 +00:00
Thiago Kenji Okada
c428cc1a3e
libretro.stella2014: 0-unstable-2026-04-12 -> 0-unstable-2026-07-04 (#538561) 2026-07-05 16:06:47 +00:00
Thiago Kenji Okada
404473450f
libretro.opera: 0-unstable-2026-06-19 -> 0-unstable-2026-06-28 (#538654) 2026-07-05 16:06:26 +00:00
Thiago Kenji Okada
c95f7ae104
libretro.prboom: 0-unstable-2026-06-15 -> 0-unstable-2026-07-01 (#538684) 2026-07-05 16:05:59 +00:00
Matthieu Coudron
5060bd50d8
vimPlugins.meson: remove meta.mainProgram and change meta.description (#538683) 2026-07-05 15:58:31 +00:00
Oleksii Filonenko
0a6c8cb5c9
taisei: on darwin now! (#521761) 2026-07-05 15:50:58 +00:00
Oleksii Filonenko
bc65277cd9
snipaste: 2.10.8 -> 2.11.3, add macOS support (#533819) 2026-07-05 15:48:35 +00:00
nixpkgs-ci[bot]
a2da5ccc99
dprint: 0.54.0 -> 0.55.1 (#538692) 2026-07-05 15:48:17 +00:00
nixpkgs-ci[bot]
2e4160e9b6
interval-tree: 3.1.1 -> 3.1.2 (#537574) 2026-07-05 15:48:01 +00:00
K900
23706216c3
lasuite-meet: 1.21.0 -> 1.22.0 (#538178) 2026-07-05 15:46:05 +00:00
Oleksii Filonenko
0b2620c81d
wrangler: fix build on darwin (#536602) 2026-07-05 15:45:37 +00:00
Thomas Gerbet
e6a197a0a0
openvpn: 2.6.19 -> 2.6.21 (#538353) 2026-07-05 15:39:49 +00:00
Michael Daniels
fd9ccf4425
google-chrome: 149.0.7827.201 -> 150.0.7871.47 (Darwin only) (#538701) 2026-07-05 15:39:35 +00:00
Michael Daniels
148ae81bd6
python3Packages.pipdeptree: 3.1.0 -> 3.1.1 (#538636) 2026-07-05 15:33:57 +00:00
Sandro
2e75c50f9d
headplane: 0.6.2 -> 0.6.3 (#537576) 2026-07-05 15:32:53 +00:00
Sandro
eafe34b34f
jellyfin-mpv-shim: 2.9.0 -> 2.10.0, minor cleanup (#537200) 2026-07-05 15:25:13 +00:00
Michael Daniels
dfec9c87b5
google-chrome: 149.0.7827.201 -> 150.0.7871.47 (Darwin only)
Linux was done in 8b266eba3a.

Release note: https://chromereleases.googleblog.com/2026/06/stable-channel-update-for-desktop_0175352312.html
2026-07-05 11:24:18 -04:00
Michael Daniels
24cb980e60
maintainers: fix wrong githubId and github for aaravrav (#538697) 2026-07-05 15:22:22 +00:00
aaravrav
1d4564e434
maintainers: fix wrong githubId and github for aaravrav 2026-07-05 20:46:16 +05:30
R. Ryantm
fab9a7e4cb avdl: 0.1.9+1.12.1 -> 0.1.10+1.12.1 2026-07-05 15:12:42 +00:00
Michael Daniels
28d4faad49
ci: update pinned (#538674) 2026-07-05 15:10:23 +00:00
Sandro Jäckel
1260e09ca5
jellyfin-mpv-shim: 2.9.0 -> 2.10.0, minor cleanup
Changelog: https://github.com/jellyfin/jellyfin-mpv-shim/releases/tag/v2.10.0
Diff: https://github.com/jellyfin/jellyfin-mpv-shim/compare/v2.9.0...v2.10.0
2026-07-05 17:07:39 +02:00
Niklas Korz
658578f710 gram: fix darwin build
Hydra reports libclang to be missing, which is fixed by adding the
bindgen hook.

https://hydra.nixos.org/build/334182361
2026-07-05 16:54:39 +02:00
Fabian Affolter
c693c1d415
python3Packages.ghapi: 1.0.14 -> 1.0.15 (#538645) 2026-07-05 14:54:34 +00:00
Fabian Affolter
51070f6138
python3Packages.pontos: 26.5.0 -> 26.6.0 (#538632) 2026-07-05 14:54:09 +00:00
dotlambda
196091c9fa
immich: 2.7.5 -> 3.0.1 (#538371) 2026-07-05 14:52:33 +00:00
R. Ryantm
4f13bde50c dprint: 0.54.0 -> 0.55.1 2026-07-05 14:49:32 +00:00
nixpkgs-ci[bot]
37ff280054
osm2pgsql: 2.3.0 -> 2.3.1 (#538673) 2026-07-05 14:44:04 +00:00
nixpkgs-ci[bot]
ad64acb975
copilot-language-server: 1.513.0 -> 1.517.0 (#538671) 2026-07-05 14:44:03 +00:00
nixpkgs-ci[bot]
ce68738ce1
xaos: 4.3.5 -> 4.3.6 (#538455) 2026-07-05 14:44:02 +00:00
Sandro Jäckel
ffba9cbb2b
python3Packages.python-mpv-jsonipc: 1.2.1 -> 1.2.2
Diff: https://github.com/iwalton3/python-mpv-jsonipc/compare/v1.2.1...v1.2.2
2026-07-05 16:39:07 +02:00
Gaetan Lepage
3f2694f060 vimPlugins.meson: remove meta.mainProgram and change meta.description 2026-07-05 14:33:33 +00:00
R. Ryantm
4deaf115f8 libretro.prboom: 0-unstable-2026-06-15 -> 0-unstable-2026-07-01 2026-07-05 14:29:01 +00:00
Martin Weinelt
6750436110
ctranslate2: 4.8.0 -> 4.8.1 (#538070) 2026-07-05 14:25:51 +00:00
Gaétan Lepage
290e4add7f
tw: init at 0-unstable-2026-06-23 (#537035) 2026-07-05 14:21:45 +00:00
Volker Diels-Grabsch
8ea5e3ec1c ocamlPackages.tw: init at 0-unstable-2026-06-23 2026-07-05 16:07:04 +02:00
Volker Diels-Grabsch
a7f2fc98cf ocamlPackages.cascade: init at 0-unstable-2026-06-26 2026-07-05 16:07:04 +02:00
Volker Diels-Grabsch
4e5ec8423e ocamlPackages.alcobar: init at 0.3.1 2026-07-05 16:07:04 +02:00
Matt Sturgeon
a6eeac86f7
ci: update pinned
Bumps nixpkgs-vet 0.3.2 → 0.3.4

https://github.com/NixOS/nixpkgs-vet/blob/main/CHANGELOG.md#034-2026-07-01
2026-07-05 15:01:24 +01:00
Jörg Thalheim
0ffdd818b5
ci: nix_2_28 → stable
Originally part of commit 07457776ad0ec171d6c728237b7cbe76685b6165
but dropped to avoid backporting #536372
2026-07-05 14:59:31 +01:00
R. Ryantm
88419eba7e osm2pgsql: 2.3.0 -> 2.3.1 2026-07-05 13:32:33 +00:00
R. Ryantm
aebe5f9e52 copilot-language-server: 1.513.0 -> 1.517.0 2026-07-05 13:29:07 +00:00
Matt Sturgeon
37aac0fb06
ci/update-pinned.sh: import Nixpkgs relative to script
Paths within a --expr expression are relative to the script file,
while relative paths in NIX_PATH are relative to the caller's CWD.

We want the Nixpkgs import to be relative to update-pinned.sh itself,
so that it does not matter where it's executed from.

See https://github.com/NixOS/nixpkgs/issues/425551
2026-07-05 14:25:34 +01:00
Gaétan Lepage
55fe44650a
python314Packages.notebook: quier lerna progress bar (#538269) 2026-07-05 13:23:49 +00:00
Felix Bühler
5d21951fed
ariang: Pin nodejs to version 22 (#537959) 2026-07-05 13:03:34 +00:00
nixpkgs-ci[bot]
30a6359116
dcp: 0.25.1 -> 0.25.2 (#538646) 2026-07-05 12:41:59 +00:00
Wolfgang Walther
8c6381d366
postgresqlPackages.pgvector: 0.8.3 -> 0.8.4 (#538539) 2026-07-05 12:35:00 +00:00
nixpkgs-ci[bot]
8f7639a0d4
firezone-gateway: 1.4.18 -> 1.5.2 (#474726) 2026-07-05 11:57:34 +00:00
R. Ryantm
5db209dd73 libretro.opera: 0-unstable-2026-06-19 -> 0-unstable-2026-06-28 2026-07-05 11:51:37 +00:00
azahi
9b7189404e
werf: 2.72.1 -> 2.73.0 (#538495) 2026-07-05 11:31:00 +00:00
azahi
3de25b480b
seaweedfs: 4.36 -> 4.37 (#538504) 2026-07-05 11:30:52 +00:00
Arne Keller
b2f2b0c72c
nixos/cloudlog: fix QSL images, SSTV scans, and awards JSON files (#399257) 2026-07-05 11:20:13 +00:00
nixpkgs-ci[bot]
827cfdf0a7
cargo-feature-combinations: 0.0.54 -> 0.2.3 (#538637) 2026-07-05 11:18:45 +00:00
Fabian Affolter
91cb1fb477 python3Packages.ghapi: 1.0.14 -> 1.0.15
Diff: https://github.com/fastai/ghapi/compare/1.0.14...1.0.15

Changelog: https://github.com/fastai/ghapi/releases/tag/1.0.15
2026-07-05 13:10:45 +02:00
R. Ryantm
f0a5c3958a dcp: 0.25.1 -> 0.25.2 2026-07-05 11:06:33 +00:00
Fabian Affolter
e788bf2c74
python3Packages.pontos: migrate to finalAttrs 2026-07-05 13:04:44 +02:00
nixpkgs-ci[bot]
c4013e501c
opencode: 1.17.12 -> 1.17.13 (#538573) 2026-07-05 10:35:43 +00:00
nixpkgs-ci[bot]
a78ce032d7
etcd_3_5: 3.5.31 -> 3.5.32 (#538563) 2026-07-05 10:35:41 +00:00
nixpkgs-ci[bot]
b51495bc4d
emcee: 0.7.0 -> 0.8.0 (#538545) 2026-07-05 10:35:37 +00:00
nixpkgs-ci[bot]
d6dfc16a8d
skills: 1.5.13 -> 1.5.14 (#538257) 2026-07-05 10:35:27 +00:00
nixpkgs-ci[bot]
2c5c8c34d3
algia: 0.0.125 -> 0.0.130 (#537869) 2026-07-05 10:35:23 +00:00
Doron Behar
ce5b9e3a51
python3Packages.adbc-driver-manager: init at 1.11.0 (#534632) 2026-07-05 10:31:52 +00:00
Doron Behar
5bdd4b74fb python3Packages.adbc-driver-postgresql: init at 1.11.0 2026-07-05 13:24:36 +03:00
Doron Behar
445b1dab91 python3Packages.adbc-driver-bigquery: init at 1.11.0 2026-07-05 13:24:35 +03:00
Doron Behar
79b2a3cd2d python3Packages.adbc-driver-flightsql: init at 1.11.0 2026-07-05 13:24:35 +03:00
Doron Behar
d9e6eca554 python3Packages.adbc-driver-snowflake: init at 1.11.0 2026-07-05 13:24:35 +03:00
Doron Behar
9ce13a3050 python3Packages.adbc-driver-sqlite: init at 1.11.0 2026-07-05 13:24:35 +03:00
Doron Behar
8fb3a890e5 python3Packages.adbc-driver-manager: init at 1.11.0 2026-07-05 13:24:35 +03:00
Doron Behar
afb9cd82ef arrow-adbc: init at 23
https://github.com/apache/arrow-adbc
2026-07-05 13:24:35 +03:00
Doron Behar
b0492b791b python3Packages.nanoarrow: base upon top-level nanoarrow 2026-07-05 13:21:12 +03:00
Doron Behar
fae9fa8ca3 nanoarrow: init at 0.8.0
https://github.com/apache/arrow-nanoarrow
2026-07-05 13:21:12 +03:00
R. Ryantm
1202f81a75 cargo-feature-combinations: 0.0.54 -> 0.2.3 2026-07-05 10:14:36 +00:00
Marie Ramlow
e130efaf39
matterjs-server: 1.1.2 -> 1.1.7 (#538575) 2026-07-05 10:07:56 +00:00
R. Ryantm
cc7208bbea python3Packages.pipdeptree: 3.1.0 -> 3.1.1 2026-07-05 10:05:21 +00:00
Vonfry
0d0f425671
emacsPackages.ghostel: 0.39.0-unstable-2026-06-26 -> 0.41.0-unstable-2026-07-05 2026-07-05 17:57:34 +08:00
R. Ryantm
07a5504e19 python3Packages.pontos: 26.5.0 -> 26.6.0 2026-07-05 09:52:31 +00:00
nixpkgs-ci[bot]
9ce19649db
fzf-zsh-plugin: 1.0.0-unstable-2026-06-21 -> 1.0.0-unstable-2026-06-30 (#538622) 2026-07-05 09:45:49 +00:00
nixpkgs-ci[bot]
098f429e15
bazaar: 0.8.3 -> 0.9.0 (#538606) 2026-07-05 09:45:47 +00:00
nixpkgs-ci[bot]
08faccaf19
tpnote: 1.26.1 -> 1.26.4 (#538594) 2026-07-05 09:45:46 +00:00
Martin Weinelt
2b0ed548b1
freescout: 1.8.226 -> 1.8.229 (#538608) 2026-07-05 09:27:27 +00:00
Gaétan Lepage
8785426d7a
rocmPackages.{rocshmem,hipsparselt}: init at 7.2.3 (#538426) 2026-07-05 09:20:54 +00:00
Pol Dellaiera
edd273374c
syncthing: set meta.donationPage (#529786) 2026-07-05 09:20:13 +00:00
R. Ryantm
ab2f6986d2 fzf-zsh-plugin: 1.0.0-unstable-2026-06-21 -> 1.0.0-unstable-2026-06-30 2026-07-05 09:04:27 +00:00
Leona Maroni
353241cc4f
jetbrains.rider: 2026.1.2 -> 2026.1.4 (#532891) 2026-07-05 08:57:54 +00:00
Leona Maroni
10768adc60
jetbrains.idea: 2026.1.3 -> 2026.1.4 (#538492) 2026-07-05 08:57:44 +00:00
Leona Maroni
27e296e10b
jetbrains.pycharm: 2026.1.2 -> 2026.1.4 (#538490) 2026-07-05 08:57:18 +00:00
Leona Maroni
889743b032
jetbrains.phpstorm: 2026.1.3 -> 2026.1.4 (#538489) 2026-07-05 08:57:05 +00:00
Leona Maroni
5ac222a45e
jetbrains.goland: 2026.1.2 -> 2026.1.4 (#532821) 2026-07-05 08:56:46 +00:00
Leona Maroni
ae5f0dcb40
jetbrains.clion: 2026.1.2 -> 2026.1.4 (#532820) 2026-07-05 08:56:38 +00:00
Leona Maroni
104d952d50
jetbrains.ruby-mine: 2026.1.3 -> 2026.1.4 (#538486) 2026-07-05 08:56:30 +00:00
Leona Maroni
c33ada3c4c
jetbrains.rust-rover: 2026.1.3 -> 2026.1.4 (#538485) 2026-07-05 08:55:48 +00:00
isabel
f76955e386
immich: 2.7.5 -> 3.0.1 2026-07-05 09:53:31 +01:00
e1mo
c950d93be8
freescout: 1.8.226 -> 1.8.229
Primarily patches for security vulnerabilities and subsequent bugfixes.

- https://github.com/freescout-help-desk/freescout/releases/tag/1.8.227
- https://github.com/freescout-help-desk/freescout/releases/tag/1.8.228
- https://github.com/freescout-help-desk/freescout/releases/tag/1.8.229
2026-07-05 10:44:56 +02:00
nixpkgs-ci[bot]
0ea0aae82d
wayscriber: 0.9.20 -> 0.9.21 (#537782) 2026-07-05 08:44:06 +00:00
Doron Behar
8a64d605a7
nimlsp: 0.4.6 → 0.4.7 (#537634) 2026-07-05 08:37:56 +00:00
R. Ryantm
e05c72c89b bazaar: 0.8.3 -> 0.9.0 2026-07-05 08:34:42 +00:00
Fabian Affolter
8c278af4f8
python3Packages.aliyun-python-sdk-*: init (#538274) 2026-07-05 08:19:55 +00:00
Fabian Affolter
a4d5d4c151
sigma-cli: 3.0.2 -> 3.0.3 (#538461) 2026-07-05 08:17:51 +00:00
R. Ryantm
1937aa62b7 oh-my-posh: 29.19.0 -> 29.20.0 2026-07-05 08:16:42 +00:00
Vladimír Čunát
db052260ff
youtrack: 2026.1.13757 -> 2026.2.17012 (#538437) 2026-07-05 08:10:38 +00:00
Doron Behar
252c68dae6
rmapi: add wamserma to maintainers (#535517) 2026-07-05 08:02:11 +00:00
Pol Dellaiera
dbc18f1bda
mcp-server-filesystem: 2026.1.26 -> 2026.7.4 (#538560) 2026-07-05 08:01:54 +00:00
Pol Dellaiera
e10c2a2263
mcp-server-memory: 2026.1.26 -> 2026.7.4 (#538559) 2026-07-05 08:00:26 +00:00
Pol Dellaiera
2c6386f8ea
mcp-server-sequential-thinking: 2026.1.26 -> 2026.7.4 (#538558) 2026-07-05 07:59:35 +00:00
Doron Behar
abe4c0979b
nim: huge refactor of packages (#496960) 2026-07-05 07:42:20 +00:00
nixpkgs-ci[bot]
219b7bd143
codex: 0.142.3 -> 0.142.5 (#538566) 2026-07-05 07:37:31 +00:00
K900
21af0e8e78 nixos/lasuite-meet: add cronjobs for cleanup tasks 2026-07-05 10:07:10 +03:00
K900
96ec540b85 nixos/lasuite-meet: refactor systemd units 2026-07-05 10:03:56 +03:00
R. Ryantm
59ea75a823 tpnote: 1.26.1 -> 1.26.4 2026-07-05 07:00:46 +00:00
Ryan Hendrickson
669ebda586
nixos/immersed: openPorts -> openFirewall (#538582) 2026-07-05 06:19:51 +00:00
nixpkgs-ci[bot]
3279af024f
shotcut: 26.4.30 -> 26.6.25 (#532235) 2026-07-05 06:17:10 +00:00
Gavin John
b76bf041c7
nixos/immersed: openPorts -> openFirewall
The PR that added this is only a few hours old (https://github.com/NixOS/nixpkgs/pull/399766) and hasn't had the chance to enter an unstable released, which is why I haven't added a rename flag.
2026-07-05 01:13:47 -04:00
zowoq
93368df3b0
linux_xanmod, linux_xanmod_latest: 2026-07-04 (#538497) 2026-07-05 05:03:04 +00:00
R. Ryantm
f47146ff12 matterjs-server: 1.1.2 -> 1.1.7 2026-07-05 04:23:36 +00:00
R. Ryantm
1e6f5a1711 opencode: 1.17.12 -> 1.17.13 2026-07-05 04:14:56 +00:00
Donovan Glover
d407951447
xclock: 1.1.1 -> 1.2.0 (#538305) 2026-07-05 04:06:12 +00:00
Adam C. Stephens
2ef54b3bc3
jjui: 0.10.7 -> 0.10.8 (#538522) 2026-07-05 03:37:17 +00:00
R. Ryantm
d9546ea619 jetbrains.rider: 2026.1.2 -> 2026.1.4 2026-07-05 03:28:52 +00:00
Austin Horstman
08a5b5062b
tree-sitter: make tree-sitter-grammars an overridable scope (#537058) 2026-07-05 03:27:45 +00:00
nixpkgs-ci[bot]
1e63ba3b7b
secretspec: 0.12.2 -> 0.13.0 (#538557) 2026-07-05 03:18:54 +00:00
nixpkgs-ci[bot]
de45982bd7
django-upgrade: 1.30.0 -> 1.31.1 (#538108) 2026-07-05 03:18:34 +00:00
R. Ryantm
38bc3d8f2c codex: 0.142.3 -> 0.142.5 2026-07-05 03:17:10 +00:00
dotlambda
b6a8333e60
python3Packages.plotly: 6.7.0 -> 6.8.0 (#538423) 2026-07-05 03:09:20 +00:00
R. Ryantm
88ce6ae2b5 etcd_3_5: 3.5.31 -> 3.5.32 2026-07-05 02:51:04 +00:00
R. Ryantm
7ab80b1cef libretro.stella2014: 0-unstable-2026-04-12 -> 0-unstable-2026-07-04 2026-07-05 02:28:34 +00:00
Yaroslav Bolyukin
e3aa4813c2
python3Packages.plotly: 6.7.0 -> 6.8.0 2026-07-05 04:27:10 +02:00
Yaroslav Bolyukin
b04589a1a9
rocmPackages.hipsparselt: init at 7.2.3 2026-07-05 04:24:11 +02:00
Yaroslav Bolyukin
d38aeefdcb
rocmPackages.rocshmem: init at 7.2.3 2026-07-05 04:24:09 +02:00
R. Ryantm
fa2a9d1f39 mcp-server-filesystem: 2026.1.26 -> 2026.7.4 2026-07-05 02:06:51 +00:00
R. Ryantm
8469d65425 mcp-server-memory: 2026.1.26 -> 2026.7.4 2026-07-05 02:02:41 +00:00
R. Ryantm
e6de71bc8b mcp-server-sequential-thinking: 2026.1.26 -> 2026.7.4 2026-07-05 02:02:17 +00:00
R. Ryantm
9dbfa1b923 secretspec: 0.12.2 -> 0.13.0 2026-07-05 01:46:58 +00:00
Ryan Hendrickson
6edbf1a6a0
immersed: add option to open firewall ports and libraries for hardware encoding support (#399766) 2026-07-04 21:29:37 -04:00
Fabian Affolter
988d211719
diskwatch: 0.1.1 -> 0.1.2 (#538550) 2026-07-05 01:24:01 +00:00
taku0
190344bbe2
thunderbird-esr-bin-unwrapped: 140.12.0esr -> 140.12.1esr (#538241) 2026-07-05 01:15:08 +00:00
nixpkgs-ci[bot]
49f02c4b55
rqlite: 10.2.4 -> 10.2.6 (#538516) 2026-07-05 01:08:00 +00:00
nixpkgs-ci[bot]
e43cf449c4
mongodb-compass: 1.49.9 -> 1.49.10 (#538505) 2026-07-05 01:07:59 +00:00
Fabian Affolter
49ca9d4549
python3Packages.nicegui-highcharts: 3.2.1 -> 3.3.0 (#538452) 2026-07-05 00:59:45 +00:00
Fabian Affolter
6356ebaa3b
sigma-cli: migrate to finalAttrs 2026-07-05 02:59:18 +02:00
Fabian Affolter
0c0f6755ca
rmux: 0.7.0 -> 0.8.0 (#538478) 2026-07-05 00:57:15 +00:00
nixpkgs-ci[bot]
b7e393e2fb
code-cursor: 3.9.8 -> 3.9.16 (#538549) 2026-07-05 00:57:10 +00:00
zowoq
e836240c00
staging-nixos merge for 2026-07-05 (#538512) 2026-07-05 00:49:52 +00:00
R. Ryantm
cb3c5372ea diskwatch: 0.1.1 -> 0.1.2 2026-07-05 00:42:45 +00:00
R. Ryantm
419dbda9a0 code-cursor: 3.9.8 -> 3.9.16 2026-07-05 00:37:03 +00:00
zowoq
a3c62f7e25
kernel updates for 2026-07-05 (#538511) 2026-07-05 00:32:32 +00:00
nixpkgs-ci[bot]
7aba08e308
Merge master into staging-nixos 2026-07-05 00:39:09 +00:00
R. Ryantm
498e60d670 emcee: 0.7.0 -> 0.8.0 2026-07-05 00:25:40 +00:00
R. Ryantm
389d9db041 postgresqlPackages.pgvector: 0.8.3 -> 0.8.4 2026-07-04 23:33:48 +00:00
Jost Alemann
24e0dd57fe jjui: 0.10.7 -> 0.10.8
Changelog: https://github.com/idursun/jjui/releases/tag/v0.10.8
Diff: https://github.com/idursun/jjui/compare/v0.10.7...v0.10.8
2026-07-05 00:43:13 +02:00
Bart Oostveen
f95ba6fbb8
linux_5_10: 5.10.259 -> 5.10.260 2026-07-05 00:20:53 +02:00
Bart Oostveen
77c8470b04
linux_5_15: 5.15.210 -> 5.15.211 2026-07-05 00:20:41 +02:00
Bart Oostveen
072138c75f
linux_6_1: 6.1.176 -> 6.1.177 2026-07-05 00:20:29 +02:00
R. Ryantm
577b2f9cae rqlite: 10.2.4 -> 10.2.6 2026-07-04 22:20:19 +00:00
Bart Oostveen
5ec65ba580
linux_6_6: 6.6.143 -> 6.6.144 2026-07-05 00:20:17 +02:00
Bart Oostveen
c11603a192
linux_6_12: 6.12.94 -> 6.12.95 2026-07-05 00:20:04 +02:00
Bart Oostveen
feb9b141d7
linux_6_18: 6.18.37 -> 6.18.38 2026-07-05 00:19:52 +02:00
Bart Oostveen
d1f61e4f48
linux_7_1: 7.1.2 -> 7.1.3 2026-07-05 00:19:39 +02:00
R. Ryantm
6d9f3e3006 mongodb-compass: 1.49.9 -> 1.49.10 2026-07-04 22:01:36 +00:00
R. Ryantm
699f5ed187 seaweedfs: 4.36 -> 4.37 2026-07-04 21:51:28 +00:00
eljamm
f806e3ca4f linux_xanmod_latest: 7.0.14 -> 7.1.3
- Changelog: https://dl.xanmod.org/changelog/7.1/ChangeLog-7.1.3-xanmod1.gz
- Diff: https://gitlab.com/xanmod/linux/-/compare/7.0.14-xanmod1..7.1.3-xanmod1?from_project_id=51590166
2026-07-04 21:30:31 +00:00
eljamm
2976dad409 linux_xanmod: 6.18.37 -> 6.18.38
- Changelog: https://dl.xanmod.org/changelog/6.18/ChangeLog-6.18.38-xanmod1.gz
- Diff: https://gitlab.com/xanmod/linux/-/compare/6.18.37-xanmod1..6.18.38-xanmod1?from_project_id=51590166
2026-07-04 21:28:19 +00:00
R. Ryantm
7a865d1327 werf: 2.72.1 -> 2.73.0 2026-07-04 21:21:16 +00:00
dish
8cda5019af python3Packages.beets-importreplace: init at 0.3 2026-07-04 17:15:52 -04:00
R. Ryantm
5c0e5053ef jetbrains.idea: 2026.1.3 -> 2026.1.4 2026-07-04 21:02:05 +00:00
R. Ryantm
57a3c80790 jetbrains.pycharm: 2026.1.2 -> 2026.1.4 2026-07-04 20:54:37 +00:00
R. Ryantm
9107cb10c2 jetbrains.goland: 2026.1.2 -> 2026.1.4 2026-07-04 20:53:43 +00:00
R. Ryantm
125a0d91f9 jetbrains.phpstorm: 2026.1.3 -> 2026.1.4 2026-07-04 20:51:07 +00:00
R. Ryantm
7404316a8e jetbrains.clion: 2026.1.2 -> 2026.1.4 2026-07-04 20:50:25 +00:00
R. Ryantm
8ff45729fc jetbrains.ruby-mine: 2026.1.3 -> 2026.1.4 2026-07-04 20:40:31 +00:00
R. Ryantm
2f85997471 jetbrains.rust-rover: 2026.1.3 -> 2026.1.4 2026-07-04 20:40:10 +00:00
R. Ryantm
dcfe783382 rmux: 0.7.0 -> 0.8.0 2026-07-04 20:05:57 +00:00
R. Ryantm
abf8d5cce1 sigma-cli: 3.0.2 -> 3.0.3 2026-07-04 18:52:07 +00:00
nixpkgs-ci[bot]
310e8d19be
Merge master into staging-nixos 2026-07-04 18:23:29 +00:00
R. Ryantm
e256f0995a xaos: 4.3.5 -> 4.3.6 2026-07-04 18:22:20 +00:00
R. Ryantm
5c406c84ce python3Packages.nicegui-highcharts: 3.2.1 -> 3.3.0 2026-07-04 18:06:26 +00:00
Leona Maroni
0df1f0ce7a
youtrack: 2026.1.13757 -> 2026.2.17012
https://youtrack.jetbrains.com/releaseNotes?q=%23JT%20%23Resolved%20Released%20in%20build:%202026.2.16593&title=YouTrack+2026.2.16593+Release+Notes
https://youtrack.jetbrains.com/releaseNotes?q=%23JT%20%23Resolved%20Released%20in%20build:%202026.2.17012&title=YouTrack%202026.2.17012%20Release%20Notes

fixes:
- CVE-2026-57926
- CVE-2026-57925
- CVE-2026-57924
- CVE-2026-57923
- CVE-2026-57922
- CVE-2026-57921
2026-07-04 19:00:50 +02:00
Fabian Affolter
337d44a682 scoutsuite: init at 5.14.0
Multi-Cloud Security Auditing Tool

https://github.com/nccgroup/scoutsuite
2026-07-04 17:12:10 +02:00
Fabian Affolter
090187b7be python3Packages.httplib2shim: init at 0.0.2
Urllib3 sanity for httplib2 users

https://github.com/GoogleCloudPlatform/httplib2shim
2026-07-04 17:00:12 +02:00
Fabian Affolter
d5a8df3efe python3Packages.aliyun-python-sdk-*: init
Alibaba Cloud V1.0 SDK

https://github.com/aliyun/aliyun-openapi-python-sdk
2026-07-04 16:41:20 +02:00
Diogo Correia
f72d6ad3cd
bazarr: 1.5.6 -> 1.6.0 2026-07-04 15:31:27 +01:00
Nivayu
f2d0b08c73 syncthing: 2.1.0 -> 2.1.1 2026-07-04 15:25:41 +02:00
nixpkgs-ci[bot]
58203ceb74
Merge master into staging-nixos 2026-07-04 12:14:15 +00:00
bloominstrong
f4085e39b3 openvpn: 2.6.19 -> 2.6.21 2026-07-04 21:56:25 +10:00
Fabian Affolter
7399f6b846 python3Packages.aliyun-python-sdk: add update script 2026-07-04 10:54:47 +02:00
nixpkgs-ci[bot]
7668d1321c
Merge master into staging-nixos 2026-07-04 07:03:05 +00:00
Ihar Hrachyshka
186834db39
xclock: add booxter as maintainer 2026-07-04 01:17:52 -04:00
Ihar Hrachyshka
5b1f2ce84a
xclock: add version check 2026-07-04 01:17:22 -04:00
Ihar Hrachyshka
47584421cd
xclock: 1.1.1 -> 1.2.0
Diff: https://gitlab.freedesktop.org/xorg/app/xclock/-/compare/xclock-1.1.1...xclock-1.2.0

Among other changes, it fixes darwin with this patch:

fd4b44ea3b
2026-07-04 01:00:37 -04:00
nixpkgs-ci[bot]
bcdae09574
Merge master into staging-nixos 2026-07-04 00:37:24 +00:00
Fabian Affolter
5c5b842f2d python3Packages.aliyun-python-sdk-core: migrate to finalAttrs 2026-07-04 01:21:14 +02:00
Fabian Affolter
cbbc4fc273 python3Packages.aliyun-python-sdk-*: remove separate packages 2026-07-04 01:21:14 +02:00
Sandro Jäckel
bd17e6c544
python314Packages.notebook: quier lerna progress bar 2026-07-04 01:14:03 +02:00
R. Ryantm
a1c0d90abc skills: 1.5.13 -> 1.5.14 2026-07-03 22:29:54 +00:00
R. Ryantm
ab9d326784 shotcut: 26.4.30 -> 26.6.25 2026-07-03 22:05:57 +00:00
R. Ryantm
4040ad932c stevenblack-blocklist: 3.16.91 -> 3.16.94 2026-07-03 21:43:34 +00:00
Trolli Schmittlauch
f6c80b64e4 seafile-client: 9.0.15 -> 9.0.20
Changelog:
https://manual.seafile.com/latest/changelog/client-changelog/#9019-20260625

Contains a fix for an SQL injection vulnerability.
2026-07-03 23:31:45 +02:00
Trolli Schmittlauch
d953ceaefc seafile-client: add update script 2026-07-03 23:30:27 +02:00
R. Ryantm
355d67a12f thunderbird-esr-bin-unwrapped: 140.12.0esr -> 140.12.1esr 2026-07-03 21:22:50 +00:00
nixpkgs-ci[bot]
0548ab8a98
Merge master into staging-nixos 2026-07-03 18:30:08 +00:00
K900
86018282df lasuite-meet: 1.21.0 -> 1.22.0 2026-07-03 21:09:18 +03:00
Alyssa Ross
fda6ac90fd
linux_7_0: remove (#536138) 2026-07-03 14:15:01 +00:00
nixpkgs-ci[bot]
29c9cb0a5d
Merge master into staging-nixos 2026-07-03 12:40:33 +00:00
R. Ryantm
97ed749796 django-upgrade: 1.30.0 -> 1.31.1 2026-07-03 12:26:02 +00:00
R. Ryantm
2e1c087b61 docker: 29.6.0 -> 29.6.1 2026-07-03 11:59:30 +00:00
R. Ryantm
7d4a2692f6 ctranslate2: 4.8.0 -> 4.8.1 2026-07-03 09:34:56 +00:00
Gaétan Lepage
33cf957958
treewide: remove redundant SETUPTOOLS_SCM_PRETEND_VERSION setters (#537971) 2026-07-03 08:34:17 +00:00
nixpkgs-ci[bot]
f372ff6a7b
unifont: 17.0.04 -> 17.0.05 (#538036) 2026-07-03 07:18:16 +00:00
nixpkgs-ci[bot]
bf2b22c467
Merge master into staging-nixos 2026-07-03 07:08:07 +00:00
R. Ryantm
1254819b0d seafile-shared: 9.0.15 -> 9.0.20 2026-07-03 06:06:15 +00:00
R. Ryantm
3062c171a4 unifont: 17.0.04 -> 17.0.05 2026-07-03 05:46:44 +00:00
Martin Weinelt
bd6fb4b88d
treewide: remove redundant SETUPTOOLS_SCM_PRETEND_VERSION setters
The setuptools-scm setup script sets the env var to the derivation
version already.
2026-07-03 03:17:43 +02:00
nixpkgs-ci[bot]
d92897b9f6
Merge master into staging-nixos 2026-07-03 00:38:20 +00:00
mksafavi
f10c7fb552 ariang: Pin nodejs to version 22 2026-07-03 01:21:33 +03:30
nixpkgs-ci[bot]
ce2ebef6bb
Merge master into staging-nixos 2026-07-02 18:33:30 +00:00
R. Ryantm
82fba501b8 algia: 0.0.125 -> 0.0.130 2026-07-02 16:16:55 +00:00
nixpkgs-ci[bot]
aa677bb870
Merge master into staging-nixos 2026-07-02 14:29:29 +00:00
nixpkgs-ci[bot]
87882e03b3
Merge master into staging-nixos 2026-07-02 12:41:49 +00:00
R. Ryantm
5e8d032903 wayscriber: 0.9.20 -> 0.9.21 2026-07-02 12:18:24 +00:00
nixpkgs-ci[bot]
33866a368e
Merge master into staging-nixos 2026-07-02 08:24:57 +00:00
Gaétan Lepage
4c71d50f5a
ty: 0.0.55 -> 0.0.56 (#537632) 2026-07-02 08:17:03 +00:00
Thiago Kenji Okada
ee4339dcd9
nixos-rebuild-ng: fix too long TMPDIR detection (#537167) 2026-07-02 08:11:21 +00:00
nixpkgs-ci[bot]
2c8f0a5fd1
Merge master into staging-nixos 2026-07-02 07:10:28 +00:00
eveeifyeve
80f829b69a {mosdepth, nimlsp}: upgrade to nim
nim_lk: fix compatiblity with 2.2.8
2026-07-02 13:36:59 +10:00
eveeifyeve
53dc2ea05a nim: enable wrapper args for arm darwin
This fixes an issue where nim-gdb does find gdb in path
2026-07-02 13:36:59 +10:00
eveeifyeve
c996582058 nim-unwrapped: remove invalid gimportc from openssl patch
This fixes an issue with openssl patch in nim where gimportc was invalid
Co-authored-by: Jake Leahy <jake@leahy.dev>
2026-07-02 13:36:59 +10:00
eveeifyeve
eec3e392d1 nim-unwrapped: switch to actually bootstrapped compiler
This makes nim use a boostrappped compiler.
2026-07-02 13:36:59 +10:00
eveeifyeve
d5f3806901 buildNimPackage: warn of removal of requiredNimVersion
With the rise of the nim refractor this removes the need to specify
versions.

Co-authored-by: éclairevoyant
<848000+eclairevoyant@users.noreply.github.com>
2026-07-02 13:36:59 +10:00
eveeifyeve
81daafea8c nim: remove 1_0, 2_0 and 2_2 versions and aliases; nim: 2.2.4 -> 2.2.10
writers/writeNim: migrate package to nim
nim: remove nativeStacktraces and gnuReadline args
nim: use pname instead

It's time that we remove nim1, nim1 has been a package for a while and
nim has moved on during that time to the v2 versions.
It's also time that nim had some attention in nixpkgs and upgrade the
nim 2 versions.

Also fixes an issue with nim-unwrapped missing the pname and version.
See #485742 for more info.

Co-authored-by: éclairevoyant
<848000+eclairevoyant@users.noreply.github.com>
2026-07-02 13:36:59 +10:00
Viacheslav Lotsmanov
0bf1a1df67 nimlsp: 0.4.6 → 0.4.7 2026-07-02 05:16:03 +03:00
Jost Alemann
779b8dda77 ty: 0.0.55 -> 0.0.56
Changelog: https://github.com/astral-sh/ty/releases/tag/0.0.56
Diff: https://github.com/astral-sh/ty/compare/0.0.55...0.0.56
2026-07-02 03:56:22 +02:00
nixpkgs-ci[bot]
38f7252a80
Merge master into staging-nixos 2026-07-02 00:45:33 +00:00
Jeremy Fleischman
b484df8760
nixos-rebuild-ng: fix too long TMPDIR detection
This code tried to compute a `TMPDIR` short enough to guarantee OpenSSH
could create a unix socket underneath it. However, that computation was
flawed, as the logic predates our recent change from `%n` to `%C`:
f23bab4666

I ended up refactoring things here to put the ssh logic close to the
tmpdir logic. I think that's appropriate as they really need to stay in
sync, and this will hopefully help future developers keep them in sync.
(I briefly explored trying to write the code in a way that forces them
to stay in sync, but I abandoned that, as it made the code too obtuse.)

I've documented all the implementation details we depend on. I also
removed our assumptions on the behavior of Python's `tempfile` module:
we now just ask it for a tempdir and check the resulting length. Now nothing
will have to change in the future if Python starts using 9 characters
instead of 8 for avoiding name conflicts.

For the record, we ran into this over in ngipkgs:
https://github.com/ngi-nix/ngipkgs/issues/2300, which is what triggered
this investigation.
2026-07-01 15:26:54 -07:00
Sandro Jäckel
a48a99c881
headplane: 0.6.2 -> 0.6.3
Diff: https://github.com/tale/headplane/compare/v0.6.2...v0.6.3

Changelog: https://github.com/tale/headplane/releases/tag/0.6.3
2026-07-01 23:18:06 +02:00
R. Ryantm
96f486ba97 interval-tree: 3.1.1 -> 3.1.2 2026-07-01 20:29:48 +00:00
nixpkgs-ci[bot]
d10cd2bd6e
Merge master into staging-nixos 2026-07-01 18:41:34 +00:00
nixpkgs-ci[bot]
528e9e995d
Merge master into staging-nixos 2026-07-01 12:59:51 +00:00
nixpkgs-ci[bot]
9d49bf5db1
Merge master into staging-nixos 2026-07-01 07:33:14 +00:00
Austin Horstman
0a53614dbb
tree-sitter: document grammar scope overrides
Document overrideScope as the supported extension point and the scoped grammar-only views (derivations, allGrammars, withPlugins) that consumers should iterate.
2026-06-30 22:07:45 -05:00
Austin Horstman
a8fad7e641
helix: use top-level tree-sitter grammars
Apply Helix's locked grammar overlay to pkgs.tree-sitter-grammars so global grammar-scope overrides compose through the public extension point.
2026-06-30 22:07:45 -05:00
Austin Horstman
f8a16a3068
tree-sitter-grammars: consume scoped package set
Read grammars from the public tree-sitter-grammars scope, via its derivations and allGrammars views, in emacs treesit-grammars, diffsitter, the python bindings, and nvim-treesitter, instead of tree-sitter.builtGrammars. An overrideScope override of the set now propagates to these packages.
2026-06-30 22:07:45 -05:00
Austin Horstman
f88c486429
tree-sitter: make tree-sitter-grammars an overridable scope
pkgs.tree-sitter-grammars was a flat recurseIntoAttrs of builtGrammars. Point it at the existing grammarsScope so it carries .overrideScope, and add grammar-only views to that scope — derivations (attrset), allGrammars (non-broken list), and withPlugins — so it stays iterable alongside the package-set helpers. builtGrammars remains the stock, non-overridden set.
2026-06-30 22:07:45 -05:00
nixpkgs-ci[bot]
825684a9ed
Merge master into staging-nixos 2026-07-01 00:48:31 +00:00
nixpkgs-ci[bot]
0f6198ead0
Merge master into staging-nixos 2026-06-30 18:39:23 +00:00
nixpkgs-ci[bot]
46b3813466
Merge master into staging-nixos 2026-06-30 12:44:02 +00:00
nixpkgs-ci[bot]
c89302ee3b
Merge master into staging-nixos 2026-06-30 07:20:55 +00:00
nixpkgs-ci[bot]
d8dde85002
Merge master into staging-nixos 2026-06-30 00:46:21 +00:00
nixpkgs-ci[bot]
5c93921c7d
Merge master into staging-nixos 2026-06-29 18:43:18 +00:00
nixpkgs-ci[bot]
f920968a0d
Merge master into staging-nixos 2026-06-29 15:35:53 +00:00
nixpkgs-ci[bot]
4998090674
Merge master into staging-nixos 2026-06-29 13:31:22 +00:00
Maximilian Bosch
26bafa1f8d
nixos/test-driver: deprecate shell_interact() (#535097) 2026-06-29 13:05:59 +00:00
Maximilian Bosch
5da4d05168
nixos/test-driver: keep nspawn notify socket drained after boot (#533429) 2026-06-29 10:33:21 +00:00
Mio
2a663a3c3a wrangler: fix build on darwin 2026-06-29 22:10:23 +12:00
nixpkgs-ci[bot]
a8bdba44f5
Merge master into staging-nixos 2026-06-29 07:46:01 +00:00
nixpkgs-ci[bot]
66ab2b2204
Merge master into staging-nixos 2026-06-29 04:47:08 +00:00
nixpkgs-ci[bot]
ffa3021565
Merge master into staging-nixos 2026-06-29 00:48:01 +00:00
nixpkgs-ci[bot]
f20ea84bef
Merge master into staging-nixos 2026-06-28 18:27:33 +00:00
nixpkgs-ci[bot]
0d36a7a95a
Merge master into staging-nixos 2026-06-28 17:12:05 +00:00
nixpkgs-ci[bot]
ceaafd4f92
Merge master into staging-nixos 2026-06-28 12:31:11 +00:00
Gaétan Lepage
0db7be1ac6
ty: 0.0.54 -> 0.0.55 (#536078) 2026-06-28 11:04:52 +00:00
nixpkgs-ci[bot]
03893d1cee
Merge master into staging-nixos 2026-06-28 07:24:10 +00:00
nixpkgs-ci[bot]
dfb275a246
Merge master into staging-nixos 2026-06-28 00:46:35 +00:00
zowoq
2594192c4c linux_7_0: remove
EOL
2026-06-28 09:20:45 +10:00
nixpkgs-ci[bot]
a44f3ed123
Merge master into staging-nixos 2026-06-27 18:27:32 +00:00
Jost Alemann
b11d66d837 ty: 0.0.54 -> 0.0.55
Changelog: https://github.com/astral-sh/ty/releases/tag/0.0.55
Diff: https://github.com/astral-sh/ty/compare/0.0.54...0.0.55
2026-06-27 19:24:05 +02:00
nixpkgs-ci[bot]
3de05efd65
Merge master into staging-nixos 2026-06-27 12:05:58 +00:00
Maximilian Bosch
59249b1624
nixos/test-driver: show deprecation warnings in the REPL
Apparently this wasn't the case before, but now it is

    In [3]: machine.shell_interact()
    ??? Warning (DeprecationWarning): Use the SSH backdoor instead
        File "<ipython-input-3-4e72ea6a987e>", line 1
2026-06-26 12:27:42 +02:00
Maximilian Bosch
b9706678ac
nixos/test-driver: deprecate shell_interact()
Reviewing #512771 got me thinking and I'm not sure I see a good reason
to keep this method given the SSH backdoor functionality has a much
better UX.

I'd propose we deprecate it, await 26.11 to see if people complain and
remove it alltogether after that.
2026-06-26 12:27:41 +02:00
Markus Wamser
fb67013870 rmapi: add wamserma to maintainers 2026-06-26 09:10:01 +02:00
cinereal
be55bcfa50
nixos/test-driver: keep nspawn notify socket drained after boot
The nspawn test machine passes a driver-owned AF_UNIX SOCK_DGRAM socket as the
container's NOTIFY_SOCKET (systemd-nspawn --notify-ready=yes). The driver only
drained it while waiting for the initial READY=1 during boot.

A container's PID 1 re-sends READY=1 on every `systemctl daemon-reexec` (the
same Manager.Reexecute that switch-to-configuration issues whenever the systemd
package changed). With nothing draining the socket after boot, its receive
buffer fills and PID 1 blocks in sendmsg() to NOTIFY_SOCKET (wchan
unix_wait_for_peer) while re-executing, so it never finishes re-initializing.
From then on every in-container `systemctl` call hangs or fails with
'Transport endpoint is not connected', which hangs wait_for_unit /
switch-to-configuration for the full timeout. QEMU nodes have no such notify
socket and are unaffected.

Drain the notify socket in a dedicated daemon thread for the container's whole
lifetime so PID 1 never blocks on the re-exec READY=1 send. Readiness and the
leader PID are now read from that thread's state instead of polling the socket
inline during boot.

Assisted-by: Claude:claude-opus-4-8
2026-06-25 23:38:28 +02:00
cinereal
4a9210e1ec
nixos/tests: add nspawn-daemon-reexec-dbus repro
Loops `systemctl daemon-reexec` inside a systemd-nspawn test container and
asserts the in-container D-Bus stays usable afterwards. On affected systemd
under nspawn, one of the re-execs wedges PID 1 (it never finishes
re-initialising after the re-exec), and every later `systemctl` call hangs or
returns 'Transport endpoint is not connected'. The identical loop on a QEMU
node survives indefinitely, so the test is nspawn-specific.

Assisted-by: Claude:claude-opus-4-8
2026-06-25 23:38:23 +02:00
kenis
a39323f036 snipaste: add macOS support 2026-06-24 16:38:45 +08:00
ken.huang1
7b8af50730 snipaste: 2.10.8 -> 2.11.3
https://www.snipaste.com/linux_version
2026-06-24 16:22:07 +08:00
Thomas Gerbet
d528156e99 mysql84: 8.4.9 -> 8.4.10
https://dev.mysql.com/doc/relnotes/mysql/8.4/en/news-8-4-10.html

Fixes CVE-2026-46863.
2026-06-21 18:09:01 +02:00
𝑷𝒉𝒊𝒍𝒐𝒄𝒂𝒍𝒚𝒔𝒕
ac6d3384c5 taisei: fix darwin build 2026-06-09 21:24:07 -04:00
𝑷𝒉𝒊𝒍𝒐𝒄𝒂𝒍𝒚𝒔𝒕
439e1a48e9 taisei: added changelog 2026-06-09 21:23:46 -04:00
Jost Alemann
d81d1a7fd6 syncthing: set meta.donationPage 2026-06-09 08:57:49 +02:00
𝑷𝒉𝒊𝒍𝒐𝒄𝒂𝒍𝒚𝒔𝒕
99d0d6055b
taisei: added philocalyst as maintainer 2026-05-19 12:02:55 -04:00
R. Ryantm
d9acd4c932 firezone-gateway: 1.4.18 -> 1.5.2 2026-05-05 09:18:25 +00:00
Alessio Caiazza
c79c23b4ab
nixos/cloudlog: fix QSL image serving and assets management
This change enables Cloudlog to properly manage additional media and asset
files by making these directories writable, persistent, and available from the
web server.
2025-10-24 16:16:07 +02:00
Riccardo Sacchetto
2db0455735
immersed: add libraries to support Intel hardware encoding 2025-04-21 16:27:22 +02:00
Riccardo Sacchetto
aa2ccac114
nixos/immersed: add option to open firewall ports 2025-04-21 16:25:33 +02:00
206 changed files with 4408 additions and 1755 deletions

View file

@ -70,7 +70,7 @@ rec {
};
parse = pkgs.lib.recurseIntoAttrs {
nix_latest = pkgs.callPackage ./parse.nix { nix = pkgs.nixVersions.latest; };
nix_2_28 = pkgs.callPackage ./parse.nix { nix = pkgs.nixVersions.nix_2_28; };
stable = pkgs.callPackage ./parse.nix { nix = pkgs.nixVersions.stable; };
lix = pkgs.callPackage ./parse.nix { nix = pkgs.lix; };
lix_latest = pkgs.callPackage ./parse.nix { nix = pkgs.lixPackageSets.latest.lix; };
};

View file

@ -9,9 +9,9 @@
},
"branch": "nixpkgs-unstable",
"submodules": false,
"revision": "8c91a71d13451abc40eb9dae8910f972f979852f",
"url": "https://github.com/NixOS/nixpkgs/archive/8c91a71d13451abc40eb9dae8910f972f979852f.tar.gz",
"hash": "sha256-fnzKKPvS+oieI/pTzotA5tkoM47EB1NpaBcgk4R97hE="
"revision": "6edbf1a6a03e75886a6609c088801a0856449e88",
"url": "https://github.com/NixOS/nixpkgs/archive/6edbf1a6a03e75886a6609c088801a0856449e88.tar.gz",
"hash": "sha256-0lkauQbtrljJqwtzTCILPAiHAJyMvn6XDo264moDv30="
}
},
"version": 8

View file

@ -1,5 +1,5 @@
#!/usr/bin/env nix-shell
#!nix-shell -i bash -p npins -I nixpkgs=../
#!nix-shell -i bash -E 'with import ../. {}; mkShell { packages = [ npins ]; }'
set -euo pipefail

View file

@ -70,6 +70,8 @@
- `rebuilderd` has been updated to 0.27.0 introducing breaking changes. See upstream changelog for details: [0.26.0](https://github.com/kpcyrd/rebuilderd/releases/tag/v0.26.0), [0.27.0](https://github.com/kpcyrd/rebuilderd/releases/tag/v0.27.0)
- Starting with v14, `flameshot` will primarily utilise xdg-desktop-portal calls for screenshotting. This will directly affect users on X11 window managers due to the lack of a compatible portal with Screenshot feature. See [upstream changelog](https://github.com/flameshot-org/flameshot/releases/tag/v14.0.0) or [NixOS Flameshot](https://wiki.nixos.org/wiki/Flameshot) wiki page for workarounds.
- `nim1` and respective aliases have been removed due to entering EOL; please migrate to `nim` or `nim-unwrapped` (nim 2).
- `nim-2_0` & `nim-2_2` and respective aliases have been removed; please migrate to `nim` or `nim-unwrapped` (nim 2.2.10).
## Other Notable Changes {#sec-nixpkgs-release-26.11-notable-changes}

View file

@ -411,8 +411,8 @@
};
aaravrav = {
name = "aaravrav";
github = "Aarav";
githubId = 3279912;
github = "aaravrav";
githubId = 37036762;
};
aarnphm = {
email = "contact@aarnphm.xyz";

View file

@ -43,6 +43,11 @@ test script).
## Shell access to VMs in interactive mode {#sec-nixos-test-shell-access}
::: {.warning}
Using `shell_interact()` is deprecated. Use the
[interactive SSH backdoor](#sec-nixos-test-ssh-access) instead.
:::
The function `<yourmachine>.shell_interact()` grants access to a shell running
inside a virtual machine. To use it, replace `<yourmachine>` with the name of a
virtual machine defined in the test, for example: `machine.shell_interact()`.

View file

@ -75,6 +75,8 @@
- `komodo` has been updated to the v2 release line (2.x). See the [upstream v1 → v2 upgrade guide](https://github.com/moghtech/komodo/releases/tag/v2.0.0).
- The `shell_interact()` function on interactive runs of NixOS VM tests has been deprecated. Use the SSH backdoor instead.
- `security.run0.enableSudoAlias` now uses the `run0-sudo-shim` instead of a shell-script to improve compatibility.
- With `system.etc.overlay.mutable = false`, NixOS now ships an empty `/etc/machine-id` in the image. Previously the file was absent and systemd logged `System cannot boot: Missing /etc/machine-id and /etc/ is read-only` while `ConditionFirstBoot` fired on every boot. With this change, systemd now overlays a transient ID from `/run/machine-id` for the session, and `systemd-machine-id-commit.service` has `ConditionFirstBoot` so it writes the machine-id through to a persistent backing file when one is bind-mounted over `/etc/machine-id`. To persist the machine-id across reboots, bind-mount a writable file containing `uninitialized` over `/etc/machine-id` from the initrd, or set `systemd.machine_id=` on the kernel command line (use `systemd.machine_id=firmware` to derive a stable ID on hardware that supports it).

View file

@ -6,6 +6,7 @@ import warnings
from pathlib import Path
import ptpython.ipython
import ptpython.repl
from colorama import Fore, Style
from test_driver.debug import Debug, DebugAbstract, DebugNop
@ -174,6 +175,7 @@ def main() -> None:
if args.interactive:
history_dir = os.getcwd()
history_path = os.path.join(history_dir, ".nixos-test-history")
ptpython.repl.enable_deprecation_warnings()
ptpython.ipython.embed(
user_ns=driver.test_symbols(),
history_filename=history_path,

View file

@ -908,6 +908,7 @@ class QemuMachine(BaseMachine):
return (rc, output.decode(errors="replace"))
@warnings.deprecated("Use the SSH backdoor instead")
def shell_interact(self, address: str | None = None) -> None:
"""
Allows you to directly interact with the guest shell. This should
@ -1450,6 +1451,7 @@ class NspawnMachine(BaseMachine):
machine_sock_path: Path
machine_sock: socket.socket | None
notify_thread: threading.Thread | None
@staticmethod
def machine_name_from_start_command(start_command: str) -> str:
@ -1480,6 +1482,12 @@ class NspawnMachine(BaseMachine):
self.start_command = start_command
self.process = None
self.notify_thread = None
# State maintained by the notify-socket drainer thread (see
# `_drain_notify_socket`). Guarded by `_notify_lock`.
self._notify_lock = threading.Lock()
self._notify_ready = False
self._notify_leader_pid: int | None = None
self.machine_sock_path = self.tmp_dir / f"{self.name}-nspawn.sock"
@ -1514,43 +1522,76 @@ class NspawnMachine(BaseMachine):
def is_up(self) -> bool:
return self.process is not None
def _poll_socket(self) -> tuple[bool, int | None]:
"""Non-blocking check of container status via socket.
Returns (is_ready, leader_pid).
def _drain_notify_socket(self) -> None:
"""Continuously drain the container's `sd_notify` socket (NOTIFY_SOCKET)
for the whole lifetime of the container, recording readiness and the
leader PID as they arrive.
Draining must not stop after boot: the container's PID 1 re-sends
`READY=1` on every `systemctl daemon-reexec` (the same Manager.Reexecute
that switch-to-configuration issues on a systemd change). If nothing
reads the socket, its receive buffer fills and PID 1 blocks in
`sendmsg()` to NOTIFY_SOCKET while re-executing -- it never finishes
re-initializing, and every later `systemctl` call inside the container
hangs or fails with `Transport endpoint is not connected`.
"""
assert self.machine_sock is not None
ready = False
leader_pid = None
try:
data, _ = self.machine_sock.recvfrom(4096)
msg = data.decode()
for line in msg.splitlines():
sock = self.machine_sock
proc = self.process
assert proc is not None
# Bound the thread to the container's lifetime: on
# `wait_for_shutdown()` only non-None `proc.poll()` ends the loop.
# On exit of PID 1, any datagrams still queued are stale, so drop them.
while proc.poll() is None:
try:
# Block (with a timeout so we notice the container exiting)
# rather than busy-poll; we just need to keep the buffer empty.
sock.settimeout(0.5)
data, _ = sock.recvfrom(4096)
except (TimeoutError, BlockingIOError):
continue
except OSError:
break
ready = False
leader_pid = None
for line in data.decode(errors="replace").splitlines():
if line == "READY=1":
ready = True
if line.startswith("X_NSPAWN_LEADER_PID="):
leader_pid = int(line.split("=")[1])
except OSError:
pass
return ready, leader_pid
if ready or leader_pid is not None:
with self._notify_lock:
if ready:
self._notify_ready = True
if leader_pid is not None:
self._notify_leader_pid = leader_pid
@cached_property
def get_systemd_process(self) -> int:
"""Block until startup is complete and return the PID of the container's systemd process."""
assert self.process is not None
"""Block until startup is complete and return the PID of the container's systemd process.
container_pid: int | None = None
is_ready = False
Readiness and the leader PID are reported over NOTIFY_SOCKET, which is
drained by `_drain_notify_socket` (started in `start()`); we just wait
for that thread to record both.
"""
assert self.process is not None
start_time = time.monotonic()
last_warning = start_time
delay = 0.01
max_delay = 0.5
while not is_ready or container_pid is None:
# Poll the socket until we have the container leader PID
# Poll the socket until we have the container leader PID
while True:
if self.process.poll() is not None:
raise MachineError("systemd-nspawn process exited unexpectedly")
with self._notify_lock:
is_ready = self._notify_ready
container_pid = self._notify_leader_pid
if is_ready and container_pid is not None:
return container_pid
# Print periodic warnings every 10s so the user knows we aren't deadlocked
now = time.monotonic()
if now - last_warning > 10.0:
@ -1559,18 +1600,8 @@ class NspawnMachine(BaseMachine):
)
last_warning = now
# Poll and update our local tracking variables
ready_now, pid_now = self._poll_socket()
if ready_now:
is_ready = True
if pid_now:
container_pid = pid_now
if not (is_ready and container_pid):
time.sleep(delay)
delay = min(delay * 2, max_delay)
return container_pid
time.sleep(delay)
delay = min(delay * 2, max_delay)
def _execute(
self,
@ -1684,7 +1715,6 @@ class NspawnMachine(BaseMachine):
self.machine_sock = socket.socket(family=socket.AF_UNIX, type=socket.SOCK_DGRAM)
self.machine_sock.bind(str(self.machine_sock_path))
self.machine_sock.setblocking(False)
self.process = subprocess.Popen(
[self.start_command],
@ -1700,6 +1730,13 @@ class NspawnMachine(BaseMachine):
self.log(f"systemd-nspawn running (pid {self.process.pid})")
# Keep the notify socket drained for the container's whole lifetime, so
# PID 1 never blocks re-sending `READY=1` on `daemon-reexec`.
self.notify_thread = threading.Thread(
target=self._drain_notify_socket, daemon=True
)
self.notify_thread.start()
journal_thread = threading.Thread(target=self._stream_journal, daemon=True)
journal_thread.start()

View file

@ -26,6 +26,12 @@ in
programs.immersed = {
enable = lib.mkEnableOption "immersed";
openFirewall = lib.mkOption {
type = lib.types.bool;
default = false;
description = "Whether to open firewall ports for Immersed";
};
package = lib.mkPackageOption pkgs "immersed" { };
};
};
@ -43,6 +49,15 @@ in
};
environment.systemPackages = [ cfg.package ];
# https://immersed.helpscoutdocs.com/article/23-connection-troubleshooting-linux
networking.firewall = lib.mkIf cfg.openFirewall {
allowedTCPPorts = [ 21000 ];
allowedUDPPorts = [
21000
21010
];
};
};
meta.maintainers = pkgs.immersed.meta.maintainers;

View file

@ -62,17 +62,14 @@ let
ln -s ${configFile} $out/application/config/config.php
ln -s ${dbFile} $out/application/config/database.php
# make a copy of the original assets/json to prime the datadir
cp -a "$out/assets/json/" "$out/assets/json.original/"
# link writable directories
for directory in updates uploads backup logbook; do
for directory in updates uploads backup logbook assets/qslcard images/eqsl_card_images assets/sstvimages assets/json; do
rm -rf $out/$directory
ln -s ${cfg.dataDir}/$directory $out/$directory
done
# link writable asset files
for asset in dok sota wwff; do
rm -rf $out/assets/json/$asset.txt
ln -s ${cfg.dataDir}/assets/json/$asset.txt $out/assets/json/$asset.txt
done
'';
};
in
@ -503,13 +500,26 @@ in
group = config.services.nginx.group;
in
[
"d ${cfg.dataDir} 0750 ${cfg.user} ${group} - -"
"d ${cfg.dataDir}/updates 0750 ${cfg.user} ${group} - -"
"d ${cfg.dataDir}/uploads 0750 ${cfg.user} ${group} - -"
"d ${cfg.dataDir}/backup 0750 ${cfg.user} ${group} - -"
"d ${cfg.dataDir}/logbook 0750 ${cfg.user} ${group} - -"
"d ${cfg.dataDir}/assets/json 0750 ${cfg.user} ${group} - -"
"d ${cfg.dataDir}/assets/qslcard 0750 ${cfg.user} ${group} - -"
"d ${cfg.dataDir} 0750 ${cfg.user} ${group} - -"
"d ${cfg.dataDir}/updates 0750 ${cfg.user} ${group} - -"
"d ${cfg.dataDir}/uploads 0750 ${cfg.user} ${group} - -"
"d ${cfg.dataDir}/backup 0750 ${cfg.user} ${group} - -"
"d ${cfg.dataDir}/logbook 0750 ${cfg.user} ${group} - -"
"d ${cfg.dataDir}/assets 0750 ${cfg.user} ${group} - -"
"d ${cfg.dataDir}/assets/json 0750 ${cfg.user} ${group} - -"
"d ${cfg.dataDir}/assets/qslcard 0750 ${cfg.user} ${group} - -"
"d ${cfg.dataDir}/assets/sstvimages 0750 ${cfg.user} ${group} - -"
"d ${cfg.dataDir}/images 0750 ${cfg.user} ${group} - -"
"d ${cfg.dataDir}/images/eqsl_card_images 0750 ${cfg.user} ${group} - -"
"C ${cfg.dataDir}/assets/json/dok.txt 0640 ${cfg.user} ${group} - ${package}/assets/json.original/dok.txt"
"C ${cfg.dataDir}/assets/json/pota.txt 0640 ${cfg.user} ${group} - ${package}/assets/json.original/pota.txt"
"C ${cfg.dataDir}/assets/json/satellite_data.json 0640 ${cfg.user} ${group} - ${package}/assets/json.original/satellite_data.json"
"C ${cfg.dataDir}/assets/json/sota.txt 0640 ${cfg.user} ${group} - ${package}/assets/json.original/sota.txt"
"C ${cfg.dataDir}/assets/json/US_counties.csv 0640 ${cfg.user} ${group} - ${package}/assets/json.original/US_counties.csv"
"C ${cfg.dataDir}/assets/json/us_national_parksontheair.csv 0640 ${cfg.user} ${group} - ${package}/assets/json.original/us_national_parksontheair.csv"
"C ${cfg.dataDir}/assets/json/WABSquares.geojson 0640 ${cfg.user} ${group} - ${package}/assets/json.original/WABSquares.geojson"
"C ${cfg.dataDir}/assets/json/wwff.txt 0640 ${cfg.user} ${group} - ${package}/assets/json.original/wwff.txt"
"C+ ${cfg.dataDir}/assets/json/datatables_languages 0750 ${cfg.user} ${group} - ${package}/assets/json.original/datatables_languages"
];
};

View file

@ -36,48 +36,62 @@ let
toString value
) cfg.settings;
commonServiceConfig = {
RuntimeDirectory = "lasuite-meet";
StateDirectory = "lasuite-meet";
WorkingDirectory = "/var/lib/lasuite-meet";
commonSystemdConfig = {
after = [
"network.target"
]
++ (optional cfg.postgresql.createLocally "postgresql.service")
++ (optional cfg.redis.createLocally "redis-lasuite-meet.service");
User = "lasuite-meet";
DynamicUser = true;
SupplementaryGroups = mkIf cfg.redis.createLocally [
config.services.redis.servers.lasuite-meet.group
];
# hardening
AmbientCapabilities = "";
CapabilityBoundingSet = [ "" ];
DevicePolicy = "closed";
LockPersonality = true;
NoNewPrivileges = true;
PrivateDevices = true;
PrivateTmp = true;
PrivateUsers = true;
ProcSubset = "pid";
ProtectClock = true;
ProtectControlGroups = true;
ProtectHome = true;
ProtectHostname = true;
ProtectKernelLogs = true;
ProtectKernelModules = true;
ProtectKernelTunables = true;
ProtectProc = "invisible";
ProtectSystem = "strict";
RemoveIPC = true;
RestrictAddressFamilies = [
"AF_INET"
"AF_INET6"
"AF_UNIX"
];
RestrictNamespaces = true;
RestrictRealtime = true;
RestrictSUIDSGID = true;
SystemCallArchitectures = "native";
MemoryDenyWriteExecute = true;
EnvironmentFile = optional (cfg.environmentFile != null) cfg.environmentFile;
UMask = "0077";
wants =
(optional cfg.postgresql.createLocally "postgresql.service")
++ (optional cfg.redis.createLocally "redis-lasuite-meet.service");
environment = pythonEnvironment;
serviceConfig = {
RuntimeDirectory = "lasuite-meet";
StateDirectory = "lasuite-meet";
WorkingDirectory = "/var/lib/lasuite-meet";
User = "lasuite-meet";
DynamicUser = true;
SupplementaryGroups = mkIf cfg.redis.createLocally [
config.services.redis.servers.lasuite-meet.group
];
# hardening
AmbientCapabilities = "";
CapabilityBoundingSet = [ "" ];
DevicePolicy = "closed";
LockPersonality = true;
NoNewPrivileges = true;
PrivateDevices = true;
PrivateTmp = true;
PrivateUsers = true;
ProcSubset = "pid";
ProtectClock = true;
ProtectControlGroups = true;
ProtectHome = true;
ProtectHostname = true;
ProtectKernelLogs = true;
ProtectKernelModules = true;
ProtectKernelTunables = true;
ProtectProc = "invisible";
ProtectSystem = "strict";
RemoveIPC = true;
RestrictAddressFamilies = [
"AF_INET"
"AF_INET6"
"AF_UNIX"
];
RestrictNamespaces = true;
RestrictRealtime = true;
RestrictSUIDSGID = true;
SystemCallArchitectures = "native";
MemoryDenyWriteExecute = true;
EnvironmentFile = optional (cfg.environmentFile != null) cfg.environmentFile;
UMask = "0077";
};
};
in
{
@ -342,74 +356,54 @@ in
};
config = mkIf cfg.enable {
systemd.services.lasuite-meet = {
description = "Meet from SuiteNumérique";
after = [
"network.target"
]
++ (optional cfg.postgresql.createLocally "postgresql.service")
++ (optional cfg.redis.createLocally "redis-lasuite-meet.service");
systemd.services.lasuite-meet = lib.mkMerge [
{
description = "Meet from SuiteNumérique";
wants =
(optional cfg.postgresql.createLocally "postgresql.service")
++ (optional cfg.redis.createLocally "redis-lasuite-meet.service");
wantedBy = [ "multi-user.target" ];
wantedBy = [ "multi-user.target" ];
preStart = ''
if [ ! -f .version ]; then
touch .version
fi
${optionalString (cfg.secretKeyPath == null) ''
if [[ ! -f /var/lib/lasuite-meet/django_secret_key ]]; then
(
umask 0377
tr -dc A-Za-z0-9 < /dev/urandom | head -c64 | ${pkgs.moreutils}/bin/sponge /var/lib/lasuite-meet/django_secret_key
)
preStart = ''
if [ ! -f .version ]; then
touch .version
fi
''}
if [ "${cfg.package.version}" != "$(cat .version)" ]; then
${getExe cfg.package} migrate
echo -n "${cfg.package.version}" > .version
fi
'';
environment = pythonEnvironment;
${optionalString (cfg.secretKeyPath == null) ''
if [[ ! -f /var/lib/lasuite-meet/django_secret_key ]]; then
(
umask 0377
tr -dc A-Za-z0-9 < /dev/urandom | head -c64 | ${pkgs.moreutils}/bin/sponge /var/lib/lasuite-meet/django_secret_key
)
fi
''}
if [ "${cfg.package.version}" != "$(cat .version)" ]; then
${getExe cfg.package} migrate
echo -n "${cfg.package.version}" > .version
fi
'';
serviceConfig = {
BindReadOnlyPaths = "${cfg.package}/share/static:/var/lib/lasuite-meet/static";
serviceConfig = {
BindReadOnlyPaths = "${cfg.package}/share/static:/var/lib/lasuite-meet/static";
ExecStart = utils.escapeSystemdExecArgs (
[
(lib.getExe' cfg.package "gunicorn")
"--bind=${cfg.bind}"
]
++ cfg.gunicorn.extraArgs
++ [ "meet.wsgi:application" ]
);
ExecStart = utils.escapeSystemdExecArgs (
[
(lib.getExe' cfg.package "gunicorn")
"--bind=${cfg.bind}"
]
++ cfg.gunicorn.extraArgs
++ [ "meet.wsgi:application" ]
);
};
}
// commonServiceConfig;
};
commonSystemdConfig
];
systemd.services.lasuite-meet-celery = {
description = "Meet Celery broker from SuiteNumérique";
after = [
"network.target"
]
++ (optional cfg.postgresql.createLocally "postgresql.service")
++ (optional cfg.redis.createLocally "redis-lasuite-meet.service");
systemd.services.lasuite-meet-celery = lib.mkMerge [
{
description = "Meet Celery broker from SuiteNumérique";
wants =
(optional cfg.postgresql.createLocally "postgresql.service")
++ (optional cfg.redis.createLocally "redis-lasuite-meet.service");
wantedBy = [ "multi-user.target" ];
wantedBy = [ "multi-user.target" ];
environment = pythonEnvironment;
serviceConfig = {
ExecStart = utils.escapeSystemdExecArgs (
serviceConfig.ExecStart = utils.escapeSystemdExecArgs (
[ (lib.getExe' cfg.package "celery") ]
++ cfg.celery.extraArgs
++ [
@ -418,8 +412,26 @@ in
]
);
}
// commonServiceConfig;
};
commonSystemdConfig
];
systemd.services.lasuite-meet-clean-pending-files = lib.mkMerge [
{
description = "Scheduled job to clean up pending uploads from LaSuite Meet";
startAt = "daily";
serviceConfig.ExecStart = "${getExe cfg.package} clean_pending_files";
}
commonSystemdConfig
];
systemd.services.lasuite-meet-purge-deleted-files = lib.mkMerge [
{
description = "Scheduled job to purge deleted files from LaSuite Meet";
startAt = "daily";
serviceConfig.ExecStart = "${getExe cfg.package} purge_deleted_files";
}
commonSystemdConfig
];
services.postgresql = mkIf cfg.postgresql.createLocally {
enable = true;

View file

@ -152,6 +152,7 @@ in
ssh-backdoor = runTestOn [ "x86_64-linux" ] ./nixos-test-driver/ssh-backdoor.nix;
console-log = runTest ./nixos-test-driver/console-log.nix;
containers = runTest ./nixos-test-driver/containers.nix;
nspawn-daemon-reexec-dbus = runTest ./nspawn-daemon-reexec-dbus.nix;
skip-typecheck = runTest ./nixos-test-driver/skip-typecheck.nix;
options-doc-regression = import ./nixos-test-driver/options-doc-regression.nix { inherit pkgs; };
driver-timeout =

View file

@ -0,0 +1,79 @@
# Regression test for an nspawn-only systemd re-exec failure that broke D-Bus.
#
# Demonstrates `systemctl show` keeps working on `daemon-reexec`.
#
# Trigger: `systemctl daemon-reexec` issues a D-Bus `Manager.Reexecute`, like
# `switch-to-configuration-ng` on a systemd package change.
#
# Root cause: inside nspawn test containers PID 1 re-send `READY=1` on the
# `NOTIFY_SOCKET` on re-exec. The test driver stopped draining that socket
# after boot, so until drained its receive buffer filled and `systemctl` hung /
# errored `Failed to connect to bus: Transport endpoint is not connected`.
{ ... }:
{
name = "nspawn-daemon-reexec-dbus";
# `containers.<name>` => systemd-nspawn machine (vs `nodes.<name>` => QEMU).
# An empty container boots full systemd + D-Bus, which is all we need.
containers.machine = { };
testScript = # python
''
import re
BUS_BROKEN = re.compile(
r"Transport endpoint is not connected|Failed to connect to bus"
)
# Without the fix the notify socket's receive buffer fills after 10
# undrained `READY=1` resends, so PID 1 blocks then.
REEXECS = 10
def bus_broken():
"""Whether the in-container D-Bus is unusable. A broken bus prints a
transport error or hangs until `timeout` kills it (status 124); both
count as broken."""
status, out = machine.execute(
"timeout 10 systemctl show -p ActiveState --value "
"multi-user.target 2>&1",
check_return=False,
timeout=20,
)
return status != 0 or bool(BUS_BROKEN.search(out)), status, out
machine.start()
machine.wait_for_unit("multi-user.target", timeout=120)
# Pre-reexec sanity: the bus works and shows no break.
broken, status, out = bus_broken()
assert not broken, (
f"bus already broken before any reexec: status={status} out={out!r}"
)
machine.log(f"pre-reexec sanity OK: {out.strip()!r}")
broke_at = None
for i in range(1, REEXECS + 1):
# The same D-Bus Manager.Reexecute that switch-to-configuration issues
# on a systemd change.
machine.execute(
"timeout 30 systemctl daemon-reexec",
check_return=False,
timeout=45,
)
broken, status, out = bus_broken()
machine.log(f"[reexec {i}] status={status} out={out.strip()!r}")
if broken:
broke_at = i
break
assert broke_at is None, (
f"nspawn D-Bus broke after daemon-reexec #{broke_at} of {REEXECS} "
"(systemctl hung or returned a bus transport error). The re-exec'd "
"PID 1 never finished re-initialising -- the test driver stopped "
"draining the notify socket, so PID 1's READY=1 resend blocked. "
"Never observed on QEMU."
)
'';
}

View file

@ -8,7 +8,7 @@
# These tests need a little more juice
virtualisation = {
cores = 2;
memorySize = 2048;
memorySize = 4096;
diskSize = 4096;
};

View file

@ -14,13 +14,13 @@ let
pname = "ghostel";
version = "0.39.0-unstable-2026-06-26";
version = "0.41.0-unstable-2026-07-05";
src = fetchFromGitHub {
owner = "dakra";
repo = "ghostel";
rev = "92bfcc57dc85f254ce95dcb51dbdd2411fea5f02";
hash = "sha256-havDs3fZENB/ozMWWKQkdsyHUIBIeewmrjL+3xJKM94=";
rev = "f77efee9172854abc08652637d23adc26faa25a2";
hash = "sha256-6ME+aStZ9X1pkTr0uwwhrJXEHu/uLStPHsKtbudXl9I=";
};
module = stdenv.mkDerivation (finalAttrs: {
@ -29,7 +29,7 @@ let
deps = zig.fetchDeps {
inherit (finalAttrs) src pname version;
fetchAll = true;
hash = "sha256-CTsG3dXu3DECDbklBAtr2fYou82WNvQ1Q3JET0TmuyM=";
hash = "sha256-lFU0ywNyP1q2NL9MkIfWciH03VAA/Act5dGYAV4V7EY=";
};
nativeBuildInputs = [ zig ] ++ lib.optionals stdenv.hostPlatform.isDarwin [ xcbuild ];
@ -48,19 +48,6 @@ let
zigBuildFlags = finalAttrs.zigCheckFlags;
postPatch = ''
# https://github.com/dakra/ghostel/issues/446
substituteInPlace build.zig \
--replace-fail 'addInstallFile(version_file, "../ghostel-module.version")' \
'addInstallFile(version_file, "ghostel-module.version")'
# remove copy_step
substituteInPlace build.zig \
--replace-fail 'b.getInstallStep().dependOn(&copy_step.step);' ' ' \
--replace-fail 'const copy_step = b.addInstallFile' \
'_ = b.addInstallFile'
'';
postConfigure = ''
cp -rLT ${finalAttrs.deps} "$ZIG_GLOBAL_CACHE_DIR/p"
chmod -R u+w "$ZIG_GLOBAL_CACHE_DIR/p"
@ -77,7 +64,7 @@ melpaBuild {
'';
preBuild = ''
install ${module}/lib/libghostel-module${libExt} ghostel-module${libExt}
install ${module}/ghostel-module${libExt} ghostel-module${libExt}
install --mode=444 ${module}/ghostel-module.version ghostel-module.version
'';

View file

@ -15,9 +15,9 @@ let
# Usage:
# treesit-grammars.with-grammars (p: [ p.tree-sitter-bash p.tree-sitter-c ... ])
with-grammars = fn: grammarPackage (fn pkgs.tree-sitter.builtGrammars);
with-grammars = fn: grammarPackage (fn pkgs.tree-sitter-grammars.derivations);
with-all-grammars = grammarPackage pkgs.tree-sitter.allGrammars;
with-all-grammars = grammarPackage pkgs.tree-sitter-grammars.allGrammars;
in
{
inherit with-grammars with-all-grammars;

View file

@ -21,20 +21,20 @@ let
# update-script-start: urls
urls = {
x86_64-linux = {
url = "https://download.jetbrains.com/cpp/CLion-2026.1.2.tar.gz";
hash = "sha256-Q3LOhpwpU6vrPWEzA+s2ZnbRxo+EeodBUHUYs3Xikrs=";
url = "https://download.jetbrains.com/cpp/CLion-2026.1.4.tar.gz";
hash = "sha256-uOhFuDqVw3pxtqBvOQH+FpJTFrneaD/R0VcpJZRYD2o=";
};
aarch64-linux = {
url = "https://download.jetbrains.com/cpp/CLion-2026.1.2-aarch64.tar.gz";
hash = "sha256-YM105ozP78oLDmwKL0t4Z4wGjCDh6xvhf/C1oCD6Qi8=";
url = "https://download.jetbrains.com/cpp/CLion-2026.1.4-aarch64.tar.gz";
hash = "sha256-I6IKQng4lNtRlQIq08K5bueqgKI/q1awX4EuRnyAnOk=";
};
x86_64-darwin = {
url = "https://download.jetbrains.com/cpp/CLion-2026.1.2.dmg";
hash = "sha256-UEkYDJBjRvvUUB2UFsc37kdp/i+1ctqULSKs62/t9/I=";
url = "https://download.jetbrains.com/cpp/CLion-2026.1.4.dmg";
hash = "sha256-AJt+K1zv4eyjdzubUeFGwB9mqzvOeb3ffA2k0MajPBs=";
};
aarch64-darwin = {
url = "https://download.jetbrains.com/cpp/CLion-2026.1.2-aarch64.dmg";
hash = "sha256-scMwDF+mIfx/66cBrvdxp+gU3+qA2sUWqoGCEhPItjE=";
url = "https://download.jetbrains.com/cpp/CLion-2026.1.4-aarch64.dmg";
hash = "sha256-i3stX7dyRgSOJkFTMD9/hkw6e2mGNqn13S7X/vJ66RQ=";
};
};
# update-script-end: urls
@ -48,8 +48,8 @@ in
product = "CLion";
# update-script-start: version
version = "2026.1.2";
buildNumber = "261.24374.148";
version = "2026.1.4";
buildNumber = "261.26222.59";
# update-script-end: version
src = fetchurl (urls.${system} or (throw "Unsupported system: ${system}"));

View file

@ -12,20 +12,20 @@ let
# update-script-start: urls
urls = {
x86_64-linux = {
url = "https://download.jetbrains.com/go/goland-2026.1.2.tar.gz";
hash = "sha256-1FkDEaapyDbTPe4soOdyCHLkp/UT3rZ6siGyGyjmGJo=";
url = "https://download.jetbrains.com/go/goland-2026.1.4.tar.gz";
hash = "sha256-pHSbmAZ+tSfa0wdtDp/3Ib/GNMP30OFNQlHWUfMwrW0=";
};
aarch64-linux = {
url = "https://download.jetbrains.com/go/goland-2026.1.2-aarch64.tar.gz";
hash = "sha256-E8WpA4s/ePEDAs47IPC0v10C1VKl9UYU7VNX/5igpm4=";
url = "https://download.jetbrains.com/go/goland-2026.1.4-aarch64.tar.gz";
hash = "sha256-7s98kY08aKjdRGQLDkffeVhgj1FWurLmTTYmtb5Qx6c=";
};
x86_64-darwin = {
url = "https://download.jetbrains.com/go/goland-2026.1.2.dmg";
hash = "sha256-iWYTMImwzMh9KSJgek8a84o/KlLWBaOj80vKlB8Ftes=";
url = "https://download.jetbrains.com/go/goland-2026.1.4.dmg";
hash = "sha256-RbvcLpLVyeL4B1DJ2/9Ub/6Cz6fJGXMPCHsJ705GsAo=";
};
aarch64-darwin = {
url = "https://download.jetbrains.com/go/goland-2026.1.2-aarch64.dmg";
hash = "sha256-TFnEMq7u51UvtaOjnxS+abJhsR3aSnaQjNFfF8EQrcQ=";
url = "https://download.jetbrains.com/go/goland-2026.1.4-aarch64.dmg";
hash = "sha256-y7mEke0z0MvQs+kMtrmrq7EeAtJUbgo6sGZrOB0MraM=";
};
};
# update-script-end: urls
@ -39,8 +39,8 @@ in
product = "Goland";
# update-script-start: version
version = "2026.1.2";
buildNumber = "261.24374.154";
version = "2026.1.4";
buildNumber = "261.26222.72";
# update-script-end: version
src = fetchurl (urls.${system} or (throw "Unsupported system: ${system}"));

View file

@ -15,20 +15,20 @@ let
# update-script-start: urls
urls = {
x86_64-linux = {
url = "https://download.jetbrains.com/idea/ideaIU-2026.1.3.tar.gz";
hash = "sha256-pvBJcW2h0J2eDsFQDGC/AaX/ig/iQZF43R/y/bK3dWM=";
url = "https://download.jetbrains.com/idea/ideaIU-2026.1.4.tar.gz";
hash = "sha256-MQTYXZUH/4ggZeP465UGQCtKgSkJLSaCZiu26cTwY/w=";
};
aarch64-linux = {
url = "https://download.jetbrains.com/idea/ideaIU-2026.1.3-aarch64.tar.gz";
hash = "sha256-dlnnkWCSM8Pmv2fBv8yG9foRdkd8pYFa5hJbDq6EqIs=";
url = "https://download.jetbrains.com/idea/ideaIU-2026.1.4-aarch64.tar.gz";
hash = "sha256-MDZFuLrUxcCIc0Zhi4QhgKPeU7Pgs9oJ/FxQH1n3gBM=";
};
x86_64-darwin = {
url = "https://download.jetbrains.com/idea/ideaIU-2026.1.3.dmg";
hash = "sha256-Sv6A37Y5yIkaE+qnFEGDBq/q9fSSSZPjJC59NB2Fsns=";
url = "https://download.jetbrains.com/idea/ideaIU-2026.1.4.dmg";
hash = "sha256-8K+LiewiINP4S9eqV0kGWtfy2Ff/zvBwX89iX7mYZ78=";
};
aarch64-darwin = {
url = "https://download.jetbrains.com/idea/ideaIU-2026.1.3-aarch64.dmg";
hash = "sha256-LRyg2DLmTgChdFKR8NMGGjWDZTAWnjQpoTp3NIBvYrI=";
url = "https://download.jetbrains.com/idea/ideaIU-2026.1.4-aarch64.dmg";
hash = "sha256-XIBK/+Lxaz9dX+Lxl7HXsl+Z3Z7GBzSuDxNssb/4A2s=";
};
};
# update-script-end: urls
@ -43,8 +43,8 @@ mkJetBrainsProduct {
productShort = "IDEA";
# update-script-start: version
version = "2026.1.3";
buildNumber = "261.25134.95";
version = "2026.1.4";
buildNumber = "261.26222.65";
# update-script-end: version
src = fetchurl (urls.${system} or (throw "Unsupported system: ${system}"));

View file

@ -12,20 +12,20 @@ let
# update-script-start: urls
urls = {
x86_64-linux = {
url = "https://download.jetbrains.com/webide/PhpStorm-2026.1.3.tar.gz";
hash = "sha256-hXb2KcCaNKIJOGbN0ZUDxMKuX++dO1FRoxvC580VIHQ=";
url = "https://download.jetbrains.com/webide/PhpStorm-2026.1.4.tar.gz";
hash = "sha256-SF25D7dDn7b6AzcXEDLKwhpjTnCqYz1fEmvND5dl8Is=";
};
aarch64-linux = {
url = "https://download.jetbrains.com/webide/PhpStorm-2026.1.3-aarch64.tar.gz";
hash = "sha256-+As41qcyCvAICIttMEi30b8mBTZoWKK4rjxjkVx4TXs=";
url = "https://download.jetbrains.com/webide/PhpStorm-2026.1.4-aarch64.tar.gz";
hash = "sha256-T9q3/nxv/AA6y7CHWtOhUibR7bnKN8OZmfN3NWYTsIQ=";
};
x86_64-darwin = {
url = "https://download.jetbrains.com/webide/PhpStorm-2026.1.3.dmg";
hash = "sha256-Q9m/XIgDg4F4yH0P35IaInk/se5CXqewvp248VqA4uc=";
url = "https://download.jetbrains.com/webide/PhpStorm-2026.1.4.dmg";
hash = "sha256-W7EwYu7S3hs1564tXq8H1Uok/Gwx/8QJO4brUGOfFY4=";
};
aarch64-darwin = {
url = "https://download.jetbrains.com/webide/PhpStorm-2026.1.3-aarch64.dmg";
hash = "sha256-Yo50EhVQDg7c/C3JZ9utZxpsOY0DuZfgYzYtBN9Nmwk=";
url = "https://download.jetbrains.com/webide/PhpStorm-2026.1.4-aarch64.dmg";
hash = "sha256-XGcfEWHHeLugvkT/WlQDsVRN33F46b1PCNhINQitqSY=";
};
};
# update-script-end: urls
@ -39,8 +39,8 @@ mkJetBrainsProduct {
product = "PhpStorm";
# update-script-start: version
version = "2026.1.3";
buildNumber = "261.25134.104";
version = "2026.1.4";
buildNumber = "261.26222.71";
# update-script-end: version
src = fetchurl (urls.${system} or (throw "Unsupported system: ${system}"));

View file

@ -13,20 +13,20 @@ let
# update-script-start: urls
urls = {
x86_64-linux = {
url = "https://download.jetbrains.com/python/pycharm-2026.1.2.tar.gz";
hash = "sha256-kcd1vhb7CFn5sY69RW2I4THK3zN7DOn52O0YeIZWGWY=";
url = "https://download.jetbrains.com/python/pycharm-2026.1.4.tar.gz";
hash = "sha256-RIufgZhg/n+D1uEdcDyYRjTDfh8Jicyz4h0B1kTbVXs=";
};
aarch64-linux = {
url = "https://download.jetbrains.com/python/pycharm-2026.1.2-aarch64.tar.gz";
hash = "sha256-5rTyUmevreBL5nZPa7FuodFhWcrjSQ+7T1jMFo7P/uM=";
url = "https://download.jetbrains.com/python/pycharm-2026.1.4-aarch64.tar.gz";
hash = "sha256-71FbYpN0seJ5k/yZA7aoXgU4W/N1BhjtKl7W7Hic9UE=";
};
x86_64-darwin = {
url = "https://download.jetbrains.com/python/pycharm-2026.1.2.dmg";
hash = "sha256-Fej8KylKSFKVxCMrBAcUIDwb0v5B5r1RysMAvcBVgh8=";
url = "https://download.jetbrains.com/python/pycharm-2026.1.4.dmg";
hash = "sha256-Q5hTcYoNUzmAxwcsXJNS4medQjFKWc/Sgkybt4PQPfg=";
};
aarch64-darwin = {
url = "https://download.jetbrains.com/python/pycharm-2026.1.2-aarch64.dmg";
hash = "sha256-oau/wa9spYnn7XE07NGsINyqof3Mu9t9WQLuPAQ4TDc=";
url = "https://download.jetbrains.com/python/pycharm-2026.1.4-aarch64.dmg";
hash = "sha256-qxSgp8r4S0KXjCCTIoAiEZFCn3uBE/0pWLLA6td0Fq0=";
};
};
# update-script-end: urls
@ -40,8 +40,8 @@ in
product = "PyCharm";
# update-script-start: version
version = "2026.1.2";
buildNumber = "261.24374.152";
version = "2026.1.4";
buildNumber = "261.26222.68";
# update-script-end: version
src = fetchurl (urls.${system} or (throw "Unsupported system: ${system}"));

View file

@ -24,20 +24,20 @@ let
# update-script-start: urls
urls = {
x86_64-linux = {
url = "https://download.jetbrains.com/rider/JetBrains.Rider-2026.1.2.tar.gz";
hash = "sha256-OmysaGXGMxxAAa2qrHvX8yXIwJLU7tKG8/EBGhr55EA=";
url = "https://download.jetbrains.com/rider/JetBrains.Rider-2026.1.4.tar.gz";
hash = "sha256-K+X2M4idv+oDqC/dkbzMTX3W3zx0b0e8ZTsxkP7rAfI=";
};
aarch64-linux = {
url = "https://download.jetbrains.com/rider/JetBrains.Rider-2026.1.2-aarch64.tar.gz";
hash = "sha256-xcwd4OgobMXFQ2W+SN6O5I3mud4kedVQ/0rZBWbXIGY=";
url = "https://download.jetbrains.com/rider/JetBrains.Rider-2026.1.4-aarch64.tar.gz";
hash = "sha256-GXmyBrqxUpwK4djjwllvK+pnfktDrDHpLJKoe4D2xFo=";
};
x86_64-darwin = {
url = "https://download.jetbrains.com/rider/JetBrains.Rider-2026.1.2.dmg";
hash = "sha256-uoOP+EYB11M99MlAFF7efZSKmCk0fwjCImFiasUQPUw=";
url = "https://download.jetbrains.com/rider/JetBrains.Rider-2026.1.4.dmg";
hash = "sha256-GfQ5WpKunJ+JhE1VcArm3UxZ5udCbfnS1Kw3D4gZorA=";
};
aarch64-darwin = {
url = "https://download.jetbrains.com/rider/JetBrains.Rider-2026.1.2-aarch64.dmg";
hash = "sha256-Mo6gxWatX6wlL3s8Li19F58cnKZtOtFUfNyGPrC6CtA=";
url = "https://download.jetbrains.com/rider/JetBrains.Rider-2026.1.4-aarch64.dmg";
hash = "sha256-cfwT22BN1jzKZzrZHMQqYFJPGuRwta/sqoOJOp+PfBE=";
};
};
# update-script-end: urls
@ -51,8 +51,8 @@ in
product = "Rider";
# update-script-start: version
version = "2026.1.2";
buildNumber = "261.24374.190";
version = "2026.1.4";
buildNumber = "261.26222.60";
# update-script-end: version
src = fetchurl (urls.${system} or (throw "Unsupported system: ${system}"));

View file

@ -12,20 +12,20 @@ let
# update-script-start: urls
urls = {
x86_64-linux = {
url = "https://download.jetbrains.com/ruby/RubyMine-2026.1.3.tar.gz";
hash = "sha256-0KF/IEVRT8kgHpULEmqMy9gOf06IIDA4vEV3RujjQoE=";
url = "https://download.jetbrains.com/ruby/RubyMine-2026.1.4.tar.gz";
hash = "sha256-0EhtU4XKWI9i7ij+m5uvxHSYnbQaYJy8Sa6S1OW4CFU=";
};
aarch64-linux = {
url = "https://download.jetbrains.com/ruby/RubyMine-2026.1.3-aarch64.tar.gz";
hash = "sha256-kiuRp9JhdS0aUFPX1brI1T9ik/iWhglIckHvv4bdPWk=";
url = "https://download.jetbrains.com/ruby/RubyMine-2026.1.4-aarch64.tar.gz";
hash = "sha256-oSu19pkGVWt31vWBdAffSZsu4QzsUznVbUSwDy98nug=";
};
x86_64-darwin = {
url = "https://download.jetbrains.com/ruby/RubyMine-2026.1.3.dmg";
hash = "sha256-UjpwMCXhI+bMOvyyEbRBoNW3GGCDpi7aF6hUxffW/h0=";
url = "https://download.jetbrains.com/ruby/RubyMine-2026.1.4.dmg";
hash = "sha256-BLo2weIJK8gQAcMtAiETM7FMdhw9aoFIGh5Yqjv3k7s=";
};
aarch64-darwin = {
url = "https://download.jetbrains.com/ruby/RubyMine-2026.1.3-aarch64.dmg";
hash = "sha256-lqa3L+rBiEH/hPmFcevWBumvvyBBzoUR3ttvA8s0uT0=";
url = "https://download.jetbrains.com/ruby/RubyMine-2026.1.4-aarch64.dmg";
hash = "sha256-4wEnwcPRtwp0wxePUMiLow6sMxirwndRMdmJL8LBh9k=";
};
};
# update-script-end: urls
@ -39,8 +39,8 @@ mkJetBrainsProduct {
product = "RubyMine";
# update-script-start: version
version = "2026.1.3";
buildNumber = "261.25134.97";
version = "2026.1.4";
buildNumber = "261.26222.67";
# update-script-end: version
src = fetchurl (urls.${system} or (throw "Unsupported system: ${system}"));

View file

@ -18,20 +18,20 @@ let
# update-script-start: urls
urls = {
x86_64-linux = {
url = "https://download.jetbrains.com/rustrover/RustRover-2026.1.3.tar.gz";
hash = "sha256-0+v05zxvFqXV13c8oV9dTTwtO+shgywD75cwUiZAab0=";
url = "https://download.jetbrains.com/rustrover/RustRover-2026.1.4.tar.gz";
hash = "sha256-8x/AP6uKSVJavwjA9tYT1IM1xVspOZZzwmcwpGloIcw=";
};
aarch64-linux = {
url = "https://download.jetbrains.com/rustrover/RustRover-2026.1.3-aarch64.tar.gz";
hash = "sha256-SZ4OkWgAGeSafFo1ml5dv5tN5su+HgzbEhQ5GzPqGdo=";
url = "https://download.jetbrains.com/rustrover/RustRover-2026.1.4-aarch64.tar.gz";
hash = "sha256-KpF3jCnLKCEeEXkBdB8ZsPPqP9FOVRTwRV/FQLKyh1Q=";
};
x86_64-darwin = {
url = "https://download.jetbrains.com/rustrover/RustRover-2026.1.3.dmg";
hash = "sha256-JA++mbKvRTvjHEblbgmjBzbWbxcV7ss3+W9M6i6ePu0=";
url = "https://download.jetbrains.com/rustrover/RustRover-2026.1.4.dmg";
hash = "sha256-2BwgAD0xF9IxRJh+gW4vLzBW13rFQSzQPbEwdmQGvLU=";
};
aarch64-darwin = {
url = "https://download.jetbrains.com/rustrover/RustRover-2026.1.3-aarch64.dmg";
hash = "sha256-ndipMTztrYeUdo4MfOHjJHk3liHutWmMj+J6G8xjtWA=";
url = "https://download.jetbrains.com/rustrover/RustRover-2026.1.4-aarch64.dmg";
hash = "sha256-Hly4NBv9mg/RMmxCM6m9w5eS/CQ7ycxp7V2VQZwyGQE=";
};
};
# update-script-end: urls
@ -45,8 +45,8 @@ in
product = "RustRover";
# update-script-start: version
version = "2026.1.3";
buildNumber = "261.25134.134";
version = "2026.1.4";
buildNumber = "261.26222.73";
# update-script-end: version
src = fetchurl (urls.${system} or (throw "Unsupported system: ${system}"));

View file

@ -8,11 +8,9 @@ vimUtils.buildVimPlugin {
preInstall = "cd data/syntax-highlighting/vim";
meta = {
description = "Vim plugin for meson providing syntax highlighting";
inherit (meson.meta)
homepage
description
mainProgram
longDescription
license
platforms
;

View file

@ -4,6 +4,7 @@
symlinkJoin,
vimUtils,
tree-sitter,
tree-sitter-grammars,
neovim,
neovimUtils,
runCommand,
@ -127,7 +128,7 @@ let
withPlugins =
f:
let
selectedGrammars = f (tree-sitter.builtGrammars // builtGrammars);
selectedGrammars = f (tree-sitter-grammars.derivations // builtGrammars);
grammarPlugins = map grammarToPlugin selectedGrammars;

View file

@ -6,13 +6,13 @@
}:
mkLibretroCore {
core = "opera";
version = "0-unstable-2026-06-19";
version = "0-unstable-2026-06-28";
src = fetchFromGitHub {
owner = "libretro";
repo = "opera-libretro";
rev = "eb3a9162e99a71da221107aa58e7650fd076bbca";
hash = "sha256-swFdGY8ScsQG/8E/JWzGRL80jdMVzsr1BJ+UAisSJ9g=";
rev = "340f9e9014c292fc47a8844a871a71dafe072b6d";
hash = "sha256-geBK8RIlaRcWn4CDzVl3pjK0WOFQcMZl7zFMXE2oZNo=";
};
makefile = "Makefile";

View file

@ -5,13 +5,13 @@
}:
mkLibretroCore {
core = "prboom";
version = "0-unstable-2026-06-15";
version = "0-unstable-2026-07-01";
src = fetchFromGitHub {
owner = "libretro";
repo = "libretro-prboom";
rev = "b760de6a1eb1bfcd7833c5b677ff9170d104302f";
hash = "sha256-JZrQbhntCGV4WIktUbtVXCSGAEmh9gTPn+tLiMyt6ZY=";
rev = "141978db577b52cb943641629401776e49ccbbe6";
hash = "sha256-USRBq+h2HAoDIdYVd47wGLEnUzJAEOvikuvSNTHpboI=";
};
makefile = "Makefile";

View file

@ -5,13 +5,13 @@
}:
mkLibretroCore {
core = "stella2014";
version = "0-unstable-2026-04-12";
version = "0-unstable-2026-07-04";
src = fetchFromGitHub {
owner = "libretro";
repo = "stella2014-libretro";
rev = "eed47e154d1bbda3305e9ef2d486b6710c8973f4";
hash = "sha256-QpPjVnFCkn6xlB7LxpE6bsNfYe3HSsEKUjqmEf2yTvA=";
rev = "8ddf2146ed2d2053cff9df64192f920e57709629";
hash = "sha256-VDywbP7PhcQPHhu/KMvV1LlI/iOGjMzRooqvoT+Tnxc=";
};
makefile = "Makefile";

View file

@ -420,18 +420,18 @@ in
docker_29 =
let
version = "29.6.0";
version = "29.6.1";
in
callPackage dockerGen {
inherit version;
cliRev = "v${version}";
cliHash = "sha256-2JTiqvrIYhpwbEgU+5DnmlHpaf8Re1vYPkySs93sKZU=";
cliHash = "sha256-cpK2UMRP/WXHsehG9Sq5UJAjhMesmXTrhe00y4RMRZc=";
mobyRev = "docker-v${version}";
mobyHash = "sha256-xr3+RZANLP4IkLv26/7znXnTCOm/5Gm7k6WBaOlZfQk=";
mobyHash = "sha256-gv+mea9X5TYDWN3IBRpmw0+R2waGxCiubdatNTeUQZI=";
runcRev = "v1.3.6";
runcHash = "sha256-cBMYZOElWHQ4OkF2NlYJSZrlW4833WD8CRJRkkXeKJc=";
containerdRev = "v2.2.4";
containerdHash = "sha256-F0lw7zh4V9JlFQGkE4RNT1VLX8WWLgZAAvbP12jnRMw=";
containerdRev = "v2.2.5";
containerdHash = "sha256-3ui+0AjEU6H4VHYwF3G85ggVMUdONCLJ5KfciFasmkk=";
tiniRev = "369448a167e8b3da4ca5bca0b3307500c3371828";
tiniHash = "sha256-jCBNfoJAjmcTJBx08kHs+FmbaU82CbQcf0IVjd56Nuw=";
};

View file

@ -12,11 +12,11 @@
stdenv.mkDerivation rec {
pname = "evilwm";
version = "1.4.3";
version = "1.5";
src = fetchurl {
url = "https://www.6809.org.uk/evilwm/evilwm-${version}.tar.gz";
sha256 = "sha256-1ZRbILEskdskEvrA29o/ucPsjeu44bEJg4mSsrG75dQ=";
sha256 = "sha256-YQSFJBPm1QZpNh3K3aWiXTnisrDJWmOEAiyQWVeidA8=";
};
buildInputs = [

View file

@ -3,10 +3,8 @@
buildPackages,
callPackage,
stdenv,
nim1,
nim2,
nim,
nim_builder,
defaultNimVersion ? 2,
nimOverrides,
buildNimPackage,
}:
@ -17,6 +15,7 @@ let
enableParallelBuilding = true;
__structuredAttrs = true;
doCheck = true;
configurePhase = ''
runHook preConfigure
export NIX_NIM_BUILD_INPUTS=''${pkgsHostTarget[@]} $NIX_NIM_BUILD_INPUTS
@ -38,7 +37,7 @@ let
nim_builder --phase:install
runHook postInstall
'';
meta = { inherit (nim2.meta) maintainers platforms; };
meta = { inherit (nim.meta) maintainers platforms; };
};
fodFromLockEntry =
@ -108,30 +107,34 @@ let
finalOverride =
{
depsBuildBuild ? [ ],
nativeBuildInputs ? [ ],
nimFlags ? [ ],
requiredNimVersion ? defaultNimVersion,
passthru ? { },
nativeBuildInputs ? [ ],
depsBuildBuild ? [ ],
...
}:
}@args:
(
if requiredNimVersion == 1 then
{
depsBuildBuild = [ nim_builder ] ++ depsBuildBuild;
nativeBuildInputs = [ nim1 ] ++ nativeBuildInputs;
}
else if requiredNimVersion == 2 then
{
depsBuildBuild = [ nim_builder ] ++ depsBuildBuild;
nativeBuildInputs = [ nim2 ] ++ nativeBuildInputs;
}
#TODO: Remove at 26.11
if args ? requiredNimVersion then
if args.requiredNimVersion == 2 then
lib.warn ''
`requiredNimVersion' is deprecated and will be removed in nixpkgs 26.11.
Please update your package to remove this.
''
else
throw ''
`requiredNimVersion' ${toString args.requiredNimVersion} is not supported.
Ensure your package supports nim 2, and remove `requiredNimVersion'.
''
else
throw "requiredNimVersion ${toString requiredNimVersion} is not valid"
{ }
)
// {
nativeBuildInputs = [ nim ] ++ nativeBuildInputs;
depsBuildBuild = [ nim_builder ] ++ depsBuildBuild;
nimFlags = lockFileNimFlags ++ nimFlags;
passthru = passthru // {
# allow overriding the result of buildNimPackageArgs before this composition is applied
# this allows overriding the lockFile for packages built using buildNimPackage
# this is adapted from mkDerivationExtensible in stdenv.mkDerivation

View file

@ -799,7 +799,7 @@ rec {
## `pkgs.writers.writeNim` usage example
```nix
writeNim "hello-nim" { nim = pkgs.nim2; } ''
writeNim "hello-nim" { nim = pkgs.nim; } ''
echo "hello nim"
'';
```
@ -809,7 +809,7 @@ rec {
name:
{
makeWrapperArgs ? [ ],
nim ? pkgs.nim2,
nim ? pkgs.nim,
nimCompileOptions ? { },
strip ? true,
}:

View file

@ -7,13 +7,13 @@
buildGoModule (finalAttrs: {
pname = "algia";
version = "0.0.125";
version = "0.0.130";
src = fetchFromGitHub {
owner = "mattn";
repo = "algia";
tag = "v${finalAttrs.version}";
hash = "sha256-MPCCu34bJoj0QctG4Xe6B1BIUyLaTQ7N8IG15jMZCTE=";
hash = "sha256-QuusIoZfNhETaVJJ8sUy3Zo3VnRUp7cfudDP562ZNLU=";
};
vendorHash = "sha256-mim8EImPFHF2vf1vCi9jgECbVAOB32oXxsPMgUwYDBA=";

View file

@ -1,6 +1,7 @@
{
lib,
fetchFromGitHub,
nodejs_22,
buildNpmPackage,
copyDesktopItems,
imagemagick,
@ -19,6 +20,8 @@ buildNpmPackage rec {
hash = "sha256-u4MnjGMvnnb9EGHwK2QYpW7cuX1e1+6z2/1X1baR8iA=";
};
nodejs = nodejs_22;
npmDepsHash = "sha256-kxoSEdM8H7M9s6U2dtCdfuvqVROEk35jAkO7MgyVVRg=";
makeCacheWritable = true;

View file

@ -0,0 +1,107 @@
{
lib,
stdenv,
fetchFromGitHub,
buildGoModule,
# nativeBuildInputs
cmake,
pkg-config,
# buildInputs
nanoarrow,
fmt,
gtest,
libpq,
sqlite,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "arrow-adbc";
version = "23";
__structuredAttrs = true;
strictDeps = true;
src = fetchFromGitHub {
owner = "apache";
repo = "arrow-adbc";
tag = "apache-arrow-adbc-${finalAttrs.version}";
fetchSubmodules = true;
hash = "sha256-33JUx4ZI+BHIZMvlCO43mjU34zShJZGQpAkqRrvgl2w=";
};
vendorHash = "sha256-uGxCTllRNtXkrl31d88TOK36X09ylo++gtorx0uFR8A=";
# We are building the C project
preConfigure = ''
cd c/
'';
# Upstream's build invoces a custom `go build` command to build one of the
# targets. We use buildGoModule's engineering to supply it the offline
# `goModules` path and other GO[A-Z] environment variables. Ideally, there
# should be setup hooks for the mechanisms of buildGoModule, that would make
# it easier.
modRoot = "../../go/adbc";
inherit (finalAttrs.finalPackage.passthru.bigquery-go-package) goModules;
preBuild =
(lib.pipe finalAttrs.finalPackage.passthru.bigquery-go-package.configurePhase [
# Make that this configure phase doesn't run our configure hooks.
(lib.replaceString "runHook preConfigure" "")
(lib.replaceString "runHook postConfigure" "")
])
# Return to original meson build directory.
+ ''
cd ../../c/build
'';
nativeBuildInputs = [
# NOTE that the meson build system has a bug that it puts a few shared
# objects in $out and not in $out/lib.
cmake
pkg-config
finalAttrs.finalPackage.passthru.bigquery-go-package.passthru.go
];
cmakeFlags = map (driver: lib.cmakeBool "ADBC_DRIVER_${driver}" true) [
"BIGQUERY"
"FLIGHTSQL"
"MANAGER"
"POSTGRESQL"
"SNOWFLAKE"
"SQLITE"
];
buildInputs = [
fmt
gtest
libpq
nanoarrow
sqlite
];
passthru = {
bigquery-go-package = buildGoModule (finalGoAttrs: {
inherit (finalAttrs)
pname
version
src
vendorHash
;
sourceRoot = "${finalAttrs.src.name}/go/adbc";
# This derivation is not really evaluated anyway, but it is used to
# update the vendorHash... TODO: Check that nix-update is capable of
# updating vendorHash automatically.
dontBuild = true;
dontInstall = true;
});
};
meta = {
description = "Database connectivity API standard and libraries for Apache Arrow";
homepage = "https://arrow.apache.org/adbc/";
changelog = "https://github.com/apache/arrow-adbc/blob/${finalAttrs.src.rev}/CHANGELOG.md";
license = lib.licenses.afl20;
maintainers = with lib.maintainers; [ doronbehar ];
platforms = lib.platforms.all;
};
})

View file

@ -6,17 +6,17 @@
rustPlatform.buildRustPackage (finalAttrs: {
pname = "avdl";
version = "0.1.9+1.12.1";
version = "0.1.10+1.12.1";
src = fetchFromGitHub {
owner = "jonhoo";
repo = "avdl";
rev = "v${finalAttrs.version}";
hash = "sha256-HfcDSv3RzmoFbwt7iAP/UXdeJupfng8oeaeerUwW1Ik=";
hash = "sha256-DGRBLXE8YMZs1fBBuTtUuhsc490IJB3G9Khddk3l8gw=";
fetchSubmodules = true;
};
cargoHash = "sha256-5ftBXywOUQKzIwjaQVHtxO/6A1bb1jGZAxYYY7GttCg=";
cargoHash = "sha256-wTiQ1Ssn6Q1ZjR52a4+qyDrQqVUcP+/4paOjKKPJuII=";
meta = {
description = "Rust port of avro-tools' IDL tooling";

View file

@ -34,7 +34,7 @@
stdenv.mkDerivation (finalAttrs: {
pname = "bazaar";
version = "0.8.3";
version = "0.9.0";
__structuredAttrs = true;
strictDeps = true;
@ -50,7 +50,7 @@ stdenv.mkDerivation (finalAttrs: {
owner = "bazaar-org";
repo = "bazaar";
tag = "v${finalAttrs.version}";
hash = "sha256-s0l548kuVD+eNAxA3BnbpuMHD1alq0/xGBIkXb7WpC0=";
hash = "sha256-6MDrMXwtNcNJtnoRwfIKVulHu4FtVb4hhCtqIxmlz4A=";
};
nativeBuildInputs = [

View file

@ -17,11 +17,11 @@ let
in
stdenv.mkDerivation rec {
pname = "bazarr";
version = "1.5.6";
version = "1.6.0";
src = fetchzip {
url = "https://github.com/morpheus65535/bazarr/releases/download/v${version}/bazarr.zip";
hash = "sha256-S3idNH9Wm9f6aNj69dERmeks1rLvUeQJYFebXa5cWQo=";
hash = "sha256-LRcc2wg5u260yl3A7rRwBfldl6WOyvF2T9NKGTKabfw=";
stripRoot = false;
};

View file

@ -9,16 +9,16 @@ rustPlatform.buildRustPackage (finalAttrs: {
__structuredAttrs = true;
pname = "cargo-feature-combinations";
version = "0.0.54";
version = "0.2.3";
src = fetchFromGitHub {
owner = "romnn";
repo = "cargo-feature-combinations";
tag = "v${finalAttrs.version}";
hash = "sha256-SgVwgG7lNFrDMH1t9yvYTTm7pQth2hcEAjwMuRkC5Kg=";
hash = "sha256-5QQrWdq1jTGUCnzZkzJ2WzJRpxhRtaZMLpgCIktaiPc=";
};
cargoHash = "sha256-S0I2itkyAhZwk+S/k/Sr3bpENpIQNHSaJwVpA8rvQ+E=";
cargoHash = "sha256-PMZGYxdB9cbWLVtvfRtWsRqVwJWayPbrdhpKvxmq3dM=";
passthru.updateScript = nix-update-script { };

View file

@ -1,22 +1,22 @@
{
"version": "3.9.8",
"version": "3.9.16",
"vscodeVersion": "1.105.1",
"sources": {
"x86_64-linux": {
"url": "https://downloads.cursor.com/production/4aa8ff1b7877ed7bd01bcba308698f71a6735380/linux/x64/Cursor-3.9.8-x86_64.AppImage",
"hash": "sha256-xcyFowrW5yzIDCwbFGmpDRSNa3OUXsHwpLkbyNcSzqM="
"url": "https://downloads.cursor.com/production/042b3c1a4c53f2c3808067f519fbfc67b72cad8b/linux/x64/Cursor-3.9.16-x86_64.AppImage",
"hash": "sha256-dG61VYGMHPip57ldzNICEi1yPc4s1dON+MlDGiKadKc="
},
"aarch64-linux": {
"url": "https://downloads.cursor.com/production/4aa8ff1b7877ed7bd01bcba308698f71a6735380/linux/arm64/Cursor-3.9.8-aarch64.AppImage",
"hash": "sha256-ZhRMvfJkt8NZT45tYxfO2gBFaVw6hR2nVeRzmrxQfeE="
"url": "https://downloads.cursor.com/production/042b3c1a4c53f2c3808067f519fbfc67b72cad8b/linux/arm64/Cursor-3.9.16-aarch64.AppImage",
"hash": "sha256-7tkupyy8EFeOpzQqoHQsYxWQlFoW6VBpXkuCJsRIhRw="
},
"x86_64-darwin": {
"url": "https://downloads.cursor.com/production/4aa8ff1b7877ed7bd01bcba308698f71a6735380/darwin/x64/Cursor-darwin-x64.dmg",
"hash": "sha256-IOQsZQAncDgZGEnCZWg/LQqD/PquFifBmuk2hnJ1L/s="
"url": "https://downloads.cursor.com/production/042b3c1a4c53f2c3808067f519fbfc67b72cad8b/darwin/x64/Cursor-darwin-x64.dmg",
"hash": "sha256-5sAj/FiPAs1facGmNKgXiNzs1Kc1ht9eXYU1aZ1VoUA="
},
"aarch64-darwin": {
"url": "https://downloads.cursor.com/production/4aa8ff1b7877ed7bd01bcba308698f71a6735380/darwin/arm64/Cursor-darwin-arm64.dmg",
"hash": "sha256-GxpBKyx0Yo3e8AUS9Oxei/hHm1m3JdxMKjX7qAxUGm4="
"url": "https://downloads.cursor.com/production/042b3c1a4c53f2c3808067f519fbfc67b72cad8b/darwin/arm64/Cursor-darwin-arm64.dmg",
"hash": "sha256-pnSsOvyFiBKJsPUPkfnSY1l+LEzz3g5kbepIco7dDIM="
}
}
}

View file

@ -26,13 +26,13 @@
}:
rustPlatform.buildRustPackage (finalAttrs: {
pname = "codex";
version = "0.142.3";
version = "0.142.5";
src = fetchFromGitHub {
owner = "openai";
repo = "codex";
tag = "rust-v${finalAttrs.version}";
hash = "sha256-dxkyaWpgzqpAVFojDYQ6JpMPNBIX+d7xjIyLic4Cs8A=";
hash = "sha256-Ua1UVArTvjHcg3bPK1FYyShYiIUH3AOxtoUTvA4UZwU=";
};
sourceRoot = "${finalAttrs.src.name}/codex-rs";

View file

@ -10,11 +10,11 @@
}:
stdenvNoCC.mkDerivation (finalAttrs: {
pname = "copilot-language-server";
version = "1.513.0";
version = "1.517.0";
src = fetchzip {
url = "https://github.com/github/copilot-language-server-release/releases/download/${finalAttrs.version}/copilot-language-server-js-${finalAttrs.version}.zip";
hash = "sha256-wVibxZjUW6BX4YhdYlyE0/zp0fst2H/XmmqZLqxGXH8=";
hash = "sha256-BzvUARAI8DOEYHPMavJdtSkr+ZCj/E+mM9wQtmEGyjY=";
stripRoot = false;
};

View file

@ -28,14 +28,14 @@ let
in
stdenv'.mkDerivation (finalAttrs: {
pname = "ctranslate2";
version = "4.8.0";
version = "4.8.1";
src = fetchFromGitHub {
owner = "OpenNMT";
repo = "CTranslate2";
tag = "v${finalAttrs.version}";
fetchSubmodules = true;
hash = "sha256-Z7Gq+kXIfMdZs48WeptRGXhXnLfehegAwTtQpTbPM4U=";
hash = "sha256-+82u+w08wGX0oh1wBaH/epI2IH7lxbvMThJEoGt0Kvk=";
};
# Fix CMake 4 compatibility

View file

@ -15,13 +15,13 @@
buildGoModule (finalAttrs: {
pname = "dcp";
version = "0.25.1";
version = "0.25.2";
src = fetchFromGitHub {
owner = "microsoft";
repo = "dcp";
tag = "v${finalAttrs.version}";
hash = "sha256-mWTGwM1y5zGd610N6Mg3Q3o2Lqf4ANdCWTjNNG/3dBg=";
hash = "sha256-afQa5arDC9GD0jzzKBSc+zHrNmHpn91HdcWDeFzpbzQ=";
};
vendorHash = "sha256-hcuVUUr3kr3iBmSEhHy365LIWGGLFTYnBRa5jnt7kPw=";

View file

@ -4,32 +4,19 @@
linkFarm,
makeWrapper,
rustPlatform,
tree-sitter,
tree-sitter-grammars,
gitUpdater,
versionCheckHook,
}:
let
# based on https://github.com/NixOS/nixpkgs/blob/aa07b78b9606daf1145a37f6299c6066939df075/pkgs/development/tools/parsing/tree-sitter/default.nix#L85-L104
withPlugins =
grammarFn:
let
grammars = grammarFn tree-sitter.builtGrammars;
in
linkFarm "grammars" (
map (
drv:
let
name = lib.strings.getName drv;
in
{
name = "lib" + (lib.strings.removeSuffix "-grammar" name) + ".so";
path = "${drv}/parser";
}
) grammars
);
grammarToAttrSet = drv: {
name = "lib" + (lib.strings.removeSuffix "-grammar" (lib.strings.getName drv)) + ".so";
path = "${drv}/parser";
};
libPath = withPlugins (_: tree-sitter.allGrammars);
libPath = linkFarm "grammars" (map grammarToAttrSet tree-sitter-grammars.allGrammars);
in
rustPlatform.buildRustPackage rec {
pname = "diffsitter";

View file

@ -7,18 +7,18 @@
rustPlatform.buildRustPackage (finalAttrs: {
pname = "diskwatch";
version = "0.1.1";
version = "0.1.2";
src = fetchFromGitHub {
owner = "matthart1983";
repo = "diskwatch";
tag = "v${finalAttrs.version}";
hash = "sha256-pveHyT3ljQQ9GdOMhZhcY7QD/pMvL3fLrbM6D5fO+h4=";
hash = "sha256-8tQXcbY/sguw42vE0p5Q8/psmwfYQihWcSIsApI4OmE=";
};
__structuredAttrs = true;
cargoHash = "sha256-PufgQqJGsPMBcnNV/QXQnE/wrI4FAJWXLvoHEqLQm5k=";
cargoHash = "sha256-kO6g5JJogNN5xqD5Qoj6Ncd6scA7PFAjg6y0AWnNhAM=";
nativeCheckInputs = [ versionCheckHook ];

View file

@ -7,14 +7,14 @@
python3Packages.buildPythonApplication (finalAttrs: {
pname = "django-upgrade";
version = "1.30.0";
version = "1.31.1";
pyproject = true;
src = fetchFromGitHub {
owner = "adamchainz";
repo = "django-upgrade";
tag = finalAttrs.version;
hash = "sha256-IiGwYq6TTNiNIx1jrzQlLiULWNZlam7onJJGFFJ/hVM=";
hash = "sha256-6x1542ieT+G/r3IiCw4aLePY3HLzpycI7FOBqHm1fmE=";
};
build-system = [ python3Packages.setuptools ];

View file

@ -12,7 +12,7 @@
rustPlatform.buildRustPackage (finalAttrs: {
pname = "dprint";
version = "0.54.0";
version = "0.55.1";
# Prefer repository rather than crate here
# - They have Cargo.lock in the repository
@ -21,10 +21,10 @@ rustPlatform.buildRustPackage (finalAttrs: {
owner = "dprint";
repo = "dprint";
tag = finalAttrs.version;
hash = "sha256-dNs2LQeEndeXS8xR9SXVFWT9PS+haB9SDZ+3PUPkFjg=";
hash = "sha256-OXXLpKgP2cUuPl7ikgZVPFgJiLY0Zy8MmBkz8Kp2+XM=";
};
cargoHash = "sha256-fmbO14eTObK1cZu9gDls25KRmzAJPGiqQ8uURGD2vV0=";
cargoHash = "sha256-IDxJPicTq0/7LI/07QfJrteaKAHDoeKdzpbEv871xxE=";
nativeBuildInputs = [ installShellFiles ];

View file

@ -49,8 +49,6 @@ stdenv.mkDerivation (finalAttrs: {
}
);
env.SETUPTOOLS_SCM_PRETEND_VERSION = finalAttrs.version;
nativeBuildInputs = [
meson
ninja

View file

@ -8,13 +8,13 @@
buildGoModule (finalAttrs: {
pname = "emcee";
version = "0.7.0";
version = "0.8.0";
src = fetchFromGitHub {
owner = "mattt";
repo = "emcee";
tag = "v${finalAttrs.version}";
hash = "sha256-czOUhaPBxzuqZ72Y3TuzZ8r0Ab3OqGbDPZipkcak3Cw=";
hash = "sha256-S3hSexTjedfmjLuFHXtyiDiKM4NaLeUIJCEl2PKAOCw=";
};
vendorHash = "sha256-e8LPcKue7rhAh03uCRG0VTcwwyj3kDOBoeo3t7Hwvi0=";

View file

@ -7,11 +7,11 @@
}:
let
version = "3.5.31";
etcdSrcHash = "sha256-X3b1TBimNYo03fW0c5NeiD4uALMqtOQbJwPot11FCk8=";
etcdServerVendorHash = "sha256-1/XJGpyYuTsb+1hReksX5VyD+6xbKaiLA8520cDKc/4=";
etcdUtlVendorHash = "sha256-dUXAoIcOSlEbiSmy1M+oPaHt089gOttQwrB9ZhYc7v0=";
etcdCtlVendorHash = "sha256-l1j00Mzv1z021rfBbFZrIce2pifQyRkST0bkZhVoST0=";
version = "3.5.32";
etcdSrcHash = "sha256-pqCMgY5veIF5kQDjqTg9B7aSL+V6bdMZpc464wjTLMo=";
etcdServerVendorHash = "sha256-FDzAF2J9wbRmQETvrdJK3gL4cfAhiiihb5EOrimE11M=";
etcdUtlVendorHash = "sha256-0xfq7f7Xr3SWxiU8C1bWQPxdFvEaoIrlK+gX3hkd4ho=";
etcdCtlVendorHash = "sha256-59e/TORi/XX+GXRjMO/45SMumYgrFbOHEXqV7sM72H8=";
src = fetchFromGitHub {
owner = "etcd-io";

View file

@ -7,12 +7,12 @@
}:
stdenv.mkDerivation (finalAttrs: {
version = "1.6.5.640";
version = "1.7.679";
pname = "fatsort";
src = fetchurl {
url = "mirror://sourceforge/fatsort/fatsort-${finalAttrs.version}.tar.xz";
sha256 = "sha256-Yw7OVtnrOlVSSvCuw6reeFQ2DrqUkXKmz7R2jLj75C4=";
sha256 = "sha256-EBL1UTgmOdaeGU6r++mTQu3nyFaxzWeIKH+d/UvY0SI=";
};
buildInputs = [

View file

@ -6,15 +6,15 @@
}:
rustPlatform.buildRustPackage (finalAttrs: {
pname = "firezone-gateway";
version = "1.4.18";
version = "1.5.2";
src = fetchFromGitHub {
owner = "firezone";
repo = "firezone";
tag = "gateway-${finalAttrs.version}";
hash = "sha256-vxOFca6yO9AvgIJwizhaNlOjOvV00+ckQfXIJ17ASq4=";
hash = "sha256-bfLPOhxv0xfnU3Q1zZWbhqvNe9Hav2RgF/ESMk81F4I=";
};
cargoHash = "sha256-8YftVt72JpmxWB/WvOPpduE0/QgYvQhSuFRmsFth2iU=";
cargoHash = "sha256-oOJ/UkamQrlWjAz2A4oObdBssHH9iJWN2BHFgMPOxck=";
sourceRoot = "${finalAttrs.src.name}/rust";
buildAndTestSubdir = "gateway";
env.RUSTFLAGS = "--cfg system_certs";

View file

@ -6,15 +6,15 @@
}:
rustPlatform.buildRustPackage (finalAttrs: {
pname = "firezone-headless-client";
version = "1.5.5";
version = "1.5.6";
src = fetchFromGitHub {
owner = "firezone";
repo = "firezone";
tag = "headless-client-${finalAttrs.version}";
hash = "sha256-Lo5iUXlpAecglr0uohOdsefeaDQZor2YoF0O99CxvEo=";
hash = "sha256-yEceZJBqSF35herNjbqFHKaIoFJwbkDN28wlxFa1UbU=";
};
cargoHash = "sha256-1e2uqxZFDbtcQREB0s2jxfSFgs/hnPxTlUGFeK5L9yw=";
cargoHash = "sha256-3V2eMxUtNcnWsh7cYA5Wf979sKmFl7bjwwrqwcfW4tI=";
sourceRoot = "${finalAttrs.src.name}/rust";
buildAndTestSubdir = "headless-client";
env.RUSTFLAGS = "--cfg system_certs";

View file

@ -11,16 +11,16 @@
buildGoModule (finalAttrs: {
pname = "flintlock";
version = "0.8.1";
version = "0.9.0";
src = fetchFromGitHub {
owner = "liquidmetal-dev";
repo = "flintlock";
rev = "v${finalAttrs.version}";
sha256 = "sha256-Kbk94sqj0aPsVonPsiu8kbjhIOURB1kX9Lt3NURL+jk=";
sha256 = "sha256-WQbZUbTrg50vYvFY5ng8LtT4d6aVsUzZUIy8tMUr50M=";
};
vendorHash = "sha256-Iv1qHEQLgw6huCA/6PKNmm+dS2yHgOvY/oy2fKjwEpY=";
vendorHash = "sha256-SjKxnLsC6RAg7is+ABRG1NyKX01cRNwCcW5B3Fgo/FQ=";
subPackages = [
"cmd/flintlock-metrics"

View file

@ -7,13 +7,13 @@
stdenv.mkDerivation (finalAttrs: {
preferLocalBuild = true;
pname = "freescout";
version = "1.8.226";
version = "1.8.229";
src = fetchFromGitHub {
owner = "freescout-help-desk";
repo = "freescout";
tag = finalAttrs.version;
hash = "sha256-9fojG6S6yb2+W94cHrLuYIRjRL8JWspsj4bNE4QKSuk=";
hash = "sha256-oA/GWEhdqmXt7v6iRKqud75uUBj1a6nKN7EjaYF0USk=";
};
patches = [

View file

@ -10,7 +10,7 @@
stdenv.mkDerivation (finalAttrs: {
pname = "fsverity-utils";
version = "1.6";
version = "1.7";
outputs = [
"out"
@ -21,7 +21,7 @@ stdenv.mkDerivation (finalAttrs: {
src = fetchzip {
url = "https://git.kernel.org/pub/scm/fs/fsverity/fsverity-utils.git/snapshot/fsverity-utils-v${finalAttrs.version}.tar.gz";
sha256 = "sha256-FZN4MKNmymIXZ2Q0woA0SLzPf4SaUJkj4ssKPsY4xXc=";
sha256 = "sha256-c8dillkgGh41elo/a5EqGQIrS4TZeDLsYkmyNke6koc=";
};
patches = lib.optionals (!enableShared) [

View file

@ -9,13 +9,13 @@
stdenv.mkDerivation {
pname = "fzf-zsh-plugin";
version = "1.0.0-unstable-2026-06-21";
version = "1.0.0-unstable-2026-06-30";
src = fetchFromGitHub {
owner = "unixorn";
repo = "fzf-zsh-plugin";
rev = "70e2ac8a12c137c1b097a6ecfdc0236e5ef51d1b";
hash = "sha256-qwqezNXBRFKTWyMp+9Ss2hEAU9Bznc/DK0XNGZOfVOE=";
rev = "6f953534d4c69a7340d27b7dcf14f406a22bed61";
hash = "sha256-RQrxCU7f3LSepUYm0+2ljvJfzVh8yp4NMJHxssA60Vk=";
};
strictDeps = true;

View file

@ -289,11 +289,11 @@ let
darwin = stdenvNoCC.mkDerivation (finalAttrs: {
inherit pname meta passthru;
version = "149.0.7827.201";
version = "150.0.7871.47";
src = fetchurl {
url = "http://dl.google.com/release2/chrome/ph3mj7mqtvbfhr67ckmjvjj5a4_149.0.7827.201/GoogleChrome-149.0.7827.201.dmg";
hash = "sha256-AI5oBE0uB2/YacF9LB4d6rXlAqEuZtlPYNQwLbs1K7E=";
url = "http://dl.google.com/release2/chrome/ad2pojsfcj6hr5telal5kk4t6gua_150.0.7871.47/GoogleChrome-150.0.7871.47.dmg";
hash = "sha256-1VTMVSBLfSRp9CxPaRkmdgAC0H5KNuZNWywTGLSphUI=";
};
dontPatch = true;

View file

@ -65,6 +65,7 @@ rustPlatform.buildRustPackage (finalAttrs: {
]
++ lib.optionals stdenv.hostPlatform.isDarwin [
cargo-bundle
rustPlatform.bindgenHook
];
dontUseCmakeConfigure = true;

View file

@ -15,13 +15,13 @@
let
pname = "headplane";
# Note, if you are upgrading this, you should upgrade headplane-agent at the same time
version = "0.6.2";
version = "0.6.3";
pnpmDepsHash = "sha256-CsmffCo9Se/4oiOqbcuhjPMuGmR2GL+YfcyWgzBTAh8=";
src = fetchFromGitHub {
owner = "tale";
repo = "headplane";
tag = "v${version}";
hash = "sha256-2C/Pn2M2aHADtoljSFg9hz6xOaZp6IRI77jjy+LDAgw=";
hash = "sha256-zvJUTKRIlHyPMq80teVXBSb7K9Zz44Kuuj2PPi6qIOw=";
};
headplaneSshWasm = buildGoModule {

View file

@ -6,7 +6,7 @@
helix-unwrapped,
removeReferencesTo,
pkgs,
tree-sitter,
tree-sitter-grammars,
lockedGrammars ? lib.importJSON ./grammars.json,
grammarsOverlay ? (
final: prev: {
@ -66,13 +66,9 @@ let
}
) prev;
tree-sitter-grammars =
helixTreeSitterGrammars =
lib.filterAttrs (drvName: _: lib.hasAttr (lib.removePrefix "tree-sitter-" drvName) lockedGrammars)
(
tree-sitter.grammarsScope.overrideScope (
lib.composeExtensions lockedVersionsOverlay grammarsOverlay
)
);
(tree-sitter-grammars.overrideScope (lib.composeExtensions lockedVersionsOverlay grammarsOverlay));
# Dynamic libraries for the grammars always use the `.so` extension, also on Darwin (should use `.dylib`)
# See here: https://github.com/helix-editor/helix/pull/14982
@ -82,7 +78,7 @@ let
lib.concatMapAttrsStringSep "\n" (_: grammar: ''
install -D ${grammar}/parser $out/${grammar.language}.so
${lib.getExe removeReferencesTo} -t ${grammar} $out/${grammar.language}.so
'') (lib.filterAttrs (_: lib.isDerivation) tree-sitter-grammars)
'') helixTreeSitterGrammars
);
lockedGrammarsCount = lib.length (lib.attrNames lockedGrammars);
@ -113,7 +109,7 @@ symlinkJoin {
passthru = {
updateScript = ./update.sh;
runtime = runtimeDir;
inherit tree-sitter-grammars;
tree-sitter-grammars = helixTreeSitterGrammars;
};
meta = {

View file

@ -25,6 +25,13 @@ appimageTools.wrapAppImage {
extraPkgs =
pkgs: with pkgs; [
libva
# VAAPI backends
intel-media-driver
intel-vaapi-driver
nvidia-vaapi-driver
mesa
# Other dependencies
libgpg-error
fontconfig
libGL

View file

@ -12,12 +12,6 @@ stdenv.mkDerivation (finalAttrs: {
pname = "immich-cli";
inherit (immich) version src pnpmDeps;
postPatch = ''
local -r cli_version="$(jq -r .version cli/package.json)"
test "$cli_version" = ${finalAttrs.version} \
|| (echo "error: update immich-cli version to $cli_version" && exit 1)
'';
nativeBuildInputs = [
jq
makeWrapper
@ -29,8 +23,7 @@ stdenv.mkDerivation (finalAttrs: {
buildPhase = ''
runHook preBuild
pnpm --filter @immich/sdk build
pnpm --filter @immich/cli build
pnpm --filter @immich/cli... build
runHook postBuild
'';

View file

@ -1,6 +1,5 @@
{
lib,
fetchpatch2,
immich,
python3,
nixosTests,
@ -17,15 +16,6 @@ python.pkgs.buildPythonApplication rec {
src = "${immich.src}/machine-learning";
pyproject = true;
patches = [
(fetchpatch2 {
name = "fix_tests_with_openvino_ep.patch";
relative = "machine-learning";
url = "https://github.com/immich-app/immich/commit/7f611d90317d75ac3d75adf428f367376171e106.patch?full_index=1";
hash = "sha256-dntL5AZS3VIp7++yUec4HWIdtwltrnIePNFPJaiZdy4=";
})
];
pythonRelaxDeps = [
"huggingface-hub"
"insightface"

View file

@ -4,7 +4,7 @@
fetchFromGitHub,
fetchPnpmDeps,
pnpmConfigHook,
pnpm_10,
pnpm_11,
python3,
nodejs,
node-gyp,
@ -37,7 +37,7 @@
buildPackages,
}:
let
pnpm = pnpm_10;
pnpm = pnpm_11;
esbuild' = buildPackages.esbuild.override {
buildGoModule =
@ -45,12 +45,12 @@ let
buildPackages.buildGoModule (
args
// rec {
version = "0.25.5";
version = "0.28.1";
src = fetchFromGitHub {
owner = "evanw";
repo = "esbuild";
tag = "v${version}";
hash = "sha256-jemGZkWmN1x2+ZzJ5cLp3MoXO0oDKjtZTmZS9Be/TDw=";
hash = "sha256-V+HKaWGAIs24ynFFIS9fQ0EAJJdNmlAMeL1sgDEAqWM=";
};
vendorHash = "sha256-+BfxCyg0KkDQpHt/wycy/8CTG6YBA/VJvJFhhzUnSiQ=";
}
@ -115,20 +115,20 @@ let
in
stdenv.mkDerivation (finalAttrs: {
pname = "immich";
version = "2.7.5";
version = "3.0.1";
src = fetchFromGitHub {
owner = "immich-app";
repo = "immich";
tag = "v${finalAttrs.version}";
hash = "sha256-EC1IXM7KObAWfwG5KEao5VDp79d8WGNEI7E89lLOJ44=";
hash = "sha256-Z18SEjUdFP2/grQtHFI6J7CVcAMalshPt3Sd4tGXsDw=";
};
pnpmDeps = fetchPnpmDeps {
inherit (finalAttrs) pname version src;
inherit pnpm;
fetcherVersion = 3;
hash = "sha256-FEesjbhxP7ydFfNshF3iFIk9N3Z53jrEZ9DRBjgEfs0=";
fetcherVersion = 4;
hash = "sha256-kCMFAPWcv2/qqVUoR5pbRxmkGg3mLPrpm8ce7R+9VYM=";
};
postPatch = ''
@ -174,7 +174,7 @@ stdenv.mkDerivation (finalAttrs: {
# If exiftool-vendored.pl isn't found, exiftool is searched for on the PATH
rm node_modules/.pnpm/node_modules/exiftool-vendored.pl
pnpm --filter immich build
pnpm --filter immich... build
runHook postBuild
'';
@ -196,8 +196,8 @@ stdenv.mkDerivation (finalAttrs: {
-o -name '*.target.mk' \
\) -exec rm -r {} +
mkdir -p "$packageOut/build"
ln -s '${finalAttrs.passthru.plugins}' "$packageOut/build/corePlugin"
mkdir -p "$packageOut/build/plugins"
ln -s '${finalAttrs.passthru.plugin-core}' "$packageOut/build/plugins/immich-plugin-core"
ln -s '${finalAttrs.passthru.web}' "$packageOut/build/www"
ln -s '${geodata}' "$packageOut/build/geodata"
@ -231,8 +231,8 @@ stdenv.mkDerivation (finalAttrs: {
immich = finalAttrs.finalPackage;
};
plugins = stdenv.mkDerivation {
pname = "immich-plugins";
plugin-core = stdenv.mkDerivation {
pname = "immich-plugin-core";
inherit (finalAttrs) version src pnpmDeps;
nativeBuildInputs = [
@ -246,7 +246,7 @@ stdenv.mkDerivation (finalAttrs: {
buildPhase = ''
runHook preBuild
pnpm --filter plugins build
pnpm --filter @immich/plugin-core... build
runHook postBuild
'';
@ -254,7 +254,7 @@ stdenv.mkDerivation (finalAttrs: {
installPhase = ''
runHook preInstall
cd plugins
cd packages/plugin-core
mkdir $out
cp -r dist manifest.json $out
@ -275,8 +275,7 @@ stdenv.mkDerivation (finalAttrs: {
buildPhase = ''
runHook preBuild
pnpm --filter @immich/sdk build
pnpm --filter immich-web build
pnpm --filter immich-web... build
runHook postBuild
'';

View file

@ -7,13 +7,13 @@
stdenv.mkDerivation (finalAttrs: {
pname = "interval-tree";
version = "3.1.1";
version = "3.1.2";
src = fetchFromGitHub {
owner = "5cript";
repo = "interval-tree";
tag = "v${finalAttrs.version}";
hash = "sha256-bSZ56EzzNy6gHgs8OptT/iBlf56RJz+09BE4WGGJpog=";
hash = "sha256-t1/oTr+sYkpTiDzaM4SxUcWzO3r24EkUJO04TYNLcQQ=";
};
# interval-tree is a header only library

View file

@ -10,12 +10,14 @@
python3Packages.buildPythonApplication rec {
pname = "jellyfin-mpv-shim";
version = "2.9.0";
version = "2.10.0";
pyproject = true;
# contains shaderpacks
src = fetchPypi {
inherit pname version;
hash = "sha256-YrwMvP66LAWKgx/yWBkWIkZtJ4a0YnhCiL7xB6fGm0E=";
pname = "jellyfin_mpv_shim";
inherit version;
hash = "sha256-ZWmJQJAGAonStZyWww4P+034f2vGnTwLua7KUOqoBBE=";
};
nativeBuildInputs = [
@ -29,29 +31,23 @@ python3Packages.buildPythonApplication rec {
dependencies = with python3Packages; [
jellyfin-apiclient-python
mpv
pillow
python-mpv-jsonipc
requests
# gui dependencies
# gui + mirror dependencies
pillow
pystray
tkinter
# display_mirror dependencies
jinja2
pywebview
# discord rich presence dependency
pypresence
];
# override $HOME directory:
# error: [Errno 13] Permission denied: '/homeless-shelter'
#
# remove jellyfin_mpv_shim/win_utils.py:
# ModuleNotFoundError: No module named 'win32gui'
preCheck = ''
export HOME=$TMPDIR
# remove jellyfin_mpv_shim/win_utils.py:
# ModuleNotFoundError: No module named 'win32gui'
rm jellyfin_mpv_shim/win_utils.py
'';
@ -60,7 +56,7 @@ python3Packages.buildPythonApplication rec {
--replace-fail "check_updates: bool = True" "check_updates: bool = False" \
--replace-fail "notify_updates: bool = True" "notify_updates: bool = False"
# python-mpv renamed to mpv with 1.0.4
substituteInPlace setup.py \
substituteInPlace pyproject.toml \
--replace-fail "python-mpv" "mpv" \
--replace-fail "mpv-jsonipc" "python_mpv_jsonipc"
'';
@ -70,7 +66,7 @@ python3Packages.buildPythonApplication rec {
for s in 16 32 48 64 128 256; do
mkdir -p $out/share/icons/hicolor/''${s}x''${s}/apps
ln -s $out/${python3Packages.python.sitePackages}/jellyfin_mpv_shim/integration/jellyfin-''${s}.png \
$out/share/icons/hicolor/''${s}x''${s}/apps/${pname}.png
$out/share/icons/hicolor/''${s}x''${s}/apps/jellyfin-mpv-shim.png
done
'';
@ -84,9 +80,9 @@ python3Packages.buildPythonApplication rec {
desktopItems = [
(makeDesktopItem {
name = pname;
exec = pname;
icon = pname;
name = "jellyfin-mpv-shim";
exec = "jellyfin-mpv-shim";
icon = "jellyfin-mpv-shim";
desktopName = "Jellyfin MPV Shim";
categories = [
"Video"
@ -123,5 +119,6 @@ python3Packages.buildPythonApplication rec {
];
maintainers = with lib.maintainers; [ jojosch ];
mainProgram = "jellyfin-mpv-shim";
platforms = lib.platforms.linux;
};
}

View file

@ -8,13 +8,13 @@
}:
buildGo125Module (finalAttrs: {
pname = "jjui";
version = "0.10.7";
version = "0.10.8";
src = fetchFromGitHub {
owner = "idursun";
repo = "jjui";
tag = "v${finalAttrs.version}";
hash = "sha256-IcJImxowBuQy9MBsz4QesDJM484qSvfQxPx4ykQ0ttA=";
hash = "sha256-ZbmCPCTsSbphLUy+lrTt4/6DVq70edKGI59U0HDbawE=";
};
vendorHash = "sha256-thGlfZ0SwHpynYydxu6Sg8OUe5kr7jiPKvl6BXS5BWA=";

View file

@ -3,17 +3,37 @@
version,
meta,
fetchNpmDeps,
fetchpatch,
buildNpmPackage,
}:
buildNpmPackage (finalAttrs: {
pname = "lasuite-meet-frontend";
inherit src version;
patches = [
# backport build fix
# FIXME: remove in next release
(fetchpatch {
url = "https://github.com/suitenumerique/meet/commit/df1495c97bc913866169ee8875a9a3169fcfc87e.diff";
stripLen = 2;
includes = [
"package.json"
"package-lock.json"
];
hash = "sha256-1A26T6LtFlOiJNVGD/fZs562feoQXY37A2ecUfvDGpk=";
})
];
sourceRoot = "${finalAttrs.src.name}/src/frontend";
npmDeps = fetchNpmDeps {
inherit (finalAttrs) version src sourceRoot;
hash = "sha256-YnHjuwDp293KVNTYTd4KcZqMamZNeccOdpSGgJ9a3G8=";
inherit (finalAttrs)
version
src
patches
sourceRoot
;
hash = "sha256-uiD5pcpmka43uraMFo7lRuQFx/4aq1BEhQvyCAzo8fg=";
};
npmBuildScript = "build";

View file

@ -22,7 +22,7 @@ buildNpmPackage (finalAttrs: {
pname = "${finalAttrs.pname}-npm-deps";
inherit version src;
inherit (finalAttrs) sourceRoot;
hash = "sha256-yq88kbrKn9HMwvxcWNXm7zonAqTs8T2i7iQAsD0TtnU=";
hash = "sha256-EPVkSzhecDZpvz+uOW0GZnmWl9KfE3UpkTCnhVnJ7dg=";
};
npmBuildScript = "build";

View file

@ -6,13 +6,13 @@
python3,
}:
let
version = "1.21.0";
version = "1.22.0";
src = fetchFromGitHub {
owner = "suitenumerique";
repo = "meet";
tag = "v${version}";
hash = "sha256-pUCSdnTBj/qwc0cya3P96r89r2K1GNSGg4DeIhxUKwI=";
hash = "sha256-w2Lw5K62Iaqzqa/ckxK36o5ZHFLXUpHnGGGl5PYGjaI=";
};
meta = {
@ -86,6 +86,7 @@ python.pkgs.buildPythonApplication (finalAttrs: {
mozilla-django-oidc
nested-multipart-parser
phonenumbers
posthog
psycopg
pydantic
pyjwt

View file

@ -12,7 +12,7 @@
buildNpmPackage (finalAttrs: {
pname = "matterjs-server";
version = "1.1.2";
version = "1.1.7";
__structuredAttrs = true;
strictDeps = true;
@ -20,10 +20,10 @@ buildNpmPackage (finalAttrs: {
owner = "matter-js";
repo = "matterjs-server";
tag = "v${finalAttrs.version}";
hash = "sha256-+ICWKZAcKwfd72eWUwmM7XmCwC4F6P+o1JsHNK2+ROE=";
hash = "sha256-8b4bLDVHTFcOHj3h/VuIxwdHJBleibZe9gUQvUD+aPA=";
};
npmDepsHash = "sha256-L1G8/Y23deIjA4azMFLn+ZS95sKoRPSR1O7R8kZF5MU=";
npmDepsHash = "sha256-wkxYJtHwwpP87PDuE2HWA/2GDEUWfcSN2sEvjWz27a8=";
nativeBuildInputs = [
makeBinaryWrapper

View file

@ -7,13 +7,13 @@
buildNpmPackage (finalAttrs: {
pname = "mcp-server-filesystem";
version = "2026.1.26";
version = "2026.7.4";
src = fetchFromGitHub {
owner = "modelcontextprotocol";
repo = "servers";
tag = finalAttrs.version;
hash = "sha256-uULXUEHFZpYm/fmF6PkOFCxS+B+0q3dMveLG+3JHrhk=";
hash = "sha256-rBdJoTC1wOEMbAAeSccFqaHL7lacf2SFfxZ/pp2Lx90=";
};
nativeBuildInputs = [
@ -22,7 +22,7 @@ buildNpmPackage (finalAttrs: {
dontNpmPrune = true;
npmWorkspace = "src/filesystem";
npmDepsHash = "sha256-jmz4JdpeHH07vJQFntBwrENbJaIcOuZMb7+qf497VOE=";
npmDepsHash = "sha256-KhlTXcS+VDSPGnEus9fA0xhIxfTGwX1Cr5hbxFvdc2k=";
# TODO: revisit this when https://github.com/NixOS/nixpkgs/pull/333759 has landed
postInstall = ''

View file

@ -7,13 +7,13 @@
buildNpmPackage (finalAttrs: {
pname = "mcp-server-memory";
version = "2026.1.26";
version = "2026.7.4";
src = fetchFromGitHub {
owner = "modelcontextprotocol";
repo = "servers";
tag = finalAttrs.version;
hash = "sha256-uULXUEHFZpYm/fmF6PkOFCxS+B+0q3dMveLG+3JHrhk=";
hash = "sha256-rBdJoTC1wOEMbAAeSccFqaHL7lacf2SFfxZ/pp2Lx90=";
};
nativeBuildInputs = [
@ -22,7 +22,7 @@ buildNpmPackage (finalAttrs: {
dontNpmPrune = true;
npmWorkspace = "src/memory";
npmDepsHash = "sha256-jmz4JdpeHH07vJQFntBwrENbJaIcOuZMb7+qf497VOE=";
npmDepsHash = "sha256-KhlTXcS+VDSPGnEus9fA0xhIxfTGwX1Cr5hbxFvdc2k=";
# TODO: revisit this when https://github.com/NixOS/nixpkgs/pull/333759 has landed
postInstall = ''

View file

@ -7,13 +7,13 @@
buildNpmPackage (finalAttrs: {
pname = "mcp-server-sequential-thinking";
version = "2026.1.26";
version = "2026.7.4";
src = fetchFromGitHub {
owner = "modelcontextprotocol";
repo = "servers";
tag = finalAttrs.version;
hash = "sha256-uULXUEHFZpYm/fmF6PkOFCxS+B+0q3dMveLG+3JHrhk=";
hash = "sha256-rBdJoTC1wOEMbAAeSccFqaHL7lacf2SFfxZ/pp2Lx90=";
};
nativeBuildInputs = [
@ -22,7 +22,7 @@ buildNpmPackage (finalAttrs: {
dontNpmPrune = true;
npmWorkspace = "src/sequentialthinking";
npmDepsHash = "sha256-jmz4JdpeHH07vJQFntBwrENbJaIcOuZMb7+qf497VOE=";
npmDepsHash = "sha256-KhlTXcS+VDSPGnEus9fA0xhIxfTGwX1Cr5hbxFvdc2k=";
# TODO: revisit this when https://github.com/NixOS/nixpkgs/pull/333759 has landed
postInstall = ''

View file

@ -52,7 +52,7 @@
let
pname = "mongodb-compass";
version = "1.49.9";
version = "1.49.10";
selectSystem =
attrs:
@ -67,9 +67,9 @@ let
}
}";
hash = selectSystem {
x86_64-linux = "sha256-Fx//NMDHqVaLwthOM7FeSgUXkvLOSbw5EH1qp1dgPcM=";
x86_64-darwin = "sha256-l5Jx0BUQR++tkF0cpctxhku6lB2rHEydp7roJy9AGFc=";
aarch64-darwin = "sha256-HCKt1rq6P7Uy6NJiFRBBp4YdpAdhwQQjEGT5h7IcyWE=";
x86_64-linux = "sha256-faD8sIbnho5urBWE0btcmD7tXT8eQCNyJYzpIyI+bA4=";
x86_64-darwin = "sha256-Ddue3jSvQecBjxQlyh/+ujrF9NheZ9PS0Dq7J08SJr8=";
aarch64-darwin = "sha256-HGOJPYC4+CgLQQ3BNUTNZUln5oqPkC8ewHft99LCZQ8=";
};
};

View file

@ -9,8 +9,6 @@ buildNimPackage (finalAttrs: {
pname = "mosdepth";
version = "0.3.13";
requiredNimVersion = 1;
src = fetchFromGitHub {
owner = "brentp";
repo = "mosdepth";

View file

@ -28,11 +28,11 @@
stdenv.mkDerivation (finalAttrs: {
pname = "mysql";
version = "8.4.9";
version = "8.4.10";
src = fetchurl {
url = "https://dev.mysql.com/get/Downloads/MySQL-${lib.versions.majorMinor finalAttrs.version}/mysql-${finalAttrs.version}.tar.gz";
hash = "sha256-5KqLOeQtH+B48zu9c2lfrCtU28e7E38L2+Y/e+GgLWs=";
hash = "sha256-1XpnMLrvFK4Rj39KbgKEW1tQkzdY32H7BuEE8nzMj5Y=";
};
nativeBuildInputs = [

View file

@ -0,0 +1,89 @@
{
lib,
stdenv,
fetchFromGitHub,
fetchzip,
# nativeBuildInputs
meson,
ninja,
pkg-config,
# buildInputs
arrow-cpp,
gbenchmark,
gtest,
nlohmann_json,
zlib,
zstd,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "nanoarrow";
version = "0.8.0";
__structuredAttrs = true;
strictDeps = true;
src = fetchFromGitHub {
owner = "apache";
repo = "arrow-nanoarrow";
tag = "apache-arrow-nanoarrow-${finalAttrs.version}";
hash = "sha256-1iLbT1eeyZaoB75uYTgg4qns+C7b4DErqMwJ9nQPRls=";
};
nativeBuildInputs = [
meson
ninja
pkg-config
];
buildInputs = [
arrow-cpp
gbenchmark
gtest
nlohmann_json
zlib
zstd
];
doCheck = true;
# Pre-populate the meson subproject with the flatcc source so meson doesn't try to download it.
# The wrap's patch_directory overlay (meson.build) must also be applied.
postPatch = ''
cp -r --no-preserve=mode ${finalAttrs.finalPackage.passthru.flatcc-src} ${finalAttrs.finalPackage.passthru.flatcc-src-dest}
cp subprojects/packagefiles/flatcc/meson.build ${finalAttrs.finalPackage.passthru.flatcc-src-dest}/
'';
mesonFlags = [
# Needed only on Darwin, because otherwise a metal-cpp dependency is
# required. It doesn't hurt to enable it for all platforms, so it'd be
# easier to spot if the option will disappear in the future for instance..
(lib.mesonOption "metal" "disabled")
];
passthru = {
# Nanoarrow requires a specific post-0.6.1 flatcc commit that adds `_with_size` API variants not
# present in the upstream 0.6.1 release.
flatcc-src = fetchFromGitHub {
owner = "dvidelabs";
repo = "flatcc";
rev = "fd3c4ae5cd39f0651eda6a3a1a374278070135d6";
hash = "sha256-8MqazKuwfFWVJ/yjT5fNrRzexFQ2ky4YTcZqOYjk9Qc=";
};
flatcc-src-dest = "subprojects/flatcc-${finalAttrs.finalPackage.passthru.flatcc-src.rev}";
};
outputs = [
"out"
"dev"
];
meta = {
description = "Helpers for Arrow C Data & Arrow C Stream interfaces";
homepage = "https://github.com/apache/arrow-nanoarrow";
changelog = "https://github.com/apache/arrow-nanoarrow/blob/${finalAttrs.src.rev}/CHANGELOG.md";
license = lib.licenses.asl20;
maintainers = with lib.maintainers; [ doronbehar ];
platforms = lib.platforms.all;
};
})

View file

@ -1,31 +0,0 @@
diff --git a/config/nim.cfg b/config/nim.cfg
index 3b964d124..850ed0ed9 100644
--- a/config/nim.cfg
+++ b/config/nim.cfg
@@ -8,26 +8,12 @@
# Environment variables can be accessed like so:
# gcc.path %= "$CC_PATH"
-cc = gcc
-
# additional options always passed to the compiler:
--parallel_build: "0" # 0 to auto-detect number of processors
hint[LineTooLong]=off
#hint[XDeclaredButNotUsed]=off
-# Examples of how to setup a cross-compiler:
-
-# Cross-compiling for Raspberry Pi.
-# (This compiler is available in gcc-arm-linux-gnueabihf package on Ubuntu)
-arm.linux.gcc.exe = "arm-linux-gnueabihf-gcc"
-arm.linux.gcc.linkerexe = "arm-linux-gnueabihf-gcc"
-
-# For OpenWRT, you will also need to adjust PATH to point to your toolchain.
-mips.linux.gcc.exe = "mips-openwrt-linux-gcc"
-mips.linux.gcc.linkerexe = "mips-openwrt-linux-gcc"
-
-
path="$lib/deprecated/core"
path="$lib/deprecated/pure"
path="$lib/pure/collections"

View file

@ -1,9 +0,0 @@
{
nim-unwrapped-1,
nim,
}:
nim.passthru.wrapNim {
nimUnwrapped = nim-unwrapped-1;
patches = [ ./nim.cfg.patch ];
}

View file

@ -1,9 +0,0 @@
{
nim-unwrapped-2_0,
nim-2_2,
}:
nim-2_2.passthru.wrapNim {
nimUnwrapped = nim-unwrapped-2_0;
inherit (nim-2_2) patches;
}

View file

@ -1,52 +0,0 @@
diff --git a/compiler/modulepaths.nim b/compiler/modulepaths.nim
index fa8fab08a..63b0cb44d 100644
--- a/compiler/modulepaths.nim
+++ b/compiler/modulepaths.nim
@@ -73,6 +73,17 @@ proc checkModuleName*(conf: ConfigRef; n: PNode; doLocalError=true): FileIndex =
else:
result = fileInfoIdx(conf, fullPath)
+proc rot13(result: var string) =
+ # don't mangle .nim
+ let finalIdx =
+ if result.endsWith(".nim"): result.len - 4
+ else: result.len
+ for i, c in result[0..<finalIdx]:
+ case c
+ of 'a'..'m', 'A'..'M': result[i] = char(c.uint8 + 13)
+ of 'n'..'z', 'N'..'Z': result[i] = char(c.uint8 - 13)
+ else: discard
+
proc mangleModuleName*(conf: ConfigRef; path: AbsoluteFile): string =
## Mangle a relative module path to avoid path and symbol collisions.
##
@@ -81,9 +92,11 @@ proc mangleModuleName*(conf: ConfigRef; path: AbsoluteFile): string =
##
## Example:
## `foo-#head/../bar` becomes `@foo-@hhead@s..@sbar`
- "@m" & relativeTo(path, conf.projectPath).string.multiReplace(
+ result = "@m" & relativeTo(path, conf.projectPath).string.multiReplace(
{$os.DirSep: "@s", $os.AltSep: "@s", "#": "@h", "@": "@@", ":": "@c"})
+ rot13(result)
proc demangleModuleName*(path: string): string =
## Demangle a relative module path.
result = path.multiReplace({"@@": "@", "@h": "#", "@s": "/", "@m": "", "@c": ":"})
+ rot13(result)
diff --git a/compiler/msgs.nim b/compiler/msgs.nim
index ae4bcfcb8..1ad7e5c08 100644
--- a/compiler/msgs.nim
+++ b/compiler/msgs.nim
@@ -661,8 +661,10 @@ proc uniqueModuleName*(conf: ConfigRef; fid: FileIndex): string =
for i in 0..<trunc:
let c = rel[i]
case c
- of 'a'..'z':
- result.add c
+ of 'a'..'m':
+ result.add char(c.uint8 + 13)
+ of 'n'..'z':
+ result.add char(c.uint8 - 13)
of {os.DirSep, os.AltSep}:
result.add 'Z' # because it looks a bit like '/'
of '.':

View file

@ -1,30 +0,0 @@
{
lib,
stdenv,
fetchurl,
nim-unwrapped-2,
}:
nim-unwrapped-2.overrideAttrs (
finalAttrs: prevAttrs: {
version = "1.6.20";
src = fetchurl {
url = "https://nim-lang.org/download/nim-${finalAttrs.version}.tar.xz";
hash = "sha256-/+0EdQTR/K9hDw3Xzz4Ce+kaKSsMnFEWFQTC87mE/7k=";
};
patches =
builtins.filter (
p:
builtins.elem (baseNameOf p) [
"NIM_CONFIG_DIR.patch"
"nixbuild.patch"
]
) nim-unwrapped-2.patches
++ [
./extra-mangling.patch
# Mangle store paths of modules to prevent runtime dependence.
]
++ lib.optional (!stdenv.hostPlatform.isWindows) ./toLocation.patch;
}
)

View file

@ -1,16 +0,0 @@
diff --git a/lib/std/private/miscdollars.nim b/lib/std/private/miscdollars.nim
index 840fedf54..6c3436308 100644
--- a/lib/std/private/miscdollars.nim
+++ b/lib/std/private/miscdollars.nim
@@ -6,9 +6,8 @@ template toLocation*(result: var string, file: string | cstring, line: int, col:
# it can be done in a single place.
result.add file
if line > 0:
- result.add "("
+ result.add ":"
addInt(result, line)
if col > 0:
- result.add ", "
+ result.add ":"
addInt(result, col)
- result.add ")"

View file

@ -1,27 +0,0 @@
{
lib,
fetchurl,
nim-unwrapped-1,
nim-unwrapped-2_2,
}:
nim-unwrapped-2_2.overrideAttrs (
finalAttrs: previousAttrs: {
version = "2.0.16";
src = fetchurl {
url = "https://nim-lang.org/download/nim-${finalAttrs.version}.tar.xz";
hash = "sha256-sucMbAEbVQcJMJCoiH+iUncyCP0EfuOPhWLiVp5cN4o=";
};
patches = lib.lists.unique (
builtins.filter (
p:
builtins.elem (baseNameOf p) [
"NIM_CONFIG_DIR.patch"
"nixbuild.patch"
"extra-mangling.patch"
"openssl.patch"
]
) (nim-unwrapped-1.patches ++ nim-unwrapped-2_2.patches)
);
}
)

View file

@ -1,52 +0,0 @@
diff --git a/compiler/modulegraphs.nim b/compiler/modulegraphs.nim
index 77762d23a..59dd8903a 100644
--- a/compiler/modulegraphs.nim
+++ b/compiler/modulegraphs.nim
@@ -503,7 +503,11 @@ proc uniqueModuleName*(conf: ConfigRef; m: PSym): string =
for i in 0..<trunc:
let c = rel[i]
case c
- of 'a'..'z', '0'..'9':
+ of 'a'..'m':
+ result.add char(c.uint8 + 13)
+ of 'n'..'z':
+ result.add char(c.uint8 - 13)
+ of '0'..'9':
result.add c
of {os.DirSep, os.AltSep}:
result.add 'Z' # because it looks a bit like '/'
diff --git a/compiler/modulepaths.nim b/compiler/modulepaths.nim
index c9e6060e5..2b349f27c 100644
--- a/compiler/modulepaths.nim
+++ b/compiler/modulepaths.nim
@@ -79,6 +79,17 @@ proc checkModuleName*(conf: ConfigRef; n: PNode; doLocalError=true): FileIndex =
else:
result = fileInfoIdx(conf, fullPath)
+proc rot13(result: var string) =
+ # don't mangle .nim
+ let finalIdx =
+ if result.endsWith(".nim"): result.len - 4
+ else: result.len
+ for i, c in result[0..<finalIdx]:
+ case c
+ of 'a'..'m', 'A'..'M': result[i] = char(c.uint8 + 13)
+ of 'n'..'z', 'N'..'Z': result[i] = char(c.uint8 - 13)
+ else: discard
+
proc mangleModuleName*(conf: ConfigRef; path: AbsoluteFile): string =
## Mangle a relative module path to avoid path and symbol collisions.
##
@@ -87,9 +98,11 @@ proc mangleModuleName*(conf: ConfigRef; path: AbsoluteFile): string =
##
## Example:
## `foo-#head/../bar` becomes `@foo-@hhead@s..@sbar`
- "@m" & relativeTo(path, conf.projectPath).string.multiReplace(
+ result = "@m" & relativeTo(path, conf.projectPath).string.multiReplace(
{$os.DirSep: "@s", $os.AltSep: "@s", "#": "@h", "@": "@@", ":": "@c"})
+ rot13(result)
proc demangleModuleName*(path: string): string =
## Demangle a relative module path.
result = path.multiReplace({"@@": "@", "@h": "#", "@s": "/", "@m": "", "@c": ":"})
+ rot13(result)

View file

@ -0,0 +1,17 @@
diff --git a/compiler/modulegraphs.nim b/compiler/modulegraphs.nim
index 55f751cda..b0b3e3f40 100644
--- a/compiler/modulegraphs.nim
+++ b/compiler/modulegraphs.nim
@@ -466,7 +466,11 @@ proc uniqueModuleName*(conf: ConfigRef; m: PSym): string =
for i in 0..<trunc:
let c = rel[i]
case c
- of 'a'..'z', '0'..'9':
+ of 'a'..'m':
+ result.add char(c.uint8 + 13)
+ of 'n'..'z':
+ result.add char(c.uint8 - 13)
+ of '0'..'9':
result.add c
of {os.DirSep, os.AltSep}:
result.add 'Z' # because it looks a bit like '/'

View file

@ -48,21 +48,21 @@ index e659746ee..dfb2d3cf2 100644
SSLeay()
- proc ERR_load_BIO_strings*() {.cdecl, dynlib: DLLUtilName, importc.}
+ proc ERR_load_BIO_strings*() {.cdecl, gimportc.}
+ proc ERR_load_BIO_strings*() {.cdecl, importc.}
else:
- proc OPENSSL_init_ssl*(opts: uint64, settings: uint8): cint {.cdecl, dynlib: DLLSSLName, importc, discardable.}
+ proc OPENSSL_init_ssl*(opts: uint64, settings: uint8): cint {.cdecl, gimportc, discardable.}
+ proc OPENSSL_init_ssl*(opts: uint64, settings: uint8): cint {.cdecl, importc, discardable.}
proc SSL_library_init*(): cint {.discardable.} =
## Initialize SSL using OPENSSL_init_ssl for OpenSSL >= 1.1.0
return OPENSSL_init_ssl(0.uint64, 0.uint8)
- proc TLS_method*(): PSSL_METHOD {.cdecl, dynlib: DLLSSLName, importc.}
+ proc TLS_method*(): PSSL_METHOD {.cdecl, gimportc.}
+ proc TLS_method*(): PSSL_METHOD {.cdecl, importc.}
proc SSLv23_method*(): PSSL_METHOD =
TLS_method()
- proc OpenSSL_version_num(): culong {.cdecl, dynlib: DLLUtilName, importc.}
+ proc OpenSSL_version_num(): culong {.cdecl, gimportc.}
+ proc OpenSSL_version_num(): culong {.cdecl, importc.}
proc getOpenSSLVersion*(): culong =
## Return OpenSSL version as unsigned long
@ -71,13 +71,13 @@ index e659746ee..dfb2d3cf2 100644
when defined(libressl) or defined(openssl10):
- proc SSL_state(ssl: SslPtr): cint {.cdecl, dynlib: DLLSSLName, importc.}
+ proc SSL_state(ssl: SslPtr): cint {.cdecl, gimportc.}
+ proc SSL_state(ssl: SslPtr): cint {.cdecl, importc.}
proc SSL_in_init*(ssl: SslPtr): cint {.inline.} =
SSL_state(ssl) and SSL_ST_INIT
else:
- proc SSL_in_init*(ssl: SslPtr): cint {.cdecl, dynlib: DLLSSLName, importc.}
- proc SSL_CTX_set_ciphersuites*(ctx: SslCtx, str: cstring): cint {.cdecl, dynlib: DLLSSLName, importc.}
+ proc SSL_in_init*(ssl: SslPtr): cint {.cdecl, gimportc.}
+ proc SSL_in_init*(ssl: SslPtr): cint {.cdecl, importc.}
+ proc SSL_CTX_set_ciphersuites*(ctx: SslCtx, str: cstring): cint {.cdecl, importc.}
template OpenSSL_add_all_algorithms*() = discard
@ -89,7 +89,7 @@ index e659746ee..dfb2d3cf2 100644
+ proc SSLv23_client_method*(): PSSL_METHOD {.cdecl, importc.}
+ proc SSLv2_method*(): PSSL_METHOD {.cdecl, importc.}
+ proc SSLv3_method*(): PSSL_METHOD {.cdecl, importc.}
+ proc CRYPTO_set_mem_functions(a,b,c: pointer){.cdecl, gimportc.}
+ proc CRYPTO_set_mem_functions(a,b,c: pointer){.cdecl, importc.}
else:
# Here we're trying to stay compatible between openssl versions. Some

View file

@ -13,12 +13,12 @@
}:
stdenv.mkDerivation (finalAttrs: {
pname = "nim-unwrapped";
version = "2.2.4";
version = "2.2.10";
strictDeps = true;
src = fetchurl {
url = "https://nim-lang.org/download/nim-${finalAttrs.version}.tar.xz";
hash = "sha256-+CtBl1D8zlYfP4l6BIaxgBhoRddvtdmfJIzhZhCBicc=";
hash = "sha256-eVe37QBCBrzxC8xPO0dEFTh45i8kMVUqmo6dP0Do1dU=";
};
buildInputs = [
@ -36,7 +36,7 @@ stdenv.mkDerivation (finalAttrs: {
./nixbuild.patch
# Load libraries at runtime by absolute path
./extra-mangling-2.patch
./extra-mangling.patch
# Mangle store paths of modules to prevent runtime dependence.
./openssl.patch
@ -49,6 +49,11 @@ stdenv.mkDerivation (finalAttrs: {
pname = "nim-bootstrap";
inherit (finalAttrs) version src preBuild;
enableParallelBuilding = true;
buildPhase = ''
runHook preBuild
./build.sh
runHook postBuild
'';
installPhase = ''
runHook preInstall
install -Dt $out/bin bin/nim
@ -67,9 +72,7 @@ stdenv.mkDerivation (finalAttrs: {
"--cpu:${stdenv.hostPlatform.nim.cpu}"
"--os:${stdenv.hostPlatform.nim.os}"
"-d:release"
"-d:useGnuReadline"
]
++ lib.optional (stdenv.hostPlatform.isDarwin || stdenv.hostPlatform.isLinux) "-d:nativeStacktrace";
];
preBuild = lib.optionalString (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64) ''
substituteInPlace makefile \

View file

@ -8,7 +8,7 @@
makeWrapper,
openssl,
pcre,
nim-unwrapped-2_2 ? buildPackages.nim-unwrapped-2_2,
nim-unwrapped ? buildPackages.nim-unwrapped,
}:
let
@ -18,7 +18,7 @@ let
targetPlatformConfig = stdenv.targetPlatform.config;
in
stdenv.mkDerivation (finalAttrs: {
name = "${targetPlatformConfig}-nim-wrapper-${nimUnwrapped.version}";
pname = "${targetPlatformConfig}-nim-wrapper";
inherit (nimUnwrapped) version;
preferLocalBuild = true;
strictDeps = true;
@ -86,7 +86,7 @@ let
runHook postBuild
'';
wrapperArgs = lib.optionals (!(stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64)) [
wrapperArgs = [
"--prefix PATH : ${lib.makeBinPath [ buildPackages.gdb ]}:${placeholder "out"}/bin"
# Used by nim-gdb
@ -148,6 +148,6 @@ let
});
in
wrapNim {
nimUnwrapped = nim-unwrapped-2_2;
nimUnwrapped = nim-unwrapped;
patches = [ ./nim2.cfg.patch ];
}

View file

@ -0,0 +1,13 @@
diff --git a/src/nim_lk.nim b/src/nim_lk.nim
index 09ced9d..45c5ddc 100644
--- a/src/nim_lk.nim
+++ b/src/nim_lk.nim
@@ -573,7 +573,7 @@ proc update(bom: JsonNode; bomRef: string; byName: bool): bool =
let comp = bom.getComponent(bomRef, byName)
assert not comp.isNil
var bomRef = comp{"bom-ref"}.getStr
- assert not bomRef.isNil
+ assert bomRef != ""
var suitableRefFound = false
let extRefs = comp{"externalReferences"}
for extRef in extRefs.elems:

View file

@ -23,6 +23,10 @@ buildNimSbom (finalAttrs: {
buildInputs = [ openssl ];
nativeBuildInputs = [ makeWrapper ];
patches = [
./nil.patch
];
postFixup = ''
wrapProgram $out/bin/nim_lk \
--suffix PATH : ${

Some files were not shown because too many files have changed in this diff Show more