···29293030 nixpkgs-vet --base ${filtered base} ${filtered head}
31313232+ # TODO: Upstream into nixpkgs-vet, see:
3333+ # https://github.com/NixOS/nixpkgs-vet/issues/164
3434+ badFiles=$(find ${filtered head}/pkgs -type f -name '*.nix' -print | xargs grep -l '^[^#]*<nixpkgs/' || true)
3535+ if [[ -n $badFiles ]]; then
3636+ echo "Nixpkgs is not allowed to use <nixpkgs> to refer to itself."
3737+ echo "The offending files:"
3838+ echo "$badFiles"
3939+ exit 1
4040+ fi
4141+4242+ # TODO: Upstream into nixpkgs-vet, see:
4343+ # https://github.com/NixOS/nixpkgs-vet/issues/166
4444+ conflictingPaths=$(find ${filtered head} | awk '{ print $1 " " tolower($1) }' | sort -k2 | uniq -D -f 1 | cut -d ' ' -f 1)
4545+ if [[ -n $conflictingPaths ]]; then
4646+ echo "Files in nixpkgs must not vary only by case."
4747+ echo "The offending paths:"
4848+ echo "$conflictingPaths"
4949+ exit 1
5050+ fi
5151+3252 touch $out
3353 ''
+1
doc/release-notes/rl-2511.section.md
···17171818- `base16-builder` node package has been removed due to lack of upstream maintenance.
1919- `gentium` package now provides `Gentium-*.ttf` files, and not `GentiumPlus-*.ttf` files like before. The font identifiers `Gentium Plus*` are available in the `gentium-plus` package, and if you want to use the more recently updated package `gentium` [by sil](https://software.sil.org/gentium/), you should update your configuration files to use the `Gentium` font identifier.
2020+- `space-orbit` package has been removed due to lack of upstream maintenance. Debian upstream stopped tracking it in 2011.
20212122## Other Notable Changes {#sec-nixpkgs-release-25.11-notable-changes}
2223
···36363737- The Pocket ID module ([`services.pocket-id`][#opt-services.pocket-id.enable]) and package (`pocket-id`) has been updated to 1.0.0. Some environment variables have been changed or removed, see the [migration guide](https://pocket-id.org/docs/setup/migrate-to-v1/).
38383939+- The `services.siproxd` module has been removed as `siproxd` is unmaintained and broken with libosip 5.x.
4040+3941- `renovate` was updated to v40. See the [upstream release notes](https://github.com/renovatebot/renovate/releases/tag/40.0.0) for breaking changes.
40424143- The `boot.readOnlyNixStore` has been removed. Control over bind mount options on `/nix/store` is now offered by the `boot.nixStoreMountOpts` option.
···223223 "services"
224224 "shout"
225225 ] "shout was removed because it was deprecated upstream in favor of thelounge.")
226226+ (mkRemovedOptionModule [ "services" "siproxd" ] ''
227227+ The siproxd package and the corresponding module have been removed due to
228228+ the service being unmaintained. `services.asterisk.*` or `services.freeswitch.*`
229229+ could be used instead.
230230+ '')
226231 (mkRemovedOptionModule [ "services" "ssmtp" ] ''
227232 The ssmtp package and the corresponding module have been removed due to
228233 the program being unmaintained. The options `programs.msmtp.*` can be
-196
nixos/modules/services/misc/siproxd.nix
···11-{
22- config,
33- lib,
44- pkgs,
55- ...
66-}:
77-let
88-99- cfg = config.services.siproxd;
1010-1111- conf = ''
1212- daemonize = 0
1313- rtp_proxy_enable = 1
1414- user = siproxd
1515- if_inbound = ${cfg.ifInbound}
1616- if_outbound = ${cfg.ifOutbound}
1717- sip_listen_port = ${toString cfg.sipListenPort}
1818- rtp_port_low = ${toString cfg.rtpPortLow}
1919- rtp_port_high = ${toString cfg.rtpPortHigh}
2020- rtp_dscp = ${toString cfg.rtpDscp}
2121- sip_dscp = ${toString cfg.sipDscp}
2222- ${lib.optionalString (
2323- cfg.hostsAllowReg != [ ]
2424- ) "hosts_allow_reg = ${lib.concatStringsSep "," cfg.hostsAllowReg}"}
2525- ${lib.optionalString (
2626- cfg.hostsAllowSip != [ ]
2727- ) "hosts_allow_sip = ${lib.concatStringsSep "," cfg.hostsAllowSip}"}
2828- ${lib.optionalString (
2929- cfg.hostsDenySip != [ ]
3030- ) "hosts_deny_sip = ${lib.concatStringsSep "," cfg.hostsDenySip}"}
3131- ${lib.optionalString (cfg.passwordFile != "") "proxy_auth_pwfile = ${cfg.passwordFile}"}
3232- ${cfg.extraConfig}
3333- '';
3434-3535- confFile = builtins.toFile "siproxd.conf" conf;
3636-3737-in
3838-{
3939- ##### interface
4040-4141- options = {
4242-4343- services.siproxd = {
4444-4545- enable = lib.mkOption {
4646- type = lib.types.bool;
4747- default = false;
4848- description = ''
4949- Whether to enable the Siproxd SIP
5050- proxy/masquerading daemon.
5151- '';
5252- };
5353-5454- ifInbound = lib.mkOption {
5555- type = lib.types.str;
5656- example = "eth0";
5757- description = "Local network interface";
5858- };
5959-6060- ifOutbound = lib.mkOption {
6161- type = lib.types.str;
6262- example = "ppp0";
6363- description = "Public network interface";
6464- };
6565-6666- hostsAllowReg = lib.mkOption {
6767- type = lib.types.listOf lib.types.str;
6868- default = [ ];
6969- example = [
7070- "192.168.1.0/24"
7171- "192.168.2.0/24"
7272- ];
7373- description = ''
7474- Access control list for incoming SIP registrations.
7575- '';
7676- };
7777-7878- hostsAllowSip = lib.mkOption {
7979- type = lib.types.listOf lib.types.str;
8080- default = [ ];
8181- example = [
8282- "123.45.0.0/16"
8383- "123.46.0.0/16"
8484- ];
8585- description = ''
8686- Access control list for incoming SIP traffic.
8787- '';
8888- };
8989-9090- hostsDenySip = lib.mkOption {
9191- type = lib.types.listOf lib.types.str;
9292- default = [ ];
9393- example = [
9494- "10.0.0.0/8"
9595- "11.0.0.0/8"
9696- ];
9797- description = ''
9898- Access control list for denying incoming
9999- SIP registrations and traffic.
100100- '';
101101- };
102102-103103- sipListenPort = lib.mkOption {
104104- type = lib.types.int;
105105- default = 5060;
106106- description = ''
107107- Port to listen for incoming SIP messages.
108108- '';
109109- };
110110-111111- rtpPortLow = lib.mkOption {
112112- type = lib.types.int;
113113- default = 7070;
114114- description = ''
115115- Bottom of UDP port range for incoming and outgoing RTP traffic
116116- '';
117117- };
118118-119119- rtpPortHigh = lib.mkOption {
120120- type = lib.types.int;
121121- default = 7089;
122122- description = ''
123123- Top of UDP port range for incoming and outgoing RTP traffic
124124- '';
125125- };
126126-127127- rtpTimeout = lib.mkOption {
128128- type = lib.types.int;
129129- default = 300;
130130- description = ''
131131- Timeout for an RTP stream. If for the specified
132132- number of seconds no data is relayed on an active
133133- stream, it is considered dead and will be killed.
134134- '';
135135- };
136136-137137- rtpDscp = lib.mkOption {
138138- type = lib.types.int;
139139- default = 46;
140140- description = ''
141141- DSCP (differentiated services) value to be assigned
142142- to RTP packets. Allows QOS aware routers to handle
143143- different types traffic with different priorities.
144144- '';
145145- };
146146-147147- sipDscp = lib.mkOption {
148148- type = lib.types.int;
149149- default = 0;
150150- description = ''
151151- DSCP (differentiated services) value to be assigned
152152- to SIP packets. Allows QOS aware routers to handle
153153- different types traffic with different priorities.
154154- '';
155155- };
156156-157157- passwordFile = lib.mkOption {
158158- type = lib.types.str;
159159- default = "";
160160- description = ''
161161- Path to per-user password file.
162162- '';
163163- };
164164-165165- extraConfig = lib.mkOption {
166166- type = lib.types.lines;
167167- default = "";
168168- description = ''
169169- Extra configuration to add to siproxd configuration.
170170- '';
171171- };
172172-173173- };
174174-175175- };
176176-177177- ##### implementation
178178-179179- config = lib.mkIf cfg.enable {
180180-181181- users.users.siproxyd = {
182182- uid = config.ids.uids.siproxd;
183183- };
184184-185185- systemd.services.siproxd = {
186186- description = "SIP proxy/masquerading daemon";
187187- wantedBy = [ "multi-user.target" ];
188188- after = [ "network.target" ];
189189- serviceConfig = {
190190- ExecStart = "${pkgs.siproxd}/sbin/siproxd -c ${confFile}";
191191- };
192192- };
193193-194194- };
195195-196196-}
···37423742 - lxd-client # failure in job https://hydra.nixos.org/build/233231826 at 2023-09-02
37433743 - lxd-client-config # failure in job https://hydra.nixos.org/build/233225008 at 2023-09-02
37443744 - lye # failure in job https://hydra.nixos.org/build/233229866 at 2023-09-02
37453745- - lz4-frame-conduit # failure in job https://hydra.nixos.org/build/233225578 at 2023-09-02
37463745 - lzip # failure in job https://hydra.nixos.org/build/233215027 at 2023-09-02
37473746 - lzma-streams # failure in job https://hydra.nixos.org/build/233229106 at 2023-09-02
37483747 - lzo # failure in job https://hydra.nixos.org/build/233200657 at 2023-09-02
···11+{
22+ lib,
33+ buildDunePackage,
44+ fetchurl,
55+}:
66+buildDunePackage rec {
77+ pname = "ancient";
88+ version = "0.10.0";
99+1010+ minimalOCamlVersion = "4.12";
1111+1212+ src = fetchurl {
1313+ url = "https://github.com/OCamlPro/ocaml-ancient/releases/download/${version}/ancient-${version}.tbz";
1414+ hash = "sha256-XeVUPrdg7QSV7V0Tz8Mkj5jvzKtYD9DON+tt9kkuCHM=";
1515+ };
1616+1717+ doCheck = true;
1818+1919+ meta = {
2020+ description = "Use data structures larger than available memory";
2121+ longDescription = ''
2222+ This module allows you to use in-memory data structures which are
2323+ larger than available memory and so are kept in swap. If you try this
2424+ in normal OCaml code, you'll find that the machine quickly descends
2525+ into thrashing as the garbage collector repeatedly iterates over
2626+ swapped memory structures. This module lets you break that
2727+ limitation. Of course the module doesn't work by magic :-) If your
2828+ program tries to access these large structures, they still need to be
2929+ swapped back in, but it is suitable for large, sparsely accessed
3030+ structures.
3131+3232+ Secondly, this module allows you to share those structures between
3333+ processes. In this mode, the structures are backed by a disk file,
3434+ and any process that has read/write access that disk file can map that
3535+ file in and see the structures.
3636+ '';
3737+ homepage = "https://github.com/OCamlPro/ocaml-ancient";
3838+ changelog = "https://raw.githubusercontent.com/OCamlPro/ocaml-ancient/refs/tags/${version}/CHANGES.md";
3939+ license = lib.licenses.lgpl21Plus;
4040+ maintainers = with lib.maintainers; [ momeemt ];
4141+ };
4242+}
···16901690 riko4 = throw "'riko4' has been removed as it was unmaintained, failed to build and dependend on outdated libraries"; # Added 2025-05-18
16911691 rippled = throw "rippled has been removed as it was broken and had not been updated since 2022"; # Added 2024-11-25
16921692 rippled-validator-keys-tool = throw "rippled-validator-keys-tool has been removed as it was broken and had not been updated since 2022"; # Added 2024-11-25
16931693+ rke2_1_29 = throw "'rke2_1_29' has been removed from nixpkgs as it has reached end of life"; # Added 2025-05-05
16931694 rke2_testing = throw "'rke2_testing' has been removed from nixpkgs as the RKE2 testing channel no longer serves releases"; # Added 2025-06-02
16941695 rl_json = tclPackages.rl_json; # Added 2025-05-03
16951696 rockbox_utility = rockbox-utility; # Added 2022-03-17
···17611762 signal-desktop-source = lib.warnOnInstantiate "'signal-desktop-source' is now exposed at 'signal-desktop'." signal-desktop; # Added 2025-04-16
17621763 silc_server = throw "'silc_server' has been removed because it is unmaintained"; # Added 2025-05-12
17631764 silc_client = throw "'silc_client' has been removed because it is unmaintained"; # Added 2025-05-12
17641764- siproxd = throw "'siproxd' has been as it was unmaintained and incompatible with newer libosip versions"; # Added 2025-05-18
17651765+ siproxd = throw "'siproxd' has been removed as it was unmaintained and incompatible with newer libosip versions"; # Added 2025-05-18
17651766 sheesy-cli = throw "'sheesy-cli' has been removed due to lack of upstream maintenance"; # Added 2025-01-26
17661767 shout = nodePackages.shout; # Added unknown; moved 2024-10-19
17671768 sky = throw "'sky' has been removed because its upstream website disappeared"; # Added 2024-07-21
···17811782 SP800-90B_EntropyAssessment = sp800-90b-entropyassessment; # Added on 2024-06-12
17821783 SPAdes = spades; # Added 2024-06-12
17831784 spark2014 = gnatprove; # Added 2024-02-25
17851785+ space-orbit = throw "'space-orbit' has been removed because it is unmaintained; Debian upstream stopped tracking it in 2011."; # Added 2025-06-08
17841786 spatialite_gui = throw "spatialite_gui has been renamed to spatialite-gui"; # Added 2025-01-12
17851787 spatialite_tools = throw "spatialite_tools has been renamed to spatialite-tools"; # Added 2025-02-06
17861788