···15011501 </listitem>
15021502 <listitem>
15031503 <para>
15041504- MultiMC has been replaced with the fork PolyMC due to upstream
15051505- developers being hostile to 3rd party package maintainers.
15061506- PolyMC removes all MultiMC branding and is aimed at providing
15071507- proper 3rd party packages like the one contained in Nixpkgs.
15081508- This change affects the data folder where game instances and
15091509- other save and configuration files are stored. Users with
15101510- existing installations should rename
15041504+ MultiMC has been replaced with the fork PrismLauncher due to
15051505+ upstream developers being hostile to 3rd party package
15061506+ maintainers. PrismLauncher removes all MultiMC branding and is
15071507+ aimed at providing proper 3rd party packages like the one
15081508+ contained in Nixpkgs. This change affects the data folder
15091509+ where game instances and other save and configuration files
15101510+ are stored. Users with existing installations should rename
15111511 <literal>~/.local/share/multimc</literal> to
15121512- <literal>~/.local/share/polymc</literal>. The main config
15131513- file’s path has also moved from
15121512+ <literal>~/.local/share/PrismLauncher</literal>. The main
15131513+ config file’s path has also moved from
15141514 <literal>~/.local/share/multimc/multimc.cfg</literal> to
15151515- <literal>~/.local/share/polymc/polymc.cfg</literal>.
15151515+ <literal>~/.local/share/PrismLauncher/prismlauncher.cfg</literal>.
15161516 </para>
15171517 </listitem>
15181518 <listitem>
···4040 </listitem>
4141 <listitem>
4242 <para>
4343+ The <literal>polymc</literal> package has been removed due to
4444+ a rogue maintainer. It has been replaced by
4545+ <literal>prismlauncher</literal>, a fork by the rest of the
4646+ maintainers. For more details, see
4747+ <link xlink:href="https://github.com/NixOS/nixpkgs/pull/196624">the
4848+ pull request that made this change</link> and
4949+ <link xlink:href="https://github.com/NixOS/nixpkgs/issues/196460">this
5050+ issue detailing the vulnerability</link>. Users with existing
5151+ installations should rename
5252+ <literal>~/.local/share/polymc</literal> to
5353+ <literal>~/.local/share/PrismLauncher</literal>. The main
5454+ config file’s path has also moved from
5555+ <literal>~/.local/share/polymc/polymc.cfg</literal> to
5656+ <literal>~/.local/share/PrismLauncher/prismlauncher.cfg</literal>.
5757+ </para>
5858+ </listitem>
5959+ <listitem>
6060+ <para>
4361 The <literal>nixpkgs.hostPlatform</literal> and
4462 <literal>nixpkgs.buildPlatform</literal> options have been
4563 added. These cover and override the
+9-1
nixos/doc/manual/release-notes/rl-2205.section.md
···581581582582- The `miller` package has been upgraded from 5.10.3 to [6.2.0](https://github.com/johnkerl/miller/releases/tag/v6.2.0). See [What's new in Miller 6](https://miller.readthedocs.io/en/latest/new-in-miller-6).
583583584584-- MultiMC has been replaced with the fork PolyMC due to upstream developers being hostile to 3rd party package maintainers. PolyMC removes all MultiMC branding and is aimed at providing proper 3rd party packages like the one contained in Nixpkgs. This change affects the data folder where game instances and other save and configuration files are stored. Users with existing installations should rename `~/.local/share/multimc` to `~/.local/share/polymc`. The main config file's path has also moved from `~/.local/share/multimc/multimc.cfg` to `~/.local/share/polymc/polymc.cfg`.
584584+- MultiMC has been replaced with the fork PrismLauncher due to upstream
585585+ developers being hostile to 3rd party package maintainers. PrismLauncher
586586+ removes all MultiMC branding and is aimed at providing proper 3rd party
587587+ packages like the one contained in Nixpkgs. This change affects the data
588588+ folder where game instances and other save and configuration files are stored.
589589+ Users with existing installations should rename `~/.local/share/multimc` to
590590+ `~/.local/share/PrismLauncher`. The main config file's path has also moved
591591+ from `~/.local/share/multimc/multimc.cfg` to
592592+ `~/.local/share/PrismLauncher/prismlauncher.cfg`.
585593586594- `systemd-nspawn@.service` settings have been reverted to the default systemd behaviour. User namespaces are now activated by default. If you want to keep running nspawn containers without user namespaces you need to set `systemd.nspawn.<name>.execConfig.PrivateUsers = false`
587595
+10
nixos/doc/manual/release-notes/rl-2211.section.md
···2020 built for `stdenv.hostPlatform` (i.e. produced by `stdenv.cc`) by evaluating
2121 `stdenv.buildPlatform.canExecute stdenv.hostPlatform`.
22222323+- The `polymc` package has been removed due to a rogue maintainer. It has been
2424+ replaced by `prismlauncher`, a fork by the rest of the maintainers. For more
2525+ details, see [the pull request that made this
2626+ change](https://github.com/NixOS/nixpkgs/pull/196624) and [this issue
2727+ detailing the vulnerability](https://github.com/NixOS/nixpkgs/issues/196460).
2828+ Users with existing installations should rename `~/.local/share/polymc` to
2929+ `~/.local/share/PrismLauncher`. The main config file's path has also moved
3030+ from `~/.local/share/polymc/polymc.cfg` to
3131+ `~/.local/share/PrismLauncher/prismlauncher.cfg`.
3232+2333- The `nixpkgs.hostPlatform` and `nixpkgs.buildPlatform` options have been added.
2434 These cover and override the `nixpkgs.{system,localSystem,crossSystem}` options.
2535
+6-6
nixos/modules/services/web-apps/freshrss.nix
···238238 # do installation or reconfigure
239239 if test -f ${cfg.dataDir}/config.php; then
240240 # reconfigure with settings
241241- ${pkgs.php}/bin/php ./cli/reconfigure.php ${settingsFlags}
242242- ${pkgs.php}/bin/php ./cli/update-user.php --user ${cfg.defaultUser} --password "$(cat ${cfg.passwordFile})"
241241+ ./cli/reconfigure.php ${settingsFlags}
242242+ ./cli/update-user.php --user ${cfg.defaultUser} --password "$(cat ${cfg.passwordFile})"
243243 else
244244 # Copy the user data template directory
245245 cp -r ./data ${cfg.dataDir}
246246247247 # check correct folders in data folder
248248- ${pkgs.php}/bin/php ./cli/prepare.php
248248+ ./cli/prepare.php
249249 # install with settings
250250- ${pkgs.php}/bin/php ./cli/do-install.php ${settingsFlags}
251251- ${pkgs.php}/bin/php ./cli/create-user.php --user ${cfg.defaultUser} --password "$(cat ${cfg.passwordFile})"
250250+ ./cli/do-install.php ${settingsFlags}
251251+ ./cli/create-user.php --user ${cfg.defaultUser} --password "$(cat ${cfg.passwordFile})"
252252 fi
253253 '';
254254 };
···267267 Group = "freshrss";
268268 StateDirectory = "freshrss";
269269 WorkingDirectory = cfg.package;
270270- ExecStart = "${pkgs.php}/bin/php ./app/actualize_script.php";
270270+ ExecStart = "./app/actualize_script.php";
271271 } // systemd-hardening;
272272 };
273273 };
···1313, bazel ? bazelPkg
1414, bazelFlags ? []
1515, bazelBuildFlags ? []
1616+, bazelTestFlags ? []
1617, bazelFetchFlags ? []
1718, bazelTarget
1919+, bazelTestTargets ? []
1820, buildAttrs
1921, fetchAttrs
20222121-# Newer versions of Bazel are moving away from built-in rules_cc and instead
2222-# allow fetching it as an external dependency in a WORKSPACE file[1]. If
2323-# removed in the fixed-output fetch phase, building will fail to download it.
2424-# This can be seen e.g. in #73097
2525-#
2626-# This option allows configuring the removal of rules_cc in cases where a
2727-# project depends on it via an external dependency.
2828-#
2929-# [1]: https://github.com/bazelbuild/rules_cc
2323+ # Newer versions of Bazel are moving away from built-in rules_cc and instead
2424+ # allow fetching it as an external dependency in a WORKSPACE file[1]. If
2525+ # removed in the fixed-output fetch phase, building will fail to download it.
2626+ # This can be seen e.g. in #73097
2727+ #
2828+ # This option allows configuring the removal of rules_cc in cases where a
2929+ # project depends on it via an external dependency.
3030+ #
3131+ # [1]: https://github.com/bazelbuild/rules_cc
3032, removeRulesCC ? true
3133, removeLocalConfigCc ? true
3234, removeLocal ? true
33353434-# Use build --nobuild instead of fetch. This allows fetching the dependencies
3535-# required for the build as configured, rather than fetching all the dependencies
3636-# which may not work in some situations (e.g. Java code which ends up relying on
3737-# Debian-specific /usr/share/java paths, but doesn't in the configured build).
3636+ # Use build --nobuild instead of fetch. This allows fetching the dependencies
3737+ # required for the build as configured, rather than fetching all the dependencies
3838+ # which may not work in some situations (e.g. Java code which ends up relying on
3939+ # Debian-specific /usr/share/java paths, but doesn't in the configured build).
3840, fetchConfigured ? true
39414040-# Don’t add Bazel --copt and --linkopt from NIX_CFLAGS_COMPILE /
4141-# NIX_LDFLAGS. This is necessary when using a custom toolchain which
4242-# Bazel wants all headers / libraries to come from, like when using
4343-# CROSSTOOL. Weirdly, we can still get the flags through the wrapped
4444-# compiler.
4242+ # Don’t add Bazel --copt and --linkopt from NIX_CFLAGS_COMPILE /
4343+ # NIX_LDFLAGS. This is necessary when using a custom toolchain which
4444+ # Bazel wants all headers / libraries to come from, like when using
4545+ # CROSSTOOL. Weirdly, we can still get the flags through the wrapped
4646+ # compiler.
4547, dontAddBazelOpts ? false
4648, ...
4749}:
···5052 fArgs = removeAttrs args [ "buildAttrs" "fetchAttrs" "removeRulesCC" ];
5153 fBuildAttrs = fArgs // buildAttrs;
5254 fFetchAttrs = fArgs // removeAttrs fetchAttrs [ "sha256" ];
5353-5454-in stdenv.mkDerivation (fBuildAttrs // {
5555- inherit name bazelFlags bazelBuildFlags bazelFetchFlags bazelTarget;
5555+ bazelCmd = { cmd, additionalFlags, targets }:
5656+ lib.optionalString (targets != [ ]) ''
5757+ # See footnote called [USER and BAZEL_USE_CPP_ONLY_TOOLCHAIN variables]
5858+ BAZEL_USE_CPP_ONLY_TOOLCHAIN=1 \
5959+ USER=homeless-shelter \
6060+ bazel \
6161+ --batch \
6262+ --output_base="$bazelOut" \
6363+ --output_user_root="$bazelUserRoot" \
6464+ ${cmd} \
6565+ --curses=no \
6666+ -j $NIX_BUILD_CORES \
6767+ "''${copts[@]}" \
6868+ "''${host_copts[@]}" \
6969+ "''${linkopts[@]}" \
7070+ "''${host_linkopts[@]}" \
7171+ $bazelFlags \
7272+ ${lib.strings.concatStringsSep " " additionalFlags} \
7373+ ${lib.strings.concatStringsSep " " targets}
7474+ '';
7575+in
7676+stdenv.mkDerivation (fBuildAttrs // {
7777+ inherit name bazelFlags bazelBuildFlags bazelTestFlags bazelFetchFlags bazelTarget bazelTestTargets;
56785779 deps = stdenv.mkDerivation (fFetchAttrs // {
5880 name = "${name}-deps.tar.gz";
5959- inherit bazelFlags bazelBuildFlags bazelFetchFlags bazelTarget;
8181+ inherit bazelFlags bazelBuildFlags bazelTestFlags bazelFetchFlags bazelTarget bazelTestTargets;
60826183 impureEnvVars = lib.fetchers.proxyImpureEnvVars ++ fFetchAttrs.impureEnvVars or [];
6284···7799 buildPhase = fFetchAttrs.buildPhase or ''
78100 runHook preBuild
791018080- # Bazel computes the default value of output_user_root before parsing the
8181- # flag. The computation of the default value involves getting the $USER
8282- # from the environment. I don't have that variable when building with
8383- # sandbox enabled. Code here
8484- # https://github.com/bazelbuild/bazel/blob/9323c57607d37f9c949b60e293b573584906da46/src/main/cpp/startup_options.cc#L123-L124
8585- #
8686- # On macOS Bazel will use the system installed Xcode or CLT toolchain instead of the one in the PATH unless we pass BAZEL_USE_CPP_ONLY_TOOLCHAIN
8787-102102+ # See footnote called [USER and BAZEL_USE_CPP_ONLY_TOOLCHAIN variables].
88103 # We disable multithreading for the fetching phase since it can lead to timeouts with many dependencies/threads:
89104 # https://github.com/bazelbuild/bazel/issues/6502
90105 BAZEL_USE_CPP_ONLY_TOOLCHAIN=1 \
···97112 --loading_phase_threads=1 \
98113 $bazelFlags \
99114 $bazelFetchFlags \
100100- $bazelTarget
115115+ ${bazelTarget} \
116116+ ${lib.strings.concatStringsSep " " bazelTestTargets}
101117102118 runHook postBuild
103119 '';
···189205 # the wrappers are expecting will not be set. So instead of relying on the
190206 # wrappers picking them up, pass them in explicitly via `--copt`, `--linkopt`
191207 # and related flags.
192192- #
208208+193209 copts=()
194210 host_copts=()
195211 linkopts=()
···209225 done
210226 fi
211227212212- BAZEL_USE_CPP_ONLY_TOOLCHAIN=1 \
213213- USER=homeless-shelter \
214214- bazel \
215215- --batch \
216216- --output_base="$bazelOut" \
217217- --output_user_root="$bazelUserRoot" \
218218- build \
219219- --curses=no \
220220- -j $NIX_BUILD_CORES \
221221- "''${copts[@]}" \
222222- "''${host_copts[@]}" \
223223- "''${linkopts[@]}" \
224224- "''${host_linkopts[@]}" \
225225- $bazelFlags \
226226- $bazelBuildFlags \
227227- $bazelTarget
228228-228228+ ${
229229+ bazelCmd {
230230+ cmd = "test";
231231+ additionalFlags =
232232+ ["--test_output=errors"] ++ bazelTestFlags;
233233+ targets = bazelTestTargets;
234234+ }
235235+ }
236236+ ${
237237+ bazelCmd {
238238+ cmd = "build";
239239+ additionalFlags = bazelBuildFlags;
240240+ targets = [bazelTarget];
241241+ }
242242+ }
229243 runHook postBuild
230244 '';
231245})
246246+247247+# [USER and BAZEL_USE_CPP_ONLY_TOOLCHAIN variables]:
248248+# Bazel computes the default value of output_user_root before parsing the
249249+# flag. The computation of the default value involves getting the $USER
250250+# from the environment. Code here :
251251+# https://github.com/bazelbuild/bazel/blob/9323c57607d37f9c949b60e293b573584906da46/src/main/cpp/startup_options.cc#L123-L124
252252+#
253253+# On macOS Bazel will use the system installed Xcode or CLT toolchain instead of the one in the PATH unless we pass BAZEL_USE_CPP_ONLY_TOOLCHAIN.
+6
pkgs/development/compilers/rust/binary.nix
···5252 # https://github.com/rust-lang/rust/issues/34722#issuecomment-232164943
5353 '';
54545555+ # The strip tool in cctools 973.0.1 and up appears to break rlibs in the
5656+ # binaries. The lib.rmeta object inside the ar archive should contain an
5757+ # .rmeta section, but it is removed. Luckily, this doesn't appear to be an
5858+ # issue for Rust builds produced by Nix.
5959+ dontStrip = stdenv.isDarwin;
6060+5561 setupHooks = ./setup-hook.sh;
5662 };
5763
···934934 mpich2 = throw "'mpich2' has been renamed to/replaced by 'mpich'"; # Converted to throw 2022-02-22
935935 mqtt-bench = throw "mqtt-bench has been dropped due to the lack of maintenance from upstream since 2017"; # Added 2022-06-02
936936 msf = throw "'msf' has been renamed to/replaced by 'metasploit'"; # Converted to throw 2022-02-22
937937- multimc = throw "multimc was removed from nixpkgs; use polymc instead (see https://github.com/NixOS/nixpkgs/pull/154051 for more information)"; # Added 2022-01-08
937937+ multimc = throw "multimc was removed from nixpkgs; use prismlauncher instead (see https://github.com/NixOS/nixpkgs/pull/154051 for more information)"; # Added 2022-01-08
938938 mumble_git = pkgs.mumble; # Added 2019-08-01
939939 murmur_git = pkgs.murmur; # Added 2019-08-01
940940 mutt-with-sidebar = mutt; # Added 2022-09-17
···946946 mesa_drivers = mesa.drivers;
947947 mesa_noglu = throw "'mesa_noglu' has been renamed to/replaced by 'mesa'"; # Converted to throw 2022-02-22
948948949949- mpv-with-scripts = self.wrapMpv self.mpv-unwrapped { }; # Added 2020-05-22
949949+ mpv-with-scripts = throw "'mpv-with-scripts' has been renamed to/replaced by 'mpv' or with 'mpv.override { scripts = [ mpvScripts.plugin-name ]; }' if you where using plugins."; # Converted to throw 2022-09-24
950950 mssys = throw "'mssys' has been renamed to/replaced by 'ms-sys'"; # Converted to throw 2022-02-22
951951 multipath_tools = throw "'multipath_tools' has been renamed to/replaced by 'multipath-tools'"; # Converted to throw 2022-02-22
952952 mumsi = throw "mumsi has been removed from nixpkgs, as it's unmaintained and does not build anymore"; # Added 2021-11-18
···11511151 pmtools = throw "'pmtools' has been renamed to/replaced by 'acpica-tools'"; # Converted to throw 2022-02-22
11521152 pocketsphinx = throw "pocketsphinx has been removed: unmaintained"; # Added 2022-04-24
11531153 polarssl = throw "'polarssl' has been renamed to/replaced by 'mbedtls'"; # Converted to throw 2022-02-22
11541154+ polymc = throw "PolyMC has been removed from nixpkgs due to a hostile takeover by a rogue maintainer. The rest of the maintainers have made a fork which is packaged as 'prismlauncher'"; # Added 2022-10-18
11541155 polysh = throw "polysh has been removed from nixpkgs as the upstream has abandoned the project"; # Added 2022-01-01
11551156 pond = throw "pond has been dropped due to the lack of maintanence from upstream since 2016"; # Added 2022-06-02
11561157 poppler_qt5 = throw "'poppler_qt5' has been renamed to/replaced by 'libsForQt5.poppler'"; # Converted to throw 2022-02-22