Merge remote-tracking branch 'origin/staging-next' into staging

This commit is contained in:
K900 2024-08-01 08:57:50 +03:00
commit a4a42b3aec
190 changed files with 6851 additions and 10454 deletions

View file

@ -98,13 +98,13 @@ To package Dotnet applications, you can use `buildDotnetModule`. This has simila
For more detail about managing the `deps.nix` file, see [Generating and updating NuGet dependencies](#generating-and-updating-nuget-dependencies)
:::
* `packNupkg` is used to pack project as a `nupkg`, and installs it to `$out/share`. If set to `true`, the derivation can be used as a dependency for another dotnet project by adding it to `projectReferences`.
* `projectReferences` can be used to resolve `ProjectReference` project items. Referenced projects can be packed with `buildDotnetModule` by setting the `packNupkg = true` attribute and passing a list of derivations to `projectReferences`. Since we are sharing referenced projects as NuGets they must be added to csproj/fsproj files as `PackageReference` as well.
* `packNupkg` is used to pack project as a `nupkg`, and installs it to `$out/share`. If set to `true`, the derivation can be used as a dependency for another dotnet project by adding it to `buildInputs`.
* `buildInputs` can be used to resolve `ProjectReference` project items. Referenced projects can be packed with `buildDotnetModule` by setting the `packNupkg = true` attribute and passing a list of derivations to `buildInputs`. Since we are sharing referenced projects as NuGets they must be added to csproj/fsproj files as `PackageReference` as well.
For example, your project has a local dependency:
```xml
<ProjectReference Include="../foo/bar.fsproj" />
```
To enable discovery through `projectReferences` you would need to add:
To enable discovery through `buildInputs` you would need to add:
```xml
<ProjectReference Include="../foo/bar.fsproj" />
<PackageReference Include="bar" Version="*" Condition=" '$(ContinuousIntegrationBuild)'=='true' "/>
@ -143,7 +143,7 @@ in buildDotnetModule rec {
projectFile = "src/project.sln";
nugetDeps = ./deps.nix; # see "Generating and updating NuGet dependencies" section for details
projectReferences = [ referencedProject ]; # `referencedProject` must contain `nupkg` in the folder structure.
buildInputs = [ referencedProject ]; # `referencedProject` must contain `nupkg` in the folder structure.
dotnet-sdk = dotnetCorePackages.sdk_6_0;
dotnet-runtime = dotnetCorePackages.runtime_6_0;

View file

@ -63,6 +63,7 @@ sed -r \
-e '/ language-nix /d' \
-e '/ hackage-db /d' \
-e '/ cabal-install /d' \
-e '/ cabal-install-solver /d' \
-e '/ lsp /d' \
-e '/ lsp-types /d' \
-e '/ lsp-test /d' \

View file

@ -96,6 +96,11 @@
- `nginx` package no longer includes `gd` and `geoip` dependencies. For enabling it, override `nginx` package with the optionals `withImageFilter` and `withGeoIP`.
- `systemd.enableUnifiedCgroupHierarchy` option has been removed.
In systemd 256 support for cgroup v1 ('legacy' and 'hybrid' hierarchies) is now considered obsolete and systemd by default will refuse to boot under it.
To forcibly reenable cgroup v1 support, you can `set boot.kernelParams = [ "systemd.unified_cgroup_hierachy=0" "SYSTEMD_CGROUP_ENABLE_LEGACY_FORCE=1" ]`.
NixOS does not officially support this configuration and might cause your system to be unbootable in future versions. You are on your own.
- `openssh` and `openssh_hpn` are now compiled without Kerberos 5 / GSSAPI support in an effort to reduce the attack surface of the components for the majority of users. Users needing this support can
use the new `opensshWithKerberos` and `openssh_hpnWithKerberos` flavors (e.g. `programs.ssh.package = pkgs.openssh_gssapi`).

View file

@ -59,14 +59,7 @@ in
'';
})
(builtins.filter builtins.isInt cfg.users)
) ++ [
{
assertion = config.systemd.enableUnifiedCgroupHierarchy == true;
message = ''
The BenchExec module `${opt.enable}` only supports control groups 2 (`${options.systemd.enableUnifiedCgroupHierarchy} = true`).
'';
}
];
);
environment.systemPackages = [ cfg.package ];

View file

@ -116,7 +116,7 @@ in
} // (if ((lib.getName cfg.package) == (lib.getName pkgs.ananicy-cpp)) then {
# https://gitlab.com/ananicy-cpp/ananicy-cpp/-/blob/master/src/config.cpp#L12
loglevel = mkOD "warn"; # default is info but its spammy
cgroup_realtime_workaround = mkOD config.systemd.enableUnifiedCgroupHierarchy;
cgroup_realtime_workaround = true;
log_applied_rule = mkOD false;
} else {
# https://github.com/Nefelim4ag/Ananicy/blob/master/ananicy.d/ananicy.conf
@ -125,8 +125,6 @@ in
});
systemd = {
# https://gitlab.com/ananicy-cpp/ananicy-cpp/#cgroups applies to both ananicy and -cpp
enableUnifiedCgroupHierarchy = mkDefault false;
packages = [ cfg.package ];
services."${servicename}" = {
wantedBy = [ "default.target" ];

View file

@ -341,14 +341,6 @@ in
'';
};
enableUnifiedCgroupHierarchy = mkOption {
default = true;
type = types.bool;
description = ''
Whether to enable the unified cgroup hierarchy (cgroupsv2); see {manpage}`cgroups(7)`.
'';
};
extraConfig = mkOption {
default = "";
type = types.lines;
@ -694,12 +686,6 @@ in
# https://github.com/systemd/systemd/pull/12226
boot.kernel.sysctl."kernel.pid_max" = mkIf pkgs.stdenv.is64bit (lib.mkDefault 4194304);
boot.kernelParams = optional (!cfg.enableUnifiedCgroupHierarchy) "systemd.unified_cgroup_hierarchy=0";
# Avoid potentially degraded system state due to
# "Userspace Out-Of-Memory (OOM) Killer was skipped because of a failed condition check (ConditionControlGroupController=v2)."
systemd.oomd.enable = mkIf (!cfg.enableUnifiedCgroupHierarchy) false;
services.logrotate.settings = {
"/var/log/btmp" = mapAttrs (_: mkDefault) {
frequency = "monthly";
@ -723,5 +709,10 @@ in
(mkRenamedOptionModule [ "boot" "systemd" "services" ] [ "systemd" "services" ])
(mkRenamedOptionModule [ "jobs" ] [ "systemd" "services" ])
(mkRemovedOptionModule [ "systemd" "generator-packages" ] "Use systemd.packages instead.")
(mkRemovedOptionModule ["systemd" "enableUnifiedCgroupHierarchy"] ''
In 256 support for cgroup v1 ('legacy' and 'hybrid' hierarchies) is now considered obsolete and systemd by default will refuse to boot under it.
To forcibly reenable cgroup v1 support, you can set boot.kernelParams = [ "systemd.unified_cgroup_hierachy=0" "SYSTEMD_CGROUP_ENABLE_LEGACY_FORCE=1" ].
NixOS does not officially support this configuration and might cause your system to be unbootable in future versions. You are on your own.
'')
];
}

View file

@ -166,10 +166,6 @@ in {
};
};
# TODO: remove once LXD gets proper support for cgroupsv2
# (currently most of the e.g. CPU accounting stuff doesn't work)
systemd.enableUnifiedCgroupHierarchy = false;
systemd.sockets.lxd = {
description = "LXD UNIX socket";
wantedBy = [ "sockets.target" ];
@ -214,6 +210,7 @@ in {
LimitNOFILE = "1048576";
LimitNPROC = "infinity";
TasksMax = "infinity";
Delegate = true; # LXD needs to manage cgroups in its subtree
# By default, `lxd` loads configuration files from hard-coded
# `/usr/share/lxc/config` - since this is a no-go for us, we have to

View file

@ -519,7 +519,7 @@ rec {
baseConfig = { pkgs, lib, ... }: {
imports = [ common ];
boot.loader.systemd-boot.bootCounting.enable = true;
boot.loader.systemd-boot.bootCounting.trials = 2;
boot.loader.systemd-boot.bootCounting.tries = 2;
};
in
makeTest {

View file

@ -44,13 +44,13 @@ let
in
stdenv.mkDerivation rec {
pname = "strawberry";
version = "1.0.23";
version = "1.1.1";
src = fetchFromGitHub {
owner = "jonaski";
repo = pname;
rev = version;
hash = "sha256-hzZx530HD7R3JOG6cCsoaW9puYkmu7m5lr+EfobKX7o=";
hash = "sha256-REoki+8rneQ+4rL9rC7Md5Hrj6ftd7RePEF1fK4FnKY=";
fetchSubmodules = true;
};

View file

@ -76,18 +76,18 @@
"pycharm-community": {
"update-channel": "PyCharm RELEASE",
"url-template": "https://download.jetbrains.com/python/pycharm-community-{version}.tar.gz",
"version": "2024.1.3",
"sha256": "7c05b5ade8c5eea48677d83a2ec816a86559dadfcf04c67f2c8584acf8716bc3",
"url": "https://download.jetbrains.com/python/pycharm-community-2024.1.3.tar.gz",
"build_number": "241.17890.14"
"version": "2024.1.4",
"sha256": "043c33371cb5fb31fdeab6deccc809189efdc6d404f771c541d4dd779adcd2fa",
"url": "https://download.jetbrains.com/python/pycharm-community-2024.1.4.tar.gz",
"build_number": "241.18034.82"
},
"pycharm-professional": {
"update-channel": "PyCharm RELEASE",
"url-template": "https://download.jetbrains.com/python/pycharm-professional-{version}.tar.gz",
"version": "2024.1.3",
"sha256": "be3be94349ec55726fe9180d8a46097e7110a9e1cb7fd2cca85b961814a6e415",
"url": "https://download.jetbrains.com/python/pycharm-professional-2024.1.3.tar.gz",
"build_number": "241.17890.14"
"version": "2024.1.4",
"sha256": "3a12ada098a839ba3c32820071ecc04cb71e8e1066d0753397399c2e52941de9",
"url": "https://download.jetbrains.com/python/pycharm-professional-2024.1.4.tar.gz",
"build_number": "241.18034.82"
},
"rider": {
"update-channel": "Rider RELEASE",
@ -108,10 +108,10 @@
"rust-rover": {
"update-channel": "RustRover RELEASE",
"url-template": "https://download.jetbrains.com/rustrover/RustRover-{version}.tar.gz",
"version": "2024.1.2",
"sha256": "68a94f4d57ca937629f825be9c1375328b4fbf50c4bf0561d1b9b8db04102a62",
"url": "https://download.jetbrains.com/rustrover/RustRover-2024.1.2.tar.gz",
"build_number": "241.17011.169"
"version": "2024.1.6",
"sha256": "42cf845a9159ab5ab182f501cb95154a27701af04ea01e309308ef6a5bb9ebfa",
"url": "https://download.jetbrains.com/rustrover/RustRover-2024.1.6.tar.gz",
"build_number": "241.17890.43"
},
"webstorm": {
"update-channel": "WebStorm RELEASE",
@ -125,9 +125,9 @@
"update-channel": "Writerside EAP",
"url-template": "https://download.jetbrains.com/writerside/writerside-{version}.tar.gz",
"version": "2024.1 EAP",
"sha256": "efb69c46ab8f3a461c42d5b6d4f7e843d01f584ae97030110d36d71de453e320",
"url": "https://download.jetbrains.com/writerside/writerside-241.16003.85.tar.gz",
"build_number": "241.16003.85"
"sha256": "47b3323fc18e6f8c9edc71ed309b95f09385123d9b9c9492b55ad6a77b2925ee",
"url": "https://download.jetbrains.com/writerside/writerside-241.18775.98.tar.gz",
"build_number": "241.18775.98"
}
},
"aarch64-linux": {
@ -207,18 +207,18 @@
"pycharm-community": {
"update-channel": "PyCharm RELEASE",
"url-template": "https://download.jetbrains.com/python/pycharm-community-{version}-aarch64.tar.gz",
"version": "2024.1.3",
"sha256": "bf3156d442119f6a522c08e888a591d6c199a441550bff90ee5729087d0401b9",
"url": "https://download.jetbrains.com/python/pycharm-community-2024.1.3-aarch64.tar.gz",
"build_number": "241.17890.14"
"version": "2024.1.4",
"sha256": "40dc15c31f44afd8ea5b42de54863253036b0d0f41b20612d0abd937e36af267",
"url": "https://download.jetbrains.com/python/pycharm-community-2024.1.4-aarch64.tar.gz",
"build_number": "241.18034.82"
},
"pycharm-professional": {
"update-channel": "PyCharm RELEASE",
"url-template": "https://download.jetbrains.com/python/pycharm-professional-{version}-aarch64.tar.gz",
"version": "2024.1.3",
"sha256": "44f6134f352d0d3754a29d6ca6a6c2a084a2918d302946b45141714f3b8ceaaf",
"url": "https://download.jetbrains.com/python/pycharm-professional-2024.1.3-aarch64.tar.gz",
"build_number": "241.17890.14"
"version": "2024.1.4",
"sha256": "a90c657a333e1825c934d524cb426115c85d19d7aebfa4a149fda5062be29fab",
"url": "https://download.jetbrains.com/python/pycharm-professional-2024.1.4-aarch64.tar.gz",
"build_number": "241.18034.82"
},
"rider": {
"update-channel": "Rider RELEASE",
@ -239,10 +239,10 @@
"rust-rover": {
"update-channel": "RustRover RELEASE",
"url-template": "https://download.jetbrains.com/rustrover/RustRover-{version}-aarch64.tar.gz",
"version": "2024.1.2",
"sha256": "a6abde77ef84f10d342b57c3f6bff84d0b973d8265c2baeb2490fc36dbcca13f",
"url": "https://download.jetbrains.com/rustrover/RustRover-2024.1.2-aarch64.tar.gz",
"build_number": "241.17011.169"
"version": "2024.1.6",
"sha256": "4671d426dfbf89f614c1ce367c7afba0ef64b7058b4777b72ce145715a352fd1",
"url": "https://download.jetbrains.com/rustrover/RustRover-2024.1.6-aarch64.tar.gz",
"build_number": "241.17890.43"
},
"webstorm": {
"update-channel": "WebStorm RELEASE",
@ -256,9 +256,9 @@
"update-channel": "Writerside EAP",
"url-template": "https://download.jetbrains.com/writerside/writerside-{version}-aarch64.tar.gz",
"version": "2024.1 EAP",
"sha256": "d9f764a8fcbdf13e67f1f152f790c38602792b07fdfd7a8935d320ed8ae68921",
"url": "https://download.jetbrains.com/writerside/writerside-241.16003.85-aarch64.tar.gz",
"build_number": "241.16003.85"
"sha256": "937c30cdfd1431bcdde10bf47f1236ea57c10eca8cd1210a04629a64b383c054",
"url": "https://download.jetbrains.com/writerside/writerside-241.18775.98-aarch64.tar.gz",
"build_number": "241.18775.98"
}
},
"x86_64-darwin": {
@ -338,18 +338,18 @@
"pycharm-community": {
"update-channel": "PyCharm RELEASE",
"url-template": "https://download.jetbrains.com/python/pycharm-community-{version}.dmg",
"version": "2024.1.3",
"sha256": "e115df42536457558b632647b93f86605feaca23bcec5af2d03a8c50ce80e81e",
"url": "https://download.jetbrains.com/python/pycharm-community-2024.1.3.dmg",
"build_number": "241.17890.14"
"version": "2024.1.4",
"sha256": "22558efc74b2d10fcde02650765cc3b500841d71796dba48d018fc8f794cfd5f",
"url": "https://download.jetbrains.com/python/pycharm-community-2024.1.4.dmg",
"build_number": "241.18034.82"
},
"pycharm-professional": {
"update-channel": "PyCharm RELEASE",
"url-template": "https://download.jetbrains.com/python/pycharm-professional-{version}.dmg",
"version": "2024.1.3",
"sha256": "01e29968ef3b5ef18b5425a1aa23d5a36d8c9f413a8ff6b0565f0d59e8601779",
"url": "https://download.jetbrains.com/python/pycharm-professional-2024.1.3.dmg",
"build_number": "241.17890.14"
"version": "2024.1.4",
"sha256": "99f22cba7855dbe8acaa0ec222dfaa75cea2ebe5975f1adca6c7b52c7fa763a5",
"url": "https://download.jetbrains.com/python/pycharm-professional-2024.1.4.dmg",
"build_number": "241.18034.82"
},
"rider": {
"update-channel": "Rider RELEASE",
@ -370,10 +370,10 @@
"rust-rover": {
"update-channel": "RustRover RELEASE",
"url-template": "https://download.jetbrains.com/rustrover/RustRover-{version}.dmg",
"version": "2024.1.2",
"sha256": "d937f1f8eb6a7d0ce35218a616d6e7e237b86c7fdb9562b2ff3213ad3c3730de",
"url": "https://download.jetbrains.com/rustrover/RustRover-2024.1.2.dmg",
"build_number": "241.17011.169"
"version": "2024.1.6",
"sha256": "c5f079356ae9e38424be3257734b8665393146c831bddc917a4b1086321682cf",
"url": "https://download.jetbrains.com/rustrover/RustRover-2024.1.6.dmg",
"build_number": "241.17890.43"
},
"webstorm": {
"update-channel": "WebStorm RELEASE",
@ -387,9 +387,9 @@
"update-channel": "Writerside EAP",
"url-template": "https://download.jetbrains.com/writerside/writerside-{version}.dmg",
"version": "2024.1 EAP",
"sha256": "a9ad84d95ad86b38f35bec25032235b907e19ddf3ef696404f4341650a7eb7b1",
"url": "https://download.jetbrains.com/writerside/writerside-241.16003.85.dmg",
"build_number": "241.16003.85"
"sha256": "0e97d9a2ef53f18930b63a48d7303783aca7422c5d6818543f4805c01991ba41",
"url": "https://download.jetbrains.com/writerside/writerside-241.18775.98.dmg",
"build_number": "241.18775.98"
}
},
"aarch64-darwin": {
@ -469,18 +469,18 @@
"pycharm-community": {
"update-channel": "PyCharm RELEASE",
"url-template": "https://download.jetbrains.com/python/pycharm-community-{version}-aarch64.dmg",
"version": "2024.1.3",
"sha256": "4f0112b2629faa60325e82d70e8864bb796a41942eb06ddb287ca1ef0d9feba9",
"url": "https://download.jetbrains.com/python/pycharm-community-2024.1.3-aarch64.dmg",
"build_number": "241.17890.14"
"version": "2024.1.4",
"sha256": "63c0a14bbad81ab0c1c733802eaf86328e46ebc2de4e7bc0e240f76aefbdf54e",
"url": "https://download.jetbrains.com/python/pycharm-community-2024.1.4-aarch64.dmg",
"build_number": "241.18034.82"
},
"pycharm-professional": {
"update-channel": "PyCharm RELEASE",
"url-template": "https://download.jetbrains.com/python/pycharm-professional-{version}-aarch64.dmg",
"version": "2024.1.3",
"sha256": "28ec2b34fecc8abd38a1ba1661f8a3e784b7cb8d7cf496a51235475db66a190a",
"url": "https://download.jetbrains.com/python/pycharm-professional-2024.1.3-aarch64.dmg",
"build_number": "241.17890.14"
"version": "2024.1.4",
"sha256": "ecfd340566f8c9ed6afcd42331568db5d91fa3a036c511ae8427f573199c3a44",
"url": "https://download.jetbrains.com/python/pycharm-professional-2024.1.4-aarch64.dmg",
"build_number": "241.18034.82"
},
"rider": {
"update-channel": "Rider RELEASE",
@ -501,10 +501,10 @@
"rust-rover": {
"update-channel": "RustRover RELEASE",
"url-template": "https://download.jetbrains.com/rustrover/RustRover-{version}-aarch64.dmg",
"version": "2024.1.2",
"sha256": "af973b73e5ced9982703d7f5d163e3bd8bee8b095aac16b2151ec2c7f1d4d870",
"url": "https://download.jetbrains.com/rustrover/RustRover-2024.1.2-aarch64.dmg",
"build_number": "241.17011.169"
"version": "2024.1.6",
"sha256": "5216ea7e5e994a3df4f1095772f5a44e999d7ca0ac02a21698149c8023c46893",
"url": "https://download.jetbrains.com/rustrover/RustRover-2024.1.6-aarch64.dmg",
"build_number": "241.17890.43"
},
"webstorm": {
"update-channel": "WebStorm RELEASE",
@ -518,9 +518,9 @@
"update-channel": "Writerside EAP",
"url-template": "https://download.jetbrains.com/writerside/writerside-{version}-aarch64.dmg",
"version": "2024.1 EAP",
"sha256": "d3bb0079046570dbfa5175b388e091b1567c024a7ec8587e7c8e5389cf1bd721",
"url": "https://download.jetbrains.com/writerside/writerside-241.16003.85-aarch64.dmg",
"build_number": "241.16003.85"
"sha256": "956fc3d39a2aa34648c272780843729356a20c0a4a1ceb20e69a9f86a562278c",
"url": "https://download.jetbrains.com/writerside/writerside-241.18775.98-aarch64.dmg",
"build_number": "241.18775.98"
}
}
}

View file

@ -18,16 +18,16 @@
],
"builds": {
"233.13135.1068": "https://plugins.jetbrains.com/files/164/546759/IdeaVim-2.12.0-signed.zip",
"241.17011.169": "https://plugins.jetbrains.com/files/164/546759/IdeaVim-2.12.0-signed.zip",
"241.17890.14": "https://plugins.jetbrains.com/files/164/546759/IdeaVim-2.12.0-signed.zip",
"241.17890.24": "https://plugins.jetbrains.com/files/164/546759/IdeaVim-2.12.0-signed.zip",
"241.18034.45": "https://plugins.jetbrains.com/files/164/546759/IdeaVim-2.12.0-signed.zip",
"241.18034.50": "https://plugins.jetbrains.com/files/164/546759/IdeaVim-2.12.0-signed.zip",
"241.18034.61": "https://plugins.jetbrains.com/files/164/546759/IdeaVim-2.12.0-signed.zip",
"241.18034.62": "https://plugins.jetbrains.com/files/164/546759/IdeaVim-2.12.0-signed.zip",
"241.18034.63": "https://plugins.jetbrains.com/files/164/546759/IdeaVim-2.12.0-signed.zip",
"241.18034.69": "https://plugins.jetbrains.com/files/164/546759/IdeaVim-2.12.0-signed.zip",
"241.18034.76": "https://plugins.jetbrains.com/files/164/546759/IdeaVim-2.12.0-signed.zip"
"241.17890.24": "https://plugins.jetbrains.com/files/164/578496/IdeaVIM-2.15.2.zip",
"241.17890.43": "https://plugins.jetbrains.com/files/164/578496/IdeaVIM-2.15.2.zip",
"241.18034.45": "https://plugins.jetbrains.com/files/164/578496/IdeaVIM-2.15.2.zip",
"241.18034.50": "https://plugins.jetbrains.com/files/164/578496/IdeaVIM-2.15.2.zip",
"241.18034.61": "https://plugins.jetbrains.com/files/164/578496/IdeaVIM-2.15.2.zip",
"241.18034.62": "https://plugins.jetbrains.com/files/164/578496/IdeaVIM-2.15.2.zip",
"241.18034.63": "https://plugins.jetbrains.com/files/164/578496/IdeaVIM-2.15.2.zip",
"241.18034.69": "https://plugins.jetbrains.com/files/164/578496/IdeaVIM-2.15.2.zip",
"241.18034.76": "https://plugins.jetbrains.com/files/164/578496/IdeaVIM-2.15.2.zip",
"241.18034.82": "https://plugins.jetbrains.com/files/164/578496/IdeaVIM-2.15.2.zip"
},
"name": "ideavim"
},
@ -46,7 +46,7 @@
"idea-ultimate"
],
"builds": {
"241.18034.62": "https://plugins.jetbrains.com/files/1347/560035/scala-intellij-bin-2024.1.24.zip"
"241.18034.62": "https://plugins.jetbrains.com/files/1347/572480/scala-intellij-bin-2024.1.25.zip"
},
"name": "scala"
},
@ -68,16 +68,16 @@
],
"builds": {
"233.13135.1068": "https://plugins.jetbrains.com/files/2162/542984/StringManipulation-9.14.1.zip",
"241.17011.169": "https://plugins.jetbrains.com/files/2162/542984/StringManipulation-9.14.1.zip",
"241.17890.14": "https://plugins.jetbrains.com/files/2162/542984/StringManipulation-9.14.1.zip",
"241.17890.24": "https://plugins.jetbrains.com/files/2162/542984/StringManipulation-9.14.1.zip",
"241.17890.43": "https://plugins.jetbrains.com/files/2162/542984/StringManipulation-9.14.1.zip",
"241.18034.45": "https://plugins.jetbrains.com/files/2162/542984/StringManipulation-9.14.1.zip",
"241.18034.50": "https://plugins.jetbrains.com/files/2162/542984/StringManipulation-9.14.1.zip",
"241.18034.61": "https://plugins.jetbrains.com/files/2162/542984/StringManipulation-9.14.1.zip",
"241.18034.62": "https://plugins.jetbrains.com/files/2162/542984/StringManipulation-9.14.1.zip",
"241.18034.63": "https://plugins.jetbrains.com/files/2162/542984/StringManipulation-9.14.1.zip",
"241.18034.69": "https://plugins.jetbrains.com/files/2162/542984/StringManipulation-9.14.1.zip",
"241.18034.76": "https://plugins.jetbrains.com/files/2162/542984/StringManipulation-9.14.1.zip"
"241.18034.76": "https://plugins.jetbrains.com/files/2162/542984/StringManipulation-9.14.1.zip",
"241.18034.82": "https://plugins.jetbrains.com/files/2162/542984/StringManipulation-9.14.1.zip"
},
"name": "string-manipulation"
},
@ -99,16 +99,16 @@
],
"builds": {
"233.13135.1068": null,
"241.17011.169": null,
"241.17890.14": null,
"241.17890.24": null,
"241.17890.43": null,
"241.18034.45": null,
"241.18034.50": null,
"241.18034.61": null,
"241.18034.62": null,
"241.18034.63": null,
"241.18034.69": null,
"241.18034.76": null
"241.18034.76": null,
"241.18034.82": null
},
"name": "kotlin"
},
@ -130,16 +130,16 @@
],
"builds": {
"233.13135.1068": null,
"241.17011.169": null,
"241.17890.14": "https://plugins.jetbrains.com/files/6981/552764/ini-241.17890.13.zip",
"241.17890.24": "https://plugins.jetbrains.com/files/6981/552764/ini-241.17890.13.zip",
"241.18034.45": "https://plugins.jetbrains.com/files/6981/560226/ini-241.18034.69.zip",
"241.18034.50": "https://plugins.jetbrains.com/files/6981/560226/ini-241.18034.69.zip",
"241.18034.61": "https://plugins.jetbrains.com/files/6981/560226/ini-241.18034.69.zip",
"241.18034.62": "https://plugins.jetbrains.com/files/6981/560226/ini-241.18034.69.zip",
"241.18034.63": "https://plugins.jetbrains.com/files/6981/560226/ini-241.18034.69.zip",
"241.18034.69": "https://plugins.jetbrains.com/files/6981/560226/ini-241.18034.69.zip",
"241.18034.76": "https://plugins.jetbrains.com/files/6981/560226/ini-241.18034.69.zip"
"241.17890.24": null,
"241.17890.43": null,
"241.18034.45": "https://plugins.jetbrains.com/files/6981/561911/ini-241.18034.82.zip",
"241.18034.50": "https://plugins.jetbrains.com/files/6981/561911/ini-241.18034.82.zip",
"241.18034.61": "https://plugins.jetbrains.com/files/6981/561911/ini-241.18034.82.zip",
"241.18034.62": "https://plugins.jetbrains.com/files/6981/561911/ini-241.18034.82.zip",
"241.18034.63": "https://plugins.jetbrains.com/files/6981/561911/ini-241.18034.82.zip",
"241.18034.69": "https://plugins.jetbrains.com/files/6981/561911/ini-241.18034.82.zip",
"241.18034.76": "https://plugins.jetbrains.com/files/6981/561911/ini-241.18034.82.zip",
"241.18034.82": "https://plugins.jetbrains.com/files/6981/561911/ini-241.18034.82.zip"
},
"name": "ini"
},
@ -161,16 +161,16 @@
],
"builds": {
"233.13135.1068": "https://plugins.jetbrains.com/files/7086/518678/AceJump.zip",
"241.17011.169": "https://plugins.jetbrains.com/files/7086/518678/AceJump.zip",
"241.17890.14": "https://plugins.jetbrains.com/files/7086/518678/AceJump.zip",
"241.17890.24": "https://plugins.jetbrains.com/files/7086/518678/AceJump.zip",
"241.17890.43": "https://plugins.jetbrains.com/files/7086/518678/AceJump.zip",
"241.18034.45": "https://plugins.jetbrains.com/files/7086/518678/AceJump.zip",
"241.18034.50": "https://plugins.jetbrains.com/files/7086/518678/AceJump.zip",
"241.18034.61": "https://plugins.jetbrains.com/files/7086/518678/AceJump.zip",
"241.18034.62": "https://plugins.jetbrains.com/files/7086/518678/AceJump.zip",
"241.18034.63": "https://plugins.jetbrains.com/files/7086/518678/AceJump.zip",
"241.18034.69": "https://plugins.jetbrains.com/files/7086/518678/AceJump.zip",
"241.18034.76": "https://plugins.jetbrains.com/files/7086/518678/AceJump.zip"
"241.18034.76": "https://plugins.jetbrains.com/files/7086/518678/AceJump.zip",
"241.18034.82": "https://plugins.jetbrains.com/files/7086/518678/AceJump.zip"
},
"name": "acejump"
},
@ -208,13 +208,13 @@
"rust-rover"
],
"builds": {
"241.17011.169": "https://plugins.jetbrains.com/files/7322/540027/python-ce-241.17011.48.zip",
"241.17890.14": "https://plugins.jetbrains.com/files/7322/552840/python-ce-241.17890.1.zip",
"241.17890.24": "https://plugins.jetbrains.com/files/7322/552840/python-ce-241.17890.1.zip",
"241.17890.43": "https://plugins.jetbrains.com/files/7322/552840/python-ce-241.17890.1.zip",
"241.18034.45": "https://plugins.jetbrains.com/files/7322/559299/python-ce-241.18034.55.zip",
"241.18034.61": "https://plugins.jetbrains.com/files/7322/559299/python-ce-241.18034.55.zip",
"241.18034.62": "https://plugins.jetbrains.com/files/7322/559299/python-ce-241.18034.55.zip",
"241.18034.76": "https://plugins.jetbrains.com/files/7322/559299/python-ce-241.18034.55.zip"
"241.18034.76": "https://plugins.jetbrains.com/files/7322/559299/python-ce-241.18034.55.zip",
"241.18034.82": "https://plugins.jetbrains.com/files/7322/559299/python-ce-241.18034.55.zip"
},
"name": "python-community-edition"
},
@ -236,16 +236,16 @@
],
"builds": {
"233.13135.1068": "https://plugins.jetbrains.com/files/7391/531687/asciidoctor-intellij-plugin-0.41.14.zip",
"241.17011.169": "https://plugins.jetbrains.com/files/7391/561441/asciidoctor-intellij-plugin-0.42.2.zip",
"241.17890.14": "https://plugins.jetbrains.com/files/7391/561441/asciidoctor-intellij-plugin-0.42.2.zip",
"241.17890.24": "https://plugins.jetbrains.com/files/7391/561441/asciidoctor-intellij-plugin-0.42.2.zip",
"241.17890.43": "https://plugins.jetbrains.com/files/7391/561441/asciidoctor-intellij-plugin-0.42.2.zip",
"241.18034.45": "https://plugins.jetbrains.com/files/7391/561441/asciidoctor-intellij-plugin-0.42.2.zip",
"241.18034.50": "https://plugins.jetbrains.com/files/7391/561441/asciidoctor-intellij-plugin-0.42.2.zip",
"241.18034.61": "https://plugins.jetbrains.com/files/7391/561441/asciidoctor-intellij-plugin-0.42.2.zip",
"241.18034.62": "https://plugins.jetbrains.com/files/7391/561441/asciidoctor-intellij-plugin-0.42.2.zip",
"241.18034.63": "https://plugins.jetbrains.com/files/7391/561441/asciidoctor-intellij-plugin-0.42.2.zip",
"241.18034.69": "https://plugins.jetbrains.com/files/7391/561441/asciidoctor-intellij-plugin-0.42.2.zip",
"241.18034.76": "https://plugins.jetbrains.com/files/7391/561441/asciidoctor-intellij-plugin-0.42.2.zip"
"241.18034.76": "https://plugins.jetbrains.com/files/7391/561441/asciidoctor-intellij-plugin-0.42.2.zip",
"241.18034.82": "https://plugins.jetbrains.com/files/7391/561441/asciidoctor-intellij-plugin-0.42.2.zip"
},
"name": "asciidoc"
},
@ -266,7 +266,6 @@
],
"builds": {
"233.13135.1068": "https://plugins.jetbrains.com/files/8182/466854/intellij-rust-233.15445.zip",
"241.17890.14": null,
"241.17890.24": null,
"241.18034.45": null,
"241.18034.50": null,
@ -274,7 +273,8 @@
"241.18034.62": null,
"241.18034.63": null,
"241.18034.69": null,
"241.18034.76": null
"241.18034.76": null,
"241.18034.82": null
},
"name": "-deprecated-rust"
},
@ -295,7 +295,6 @@
],
"builds": {
"233.13135.1068": null,
"241.17890.14": null,
"241.17890.24": null,
"241.18034.45": null,
"241.18034.50": null,
@ -303,7 +302,8 @@
"241.18034.62": null,
"241.18034.63": null,
"241.18034.69": null,
"241.18034.76": null
"241.18034.76": null,
"241.18034.82": null
},
"name": "-deprecated-rust-beta"
},
@ -317,10 +317,10 @@
"ruby-mine"
],
"builds": {
"241.17890.14": "https://plugins.jetbrains.com/files/8554/535094/featuresTrainer-241.17011.14.zip",
"241.18034.61": "https://plugins.jetbrains.com/files/8554/535094/featuresTrainer-241.17011.14.zip",
"241.18034.62": "https://plugins.jetbrains.com/files/8554/535094/featuresTrainer-241.17011.14.zip",
"241.18034.63": "https://plugins.jetbrains.com/files/8554/535094/featuresTrainer-241.17011.14.zip"
"241.18034.63": "https://plugins.jetbrains.com/files/8554/535094/featuresTrainer-241.17011.14.zip",
"241.18034.82": "https://plugins.jetbrains.com/files/8554/535094/featuresTrainer-241.17011.14.zip"
},
"name": "ide-features-trainer"
},
@ -342,16 +342,16 @@
],
"builds": {
"233.13135.1068": "https://plugins.jetbrains.com/files/8607/555059/NixIDEA-0.4.0.14.zip",
"241.17011.169": "https://plugins.jetbrains.com/files/8607/555059/NixIDEA-0.4.0.14.zip",
"241.17890.14": "https://plugins.jetbrains.com/files/8607/555059/NixIDEA-0.4.0.14.zip",
"241.17890.24": "https://plugins.jetbrains.com/files/8607/555059/NixIDEA-0.4.0.14.zip",
"241.17890.43": "https://plugins.jetbrains.com/files/8607/555059/NixIDEA-0.4.0.14.zip",
"241.18034.45": "https://plugins.jetbrains.com/files/8607/555059/NixIDEA-0.4.0.14.zip",
"241.18034.50": "https://plugins.jetbrains.com/files/8607/555059/NixIDEA-0.4.0.14.zip",
"241.18034.61": "https://plugins.jetbrains.com/files/8607/555059/NixIDEA-0.4.0.14.zip",
"241.18034.62": "https://plugins.jetbrains.com/files/8607/555059/NixIDEA-0.4.0.14.zip",
"241.18034.63": "https://plugins.jetbrains.com/files/8607/555059/NixIDEA-0.4.0.14.zip",
"241.18034.69": "https://plugins.jetbrains.com/files/8607/555059/NixIDEA-0.4.0.14.zip",
"241.18034.76": "https://plugins.jetbrains.com/files/8607/555059/NixIDEA-0.4.0.14.zip"
"241.18034.76": "https://plugins.jetbrains.com/files/8607/555059/NixIDEA-0.4.0.14.zip",
"241.18034.82": "https://plugins.jetbrains.com/files/8607/555059/NixIDEA-0.4.0.14.zip"
},
"name": "nixidea"
},
@ -384,16 +384,16 @@
],
"builds": {
"233.13135.1068": "https://plugins.jetbrains.com/files/10037/493012/CSVEditor-3.3.0-233.zip",
"241.17011.169": "https://plugins.jetbrains.com/files/10037/493010/CSVEditor-3.3.0-241.zip",
"241.17890.14": "https://plugins.jetbrains.com/files/10037/493010/CSVEditor-3.3.0-241.zip",
"241.17890.24": "https://plugins.jetbrains.com/files/10037/493010/CSVEditor-3.3.0-241.zip",
"241.17890.43": "https://plugins.jetbrains.com/files/10037/493010/CSVEditor-3.3.0-241.zip",
"241.18034.45": "https://plugins.jetbrains.com/files/10037/493010/CSVEditor-3.3.0-241.zip",
"241.18034.50": "https://plugins.jetbrains.com/files/10037/493010/CSVEditor-3.3.0-241.zip",
"241.18034.61": "https://plugins.jetbrains.com/files/10037/493010/CSVEditor-3.3.0-241.zip",
"241.18034.62": "https://plugins.jetbrains.com/files/10037/493010/CSVEditor-3.3.0-241.zip",
"241.18034.63": "https://plugins.jetbrains.com/files/10037/493010/CSVEditor-3.3.0-241.zip",
"241.18034.69": "https://plugins.jetbrains.com/files/10037/493010/CSVEditor-3.3.0-241.zip",
"241.18034.76": "https://plugins.jetbrains.com/files/10037/493010/CSVEditor-3.3.0-241.zip"
"241.18034.76": "https://plugins.jetbrains.com/files/10037/493010/CSVEditor-3.3.0-241.zip",
"241.18034.82": "https://plugins.jetbrains.com/files/10037/493010/CSVEditor-3.3.0-241.zip"
},
"name": "csv-editor"
},
@ -414,17 +414,17 @@
"webstorm"
],
"builds": {
"233.13135.1068": "https://plugins.jetbrains.com/files/11349/561478/aws-toolkit-jetbrains-standalone-3.13-233.zip",
"241.17011.169": "https://plugins.jetbrains.com/files/11349/561482/aws-toolkit-jetbrains-standalone-3.13-241.zip",
"241.17890.14": "https://plugins.jetbrains.com/files/11349/561482/aws-toolkit-jetbrains-standalone-3.13-241.zip",
"241.17890.24": "https://plugins.jetbrains.com/files/11349/561482/aws-toolkit-jetbrains-standalone-3.13-241.zip",
"241.18034.45": "https://plugins.jetbrains.com/files/11349/561482/aws-toolkit-jetbrains-standalone-3.13-241.zip",
"241.18034.50": "https://plugins.jetbrains.com/files/11349/561482/aws-toolkit-jetbrains-standalone-3.13-241.zip",
"241.18034.61": "https://plugins.jetbrains.com/files/11349/561482/aws-toolkit-jetbrains-standalone-3.13-241.zip",
"241.18034.62": "https://plugins.jetbrains.com/files/11349/561482/aws-toolkit-jetbrains-standalone-3.13-241.zip",
"241.18034.63": "https://plugins.jetbrains.com/files/11349/561482/aws-toolkit-jetbrains-standalone-3.13-241.zip",
"241.18034.69": "https://plugins.jetbrains.com/files/11349/561482/aws-toolkit-jetbrains-standalone-3.13-241.zip",
"241.18034.76": "https://plugins.jetbrains.com/files/11349/561482/aws-toolkit-jetbrains-standalone-3.13-241.zip"
"233.13135.1068": "https://plugins.jetbrains.com/files/11349/578646/aws-toolkit-jetbrains-standalone-3.20-233.zip",
"241.17890.24": "https://plugins.jetbrains.com/files/11349/578649/aws-toolkit-jetbrains-standalone-3.20-241.zip",
"241.17890.43": "https://plugins.jetbrains.com/files/11349/578649/aws-toolkit-jetbrains-standalone-3.20-241.zip",
"241.18034.45": "https://plugins.jetbrains.com/files/11349/578649/aws-toolkit-jetbrains-standalone-3.20-241.zip",
"241.18034.50": "https://plugins.jetbrains.com/files/11349/578649/aws-toolkit-jetbrains-standalone-3.20-241.zip",
"241.18034.61": "https://plugins.jetbrains.com/files/11349/578649/aws-toolkit-jetbrains-standalone-3.20-241.zip",
"241.18034.62": "https://plugins.jetbrains.com/files/11349/578649/aws-toolkit-jetbrains-standalone-3.20-241.zip",
"241.18034.63": "https://plugins.jetbrains.com/files/11349/578649/aws-toolkit-jetbrains-standalone-3.20-241.zip",
"241.18034.69": "https://plugins.jetbrains.com/files/11349/578649/aws-toolkit-jetbrains-standalone-3.20-241.zip",
"241.18034.76": "https://plugins.jetbrains.com/files/11349/578649/aws-toolkit-jetbrains-standalone-3.20-241.zip",
"241.18034.82": "https://plugins.jetbrains.com/files/11349/578649/aws-toolkit-jetbrains-standalone-3.20-241.zip"
},
"name": "aws-toolkit"
},
@ -445,17 +445,17 @@
"webstorm"
],
"builds": {
"233.13135.1068": "https://plugins.jetbrains.com/files/12062/445740/keymap-vscode-233.11799.188.zip",
"241.17011.169": "https://plugins.jetbrains.com/files/12062/508223/keymap-vscode-241.14494.150.zip",
"241.17890.14": "https://plugins.jetbrains.com/files/12062/508223/keymap-vscode-241.14494.150.zip",
"233.13135.1068": null,
"241.17890.24": "https://plugins.jetbrains.com/files/12062/508223/keymap-vscode-241.14494.150.zip",
"241.17890.43": "https://plugins.jetbrains.com/files/12062/508223/keymap-vscode-241.14494.150.zip",
"241.18034.45": "https://plugins.jetbrains.com/files/12062/508223/keymap-vscode-241.14494.150.zip",
"241.18034.50": "https://plugins.jetbrains.com/files/12062/508223/keymap-vscode-241.14494.150.zip",
"241.18034.61": "https://plugins.jetbrains.com/files/12062/508223/keymap-vscode-241.14494.150.zip",
"241.18034.62": "https://plugins.jetbrains.com/files/12062/508223/keymap-vscode-241.14494.150.zip",
"241.18034.63": "https://plugins.jetbrains.com/files/12062/508223/keymap-vscode-241.14494.150.zip",
"241.18034.69": "https://plugins.jetbrains.com/files/12062/508223/keymap-vscode-241.14494.150.zip",
"241.18034.76": "https://plugins.jetbrains.com/files/12062/508223/keymap-vscode-241.14494.150.zip"
"241.18034.76": "https://plugins.jetbrains.com/files/12062/508223/keymap-vscode-241.14494.150.zip",
"241.18034.82": "https://plugins.jetbrains.com/files/12062/508223/keymap-vscode-241.14494.150.zip"
},
"name": "vscode-keymap"
},
@ -477,16 +477,16 @@
],
"builds": {
"233.13135.1068": "https://plugins.jetbrains.com/files/12559/445772/keymap-eclipse-233.11799.165.zip",
"241.17011.169": "https://plugins.jetbrains.com/files/12559/508216/keymap-eclipse-241.14494.150.zip",
"241.17890.14": "https://plugins.jetbrains.com/files/12559/508216/keymap-eclipse-241.14494.150.zip",
"241.17890.24": "https://plugins.jetbrains.com/files/12559/508216/keymap-eclipse-241.14494.150.zip",
"241.17890.43": "https://plugins.jetbrains.com/files/12559/508216/keymap-eclipse-241.14494.150.zip",
"241.18034.45": "https://plugins.jetbrains.com/files/12559/508216/keymap-eclipse-241.14494.150.zip",
"241.18034.50": "https://plugins.jetbrains.com/files/12559/508216/keymap-eclipse-241.14494.150.zip",
"241.18034.61": "https://plugins.jetbrains.com/files/12559/508216/keymap-eclipse-241.14494.150.zip",
"241.18034.62": "https://plugins.jetbrains.com/files/12559/508216/keymap-eclipse-241.14494.150.zip",
"241.18034.63": "https://plugins.jetbrains.com/files/12559/508216/keymap-eclipse-241.14494.150.zip",
"241.18034.69": "https://plugins.jetbrains.com/files/12559/508216/keymap-eclipse-241.14494.150.zip",
"241.18034.76": "https://plugins.jetbrains.com/files/12559/508216/keymap-eclipse-241.14494.150.zip"
"241.18034.76": "https://plugins.jetbrains.com/files/12559/508216/keymap-eclipse-241.14494.150.zip",
"241.18034.82": "https://plugins.jetbrains.com/files/12559/508216/keymap-eclipse-241.14494.150.zip"
},
"name": "eclipse-keymap"
},
@ -508,16 +508,16 @@
],
"builds": {
"233.13135.1068": "https://plugins.jetbrains.com/files/13017/445774/keymap-visualStudio-233.11799.165.zip",
"241.17011.169": "https://plugins.jetbrains.com/files/13017/508253/keymap-visualStudio-241.14494.150.zip",
"241.17890.14": "https://plugins.jetbrains.com/files/13017/508253/keymap-visualStudio-241.14494.150.zip",
"241.17890.24": "https://plugins.jetbrains.com/files/13017/508253/keymap-visualStudio-241.14494.150.zip",
"241.17890.43": "https://plugins.jetbrains.com/files/13017/508253/keymap-visualStudio-241.14494.150.zip",
"241.18034.45": "https://plugins.jetbrains.com/files/13017/508253/keymap-visualStudio-241.14494.150.zip",
"241.18034.50": "https://plugins.jetbrains.com/files/13017/508253/keymap-visualStudio-241.14494.150.zip",
"241.18034.61": "https://plugins.jetbrains.com/files/13017/508253/keymap-visualStudio-241.14494.150.zip",
"241.18034.62": "https://plugins.jetbrains.com/files/13017/508253/keymap-visualStudio-241.14494.150.zip",
"241.18034.63": "https://plugins.jetbrains.com/files/13017/508253/keymap-visualStudio-241.14494.150.zip",
"241.18034.69": "https://plugins.jetbrains.com/files/13017/508253/keymap-visualStudio-241.14494.150.zip",
"241.18034.76": "https://plugins.jetbrains.com/files/13017/508253/keymap-visualStudio-241.14494.150.zip"
"241.18034.76": "https://plugins.jetbrains.com/files/13017/508253/keymap-visualStudio-241.14494.150.zip",
"241.18034.82": "https://plugins.jetbrains.com/files/13017/508253/keymap-visualStudio-241.14494.150.zip"
},
"name": "visual-studio-keymap"
},
@ -539,16 +539,16 @@
],
"builds": {
"233.13135.1068": null,
"241.17011.169": "https://plugins.jetbrains.com/files/14004/523287/protoeditor-241.15989.49.zip",
"241.17890.14": "https://plugins.jetbrains.com/files/14004/523287/protoeditor-241.15989.49.zip",
"241.17890.24": "https://plugins.jetbrains.com/files/14004/523287/protoeditor-241.15989.49.zip",
"241.17890.43": "https://plugins.jetbrains.com/files/14004/523287/protoeditor-241.15989.49.zip",
"241.18034.45": "https://plugins.jetbrains.com/files/14004/523287/protoeditor-241.15989.49.zip",
"241.18034.50": "https://plugins.jetbrains.com/files/14004/523287/protoeditor-241.15989.49.zip",
"241.18034.61": "https://plugins.jetbrains.com/files/14004/523287/protoeditor-241.15989.49.zip",
"241.18034.62": "https://plugins.jetbrains.com/files/14004/523287/protoeditor-241.15989.49.zip",
"241.18034.63": "https://plugins.jetbrains.com/files/14004/523287/protoeditor-241.15989.49.zip",
"241.18034.69": "https://plugins.jetbrains.com/files/14004/523287/protoeditor-241.15989.49.zip",
"241.18034.76": "https://plugins.jetbrains.com/files/14004/523287/protoeditor-241.15989.49.zip"
"241.18034.76": "https://plugins.jetbrains.com/files/14004/523287/protoeditor-241.15989.49.zip",
"241.18034.82": "https://plugins.jetbrains.com/files/14004/523287/protoeditor-241.15989.49.zip"
},
"name": "protocol-buffers"
},
@ -570,16 +570,16 @@
],
"builds": {
"233.13135.1068": "https://plugins.jetbrains.com/files/14059/82616/darcula-pitch-black.jar",
"241.17011.169": "https://plugins.jetbrains.com/files/14059/82616/darcula-pitch-black.jar",
"241.17890.14": "https://plugins.jetbrains.com/files/14059/82616/darcula-pitch-black.jar",
"241.17890.24": "https://plugins.jetbrains.com/files/14059/82616/darcula-pitch-black.jar",
"241.17890.43": "https://plugins.jetbrains.com/files/14059/82616/darcula-pitch-black.jar",
"241.18034.45": "https://plugins.jetbrains.com/files/14059/82616/darcula-pitch-black.jar",
"241.18034.50": "https://plugins.jetbrains.com/files/14059/82616/darcula-pitch-black.jar",
"241.18034.61": "https://plugins.jetbrains.com/files/14059/82616/darcula-pitch-black.jar",
"241.18034.62": "https://plugins.jetbrains.com/files/14059/82616/darcula-pitch-black.jar",
"241.18034.63": "https://plugins.jetbrains.com/files/14059/82616/darcula-pitch-black.jar",
"241.18034.69": "https://plugins.jetbrains.com/files/14059/82616/darcula-pitch-black.jar",
"241.18034.76": "https://plugins.jetbrains.com/files/14059/82616/darcula-pitch-black.jar"
"241.18034.76": "https://plugins.jetbrains.com/files/14059/82616/darcula-pitch-black.jar",
"241.18034.82": "https://plugins.jetbrains.com/files/14059/82616/darcula-pitch-black.jar"
},
"name": "darcula-pitch-black"
},
@ -600,17 +600,17 @@
"webstorm"
],
"builds": {
"233.13135.1068": "https://plugins.jetbrains.com/files/17718/561438/github-copilot-intellij-1.5.11.5872.zip",
"241.17011.169": "https://plugins.jetbrains.com/files/17718/561438/github-copilot-intellij-1.5.11.5872.zip",
"241.17890.14": "https://plugins.jetbrains.com/files/17718/561438/github-copilot-intellij-1.5.11.5872.zip",
"241.17890.24": "https://plugins.jetbrains.com/files/17718/561438/github-copilot-intellij-1.5.11.5872.zip",
"241.18034.45": "https://plugins.jetbrains.com/files/17718/561438/github-copilot-intellij-1.5.11.5872.zip",
"241.18034.50": "https://plugins.jetbrains.com/files/17718/561438/github-copilot-intellij-1.5.11.5872.zip",
"241.18034.61": "https://plugins.jetbrains.com/files/17718/561438/github-copilot-intellij-1.5.11.5872.zip",
"241.18034.62": "https://plugins.jetbrains.com/files/17718/561438/github-copilot-intellij-1.5.11.5872.zip",
"241.18034.63": "https://plugins.jetbrains.com/files/17718/561438/github-copilot-intellij-1.5.11.5872.zip",
"241.18034.69": "https://plugins.jetbrains.com/files/17718/561438/github-copilot-intellij-1.5.11.5872.zip",
"241.18034.76": "https://plugins.jetbrains.com/files/17718/561438/github-copilot-intellij-1.5.11.5872.zip"
"233.13135.1068": "https://plugins.jetbrains.com/files/17718/578624/github-copilot-intellij-1.5.17.6356.zip",
"241.17890.24": "https://plugins.jetbrains.com/files/17718/578624/github-copilot-intellij-1.5.17.6356.zip",
"241.17890.43": "https://plugins.jetbrains.com/files/17718/578624/github-copilot-intellij-1.5.17.6356.zip",
"241.18034.45": "https://plugins.jetbrains.com/files/17718/578624/github-copilot-intellij-1.5.17.6356.zip",
"241.18034.50": "https://plugins.jetbrains.com/files/17718/578624/github-copilot-intellij-1.5.17.6356.zip",
"241.18034.61": "https://plugins.jetbrains.com/files/17718/578624/github-copilot-intellij-1.5.17.6356.zip",
"241.18034.62": "https://plugins.jetbrains.com/files/17718/578624/github-copilot-intellij-1.5.17.6356.zip",
"241.18034.63": "https://plugins.jetbrains.com/files/17718/578624/github-copilot-intellij-1.5.17.6356.zip",
"241.18034.69": "https://plugins.jetbrains.com/files/17718/578624/github-copilot-intellij-1.5.17.6356.zip",
"241.18034.76": "https://plugins.jetbrains.com/files/17718/578624/github-copilot-intellij-1.5.17.6356.zip",
"241.18034.82": "https://plugins.jetbrains.com/files/17718/578624/github-copilot-intellij-1.5.17.6356.zip"
},
"name": "github-copilot"
},
@ -632,16 +632,16 @@
],
"builds": {
"233.13135.1068": "https://plugins.jetbrains.com/files/18444/165585/NetBeans6.5Keymap.zip",
"241.17011.169": "https://plugins.jetbrains.com/files/18444/165585/NetBeans6.5Keymap.zip",
"241.17890.14": "https://plugins.jetbrains.com/files/18444/165585/NetBeans6.5Keymap.zip",
"241.17890.24": "https://plugins.jetbrains.com/files/18444/165585/NetBeans6.5Keymap.zip",
"241.17890.43": "https://plugins.jetbrains.com/files/18444/165585/NetBeans6.5Keymap.zip",
"241.18034.45": "https://plugins.jetbrains.com/files/18444/165585/NetBeans6.5Keymap.zip",
"241.18034.50": "https://plugins.jetbrains.com/files/18444/165585/NetBeans6.5Keymap.zip",
"241.18034.61": "https://plugins.jetbrains.com/files/18444/165585/NetBeans6.5Keymap.zip",
"241.18034.62": "https://plugins.jetbrains.com/files/18444/165585/NetBeans6.5Keymap.zip",
"241.18034.63": "https://plugins.jetbrains.com/files/18444/165585/NetBeans6.5Keymap.zip",
"241.18034.69": "https://plugins.jetbrains.com/files/18444/165585/NetBeans6.5Keymap.zip",
"241.18034.76": "https://plugins.jetbrains.com/files/18444/165585/NetBeans6.5Keymap.zip"
"241.18034.76": "https://plugins.jetbrains.com/files/18444/165585/NetBeans6.5Keymap.zip",
"241.18034.82": "https://plugins.jetbrains.com/files/18444/165585/NetBeans6.5Keymap.zip"
},
"name": "netbeans-6-5-keymap"
},
@ -663,16 +663,16 @@
],
"builds": {
"233.13135.1068": "https://plugins.jetbrains.com/files/20146/537545/Mermaid-0.0.22_IJ.232.zip",
"241.17011.169": "https://plugins.jetbrains.com/files/20146/537545/Mermaid-0.0.22_IJ.232.zip",
"241.17890.14": "https://plugins.jetbrains.com/files/20146/537545/Mermaid-0.0.22_IJ.232.zip",
"241.17890.24": "https://plugins.jetbrains.com/files/20146/537545/Mermaid-0.0.22_IJ.232.zip",
"241.17890.43": "https://plugins.jetbrains.com/files/20146/537545/Mermaid-0.0.22_IJ.232.zip",
"241.18034.45": "https://plugins.jetbrains.com/files/20146/537545/Mermaid-0.0.22_IJ.232.zip",
"241.18034.50": "https://plugins.jetbrains.com/files/20146/537545/Mermaid-0.0.22_IJ.232.zip",
"241.18034.61": "https://plugins.jetbrains.com/files/20146/537545/Mermaid-0.0.22_IJ.232.zip",
"241.18034.62": "https://plugins.jetbrains.com/files/20146/537545/Mermaid-0.0.22_IJ.232.zip",
"241.18034.63": "https://plugins.jetbrains.com/files/20146/537545/Mermaid-0.0.22_IJ.232.zip",
"241.18034.69": "https://plugins.jetbrains.com/files/20146/537545/Mermaid-0.0.22_IJ.232.zip",
"241.18034.76": "https://plugins.jetbrains.com/files/20146/537545/Mermaid-0.0.22_IJ.232.zip"
"241.18034.76": "https://plugins.jetbrains.com/files/20146/537545/Mermaid-0.0.22_IJ.232.zip",
"241.18034.82": "https://plugins.jetbrains.com/files/20146/537545/Mermaid-0.0.22_IJ.232.zip"
},
"name": "mermaid"
},
@ -683,9 +683,9 @@
"rust-rover"
],
"builds": {
"241.17011.169": "https://plugins.jetbrains.com/files/22407/555351/intellij-rust-241.27011.169.zip",
"241.18034.45": "https://plugins.jetbrains.com/files/22407/555351/intellij-rust-241.27011.169.zip",
"241.18034.62": "https://plugins.jetbrains.com/files/22407/555351/intellij-rust-241.27011.169.zip"
"241.17890.43": "https://plugins.jetbrains.com/files/22407/578199/intellij-rust-241.37890.44.zip",
"241.18034.45": "https://plugins.jetbrains.com/files/22407/578199/intellij-rust-241.37890.44.zip",
"241.18034.62": "https://plugins.jetbrains.com/files/22407/578199/intellij-rust-241.37890.44.zip"
},
"name": "rust"
}
@ -693,30 +693,28 @@
"files": {
"https://plugins.jetbrains.com/files/10037/493010/CSVEditor-3.3.0-241.zip": "sha256-P8AFMVp/rFi7zTh9f/i45q/QalvI37itnK57Dz/W/z4=",
"https://plugins.jetbrains.com/files/10037/493012/CSVEditor-3.3.0-233.zip": "sha256-C3l3Z9a7maCrMjc2Fk/wf3AoExRbvN+fn2mAtXigt0A=",
"https://plugins.jetbrains.com/files/11349/561478/aws-toolkit-jetbrains-standalone-3.13-233.zip": "sha256-Cc87UUI1dAFqmmydPRAcirlF2kF1v1sMcYMdHVZ5lK8=",
"https://plugins.jetbrains.com/files/11349/561482/aws-toolkit-jetbrains-standalone-3.13-241.zip": "sha256-uk9DVZ7K+EwkoNubC5eoVwxlvYCd7KVTl90zJsKc4r0=",
"https://plugins.jetbrains.com/files/12062/445740/keymap-vscode-233.11799.188.zip": "sha256-9keDJ73bSHkzAEq8nT96I5sp05BgMZ08/4BzarOjO5g=",
"https://plugins.jetbrains.com/files/11349/578646/aws-toolkit-jetbrains-standalone-3.20-233.zip": "sha256-Xa+swM/llXNDTg5ol5Li25VPKZuZQYpboCnaxIQuVLI=",
"https://plugins.jetbrains.com/files/11349/578649/aws-toolkit-jetbrains-standalone-3.20-241.zip": "sha256-M4xEhew2p2fPrEuVgnrkfuWs8HYQwi89dSda5o0f9/s=",
"https://plugins.jetbrains.com/files/12062/508223/keymap-vscode-241.14494.150.zip": "sha256-LeQ5vi9PCJYmWNmT/sutWjSlwZaAYYuEljVJBYG2VpY=",
"https://plugins.jetbrains.com/files/12559/445772/keymap-eclipse-233.11799.165.zip": "sha256-IsmoWuUroAp1LLuphp4F1dun4tQOOitZxoG+Nxs5pYk=",
"https://plugins.jetbrains.com/files/12559/508216/keymap-eclipse-241.14494.150.zip": "sha256-/hEx0gIFvUXD799tRmMHAt9Z5ziFgaQs1RX0zQwTJIA=",
"https://plugins.jetbrains.com/files/13017/445774/keymap-visualStudio-233.11799.165.zip": "sha256-Nb2tSxL+mAY1qJ3waipgV8ep+0R/BaYnzz7zfwtLHmk=",
"https://plugins.jetbrains.com/files/13017/508253/keymap-visualStudio-241.14494.150.zip": "sha256-tNgt0vIkdCB/LcaSj58mT6cNlw4lytRo0cZSt7sIERU=",
"https://plugins.jetbrains.com/files/1347/560035/scala-intellij-bin-2024.1.24.zip": "sha256-lXAZCaCTxyVqV6SPJeSZ7EJmDf5SA+eby64kIsC9sVY=",
"https://plugins.jetbrains.com/files/14059/82616/darcula-pitch-black.jar": "sha256-eXInfAqY3yEZRXCAuv3KGldM1pNKEioNwPB0rIGgJFw=",
"https://plugins.jetbrains.com/files/1347/572480/scala-intellij-bin-2024.1.25.zip": "sha256-hyg9YS3XgvAxouVnn+v1+fk6kF6M6I560e9LqLVKgdw=",
"https://plugins.jetbrains.com/files/14004/523287/protoeditor-241.15989.49.zip": "sha256-cltbHY5OOvf29otDNsF9Q2shJHDdW6UMbzDdZ6OATtI=",
"https://plugins.jetbrains.com/files/14059/82616/darcula-pitch-black.jar": "sha256-eXInfAqY3yEZRXCAuv3KGldM1pNKEioNwPB0rIGgJFw=",
"https://plugins.jetbrains.com/files/164/546759/IdeaVim-2.12.0-signed.zip": "sha256-6ibo1vdwO4olQTCWpWAefT3QCwgtzTo1ojilDes8Rvg=",
"https://plugins.jetbrains.com/files/17718/561438/github-copilot-intellij-1.5.11.5872.zip": "sha256-4bYtBaLvcXZv8eVfG09ywSbcP+7SUb4j+NZ5mb2aluE=",
"https://plugins.jetbrains.com/files/164/578496/IdeaVIM-2.15.2.zip": "sha256-87U5KPVLKQ76UfXS021+lhuaWLcxGdBdZeH4l/ccFPU=",
"https://plugins.jetbrains.com/files/17718/578624/github-copilot-intellij-1.5.17.6356.zip": "sha256-oIH+bJ9ucU+tIs3m0tz5Mr2oqE6BeA4x9RjxJ95OZR0=",
"https://plugins.jetbrains.com/files/18444/165585/NetBeans6.5Keymap.zip": "sha256-KrzZTKZMQqoEMw+vDUv2jjs0EX0leaPBkU8H/ecq/oI=",
"https://plugins.jetbrains.com/files/20146/537545/Mermaid-0.0.22_IJ.232.zip": "sha256-DUiIQYIzYoXmgtBakSLtMB+xxJMaR70Jgg9erySa3wQ=",
"https://plugins.jetbrains.com/files/2162/542984/StringManipulation-9.14.1.zip": "sha256-OqeQCqFe8iW/8NPg+9i+UKh+twIPQ9uLZrItMukCi7k=",
"https://plugins.jetbrains.com/files/22407/555351/intellij-rust-241.27011.169.zip": "sha256-7rbYfO5CUvsW3HXWmEadreKbhJhX6joX15miODb2N+4=",
"https://plugins.jetbrains.com/files/22407/578199/intellij-rust-241.37890.44.zip": "sha256-p9A3RzGg0cTX6zgqSIX1qxlrroypIdPkSoW12leI2Hs=",
"https://plugins.jetbrains.com/files/631/559769/python-241.18034.62.zip": "sha256-DnjjUcwRL9dbNrHTnZacQYPE0biRFLmq6lR2ApRGgXI=",
"https://plugins.jetbrains.com/files/6981/552764/ini-241.17890.13.zip": "sha256-7JQpKNttNfTvzfZ2Qj42FZAtSqx6GjWHhT0WRecK3tc=",
"https://plugins.jetbrains.com/files/6981/560226/ini-241.18034.69.zip": "sha256-85KeM0H3Jw8WP6LjKf1L7mIRXxnTR3YUCT6xUduAN/s=",
"https://plugins.jetbrains.com/files/6981/561911/ini-241.18034.82.zip": "sha256-PdS+qm3vG4JB5J/kNc9/hsVvjO/gMl/RZTg69jCNWlQ=",
"https://plugins.jetbrains.com/files/7086/518678/AceJump.zip": "sha256-kVUEgfEKUupV/qlB4Dpzi5pFHjhVvX74XIPetKtjysM=",
"https://plugins.jetbrains.com/files/7219/542990/Symfony_Plugin-2024.1.274.zip": "sha256-92uUIFz5kEjrbgPnomi0VXc9Du17evzGsO5ApsrtHrA=",
"https://plugins.jetbrains.com/files/7320/507957/PHP_Annotations-10.0.0.zip": "sha256-JIZ6Iq3sOcAm8fBXnjRrG9dqCZuD/WajyVmn1JjYMBA=",
"https://plugins.jetbrains.com/files/7322/540027/python-ce-241.17011.48.zip": "sha256-UrvhbGhcqxGke5tZTktyaWVYIWO5NhOU/WiswMYr83Y=",
"https://plugins.jetbrains.com/files/7322/552840/python-ce-241.17890.1.zip": "sha256-njHcuJmpc/5JsfZ6mmjcRK2j78J0E4bu68T1A0DNdVU=",
"https://plugins.jetbrains.com/files/7322/559299/python-ce-241.18034.55.zip": "sha256-e+MewymlNWzbut8eADe8jwqco921ULe83eLEGpDf1GY=",
"https://plugins.jetbrains.com/files/7391/531687/asciidoctor-intellij-plugin-0.41.14.zip": "sha256-icVvR79Ut6RopPKqvUQf4ZHKg14LV8/KWUZfQh/BYV8=",

View file

@ -1,67 +0,0 @@
{ lib
, stdenv
, buildGoModule
, fetchFromGitHub
, installShellFiles
, callPackage
, wl-clipboard
, xclip
, makeWrapper
, withXclip ? true
, withWlclip ? true
}:
let
clipboardPkgs = if stdenv.isLinux then
lib.optional withXclip xclip ++
lib.optional withWlclip wl-clipboard
else [ ];
in
buildGoModule rec {
pname = "micro";
version = "2.0.13";
src = fetchFromGitHub {
owner = "zyedidia";
repo = pname;
rev = "v${version}";
hash = "sha256-fe+7RkUwCveBk14bYzg5uLGOqTVVJsrqixBQhCS79hY=";
};
vendorHash = "sha256-ePhObvm3m/nT+7IyT0W6K+y+9UNkfd2kYjle2ffAd9Y=";
nativeBuildInputs = [ installShellFiles makeWrapper ];
subPackages = [ "cmd/micro" ];
ldflags = let t = "github.com/zyedidia/micro/v2/internal"; in [
"-s"
"-w"
"-X ${t}/util.Version=${version}"
"-X ${t}/util.CommitHash=${src.rev}"
];
preBuild = ''
GOOS= GOARCH= go generate ./runtime
'';
postInstall = ''
installManPage assets/packaging/micro.1
install -Dm444 -t $out/share/applications assets/packaging/micro.desktop
install -Dm644 assets/micro-logo-mark.svg $out/share/icons/hicolor/scalable/apps/micro.svg
'';
postFixup = ''
wrapProgram "$out/bin/micro" \
--prefix PATH : "${lib.makeBinPath clipboardPkgs}"
'';
passthru.tests.expect = callPackage ./test-with-expect.nix { };
meta = with lib; {
homepage = "https://micro-editor.github.io";
description = "Modern and intuitive terminal-based text editor";
license = licenses.mit;
maintainers = with maintainers; [ dtzWill ];
mainProgram = "micro";
};
}

View file

@ -1,30 +0,0 @@
{ micro, expect, runCommand, writeScript }:
let expect-script = writeScript "expect-script" ''
#!${expect}/bin/expect -f
spawn micro file.txt
expect "file.txt"
send "Hello world!"
expect "Hello world!"
# Send ctrl-q (exit)
send "\021"
expect "Save changes to file.txt before closing?"
send "y"
expect eof
''; in
runCommand "micro-test-expect"
{
nativeBuildInputs = [ micro expect ];
passthru = { inherit expect-script; };
} ''
# Micro really wants a writable $HOME for its config directory.
export HOME=$(pwd)
expect -f ${expect-script}
grep "Hello world!" file.txt
touch $out
''

View file

@ -2020,8 +2020,8 @@ let
mktplcRef = {
publisher = "github";
name = "copilot";
version = "1.200.920";
hash = "sha256-LMShW9GN/wsDBodVn33Ui4qW0619r13VO2rSTPVE9TQ=";
version = "1.219.1019"; # compatible with vscode ^1.91.0
hash = "sha256-W39hZyJ5XtDghkKu4Ml99M0/jZ1tVMGesKAKPquTkb8=";
};
meta = {
@ -2037,8 +2037,8 @@ let
mktplcRef = {
publisher = "github";
name = "copilot-chat";
version = "0.16.2024060502"; # compatible with vscode 1.90.0
hash = "sha256-SAydDc3JlJzfCtbJICy3rWx8psVPdRdPfOuzR9Dqtp8=";
version = "0.17.2024062801"; # compatible with vscode ^1.91.0
hash = "sha256-aDTqHDGdWE/CG5bt/9um62sGFngHsJJvTl38NEqNq8E=";
};
meta = {
description = "GitHub Copilot Chat is a companion extension to GitHub Copilot that houses experimental chat features";

View file

@ -9,8 +9,8 @@ vscode-utils.buildVscodeMarketplaceExtension {
mktplcRef = {
name = "jupyter";
publisher = "ms-toolsai";
version = "2024.6.0";
hash = "sha256-T+8K/NbuWYnJk+cXekiDpmpnZAJ7jl/nqPQgWQ49mco=";
version = "2024.7.0";
hash = "sha256-hf6Y1SjKfLGe5LQ9swbPzbOCtohQ43DzHXMZwRt2d90=";
};
nativeBuildInputs = [

View file

@ -206,6 +206,9 @@ in
preFixup = ''
gappsWrapperArgs+=(
${ # we cannot use runtimeDependencies otherwise libdbusmenu do not work on kde
lib.optionalString stdenv.isLinux
"--prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath [ libdbusmenu ]}"}
# Add gio to PATH so that moving files to the trash works when not using a desktop environment
--prefix PATH : ${glib.bin}/bin
--add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--ozone-platform-hint=auto --enable-features=WaylandWindowDecorations}}"

View file

@ -1,6 +1,6 @@
{ stdenv, lib, fetchFromGitHub, copyDesktopItems, makeDesktopItem, qmake
{ stdenv, lib, fetchFromGitHub, fetchpatch2, copyDesktopItems, makeDesktopItem, qmake
, qtbase, qtxmlpatterns, qttools, qtwebengine, libGL, fontconfig, openssl, poppler, wrapQtAppsHook
, ffmpeg, libva, alsa-lib, SDL, x264, libvpx, libvorbis, libtheora, libogg
, ffmpeg_7, libva, alsa-lib, SDL, x264, libvpx, libvorbis, libtheora, libogg
, libopus, lame, fdk_aac, libass, quazip, libXext, libXfixes }:
let
@ -34,6 +34,22 @@ in stdenv.mkDerivation (finalAttrs: {
hash = "sha256-OSAogtZoMisyRziv63ag9w8HQaaRdz0J28jQZR7cTMM=";
};
patches = [
# fix: Support FFmpeg 7.0
# https://github.com/OpenBoard-org/OpenBoard/pull/1017
(fetchpatch2 {
url = "https://github.com/OpenBoard-org/OpenBoard/commit/4f45b6c4016972cf5835f9188bda6197b1b4ed2f.patch?full_index=1";
hash = "sha256-MUJbHfOCMlRO4pg5scm+DrBsngZwB7UPuDJZss5x9Zs=";
})
# fix: Resolve FFmpeg 7.0 warnings
# https://github.com/OpenBoard-org/OpenBoard/pull/1017
(fetchpatch2 {
url = "https://github.com/OpenBoard-org/OpenBoard/commit/315bcac782e10cc6ceef1fc8b78fff40541ea38f.patch?full_index=1";
hash = "sha256-736eX+uXuZwHJxOXAgxs2/vjjD1JY9mMyj3rR45/7xk=";
})
];
postPatch = ''
substituteInPlace OpenBoard.pro \
--replace '/usr/include/quazip5' '${lib.getDev quazip}/include/QuaZip-Qt5-${quazip.version}/quazip' \
@ -52,7 +68,7 @@ in stdenv.mkDerivation (finalAttrs: {
fontconfig
openssl
poppler
ffmpeg
ffmpeg_7
libva
alsa-lib
SDL

View file

@ -4,7 +4,6 @@
, pkg-config
, cmake
, libvorbis
, ffmpeg
, libeb
, hunspell
, opencc
@ -61,7 +60,6 @@ stdenv.mkDerivation (finalAttrs: {
libiconv
opencc
libeb
ffmpeg
xapian
libzim
];
@ -76,7 +74,7 @@ stdenv.mkDerivation (finalAttrs: {
cmakeFlags = [
"-DWITH_XAPIAN=ON"
"-DWITH_ZIM=ON"
"-DWITH_FFMPEG_PLAYER=ON"
"-DWITH_FFMPEG_PLAYER=OFF"
"-DWITH_EPWING_SUPPORT=ON"
"-DUSE_SYSTEM_FMT=ON"
"-DUSE_SYSTEM_TOML=ON"

View file

@ -5,16 +5,16 @@
buildGoModule rec {
pname = "hcl2json";
version = "0.6.3";
version = "0.6.4";
src = fetchFromGitHub {
owner = "tmccombs";
repo = pname;
rev = "v${version}";
sha256 = "sha256-RBzx6TxkR6GwMGHIpkJeswZ3zV4hRf38rTGUO6u2OI4=";
sha256 = "sha256-aYsE4Tmi2h+XiLZH0faoB17UA7xHht8bec5Kud+NLIk=";
};
vendorHash = "sha256-G/2bSFCXbph0bVjmWmcFgv4i/pCOQHhYxsVRVkpHPo4=";
vendorHash = "sha256-Rjpru0SfGm9hdMQwvk8yM/E65YFB0NicaJ7a56/uwLE=";
subPackages = [ "." ];

View file

@ -57,6 +57,14 @@ python3.pkgs.buildPythonApplication rec {
export HOME=$(mktemp -d)
'';
disabledTests = [
# AttributeError: 'called_once' is not a valid assertion.
"test_commit"
# AttributeError: 'not_called' is not a valid assertion.
"test_finalize_no_evolve"
"test_patch"
];
disabledTestPaths = [
# codestyle doesn't matter to us
"tests/test_style.py"

View file

@ -2,13 +2,13 @@
buildGoModule rec {
pname = "kubeconform";
version = "0.6.6";
version = "0.6.7";
src = fetchFromGitHub {
owner = "yannh";
repo = pname;
rev = "v${version}";
sha256 = "sha256-pE5DDtraN5ubEsM+QfY5y/dqM31VsQ3FeM/c56AJ648=";
sha256 = "sha256-Yq9lJ3rSG8v/PeofkZrnO2nzEgtyB5vtNafKabp8hnQ=";
};
vendorHash = null;

View file

@ -1,9 +1,9 @@
{
"version" = "1.11.71";
"version" = "1.11.72";
"hashes" = {
"desktopSrcHash" = "sha256-eS2GU6LRn/697Z4KmBSeYhKT/Bvh2IptbqZ4x7iMj3A=";
"desktopYarnHash" = "0s51309ndra50h08ga1hm0ldmnrqadsm74s6k4hnn7pmb20av0as";
"webSrcHash" = "sha256-UzSqChCa94LqaQpMzwQGPX3G2xxOpP3jp5OvR1iBzRs=";
"webYarnHash" = "096bl6hgxg9xmqfgmdff4cdh6cpzgk7k9gyv2549dgkvvi95709k";
"desktopSrcHash" = "sha256-eNK63Q3fWnc7+hQAKkvsjJ2DUL7AmtexvGTOox0dVVs=";
"desktopYarnHash" = "10a409klzzvm6dm27803c2cgwpx1aj035ad1mdnsqyhnd4nsigpw";
"webSrcHash" = "sha256-ZLSCbt00R3azFz2lOuj8yqaLFyobnmGmQKYOYLHCA1w=";
"webYarnHash" = "13w3j5k48540sr7rgcj0b3kma4b4bybw56k58ral0d7izs7dgmgc";
};
}

View file

@ -261,5 +261,6 @@ in stdenv.mkDerivation (finalAttrs: {
license = licenses.gpl2Plus;
platforms = platforms.linux;
maintainers = teams.kodi.members;
mainProgram = "kodi";
};
})

View file

@ -7,14 +7,14 @@
}:
buildLua (finalAttrs: {
pname = "modernx-zydezu";
version = "0.3.5.5";
version = "0.3.6";
scriptPath = "modernx.lua";
src = fetchFromGitHub {
owner = "zydezu";
repo = "ModernX";
rev = finalAttrs.version;
hash = "sha256-sPpVwI8w5JsP/jML0viOSqhyYBVKfxWuKbxHkX3GVug=";
hash = "sha256-QGi7saDQzYZWf+pVlfwYhqC2CVMtQy/Elkjm+ToOm2o=";
};
postInstall = ''

View file

@ -28,6 +28,7 @@ buildDotnetModule (args // {
nugetDeps = { fetchNuGet }: [
(fetchNuGet { pname = nugetName; inherit version; sha256 = nugetSha256; hash = nugetHash; })
] ++ (nugetDeps fetchNuGet);
installable = true;
};
dotnetGlobalTool = true;

View file

@ -4,20 +4,17 @@
, callPackage
, substituteAll
, writeShellScript
, srcOnly
, linkFarmFromDrvs
, symlinkJoin
, makeWrapper
, dotnetCorePackages
, mkNugetSource
, mkNugetDeps
, nuget-to-nix
, cacert
, coreutils
, runtimeShellPackage
, unzip
, yq
, nix
}:
{ name ? "${args.pname}-${args.version}"
{ name ? "${_args.pname}-${_args.version}"
, pname ? name
, enableParallelBuilding ? true
, doCheck ? false
@ -80,16 +77,18 @@
# Whether to use an alternative wrapper, that executes the application DLL using the dotnet runtime from the user environment. `dotnet-runtime` is provided as a default in case no .NET is installed
# This is useful for .NET tools and applications that may need to run under different .NET runtimes
, useDotnetFromEnv ? false
# Whether to explicitly enable UseAppHost when building. This is redundant if useDotnetFromEnv is enabledz
# Whether to explicitly enable UseAppHost when building. This is redundant if useDotnetFromEnv is enabled
, useAppHost ? true
# The dotnet SDK to use.
, dotnet-sdk ? dotnetCorePackages.sdk_6_0
# The dotnet runtime to use.
, dotnet-runtime ? dotnetCorePackages.runtime_6_0
, ...
} @ args:
} @ _args:
let
args = removeAttrs _args [ "nugetDeps" ];
projectFiles =
lib.optionals (projectFile != null) (lib.toList projectFile);
testProjectFiles =
@ -104,11 +103,6 @@ let
inherit dotnet-sdk dotnet-runtime;
}) dotnetConfigureHook dotnetBuildHook dotnetCheckHook dotnetInstallHook dotnetFixupHook;
localDeps =
if (projectReferences != [ ])
then linkFarmFromDrvs "${name}-project-references" projectReferences
else null;
_nugetDeps =
if (nugetDeps != null) then
if lib.isDerivation nugetDeps
@ -119,41 +113,21 @@ let
}
else throw "Defining the `nugetDeps` attribute is required, as to lock the NuGet dependencies. This file can be generated by running the `passthru.fetch-deps` script.";
# contains the actual package dependencies
dependenciesSource = mkNugetSource {
name = "${name}-dependencies-source";
description = "Nuget source with the dependencies for ${name}";
deps = [ _nugetDeps ] ++ lib.optional (localDeps != null) localDeps;
};
# this contains all the nuget packages that are implicitly referenced by the dotnet
# build system. having them as separate deps allows us to avoid having to regenerate
# a packages dependencies when the dotnet-sdk version changes
sdkDeps = lib.lists.flatten [ dotnet-sdk.packages ];
sdkSource = let
version = dotnet-sdk.version or (lib.concatStringsSep "-" dotnet-sdk.versions);
in mkNugetSource {
name = "dotnet-sdk-${version}-source";
deps = sdkDeps;
};
nuget-source = symlinkJoin {
name = "${name}-nuget-source";
paths = [ dependenciesSource sdkSource ];
};
nugetDepsFile = _nugetDeps.sourceFile;
inherit (dotnetCorePackages) systemToDotnetRid;
in
stdenvNoCC.mkDerivation (args // {
stdenvNoCC.mkDerivation (finalAttrs: args // {
dotnetInstallPath = installPath;
dotnetExecutables = executables;
dotnetBuildType = buildType;
dotnetProjectFiles = projectFiles;
dotnetTestProjectFiles = testProjectFiles;
dotnetDisabledTests = disabledTests;
dotnetRuntimeId = runtimeId;
nugetSource = nuget-source;
dotnetRuntimeIds = lib.singleton (
if runtimeId != null
then runtimeId
else systemToDotnetRid stdenvNoCC.hostPlatform.system);
dotnetRuntimeDeps = map lib.getLib runtimeDeps;
dotnetSelfContainedBuild = selfContainedBuild;
dotnetUseAppHost = useAppHost;
@ -169,8 +143,15 @@ stdenvNoCC.mkDerivation (args // {
cacert
makeWrapper
dotnet-sdk
unzip
yq
];
buildInputs = args.buildInputs or [] ++ [
dotnet-sdk.packages
_nugetDeps
] ++ projectReferences;
# Parse the version attr into a format acceptable for the Version msbuild property
# The actual version attr is saved in InformationalVersion, which accepts an arbitrary string
versionForDotnet = if !(lib.hasAttr "version" args) || args.version == null
@ -202,50 +183,39 @@ stdenvNoCC.mkDerivation (args // {
propagatedSandboxProfile = toString dotnet-runtime.__propagatedSandboxProfile;
passthru = {
inherit nuget-source;
nugetDeps = _nugetDeps;
} // lib.optionalAttrs (!lib.isDerivation nugetDeps) {
fetch-deps = let
flagsList = dotnetFlags ++ dotnetRestoreFlags;
flags = lib.concatStringsSep " " (map lib.escapeShellArg flagsList);
disableParallel =
lib.optionalString (!enableParallelBuilding) "--disable-parallel";
runtimeIdsList = if runtimeId != null then
[ runtimeId ]
else
map (system: dotnetCorePackages.systemToDotnetRid system) platforms;
runtimeIds =
lib.concatStringsSep " " (map lib.escapeShellArg runtimeIdsList);
defaultDepsFile =
# Wire in the nugetDeps file such that running the script with no args
# runs it agains the correct deps file by default.
# Note that toString is necessary here as it results in the path at
# eval time (i.e. to the file in your local Nixpkgs checkout) rather
# than the Nix store path of the path after it's been imported.
if lib.isPath nugetDepsFile
&& !lib.hasPrefix "${builtins.storeDir}/" (toString nugetDepsFile) then
toString nugetDepsFile
else
''$(mktemp -t "${pname}-deps-XXXXXX.nix")'';
storeSrc = srcOnly args;
projectFileStr = lib.escapeShellArgs projectFiles;
testProjectFileStr = lib.escapeShellArgs testProjectFiles;
path = lib.makeBinPath [
coreutils
runtimeShellPackage
dotnet-sdk
(nuget-to-nix.override { inherit dotnet-sdk; })
];
dotnetSdkPath = toString dotnet-sdk;
excludedSources =
lib.concatStringsSep " " (map lib.escapeShellArg sdkDeps);
in substituteAll {
name = "fetch-deps";
src = ./fetch-deps.sh;
isExecutable = true;
inherit pname defaultDepsFile runtimeIds storeSrc flags disableParallel
projectFileStr testProjectFileStr path dotnetSdkPath excludedSources
runtimeShell;
};
pkg = finalAttrs.finalPackage.overrideAttrs (old: {
buildInputs = lib.remove _nugetDeps old.buildInputs;
keepNugetConfig = true;
} // lib.optionalAttrs (runtimeId == null) {
dotnetRuntimeIds = map (system: systemToDotnetRid system) platforms;
});
drv = builtins.unsafeDiscardOutputDependency pkg.drvPath;
innerScript = substituteAll {
src = ./fetch-deps.sh;
isExecutable = true;
defaultDepsFile =
# Wire in the nugetDeps file such that running the script with no args
# runs it agains the correct deps file by default.
# Note that toString is necessary here as it results in the path at
# eval time (i.e. to the file in your local Nixpkgs checkout) rather
# than the Nix store path of the path after it's been imported.
if lib.isPath nugetDepsFile
&& !lib.hasPrefix "${builtins.storeDir}/" (toString nugetDepsFile) then
toString nugetDepsFile
else
''$(mktemp -t "${pname}-deps-XXXXXX.nix")'';
nugetToNix = (nuget-to-nix.override { inherit dotnet-sdk; });
};
in writeShellScript "${name}-fetch-deps" ''
NIX_BUILD_SHELL="${runtimeShell}" exec ${nix}/bin/nix-shell \
--pure --run 'source "${innerScript}"' "${drv}"
'';
} // args.passthru or { };
meta = (args.meta or { }) // { inherit platforms; };

View file

@ -1,111 +1,22 @@
#! @runtimeShell@
# shellcheck shell=bash
set -euo pipefail
set -e
export PATH="@path@"
tmp=$(mktemp -d)
trap 'chmod -R +w "$tmp" && rm -fr "$tmp"' EXIT
for arg in "$@"; do
case "$arg" in
--keep-sources|-k)
keepSources=1
shift
;;
--help|-h)
echo "usage: $0 [--keep-sources] [--help] <output path>"
echo " <output path> The path to write the lockfile to. A temporary file is used if this is not set"
echo " --keep-sources Dont remove temporary directories upon exit, useful for debugging"
echo " --help Show this help message"
exit
;;
esac
done
HOME=$tmp/.home
cd "$tmp"
if [[ ${TMPDIR:-} == /run/user/* ]]; then
# /run/user is usually a tmpfs in RAM, which may be too small
# to store all downloaded dotnet packages
unset TMPDIR
fi
export tmp=$(mktemp -td "deps-@pname@-XXXXXX")
HOME=$tmp/home
exitTrap() {
test -n "${ranTrap-}" && return
ranTrap=1
if test -n "${keepSources-}"; then
echo -e "Path to the source: $tmp/src\nPath to the fake home: $tmp/home"
else
rm -rf "$tmp"
fi
# Since mktemp is used this will be empty if the script didnt succesfully complete
if ! test -s "$depsFile"; then
rm -rf "$depsFile"
fi
}
trap exitTrap EXIT INT TERM
dotnetRestore() {
local -r project="${1-}"
local -r rid="$2"
dotnet restore ${project-} \
-p:ContinuousIntegrationBuild=true \
-p:Deterministic=true \
--packages "$tmp/nuget_pkgs" \
--runtime "$rid" \
--no-cache \
--force \
@disableParallel@ \
@flags@
}
declare -a projectFiles=( @projectFileStr@ )
declare -a testProjectFiles=( @testProjectFileStr@ )
export DOTNET_NOLOGO=1
export DOTNET_CLI_TELEMETRY_OPTOUT=1
phases="
${prePhases[*]:-}
unpackPhase
patchPhase
${preConfigurePhases[*]:-}
configurePhase
" genericBuild
depsFile=$(realpath "${1:-@defaultDepsFile@}")
echo Will write lockfile to "$depsFile"
mkdir -p "$tmp/nuget_pkgs"
storeSrc="@storeSrc@"
src=$tmp/src
cp -rT "$storeSrc" "$src"
chmod -R +w "$src"
cd "$src"
echo "Restoring project..."
"@dotnetSdkPath@/bin/dotnet" tool restore
cp -r $HOME/.nuget/packages/* $tmp/nuget_pkgs || true
runtimeIds=(@runtimeIds@)
for rid in "${runtimeIds[@]}"; do
(( ${#projectFiles[@]} == 0 )) && dotnetRestore "" "$rid"
for project in ${projectFiles[@]-} ${testProjectFiles[@]-}; do
dotnetRestore "$project" "$rid"
done
done
# Second copy, makes sure packages restored by ie. paket are included
cp -r $HOME/.nuget/packages/* $tmp/nuget_pkgs || true
echo "Succesfully restored project"
echo "Writing lockfile..."
excluded_sources=( @excludedSources@ )
for excluded_source in ${excluded_sources[@]}; do
ls "$excluded_source" >> "$tmp/excluded_list"
done
tmpFile="$tmp"/deps.nix
echo -e "# This file was automatically generated by passthru.fetch-deps.\n# Please dont edit it manually, your changes might get overwritten!\n" > "$tmpFile"
nuget-to-nix "$tmp/nuget_pkgs" "$tmp/excluded_list" >> "$tmpFile"
@nugetToNix@/bin/nuget-to-nix "$NUGET_PACKAGES" >> "$tmpFile"
mv "$tmpFile" "$depsFile"
echo "Succesfully wrote lockfile to $depsFile"

View file

@ -5,20 +5,16 @@
, zlib
, openssl
, makeSetupHook
, dotnetCorePackages
, zip
# Passed from ../default.nix
, dotnet-sdk
, dotnet-runtime
}:
let
runtimeId = dotnetCorePackages.systemToDotnetRid stdenv.hostPlatform.system;
in
{
dotnetConfigureHook = makeSetupHook
{
name = "dotnet-configure-hook";
substitutions = {
runtimeId = lib.escapeShellArg runtimeId;
dynamicLinker = "${stdenv.cc}/nix-support/dynamic-linker";
libPath = lib.makeLibraryPath [
stdenv.cc.cc.lib
@ -34,18 +30,12 @@ in
dotnetBuildHook = makeSetupHook
{
name = "dotnet-build-hook";
substitutions = {
runtimeId = lib.escapeShellArg runtimeId;
};
}
./dotnet-build-hook.sh;
dotnetCheckHook = makeSetupHook
{
name = "dotnet-check-hook";
substitutions = {
runtimeId = lib.escapeShellArg runtimeId;
};
}
./dotnet-check-hook.sh;
@ -53,7 +43,7 @@ in
{
name = "dotnet-install-hook";
substitutions = {
runtimeId = lib.escapeShellArg runtimeId;
inherit zip;
};
}
./dotnet-install-hook.sh;

View file

@ -3,20 +3,20 @@ dotnetBuildHook() {
runHook preBuild
local -r hostRuntimeId=@runtimeId@
local -r dotnetBuildType="${dotnetBuildType-Release}"
local -r dotnetRuntimeId="${dotnetRuntimeId-$hostRuntimeId}"
if [[ -n $__structuredAttrs ]]; then
local dotnetProjectFilesArray=( "${dotnetProjectFiles[@]}" )
local dotnetTestProjectFilesArray=( "${dotnetTestProjectFiles[@]}" )
local dotnetFlagsArray=( "${dotnetFlags[@]}" )
local dotnetBuildFlagsArray=( "${dotnetBuildFlags[@]}" )
local dotnetRuntimeIdsArray=( "${dotnetRuntimeIds[@]}" )
else
local dotnetProjectFilesArray=($dotnetProjectFiles)
local dotnetTestProjectFilesArray=($dotnetTestProjectFiles)
local dotnetFlagsArray=($dotnetFlags)
local dotnetBuildFlagsArray=($dotnetBuildFlags)
local dotnetRuntimeIdsArray=($dotnetRuntimeIds)
fi
if [[ -n "${enableParallelBuilding-}" ]]; then
@ -49,22 +49,25 @@ dotnetBuildHook() {
dotnetBuild() {
local -r projectFile="${1-}"
local runtimeIdFlagsArray=()
if [[ $projectFile == *.csproj || -n ${dotnetSelfContainedBuild-} ]]; then
runtimeIdFlagsArray+=("--runtime" "$dotnetRuntimeId")
fi
for runtimeId in "${dotnetRuntimeIdsArray[@]}"; do
local runtimeIdFlagsArray=()
if [[ $projectFile == *.csproj || -n ${dotnetSelfContainedBuild-} ]]; then
runtimeIdFlagsArray+=("--runtime" "$runtimeId")
fi
dotnet build ${1+"$projectFile"} \
-maxcpucount:"$maxCpuFlag" \
-p:BuildInParallel="$parallelBuildFlag" \
-p:ContinuousIntegrationBuild=true \
-p:Deterministic=true \
--configuration "$dotnetBuildType" \
--no-restore \
"${versionFlagsArray[@]}" \
"${runtimeIdFlagsArray[@]}" \
"${dotnetBuildFlagsArray[@]}" \
"${dotnetFlagsArray[@]}"
dotnet build ${1+"$projectFile"} \
-maxcpucount:"$maxCpuFlag" \
-p:BuildInParallel="$parallelBuildFlag" \
-p:ContinuousIntegrationBuild=true \
-p:Deterministic=true \
-p:OverwriteReadOnlyFiles=true \
--configuration "$dotnetBuildType" \
--no-restore \
"${versionFlagsArray[@]}" \
"${runtimeIdFlagsArray[@]}" \
"${dotnetBuildFlagsArray[@]}" \
"${dotnetFlagsArray[@]}"
done
}
if (( ${#dotnetProjectFilesArray[@]} == 0 )); then

View file

@ -3,9 +3,7 @@ dotnetCheckHook() {
runHook preCheck
local -r hostRuntimeId=@runtimeId@
local -r dotnetBuildType="${dotnetBuildType-Release}"
local -r dotnetRuntimeId="${dotnetRuntimeId-$hostRuntimeId}"
if [[ -n $__structuredAttrs ]]; then
local dotnetProjectFilesArray=( "${dotnetProjectFiles[@]}" )
@ -13,12 +11,14 @@ dotnetCheckHook() {
local dotnetTestFlagsArray=( "${dotnetTestFlags[@]}" )
local dotnetDisabledTestsArray=( "${dotnetDisabledTests[@]}" )
local dotnetRuntimeDepsArray=( "${dotnetRuntimeDeps[@]}" )
local dotnetRuntimeIdsArray=( "${dotnetRuntimeIds[@]}" )
else
local dotnetProjectFilesArray=($dotnetProjectFiles)
local dotnetTestProjectFilesArray=($dotnetTestProjectFiles)
local dotnetTestFlagsArray=($dotnetTestFlags)
local dotnetDisabledTestsArray=($dotnetDisabledTests)
local dotnetRuntimeDepsArray=($dotnetRuntimeDeps)
local dotnetRuntimeIdsArray=($dotnetRuntimeIds)
fi
if (( ${#dotnetDisabledTestsArray[@]} > 0 )); then
@ -42,24 +42,26 @@ dotnetCheckHook() {
local -r maxCpuFlag="1"
fi
local projectFile
local projectFile runtimeId
for projectFile in "${dotnetTestProjectFilesArray[@]-${dotnetProjectFilesArray[@]}}"; do
local runtimeIdFlagsArray=()
if [[ $projectFile == *.csproj ]]; then
runtimeIdFlagsArray=("--runtime" "$dotnetRuntimeId")
fi
for runtimeId in "${dotnetRuntimeIdsArray[@]}"; do
local runtimeIdFlagsArray=()
if [[ $projectFile == *.csproj ]]; then
runtimeIdFlagsArray=("--runtime" "$runtimeId")
fi
LD_LIBRARY_PATH=$libraryPath \
dotnet test "$projectFile" \
-maxcpucount:"$maxCpuFlag" \
-p:ContinuousIntegrationBuild=true \
-p:Deterministic=true \
--configuration "$dotnetBuildType" \
--no-build \
--logger "console;verbosity=normal" \
"${runtimeIdFlagsArray[@]}" \
"${dotnetTestFlagsArray[@]}" \
"${dotnetFlagsArray[@]}"
LD_LIBRARY_PATH=$libraryPath \
dotnet test "$projectFile" \
-maxcpucount:"$maxCpuFlag" \
-p:ContinuousIntegrationBuild=true \
-p:Deterministic=true \
--configuration "$dotnetBuildType" \
--no-build \
--logger "console;verbosity=normal" \
"${runtimeIdFlagsArray[@]}" \
"${dotnetTestFlagsArray[@]}" \
"${dotnetFlagsArray[@]}"
done
done
runHook postCheck

View file

@ -3,35 +3,21 @@ dotnetConfigureHook() {
runHook preConfigure
if [[ -z ${nugetSource-} ]]; then
echo
echo "ERROR: no dependencies were specified"
echo 'Hint: set `nugetSource` if using these hooks individually. If this is happening with `buildDotnetModule`, please open an issue.'
echo
exit 1
fi
local nugetSourceSedQuoted="${nugetSource//[\/\\&$'\n']/\\&}"
local nugetSourceXMLQuoted="$nugetSource"
nugetSourceXMLQuoted="${nugetSource//&/\&amp;}"
nugetSourceXMLQuoted="${nugetSourceXMLQuoted//\"/\&quot;}"
local -r hostRuntimeId=@runtimeId@
local -r dynamicLinker=@dynamicLinker@
local -r libPath=@libPath@
local -r dotnetRuntimeId="${dotnetRuntimeId-$hostRuntimeId}"
if [[ -n $__structuredAttrs ]]; then
local dotnetProjectFilesArray=( "${dotnetProjectFiles[@]}" )
local dotnetTestProjectFilesArray=( "${dotnetTestProjectFiles[@]}" )
local dotnetFlagsArray=( "${dotnetFlags[@]}" )
local dotnetRestoreFlagsArray=( "${dotnetRestoreFlags[@]}" )
local dotnetRuntimeIdsArray=( "${dotnetRuntimeIds[@]}" )
else
local dotnetProjectFilesArray=($dotnetProjectFiles)
local dotnetTestProjectFilesArray=($dotnetTestProjectFiles)
local dotnetFlagsArray=($dotnetFlags)
local dotnetRestoreFlagsArray=($dotnetRestoreFlags)
local dotnetRuntimeIdsArray=($dotnetRuntimeIds)
fi
if [[ -z ${enableParallelBuilding-} ]]; then
@ -40,37 +26,33 @@ dotnetConfigureHook() {
dotnetRestore() {
local -r projectFile="${1-}"
dotnet restore ${1+"$projectFile"} \
-p:ContinuousIntegrationBuild=true \
-p:Deterministic=true \
--runtime "$dotnetRuntimeId" \
--source "$nugetSource/lib" \
${parallelFlag-} \
"${dotnetRestoreFlagsArray[@]}" \
"${dotnetFlagsArray[@]}"
for runtimeId in "${dotnetRuntimeIdsArray[@]}"; do
dotnet restore ${1+"$projectFile"} \
-p:ContinuousIntegrationBuild=true \
-p:Deterministic=true \
-p:NuGetAudit=false \
--runtime "$runtimeId" \
${parallelFlag-} \
"${dotnetRestoreFlagsArray[@]}" \
"${dotnetFlagsArray[@]}"
done
}
# Generate a NuGet.config file to make sure everything,
# including things like <Sdk /> dependencies, is restored from the proper source
cat >NuGet.config <<EOF
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<packageSources>
<clear />
<add key="nugetSource" value="$nugetSourceXMLQuoted/lib" />
</packageSources>
</configuration>
EOF
find -iname nuget.config -print0 | while IFS= read -rd "" config; do
if [[ -n "${keepNugetConfig-}" ]]; then
# If we're keeping the existing configs, we'll add _nix everywhere,
# in case sources are cleared.
dotnet nuget add source "$nugetSource" -n _nix --configfile "$config"
else
# This will allow everything to fall through to our config in the
# build root. Deleting them causes some build failures.
xq -xi '.configuration={}' "$config"
fi
done
# Patch paket.dependencies and paket.lock (if found) to use the proper
# source. This ensures paket restore works correctly. Note that the
# nugetSourceSedQuoted abomination below safely escapes nugetSource string
# for use as a sed replacement string to avoid issues with slashes and other
# special characters ('&', '\\' and '\n').
find -name paket.dependencies -exec sed -i "s/source .*/source $nugetSourceSedQuoted\/lib/g" {} \;
find -name paket.lock -exec sed -i "s/remote:.*/remote: $nugetSourceSedQuoted\/lib/g" {} \;
dotnet tool restore --add-source "$nugetSource/lib"
if [[ -f .config/dotnet-tools.json || -f .dotnet-tools.json ]]; then
dotnet tool restore
fi
# dotnetGlobalTool is set in buildDotnetGlobalTool to patch dependencies but
# avoid other project-specific logic. This is a hack, but the old behavior
@ -90,28 +72,6 @@ EOF
done
fi
echo "Fixing up native binaries..."
# Find all native binaries and nuget libraries, and fix them up,
# by setting the proper interpreter and rpath to some commonly used libraries
local binary
for binary in $(find "$HOME/.nuget/packages/" -type f -executable); do
if patchelf --print-interpreter "$binary" >/dev/null 2>/dev/null; then
echo "Found binary: $binary, fixing it up..."
patchelf --set-interpreter "$(cat "$dynamicLinker")" "$binary"
# This makes sure that if the binary requires some specific runtime dependencies, it can find it.
# This fixes dotnet-built binaries like crossgen2
patchelf \
--add-needed libicui18n.so \
--add-needed libicuuc.so \
--add-needed libz.so \
--add-needed libssl.so \
"$binary"
patchelf --set-rpath "$libPath" "$binary"
fi
done
runHook postConfigure
echo "Finished dotnetConfigureHook"

View file

@ -3,21 +3,21 @@ dotnetInstallHook() {
runHook preInstall
local -r hostRuntimeId=@runtimeId@
local -r dotnetInstallPath="${dotnetInstallPath-$out/lib/$pname}"
local -r dotnetBuildType="${dotnetBuildType-Release}"
local -r dotnetRuntimeId="${dotnetRuntimeId-$hostRuntimeId}"
if [[ -n $__structuredAttrs ]]; then
local dotnetProjectFilesArray=( "${dotnetProjectFiles[@]}" )
local dotnetFlagsArray=( "${dotnetFlags[@]}" )
local dotnetInstallFlagsArray=( "${dotnetInstallFlags[@]}" )
local dotnetPackFlagsArray=( "${dotnetPackFlags[@]}" )
local dotnetRuntimeIdsArray=( "${dotnetRuntimeIds[@]}" )
else
local dotnetProjectFilesArray=($dotnetProjectFiles)
local dotnetFlagsArray=($dotnetFlags)
local dotnetInstallFlagsArray=($dotnetInstallFlags)
local dotnetPackFlagsArray=($dotnetPackFlags)
local dotnetRuntimeIdsArray=($dotnetRuntimeIds)
fi
if [[ -n ${dotnetSelfContainedBuild-} ]]; then
@ -33,36 +33,53 @@ dotnetInstallHook() {
dotnetInstallFlagsArray+=("-p:UseAppHost=true")
fi
if [[ -n ${enableParallelBuilding-} ]]; then
local -r maxCpuFlag="$NIX_BUILD_CORES"
else
local -r maxCpuFlag="1"
fi
dotnetPublish() {
local -r projectFile="${1-}"
runtimeIdFlagsArray=()
if [[ $projectFile == *.csproj || -n ${dotnetSelfContainedBuild-} ]]; then
runtimeIdFlagsArray+=("--runtime" "$dotnetRuntimeId")
fi
for runtimeId in "${dotnetRuntimeIdsArray[@]}"; do
runtimeIdFlagsArray=()
if [[ $projectFile == *.csproj || -n ${dotnetSelfContainedBuild-} ]]; then
runtimeIdFlagsArray+=("--runtime" "$runtimeId")
fi
dotnet publish ${1+"$projectFile"} \
-p:ContinuousIntegrationBuild=true \
-p:Deterministic=true \
--output "$dotnetInstallPath" \
--configuration "$dotnetBuildType" \
--no-build \
"${runtimeIdFlagsArray[@]}" \
"${dotnetInstallFlagsArray[@]}" \
"${dotnetFlagsArray[@]}"
dotnet publish ${1+"$projectFile"} \
-maxcpucount:"$maxCpuFlag" \
-p:ContinuousIntegrationBuild=true \
-p:Deterministic=true \
-p:OverwriteReadOnlyFiles=true \
--output "$dotnetInstallPath" \
--configuration "$dotnetBuildType" \
--no-build \
"${runtimeIdFlagsArray[@]}" \
"${dotnetInstallFlagsArray[@]}" \
"${dotnetFlagsArray[@]}"
done
}
local -r pkgs=$PWD/.nuget-pack
dotnetPack() {
local -r projectFile="${1-}"
dotnet pack ${1+"$projectFile"} \
-p:ContinuousIntegrationBuild=true \
-p:Deterministic=true \
--output "$out/share" \
--configuration "$dotnetBuildType" \
--no-build \
--runtime "$dotnetRuntimeId" \
"${dotnetPackFlagsArray[@]}" \
"${dotnetFlagsArray[@]}"
for runtimeId in "${dotnetRuntimeIdsArray[@]}"; do
dotnet pack ${1+"$projectFile"} \
-maxcpucount:"$maxCpuFlag" \
-p:ContinuousIntegrationBuild=true \
-p:Deterministic=true \
-p:OverwriteReadOnlyFiles=true \
--output "$pkgs" \
--configuration "$dotnetBuildType" \
--no-build \
--runtime "$runtimeId" \
"${dotnetPackFlagsArray[@]}" \
"${dotnetFlagsArray[@]}"
done
}
if (( ${#dotnetProjectFilesArray[@]} == 0 )); then
@ -85,6 +102,20 @@ dotnetInstallHook() {
fi
fi
local -r unpacked="$pkgs/.unpacked"
for nupkg in "$pkgs"/*.nupkg; do
rm -rf "$unpacked"
unzip -qd "$unpacked" "$nupkg"
chmod -R +rw "$unpacked"
echo {} > "$unpacked"/.nupkg.metadata
local id version
id=$(xq -r '.package.metadata.id|ascii_downcase' "$unpacked"/*.nuspec)
version=$(xq -r '.package.metadata.version|ascii_downcase' "$unpacked"/*.nuspec)
mkdir -p "$out/share/nuget/packages/$id"
mv "$unpacked" "$out/share/nuget/packages/$id/$version"
# TODO: should we fix executable flags here?
done
runHook postInstall
echo "Finished dotnetInstallHook"

View file

@ -1,35 +1,71 @@
{ linkFarmFromDrvs, fetchurl, runCommand, zip }:
{ name, nugetDeps ? import sourceFile, sourceFile ? null }:
linkFarmFromDrvs "${name}-nuget-deps" (nugetDeps {
fetchNuGet = { pname, version, sha256 ? "", hash ? ""
, url ? "https://www.nuget.org/api/v2/package/${pname}/${version}" }:
let
src = fetchurl {
name = "${pname}.${version}.nupkg";
# There is no need to verify whether both sha256 and hash are
# valid here, because nuget-to-nix does not generate a deps.nix
# containing both.
inherit url sha256 hash;
};
in
# NuGet.org edits packages by signing them during upload, which makes
# those packages nondeterministic depending on which source you
# get them from. We fix this by stripping out the signature file.
# Signing logic is https://github.com/NuGet/NuGet.Client/blob/128a5066b1438627ac69a2ffe9de564b2c09ee4d/src/NuGet.Core/NuGet.Packaging/Signing/Archive/SignedPackageArchiveIOUtility.cs#L518
# Non-NuGet.org sources might not have a signature file; in that case, zip
# exits with code 12 ("zip has nothing to do", per `man zip`).
runCommand src.name
{
inherit src;
nativeBuildInputs = [ zip ];
}
''
zip "$src" --temp-path "$TMPDIR" --output-file "$out" --delete .signature.p7s || {
(( $? == 12 ))
install -Dm644 "$src" "$out"
}
'';
})
// {
inherit sourceFile;
}
{ symlinkJoin
, fetchurl
, stdenvNoCC
, lib
, unzip
, patchNupkgs
, nugetPackageHook
}:
lib.makeOverridable(
{ name
, nugetDeps ? import sourceFile
, sourceFile ? null
, installable ? false
}:
(symlinkJoin {
name = "${name}-nuget-deps";
paths = nugetDeps {
fetchNuGet =
{ pname
, version
, sha256 ? ""
, hash ? ""
, url ? "https://www.nuget.org/api/v2/package/${pname}/${version}" }:
stdenvNoCC.mkDerivation rec {
inherit pname version;
src = fetchurl {
name = "${pname}.${version}.nupkg";
# There is no need to verify whether both sha256 and hash are
# valid here, because nuget-to-nix does not generate a deps.nix
# containing both.
inherit url sha256 hash version;
};
nativeBuildInputs = [
unzip
patchNupkgs
nugetPackageHook
];
unpackPhase = ''
unzip -nq $src
chmod -R +rw .
'';
prePatch = ''
shopt -s nullglob
local dir
for dir in tools runtimes/*/native; do
[[ ! -d "$dir" ]] || chmod -R +x "$dir"
done
rm -rf .signature.p7s
'';
installPhase = ''
dir=$out/share/nuget/packages/${lib.toLower pname}/${lib.toLower version}
mkdir -p $dir
cp -r . $dir
echo {} > "$dir"/.nupkg.metadata
'';
preFixup = ''
patch-nupkgs $out/share/nuget/packages
'';
createInstallableNugetSource = installable;
};
};
}) // {
inherit sourceFile;
})

View file

@ -22,6 +22,7 @@ export DOTNET_NOLOGO=1
export DOTNET_CLI_TELEMETRY_OPTOUT=1
mapfile -t sources < <(dotnet nuget list source --format short | awk '/^E / { print $2 }')
wait "$!"
declare -a remote_sources
declare -A base_addresses
@ -55,11 +56,12 @@ for package in *; do
continue
fi
used_source="$(jq -r '.source' "$version"/.nupkg.metadata)"
# packages in the nix store should have an empty metadata file
used_source="$(jq -r 'if has("source") then .source else "" end' "$version"/.nupkg.metadata)"
found=false
if [[ -d "$used_source" ]]; then
continue
if [[ -z "$used_source" || -d "$used_source" ]]; then
continue
fi
for source in "${remote_sources[@]}"; do

View file

@ -5,16 +5,16 @@
buildGoModule rec {
pname = "api-linter";
version = "1.66.2";
version = "1.67.0";
src = fetchFromGitHub {
owner = "googleapis";
repo = "api-linter";
rev = "v${version}";
hash = "sha256-W4v+/XTtKE5MLRK8eaI1oz4ZB5K+QlY467WSz+RSaH0=";
hash = "sha256-B98YFQYjBzHmKTc3yowT9JfWe8fiOVu0pFyyrwKk3Ws=";
};
vendorHash = "sha256-czLcy/9QbBuKu3lPISx3Pzf2ccvdp7gF0SWVbSZ6Nn8=";
vendorHash = "sha256-+dyoWK5iXH480c+akg26BCF/J8lKQoATVqZUfqMa080=";
subPackages = [ "cmd/api-linter" ];

View file

@ -22,13 +22,13 @@
}:
stdenv.mkDerivation (finalAttrs: {
pname = "aquamarine";
version = "0.1.1";
version = "0.2.0";
src = fetchFromGitHub {
owner = "hyprwm";
repo = "aquamarine";
rev = "v${finalAttrs.version}";
hash = "sha256-rux5XA+ixI0fuiQGSOerLKxsW2D8cfjmP1B7FY24xF8=";
hash = "sha256-UKdFUKA/h6SeiXpQ06BSZkBJKDwFOFaGI3NtiuaDOhg=";
};
nativeBuildInputs = [
@ -38,6 +38,7 @@ stdenv.mkDerivation (finalAttrs: {
];
buildInputs = [
hwdata
hyprutils
libdisplay-info
libdrm
@ -52,7 +53,7 @@ stdenv.mkDerivation (finalAttrs: {
wayland-protocols
];
depsBuildBuild = [ hwdata ];
strictDeps = true;
outputs = [
"out"

View file

@ -0,0 +1,38 @@
{
lib,
buildNpmPackage,
fetchFromGitHub,
nix-update-script,
}:
buildNpmPackage rec {
pname = "ares-cli";
version = "3.1.1";
src = fetchFromGitHub {
owner = "webos-tools";
repo = "cli";
rev = "v${version}";
hash = "sha256-gMAGMg/hobV8WhqutDmYBjqjZqfAdw+EoJX7j8pux18=";
};
postPatch = ''
ln -s npm-shrinkwrap.json package-lock.json
'';
dontNpmBuild = true;
npmDepsHash = "sha256-3ZUlGJY0aEf7wBig75txlkA6a6JcdkphJILFfIGIN04=";
passthru.updateScript = nix-update-script { };
meta = {
homepage = "https://webostv.developer.lge.com/develop/tools/cli-introduction";
description = "A collection of commands used for creating, packaging, installing, and launching web apps for LG webOS TV.";
longDescription = ''
webOS CLI (Command Line Interface) provides a collection of commands used for creating, packaging, installing,
and launching web apps in the command line environment. The CLI allows you to develop and test your app without using
a specific IDE.
'';
mainProgram = "ares";
license = lib.licenses.asl20;
maintainers = with lib.maintainers; [ rucadi ];
};
}

2063
pkgs/by-name/av/avbroot/Cargo.lock generated Normal file

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,46 @@
{
lib,
rustPlatform,
fetchFromGitHub,
pkg-config,
protobuf,
bzip2,
stdenv,
darwin,
}:
rustPlatform.buildRustPackage rec {
pname = "avbroot";
version = "3.4.1";
src = fetchFromGitHub {
owner = "chenxiaolong";
repo = "avbroot";
rev = "refs/tags/v${version}";
hash = "sha256-gG8pR/D5oaPPqq0e815J6z+dDVxh4VSoHIm1Yl3x2p4=";
};
cargoLock = {
lockFile = ./Cargo.lock;
outputHashes = {
"bzip2-0.4.4" = "sha256-9YKPFvaGNdGPn2mLsfX8Dh90vR+X4l3YSrsz0u4d+uQ=";
"zip-0.6.6" = "sha256-oZQOW7xlSsb7Tw8lby4LjmySpWty9glcZfzpPuQSSz0=";
};
};
nativeBuildInputs = [
pkg-config
protobuf
];
buildInputs = [ bzip2 ] ++ lib.optionals stdenv.isDarwin [ darwin.apple_sdk.frameworks.Security ];
meta = {
description = "Sign (and root) Android A/B OTAs with custom keys while preserving Android Verified Boot";
homepage = "https://github.com/chenxiaolong/avbroot";
changelog = "https://github.com/chenxiaolong/avbroot/blob/${src.rev}/CHANGELOG.md";
license = lib.licenses.gpl3Only;
maintainers = with lib.maintainers; [ oluceps ];
mainProgram = "avbroot";
};
}

View file

@ -11,13 +11,13 @@
}:
let
version = "1.15.0";
version = "1.15.1";
src = fetchFromGitHub {
owner = "detachhead";
repo = "basedpyright";
rev = "refs/tags/v${version}";
hash = "sha256-SMF7BXPhoMyUqGY8WK5pIVAy+p/mS+Li+Lz0uLyhFjY=";
hash = "sha256-x4hSzkVDTbF6CyJttTLbZmnA3Ccs3k9mW90lp2Krk6E=";
};
patchedPackageJSON = runCommand "package.json" { } ''
@ -47,7 +47,7 @@ let
pname = "pyright-internal";
inherit version src;
sourceRoot = "${src.name}/packages/pyright-internal";
npmDepsHash = "sha256-GO6ozBtf9P6tKhqtgNJjNdziJ9rYImH0fdYi7KZ1NgI=";
npmDepsHash = "sha256-Kg2y+z1izv3KV83UdUqEdyd8m0geMseb8uSb6tv4c5o=";
dontNpmBuild = true;
# FIXME: Remove this flag when TypeScript 5.5 is released
npmFlags = [ "--legacy-peer-deps" ];
@ -94,7 +94,7 @@ buildNpmPackage rec {
inherit version src;
sourceRoot = "${src.name}/packages/pyright";
npmDepsHash = "sha256-areRNvJXmnK/yNCwQ//SNVI6eDOqweYxTULvrANLwPo=";
npmDepsHash = "sha256-0zLSTePWvf3ZB6OE3cmjimYuAkoCmQ0besM2PiEEWao=";
postPatch = ''
chmod +w ../../

View file

@ -9,16 +9,16 @@
rustPlatform.buildRustPackage rec {
pname = "boxbuddy";
version = "2.2.8";
version = "2.2.9";
src = fetchFromGitHub {
owner = "Dvlv";
repo = "BoxBuddyRS";
rev = version;
hash = "sha256-AW2RKtxvF4WxCyb6QEDuTEAOy/DqBxoZrtc2JGeKFtk=";
hash = "sha256-u5roZFpeVsqO/4kNdwnD2BCMSM8C0jVG98p/IdlHA8o=";
};
cargoHash = "sha256-J7VJSOY7Cj9Dsq0jj9uVTGJOessyx3WOlDbg7dS+1dg=";
cargoHash = "sha256-LjHPIQoC/Nldfgl5sjbd+sxjtjY2ZeUd5rVaEEELQq4=";
# The software assumes it is installed either in flatpak or in the home directory
# so the xdg data path needs to be patched here

View file

@ -1,4 +1,7 @@
{ lib, stdenv, fetchFromGitHub
{ lib
, stdenv
, fetchFromGitHub
, fetchpatch
, python3
, installShellFiles
}:
@ -39,6 +42,19 @@ python3.pkgs.buildPythonApplication rec {
doCheck = false;
patches = [
# Adjust sshd filter for OpenSSH 9.8 new daemon name - remove next release
(fetchpatch {
url = "https://github.com/fail2ban/fail2ban/commit/2fed408c05ac5206b490368d94599869bd6a056d.patch";
hash = "sha256-uyrCdcBm0QyA97IpHzuGfiQbSSvhGH6YaQluG5jVIiI=";
})
# filter.d/sshd.conf: ungroup (unneeded for _daemon) - remove next release
(fetchpatch {
url = "https://github.com/fail2ban/fail2ban/commit/50ff131a0fd8f54fdeb14b48353f842ee8ae8c1a.patch";
hash = "sha256-YGsUPfQRRDVqhBl7LogEfY0JqpLNkwPjihWIjfGdtnQ=";
})
];
preInstall = ''
substituteInPlace setup.py --replace /usr/share/doc/ share/doc/

View file

@ -1,16 +1,9 @@
{ lib
, python3
, python311
, fetchFromGitHub
}:
let
python = if (builtins.tryEval python3.pkgs.nose.outPath).success
then python3
else python311;
in
python.pkgs.buildPythonApplication rec {
python3.pkgs.buildPythonApplication rec {
pname = "flexget";
version = "3.11.41";
pyproject = true;
@ -28,12 +21,12 @@ python.pkgs.buildPythonApplication rec {
sed 's/[~<>=][^;]*//' -i requirements.txt
'';
build-system = with python.pkgs; [
build-system = with python3.pkgs; [
setuptools
wheel
];
dependencies = with python.pkgs; [
dependencies = with python3.pkgs; [
# See https://github.com/Flexget/Flexget/blob/master/pyproject.toml
apscheduler
beautifulsoup4

View file

@ -13,13 +13,13 @@
stdenv.mkDerivation (finalAttrs: {
pname = "fooyin";
version = "0.5.1";
version = "0.5.3";
src = fetchFromGitHub {
owner = "ludouzi";
repo = "fooyin";
rev = "v" + finalAttrs.version;
hash = "sha256-X546vdHSfED2LBztPj+3eK86pjD97I8H+PfhzXV2R3E=";
hash = "sha256-h8unOzDSQ9ME6nbfLxau1EctJeNH8P2VG0IBQoqhwGs=";
};
buildInputs = [

View file

@ -11,13 +11,13 @@
buildGoModule rec {
pname = "fzf";
version = "0.54.2";
version = "0.54.3";
src = fetchFromGitHub {
owner = "junegunn";
repo = "fzf";
rev = "v${version}";
hash = "sha256-9vuz18rosYpkBmJc37CNXEry4OWMSQ03atdCiwY+KYY=";
hash = "sha256-kVWG2lfV+FhKbVC7mAqp3VCRWU6TgJGR3/NFwc8fslU=";
};
vendorHash = "sha256-uhjJPB/jfRPAu9g41vWFnSBIN9TIZW3s6BGz0fA2ygE=";

View file

@ -10,16 +10,16 @@
buildGoModule rec {
pname = "hugo";
version = "0.129.0";
version = "0.130.0";
src = fetchFromGitHub {
owner = "gohugoio";
repo = "hugo";
rev = "refs/tags/v${version}";
hash = "sha256-F76iT6rBloVNCc16VjQa7aoZP5hvcfGzqoVhXG43TGo=";
hash = "sha256-ZZYItkQI9qxQ/STmvZQoL9kbQGIa+t7zeINeEvGHiG8=";
};
vendorHash = "sha256-3ILFdQ3B/q5SX0JBlatN41swl0ijMne0AWnGbmcXMDc=";
vendorHash = "sha256-k4huXZR2BJLMEsaGpfgEM11ZTbU1Tyfan9fOraCNXFY=";
doCheck = false;

View file

@ -10,13 +10,13 @@
stdenv.mkDerivation (finalAttrs: {
pname = "hyprutils";
version = "0.2.0";
version = "0.2.1";
src = fetchFromGitHub {
owner = "hyprwm";
repo = "hyprutils";
rev = "refs/tags/v${finalAttrs.version}";
hash = "sha256-qmC9jGfbE4+EIBbbSAkrfR/p49wShjpv4/KztgE/P54=";
hash = "sha256-D3wIZlBNh7LuZ0NaoCpY/Pvu+xHxIVtSN+KkWZYvvVs=";
};
nativeBuildInputs = [

View file

@ -8,6 +8,8 @@
dpkg,
nss,
alsa-lib,
lz4,
libgcrypt,
xkeyboard_config,
libthai,
libsForQt5,
@ -16,7 +18,7 @@
let
pname = "insync";
# Find a binary from https://www.insynchq.com/downloads/linux
version = "3.9.1.60010";
version = "3.9.3.60019";
ubuntu-dist = "trixie_amd64";
insync-pkg = stdenvNoCC.mkDerivation {
pname = "${pname}-pkg";
@ -25,9 +27,9 @@ let
src = fetchurl rec {
urls = [
"https://cdn.insynchq.com/builds/linux/${version}/insync_${version}-${ubuntu-dist}.deb"
"https://web.archive.org/web/20240622110117/${builtins.elemAt urls 0}"
"https://web.archive.org/web/20240731170718/${builtins.elemAt urls 0}"
];
hash = "sha256-8gT2xLZa/zrM3X3AXTOvHelO0tF2w/3/qOyw2wB98uY=";
hash = "sha256-jexbcKU2N4esl6UHxre6C+0o8GD3DcdRJW2YYT5fUZs=";
};
nativeBuildInputs = [
@ -39,6 +41,8 @@ let
buildInputs = [
alsa-lib
nss
lz4
libgcrypt
libthai
] ++ (with libsForQt5; [ qt5.qtvirtualkeyboard ]);

View file

@ -69,13 +69,13 @@ let
in
effectiveStdenv.mkDerivation (finalAttrs: {
pname = "llama-cpp";
version = "3403";
version = "3423";
src = fetchFromGitHub {
owner = "ggerganov";
repo = "llama.cpp";
rev = "refs/tags/b${finalAttrs.version}";
hash = "sha256-+WWJyEt04ZUC/vh9ZReLek851iOZJYoGc49XJyRPkVE=";
hash = "sha256-ztc5BGuqGKor9ag5XPEVPLhOryQg8GGlFX6Ye8v1nok=";
leaveDotGit = true;
postFetch = ''
git -C "$out" rev-parse --short HEAD > $out/COMMIT

View file

@ -7,13 +7,13 @@
}:
let
pname = "matrix-media-repo";
version = "1.3.6";
version = "1.3.7";
src = fetchFromGitHub {
owner = "t2bot";
repo = "matrix-media-repo";
rev = "v${version}";
hash = "sha256-Yrw+6WKHm9Y31YvW5iXnUDhIg0TcSctaouIGhAN4iBo=";
hash = "sha256-trVn+Mn98aJLQCpQX1+qps/uuA5+8zeDoM94eauxHO8=";
};
vendorHash = "sha256-fKDdL7C3L33caoXxlutzoND2izB5GH+5qTeojTskIUg=";

View file

@ -0,0 +1,113 @@
{
lib,
stdenv,
buildGoModule,
fetchFromGitHub,
installShellFiles,
callPackage,
wl-clipboard,
xclip,
makeWrapper,
# Boolean flags
withXclip ? stdenv.isLinux,
withWlClipboard ?
if withWlclip != null then
lib.warn ''
withWlclip is deprecated and will be removed;
use withWlClipboard instead.
'' withWlclip
else
stdenv.isLinux,
# Deprecated options
# Remove them before or right after next version update from Nixpkgs or this
# package itself
withWlclip ? null,
}:
let
self = buildGoModule {
pname = "micro";
version = "2.0.13";
src = fetchFromGitHub {
owner = "zyedidia";
repo = "micro";
rev = "v${self.version}";
hash = "sha256-fe+7RkUwCveBk14bYzg5uLGOqTVVJsrqixBQhCS79hY=";
};
vendorHash = "sha256-ePhObvm3m/nT+7IyT0W6K+y+9UNkfd2kYjle2ffAd9Y=";
nativeBuildInputs = [
installShellFiles
makeWrapper
];
outputs = [
"out"
"man"
];
subPackages = [ "cmd/micro" ];
ldflags =
let
t = "github.com/zyedidia/micro/v2/internal";
in
[
"-s"
"-w"
"-X ${t}/util.Version=${self.version}"
"-X ${t}/util.CommitHash=${self.src.rev}"
];
strictDeps = true;
preBuild = ''
GOOS= GOARCH= go generate ./runtime
'';
postInstall = ''
installManPage assets/packaging/micro.1
install -Dm444 assets/packaging/micro.desktop $out/share/applications/micro.desktop
install -Dm644 assets/micro-logo-mark.svg $out/share/icons/hicolor/scalable/apps/micro.svg
'';
postFixup =
let
clipboardPackages =
lib.optionals withXclip [ xclip ]
++ lib.optionals withWlClipboard [ wl-clipboard ];
in
lib.optionalString (withXclip || withWlClipboard) ''
wrapProgram "$out/bin/micro" \
--prefix PATH : "${lib.makeBinPath clipboardPackages}"
'';
passthru = {
tests = lib.packagesFromDirectoryRecursive {
inherit callPackage;
directory = ./tests;
};
};
meta = {
homepage = "https://micro-editor.github.io";
description = "Modern and intuitive terminal-based text editor";
longDescription = ''
micro is a terminal-based text editor that aims to be easy to use and
intuitive, while also taking advantage of the capabilities of modern
terminals.
As its name indicates, micro aims to be somewhat of a successor to the
nano editor by being easy to install and use. It strives to be enjoyable
as a full-time editor for people who prefer to work in a terminal, or
those who regularly edit files over SSH.
'';
license = lib.licenses.mit;
mainProgram = "micro";
maintainers = with lib.maintainers; [ AndersonTorres ];
};
};
in
self

View file

@ -0,0 +1,13 @@
spawn micro file.txt
expect "file.txt"
send "Hello world!"
expect "Hello world!"
# ctrl-q (exit)
send "\021"
expect "Save changes to file.txt before closing?"
send "y"
expect eof

View file

@ -0,0 +1,26 @@
{
expect,
micro,
runCommand,
}:
let
expect-script = builtins.path {
name = "hello.tcl";
path = ./hello.tcl;
};
in
runCommand "micro-expect-hello-world"
{
nativeBuildInputs = [
expect
micro
];
}
# Micro needs a writable $HOME for throwing its configuration
''
export HOME=$(pwd)
expect -f ${expect-script}
grep "Hello world!" file.txt
cat file.txt > $out
''

View file

@ -0,0 +1,6 @@
{ micro, testers }:
testers.testVersion {
package = micro;
command = "micro -version";
}

View file

@ -1,2 +0,0 @@
source 'https://rubygems.org'
gem 'neocities'

View file

@ -1,48 +0,0 @@
GEM
remote: https://rubygems.org/
specs:
equatable (0.5.0)
httpclient-fixcerts (2.8.5)
necromancer (0.4.0)
neocities (0.0.18)
httpclient-fixcerts (~> 2.8, >= 2.8.5)
pastel (~> 0.7, = 0.7.2)
rake (~> 12.3, >= 12.3.1)
tty-prompt (~> 0.12, = 0.12.0)
tty-table (~> 0.10, = 0.10.0)
pastel (0.7.2)
equatable (~> 0.5.0)
tty-color (~> 0.4.0)
rake (12.3.3)
strings (0.1.8)
strings-ansi (~> 0.1)
unicode-display_width (~> 1.5)
unicode_utils (~> 1.4)
strings-ansi (0.2.0)
tty-color (0.4.3)
tty-cursor (0.4.0)
tty-prompt (0.12.0)
necromancer (~> 0.4.0)
pastel (~> 0.7.0)
tty-cursor (~> 0.4.0)
wisper (~> 1.6.1)
tty-screen (0.6.5)
tty-table (0.10.0)
equatable (~> 0.5.0)
necromancer (~> 0.4.0)
pastel (~> 0.7.2)
strings (~> 0.1.0)
tty-screen (~> 0.6.4)
unicode-display_width (1.8.0)
unicode_utils (1.4.0)
wisper (1.6.1)
PLATFORMS
ruby
x86_64-linux
DEPENDENCIES
neocities
BUNDLED WITH
2.5.5

View file

@ -1,169 +0,0 @@
{
equatable = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1sjm9zjakyixyvsqziikdrsqfzis6j3fq23crgjkp6fwkfgndj7x";
type = "gem";
};
version = "0.5.0";
};
httpclient-fixcerts = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1zfszylh51y8ic8sbff3mwf30jb0gj270r5nxkcm1ydxad19w6sl";
type = "gem";
};
version = "2.8.5";
};
necromancer = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0v9nhdkv6zrp7cn48xv7n2vjhsbslpvs0ha36mfkcd56cp27pavz";
type = "gem";
};
version = "0.4.0";
};
neocities = {
dependencies =
[ "httpclient-fixcerts" "pastel" "rake" "tty-prompt" "tty-table" ];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1hfvy4gc7rzxkgl2dbrjs2fqzi5mphmr22rjfhk6n0i3bd0wazbw";
type = "gem";
};
version = "0.0.18";
};
pastel = {
dependencies = [ "equatable" "tty-color" ];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1yf30d9kzpm96gw9kwbv31p0qigwfykn8qdis5950plnzgc1vlp1";
type = "gem";
};
version = "0.7.2";
};
rake = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1cvaqarr1m84mhc006g3l1vw7sa5qpkcw0138lsxlf769zdllsgp";
type = "gem";
};
version = "12.3.3";
};
strings = {
dependencies = [ "strings-ansi" "unicode-display_width" "unicode_utils" ];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "111876lcqrykh30w7zzkrl06d6rj9lq24y625m28674vgfxkkcz0";
type = "gem";
};
version = "0.1.8";
};
strings-ansi = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "120wa6yjc63b84lprglc52f40hx3fx920n4dmv14rad41rv2s9lh";
type = "gem";
};
version = "0.2.0";
};
tty-color = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0zz5xa6xbrj69h334d8nx7z732fz80s1a0b02b53mim95p80s7bk";
type = "gem";
};
version = "0.4.3";
};
tty-cursor = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "07whfm8mnp7l49s2cm2qy1snhsqq3a90sqwb71gvym4hm2kx822a";
type = "gem";
};
version = "0.4.0";
};
tty-prompt = {
dependencies = [ "necromancer" "pastel" "tty-cursor" "wisper" ];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1026nyqhgmgxi2nmk8xk3hca07gy5rpisjs8y6w00wnw4f01kpv0";
type = "gem";
};
version = "0.12.0";
};
tty-screen = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0azpjgyhdm8ycblnx9crq3dgb2x8yg454a13n60zfpsc0n138sw1";
type = "gem";
};
version = "0.6.5";
};
tty-table = {
dependencies =
[ "equatable" "necromancer" "pastel" "strings" "tty-screen" ];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "05krrj1x5pmfbz74paszrsr1316w9b9jlc4wpd9s9gpzqfzwjzcg";
type = "gem";
};
version = "0.10.0";
};
unicode-display_width = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1204c1jx2g89pc25qk5150mk7j5k90692i7ihgfzqnad6qni74h2";
type = "gem";
};
version = "1.8.0";
};
unicode_utils = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0h1a5yvrxzlf0lxxa1ya31jcizslf774arnsd89vgdhk4g7x08mr";
type = "gem";
};
version = "1.4.0";
};
wisper = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "19bw0z1qw1dhv7gn9lad25hgbgpb1bkw8d599744xdfam158ms2s";
type = "gem";
};
version = "1.6.1";
};
}

View file

@ -1,22 +0,0 @@
{ lib
, bundlerApp
, bundlerUpdateScript
}:
bundlerApp {
pname = "neocities";
gemdir = ./.;
exes = [ "neocities" ];
passthru.updateScript = bundlerUpdateScript "neocities";
meta = with lib; {
description = "Neocities Gem - A CLI and library for using the Neocities web site API";
homepage = "https://github.com/neocities/neocities-ruby";
license = licenses.mit;
mainProgram = "neocities";
maintainers = with maintainers; [ dawoox ];
platforms = platforms.unix;
};
}

View file

@ -39,9 +39,10 @@ GEM
PLATFORMS
ruby
x86_64-linux
DEPENDENCIES
neocities
BUNDLED WITH
2.1.4
2.5.5

View file

@ -1,164 +1,166 @@
{
equatable = {
groups = ["default"];
platforms = [];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = ["https://rubygems.org"];
remotes = [ "https://rubygems.org" ];
sha256 = "1sjm9zjakyixyvsqziikdrsqfzis6j3fq23crgjkp6fwkfgndj7x";
type = "gem";
};
version = "0.5.0";
};
httpclient-fixcerts = {
groups = ["default"];
platforms = [];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = ["https://rubygems.org"];
remotes = [ "https://rubygems.org" ];
sha256 = "1zfszylh51y8ic8sbff3mwf30jb0gj270r5nxkcm1ydxad19w6sl";
type = "gem";
};
version = "2.8.5";
};
necromancer = {
groups = ["default"];
platforms = [];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = ["https://rubygems.org"];
remotes = [ "https://rubygems.org" ];
sha256 = "0v9nhdkv6zrp7cn48xv7n2vjhsbslpvs0ha36mfkcd56cp27pavz";
type = "gem";
};
version = "0.4.0";
};
neocities = {
dependencies = ["httpclient-fixcerts" "pastel" "rake" "tty-prompt" "tty-table"];
groups = ["default"];
platforms = [];
dependencies =
[ "httpclient-fixcerts" "pastel" "rake" "tty-prompt" "tty-table" ];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = ["https://rubygems.org"];
remotes = [ "https://rubygems.org" ];
sha256 = "1hfvy4gc7rzxkgl2dbrjs2fqzi5mphmr22rjfhk6n0i3bd0wazbw";
type = "gem";
};
version = "0.0.18";
};
pastel = {
dependencies = ["equatable" "tty-color"];
groups = ["default"];
platforms = [];
dependencies = [ "equatable" "tty-color" ];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = ["https://rubygems.org"];
remotes = [ "https://rubygems.org" ];
sha256 = "1yf30d9kzpm96gw9kwbv31p0qigwfykn8qdis5950plnzgc1vlp1";
type = "gem";
};
version = "0.7.2";
};
rake = {
groups = ["default"];
platforms = [];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = ["https://rubygems.org"];
remotes = [ "https://rubygems.org" ];
sha256 = "1cvaqarr1m84mhc006g3l1vw7sa5qpkcw0138lsxlf769zdllsgp";
type = "gem";
};
version = "12.3.3";
};
strings = {
dependencies = ["strings-ansi" "unicode-display_width" "unicode_utils"];
groups = ["default"];
platforms = [];
dependencies = [ "strings-ansi" "unicode-display_width" "unicode_utils" ];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = ["https://rubygems.org"];
remotes = [ "https://rubygems.org" ];
sha256 = "111876lcqrykh30w7zzkrl06d6rj9lq24y625m28674vgfxkkcz0";
type = "gem";
};
version = "0.1.8";
};
strings-ansi = {
groups = ["default"];
platforms = [];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = ["https://rubygems.org"];
remotes = [ "https://rubygems.org" ];
sha256 = "120wa6yjc63b84lprglc52f40hx3fx920n4dmv14rad41rv2s9lh";
type = "gem";
};
version = "0.2.0";
};
tty-color = {
groups = ["default"];
platforms = [];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = ["https://rubygems.org"];
remotes = [ "https://rubygems.org" ];
sha256 = "0zz5xa6xbrj69h334d8nx7z732fz80s1a0b02b53mim95p80s7bk";
type = "gem";
};
version = "0.4.3";
};
tty-cursor = {
groups = ["default"];
platforms = [];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = ["https://rubygems.org"];
remotes = [ "https://rubygems.org" ];
sha256 = "07whfm8mnp7l49s2cm2qy1snhsqq3a90sqwb71gvym4hm2kx822a";
type = "gem";
};
version = "0.4.0";
};
tty-prompt = {
dependencies = ["necromancer" "pastel" "tty-cursor" "wisper"];
groups = ["default"];
platforms = [];
dependencies = [ "necromancer" "pastel" "tty-cursor" "wisper" ];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = ["https://rubygems.org"];
remotes = [ "https://rubygems.org" ];
sha256 = "1026nyqhgmgxi2nmk8xk3hca07gy5rpisjs8y6w00wnw4f01kpv0";
type = "gem";
};
version = "0.12.0";
};
tty-screen = {
groups = ["default"];
platforms = [];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = ["https://rubygems.org"];
remotes = [ "https://rubygems.org" ];
sha256 = "0azpjgyhdm8ycblnx9crq3dgb2x8yg454a13n60zfpsc0n138sw1";
type = "gem";
};
version = "0.6.5";
};
tty-table = {
dependencies = ["equatable" "necromancer" "pastel" "strings" "tty-screen"];
groups = ["default"];
platforms = [];
dependencies =
[ "equatable" "necromancer" "pastel" "strings" "tty-screen" ];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = ["https://rubygems.org"];
remotes = [ "https://rubygems.org" ];
sha256 = "05krrj1x5pmfbz74paszrsr1316w9b9jlc4wpd9s9gpzqfzwjzcg";
type = "gem";
};
version = "0.10.0";
};
unicode-display_width = {
groups = ["default"];
platforms = [];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = ["https://rubygems.org"];
remotes = [ "https://rubygems.org" ];
sha256 = "1204c1jx2g89pc25qk5150mk7j5k90692i7ihgfzqnad6qni74h2";
type = "gem";
};
version = "1.8.0";
};
unicode_utils = {
groups = ["default"];
platforms = [];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = ["https://rubygems.org"];
remotes = [ "https://rubygems.org" ];
sha256 = "0h1a5yvrxzlf0lxxa1ya31jcizslf774arnsd89vgdhk4g7x08mr";
type = "gem";
};
version = "1.4.0";
};
wisper = {
groups = ["default"];
platforms = [];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = ["https://rubygems.org"];
remotes = [ "https://rubygems.org" ];
sha256 = "19bw0z1qw1dhv7gn9lad25hgbgpb1bkw8d599744xdfam158ms2s";
type = "gem";
};

View file

@ -2,6 +2,7 @@
, bundlerApp
, bundlerUpdateScript
}:
bundlerApp {
pname = "neocities";
gemdir = ./.;
@ -10,10 +11,12 @@ bundlerApp {
passthru.updateScript = bundlerUpdateScript "neocities";
meta = with lib; {
description = "The Neocities CLI, written in Ruby";
description = "CLI and library for interacting with the Neocities API";
homepage = "https://github.com/neocities/neocities-ruby";
license = licenses.mit;
maintainers = with maintainers; [ infinidoge ];
mainProgram = "neocities";
maintainers = with maintainers; [ dawoox ];
platforms = platforms.unix;
};
}

View file

@ -31,7 +31,13 @@ buildDotnetModule rec {
hash = "sha256-FzQphMhiC1g+6qmk/R1v4rq2ldy35NcaWm0RR1UlwLA=";
};
projectFile = "NexusMods.App.sln";
# If the whole solution is published, there seems to be a race condition where
# it will sometimes publish the wrong version of a dependent assembly, for
# example: Microsoft.Extensions.Hosting.dll 6.0.0 instead of 8.0.0.
# https://learn.microsoft.com/en-us/dotnet/core/compatibility/sdk/7.0/solution-level-output-no-longer-valid
# TODO: do something about this in buildDotnetModule
projectFile = "src/NexusMods.App/NexusMods.App.csproj";
testProjectFile = "NexusMods.App.sln";
nativeBuildInputs = [
copyDesktopItems
@ -49,6 +55,9 @@ buildDotnetModule rec {
postPatch = ''
ln --force --symbolic "${lib.getExe _7zzWithOptionalUnfreeRarSupport}" src/ArchiveManagement/NexusMods.FileExtractor/runtimes/linux-x64/native/7zz
# for some reason these tests fail (intermittently?) with a zero timestamp
touch tests/NexusMods.UI.Tests/WorkspaceSystem/*.verified.png
'';
makeWrapperArgs = [

View file

@ -135,7 +135,7 @@ python3.pkgs.buildPythonApplication rec {
};
meta = {
description = "Full-stack of open-webui. open-webui is a user-friendly WebUI for LLMs (Formerly Ollama WebUI)";
description = "Comprehensive suite for LLMs with a user-friendly WebUI";
homepage = "https://github.com/open-webui/open-webui";
changelog = "https://github.com/open-webui/open-webui/blob/${src.rev}/CHANGELOG.md";
license = lib.licenses.mit;

View file

@ -7,13 +7,13 @@
buildGoModule rec {
pname = "openapi-changes";
version = "0.0.65";
version = "0.0.66";
src = fetchFromGitHub {
owner = "pb33f";
repo = pname;
rev = "v${version}";
hash = "sha256-nqyKMlVx1WsbFk30XfnP/JQfy81kEYFEwLx1Tg0n7lQ=";
hash = "sha256-KacN/j6mc6eUovFfKLgu86pZBde5zRjhjuJyny6IjZU=";
};
# this test requires the `.git` of the project to be present

View file

@ -7,33 +7,25 @@
platformsh
}:
let versions = lib.importJSON ./versions.json;
arch = if stdenvNoCC.isx86_64 then "amd64"
else if stdenvNoCC.isAarch64 then "arm64"
else throw "Unsupported architecture";
os = if stdenvNoCC.isLinux then "linux"
else if stdenvNoCC.isDarwin then "darwin"
else throw "Unsupported os";
versionInfo = versions."${os}-${arch}";
inherit (versionInfo) hash url;
in
stdenvNoCC.mkDerivation (finalAttrs: {
pname = "platformsh";
version = "5.0.15";
inherit (versions) version;
nativeBuildInputs = [ installShellFiles ];
src =
{
x86_64-darwin = fetchurl {
url = "https://github.com/platformsh/cli/releases/download/${finalAttrs.version}/platform_${finalAttrs.version}_darwin_all.tar.gz";
hash = "sha256-G5/T6ZPcvC7dvw82p2CEMEOb7GCTyCAB8xJ2lxV2UXk=";
};
aarch64-darwin = fetchurl {
url = "https://github.com/platformsh/cli/releases/download/${finalAttrs.version}/platform_${finalAttrs.version}_darwin_all.tar.gz";
hash = "sha256-G5/T6ZPcvC7dvw82p2CEMEOb7GCTyCAB8xJ2lxV2UXk=";
};
x86_64-linux = fetchurl {
url = "https://github.com/platformsh/cli/releases/download/${finalAttrs.version}/platform_${finalAttrs.version}_linux_amd64.tar.gz";
hash = "sha256-0h5Thp9pSp1TgUyNVVAjsEw+kAZVzfbsHzPMXzhZhSk=";
};
aarch64-linux = fetchurl {
url = "https://github.com/platformsh/cli/releases/download/${finalAttrs.version}/platform_${finalAttrs.version}_linux_arm64.tar.gz";
hash = "sha256-m0rxC9IfqY1k4Zh027zSkDWCGNv0E0oopFfBC/vYRgU=";
};
}
.${stdenvNoCC.system}
or (throw "${finalAttrs.pname}-${finalAttrs.version}: ${stdenvNoCC.system} is unsupported.");
# run ./update
src = fetchurl { inherit hash url; };
dontConfigure = true;
dontBuild = true;
@ -51,6 +43,7 @@ stdenvNoCC.mkDerivation (finalAttrs: {
'';
passthru = {
updateScript = ./update.sh;
tests.version = testers.testVersion {
inherit (finalAttrs) version;
package = platformsh;

View file

@ -0,0 +1,29 @@
#!/usr/bin/env nix-shell
#!nix-shell -i bash -p curl jq
#shellcheck shell=bash
set -eu -o pipefail
version=$(curl -s ${GITHUB_TOKEN:+-u ":$GITHUB_TOKEN"} \
https://api.github.com/repos/platformsh/cli/releases/latest | jq -e -r ".tag_name")
linux_arm64_url=https://github.com/platformsh/cli/releases/download/$version/platform_${version}_linux_arm64.tar.gz
linux_amd64_url=https://github.com/platformsh/cli/releases/download/$version/platform_${version}_linux_amd64.tar.gz
darwin_all_url=https://github.com/platformsh/cli/releases/download/$version/platform_${version}_darwin_all.tar.gz
linux_arm64_hash=$(nix hash to-sri --type sha256 $(nix-prefetch-url --type sha256 "$linux_arm64_url"))
linux_amd64_hash=$(nix hash to-sri --type sha256 $(nix-prefetch-url --type sha256 "$linux_amd64_url"))
darwin_all_hash=$(nix hash to-sri --type sha256 $(nix-prefetch-url --type sha256 "$darwin_all_url"))
jq -n \
--arg version "$version" \
--arg darwin_all_hash "$darwin_all_hash" \
--arg darwin_all_url "$darwin_all_url" \
--arg linux_amd64_hash "$linux_amd64_hash" \
--arg linux_amd64_url "$linux_amd64_url" \
--arg linux_arm64_hash "$linux_arm64_hash" \
--arg linux_arm64_url "$linux_arm64_url" \
'{ "version": $version,
"darwin-amd64": { "hash": $darwin_all_hash, "url": $darwin_all_url },
"darwin-arm64": { "hash": $darwin_all_hash, "url": $darwin_all_url },
"linux-amd64": { "hash": $linux_amd64_hash, "url": $linux_amd64_url },
"linux-arm64": { "hash": $linux_arm64_hash, "url": $linux_arm64_url }
}' > pkgs/by-name/pl/platformsh/versions.json

View file

@ -0,0 +1,19 @@
{
"version": "5.0.16",
"darwin-amd64": {
"hash": "sha256-07HuCcR/2MpRbYfszyezZjTO4r8JQif4jdDClKoKsNc=",
"url": "https://github.com/platformsh/cli/releases/download/5.0.16/platform_5.0.16_darwin_all.tar.gz"
},
"darwin-arm64": {
"hash": "sha256-07HuCcR/2MpRbYfszyezZjTO4r8JQif4jdDClKoKsNc=",
"url": "https://github.com/platformsh/cli/releases/download/5.0.16/platform_5.0.16_darwin_all.tar.gz"
},
"linux-amd64": {
"hash": "sha256-Z9GPvvwNP2FdPUuFkDNPDKT7Pp+H6ymRvrTiPcooe3c=",
"url": "https://github.com/platformsh/cli/releases/download/5.0.16/platform_5.0.16_linux_amd64.tar.gz"
},
"linux-arm64": {
"hash": "sha256-3615mSWDq4DJD3554ELkAh+rEIJ/OOtLrdDoojAjZf8=",
"url": "https://github.com/platformsh/cli/releases/download/5.0.16/platform_5.0.16_linux_arm64.tar.gz"
}
}

View file

@ -2,46 +2,47 @@
, fetchFromGitHub
, rustPlatform
, libsixel
, stdenv
, nix-update-script
, testers
, presenterm
, stdenv
}:
rustPlatform.buildRustPackage rec {
pname = "presenterm";
version = "0.7.0";
version = "0.8.0";
src = fetchFromGitHub {
owner = "mfontanini";
repo = "presenterm";
rev = "refs/tags/v${version}";
hash = "sha256-I5L+Wygj9ApQu/5fm55okwNbyxOiF++7BDl765MLnjY=";
hash = "sha256-sMhowTXPzZcIOV4Ny9NzvgXGsZSPBJGDg9JvuoZoSUc=";
};
buildInputs = [
libsixel
];
cargoHash = "sha256-w1uXCH8Ybf78EPTIKrhPlPHAnNBp1iiBpFJHY98IPWY=";
cargoHash = "sha256-2aHJnGSuP0TEBMxF1zljbEyk1g6ECTpnByyH8jaj78s=";
# Crashes at runtime on darwin with:
# Library not loaded: .../out/lib/libsixel.1.dylib
buildFeatures = lib.optionals (!stdenv.isDarwin) [ "sixel" ];
# Skip test that currently doesn't work
checkFlags = [ "--skip=execute::test::shell_code_execution" ];
passthru.tests.version = testers.testVersion {
package = presenterm;
command = "presenterm --version";
passthru = {
updateScript = nix-update-script { };
tests.version = testers.testVersion {
package = presenterm;
command = "presenterm --version";
};
};
meta = with lib; {
meta = {
description = "Terminal based slideshow tool";
changelog = "https://github.com/mfontanini/presenterm/releases/tag/v${version}";
homepage = "https://github.com/mfontanini/presenterm";
license = licenses.bsd2;
maintainers = with maintainers; [ mikaelfangel ];
license = lib.licenses.bsd2;
maintainers = with lib.maintainers; [ mikaelfangel ];
mainProgram = "presenterm";
};
}

View file

@ -60,7 +60,7 @@ buildGoModule rec {
];
postPatch = ''
mkdir -p ./ui/build
mkdir -p ./ui
cp -r "${ui}" ./ui/build
'';

View file

@ -0,0 +1,47 @@
{
lib,
buildGoModule,
fetchFromGitHub,
}:
buildGoModule rec {
pname = "sqlpkg-cli";
version = "0.2.3";
src = fetchFromGitHub {
owner = "nalgeon";
repo = "sqlpkg-cli";
rev = "refs/tags/${version}";
hash = "sha256-qytqTaoslBcoIn84tSiLABwRcnY/FsyWYD3sugGEYB0=";
};
vendorHash = null;
ldflags = [
"-s"
"-w"
];
postInstall = ''
mv -v $out/bin/cli $out/bin/sqlpkg
'';
preCheck = ''
export HOME="$TMP"
'';
meta = {
description = "SQLite package manager";
homepage = "https://github.com/nalgeon/sqlpkg-cli";
changelog = "https://github.com/nalgeon/sqlpkg-cli/releases/tag/${version}";
license = lib.licenses.mit;
maintainers = [ lib.maintainers.pbsds ];
mainProgram = "sqlpkg";
platforms = lib.platforms.unix;
badPlatforms = [
"aarch64-linux" # assets_test.go:44: BuildAssetPath: unexpected error unsupported platform: linux-arm64
"x86_64-darwin" # assets_test.go:44: BuildAssetPath: unexpected error unsupported platform: darwin-amd64
"aach64-darwin" # install_test.go:22: installation error: failed to dequarantine files: exec: "xattr": executable file not found in $PATH
];
};
}

View file

@ -33,8 +33,6 @@ buildDotnetModule rec {
./0001-display-the-message-of-caught-exceptions.patch
];
postInstall = "rm $out/lib/torrentstream/NuGet.config"; # reduce closure size
meta = {
homepage = "https://github.com/trueromanus/TorrentStream";
description = "Simple web server for streaming torrent files in video players";

View file

@ -1,4 +1,8 @@
{ lib, buildGoModule, fetchFromGitHub, fetchpatch }:
{
lib,
buildGoModule,
fetchFromGitHub,
}:
# To use upower-notify, the maintainer suggests adding something like this to your configuration.nix:
#
@ -8,23 +12,15 @@
# '';
buildGoModule {
pname = "upower-notify";
version = "0-unstable-2019-01-06";
version = "0-unstable-2024-07-20";
src = fetchFromGitHub {
owner = "omeid";
repo = "upower-notify";
rev = "7013b0d4d2687e03554b1287e566dc8979896ea5";
sha256 = "sha256-8kGMeWIyM6ML1ffQ6L+SNzuBb7e5Y5I5QKMkyEjSVEA=";
rev = "c05ffbba9b8d475573be0908d75ac7c64d74be2d";
sha256 = "sha256-y+Cy3jkIfWiqF2HFopafdNSyGVA2ws4250Lg02rVxmo=";
};
patches = [
# Migrate to Go module
(fetchpatch {
url = "https://github.com/omeid/upower-notify/commit/dff8ad7e33e5b0cf148e73c6ea0c358da72006ed.patch";
hash = "sha256-zPSryo6f+6QGgjOkC3W1fPIbZ3FD6S/rAuBJXHWqjZg=";
})
];
vendorHash = "sha256-58zK6t3rb+19ilaQaNgsMVFQBYKPIV40ww8klrGbpnw=";
proxyVendor = true;

View file

@ -14,13 +14,9 @@
newt,
python3Packages,
util-linux,
hyprland,
sway,
fumonSupport ? true,
uuctlSupport ? true,
uwsmAppSupport ? true,
hyprlandSupport ? false,
swaySupport ? false,
}:
let
python = python3Packages.python.withPackages (ps: [
@ -31,13 +27,13 @@ let
in
stdenv.mkDerivation (finalAttrs: {
pname = "uwsm";
version = "0.17.2";
version = "0.17.4";
src = fetchFromGitHub {
owner = "Vladimir-csp";
repo = "uwsm";
rev = "refs/tags/v${finalAttrs.version}";
hash = "sha256-7RPz0VOUJ4fFhxNq+/s+/YEvy03XXgssggPn/JtOZI4=";
hash = "sha256-wjKFaZBEA5nbUob6czwJqny62rJdCoWEM3IUl1fTWOw=";
};
nativeBuildInputs = [
@ -73,14 +69,7 @@ stdenv.mkDerivation (finalAttrs: {
postInstall =
let
wrapperArgs = ''
--prefix PATH : "${lib.makeBinPath finalAttrs.propagatedBuildInputs}" \
--suffix PATH : "${
lib.makeBinPath (
# uwsm as of 0.17.2 can load WMs like sway and hyprland by path
# but this is still needed as a fallback
lib.optionals hyprlandSupport [ hyprland ] ++ lib.optionals swaySupport [ sway ]
)
}"
--prefix PATH : "${lib.makeBinPath finalAttrs.propagatedBuildInputs}"
'';
in
''

View file

@ -19,12 +19,35 @@ stdenv.mkDerivation (finalAttrs: {
hash = "sha256-Dc2V77t+DrZo9252FAL0eczrmikrseU02ob2RLBdVvU=";
};
patches = lib.optionals (!lib.versionOlder "0.5.0" finalAttrs.version) [
(fetchpatch2 {
url = "https://github.com/mpeg5/xevd/commit/7eda92a6ebb622189450f7b63cfd4dcd32fd6dff.patch?full_index=1";
hash = "sha256-Ru7jGk1b+Id5x1zaiGb7YKZGTNaTcArZGYyHbJURfgs=";
})
];
patches = lib.optionals (!lib.versionOlder "0.5.0" finalAttrs.version) (
builtins.map fetchpatch2 [
# Upstream accepted patches, should be dropped on next version bump.
{
url = "https://github.com/mpeg5/xevd/commit/7eda92a6ebb622189450f7b63cfd4dcd32fd6dff.patch?full_index=1";
hash = "sha256-Ru7jGk1b+Id5x1zaiGb7YKZGTNaTcArZGYyHbJURfgs=";
}
{
url = "https://github.com/mpeg5/xevd/commit/499bc0153a99f8c8fd00143dd81fc0d858a5b509.patch?full_index=1";
hash = "sha256-3ExBNTeBhj/IBweYkgWZ2ZgUypFua4oSC24XXFmjxXA=";
}
{
url = "https://github.com/mpeg5/xevd/commit/b099623a09c09cddfe7f732fb795b2af8a020620.patch?full_index=1";
hash = "sha256-Ee/PQmsGpUCU7KUMbdGEXEEKOc8BHYcGF4mq+mmWb/w=";
}
{
url = "https://github.com/mpeg5/xevd/commit/2e6b24bf1f946c30d789b114dfd56e91b99039fe.patch?full_index=1";
hash = "sha256-thT0kVSKwWruyhIjDFBulyUNeyG9zQ8rQtpZVmRvYxI=";
}
{
url = "https://github.com/mpeg5/xevd/commit/c1f23a41b8def84ab006a8ce4e9221b2fff84a1a.patch?full_index=1";
hash = "sha256-MOJ9mU5txk6ISzJsQdK+TTb2dlWD8ofGZI0nfq9rsPo=";
}
{
url = "https://github.com/mpeg5/xevd/commit/adf1c45d6edb0d235997a40261689d7454b711c5.patch?full_index=1";
hash = "sha256-tGIPaswx9S1Oy8QF928RzV/AHr710kYxXfMRYg6SLR4=";
}
]
);
postPatch = ''
echo v$version > version.txt
@ -32,6 +55,29 @@ stdenv.mkDerivation (finalAttrs: {
nativeBuildInputs = [ cmake ];
cmakeFlags =
let
inherit (lib) cmakeBool cmakeFeature optional;
inherit (stdenv.hostPlatform) isAarch64 isDarwin;
in
optional isAarch64 (cmakeBool "ARM" true)
++ optional isDarwin (cmakeFeature "CMAKE_SYSTEM_NAME" "Darwin");
env.NIX_CFLAGS_COMPILE = builtins.toString (
builtins.map (w: "-Wno-" + w) (
[
# Evaluate on version bump whether still necessary.
"sometimes-uninitialized"
"unknown-warning-option"
]
++ (
# Fixed upstream in 325fd9f94f3fdf0231fa931a31ebb72e63dc3498 but might
# change behavior, therefore opted to leave it out for now.
lib.optional (!lib.versionOlder "0.5.0" finalAttrs.version) "for-loop-analysis"
)
)
);
postInstall = ''
ln $dev/include/xevd/* $dev/include/
'';
@ -53,7 +99,6 @@ stdenv.mkDerivation (finalAttrs: {
pkgConfigModules = [ "xevd" ];
maintainers = with lib.maintainers; [ jopejoe1 ];
platforms = lib.platforms.all;
# Currently only supports gcc and msvc as compiler, the limitation for clang gets removed in the next release, but that does not fix building on darwin.
broken = !stdenv.hostPlatform.isx86 || !stdenv.cc.isGNU;
broken = stdenv.isLinux && stdenv.isAarch64;
};
})

View file

@ -0,0 +1,27 @@
From f3927c3cb05ffc77f62026bafd7cea1d25de1e72 Mon Sep 17 00:00:00 2001
From: toonn <toonn@toonn.io>
Date: Tue, 2 Jul 2024 19:23:11 +0200
Subject: [PATCH 1/2] CMakeLists.txt: Disable static linking on Darwin
---
CMakeLists.txt | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index e0873d5..1d639c4 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -64,7 +64,9 @@ if(NOT ARM)
else()
add_definitions(-DARM=1)
set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -flax-vector-conversions")
- set(CMAKE_EXE_LINKER_FLAGS "-static")
+ if(NOT "${CMAKE_SYSTEM_NAME}" STREQUAL "Darwin")
+ set(CMAKE_EXE_LINKER_FLAGS "-static")
+ endif()
endif()
message("ARM=${ARM}")
--
2.44.1

View file

@ -0,0 +1,27 @@
From d1a480867c0778ee46ff0213e2b1e494afcb67fc Mon Sep 17 00:00:00 2001
From: toonn <toonn@toonn.io>
Date: Mon, 1 Jul 2024 15:19:37 +0200
Subject: [PATCH 2/2] sse2neon: Cast to variable type
The `__m128d` type corresponds to `float32x4_t` or `float64x2_t`
depending on the platform. The cast cannot explicitly use either type.
---
src_base/neon/sse2neon.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src_base/neon/sse2neon.h b/src_base/neon/sse2neon.h
index 490c0a4..3290fa3 100644
--- a/src_base/neon/sse2neon.h
+++ b/src_base/neon/sse2neon.h
@@ -6003,7 +6003,7 @@ FORCE_INLINE void _mm_storeu_si32(void *p, __m128i a)
FORCE_INLINE void _mm_stream_pd(double *p, __m128d a)
{
#if __has_builtin(__builtin_nontemporal_store)
- __builtin_nontemporal_store(a, (float32x4_t *) p);
+ __builtin_nontemporal_store(a, (__m128d *) p);
#elif defined(__aarch64__)
vst1q_f64(p, vreinterpretq_f64_m128d(a));
#else
--
2.44.1

View file

@ -18,12 +18,36 @@ stdenv.mkDerivation (finalAttrs: {
hash = "sha256-8jXntm/yFme9ZPImdW54jAr11hEsU1K+N5/7RLmITPs=";
};
patches = lib.optionals (!lib.versionOlder "0.5.0" finalAttrs.version) [
(fetchpatch2 {
url = "https://github.com/mpeg5/xeve/commit/954ed6e0494cd2438fd15c717c0146e88e582b33.patch?full_index=1";
hash = "sha256-//NtOUm1fqPFvOM955N6gF+QgmOdmuVunwx/3s/G/J8=";
})
];
patches =
lib.optionals (!lib.versionOlder "0.5.0" finalAttrs.version) (
builtins.map fetchpatch2 [
{
url = "https://github.com/mpeg5/xeve/commit/954ed6e0494cd2438fd15c717c0146e88e582b33.patch?full_index=1";
hash = "sha256-//NtOUm1fqPFvOM955N6gF+QgmOdmuVunwx/3s/G/J8=";
}
{
url = "https://github.com/mpeg5/xeve/commit/07a6f2a6d13dfaa0f73c3752f8cd802c251d8252.patch?full_index=1";
hash = "sha256-P9J7Y9O/lb/MSa5oCfft7z764AbLBLZnMmrmPEZPcws=";
}
{
url = "https://github.com/mpeg5/xeve/commit/0a0f3bd397161253b606bdbeaa518fbe019d24e1.patch?full_index=1";
hash = "sha256-PoZpE64gWkTUS4Q+SK+DH1I1Ac0UEzwwnlvpYN16hsI=";
}
{
url = "https://github.com/mpeg5/xeve/commit/e029f1619ecedbda152b8680641fa10eea9eeace.patch?full_index=1";
hash = "sha256-ooIBzNtGSjDgYvTzA8T0KB+QzsUiy14mPpoRqrHF3Pg=";
}
]
++ [
# Backport to 0.5.0 of upstream patch c564ac77c103dbba472df3e13f4733691fd499ed
./0001-CMakeLists.txt-Disable-static-linking-on-Darwin.patch
]
)
++ [
# Rejected upstream, can be dropped when a fix for
# https://github.com/mpeg5/xeve/pull/123 is in a version bump.
./0002-sse2neon-Cast-to-variable-type.patch
];
postPatch = ''
echo v$version > version.txt
@ -31,6 +55,34 @@ stdenv.mkDerivation (finalAttrs: {
nativeBuildInputs = [ cmake ];
cmakeFlags =
let
inherit (lib) cmakeBool cmakeFeature optional;
inherit (stdenv.hostPlatform) isAarch64 isDarwin;
in
optional isAarch64 (cmakeBool "ARM" true)
++ optional isDarwin (cmakeFeature "CMAKE_SYSTEM_NAME" "Darwin");
env.NIX_CFLAGS_COMPILE = builtins.toString (
builtins.map (w: "-Wno-" + w) (
[
# Patch addressing an if without a body was rejected upstream, third
# line-based comment in this thread, https://github.com/mpeg5/xeve/pull/122#pullrequestreview-2187744305
# Evaluate on version bump whether still necessary.
"empty-body"
# Evaluate on version bump whether still necessary.
"parentheses-equality"
"unknown-warning-option"
]
++ (
# Fixed upstream in 325fd9f94f3fdf0231fa931a31ebb72e63dc3498 but might
# change behavior, therefore opted to leave it out for now.
lib.optional (!lib.versionOlder "0.5.0" finalAttrs.version) "for-loop-analysis"
)
)
);
postInstall = ''
ln $dev/include/xeve/* $dev/include/
'';
@ -50,7 +102,6 @@ stdenv.mkDerivation (finalAttrs: {
mainProgram = "xeve_app";
maintainers = with lib.maintainers; [ jopejoe1 ];
platforms = lib.platforms.all;
# Currently only supports gcc and msvc as compiler, the limitation for clang gets removed in the next release, but that does not fix building on darwin.
broken = !stdenv.hostPlatform.isx86 || !stdenv.cc.isGNU;
broken = stdenv.isLinux && stdenv.isAarch64;
};
})

View file

@ -10,16 +10,16 @@
rustPlatform.buildRustPackage rec {
pname = "yara-x";
version = "0.5.0";
version = "0.6.0";
src = fetchFromGitHub {
owner = "VirusTotal";
repo = "yara-x";
rev = "refs/tags/v${version}";
hash = "sha256-/5UYweF/+oshJlZaTnbr1TJMYgenRZmb8EZudyxcTU0=";
hash = "sha256-KcUBaEn28hNpy1d+uqGQZUlZKCnaLcrB8th9KXHXnuQ=";
};
cargoHash = "sha256-BXYegw1Rl8HvUxlBg3xwF3ZJemzJnJZPoPNMXYBgoF0=";
cargoHash = "sha256-9W68Lm1Jc1GZ7wcS0FROZYGZkrzKn9wVBKdqlBjVOxk=";
nativeBuildInputs = [ cmake installShellFiles ];

View file

@ -1,6 +1,6 @@
{
"commit": "f9ce92cad6df36ec3b9dfc6807c4a1c0426c608e",
"url": "https://github.com/commercialhaskell/all-cabal-hashes/archive/f9ce92cad6df36ec3b9dfc6807c4a1c0426c608e.tar.gz",
"sha256": "01fnkg977fi44v0scijgrp3hq3yrqzw5k8i326a9pz8j6r676iim",
"msg": "Update from Hackage at 2024-06-23T10:38:31Z"
"commit": "f3a61ad1c6b9c94ca546997f1170d6a6d58ef8ae",
"url": "https://github.com/commercialhaskell/all-cabal-hashes/archive/f3a61ad1c6b9c94ca546997f1170d6a6d58ef8ae.tar.gz",
"sha256": "10nkz8i426w1wji7c91irnl188m4alpjdn1d545w2ifmgpvsgp2f",
"msg": "Update from Hackage at 2024-07-14T21:17:20Z"
}

View file

@ -1,35 +1,54 @@
{ lib
, stdenv
, fetchurl
, pkg-config
, gettext
, gtk3-x11
, libxklavier
, mateUpdateScript
{
lib,
stdenv,
fetchFromGitHub,
meson,
ninja,
pkg-config,
glib,
gtk3-x11,
gobject-introspection,
libxklavier,
gitUpdater,
}:
stdenv.mkDerivation rec {
pname = "libmatekbd";
version = "1.28.0";
src = fetchurl {
url = "https://pub.mate-desktop.org/releases/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
sha256 = "XS5YSDwrI9M1A9JMiPi5CijMAYnX5AAbPic6YE9v6A4=";
src = fetchFromGitHub {
owner = "mate-desktop";
repo = "libmatekbd";
rev = "refs/tags/v${version}";
hash = "sha256-6s8JiuXbBWOHxbNSuO8rglzOCRKlQ9fx/GsYYc08GmI=";
};
strictDeps = true;
depsBuildBuild = [ pkg-config ];
nativeBuildInputs = [
meson
ninja
pkg-config
gettext
glib
gobject-introspection
];
buildInputs = [
glib
gtk3-x11
libxklavier
];
enableParallelBuilding = true;
postInstall = ''
glib-compile-schemas $out/share/glib-2.0/schemas
'';
passthru.updateScript = mateUpdateScript { inherit pname; };
passthru.updateScript = gitUpdater {
rev-prefix = "v";
odd-unstable = true;
};
meta = with lib; {
description = "Keyboard management library for MATE";

View file

@ -4,13 +4,15 @@
, exo
, gdk-pixbuf
, gtk3
, libexif
, libgudev
, libnotify
, libX11
, libxfce4ui
, libxfce4util
, libxslt
, pcre
, pcre2
, xfce4-panel
, xfconf
, gobject-introspection
, makeWrapper
@ -36,11 +38,13 @@ let unwrapped = mkXfceDerivation {
gdk-pixbuf
gtk3
libX11
libexif # image properties page
libgudev
libnotify
libxfce4ui
libxfce4util
pcre
pcre2 # search & replace renamer
xfce4-panel # trash panel applet plugin
xfconf
];

View file

@ -1,5 +1,5 @@
dotnetPackages:
{ buildEnv, makeWrapper, lib }:
{ buildEnv, makeWrapper, lib, symlinkJoin }:
# TODO: Rethink how we determine and/or get the CLI.
# Possible options raised in #187118:
# 1. A separate argument for the CLI (as suggested by IvarWithoutBones
@ -27,7 +27,10 @@ assert lib.assertMsg ((builtins.length dotnetPackages) > 0)
inherit (cli) icu;
versions = lib.catAttrs "version" dotnetPackages;
packages = lib.remove null (lib.catAttrs "packages" dotnetPackages);
packages = symlinkJoin {
name = "combined-packages";
paths = lib.remove null (lib.catAttrs "packages" dotnetPackages);
};
};
inherit (cli) meta;

View file

@ -14,6 +14,9 @@
, swiftPackages
, darwin
, icu
, lndir
, substituteAll
, nugetPackageHook
}: type: args: stdenv.mkDerivation (finalAttrs: args // {
doInstallCheck = true;
@ -23,17 +26,16 @@
$out/bin/dotnet --info
'';
# TODO: move this to sdk section?
setupHook = writeText "dotnet-setup-hook" (''
if [ ! -w "$HOME" ]; then
export HOME=$(mktemp -d) # Dotnet expects a writable home directory for its configuration files
fi
setupHooks = args.setupHooks or [] ++ [
./dotnet-setup-hook.sh
] ++ lib.optional (type == "sdk") (substituteAll {
src = ./dotnet-sdk-setup-hook.sh;
inherit lndir;
});
export DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1 # Dont try to expand NuGetFallbackFolder to disk
export DOTNET_NOLOGO=1 # Disables the welcome message
export DOTNET_CLI_TELEMETRY_OPTOUT=1
export DOTNET_SKIP_WORKLOAD_INTEGRITY_CHECK=1 # Skip integrity check on first run, which fails due to read-only directory
'' + args.setupHook or "");
propagatedBuildInputs =
(args.propagatedBuildInputs or [])
++ [ nugetPackageHook ];
nativeBuildInputs = (args.nativeBuildInputs or []) ++ [ installShellFiles ];
@ -63,23 +65,22 @@
}:
let
sdk = finalAttrs.finalPackage;
built = runCommandWith {
built = stdenv.mkDerivation {
name = "dotnet-test-${name}";
inherit stdenv;
derivationArgs = {
buildInputs = [ sdk ] ++ buildInputs;
# make sure ICU works in a sandbox
propagatedSandboxProfile = toString sdk.__propagatedSandboxProfile;
};
} (''
HOME=$PWD/.home
dotnet new nugetconfig
dotnet nuget disable source nuget
'' + lib.optionalString usePackageSource ''
dotnet nuget add source ${sdk.packages}
'' + ''
dotnet new ${template} -n test -o .
'' + build);
buildInputs =
[ sdk ]
++ buildInputs
++ lib.optional (usePackageSource) sdk.packages;
# make sure ICU works in a sandbox
propagatedSandboxProfile = toString sdk.__propagatedSandboxProfile;
unpackPhase = ''
mkdir test
cd test
dotnet new ${template} -o .
'';
buildPhase = build;
dontPatchELF = true;
};
in
if run == null
then built
@ -87,6 +88,7 @@
runCommand "${built.name}-run" ({
src = built;
nativeBuildInputs = [ built ] ++ runInputs;
passthru = { inherit built; };
} // lib.optionalAttrs (stdenv.isDarwin && runAllowNetworking) {
sandboxProfile = ''
(allow network-inbound (local ip))
@ -105,9 +107,6 @@
# yes, older SDKs omit the comma
[[ "$output" =~ Hello,?\ World! ]] && touch "$out"
'';
patchNupkgs = callPackage ./patch-nupkgs.nix {};
in {
version = testers.testVersion ({
package = finalAttrs.finalPackage;
@ -184,8 +183,7 @@
template = "console";
usePackageSource = true;
buildInputs =
[ patchNupkgs
zlib
[ zlib
] ++ lib.optional stdenv.isDarwin (with darwin; with apple_sdk.frameworks; [
swiftPackages.swift
Foundation
@ -195,7 +193,6 @@
]);
build = ''
dotnet restore -p:PublishAot=true
patch-nupkgs .home/.nuget/packages
dotnet publish -p:PublishAot=true -o $out/bin
'';
runtime = null;

View file

@ -5,45 +5,60 @@ dotnetCombined = with dotnetCorePackages; combinePackages [ sdk_6_0 aspnetcore_7
Hashes and urls are retrieved from:
https://dotnet.microsoft.com/download/dotnet
*/
{ lib, config, callPackage, recurseIntoAttrs }:
let
buildDotnet = attrs: callPackage (import ./build-dotnet.nix attrs) {};
buildAttrs = {
buildAspNetCore = attrs: buildDotnet (attrs // { type = "aspnetcore"; });
buildNetRuntime = attrs: buildDotnet (attrs // { type = "runtime"; });
buildNetSdk = attrs: buildDotnet (attrs // { type = "sdk"; });
};
{ lib
, config
, recurseIntoAttrs
, generateSplicesForMkScope
, makeScopeWithSplicing'
}:
## Files in versions/ are generated automatically by update.sh ##
dotnet_6_0 = import ./versions/6.0.nix buildAttrs;
dotnet_7_0 = import ./versions/7.0.nix buildAttrs;
dotnet_8_0 = import ./versions/8.0.nix buildAttrs;
dotnet_9_0 = import ./versions/9.0.nix buildAttrs;
makeScopeWithSplicing' {
otherSplices = generateSplicesForMkScope "dotnetCorePackages";
f = (self:
let
callPackage = self.callPackage;
runtimeIdentifierMap = {
"x86_64-linux" = "linux-x64";
"aarch64-linux" = "linux-arm64";
"x86_64-darwin" = "osx-x64";
"aarch64-darwin" = "osx-arm64";
"x86_64-windows" = "win-x64";
"i686-windows" = "win-x86";
};
buildDotnet = attrs: callPackage (import ./build-dotnet.nix attrs) {};
buildAttrs = {
buildAspNetCore = attrs: buildDotnet (attrs // { type = "aspnetcore"; });
buildNetRuntime = attrs: buildDotnet (attrs // { type = "runtime"; });
buildNetSdk = attrs: buildDotnet (attrs // { type = "sdk"; });
};
# Convert a "stdenv.hostPlatform.system" to a dotnet RID
systemToDotnetRid = system: runtimeIdentifierMap.${system} or (throw "unsupported platform ${system}");
in
{
inherit systemToDotnetRid;
## Files in versions/ are generated automatically by update.sh ##
dotnet_6_0 = import ./versions/6.0.nix buildAttrs;
dotnet_7_0 = import ./versions/7.0.nix buildAttrs;
dotnet_8_0 = import ./versions/8.0.nix buildAttrs;
dotnet_9_0 = import ./versions/9.0.nix buildAttrs;
combinePackages = attrs: callPackage (import ./combine-packages.nix attrs) {};
runtimeIdentifierMap = {
"x86_64-linux" = "linux-x64";
"aarch64-linux" = "linux-arm64";
"x86_64-darwin" = "osx-x64";
"aarch64-darwin" = "osx-arm64";
"x86_64-windows" = "win-x64";
"i686-windows" = "win-x86";
};
dotnet_8 = recurseIntoAttrs (callPackage ./8 { bootstrapSdk = dotnet_8_0.sdk_8_0_1xx; });
dotnet_9 = recurseIntoAttrs (callPackage ./9 {});
} // lib.optionalAttrs config.allowAliases {
# EOL
sdk_2_1 = throw "Dotnet SDK 2.1 is EOL, please use 6.0 (LTS) or 7.0 (Current)";
sdk_2_2 = throw "Dotnet SDK 2.2 is EOL, please use 6.0 (LTS) or 7.0 (Current)";
sdk_3_0 = throw "Dotnet SDK 3.0 is EOL, please use 6.0 (LTS) or 7.0 (Current)";
sdk_3_1 = throw "Dotnet SDK 3.1 is EOL, please use 6.0 (LTS) or 7.0 (Current)";
sdk_5_0 = throw "Dotnet SDK 5.0 is EOL, please use 6.0 (LTS) or 7.0 (Current)";
} // dotnet_6_0 // dotnet_7_0 // dotnet_8_0 // dotnet_9_0
in {
inherit callPackage;
# Convert a "stdenv.hostPlatform.system" to a dotnet RID
systemToDotnetRid = system: runtimeIdentifierMap.${system} or (throw "unsupported platform ${system}");
combinePackages = attrs: callPackage (import ./combine-packages.nix attrs) {};
patchNupkgs = callPackage ./patch-nupkgs.nix {};
nugetPackageHook = callPackage ./nuget-package-hook.nix {};
dotnet_8 = recurseIntoAttrs (callPackage ./8 { bootstrapSdk = dotnet_8_0.sdk_8_0_1xx; });
dotnet_9 = recurseIntoAttrs (callPackage ./9 {});
} // lib.optionalAttrs config.allowAliases {
# EOL
sdk_2_1 = throw "Dotnet SDK 2.1 is EOL, please use 6.0 (LTS) or 7.0 (Current)";
sdk_2_2 = throw "Dotnet SDK 2.2 is EOL, please use 6.0 (LTS) or 7.0 (Current)";
sdk_3_0 = throw "Dotnet SDK 3.0 is EOL, please use 6.0 (LTS) or 7.0 (Current)";
sdk_3_1 = throw "Dotnet SDK 3.1 is EOL, please use 6.0 (LTS) or 7.0 (Current)";
sdk_5_0 = throw "Dotnet SDK 5.0 is EOL, please use 6.0 (LTS) or 7.0 (Current)";
} // dotnet_6_0 // dotnet_7_0 // dotnet_8_0 // dotnet_9_0);
}

View file

@ -0,0 +1,77 @@
# shellcheck shell=bash disable=SC2154
export MSBUILDALWAYSOVERWRITEREADONLYFILES=1
declare -Ag _nugetInputs
addNugetInputs() {
if [[ -d "$1/share/nuget" ]]; then
_nugetInputs[$1]=1
fi
}
addEnvHooks "$targetOffset" addNugetInputs
_linkPackages() {
local -r src="$1"
local -r dest="$2"
local dir
for x in "$src"/*/*; do
dir=$dest/$(basename "$(dirname "$x")")
mkdir -p "$dir"
ln -s "$x" "$dir"/
done
}
createNugetDirs() {
nugetTemp=$PWD/.nuget-temp
export NUGET_PACKAGES=$nugetTemp/packages
nugetSource=$nugetTemp/source
mkdir -p "$NUGET_PACKAGES" "$nugetSource"
dotnet new nugetconfig
if [[ -z ${keepNugetConfig-} ]]; then
dotnet nuget disable source nuget
fi
dotnet nuget add source "$nugetSource" -n _nix
}
configureNuget() {
for x in "${!_nugetInputs[@]}"; do
if [[ -d $x/share/nuget/packages ]]; then
addToSearchPathWithCustomDelimiter ";" NUGET_FALLBACK_PACKAGES "$x/share/nuget/packages"
fi
if [[ -d $x/share/nuget/source ]]; then
_linkPackages "$x/share/nuget/source" "$nugetSource"
fi
done
if [[ -n "${linkNugetPackages-}"
|| -f .config/dotnet-tools.json
|| -f dotnet-tools.json
|| -f paket.dependencies ]]; then
for x in "${!_nugetInputs[@]}"; do
if [[ -d $x/share/nuget/packages ]]; then
@lndir@/bin/lndir -silent "$x/share/nuget/packages" "$NUGET_PACKAGES"
fi
done
fi
if [[ -f paket.dependencies ]]; then
sed -i "s:source .*:source $nugetSource:" paket.dependencies
sed -i "s:remote\:.*:remote\: $nugetSource:" paket.lock
for x in "${!_nugetInputs[@]}"; do
if [[ -d $x/share/nuget/source ]]; then
@lndir@/bin/lndir -silent "$x/share/nuget/source" "$NUGET_PACKAGES"
fi
done
fi
}
if [[ -z ${dontConfigureNuget-} ]]; then
prePhases+=(createNugetDirs)
preConfigurePhases+=(configureNuget)
fi

View file

@ -0,0 +1,8 @@
if [ ! -w "$HOME" ]; then
export HOME=$(mktemp -d) # Dotnet expects a writable home directory for its configuration files
fi
export DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1 # Dont try to expand NuGetFallbackFolder to disk
export DOTNET_NOLOGO=1 # Disables the welcome message
export DOTNET_CLI_TELEMETRY_OPTOUT=1
export DOTNET_SKIP_WORKLOAD_INTEGRITY_CHECK=1 # Skip integrity check on first run, which fails due to read-only directory

View file

@ -32,7 +32,6 @@ let
installPhase = ''
mkdir -p $out
cp -r * $out/
ln -fs ${old.passthru.packages}/* $out/
'';
};
};

View file

@ -0,0 +1,12 @@
{
makeSetupHook,
zip,
strip-nondeterminism,
}:
makeSetupHook {
name = "nuget-package-hook";
substitutions = {
inherit zip;
stripNondeterminism = strip-nondeterminism;
};
} ./nuget-package-hook.sh

View file

@ -0,0 +1,38 @@
# shellcheck shell=bash disable=SC2154
_createNugetSourceInOutput() {
local package version id dir nupkg content
local -a nuspec
shopt -s nullglob
for package in "$prefix"/share/nuget/packages/*/*; do
version=$(basename "$package")
id=$(basename "$(dirname "$package")")
dir="$prefix/share/nuget/source/$id/$version"
nupkg=$dir/$id.$version.nupkg
nuspec=("$package"/*.nuspec)
if [[ -n ${createInstallableNugetSource-} ]]; then
content=.
else
content=$(basename "${nuspec[0]}")
fi
mkdir -p "$dir"
cp "${nuspec[0]}" "$dir/$id.nuspec"
(cd "$package" && @zip@/bin/zip -rq0 "$nupkg" "$content")
@stripNondeterminism@/bin/strip-nondeterminism --type zip "$nupkg"
touch "$nupkg".sha512
done
}
createNugetSource() {
local output
for output in $(getAllOutputNames); do
prefix="${!output}" _createNugetSourceInOutput
done
}
if [[ -z ${dontCreateNugetSource-} ]]; then
postFixupHooks+=(createNugetSource)
fi

View file

@ -1,6 +1,9 @@
{ stdenv
, callPackage
, vmr
, xmlstarlet
, strip-nondeterminism
, zip
}:
let
@ -16,6 +19,12 @@ in {
src = vmr;
dontUnpack = true;
nativeBuildInputs = [
xmlstarlet
strip-nondeterminism
zip
];
outputs = [ "out" "packages" "artifacts" ];
installPhase = ''
@ -26,11 +35,47 @@ in {
mkdir "$out"/bin
ln -s "$out"/dotnet "$out"/bin/dotnet
mkdir "$packages"
# this roughly corresponds to the {sdk,aspnetcore}_packages in ../update.sh
cp -r "$src"/Private.SourceBuilt.Artifacts.*.${targetRid}/*Microsoft.{NET.ILLink.Tasks,NETCore,DotNet,AspNetCore}.*.nupkg "$packages"
mkdir -p "$packages" "$artifacts"
cp -r "$src"/Private.SourceBuilt.Artifacts.*.${targetRid}/* "$artifacts"/
chmod +w -R "$artifacts"
cp -r "$src"/Private.SourceBuilt.Artifacts.*.${targetRid} "$artifacts"
local package
for package in "$artifacts"/*.nupkg; do
local copy
case "$(basename "$package")" in
*Microsoft.NET.* | \
*Microsoft.ILLink.* | \
*Microsoft.Tasks.* | \
*Microsoft.NETCore.* | \
*Microsoft.DotNet.* | \
*Microsoft.AspNetCore.*) copy=1 ;;
*) copy= ;;
esac
if [[ -n $copy ]]; then
echo copying "$package" to packages
xmlstarlet \
sel -t \
-m /_:package/_:metadata \
-v _:id -nl \
-v _:version -nl \
"$package"/*.nuspec \
| tr A-Z a-z | (
read id
read version
mkdir -p "$packages"/share/nuget/packages/"$id"
cp -r "$package" "$packages"/share/nuget/packages/"$id"/"$version"
)
fi
done
for package in "$artifacts"/{,SourceBuildReferencePackages/}*.nupkg; do
echo packing "$package" to artifacts
(cd "$package" && zip -rq0 "$package.tmp" .)
strip-nondeterminism --type zip "$package.tmp"
rm -r "$package"
mv "$package.tmp" "$package"
done
runHook postInstall
'';

View file

@ -1,6 +1,5 @@
{ stdenv
, lib
, dotnetCorePackages
, zlib
, curl
, icu
@ -12,8 +11,6 @@
}:
let
buildRid = dotnetCorePackages.systemToDotnetRid stdenv.buildPlatform.system;
binaryRPath = lib.makeLibraryPath ([
stdenv.cc.cc
zlib
@ -37,13 +34,12 @@ in writeShellScriptBin "patch-nupkgs" (''
if [ "$magic" = $'\177ELF' ]; then return 0; else return 1; fi
}
cd "$1"
for x in *.${buildRid}/* *.${buildRid}.*/*; do
for x in */* */*; do
# .nupkg.metadata is written last, so we know the packages is complete
[[ -d "$x" ]] && [[ -f "$x"/.nupkg.metadata ]] \
&& [[ ! -f "$x"/.nix-patched ]] || continue
echo "Patching package $x"
pushd "$x"
for p in $(find -type f); do
find "$x" -type f -print0 | while IFS= read -rd "" p; do
if [[ "$p" != *.nix-patched ]] \
&& isELF "$p" \
&& patchelf --print-interpreter "$p" &>/dev/null; then
@ -68,19 +64,18 @@ in writeShellScriptBin "patch-nupkgs" (''
mv "$tmp" "$p"
fi
done
touch .nix-patched
popd
touch "$x"/.nix-patched
done
'' + lib.optionalString stdenv.isDarwin ''
for x in microsoft.dotnet.ilcompiler/*; do
# .nupkg.metadata is written last, so we know the packages is complete
[[ -d "$x" ]] && [[ -f "$x"/.nupkg.metadata ]] \
&& [[ ! -f "$x"/.nix-patched ]] || continue
&& [[ ! -f "$x"/.nix-patched-ilcompiler ]] || continue
echo "Patching package $x"
pushd "$x"
sed -i 's: -no_code_signature_warning::g' build/Microsoft.NETCore.Native.targets
sed -i 's:Include="-ld_classic"::g' build/Microsoft.NETCore.Native.Unix.targets
touch .nix-patched
touch .nix-patched-ilcompiler
popd
done
'')

View file

@ -3,13 +3,13 @@
, callPackage
, lib
, writeShellScript
, pkgsBuildHost
, mkNugetDeps
, nix
, cacert
, nuget-to-nix
, dotnetCorePackages
, xmlstarlet
, patchNupkgs
, releaseManifestFile
, tarballHash
@ -21,21 +21,24 @@ let
mkPackages = callPackage ./packages.nix;
mkVMR = callPackage ./vmr.nix;
dotnetSdk = pkgsBuildHost.callPackage bootstrapSdk {};
patchNupkgs = pkgsBuildHost.callPackage ./patch-nupkgs.nix {};
dotnetSdk = callPackage bootstrapSdk {};
deps = mkNugetDeps {
name = "dotnet-vmr-deps";
sourceFile = depsFile;
};
sdkPackages = dotnetSdk.packages.override {
installable = true;
};
vmr = (mkVMR {
inherit releaseManifestFile tarballHash dotnetSdk;
}).overrideAttrs (old: rec {
prebuiltPackages = mkNugetDeps {
name = "dotnet-vmr-deps";
sourceFile = depsFile;
installable = true;
};
nativeBuildInputs =
@ -52,7 +55,9 @@ let
'';
postConfigure = old.postConfigure or "" + ''
[[ ! -v prebuiltPackages ]] || ln -sf "$prebuiltPackages"/* prereqs/packages/prebuilt/
[[ ! -v prebuiltPackages ]] || \
ln -sf "$prebuiltPackages"/share/nuget/source/*/*/*.nupkg prereqs/packages/prebuilt/
ln -sf "${sdkPackages}"/share/nuget/source/*/*/*.nupkg prereqs/packages/prebuilt/
'';
buildFlags =

View file

@ -1,7 +1,6 @@
{ stdenv
, lib
, callPackage
, pkgsBuildHost
, releaseManifestFile
, tarballHash
@ -13,7 +12,7 @@ let
mkPackages = callPackage ./packages.nix;
mkVMR = callPackage ./vmr.nix;
stage0 = pkgsBuildHost.callPackage ./stage0.nix args;
stage0 = callPackage ./stage0.nix args;
vmr = (mkVMR {
inherit releaseManifestFile tarballHash;

View file

@ -25,6 +25,8 @@
, xmlstarlet
, nodejs
, callPackage
, unzip
, yq
, dotnetSdk
, releaseManifestFile
@ -78,6 +80,8 @@ in stdenv.mkDerivation rec {
pkg-config
python3
xmlstarlet
unzip
yq
]
++ lib.optionals (lib.versionAtLeast version "9") [
nodejs
@ -353,6 +357,7 @@ in stdenv.mkDerivation rec {
typeset -f isScript patchShebangs > src/aspnetcore/patch-shebangs.sh
'';
dontConfigureNuget = true; # NUGET_PACKAGES breaks the build
dontUseCmakeConfigure = true;
# https://github.com/NixOS/nixpkgs/issues/38991
@ -410,6 +415,16 @@ in stdenv.mkDerivation rec {
done
popd
local -r unpacked="$PWD/.unpacked"
for nupkg in $out/Private.SourceBuilt.Artifacts.*.${targetRid}/{,SourceBuildReferencePackages/}*.nupkg; do
rm -rf "$unpacked"
unzip -qd "$unpacked" "$nupkg"
chmod -R +rw "$unpacked"
rm "$nupkg"
mv "$unpacked" "$nupkg"
# TODO: should we fix executable flags here? see dotnetInstallHook
done
runHook postInstall
'';
@ -418,7 +433,12 @@ in stdenv.mkDerivation rec {
stripDebugList = [ "." ];
# stripping dlls results in:
# Failed to load System.Private.CoreLib.dll (error code 0x8007000B)
stripExclude = [ "*.dll" ];
# stripped crossgen2 results in:
# Failure processing application bundle; possible file corruption.
# this needs to be a bash array
preFixup = ''
stripExclude=(\*.dll crossgen2)
'';
passthru = {
inherit releaseManifest buildRid targetRid;

View file

@ -162,7 +162,13 @@ stdenv.mkDerivation ({
--replace "#include <assert.h>" ""
substituteInPlace lib/builtins/cpu_model${lib.optionalString (lib.versionAtLeast version "18") "/x86"}.c \
--replace "#include <assert.h>" ""
''));
'')) + lib.optionalString (lib.versionAtLeast release_version "13" && lib.versionOlder release_version "14") ''
# https://github.com/llvm/llvm-project/blob/llvmorg-14.0.6/libcxx/utils/merge_archives.py
# Seems to only be used in v13 though it's present in v12 and v14, and dropped in v15.
substituteInPlace ../libcxx/utils/merge_archives.py \
--replace-fail "import distutils.spawn" "from shutil import which as find_executable" \
--replace-fail "distutils.spawn." ""
'';
# Hack around weird upsream RPATH bug
postInstall = lib.optionalString (stdenv.hostPlatform.isDarwin) ''

View file

@ -27,13 +27,20 @@ self: super: {
process = self.process_1_6_20_0;
}));
Cabal_3_12_0_0 = doDistribute (super.Cabal_3_12_0_0.override ({
Cabal-syntax = self.Cabal-syntax_3_12_0_0;
Cabal_3_12_1_0 = doDistribute (super.Cabal_3_12_1_0.override ({
Cabal-syntax = self.Cabal-syntax_3_12_1_0;
} // lib.optionalAttrs (lib.versionOlder self.ghc.version "9.2.5") {
# Use process core package when possible
process = self.process_1_6_20_0;
}));
# hackage-security == 0.6.2.6 has a wider support range in theory, but it only
# makes sense to use the non Stackage version if we want to use Cabal* >= 3.12
hackage-security_0_6_2_6 = super.hackage-security_0_6_2_6.override {
Cabal = self.Cabal_3_12_1_0;
Cabal-syntax = self.Cabal-syntax_3_12_1_0;
};
# cabal-install needs most recent versions of Cabal and Cabal-syntax,
# so we need to put some extra work for non-latest GHCs
inherit (
@ -41,25 +48,10 @@ self: super: {
# !!! Use cself/csuper inside for the actual overrides
cabalInstallOverlay = cself: csuper:
{
# Needs to be downgraded compared to Stackage LTS 21
resolv = cself.resolv_0_1_2_0;
hackage-security = self.hackage-security_0_6_2_6;
} // lib.optionalAttrs (lib.versionOlder self.ghc.version "9.10") {
Cabal = cself.Cabal_3_10_3_0;
Cabal-syntax = cself.Cabal-syntax_3_10_3_0;
} // lib.optionalAttrs (lib.versionOlder self.ghc.version "9.4") {
# We need at least directory >= 1.3.7.0. Using the latest version
# 1.3.8.* is not an option since it causes very annoying dependencies
# on newer versions of unix and filepath than GHC 9.2 ships
directory = cself.directory_1_3_7_1;
# GHC 9.2.5 starts shipping 1.6.16.0 which is required by
# cabal-install, but we need to recompile process even if the correct
# version is available to prevent inconsistent dependencies:
# process depends on directory.
process = cself.process_1_6_20_0;
# Prevent dependency on doctest which causes an inconsistent dependency
# due to depending on ghc which depends on directory etc.
vector = dontCheck csuper.vector;
Cabal = cself.Cabal_3_12_1_0;
Cabal-syntax = cself.Cabal-syntax_3_12_1_0;
};
in
{
@ -420,7 +412,7 @@ self: super: {
name = "git-annex-${super.git-annex.version}-src";
url = "git://git-annex.branchable.com/";
rev = "refs/tags/" + super.git-annex.version;
hash = "sha256-D/lvNe2pa1vZvMEsVV4SuwPAJd2Aer0yA3bRae6j3jQ=";
hash = "sha256-/NbwuVTx517DGyr2k1AdQqJaVEc8lrtuO9EliiCZdps=";
# delete android and Android directories which cause issues on
# darwin (case insensitive directory). Since we don't need them
# during the build process, we can delete it to prevent a hash
@ -497,7 +489,6 @@ self: super: {
# Tests require older versions of tasty.
hzk = dontCheck super.hzk;
resolv_0_1_2_0 = doJailbreak super.resolv_0_1_2_0;
# Test suite doesn't compile with 9.6, 9.8
# https://github.com/sebastiaanvisser/fclabels/issues/45
@ -578,9 +569,8 @@ self: super: {
HerbiePlugin = dontCheck super.HerbiePlugin;
wai-cors = dontCheck super.wai-cors;
# 2022-01-29: Tests fail: https://github.com/psibi/streamly-bytestring/issues/27
# 2022-02-14: Strict upper bound: https://github.com/psibi/streamly-bytestring/issues/30
streamly-bytestring = dontCheck (doJailbreak super.streamly-bytestring);
streamly-bytestring = doJailbreak super.streamly-bytestring;
# 2024-05-18: Upstream tests against a different pandoc version
pandoc-crossref = dontCheck super.pandoc-crossref;
@ -793,9 +783,6 @@ self: super: {
# 2023-06-26: Test failure: https://hydra.nixos.org/build/224869905
comfort-blas = dontCheck super.comfort-blas;
# 2022-06-26: Too strict lower bound on semialign.
trie-simple = doJailbreak super.trie-simple;
# These test suites run for ages, even on a fast machine. This is nuts.
Random123 = dontCheck super.Random123;
systemd = dontCheck super.systemd;
@ -1304,6 +1291,10 @@ self: super: {
'';
}) super.hpack;
# Upstream stack-0.15.7 is compiled with hpack-0.36.0, and we make sure to
# keep the same hpack version in Nixpkgs.
stack = super.stack.override { hpack = self.hpack_0_36_0; };
# hslua has tests that break when using musl.
# https://github.com/hslua/hslua/issues/106
hslua-core = if pkgs.stdenv.hostPlatform.isMusl then dontCheck super.hslua-core else super.hslua-core;
@ -1554,9 +1545,6 @@ self: super: {
# https://github.com/commercialhaskell/stackage/issues/6884
persistent-sqlite = dontCheck super.persistent-sqlite;
# 2021-12-26: Too strict bounds on doctest
polysemy-plugin = doJailbreak super.polysemy-plugin;
# Needs matching lsp-types
lsp_2_4_0_0 = super.lsp_2_4_0_0.override {
lsp-types = self.lsp-types_2_1_1_0;
@ -1880,10 +1868,6 @@ self: super: {
})
] super.binary-strict;
# 2020-11-15: nettle tests are pre MonadFail change
# https://github.com/stbuehler/haskell-nettle/issues/10
nettle = dontCheck super.nettle;
# The tests for semver-range need to be updated for the MonadFail change in
# ghc-8.8:
# https://github.com/adnelson/semver-range/issues/15
@ -1942,22 +1926,12 @@ self: super: {
(self.generateOptparseApplicativeCompletions [ "hci" ])
];
pipes-aeson = appendPatches [
# Dependency of the aeson-2 patch
(fetchpatch {
name = "pipes-aeson-add-loop.patch";
url = "https://github.com/k0001/pipes-aeson/commit/d22133b4a678edbb52bcaec5079dc88ccc0de1d3.patch";
sha256 = "sha256-5o5ys1P1+QB4rjLCYok5AcPRWCtRiecP/TqCFm8ulVY=";
includes = ["src/Pipes/Aeson.hs" "src/Pipes/Aeson/Internal.hs" "src/Pipes/Aeson/Unchecked.hs"];
})
# https://github.com/k0001/pipes-aeson/pull/20
(fetchpatch {
name = "pipes-aeson-aeson-2.patch";
url = "https://github.com/hercules-ci/pipes-aeson/commit/ac735c9cd459c6ef51ba82325d1c55eb67cb7b2c.patch";
sha256 = "sha256-viWZ6D5t79x50RXiOjP6UeQ809opgNFYZOP+h+1KJh0=";
includes = ["src/Pipes/Aeson.hs" "src/Pipes/Aeson/Internal.hs" "src/Pipes/Aeson/Unchecked.hs"];
})
] super.pipes-aeson;
# https://github.com/k0001/pipes-aeson/pull/21
pipes-aeson = appendPatch (fetchpatch {
url = "https://github.com/k0001/pipes-aeson/commit/08c25865ef557b41d7e4a783f52e655d2a193e18.patch";
relative = "pipes-aeson";
sha256 = "sha256-kFV6CcwKdMq+qSgyc+eIApnaycq5A++pEEVr2A9xvts=";
}) super.pipes-aeson;
# Needs bytestring 0.11
# https://github.com/Gabriella439/Haskell-Pipes-HTTP-Library/pull/17
@ -1971,7 +1945,7 @@ self: super: {
relative = "moto-postgresql";
sha256 = "sha256-f2JVX9VveShCeV+T41RQgacpUoh1izfyHlE6VlErkZM=";
})
] (unmarkBroken super.moto-postgresql);
] super.moto-postgresql;
moto = appendPatches [
# https://gitlab.com/k0001/moto/-/merge_requests/3
@ -2100,7 +2074,7 @@ self: super: {
# Requests latest versions of crypton-connection and tls
darcs = super.darcs.overrideScope (self: super: {
crypton-connection = self.crypton-connection_0_4_0;
crypton-connection = self.crypton-connection_0_4_1;
tls = self.tls_2_0_6;
});
@ -2123,12 +2097,6 @@ self: super: {
# list `modbus` in librarySystemDepends, correct to `libmodbus`
libmodbus = doJailbreak (addExtraLibrary pkgs.libmodbus super.libmodbus);
# 2021-04-02: Outdated optparse-applicative bound is fixed but not realeased on upstream.
trial-optparse-applicative = assert super.trial-optparse-applicative.version == "0.0.0.0"; doJailbreak super.trial-optparse-applicative;
# 2022-12-28: Too strict version bounds on bytestring
iconv = doJailbreak super.iconv;
ginger = doJailbreak super.ginger;
# 2024-05-05 syntax changes: https://github.com/obsidiansystems/haveibeenpwned/pull/9
@ -2181,10 +2149,6 @@ self: super: {
];
};
# 2021-04-09: outdated base and alex-tools
# PR pending https://github.com/glguy/language-lua/pull/6
language-lua = doJailbreak super.language-lua;
# 2021-04-09: too strict time bound
# PR pending https://github.com/zohl/cereal-time/pull/2
cereal-time = doJailbreak super.cereal-time;
@ -2389,10 +2353,6 @@ self: super: {
# https://github.com/muesli4/table-layout/issues/16
table-layout = doJailbreak super.table-layout;
# 2021-06-20: Outdated upper bounds
# https://github.com/Porges/email-validate-hs/issues/58
email-validate = doJailbreak super.email-validate;
# https://github.com/plow-technologies/hspec-golden-aeson/issues/17
hspec-golden-aeson = dontCheck super.hspec-golden-aeson;
@ -2409,9 +2369,6 @@ self: super: {
# 2021-08-18: streamly-posix was released with hspec 2.8.2, but it works with older versions too.
streamly-posix = doJailbreak super.streamly-posix;
# 2022-12-30: Restrictive upper bound on optparse-applicative
retrie = doJailbreak super.retrie;
# 2022-08-30 Too strict bounds on finite-typelits
# https://github.com/jumper149/blucontrol/issues/1
blucontrol = doJailbreak super.blucontrol;
@ -2561,7 +2518,7 @@ self: super: {
validation = doJailbreak super.validation;
# 2022-03-16: strict upper bounds https://github.com/monadfix/shower/issues/18
shower = doJailbreak (dontCheck super.shower);
shower = doJailbreak super.shower;
# Test suite isn't supposed to succeed yet, apparently…
# https://github.com/andrewufrank/uniform-error/blob/f40629ad119e90f8dae85e65e93d7eb149bddd53/test/Uniform/Error_test.hs#L124
@ -2614,9 +2571,6 @@ self: super: {
# 2022-02-25: Unmaintained and to strict upper bounds
paths = doJailbreak super.paths;
# 2022-02-26: https://github.com/emilypi/base64/issues/39
base64 = dontCheck super.base64;
# 2022-03-16: Upstream stopped updating bounds https://github.com/haskell-hvr/base-noprelude/pull/15
base-noprelude = doJailbreak super.base-noprelude;
@ -2648,9 +2602,6 @@ self: super: {
sha256 = "sha256-iHiF4EWL/GjJFnr/6aR+yMZKLMLAZK+gsgSxG8YaeDI=";
}) super.records-sop;
# Need https://github.com/well-typed/large-records/pull/151
large-generics = doJailbreak super.large-generics;
# Fix build failures for ghc 9 (https://github.com/mokus0/polynomial/pull/20)
polynomial = appendPatch (fetchpatch {
name = "haskell-polynomial.20.patch";
@ -2736,6 +2687,14 @@ self: super: {
lib.pipe
(super.purescript.overrideScope purescriptOverlay)
([
# https://github.com/purescript/purescript/pull/4547
(appendPatches [
(pkgs.fetchpatch {
name = "purescript-import-fix";
url = "https://github.com/purescript/purescript/commit/c610ec18391139a67dc9dcf19233f57d2c5413f7.patch";
hash = "sha256-7s/ygzAFJ1ocZIj3OSd3TbsmGki46WViPIZOU1dfQFg=";
})
])
# PureScript uses nodejs to run tests, so the tests have been disabled
# for now. If someone is interested in figuring out how to get this
# working, it seems like it might be possible.
@ -2748,15 +2707,29 @@ self: super: {
(self.generateOptparseApplicativeCompletions [ "purs" ])
]);
purenix = super.purenix.overrideScope purescriptOverlay;
purenix =
lib.pipe
(super.purenix.overrideScope purescriptOverlay)
[
(appendPatches [
# https://github.com/purenix-org/purenix/pull/63
(pkgs.fetchpatch {
name = "purenix-purescript-0_15_12";
url = "https://github.com/purenix-org/purenix/commit/2dae563f887c7c8daf3dd3e292ee3580cb70d528.patch";
hash = "sha256-EZXf95BJINyqnRb2t/Ao/9C8ttNp3A27rpKiEKJjO6Y=";
})
(pkgs.fetchpatch {
name = "purenix-import-fix";
url = "https://github.com/purenix-org/purenix/commit/f1890690264e7e5ce7f5b0a32d73d910ce2cbd73.patch";
hash = "sha256-MRITcNOiaWmzlTd9l7sIz/LhlnpW8T02CXdcc1qQt3c=";
})
])
];
})
purescript
purenix
;
# 2022-11-05: https://github.com/ysangkok/haskell-tzdata/issues/3
tzdata = dontCheck super.tzdata;
# We provide newer dependencies than upstream expects.
swarm = doJailbreak super.swarm;
@ -2878,6 +2851,27 @@ self: super: {
# https://github.com/brandonchinn178/tasty-autocollect/issues/54
tasty-autocollect = dontCheck super.tasty-autocollect;
# https://github.com/UnkindPartition/tasty/pull/420#issuecomment-2187406691
# Note also 1.5.1 was faux-revoked because of this. See
# https://github.com/UnkindPartition/tasty/issues/426
tasty_1_5_1 = lib.pipe super.tasty_1_5_1 [
(appendPatch
(fetchpatch2 {
name = "tasty-1.5.1-revert-cr-sufficient-to-clear-line";
url = "https://github.com/UnkindPartition/tasty/commit/b152a0bc63166a4592e1f3639ef09e78a43f2b57.diff";
hash = "sha256-tlFCyEnIp8geNlJSkye32tUOaPMwkdqLHBMzpAwSDVQ=";
revert = true;
stripLen = 1;
})
)
(overrideCabal
(drv: assert drv.revision == "1"; {
revision = null;
editedCabalFile = null;
})
)
];
postgrest = lib.pipe super.postgrest [
# 2023-12-20: New version needs extra dependencies
(addBuildDepends [ self.extra self.fuzzyset_0_2_4 self.cache self.timeit ])
@ -3100,27 +3094,37 @@ self: super: {
hash = "sha256-JxraFWzErJT4EhELa3PWBGHaLT9OLgEPNSnxwpdpHd0=";
}) (doJailbreak super.argon2); # Unmaintained
safe-exceptions = overrideCabal (drv: {
# Fix strictDeps build error "could not execute: hspec-discover"
testToolDepends = drv.testToolDepends or [] ++ [ self.hspec-discover ];
}) super.safe-exceptions;
# Apply patch to use v.4.0.2
push-notify-apn = appendPatch (
fetchpatch {
url = "https://github.com/digitallyinduced/push-notify-apn/commit/e54d40516f1b8f912a74df75256bb6bacc931943.patch";
hash = "sha256-gH03Z/eDXUeIiAO+hIFxclekBHFAnukd+fgUl39g5cw";
}
) super.push-notify-apn;
# 2024-07-09: zinza has bumped their QuickCheck and tasty dependencies beyond stackage lts.
# Can possibly be removed once QuickCheck >= 2.15 and tasty >= 1.5
zinza = dontCheck super.zinza;
# Python 3.12 breaks unicode C-API. Requires an upstream fix in the CPython
# package to support Python > 3.12 API. Thus, should be removed at next CPython
# Hackage release.
cpython = super.cpython.override {
python3 = pkgs.python311;
};
# Doesn't officially support hedgehog > 1.3 yet: https://github.com/coot/free-algebras/pull/33
free-algebras = doJailbreak super.free-algebras;
# https://github.com/haskell-works/avro/pull/195
avro = appendPatch (pkgs.fetchpatch {
url = "https://github.com/haskell-works/avro/commit/5f6eb1ec8c8bac325d84b44757d4e2f8608d6939.patch";
sha256 = "sha256-1QEaoO8BTdvfFzMrybrf0v7cK0NbYrWOj4Mqexr+ylc=";
}) super.avro;
pdftotext = overrideCabal (drv: {
postPatch = ''
# Fixes https://todo.sr.ht/~geyaeb/haskell-pdftotext/6
substituteInPlace pdftotext.cabal --replace-quiet c-sources cxx-sources
# Fix cabal ignoring cxx because the cabal format version is too old
substituteInPlace pdftotext.cabal --replace-quiet ">=1.10" 2.2
# Fix wrong license name that breaks recent cabal version
substituteInPlace pdftotext.cabal --replace-quiet BSD3 BSD-3-Clause
'' + (drv.postPatch or "");
}) (doJailbreak (addExtraLibrary pkgs.pkg-config (addExtraLibrary pkgs.poppler super.pdftotext)));
# 2024-07-27: building test component requires non-trivial custom build steps
# https://github.com/awakesecurity/proto3-suite/blob/bec9d40e2767143deed5b2d451197191f1d8c7d5/nix/overlays/haskell-packages.nix#L311
proto3-suite = lib.pipe super.proto3-suite [
dontCheck # Hackage release trails a good deal behind master
doJailbreak
];
} // import ./configuration-tensorflow.nix {inherit pkgs haskellLib;} self super

View file

@ -79,6 +79,10 @@ self: super: ({
proteaaudio = addExtraLibrary darwin.apple_sdk.frameworks.AudioToolbox super.proteaaudio;
# issues finding libcharset.h without libiconv in buildInputs on darwin.
with-utf8 = addExtraLibrary pkgs.libiconv super.with-utf8;
with-utf8_1_1_0_0 = addExtraLibrary pkgs.libiconv super.with-utf8_1_1_0_0;
# the system-fileio tests use canonicalizePath, which fails in the sandbox
system-fileio = dontCheck super.system-fileio;
@ -341,9 +345,11 @@ self: super: ({
libraryFrameworkDepends = with pkgs.buildPackages.darwin.apple_sdk.frameworks; [ Cocoa WebKit ];
libraryHaskellDepends = with self; [ aeson data-default jsaddle ]; # cabal2nix doesn't add darwin-only deps
}) super.jsaddle-wkwebview;
reflex-dom = overrideCabal (drv: {
libraryHaskellDepends = with self; [ base bytestring jsaddle-wkwebview reflex reflex-dom-core text ]; # cabal2nix doesn't add darwin-only deps
}) super.reflex-dom;
# cabal2nix doesn't add darwin-only deps
reflex-dom = addBuildDepend self.jsaddle-wkwebview (super.reflex-dom.override (drv: {
jsaddle-webkit2gtk = null;
}));
# Remove a problematic assert, the length is sometimes 1 instead of 2 on darwin
di-core = overrideCabal (drv: {

View file

@ -3,6 +3,7 @@
with haskellLib;
# cabal2nix doesn't properly add dependencies conditional on arch(javascript)
(self: super: {
ghcjs-base = addBuildDepends (with self; [
aeson
@ -19,4 +20,8 @@ with haskellLib;
ghcjs-dom-javascript = addBuildDepend self.ghcjs-base super.ghcjs-dom-javascript;
jsaddle = addBuildDepend self.ghcjs-base super.jsaddle;
jsaddle-dom = addBuildDepend self.ghcjs-base super.jsaddle-dom;
reflex-dom = super.reflex-dom.override (drv: {
jsaddle-webkit2gtk = null;
});
})

View file

@ -114,6 +114,7 @@ broken-packages:
- ag-pictgen # failure in job https://hydra.nixos.org/build/233252615 at 2023-09-02
- AhoCorasick # failure in job https://hydra.nixos.org/build/233204899 at 2023-09-02
- aig # failure in job https://hydra.nixos.org/build/233199755 at 2023-09-02
- aip-version # failure in job https://hydra.nixos.org/build/267985101 at 2024-07-31
- airbrake # failure in job https://hydra.nixos.org/build/233199319 at 2023-09-02
- air-extra # failure in job https://hydra.nixos.org/build/233250519 at 2023-09-02
- airship # failure in job https://hydra.nixos.org/build/233239011 at 2023-09-02
@ -310,7 +311,6 @@ broken-packages:
- avatar-generator # failure in job https://hydra.nixos.org/build/233214253 at 2023-09-02
- aviation-units # failure in job https://hydra.nixos.org/build/233245762 at 2023-09-02
- avl-static # failure in job https://hydra.nixos.org/build/233199062 at 2023-09-02
- avro # failure in job https://hydra.nixos.org/build/252731168 at 2024-03-16
- avro-piper # failure in job https://hydra.nixos.org/build/233197510 at 2023-09-02
- avr-shake # failure in job https://hydra.nixos.org/build/233223187 at 2023-09-02
- avwx # failure in job https://hydra.nixos.org/build/233258167 at 2023-09-02
@ -1701,6 +1701,7 @@ broken-packages:
- fgl-extras-decompositions # failure in job https://hydra.nixos.org/build/233237744 at 2023-09-02
- fib # failure in job https://hydra.nixos.org/build/233225971 at 2023-09-02
- fibon # failure in job https://hydra.nixos.org/build/233215748 at 2023-09-02
- fields-and-cases # failure in job https://hydra.nixos.org/build/267971589 at 2024-07-31
- fields # failure in job https://hydra.nixos.org/build/233197886 at 2023-09-02
- fieldwise # failure in job https://hydra.nixos.org/build/233202285 at 2023-09-02
- fig # failure in job https://hydra.nixos.org/build/233212262 at 2023-09-02
@ -1825,7 +1826,6 @@ broken-packages:
- franz # failure in job https://hydra.nixos.org/build/252725109 at 2024-03-16
- fraxl # failure in job https://hydra.nixos.org/build/233219345 at 2023-09-02
- freddy # failure in job https://hydra.nixos.org/build/233208999 at 2023-09-02
- free-algebras # failure in job https://hydra.nixos.org/build/252728477 at 2024-03-16
- free-applicative-t # failure in job https://hydra.nixos.org/build/252715728 at 2024-03-16
- free-concurrent # failure in job https://hydra.nixos.org/build/233257070 at 2023-09-02
- free-foil # failure in job https://hydra.nixos.org/build/265268910 at 2024-07-14
@ -2083,6 +2083,7 @@ broken-packages:
- GLMatrix # failure in job https://hydra.nixos.org/build/233202880 at 2023-09-02
- global-variables # failure in job https://hydra.nixos.org/build/233204607 at 2023-09-02
- glob-posix # failure in job https://hydra.nixos.org/build/233253059 at 2023-09-02
- globus # failure in job https://hydra.nixos.org/build/267976018 at 2024-07-31
- GlomeTrace # failure in job https://hydra.nixos.org/build/233211872 at 2023-09-02
- gloss-banana # failure in job https://hydra.nixos.org/build/234464253 at 2023-09-13
- gloss-examples # failure in job https://hydra.nixos.org/build/252718124 at 2024-03-16
@ -2173,6 +2174,7 @@ broken-packages:
- growler # failure in job https://hydra.nixos.org/build/233207497 at 2023-09-02
- grow-vector # failure in job https://hydra.nixos.org/build/233196279 at 2023-09-02
- grpc-api-etcd # failure in job https://hydra.nixos.org/build/233239600 at 2023-09-02
- grpc-haskell-core # failure in job https://hydra.nixos.org/build/267997256 at 2024-07-31
- gsl-random # failure in job https://hydra.nixos.org/build/233191503 at 2023-09-02
- gstreamer # failure in job https://hydra.nixos.org/build/233239224 at 2023-09-02
- GTALib # failure in job https://hydra.nixos.org/build/233250568 at 2023-09-02
@ -2192,6 +2194,7 @@ broken-packages:
- gym-http-api # failure in job https://hydra.nixos.org/build/233219968 at 2023-09-02
- h2048 # failure in job https://hydra.nixos.org/build/233231384 at 2023-09-02
- h2c # failure in job https://hydra.nixos.org/build/233196032 at 2023-09-02
- h3-hs # failure in job https://hydra.nixos.org/build/267984231 at 2024-07-31
- haar # failure in job https://hydra.nixos.org/build/233217259 at 2023-09-02
- HABQT # failure in job https://hydra.nixos.org/build/233256547 at 2023-09-02
- hack2-contrib # failure in job https://hydra.nixos.org/build/233251090 at 2023-09-02
@ -2343,6 +2346,7 @@ broken-packages:
- haskelldb-wx # failure in job https://hydra.nixos.org/build/233197525 at 2023-09-02
- haskell-disque # failure in job https://hydra.nixos.org/build/233226200 at 2023-09-02
- haskell-docs-cli # failure in job https://hydra.nixos.org/build/252718877 at 2024-03-16
- haskell-ffprobe # failure in job https://hydra.nixos.org/build/267973417 at 2024-07-31
- HaskellForMaths # failure in job https://hydra.nixos.org/build/233237608 at 2023-09-02
- haskell-formatter # failure in job https://hydra.nixos.org/build/233237167 at 2023-09-02
- haskell-generate # failure in job https://hydra.nixos.org/build/233197927 at 2023-09-02
@ -2601,6 +2605,7 @@ broken-packages:
- historian # failure in job https://hydra.nixos.org/build/233210703 at 2023-09-02
- hist-pl-types # failure in job https://hydra.nixos.org/build/233245977 at 2023-09-02
- hit-on # failure in job https://hydra.nixos.org/build/233233939 at 2023-09-02
- hix # failure in job https://hydra.nixos.org/build/267986775 at 2024-07-31
- HJavaScript # failure in job https://hydra.nixos.org/build/233191718 at 2023-09-02
- hjcase # failure in job https://hydra.nixos.org/build/233195095 at 2023-09-02
- hjs # failure in job https://hydra.nixos.org/build/233215541 at 2023-09-02
@ -3405,7 +3410,6 @@ broken-packages:
- language-webidl # failure in job https://hydra.nixos.org/build/233194656 at 2023-09-02
- laop # failure in job https://hydra.nixos.org/build/233204106 at 2023-09-02
- LargeCardinalHierarchy # failure in job https://hydra.nixos.org/build/233250339 at 2023-09-02
- large-records
- Lastik # failure in job https://hydra.nixos.org/build/233194460 at 2023-09-02
- latest-npm-version # failure in job https://hydra.nixos.org/build/233239108 at 2023-09-02
- latex-formulae-image # failure in job https://hydra.nixos.org/build/233251243 at 2023-09-02
@ -3912,6 +3916,7 @@ broken-packages:
- monoids # failure in job https://hydra.nixos.org/build/233231684 at 2023-09-02
- monomer-hagrid # failure in job https://hydra.nixos.org/build/252729072 at 2024-03-16
- monopati # failure in job https://hydra.nixos.org/build/233234119 at 2023-09-02
- months # failure in job https://hydra.nixos.org/build/267981052 at 2024-07-31
- monus # failure in job https://hydra.nixos.org/build/233252424 at 2023-09-02
- monus-weighted-search # timeout
- monzo # failure in job https://hydra.nixos.org/build/233254681 at 2023-09-02
@ -4135,6 +4140,7 @@ broken-packages:
- normalization-insensitive # failure in job https://hydra.nixos.org/build/233239612 at 2023-09-02
- no-role-annots # failure in job https://hydra.nixos.org/build/233229589 at 2023-09-02
- notcpp # failure in job https://hydra.nixos.org/build/233216543 at 2023-09-02
- notifications-tray-icon # failure in job https://hydra.nixos.org/build/267969113 at 2024-07-31
- notmuch-haskell # failure in job https://hydra.nixos.org/build/233332618 at 2023-09-02
- not-prelude # failure in job https://hydra.nixos.org/build/233248453 at 2023-09-02
- NoTrace # failure in job https://hydra.nixos.org/build/233229305 at 2023-09-02
@ -4184,6 +4190,7 @@ broken-packages:
- ogma-language-jsonspec # failure in job https://hydra.nixos.org/build/255671054 at 2024-04-16
- ogma-language-smv # failure in job https://hydra.nixos.org/build/233239832 at 2023-09-02
- ogmarkup # failure in job https://hydra.nixos.org/build/233229980 at 2023-09-02
- ohhecs # failure in job https://hydra.nixos.org/build/267987310 at 2024-07-31
- ohloh-hs # failure in job https://hydra.nixos.org/build/233228177 at 2023-09-02
- oi # failure in job https://hydra.nixos.org/build/233190838 at 2023-09-02
- okapi # failure in job https://hydra.nixos.org/build/233193822 at 2023-09-02
@ -4432,7 +4439,6 @@ broken-packages:
- pdfinfo # failure in job https://hydra.nixos.org/build/233214432 at 2023-09-02
- pdf-slave-template # failure in job https://hydra.nixos.org/build/233217870 at 2023-09-02
- pdf-toolbox-viewer # failure in job https://hydra.nixos.org/build/233196461 at 2023-09-02
- pdftotext # failure in job https://hydra.nixos.org/build/233242086 at 2023-09-02
- pdynload # failure in job https://hydra.nixos.org/build/233226504 at 2023-09-02
- PeanoWitnesses # failure in job https://hydra.nixos.org/build/233207451 at 2023-09-02
- pecoff # failure in job https://hydra.nixos.org/build/233231268 at 2023-09-02
@ -4523,7 +4529,6 @@ broken-packages:
- pinchot # failure in job https://hydra.nixos.org/build/233230585 at 2023-09-02
- piped # failure in job https://hydra.nixos.org/build/252729903 at 2024-03-16
- Pipe # failure in job https://hydra.nixos.org/build/233243604 at 2023-09-02
- pipes-aeson # failure in job https://hydra.nixos.org/build/252733735 at 2024-03-16
- pipes-async # failure in job https://hydra.nixos.org/build/233194729 at 2023-09-02
- pipes-bgzf # failure in job https://hydra.nixos.org/build/233238921 at 2023-09-02
- pipes-break # failure in job https://hydra.nixos.org/build/233250730 at 2023-09-02
@ -4797,6 +4802,7 @@ broken-packages:
- proxy-kindness # failure in job https://hydra.nixos.org/build/233204762 at 2023-09-02
- proxy-mapping # failure in job https://hydra.nixos.org/build/233227151 at 2023-09-02
- prune-juice # failure in job https://hydra.nixos.org/build/233198633 at 2023-09-02
- psc-ide # failure in job https://hydra.nixos.org/build/267966912 at 2024-07-31
- pseudo-trie # failure in job https://hydra.nixos.org/build/233230636 at 2023-09-02
- psi # failure in job https://hydra.nixos.org/build/233222861 at 2023-09-02
- pstemmer # failure in job https://hydra.nixos.org/build/233241342 at 2023-09-02
@ -4818,7 +4824,7 @@ broken-packages:
- pure-priority-queue # failure in job https://hydra.nixos.org/build/233258014 at 2023-09-02
- purescript-ast # failure in job https://hydra.nixos.org/build/233204157 at 2023-09-02
- purescript-cst # failure in job https://hydra.nixos.org/build/233197178 at 2023-09-02
- purescript # failure in job https://hydra.nixos.org/build/253692073 at 2024-03-31
- purescript-tsd-gen # failure in job https://hydra.nixos.org/build/267964841 at 2024-07-31
- pure-zlib # failure in job https://hydra.nixos.org/build/233241392 at 2023-09-02
- purview # failure in job https://hydra.nixos.org/build/233208821 at 2023-09-02
- pushbullet # failure in job https://hydra.nixos.org/build/233209340 at 2023-09-02
@ -5750,6 +5756,7 @@ broken-packages:
- strict-ghc-plugin # failure in job https://hydra.nixos.org/build/233246830 at 2023-09-02
- strict-impl-params # failure in job https://hydra.nixos.org/build/252732248 at 2024-03-16
- strictly # failure in job https://hydra.nixos.org/build/233197142 at 2023-09-02
- strict-optics # failure in job https://hydra.nixos.org/build/267983907 at 2024-07-31
- strict-tuple-lens # failure in job https://hydra.nixos.org/build/233194548 at 2023-09-02
- strict-writer # failure in job https://hydra.nixos.org/build/252725649 at 2024-03-16
- string-class # failure in job https://hydra.nixos.org/build/233230041 at 2023-09-02
@ -6233,7 +6240,6 @@ broken-packages:
- type-indexed-queues # failure in job https://hydra.nixos.org/build/233197833 at 2023-09-02
- type-interpreter # failure in job https://hydra.nixos.org/build/233192182 at 2023-09-02
- type-int # failure in job https://hydra.nixos.org/build/233245978 at 2023-09-02
- typelet # failure in job https://hydra.nixos.org/build/236691051 at 2023-10-04
- type-level-bst # failure in job https://hydra.nixos.org/build/233202030 at 2023-09-02
- type-level-natural-number-induction # failure in job https://hydra.nixos.org/build/233259499 at 2023-09-02
- type-level-natural-number-operations # failure in job https://hydra.nixos.org/build/233198314 at 2023-09-02
@ -6801,6 +6807,7 @@ broken-packages:
- zendesk-api # failure in job https://hydra.nixos.org/build/233257269 at 2023-09-02
- zeno # failure in job https://hydra.nixos.org/build/233218338 at 2023-09-02
- zeolite-lang # failure in job https://hydra.nixos.org/build/233217146 at 2023-09-02
- zephyr # failure in job https://hydra.nixos.org/build/267966227 at 2024-07-31
- zero # failure in job https://hydra.nixos.org/build/233209286 at 2023-09-02
- zeromq3-haskell # failure in job https://hydra.nixos.org/build/233215557 at 2023-09-02
- zeromq4-clone-pattern # timeout

View file

@ -79,6 +79,7 @@ extra-packages:
- hlint == 3.2.8 # 2022-09-21: needed for hls on ghc 8.8
- hlint == 3.4.1 # 2022-09-21: needed for hls with ghc-lib-parser 9.2
- hnix-store-core < 0.7 # 2023-12-11: required by hnix-store-remote 0.6
- hpack == 0.36.0 # 2024-07-27: required for stack-2.15.7 to match upstream stack release
- hspec < 2.8 # 2022-04-07: Needed for tasty-hspec 1.1.6
- hspec-core < 2.8 # 2022-04-07: Needed for tasty-hspec 1.1.6
- hspec-discover < 2.8 # 2022-04-07: Needed for tasty-hspec 1.1.6
@ -104,7 +105,6 @@ extra-packages:
- ormolu == 0.7.4.0 # 2024-07-07: for ghc 9.8 compat
- primitive-unlifted == 0.1.3.1 # 2024-03-16: Needed for hls on ghc 9.2
- path == 0.9.0 # 2021-12-03: path version building with stackage genvalidity and GHC 9.0.2
- resolv < 0.2 # required to build cabal-install-3.10.1.0 with Stackage LTS 21
- sbv == 7.13 # required for pkgs.petrinizer
- stylish-haskell == 0.14.4.0 # 2022-09-19: needed for hls on ghc 9.2
- tasty-hspec == 1.1.6 # 2022-04-07: Needed for elm-format
@ -129,6 +129,7 @@ extra-packages:
- th-desugar == 1.16 # 2024-06-28: preserve for GHC 9.8
- singletons-th == 3.3 # 2024-06-28: preserve for GHC 9.8
- singletons-base == 3.3 # 2024-06-28: preserve for GHC 9.8
- tls < 2.1.0 # 2024-07-19: requested by darcs == 2.18.3
package-maintainers:
abbradar:
@ -662,6 +663,7 @@ package-maintainers:
- typerep-map
- minio-hs
- smtp-mail
- pdftotext
unsupported-platforms:
Allure: [ platforms.darwin ]
@ -778,6 +780,7 @@ unsupported-platforms:
xmobar: [ platforms.darwin ]
xmonad-extras: [ platforms.darwin ]
xmonad-volume: [ platforms.darwin ]
kmonad: [ platforms.darwin ]
supported-platforms:
AWin32Console: [ platforms.windows ]

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