Merge staging-next into staging
This commit is contained in:
@@ -3918,6 +3918,12 @@
|
||||
name = "Builditluc";
|
||||
keys = [ { fingerprint = "FF16E475723B8C1E57A6B2569374074AE2D6F20E"; } ];
|
||||
};
|
||||
burmudar = {
|
||||
email = "william.bezuidenhout@gmail.com";
|
||||
github = "burmudar";
|
||||
githubId = 1001709;
|
||||
name = "William Bezuidenhout";
|
||||
};
|
||||
buurro = {
|
||||
email = "marcoburro98@gmail.com";
|
||||
github = "buurro";
|
||||
@@ -14284,6 +14290,11 @@
|
||||
githubId = 2034420;
|
||||
name = "Luke Sandell";
|
||||
};
|
||||
lasantosr = {
|
||||
github = "lasantosr";
|
||||
githubId = 5946707;
|
||||
name = "Luis Santos";
|
||||
};
|
||||
lassulus = {
|
||||
email = "lassulus@gmail.com";
|
||||
matrix = "@lassulus:lassul.us";
|
||||
|
||||
@@ -377,6 +377,8 @@
|
||||
|
||||
- `strongSwan` has been updated to 6.0. See [strongSwan 6.0.0 release notes](https://github.com/strongswan/strongswan/releases/tag/6.0.0) for a complete list of changes.
|
||||
|
||||
- `slurm` no longer supports gtk2.
|
||||
|
||||
- `amdgpu` kernel driver overdrive mode can now be enabled by setting [hardware.amdgpu.overdrive.enable](#opt-hardware.amdgpu.overdrive.enable) and customized through [hardware.amdgpu.overdrive.ppfeaturemask](#opt-hardware.amdgpu.overdrive.ppfeaturemask).
|
||||
This allows for fine-grained control over the GPU's performance and maybe required by overclocking softwares like Corectrl and Lact. These new options replace old options such as {option}`programs.corectrl.gpuOverclock.enable` and {option}`programs.tuxclocker.enableAMD`.
|
||||
|
||||
@@ -392,3 +394,5 @@
|
||||
- `sparkleshare` has been removed as it no longer builds and has been abandoned upstream.
|
||||
|
||||
- The `open-webui` package's postgres support have been moved to optional dependencies to comply with upstream changes in 0.6.26.
|
||||
|
||||
- `prl-tools` has been moved out of `linuxPackages` because Parallels Guest Tools become driverless since 26.1.0.
|
||||
|
||||
@@ -12,17 +12,18 @@ let
|
||||
shell:
|
||||
if (shell == "fish") then
|
||||
''
|
||||
${lib.getExe pkgs.git-worktree-switcher} init ${shell} | source
|
||||
${lib.getExe cfg.package} init ${shell} | source
|
||||
''
|
||||
else
|
||||
''
|
||||
eval "$(${lib.getExe pkgs.git-worktree-switcher} init ${shell})"
|
||||
eval "$(${lib.getExe cfg.package} init ${shell})"
|
||||
'';
|
||||
in
|
||||
{
|
||||
options = {
|
||||
programs.git-worktree-switcher = {
|
||||
enable = lib.mkEnableOption "git-worktree-switcher, switch between git worktrees with speed.";
|
||||
package = lib.mkPackageOption pkgs "git-worktree-switcher" { };
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
@@ -236,13 +236,14 @@ let
|
||||
+
|
||||
/*
|
||||
Now we update the other settings defined in cleanedConfig which are not
|
||||
"folders" or "devices".
|
||||
"folders", "devices", or "guiPasswordFile".
|
||||
*/
|
||||
(lib.pipe cleanedConfig [
|
||||
builtins.attrNames
|
||||
(lib.subtractLists [
|
||||
"folders"
|
||||
"devices"
|
||||
"guiPasswordFile"
|
||||
])
|
||||
(map (subOption: ''
|
||||
curl -X PUT -d ${
|
||||
@@ -251,6 +252,12 @@ let
|
||||
''))
|
||||
(lib.concatStringsSep "\n")
|
||||
])
|
||||
+
|
||||
# Now we hash the contents of guiPasswordFile and use the result to update the gui password
|
||||
(lib.optionalString (cfg.guiPasswordFile != null) ''
|
||||
${pkgs.mkpasswd}/bin/mkpasswd -m bcrypt --stdin <"${cfg.guiPasswordFile}" | tr -d "\n" > "$RUNTIME_DIRECTORY/password_bcrypt"
|
||||
curl -X PATCH --variable "pw_bcrypt@$RUNTIME_DIRECTORY/password_bcrypt" --expand-json '{ "password": "{{pw_bcrypt}}" }' ${curlAddressArgs "/rest/config/gui"}
|
||||
'')
|
||||
+ ''
|
||||
# restart Syncthing if required
|
||||
if curl ${curlAddressArgs "/rest/config/restart-required"} |
|
||||
@@ -285,6 +292,14 @@ in
|
||||
'';
|
||||
};
|
||||
|
||||
guiPasswordFile = mkOption {
|
||||
type = types.nullOr types.str;
|
||||
default = null;
|
||||
description = ''
|
||||
Path to file containing the plaintext password for Syncthing's GUI.
|
||||
'';
|
||||
};
|
||||
|
||||
overrideDevices = mkOption {
|
||||
type = types.bool;
|
||||
default = true;
|
||||
@@ -837,6 +852,12 @@ in
|
||||
from the configuration, creating path conflicts.
|
||||
'';
|
||||
}
|
||||
{
|
||||
assertion = (lib.hasAttrByPath [ "gui" "password" ] cfg.settings) -> cfg.guiPasswordFile == null;
|
||||
message = ''
|
||||
Please use only one of services.syncthing.settings.gui.password or services.syncthing.guiPasswordFile.
|
||||
'';
|
||||
}
|
||||
];
|
||||
|
||||
networking.firewall = mkIf cfg.openDefaultPorts {
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
|
||||
@@ -27,20 +28,11 @@ in
|
||||
type = types.bool;
|
||||
default = false;
|
||||
description = ''
|
||||
This enables Parallels Tools for Linux guests, along with provided
|
||||
video, mouse and other hardware drivers.
|
||||
This enables Parallels Tools for Linux guests.
|
||||
'';
|
||||
};
|
||||
|
||||
package = mkOption {
|
||||
type = types.nullOr types.package;
|
||||
default = config.boot.kernelPackages.prl-tools;
|
||||
defaultText = "config.boot.kernelPackages.prl-tools";
|
||||
example = literalExpression "config.boot.kernelPackages.prl-tools";
|
||||
description = ''
|
||||
Defines which package to use for prl-tools. Override to change the version.
|
||||
'';
|
||||
};
|
||||
package = lib.mkPackageOption pkgs "prl-tools" { };
|
||||
};
|
||||
|
||||
};
|
||||
@@ -53,10 +45,6 @@ in
|
||||
|
||||
boot.extraModulePackages = [ prl-tools ];
|
||||
|
||||
boot.kernelModules = [
|
||||
"prl_tg"
|
||||
];
|
||||
|
||||
services.timesyncd.enable = false;
|
||||
|
||||
systemd.services.prltoolsd = {
|
||||
|
||||
@@ -1402,12 +1402,16 @@ in
|
||||
switchTest = runTest ./switch-test.nix;
|
||||
sx = runTest ./sx.nix;
|
||||
sympa = runTest ./sympa.nix;
|
||||
syncthing = runTest ./syncthing.nix;
|
||||
syncthing-folders = runTest ./syncthing-folders.nix;
|
||||
syncthing-init = runTest ./syncthing-init.nix;
|
||||
syncthing-many-devices = runTest ./syncthing-many-devices.nix;
|
||||
syncthing-no-settings = runTest ./syncthing-no-settings.nix;
|
||||
syncthing-relay = runTest ./syncthing-relay.nix;
|
||||
syncthing = runTest ./syncthing/main.nix;
|
||||
syncthing-folders = runTest ./syncthing/folders.nix;
|
||||
syncthing-guiPassword = runTest ./syncthing/guiPassword.nix;
|
||||
syncthing-guiPasswordFile = runTest ./syncthing/guiPasswordFile.nix;
|
||||
syncthing-init = runTest ./syncthing/init.nix;
|
||||
# FIXME: Test has been failing since 2025-07-06:
|
||||
# https://github.com/NixOS/nixpkgs/issues/447674
|
||||
# syncthing-many-devices = runTest ./syncthing/many-devices.nix;
|
||||
syncthing-no-settings = runTest ./syncthing/no-settings.nix;
|
||||
syncthing-relay = runTest ./syncthing/relay.nix;
|
||||
sysfs = runTest ./sysfs.nix;
|
||||
sysinit-reactivation = runTest ./sysinit-reactivation.nix;
|
||||
systemd = runTest ./systemd.nix;
|
||||
|
||||
@@ -0,0 +1,56 @@
|
||||
{ lib, pkgs, ... }:
|
||||
{
|
||||
name = "syncthing-guiPassword";
|
||||
meta.maintainers = with lib.maintainers; [ nullcube ];
|
||||
enableOCR = true;
|
||||
|
||||
nodes.machine = {
|
||||
imports = [ ../common/x11.nix ];
|
||||
environment.systemPackages = with pkgs; [
|
||||
syncthing
|
||||
xdotool
|
||||
];
|
||||
|
||||
programs.firefox = {
|
||||
enable = true;
|
||||
preferences = {
|
||||
# Prevent firefox from asking to save the password
|
||||
"signon.rememberSignons" = false;
|
||||
};
|
||||
};
|
||||
|
||||
services.syncthing = {
|
||||
enable = true;
|
||||
settings.options.urAccepted = -1;
|
||||
settings.gui = {
|
||||
insecureAdminAccess = false;
|
||||
user = "alice";
|
||||
password = "alice_password";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
testScript = ''
|
||||
machine.wait_for_unit("syncthing.service")
|
||||
machine.wait_for_x()
|
||||
machine.execute("xterm -e 'firefox 127.0.0.1:8384' >&2 &")
|
||||
machine.wait_for_window("Syncthing")
|
||||
machine.screenshot("pre-login")
|
||||
|
||||
with subtest("Syncthing requests authentication"):
|
||||
machine.wait_for_text("Authentication Required", 10)
|
||||
|
||||
with subtest("Syncthing password is valid"):
|
||||
machine.execute("xdotool type \"alice\"")
|
||||
machine.execute("xdotool key Tab")
|
||||
machine.execute("xdotool type \"alice_password\"")
|
||||
machine.execute("xdotool key Enter")
|
||||
machine.sleep(2)
|
||||
machine.wait_for_text("This Device", 10)
|
||||
machine.screenshot("post-login")
|
||||
|
||||
with subtest("Plaintext Syncthing password is not in final config"):
|
||||
config = machine.succeed("cat /var/lib/syncthing/.config/syncthing/config.xml")
|
||||
assert "alice_password" not in config
|
||||
'';
|
||||
}
|
||||
@@ -0,0 +1,56 @@
|
||||
{ lib, pkgs, ... }:
|
||||
{
|
||||
name = "syncthing-guiPasswordFile";
|
||||
meta.maintainers = with lib.maintainers; [ nullcube ];
|
||||
enableOCR = true;
|
||||
|
||||
nodes.machine = {
|
||||
imports = [ ../common/x11.nix ];
|
||||
environment.systemPackages = with pkgs; [
|
||||
syncthing
|
||||
xdotool
|
||||
];
|
||||
|
||||
programs.firefox = {
|
||||
enable = true;
|
||||
preferences = {
|
||||
# Prevent firefox from asking to save the password
|
||||
"signon.rememberSignons" = false;
|
||||
};
|
||||
};
|
||||
|
||||
services.syncthing = {
|
||||
enable = true;
|
||||
settings.options.urAccepted = -1;
|
||||
settings.gui = {
|
||||
insecureAdminAccess = false;
|
||||
user = "alice";
|
||||
};
|
||||
guiPasswordFile = (pkgs.writeText "syncthing-password-file" ''alice_password'').outPath;
|
||||
};
|
||||
};
|
||||
|
||||
testScript = ''
|
||||
machine.wait_for_unit("syncthing.service")
|
||||
machine.wait_for_x()
|
||||
machine.execute("xterm -e 'firefox 127.0.0.1:8384' >&2 &")
|
||||
machine.wait_for_window("Syncthing")
|
||||
machine.screenshot("pre-login")
|
||||
|
||||
with subtest("Syncthing requests authentication"):
|
||||
machine.wait_for_text("Authentication Required", 10)
|
||||
|
||||
with subtest("Syncthing password is valid"):
|
||||
machine.execute("xdotool type \"alice\"")
|
||||
machine.execute("xdotool key Tab")
|
||||
machine.execute("xdotool type \"alice_password\"")
|
||||
machine.execute("xdotool key Enter")
|
||||
machine.sleep(2)
|
||||
machine.wait_for_text("This Device", 10)
|
||||
machine.screenshot("post-login")
|
||||
|
||||
with subtest("Plaintext Syncthing password is not in final config"):
|
||||
config = machine.succeed("cat /var/lib/syncthing/.config/syncthing/config.xml")
|
||||
assert "alice_password" not in config
|
||||
'';
|
||||
}
|
||||
@@ -55,7 +55,7 @@ mkDerivation rec {
|
||||
# TODO: The tests are failing because it can't locate QT plugins. Is there a better way to do this?
|
||||
+ (builtins.concatStringsSep "\n" (
|
||||
lib.lists.flatten (
|
||||
builtins.map (pkg: [
|
||||
map (pkg: [
|
||||
(lib.optionalString (pkg ? qtPluginPrefix) ''
|
||||
export QT_PLUGIN_PATH="${pkg}/${pkg.qtPluginPrefix}"''${QT_PLUGIN_PATH:+':'}$QT_PLUGIN_PATH
|
||||
'')
|
||||
|
||||
@@ -84,7 +84,7 @@ let
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
mkdir -p $out/bin
|
||||
mv -t $out/bin ${builtins.concatStringsSep " " (builtins.map (dir: "Pianoteq*/${dir}/*") archdirs)}
|
||||
mv -t $out/bin ${builtins.concatStringsSep " " (map (dir: "Pianoteq*/${dir}/*") archdirs)}
|
||||
install -Dm644 ${./pianoteq.svg} $out/share/icons/hicolor/scalable/apps/pianoteq.svg
|
||||
for size in 16 22 32 48 64 128 256; do
|
||||
dir=$out/share/icons/hicolor/"$size"x"$size"/apps
|
||||
|
||||
@@ -19,7 +19,7 @@ vendorhash() {
|
||||
|
||||
findpath() {
|
||||
path="$(nix --extra-experimental-features nix-command eval --json --impure -f "$nixpkgs" "$1.meta.position" | jq -r . | cut -d: -f1)"
|
||||
outpath="$(nix --extra-experimental-features nix-command eval --json --impure --expr "builtins.fetchGit \"$nixpkgs\"")"
|
||||
outpath="$(nix --extra-experimental-features nix-command eval --json --impure --expr "fetchGit \"$nixpkgs\"")"
|
||||
|
||||
if [ -n "$outpath" ]; then
|
||||
path="${path/$(echo "$outpath" | jq -r .)/$nixpkgs}"
|
||||
|
||||
@@ -98,7 +98,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
echo "OK"
|
||||
'';
|
||||
in
|
||||
builtins.concatStringsSep "\n" (builtins.map script builderKeys);
|
||||
builtins.concatStringsSep "\n" (map script builderKeys);
|
||||
in
|
||||
''
|
||||
pushd $(mktemp -d)
|
||||
|
||||
@@ -109,7 +109,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
echo "OK"
|
||||
'';
|
||||
in
|
||||
builtins.concatStringsSep "\n" (builtins.map script builderKeys);
|
||||
builtins.concatStringsSep "\n" (map script builderKeys);
|
||||
in
|
||||
''
|
||||
pushd $(mktemp -d)
|
||||
|
||||
+3
-3
@@ -21,8 +21,8 @@
|
||||
|
||||
let
|
||||
|
||||
appPythonDeps = builtins.map (item: item.eafPythonDeps) enabledApps;
|
||||
appOtherDeps = builtins.map (item: item.eafOtherDeps) enabledApps;
|
||||
appPythonDeps = map (item: item.eafPythonDeps) enabledApps;
|
||||
appOtherDeps = map (item: item.eafOtherDeps) enabledApps;
|
||||
|
||||
pythonPackageLists = [
|
||||
(
|
||||
@@ -38,7 +38,7 @@ let
|
||||
)
|
||||
]
|
||||
++ appPythonDeps;
|
||||
pythonPkgs = ps: builtins.concatLists (builtins.map (f: f ps) pythonPackageLists);
|
||||
pythonPkgs = ps: builtins.concatLists (map (f: f ps) pythonPackageLists);
|
||||
pythonEnv = python3.withPackages pythonPkgs;
|
||||
|
||||
otherPackageLists = [
|
||||
|
||||
@@ -172,7 +172,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
{
|
||||
backendPath = (
|
||||
lib.concatStringsSep " " (
|
||||
builtins.map (x: ''"-B${x}"'') (
|
||||
map (x: ''"-B${x}"'') (
|
||||
[
|
||||
# Paths necessary so the JIT compiler finds its libraries:
|
||||
"${lib.getLib libgccjit}/lib"
|
||||
|
||||
@@ -59,7 +59,7 @@ in
|
||||
plugins-for =
|
||||
with lib.asserts;
|
||||
ide:
|
||||
builtins.map (plugin: plugin.name) (
|
||||
map (plugin: plugin.name) (
|
||||
builtins.filter (
|
||||
plugin:
|
||||
(
|
||||
|
||||
@@ -185,7 +185,7 @@ let
|
||||
mkRepoEntry = entry: {
|
||||
name = ".m2/repository/" + entry.path;
|
||||
path = fetchurl {
|
||||
urls = builtins.map (url: "${url}/${entry.url}") repositories;
|
||||
urls = map (url: "${url}/${entry.url}") repositories;
|
||||
sha256 = entry.hash;
|
||||
};
|
||||
};
|
||||
|
||||
@@ -18,7 +18,7 @@ rec {
|
||||
{
|
||||
extraClasspaths ? [ ],
|
||||
}:
|
||||
(builtins.map (dep: if builtins.hasAttr "jar" dep.path then dep.path.jar else dep.path) packages)
|
||||
(map (dep: if builtins.hasAttr "jar" dep.path then dep.path.jar else dep.path) packages)
|
||||
++ extraClasspaths;
|
||||
makeClasspaths =
|
||||
{
|
||||
|
||||
@@ -18,7 +18,7 @@ rec {
|
||||
...
|
||||
}:
|
||||
stdenv.mkDerivation (
|
||||
(builtins.removeAttrs attrs [
|
||||
(removeAttrs attrs [
|
||||
"namePrefix"
|
||||
"path"
|
||||
])
|
||||
|
||||
@@ -230,7 +230,7 @@ let
|
||||
nvimGrammars = lib.mapAttrsToList (
|
||||
name: value:
|
||||
value.origGrammar
|
||||
or (builtins.throw "additions to `pkgs.vimPlugins.nvim-treesitter.grammarPlugins` set should be passed through `pkgs.neovimUtils.grammarToPlugin` first")
|
||||
or (throw "additions to `pkgs.vimPlugins.nvim-treesitter.grammarPlugins` set should be passed through `pkgs.neovimUtils.grammarToPlugin` first")
|
||||
) vimPlugins.nvim-treesitter.grammarPlugins;
|
||||
isNvimGrammar = x: builtins.elem x nvimGrammars;
|
||||
|
||||
|
||||
@@ -42,7 +42,7 @@ let
|
||||
];
|
||||
downloadUrl = "https://download.sublimetext.com/sublime_text_3_build_${buildVersion}_${arch}.tar.bz2";
|
||||
versionUrl = "https://download.sublimetext.com/latest/${if dev then "dev" else "stable"}";
|
||||
versionFile = builtins.toString ./packages.nix;
|
||||
versionFile = toString ./packages.nix;
|
||||
archSha256 = if stdenv.hostPlatform.system == "i686-linux" then x32sha256 else x64sha256;
|
||||
arch = if stdenv.hostPlatform.system == "i686-linux" then "x32" else "x64";
|
||||
|
||||
|
||||
@@ -46,7 +46,7 @@ let
|
||||
downloadUrl =
|
||||
arch: "https://download.sublimetext.com/sublime_text_build_${buildVersion}_${arch}.tar.xz";
|
||||
versionUrl = "https://download.sublimetext.com/latest/${if dev then "dev" else "stable"}";
|
||||
versionFile = builtins.toString ./packages.nix;
|
||||
versionFile = toString ./packages.nix;
|
||||
|
||||
neededLibraries = [
|
||||
xorg.libX11
|
||||
|
||||
@@ -111,7 +111,7 @@ in
|
||||
tree-sitter-queries-are-present-for-custom-grammars =
|
||||
let
|
||||
pluginsToCheck =
|
||||
builtins.map (grammar: grammarToPlugin grammar)
|
||||
map (grammar: grammarToPlugin grammar)
|
||||
# true is here because there is `recurseForDerivations = true`
|
||||
(lib.remove true (lib.attrValues tree-sitter-grammars));
|
||||
in
|
||||
|
||||
@@ -202,7 +202,7 @@ let
|
||||
startWithDeps = findDependenciesRecursively start;
|
||||
allPlugins = lib.unique (startWithDeps ++ depsOfOptionalPlugins);
|
||||
allPython3Dependencies =
|
||||
ps: lib.flatten (builtins.map (plugin: (plugin.python3Dependencies or (_: [ ])) ps) allPlugins);
|
||||
ps: lib.flatten (map (plugin: (plugin.python3Dependencies or (_: [ ])) ps) allPlugins);
|
||||
python3Env = python3.withPackages allPython3Dependencies;
|
||||
|
||||
packdirStart = vimFarm "pack/${packageName}/start" "packdir-start" allPlugins;
|
||||
|
||||
@@ -24,7 +24,7 @@ let
|
||||
)'';
|
||||
|
||||
createEmptySettingsCmd = ''mkdir -p .vscode && echo "{}" > ${vscodeSettingsFile}'';
|
||||
fileName = builtins.baseNameOf vscodeSettingsFile;
|
||||
fileName = baseNameOf vscodeSettingsFile;
|
||||
symlinkFromUserSettingCmd = lib.optionalString symlinkFromUserSetting ''&& mkdir -p "${userSettingsFolder}" && ln -sfv "$(pwd)/${vscodeSettingsFile}" "${userSettingsFolder}/" '';
|
||||
in
|
||||
|
||||
|
||||
@@ -127,7 +127,7 @@ let
|
||||
|
||||
extensionFromVscodeMarketplace = mktplcExtRefToExtDrv;
|
||||
extensionsFromVscodeMarketplace =
|
||||
mktplcExtRefList: builtins.map extensionFromVscodeMarketplace mktplcExtRefList;
|
||||
mktplcExtRefList: map extensionFromVscodeMarketplace mktplcExtRefList;
|
||||
|
||||
vscodeWithConfiguration = import ./vscodeWithConfiguration.nix {
|
||||
inherit lib extensionsFromVscodeMarketplace writeShellScriptBin;
|
||||
|
||||
@@ -1,44 +0,0 @@
|
||||
{
|
||||
lib,
|
||||
stdenv,
|
||||
fetchurl,
|
||||
pkg-config,
|
||||
gtk2,
|
||||
imlib2,
|
||||
file,
|
||||
lcms2,
|
||||
libexif,
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation (rec {
|
||||
version = "2.3.3";
|
||||
pname = "qiv";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://spiegl.de/qiv/download/${pname}-${version}.tgz";
|
||||
sha256 = "sha256-7whf/eLUiwWzZlk55a4eNZ06OBAI+4J2hPfW/UxTNwQ=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkg-config ];
|
||||
buildInputs = [
|
||||
gtk2
|
||||
imlib2
|
||||
file
|
||||
lcms2
|
||||
libexif
|
||||
];
|
||||
|
||||
preBuild = ''
|
||||
substituteInPlace Makefile --replace /usr/local "$out"
|
||||
substituteInPlace Makefile --replace /man/ /share/man/
|
||||
substituteInPlace Makefile --replace /share/share/ /share/
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "Quick image viewer";
|
||||
homepage = "http://spiegl.de/qiv/";
|
||||
license = licenses.gpl2;
|
||||
platforms = platforms.linux;
|
||||
mainProgram = "qiv";
|
||||
};
|
||||
})
|
||||
@@ -169,7 +169,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
rmdir $out/share/sane/epjitsu
|
||||
ln -svT ${scanSnapDriversPackage} $out/share/sane/epjitsu
|
||||
''
|
||||
+ lib.concatStrings (builtins.map installFirmware compatFirmware);
|
||||
+ lib.concatStrings (map installFirmware compatFirmware);
|
||||
|
||||
# parallel install creates a bad symlink at $out/lib/sane/libsane.so.1 which prevents finding plugins
|
||||
# https://github.com/NixOS/nixpkgs/issues/224569
|
||||
|
||||
@@ -26,7 +26,7 @@ let
|
||||
|
||||
# TODO: Should we move this to `lib`? Seems like its would be useful in many cases.
|
||||
extensionOf =
|
||||
filePath: lib.concatStringsSep "." (lib.tail (lib.splitString "." (builtins.baseNameOf filePath)));
|
||||
filePath: lib.concatStringsSep "." (lib.tail (lib.splitString "." (baseNameOf filePath)));
|
||||
|
||||
installIcons =
|
||||
iconName: icons:
|
||||
|
||||
@@ -256,7 +256,7 @@ let
|
||||
''
|
||||
else
|
||||
''
|
||||
mkdir -p ${builtins.dirOf path}
|
||||
mkdir -p ${dirOf path}
|
||||
cp -r ${dep}/. ${path}
|
||||
''
|
||||
)
|
||||
|
||||
@@ -76,7 +76,7 @@ let
|
||||
# PCSC-Lite daemon (services.pcscd) also must be enabled for firefox to access smartcards
|
||||
smartcardSupport = cfg.smartcardSupport or false;
|
||||
|
||||
allNativeMessagingHosts = builtins.map lib.getBin nativeMessagingHosts;
|
||||
allNativeMessagingHosts = map lib.getBin nativeMessagingHosts;
|
||||
|
||||
libs =
|
||||
lib.optionals stdenv.hostPlatform.isLinux (
|
||||
@@ -130,7 +130,7 @@ let
|
||||
|
||||
usesNixExtensions = nixExtensions != null;
|
||||
|
||||
nameArray = builtins.map (a: a.name) (lib.optionals usesNixExtensions nixExtensions);
|
||||
nameArray = map (a: a.name) (lib.optionals usesNixExtensions nixExtensions);
|
||||
|
||||
# Check that every extension has a unique .name attribute
|
||||
# and an extid attribute
|
||||
@@ -140,7 +140,7 @@ let
|
||||
else if browser.requireSigning || !browser.allowAddonSideload then
|
||||
throw "Nix addons are only supported with signature enforcement disabled and addon sideloading enabled (eg. LibreWolf)"
|
||||
else
|
||||
builtins.map (
|
||||
map (
|
||||
a:
|
||||
if !(builtins.hasAttr "extid" a) then
|
||||
throw "nixExtensions has an invalid entry. Missing extid attribute. Please use fetchFirefoxAddon"
|
||||
@@ -516,7 +516,7 @@ let
|
||||
rm -f "$POL_PATH"
|
||||
cat ${policiesJson} >> "$POL_PATH"
|
||||
|
||||
extraPoliciesFiles=(${builtins.toString extraPoliciesFiles})
|
||||
extraPoliciesFiles=(${toString extraPoliciesFiles})
|
||||
for extraPoliciesFile in "''${extraPoliciesFiles[@]}"; do
|
||||
jq -s '.[0] * .[1]' $extraPoliciesFile "$POL_PATH" > .tmp.json
|
||||
mv .tmp.json "$POL_PATH"
|
||||
@@ -533,7 +533,7 @@ let
|
||||
${mozillaCfg}
|
||||
EOF
|
||||
|
||||
extraPrefsFiles=(${builtins.toString extraPrefsFiles})
|
||||
extraPrefsFiles=(${toString extraPrefsFiles})
|
||||
for extraPrefsFile in "''${extraPrefsFiles[@]}"; do
|
||||
cat "$extraPrefsFile" >> "$libDir/mozilla.cfg"
|
||||
done
|
||||
|
||||
@@ -129,11 +129,11 @@ let
|
||||
# bundled into the k3s binary
|
||||
traefik = {
|
||||
chart = fetchurl chartVersions.traefik;
|
||||
name = builtins.baseNameOf chartVersions.traefik.url;
|
||||
name = baseNameOf chartVersions.traefik.url;
|
||||
};
|
||||
traefik-crd = {
|
||||
chart = fetchurl chartVersions.traefik-crd;
|
||||
name = builtins.baseNameOf chartVersions.traefik-crd.url;
|
||||
name = baseNameOf chartVersions.traefik-crd.url;
|
||||
};
|
||||
|
||||
# a shortcut that provides the images archive for the host platform. Currently only supports
|
||||
|
||||
@@ -9,7 +9,7 @@ let
|
||||
# let k3s_1_23 = (callPackage ./path/to/k3s {
|
||||
# commonK3sArg = ....
|
||||
# }).k3s_1_23;
|
||||
extraArgs = builtins.removeAttrs args [ "callPackage" ];
|
||||
extraArgs = removeAttrs args [ "callPackage" ];
|
||||
in
|
||||
{
|
||||
k3s_1_31 = common (
|
||||
|
||||
@@ -14,7 +14,7 @@ let
|
||||
...
|
||||
}@attrs:
|
||||
let
|
||||
attrs' = builtins.removeAttrs attrs [
|
||||
attrs' = removeAttrs attrs [
|
||||
"version"
|
||||
"sha256"
|
||||
"rev"
|
||||
|
||||
@@ -18,7 +18,7 @@ let
|
||||
...
|
||||
}@attrs:
|
||||
let
|
||||
attrs' = builtins.removeAttrs attrs [
|
||||
attrs' = removeAttrs attrs [
|
||||
"buildGoModule"
|
||||
"version"
|
||||
"hash"
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
let
|
||||
common = opts: callPackage (import ./builder.nix lib opts);
|
||||
extraArgs = builtins.removeAttrs args [ "callPackage" ];
|
||||
extraArgs = removeAttrs args [ "callPackage" ];
|
||||
in
|
||||
rec {
|
||||
rke2_1_30 = common (
|
||||
|
||||
@@ -21,7 +21,7 @@ let
|
||||
...
|
||||
}@attrs:
|
||||
let
|
||||
attrs' = builtins.removeAttrs attrs [
|
||||
attrs' = removeAttrs attrs [
|
||||
"version"
|
||||
"hash"
|
||||
"vendorHash"
|
||||
|
||||
@@ -40,7 +40,7 @@
|
||||
...
|
||||
}@args:
|
||||
let
|
||||
cleanedArgs = builtins.removeAttrs args [
|
||||
cleanedArgs = removeAttrs args [
|
||||
"pname"
|
||||
"name"
|
||||
"version"
|
||||
|
||||
@@ -19,7 +19,7 @@ let
|
||||
{
|
||||
# Do not include PHP by default, because it bloats the closure, doesn't
|
||||
# build on Darwin, and there are no official PHP scripts.
|
||||
plugins = builtins.attrValues (builtins.removeAttrs availablePlugins [ "php" ]);
|
||||
plugins = builtins.attrValues (removeAttrs availablePlugins [ "php" ]);
|
||||
},
|
||||
}:
|
||||
|
||||
@@ -122,7 +122,7 @@ let
|
||||
ln -sf ${weechat}/share $out/share
|
||||
'')
|
||||
];
|
||||
meta = builtins.removeAttrs weechat.meta [ "outputsToInstall" ];
|
||||
meta = removeAttrs weechat.meta [ "outputsToInstall" ];
|
||||
};
|
||||
|
||||
in
|
||||
|
||||
@@ -95,7 +95,7 @@ python3Packages.buildPythonApplication rec {
|
||||
|
||||
# Actually install plugins
|
||||
postInstall = ''
|
||||
for plug in ${builtins.toString userPlugins}; do
|
||||
for plug in ${toString userPlugins}; do
|
||||
lndir $plug/${python3Packages.python.sitePackages} $out/${python3Packages.python.sitePackages}
|
||||
done
|
||||
'';
|
||||
|
||||
@@ -7,5 +7,5 @@ callPackage ../../browsers/firefox/update.nix (
|
||||
{
|
||||
baseUrl = "https://archive.mozilla.org/pub/thunderbird/releases/";
|
||||
}
|
||||
// (builtins.removeAttrs args [ "callPackage" ])
|
||||
// (removeAttrs args [ "callPackage" ])
|
||||
)
|
||||
|
||||
@@ -67,8 +67,10 @@ let
|
||||
tests = {
|
||||
inherit (nixosTests)
|
||||
syncthing
|
||||
syncthing-folders
|
||||
syncthing-guiPassword
|
||||
syncthing-guiPasswordFile
|
||||
syncthing-init
|
||||
syncthing-many-devices
|
||||
syncthing-no-settings
|
||||
syncthing-relay
|
||||
;
|
||||
|
||||
@@ -57,8 +57,8 @@ stdenvNoCC.mkDerivation {
|
||||
|
||||
passthru.updateScript =
|
||||
let
|
||||
defaultNixFile = builtins.toString ./default.nix;
|
||||
updateNix = builtins.toString ./update.nix;
|
||||
defaultNixFile = toString ./default.nix;
|
||||
updateNix = toString ./update.nix;
|
||||
aarch64Url = dist."aarch64-darwin".url;
|
||||
x86_64Url = dist."x86_64-darwin".url;
|
||||
in
|
||||
|
||||
@@ -67,13 +67,11 @@ let
|
||||
"--prefix"
|
||||
"QT_PLUGIN_PATH"
|
||||
":"
|
||||
"${lib.makeSearchPath unwrapped.qtbase.qtPluginPrefix (
|
||||
builtins.map lib.getBin unwrapped.qtPackages
|
||||
)}"
|
||||
"${lib.makeSearchPath unwrapped.qtbase.qtPluginPrefix (map lib.getBin unwrapped.qtPackages)}"
|
||||
"--prefix"
|
||||
"QML2_IMPORT_PATH"
|
||||
":"
|
||||
"${lib.makeSearchPath unwrapped.qtbase.qtQmlPrefix (builtins.map lib.getBin unwrapped.qmlPackages)}"
|
||||
"${lib.makeSearchPath unwrapped.qtbase.qtQmlPrefix (map lib.getBin unwrapped.qmlPackages)}"
|
||||
]
|
||||
++ [
|
||||
# Add dictionaries from all NIX_PROFILES
|
||||
|
||||
@@ -67,7 +67,7 @@ let
|
||||
(unwrapped.python.pkgs.toPythonModule unwrapped.passthru.uhd)
|
||||
]
|
||||
# Add the extraPackages as python modules as well
|
||||
++ (builtins.map unwrapped.python.pkgs.toPythonModule extraPackages)
|
||||
++ (map unwrapped.python.pkgs.toPythonModule extraPackages)
|
||||
++ lib.flatten (
|
||||
lib.mapAttrsToList (
|
||||
feat: info:
|
||||
@@ -167,7 +167,7 @@ let
|
||||
"QT_PLUGIN_PATH"
|
||||
":"
|
||||
"${lib.makeSearchPath unwrapped.qt.qtbase.qtPluginPrefix (
|
||||
builtins.map lib.getBin (
|
||||
map lib.getBin (
|
||||
[
|
||||
unwrapped.qt.qtbase
|
||||
]
|
||||
@@ -180,7 +180,7 @@ let
|
||||
"QML2_IMPORT_PATH"
|
||||
":"
|
||||
"${lib.makeSearchPath unwrapped.qt.qtbase.qtQmlPrefix (
|
||||
builtins.map lib.getBin (
|
||||
map lib.getBin (
|
||||
[
|
||||
unwrapped.qt.qtbase
|
||||
]
|
||||
@@ -225,7 +225,7 @@ let
|
||||
lndir -silent ${unwrapped}
|
||||
${lib.optionalString (extraPackages != [ ]) (
|
||||
builtins.concatStringsSep "\n" (
|
||||
builtins.map (pkg: ''
|
||||
map (pkg: ''
|
||||
if [[ -d ${lib.getBin pkg}/bin/ ]]; then
|
||||
lndir -silent ${pkg}/bin ./bin
|
||||
fi
|
||||
|
||||
@@ -64,7 +64,7 @@ stdenv.mkDerivation rec {
|
||||
--replace "qe_git_submodule_update(external/d3q)" "" \
|
||||
--replace "qe_git_submodule_update(external/qe-gipaw)" ""
|
||||
|
||||
${builtins.toString (
|
||||
${toString (
|
||||
builtins.attrValues (
|
||||
builtins.mapAttrs (name: val: ''
|
||||
cp -r ${val}/* external/${name}/.
|
||||
|
||||
@@ -45,7 +45,7 @@ let
|
||||
downloadUrl =
|
||||
arch: "https://download.sublimetext.com/sublime_merge_build_${buildVersion}_${arch}.tar.xz";
|
||||
versionUrl = "https://www.sublimemerge.com/${if dev then "dev" else "download"}";
|
||||
versionFile = builtins.toString ./default.nix;
|
||||
versionFile = toString ./default.nix;
|
||||
|
||||
neededLibraries = [
|
||||
xorg.libX11
|
||||
|
||||
@@ -47,7 +47,7 @@ stdenv.mkDerivation rec {
|
||||
package: "--prefix GST_PLUGIN_SYSTEM_PATH_1_0 : ${lib.getLib package}/lib/gstreamer-1.0";
|
||||
in
|
||||
with gst_all_1;
|
||||
builtins.map gstreamerHook [
|
||||
map gstreamerHook [
|
||||
gstreamer
|
||||
gst-plugins-base
|
||||
gst-plugins-bad
|
||||
|
||||
@@ -44,7 +44,7 @@ stdenv.mkDerivation rec {
|
||||
package: "--prefix GST_PLUGIN_SYSTEM_PATH_1_0 : ${lib.getLib package}/lib/gstreamer-1.0";
|
||||
in
|
||||
with gst_all_1;
|
||||
builtins.map gstreamerHook [
|
||||
map gstreamerHook [
|
||||
gstreamer
|
||||
gst-plugins-base
|
||||
gst-plugins-bad
|
||||
|
||||
@@ -33,7 +33,7 @@ runCommand cri-o-unwrapped.name
|
||||
|
||||
preferLocalBuild = true;
|
||||
|
||||
meta = builtins.removeAttrs cri-o-unwrapped.meta [ "outputsToInstall" ];
|
||||
meta = removeAttrs cri-o-unwrapped.meta [ "outputsToInstall" ];
|
||||
|
||||
outputs = [
|
||||
"out"
|
||||
|
||||
@@ -481,7 +481,7 @@ stdenvNoCC.mkDerivation {
|
||||
libc_dev
|
||||
libc_lib
|
||||
;
|
||||
default_hardening_flags_str = builtins.toString defaultHardeningFlags;
|
||||
default_hardening_flags_str = toString defaultHardeningFlags;
|
||||
}
|
||||
// lib.mapAttrs (_: lib.optionalString targetPlatform.isDarwin) {
|
||||
# These will become empty strings when not targeting Darwin.
|
||||
|
||||
@@ -79,7 +79,7 @@ lib.makeOverridable (
|
||||
[ drv ]
|
||||
)
|
||||
# Add any extra outputs specified by the caller of `buildEnv`.
|
||||
++ lib.filter (p: p != null) (builtins.map (outName: drv.${outName} or null) extraOutputsToInstall);
|
||||
++ lib.filter (p: p != null) (map (outName: drv.${outName} or null) extraOutputsToInstall);
|
||||
priority = drv.meta.priority or lib.meta.defaultPriority;
|
||||
}) paths;
|
||||
|
||||
|
||||
@@ -980,7 +980,7 @@ stdenvNoCC.mkDerivation {
|
||||
inherit suffixSalt coreutils_bin bintools;
|
||||
inherit libc_bin libc_dev libc_lib;
|
||||
inherit darwinPlatformForCC;
|
||||
default_hardening_flags_str = builtins.toString defaultHardeningFlags;
|
||||
default_hardening_flags_str = toString defaultHardeningFlags;
|
||||
inherit useMacroPrefixMap;
|
||||
}
|
||||
// lib.mapAttrs (_: lib.optionalString targetPlatform.isDarwin) {
|
||||
|
||||
@@ -66,7 +66,7 @@ let
|
||||
in
|
||||
lib.assertMsg (
|
||||
matches == 1
|
||||
) "compressor ${ext} needs to have exactly one '{}', found ${builtins.toString matches}";
|
||||
) "compressor ${ext} needs to have exactly one '{}', found ${toString matches}";
|
||||
mkCmd =
|
||||
ext: prog:
|
||||
assert validProg ext prog;
|
||||
|
||||
@@ -68,7 +68,7 @@ let
|
||||
{
|
||||
ext = "tar.gz";
|
||||
fmt = "tarball";
|
||||
fetchfun = builtins.fetchTarball;
|
||||
fetchfun = fetchTarball;
|
||||
};
|
||||
in
|
||||
with kind;
|
||||
|
||||
@@ -130,7 +130,7 @@ let
|
||||
|
||||
baseDerivation = stdenv.mkDerivation (
|
||||
finalAttrs:
|
||||
(builtins.removeAttrs args [
|
||||
(removeAttrs args [
|
||||
"gitHashes"
|
||||
"sdkSourceBuilders"
|
||||
"pubspecLock"
|
||||
|
||||
@@ -582,7 +582,7 @@ rec {
|
||||
...
|
||||
}@args:
|
||||
let
|
||||
stream = streamLayeredImage (builtins.removeAttrs args [ "compressor" ]);
|
||||
stream = streamLayeredImage (removeAttrs args [ "compressor" ]);
|
||||
compress = compressorForImage compressor name;
|
||||
in
|
||||
runCommand "${baseNameOf name}.tar${compress.ext}" {
|
||||
@@ -1043,8 +1043,8 @@ rec {
|
||||
);
|
||||
|
||||
contentsList = if builtins.isList contents then contents else [ contents ];
|
||||
bind-paths = builtins.toString (
|
||||
builtins.map (path: "--bind=${path}:${path}!") [
|
||||
bind-paths = toString (
|
||||
map (path: "--bind=${path}:${path}!") [
|
||||
"/dev/"
|
||||
"/proc/"
|
||||
"/sys/"
|
||||
@@ -1413,7 +1413,7 @@ rec {
|
||||
...
|
||||
}@args:
|
||||
let
|
||||
stream = streamNixShellImage (builtins.removeAttrs args [ "compressor" ]);
|
||||
stream = streamNixShellImage (removeAttrs args [ "compressor" ]);
|
||||
compress = compressorForImage compressor drv.name;
|
||||
in
|
||||
runCommand "${drv.name}-env.tar${compress.ext}" {
|
||||
|
||||
@@ -699,7 +699,7 @@ rec {
|
||||
" --program-prefix=layeredImageWithFakeRootCommands-"
|
||||
];
|
||||
doCheck = false;
|
||||
versionCheckProgram = "${builtins.placeholder "out"}/bin/${finalAttrs.meta.mainProgram}";
|
||||
versionCheckProgram = "${placeholder "out"}/bin/${finalAttrs.meta.mainProgram}";
|
||||
meta = prevAttrs.meta // {
|
||||
mainProgram = "layeredImageWithFakeRootCommands-hello";
|
||||
};
|
||||
|
||||
@@ -49,7 +49,7 @@ let
|
||||
assert (lib.isPath nugetDeps);
|
||||
callPackage nugetDeps { fetchNuGet = fetchNupkg; }
|
||||
else
|
||||
builtins.map fetchNupkg (lib.importJSON nugetDeps);
|
||||
map fetchNupkg (lib.importJSON nugetDeps);
|
||||
|
||||
finalPackage = finalAttrs.finalPackage;
|
||||
|
||||
|
||||
@@ -122,4 +122,4 @@ let
|
||||
'';
|
||||
};
|
||||
in
|
||||
stdenv.mkDerivation (attrs // (builtins.removeAttrs attrsOrig [ "nativeBuildInputs" ]))
|
||||
stdenv.mkDerivation (attrs // (removeAttrs attrsOrig [ "nativeBuildInputs" ]))
|
||||
|
||||
@@ -21,7 +21,7 @@ lib.makeOverridable (
|
||||
assert (lib.isPath sourceFile);
|
||||
import sourceFile
|
||||
else
|
||||
{ fetchNuGet }: builtins.map fetchNuGet (lib.importJSON sourceFile);
|
||||
{ fetchNuGet }: map fetchNuGet (lib.importJSON sourceFile);
|
||||
in
|
||||
loadDeps {
|
||||
fetchNuGet = args: fetchNupkg (args // { inherit installable; });
|
||||
|
||||
@@ -29,10 +29,10 @@ assert null == lib.findFirst (c: "/" == c) null (lib.stringToCharacters imageNam
|
||||
|
||||
let
|
||||
# Abuse paths to collapse possible double slashes
|
||||
repoTag0 = builtins.toString (/. + "/${stripScheme registry}/${repository}/${imageName}");
|
||||
repoTag0 = toString (/. + "/${stripScheme registry}/${repository}/${imageName}");
|
||||
repoTag1 = lib.removePrefix "/" repoTag0;
|
||||
|
||||
layers = builtins.map stripNixStore imageLayers;
|
||||
layers = map stripNixStore imageLayers;
|
||||
|
||||
manifest = writeText "manifest.json" (
|
||||
builtins.toJSON [
|
||||
|
||||
@@ -66,7 +66,7 @@ let
|
||||
else
|
||||
map mkJarUrl repos;
|
||||
jar = fetchurl (
|
||||
builtins.removeAttrs args [
|
||||
removeAttrs args [
|
||||
"groupId"
|
||||
"artifactId"
|
||||
"version"
|
||||
|
||||
@@ -88,8 +88,8 @@ lib.throwIfNot (excludes == [ ] || includes == [ ])
|
||||
|
||||
filterdiff \
|
||||
-p1 \
|
||||
${builtins.toString (builtins.map (x: "-x ${lib.escapeShellArg x}") excludes)} \
|
||||
${builtins.toString (builtins.map (x: "-i ${lib.escapeShellArg x}") includes)} \
|
||||
${toString (map (x: "-x ${lib.escapeShellArg x}") excludes)} \
|
||||
${toString (map (x: "-i ${lib.escapeShellArg x}") includes)} \
|
||||
"$tmpfile" > "$out"
|
||||
|
||||
if [ ! -s "$out" ]; then
|
||||
@@ -106,7 +106,7 @@ lib.throwIfNot (excludes == [ ] || includes == [ ])
|
||||
''
|
||||
+ postFetch;
|
||||
}
|
||||
// builtins.removeAttrs args [
|
||||
// removeAttrs args [
|
||||
"relative"
|
||||
"stripLen"
|
||||
"decode"
|
||||
|
||||
@@ -43,7 +43,7 @@ let
|
||||
);
|
||||
|
||||
in
|
||||
compute (builtins.removeAttrs attrs [ "format" ]);
|
||||
compute (removeAttrs attrs [ "format" ]);
|
||||
|
||||
in
|
||||
makeOverridable (
|
||||
@@ -55,7 +55,7 @@ makeOverridable (
|
||||
}@attrs:
|
||||
let
|
||||
url = computeUrl (
|
||||
builtins.removeAttrs attrs [
|
||||
removeAttrs attrs [
|
||||
"sha256"
|
||||
"hash"
|
||||
]
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
lib.fetchers.withNormalizedHash { } (
|
||||
{
|
||||
s3url,
|
||||
name ? builtins.baseNameOf s3url,
|
||||
name ? baseNameOf s3url,
|
||||
outputHash,
|
||||
outputHashAlgo,
|
||||
region ? "us-east-1",
|
||||
|
||||
@@ -45,7 +45,7 @@
|
||||
}@args:
|
||||
|
||||
let
|
||||
sandboxPathsTests = builtins.map (path: "[[ ! -e '${path}' ]]") sandboxPaths;
|
||||
sandboxPathsTests = map (path: "[[ ! -e '${path}' ]]") sandboxPaths;
|
||||
sandboxPathsTest = lib.concatStringsSep " || " sandboxPathsTests;
|
||||
sandboxPathsList = lib.concatStringsSep " " sandboxPaths;
|
||||
|
||||
@@ -71,7 +71,7 @@ let
|
||||
passthru.runScript = runScript;
|
||||
}
|
||||
(
|
||||
builtins.removeAttrs args [
|
||||
removeAttrs args [
|
||||
"lib"
|
||||
"stdenv"
|
||||
"writeShellScript"
|
||||
|
||||
@@ -29,7 +29,7 @@ let
|
||||
# this leaves actual dependencies of the derivations in `inputsFrom`, but never the derivations themselves
|
||||
(lib.subtractLists inputsFrom (lib.flatten (lib.catAttrs name inputsFrom)));
|
||||
|
||||
rest = builtins.removeAttrs attrs [
|
||||
rest = removeAttrs attrs [
|
||||
"name"
|
||||
"packages"
|
||||
"inputsFrom"
|
||||
|
||||
@@ -24,7 +24,7 @@
|
||||
filter =
|
||||
name: type:
|
||||
let
|
||||
name' = builtins.baseNameOf name;
|
||||
name' = baseNameOf name;
|
||||
in
|
||||
name' != "default.nix" && name' != "target";
|
||||
};
|
||||
|
||||
@@ -52,7 +52,7 @@ let
|
||||
// fetcherOpts
|
||||
))
|
||||
else if lib.hasPrefix "git" module.resolved then
|
||||
(builtins.fetchGit (
|
||||
(fetchGit (
|
||||
{
|
||||
url = module.resolved;
|
||||
}
|
||||
|
||||
@@ -32,7 +32,7 @@ lib.throwIf (args ? minimalOCamlVersion && lib.versionOlder ocaml.version args.m
|
||||
inherit (topkg) buildPhase installPhase;
|
||||
|
||||
}
|
||||
// (builtins.removeAttrs args [ "minimalOCamlVersion" ])
|
||||
// (removeAttrs args [ "minimalOCamlVersion" ])
|
||||
// {
|
||||
|
||||
name = "ocaml${ocaml.version}-${pname}-${version}";
|
||||
|
||||
@@ -81,7 +81,7 @@ stdenv.mkDerivation (
|
||||
}
|
||||
|
||||
# Then, the caller-supplied attributes.
|
||||
// (builtins.removeAttrs args [ "lib" ])
|
||||
// (removeAttrs args [ "lib" ])
|
||||
//
|
||||
|
||||
# And finally, our own stuff.
|
||||
|
||||
@@ -72,7 +72,7 @@ let
|
||||
|
||||
optionalAttrs =
|
||||
if (builtins.intersectAttrs attrs forcedAttrs == { }) then
|
||||
builtins.removeAttrs attrs [ "replacements" ]
|
||||
removeAttrs attrs [ "replacements" ]
|
||||
else
|
||||
throw "Passing any of ${builtins.concatStringsSep ", " (builtins.attrNames forcedAttrs)} to replaceVarsWith is not supported.";
|
||||
|
||||
|
||||
@@ -250,7 +250,7 @@ lib.makeOverridable
|
||||
"codegenUnits"
|
||||
"links"
|
||||
];
|
||||
extraDerivationAttrs = builtins.removeAttrs crate processedAttrs;
|
||||
extraDerivationAttrs = removeAttrs crate processedAttrs;
|
||||
nativeBuildInputs_ = nativeBuildInputs;
|
||||
buildInputs_ = buildInputs;
|
||||
extraRustcOpts_ = extraRustcOpts;
|
||||
|
||||
@@ -91,7 +91,7 @@ let
|
||||
mkTest =
|
||||
crateArgs:
|
||||
let
|
||||
crate = mkHostCrate (builtins.removeAttrs crateArgs [ "expectedTestOutput" ]);
|
||||
crate = mkHostCrate (removeAttrs crateArgs [ "expectedTestOutput" ]);
|
||||
hasTests = crateArgs.buildTests or false;
|
||||
expectedTestOutputs = crateArgs.expectedTestOutputs or null;
|
||||
binaries = map (v: lib.escapeShellArg v.name) (crateArgs.crateBin or [ ]);
|
||||
@@ -182,7 +182,7 @@ let
|
||||
assert (builtins.isList expectedFiles);
|
||||
|
||||
let
|
||||
crate = mkCrate (builtins.removeAttrs crateArgs [ "expectedTestOutput" ]);
|
||||
crate = mkCrate (removeAttrs crateArgs [ "expectedTestOutput" ]);
|
||||
crateOutput = if output == null then crate else crate."${output}";
|
||||
expectedFilesFile = writeTextFile {
|
||||
name = "expected-files-${name}";
|
||||
@@ -706,7 +706,7 @@ rec {
|
||||
|
||||
rustCargoTomlInTopDir =
|
||||
let
|
||||
withoutCargoTomlSearch = builtins.removeAttrs rustCargoTomlInSubDir [ "workspace_member" ];
|
||||
withoutCargoTomlSearch = removeAttrs rustCargoTomlInSubDir [ "workspace_member" ];
|
||||
in
|
||||
withoutCargoTomlSearch
|
||||
// {
|
||||
|
||||
@@ -73,7 +73,7 @@ rec {
|
||||
let
|
||||
members = builtins.attrValues workspaceMembers;
|
||||
in
|
||||
builtins.map (m: m.build) members;
|
||||
map (m: m.build) members;
|
||||
};
|
||||
|
||||
#
|
||||
@@ -4347,7 +4347,7 @@ rec {
|
||||
sourceFilter =
|
||||
name: type:
|
||||
let
|
||||
baseName = builtins.baseNameOf (builtins.toString name);
|
||||
baseName = baseNameOf (toString name);
|
||||
in
|
||||
!(
|
||||
# Filter out git
|
||||
@@ -4603,7 +4603,7 @@ rec {
|
||||
let
|
||||
features = mergedFeatures."${packageId}" or [ ];
|
||||
crateConfig' = crateConfigs."${packageId}";
|
||||
crateConfig = builtins.removeAttrs crateConfig' [
|
||||
crateConfig = removeAttrs crateConfig' [
|
||||
"resolvedDefaultFeatures"
|
||||
"devDependencies"
|
||||
];
|
||||
@@ -4657,7 +4657,7 @@ rec {
|
||||
version = package.version;
|
||||
};
|
||||
in
|
||||
lib.mapAttrs (name: choices: builtins.map versionAndRename choices) grouped;
|
||||
lib.mapAttrs (name: choices: map versionAndRename choices) grouped;
|
||||
in
|
||||
buildRustCrateForPkgsFunc pkgs (
|
||||
crateConfig
|
||||
@@ -4715,7 +4715,7 @@ rec {
|
||||
if builtins.isAttrs val then
|
||||
lib.mapAttrs (n: v: sanitizeForJson v) val
|
||||
else if builtins.isList val then
|
||||
builtins.map sanitizeForJson val
|
||||
map sanitizeForJson val
|
||||
else if builtins.isFunction val then
|
||||
"function"
|
||||
else
|
||||
@@ -4826,7 +4826,7 @@ rec {
|
||||
assert (builtins.isAttrs target);
|
||||
assert (builtins.isBool runTests);
|
||||
let
|
||||
crateConfig = crateConfigs."${packageId}" or (builtins.throw "Package not found: ${packageId}");
|
||||
crateConfig = crateConfigs."${packageId}" or (throw "Package not found: ${packageId}");
|
||||
expandedFeatures = expandFeatures (crateConfig.features or { }) features;
|
||||
enabledFeatures = enableFeatures (crateConfig.dependencies or [ ]) expandedFeatures;
|
||||
depWithResolvedFeatures =
|
||||
@@ -4984,7 +4984,7 @@ rec {
|
||||
dependencyPrefix = (dependency.rename or dependency.name) + "/";
|
||||
dependencyFeatures = builtins.filter (f: lib.hasPrefix dependencyPrefix f) features;
|
||||
in
|
||||
builtins.map (lib.removePrefix dependencyPrefix) dependencyFeatures;
|
||||
map (lib.removePrefix dependencyPrefix) dependencyFeatures;
|
||||
in
|
||||
defaultOrNil ++ explicitFeatures ++ additionalDependencyFeatures;
|
||||
|
||||
@@ -5002,7 +5002,7 @@ rec {
|
||||
deprecationWarning =
|
||||
message: value:
|
||||
if strictDeprecation then
|
||||
builtins.throw "strictDeprecation enabled, aborting: ${message}"
|
||||
throw "strictDeprecation enabled, aborting: ${message}"
|
||||
else
|
||||
builtins.trace message value;
|
||||
|
||||
|
||||
@@ -89,7 +89,7 @@ let
|
||||
outputHashAlgo = if hash == "" then "sha256" else null;
|
||||
outputHashMode = "recursive";
|
||||
}
|
||||
// builtins.removeAttrs args removedArgs
|
||||
// removeAttrs args removedArgs
|
||||
);
|
||||
in
|
||||
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
# Cargo lock file contents as string
|
||||
lockFileContents ? null,
|
||||
|
||||
# Allow `builtins.fetchGit` to be used to not require hashes for git dependencies
|
||||
# Allow `fetchGit` to be used to not require hashes for git dependencies
|
||||
allowBuiltinFetchGit ? false,
|
||||
|
||||
# Additional registries to pull sources from
|
||||
@@ -57,7 +57,7 @@ let
|
||||
# shadows args.lockFileContents
|
||||
lockFileContents = if lockFile != null then builtins.readFile lockFile else args.lockFileContents;
|
||||
|
||||
parsedLockFile = builtins.fromTOML lockFileContents;
|
||||
parsedLockFile = fromTOML lockFileContents;
|
||||
|
||||
# lockfile v1 and v2 don't have the `version` key, so assume v2
|
||||
# we can implement more fine-grained detection later, if needed
|
||||
@@ -75,11 +75,11 @@ let
|
||||
# Force evaluation of the git SHA -> hash mapping, so that an error is
|
||||
# thrown if there are stale hashes. We cannot rely on gitShaOutputHash
|
||||
# being evaluated otherwise, since there could be no git dependencies.
|
||||
depCrates = builtins.deepSeq gitShaOutputHash (builtins.map mkCrate depPackages);
|
||||
depCrates = builtins.deepSeq gitShaOutputHash (map mkCrate depPackages);
|
||||
|
||||
# Map package name + version to git commit SHA for packages with a git source.
|
||||
namesGitShas = builtins.listToAttrs (
|
||||
builtins.map nameGitSha (builtins.filter (pkg: lib.hasPrefix "git+" pkg.source) depPackages)
|
||||
map nameGitSha (builtins.filter (pkg: lib.hasPrefix "git+" pkg.source) depPackages)
|
||||
);
|
||||
|
||||
nameGitSha =
|
||||
@@ -188,7 +188,7 @@ let
|
||||
sha256 = gitShaOutputHash.${gitParts.sha};
|
||||
}
|
||||
else if allowBuiltinFetchGit then
|
||||
builtins.fetchGit {
|
||||
fetchGit {
|
||||
inherit (gitParts) url;
|
||||
rev = gitParts.sha;
|
||||
allRefs = true;
|
||||
|
||||
@@ -33,7 +33,7 @@ let
|
||||
foo
|
||||
''
|
||||
else
|
||||
builtins.throw "Invalid scope: ${scope}";
|
||||
throw "Invalid scope: ${scope}";
|
||||
in
|
||||
{
|
||||
name,
|
||||
|
||||
@@ -33,7 +33,7 @@ let
|
||||
foo
|
||||
''
|
||||
else
|
||||
builtins.throw "Invalid scope: ${scope}";
|
||||
throw "Invalid scope: ${scope}";
|
||||
in
|
||||
{
|
||||
name,
|
||||
|
||||
@@ -225,7 +225,7 @@
|
||||
"testers.hasPkgConfigModule has been deprecated in favor of testers.hasPkgConfigModules. It accepts a list of strings via the moduleNames argument instead of a single moduleName."
|
||||
(
|
||||
testers.hasPkgConfigModules (
|
||||
builtins.removeAttrs args [ "moduleName" ]
|
||||
removeAttrs args [ "moduleName" ]
|
||||
// {
|
||||
moduleNames = [ moduleName ];
|
||||
}
|
||||
|
||||
@@ -94,7 +94,7 @@ rec {
|
||||
preferLocalBuild = true;
|
||||
allowSubstitutes = false;
|
||||
})
|
||||
// builtins.removeAttrs derivationArgs [ "passAsFile" ]
|
||||
// removeAttrs derivationArgs [ "passAsFile" ]
|
||||
);
|
||||
|
||||
# Docs in doc/build-helpers/trivial-build-helpers.chapter.md
|
||||
@@ -182,7 +182,7 @@ rec {
|
||||
path: text:
|
||||
writeTextFile {
|
||||
inherit text;
|
||||
name = builtins.baseNameOf path;
|
||||
name = baseNameOf path;
|
||||
destination = "/${path}";
|
||||
};
|
||||
|
||||
@@ -983,7 +983,7 @@ rec {
|
||||
|
||||
# TODO: move copyPathsToStore docs to the Nixpkgs manual
|
||||
# Copy a list of paths to the Nix store.
|
||||
copyPathsToStore = builtins.map copyPathToStore;
|
||||
copyPathsToStore = map copyPathToStore;
|
||||
|
||||
# TODO: move applyPatches docs to the Nixpkgs manual
|
||||
/*
|
||||
@@ -1009,7 +1009,7 @@ rec {
|
||||
name ?
|
||||
(
|
||||
if builtins.typeOf src == "path" then
|
||||
builtins.baseNameOf src
|
||||
baseNameOf src
|
||||
else if builtins.isAttrs src && builtins.hasAttr "name" src then
|
||||
src.name
|
||||
else
|
||||
|
||||
@@ -104,7 +104,7 @@ let
|
||||
runTest =
|
||||
script:
|
||||
let
|
||||
name = script.name or (builtins.baseNameOf script);
|
||||
name = script.name or (baseNameOf script);
|
||||
in
|
||||
writeShellScript "run-${name}" ''
|
||||
if [ "$(${script})" != "success" ]; then
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
let
|
||||
stri = writeText "pathToTest";
|
||||
txt1 = stri "abc";
|
||||
txt2 = stri (builtins.toString hello);
|
||||
txt2 = stri (toString hello);
|
||||
res = concatText "textToTest" [
|
||||
txt1
|
||||
txt2
|
||||
|
||||
@@ -13,7 +13,7 @@ let
|
||||
checkShellApplication =
|
||||
args@{ name, expected, ... }:
|
||||
let
|
||||
writeShellApplicationArgs = builtins.removeAttrs args [ "expected" ];
|
||||
writeShellApplicationArgs = removeAttrs args [ "expected" ];
|
||||
script = writeShellApplication writeShellApplicationArgs;
|
||||
executable = lib.getExe script;
|
||||
expected' = writeTextFile {
|
||||
|
||||
@@ -599,7 +599,7 @@ rec {
|
||||
...
|
||||
}@args:
|
||||
makeScriptWriter (
|
||||
(builtins.removeAttrs args [
|
||||
(removeAttrs args [
|
||||
"babashka"
|
||||
])
|
||||
// {
|
||||
@@ -692,7 +692,7 @@ rec {
|
||||
in
|
||||
makeScriptWriter
|
||||
(
|
||||
(builtins.removeAttrs config [
|
||||
(removeAttrs config [
|
||||
"guile"
|
||||
"libraries"
|
||||
"r6rs"
|
||||
@@ -728,7 +728,7 @@ rec {
|
||||
[ "--no-auto-compile" ]
|
||||
++ lib.optional r6rs "--r6rs"
|
||||
++ lib.optional r7rs "--r7rs"
|
||||
++ lib.optional (srfi != [ ]) ("--use-srfi=" + concatMapStringsSep "," builtins.toString srfi)
|
||||
++ lib.optional (srfi != [ ]) ("--use-srfi=" + concatMapStringsSep "," toString srfi)
|
||||
++ [ "-s" ]
|
||||
))
|
||||
"!#"
|
||||
@@ -921,7 +921,7 @@ rec {
|
||||
...
|
||||
}@args:
|
||||
makeScriptWriter (
|
||||
(builtins.removeAttrs args [ "libraries" ])
|
||||
(removeAttrs args [ "libraries" ])
|
||||
// {
|
||||
interpreter =
|
||||
if libraries == [ ] then "${ruby}/bin/ruby" else "${(ruby.withPackages (ps: libraries))}/bin/ruby";
|
||||
@@ -963,7 +963,7 @@ rec {
|
||||
...
|
||||
}@args:
|
||||
makeScriptWriter (
|
||||
(builtins.removeAttrs args [ "libraries" ])
|
||||
(removeAttrs args [ "libraries" ])
|
||||
// {
|
||||
interpreter = lua.interpreter;
|
||||
# if libraries == []
|
||||
@@ -1134,7 +1134,7 @@ rec {
|
||||
...
|
||||
}@args:
|
||||
makeScriptWriter (
|
||||
(builtins.removeAttrs args [ "libraries" ])
|
||||
(removeAttrs args [ "libraries" ])
|
||||
// {
|
||||
interpreter = "${lib.getExe (pkgs.perl.withPackages (p: libraries))}";
|
||||
}
|
||||
@@ -1186,7 +1186,7 @@ rec {
|
||||
"--ignore ${concatMapStringsSep "," escapeShellArg flakeIgnore}";
|
||||
in
|
||||
makeScriptWriter (
|
||||
(builtins.removeAttrs args [
|
||||
(removeAttrs args [
|
||||
"libraries"
|
||||
"flakeIgnore"
|
||||
"doCheck"
|
||||
@@ -1333,7 +1333,7 @@ rec {
|
||||
content:
|
||||
makeScriptWriter
|
||||
(
|
||||
(builtins.removeAttrs args [
|
||||
(removeAttrs args [
|
||||
"dotnet-sdk"
|
||||
"fsi-flags"
|
||||
"libraries"
|
||||
|
||||
@@ -79,7 +79,7 @@ stdenv.mkDerivation {
|
||||
|
||||
doInstallCheck = true;
|
||||
|
||||
versionCheckProgram = "${builtins.placeholder "out"}/bin/op";
|
||||
versionCheckProgram = "${placeholder "out"}/bin/op";
|
||||
versionCheckProgramArg = "--version";
|
||||
|
||||
passthru = {
|
||||
|
||||
@@ -35,7 +35,7 @@ rustPlatform.buildRustPackage {
|
||||
|
||||
preBuild = ''
|
||||
justFlagsArray+=(
|
||||
PREFIX=${builtins.placeholder "out"}
|
||||
PREFIX=${placeholder "out"}
|
||||
MANIFEST_OPTS="--frozen --locked --profile=release"
|
||||
INSTALL_OPTS="--no-track"
|
||||
)
|
||||
|
||||
@@ -27,11 +27,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "alfaview";
|
||||
version = "9.23.1";
|
||||
version = "9.23.2";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://assets.alfaview.com/stable/linux/deb/${pname}_${version}.deb";
|
||||
hash = "sha256-T1RsG/8uuPtma7TCNww4V6tKzPK0Ds8zmdjk2duhMEw=";
|
||||
hash = "sha256-0EGjm/EYozGXDM/IvmopN04kzJfPM+6wjMpJesyW55U=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
||||
@@ -24,9 +24,9 @@ runCommand "${alsa-lib.pname}-${alsa-lib.version}"
|
||||
}
|
||||
(
|
||||
(lib.concatMapStringsSep "\n" (output: ''
|
||||
mkdir ${builtins.placeholder output}
|
||||
mkdir ${placeholder output}
|
||||
${lndir}/bin/lndir ${lib.attrByPath [ output ] null alsa-lib} \
|
||||
${builtins.placeholder output}
|
||||
${placeholder output}
|
||||
'') alsa-lib.outputs)
|
||||
+ ''
|
||||
cp -r ${merged}/lib/alsa-lib $out/lib
|
||||
|
||||
@@ -43,7 +43,7 @@ buildGoModule rec {
|
||||
|
||||
nativeInstallCheckInputs = [ versionCheckHook ];
|
||||
|
||||
versionCheckProgram = "${builtins.placeholder "out"}/bin/amazon-cloudwatch-agent";
|
||||
versionCheckProgram = "${placeholder "out"}/bin/amazon-cloudwatch-agent";
|
||||
|
||||
versionCheckProgramArg = "-version";
|
||||
|
||||
|
||||
@@ -82,6 +82,7 @@ buildNpmPackage (finalAttrs: {
|
||||
license = lib.licenses.unfree;
|
||||
maintainers = with lib.maintainers; [
|
||||
keegancsmith
|
||||
burmudar
|
||||
];
|
||||
mainProgram = "amp";
|
||||
};
|
||||
|
||||
@@ -26,16 +26,16 @@ buildGoModule (finalAttrs: {
|
||||
|
||||
# Use only versions specified in anytype-ts middleware.version file:
|
||||
# https://github.com/anyproto/anytype-ts/blob/v<anytype-ts-version>/middleware.version
|
||||
version = "0.43.0-rc02";
|
||||
version = "0.44.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "anyproto";
|
||||
repo = "anytype-heart";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-hqDwzW1Tl44ipL1EAwlXUoKaQ0Wvfa2rtZMQy4pgQ8k=";
|
||||
hash = "sha256-Kb5Z484zeKJT8oBmfqbHszcxYPwnx7mvssseNyRDMWE=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-Rs+CusvMksyXUplGk09J4CiFgl/D4KtsI9C15dSCjOI=";
|
||||
vendorHash = "sha256-T7CPD6mbxkN1x53oe9jsS2XMqluqWv8VPPd1pnXZvlc=";
|
||||
|
||||
subPackages = [ "cmd/grpcserver" ];
|
||||
tags = [
|
||||
|
||||
@@ -14,23 +14,23 @@
|
||||
|
||||
buildNpmPackage (finalAttrs: {
|
||||
pname = "anytype";
|
||||
version = "0.49.2";
|
||||
version = "0.50.3";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "anyproto";
|
||||
repo = "anytype-ts";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-8+x2FmyR5x9Zrm3t71RSyxAKcJCvnR98+fqHXjBE7aU=";
|
||||
hash = "sha256-D2B8DY9VogRc0YP/NKEmg0uVT1ZaqQrOA/4AS845phU=";
|
||||
};
|
||||
|
||||
locales = fetchFromGitHub {
|
||||
owner = "anyproto";
|
||||
repo = "l10n-anytype-ts";
|
||||
rev = "873b42df7320ebbbc80d7e2477914dac70363ef7";
|
||||
hash = "sha256-Mr0KfXn9NO86QqgBhVjSs2przN/GtjuhJHJ9djo8Feg=";
|
||||
rev = "27d713f500ed375aabb57b551dbc0561cd1983b3";
|
||||
hash = "sha256-1SyCVwicUoxj/xxlYe3dElYYXWtzbw2bHiHZ0FKgYDw=";
|
||||
};
|
||||
|
||||
npmDepsHash = "sha256-fuNTSZl+4DG/YL34f/+bYK26ruRFAc1hyHVAm256LiE=";
|
||||
npmDepsHash = "sha256-pC1hT85Lk4asGRkQf4ZGlNULtmdlKX/2X1eDHMi6BZ0=";
|
||||
|
||||
env = {
|
||||
ELECTRON_SKIP_BINARY_DOWNLOAD = "1";
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user