Merge staging-next into staging

This commit is contained in:
github-actions[bot] 2023-10-09 00:03:06 +00:00 committed by GitHub
commit f1a87e41ca
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
119 changed files with 2096 additions and 1396 deletions

View file

@ -12,5 +12,5 @@ import ../../pkgs/top-level/release.nix
scrubJobs = false;
# No need to evaluate on i686.
supportedSystems = [ "x86_64-linux" ];
limitedSupportedSystems = [];
bootstrapConfigs = [];
}

View file

@ -31,7 +31,7 @@ let
clientConfig."m.homeserver".base_url = baseUrl;
serverConfig."m.server" = "${fqdn}:443";
mkWellKnown = data: ''
add_header Content-Type application/json;
default_type application/json;
add_header Access-Control-Allow-Origin *;
return 200 '${builtins.toJSON data}';
'';

View file

@ -16,6 +16,13 @@ in
Size of disk image. Unit is MB.
'';
};
virtualisation.azureImage.contents = mkOption {
type = with types; listOf attrs;
default = [ ];
description = lib.mdDoc ''
Extra contents to add to the image.
'';
};
};
config = {
system.build.azureImage = import ../../lib/make-disk-image.nix {
@ -26,7 +33,7 @@ in
'';
configFile = ./azure-config-user.nix;
format = "raw";
inherit (cfg) diskSize;
inherit (cfg) diskSize contents;
inherit config lib pkgs;
};

View file

@ -42,13 +42,13 @@ let
in
stdenv.mkDerivation rec {
pname = "strawberry";
version = "1.0.18";
version = "1.0.20";
src = fetchFromGitHub {
owner = "jonaski";
repo = pname;
rev = version;
hash = "sha256-vOay9xPSwgSYurFgL9f4OdBPzGJkV4t+7lJgeCeT0c4=";
hash = "sha256-/utd2uYoxPHQ4kQwA0tZW5HwmN90vXL23EiNFh3wXoE=";
};
# the big strawberry shown in the context menu is *very* much in your face, so use the grey version instead

View file

@ -1,7 +1,6 @@
{ lib
, stdenv
, fetchurl
, intltool
, wrapGAppsHook
, pkg-config
, gtk
@ -14,14 +13,14 @@
stdenv.mkDerivation rec {
pname = "bluefish";
version = "2.2.12";
version = "2.2.14";
src = fetchurl {
url = "mirror://sourceforge/bluefish/bluefish-${version}.tar.bz2";
sha256 = "0slyjx4b4l612505q02crk00pjg9d5wi8gm5gxvcs0f6l9dr1y8d";
sha256 = "sha256-IszfnOTlyWIQY+bPfXOr+wc2q3pyvOCG0Gxc9e4SXt4=";
};
nativeBuildInputs = [ intltool pkg-config wrapGAppsHook ];
nativeBuildInputs = [ pkg-config wrapGAppsHook ];
buildInputs = [
gnome.adwaita-icon-theme
gtk

View file

@ -116,8 +116,8 @@ in rec {
staging = fetchFromGitHub rec {
# https://github.com/wine-staging/wine-staging/releases
inherit (unstable) version;
hash = "sha256-8uxXyt3zu+LuFJbTQD+bv+Zmnzb18Dhlo3ign1lFT2s=";
version = "8.17.1";
hash = "sha256-h36NDFYsI0y8TG41IH10IdF4QEuBkBewQ3knZ9iwDpg=";
owner = "wine-staging";
repo = "wine-staging";
rev = "v${version}";

View file

@ -5,7 +5,7 @@ with callPackage ./util.nix {};
let patch = (callPackage ./sources.nix {}).staging;
build-inputs = pkgNames: extra:
(mkBuildInputs wineUnstable.pkgArches pkgNames) ++ extra;
in assert lib.getVersion wineUnstable == patch.version;
in assert lib.versions.majorMinor wineUnstable.version == lib.versions.majorMinor patch.version;
(lib.overrideDerivation wineUnstable (self: {
buildInputs = build-inputs [ "perl" "util-linux" "autoconf" "gitMinimal" ] self.buildInputs;

View file

@ -23,11 +23,11 @@
stdenv.mkDerivation rec {
pname = "photoqt";
version = "3.3";
version = "3.4";
src = fetchurl {
url = "https://photoqt.org/pkgs/photoqt-${version}.tar.gz";
hash = "sha256-AD+Uww/tmXRiAkmeuHBBollE6Y9L7c+fB882ALVtSXQ=";
hash = "sha256-kVf9+zI9rtEMmS0N4qrN673T/1fnqfcV3hQPnMXMLas=";
};
# error: no member named 'setlocale' in namespace 'std'; did you mean simply 'setlocale'?

View file

@ -1,59 +1,70 @@
{ lib, stdenv, fetchurl, appimageTools, undmg }:
{ lib
, stdenv
, fetchFromGitHub
, electron_22
, makeWrapper
, makeDesktopItem
, copyDesktopItems
}:
let
stdenv.mkDerivation rec {
pname = "passky-desktop";
version = "7.1.0";
version = "8.1.1";
srcs = {
x86_64-linux = fetchurl {
url = "https://github.com/Rabbit-Company/Passky-Desktop/releases/download/v${version}/Passky-${version}.AppImage";
sha256 = "1xnhrmmm018mmyzjq05mhbf673f0n81fh1k3kbfarbgk2kbwpq6y";
};
x86_64-darwin = fetchurl {
url = "https://github.com/Rabbit-Company/Passky-Desktop/releases/download/v${version}/Passky-${version}.dmg";
sha256 = "0mm7hk4v7zvpjdqyw3nhk33x72j0gh3f59bx3q18azlm4dr61r2d";
};
src = fetchFromGitHub {
owner = "Rabbit-Company";
repo = "Passky-Desktop";
rev = "refs/tags/v${version}";
sha256 = "1ma8s1bngjdzclcc4m5pcmavk38sidaskmz7dgfnv84y35si18dr";
};
src = srcs.${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}");
appimageContents = appimageTools.extract { inherit pname version src; };
nativeBuildInputs = [ makeWrapper copyDesktopItems ];
installPhase = ''
runHook preInstall
mkdir -p $out/share/passky
cp -r "." "$out/share/passky/electron"
local resolution
for icon in $out/share/passky/electron/images/icons/icon*.png; do
resolution=''${icon%".png"}
resolution=''${resolution##*/icon-}
mkdir -p "$out/share/icons/hicolor/''${resolution}/apps"
ln -s "$icon" "$out/share/icons/hicolor/''${resolution}/apps/passky.png"
done
mkdir "$out/share/applications"
makeWrapper ${electron_22}/bin/electron "$out/bin/passky" \
--add-flags "$out/share/passky/electron/" \
--add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--ozone-platform-hint=auto --enable-features=WaylandWindowDecorations}}"
runHook postInstall
'';
desktopItems = [
(
makeDesktopItem {
name = "Passky";
type = "Application";
desktopName = "passky";
comment = "Simple, modern, open source and secure password manager.";
icon = "passky";
exec = "passky %U";
categories = [ "Utility" ];
startupWMClass = "Passky";
}
)
];
meta = with lib; {
description = "A simple, modern, lightweight, open source and secure password manager";
homepage = "https://passky.org";
downloadPage = "https://github.com/Rabbit-Company/Passky-Desktop/releases";
changelog = "https://github.com/Rabbit-Company/Passky-Desktop/releases/tag/v${version}";
license = licenses.gpl3Only;
maintainers = with maintainers; [ akkesm ];
platforms = builtins.attrNames srcs;
mainProgram = "passky";
platforms = platforms.unix;
};
linux = appimageTools.wrapType2 {
inherit pname version src meta;
extraInstallCommands = ''
mv $out/bin/${pname}-${version} $out/bin/${pname}
install -D ${appimageContents}/passky.desktop \
$out/share/applications/${pname}.desktop
substituteInPlace $out/share/applications/${pname}.desktop \
--replace 'Exec=AppRun' 'Exec=${pname}'
cp -r ${appimageContents}/usr/share/icons $out/share
'';
};
darwin = stdenv.mkDerivation {
inherit pname version src meta;
nativeBuildInputs = [ undmg ];
sourceRoot = ".";
installPhase = ''
mkdir -p $out/Applications
cp -r *.app $out/Applications
'';
};
in
if stdenv.isDarwin
then darwin
else linux
}

View file

@ -11,16 +11,16 @@
rustPlatform.buildRustPackage rec {
pname = "tui-journal";
version = "0.3.2";
version = "0.3.3";
src = fetchFromGitHub {
owner = "AmmarAbouZor";
repo = "tui-journal";
rev = "v${version}";
hash = "sha256-ASozznbqtQc9bIzxbL94t2CHY2/PeXfR1DKfhTmsX74=";
hash = "sha256-UK9Pq+QNEk+AeG5/ohyCiL+lSpENQfiR/Qm0nQGJGrg=";
};
cargoHash = "sha256-H+j/i0Gfk7O2TLdw5FYHOrLy/jfMSF4cpzMtQ2XJn2M=";
cargoHash = "sha256-TpNnb3usDkNlcejlSkXb5R1fgVlKNYBFAWi1fEn9uzI=";
nativeBuildInputs = [
pkg-config

View file

@ -35,14 +35,14 @@
stdenv.mkDerivation rec {
pname = "workrave";
version = "1.10.51.1";
version = "1.10.52";
src = fetchFromGitHub {
repo = "workrave";
owner = "rcaelers";
rev = with lib;
"v" + concatStringsSep "_" (splitVersion version);
sha256 = "sha256-rx3k4U5igRYxzuVke+x926K1Pso32iGob4Ccp0jdKds=";
sha256 = "sha256-U39zr8XGIDbyY480bla2yTaRQLP3wMrL8RLWjlTa5uY=";
};
nativeBuildInputs = [

View file

@ -17,13 +17,13 @@
stdenv.mkDerivation (finalAttrs: {
pname = "lagrange";
version = "1.16.7";
version = "1.17.0";
src = fetchFromGitHub {
owner = "skyjake";
repo = "lagrange";
rev = "v${finalAttrs.version}";
hash = "sha256-d9QmFXDDeYDR1KFtOyQKfaYvex8TFDiYJUrKEp7H5K8=";
hash = "sha256-UoyCsmZKpRkO4bQt6RwRAceu3+JPD8I8qSf9/uU5Vm4=";
};
nativeBuildInputs = [ cmake pkg-config zip ];

View file

@ -2,16 +2,16 @@
builtins.mapAttrs (pname: { doCheck ? true, mainProgram ? pname, subPackages }: buildGoModule rec {
inherit pname;
version = "3.26.1";
version = "3.26.3";
src = fetchFromGitHub {
owner = "projectcalico";
repo = "calico";
rev = "v${version}";
hash = "sha256-QSebSc4V8DFSKufSB6M4YSuwDJ9rn/6IR6Fr38F8BBQ=";
hash = "sha256-KbtQ5oMZ1ygYwbaKpyAKTprPZ6+ikDbGLafwOShVd6w=";
};
vendorHash = "sha256-SuV7OEt0ZlVt0i8L5rgQd0HJn63XuDHi7+pe+bq+6Yw=";
vendorHash = "sha256-1PBdDpc/cvI5uN6/msxXoMXbx7Osgq12W1VqtZ7XtGE=";
inherit doCheck subPackages;

View file

@ -2,7 +2,7 @@
(callPackage ./generic.nix { }) {
channel = "stable";
version = "2.14.0";
sha256 = "0j4qzmfhi286vsngf1j3s8zhk7xj2saqr27clmjy7ypjszlz5rvm";
vendorHash = "sha256-HxxekAipoWNxcLUSOSwUOXlrWMODw7gS8fcyTD3CMYE=";
version = "2.14.1";
sha256 = "1fxwy8c1zcjwnv055czn9ixalpvq710k0m82633n73a0ixnlmjbv";
vendorHash = "sha256-hOuvIndyGGvNWYmzE0rho/Y30/ilCzeBtL5GEvl9QqU=";
}

View file

@ -5,13 +5,13 @@
buildGoModule rec {
pname = "terragrunt";
version = "0.51.7";
version = "0.52.0";
src = fetchFromGitHub {
owner = "gruntwork-io";
repo = pname;
rev = "refs/tags/v${version}";
hash = "sha256-CZKY4/XQsWWlp6Xgv292LstahueJ9iFhxjB//RxlQOo=";
hash = "sha256-7Qd3Eat133pRthoYZzL9UYmL/cqgCRRWKGuZj9kqfFo=";
};
vendorHash = "sha256-NSrZVLQ3Qbnp94qCV7NbrEav/7LCRbTov+B2vzbuvdM=";

View file

@ -2,16 +2,16 @@
buildGoModule rec {
pname = "tfupdate";
version = "0.7.2";
version = "0.8.0";
src = fetchFromGitHub {
owner = "minamijoyo";
repo = "tfupdate";
rev = "v${version}";
sha256 = "sha256-ii37Au/2jjGdQjc2LnBPkyNNBMbD5XPPo7i3krF33W0=";
sha256 = "sha256-HyDWye7xL0g5vDoGl8FYFXfuMKU4rxAlFawQ5ynqkmc=";
};
vendorHash = "sha256-gtAenM1URr2wFfe2/zCIyNvG7echjIxSxG1hX2vq16g=";
vendorHash = "sha256-oPqAH+i9ryb1Ps1yCkxoPgMmf4RNtFBCeE94vZAEnuo=";
# Tests start http servers which need to bind to local addresses:
# panic: httptest: failed to listen on a port: listen tcp6 [::1]:0: bind: operation not permitted

View file

@ -103,5 +103,6 @@ rustPlatform.buildRustPackage rec {
maintainers = with lib.maintainers; [ otavio oluceps ];
platforms = lib.platforms.unix;
changelog = "https://github.com/raphamorim/rio/blob/v${version}/CHANGELOG.md";
mainProgram = "rio";
};
}

View file

@ -10,7 +10,7 @@
}:
let
version = "5.12.155";
version = "5.12.156";
in
rustPlatform.buildRustPackage {
pname = "git-mit";
@ -20,10 +20,10 @@ rustPlatform.buildRustPackage {
owner = "PurpleBooth";
repo = "git-mit";
rev = "v${version}";
hash = "sha256-Hz/FGPnrY3EqlVuSks82UO6/7uHGEgnGgTddFKnj3AQ=";
hash = "sha256-AY+1zJsH4KgMiOfGDuNGxn5XmmYrWARapqiEZhckako=";
};
cargoHash = "sha256-SiYj05OMUWn0hpJeMLEz846QQLTJuv4dtiSG/ow2yHI=";
cargoHash = "sha256-Rz0bgSlvekay5c/TYCu8FJUN3xnXjVFMa0wcUB72nw8=";
nativeBuildInputs = [ pkg-config ];

View file

@ -10,11 +10,11 @@ let
};
in stdenv.mkDerivation (finalAttrs: {
pname = "filebot";
version = "5.0.3";
version = "5.1.1";
src = fetchurl {
url = "https://web.archive.org/web/20230418205553/https://get.filebot.net/filebot/FileBot_${finalAttrs.version}/FileBot_${finalAttrs.version}-portable.tar.xz";
hash = "sha256-8FTmR+ztR2ugPcgHvfwyh9yfxPiUJdeAVvjjl5cQCy0=";
url = "https://web.archive.org/web/20230917142929/https://get.filebot.net/filebot/FileBot_${finalAttrs.version}/FileBot_${finalAttrs.version}-portable.tar.xz";
hash = "sha256-BCsZBRtT2Ka7WZw7WFnagwoJwIO1L3qpFk/6nlGdpmQ=";
};
unpackPhase = "tar xvf $src";

View file

@ -0,0 +1,31 @@
{ lib
, buildGoModule
, fetchFromGitHub
}:
buildGoModule rec {
pname = "bitmagnet";
version = "0.0.6";
src = fetchFromGitHub {
owner = "bitmagnet-io";
repo = "bitmagnet";
rev = "v${version}";
hash = "sha256-+KAIHg8M2CM+GRRv+htmev8MFe/Y1sJ8p+um/c7kI7c=";
};
vendorHash = "sha256-ydiZ3KMEiVkmdzhHjYYLJ7wuiKmwlMEn4OWrKSOnaSo=";
ldflags = [ "-s" "-w" ];
meta = {
description = "A self-hosted BitTorrent indexer, DHT crawler, and torrent search engine";
longDescription = ''
A self-hosted BitTorrent indexer, DHT crawler, content classifier and torrent search engine with web UI, GraphQL API and Servarr stack integration.
'';
homepage = "https://bitmagnet.io/";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ eclairevoyant ];
mainProgram = "bitmagnet";
};
}

View file

@ -0,0 +1,57 @@
{ lib
, stdenv
, fetchFromGitHub
, glslang
, meson
, ninja
, windows
, pkgsBuildHost
, enableMoltenVKCompat ? false
}:
let
isCross = stdenv.hostPlatform != stdenv.targetPlatform;
in
stdenv.mkDerivation (finalAttrs: {
pname = "dxvk";
version = "1.10.3";
src = fetchFromGitHub {
owner = "doitsujin";
repo = "dxvk";
rev = "v${finalAttrs.version}";
hash = "sha256-T93ZylxzJGprrP+j6axZwl2d3hJowMCUOKNjIyNzkmE=";
};
# These patches are required when using DXVK with Wine on Darwin.
patches = lib.optionals enableMoltenVKCompat [
# Patch DXVK to work with MoltenVK even though it doesnt support some required features.
# Some games work poorly (particularly Unreal Engine 4 games), but others work pretty well.
./darwin-dxvk-compat.patch
# Use synchronization primitives from the C++ standard library to avoid deadlocks on Darwin.
# See: https://www.reddit.com/r/macgaming/comments/t8liua/comment/hzsuce9/
./darwin-thread-primitives.patch
];
nativeBuildInputs = [ glslang meson ninja ];
buildInputs = [ windows.pthreads ];
mesonFlags =
let
arch = if stdenv.is32bit then "32" else "64";
in
[
"--buildtype" "release"
"--prefix" "${placeholder "out"}"
]
++ lib.optionals isCross [ "--cross-file" "build-win${arch}.txt" ];
meta = {
description = "A Vulkan-based translation layer for Direct3D 9/10/11";
homepage = "https://github.com/doitsujin/dxvk";
changelog = "https://github.com/doitsujin/dxvk/releases";
maintainers = [ lib.maintainers.reckenrode ];
license = lib.licenses.zlib;
platforms = lib.platforms.windows;
};
})

View file

@ -0,0 +1,77 @@
{ lib
, stdenv
, fetchFromGitHub
, pkgsBuildHost
, glslang
, meson
, ninja
, windows
, spirv-headers
, vulkan-headers
, SDL2
, glfw
, gitUpdater
, sdl2Support ? true
, glfwSupport ? false
}:
# SDL2 and GLFW support are mutually exclusive.
assert !sdl2Support || !glfwSupport;
let
isCross = stdenv.hostPlatform != stdenv.targetPlatform;
isWindows = stdenv.hostPlatform.uname.system == "Windows";
in
stdenv.mkDerivation (finalAttrs: {
pname = "dxvk";
version = "2.3";
src = fetchFromGitHub {
owner = "doitsujin";
repo = "dxvk";
rev = "v${finalAttrs.version}";
hash = "sha256-RU+B0XfphD5HHW/vSzqHLUaGS3E31d5sOLp3lMmrCB8=";
fetchSubmodules = true; # Needed for the DirectX headers and libdisplay-info
};
postPatch = ''
substituteInPlace "subprojects/libdisplay-info/tool/gen-search-table.py" \
--replace "/usr/bin/env python3" "${lib.getBin pkgsBuildHost.python3}/bin/python3"
'';
nativeBuildInputs = [ glslang meson ninja ];
buildInputs = [ spirv-headers vulkan-headers ]
++ lib.optionals (!isWindows && sdl2Support) [ SDL2 ]
++ lib.optionals (!isWindows && glfwSupport) [ glfw ]
++ lib.optionals isWindows [ windows.pthreads ];
# Build with the Vulkan SDK in nixpkgs.
preConfigure = ''
rm -rf include/spirv/include include/vulkan/include
mkdir -p include/spirv/include include/vulkan/include
'';
mesonFlags =
let
arch = if stdenv.is32bit then "32" else "64";
in
[
"--buildtype" "release"
"--prefix" "${placeholder "out"}"
]
++ lib.optionals isCross [ "--cross-file" "build-win${arch}.txt" ]
++ lib.optional glfwSupport "-Ddxvk_native_wsi=glfw";
doCheck = !isCross;
passthru.updateScript = gitUpdater { rev-prefix = "v"; };
meta = {
description = "A Vulkan-based translation layer for Direct3D 9/10/11";
homepage = "https://github.com/doitsujin/dxvk";
changelog = "https://github.com/doitsujin/dxvk/releases";
maintainers = [ lib.maintainers.reckenrode ];
license = lib.licenses.zlib;
platforms = lib.platforms.windows ++ lib.platforms.linux;
};
})

View file

@ -0,0 +1,58 @@
{ lib
, stdenv
, fetchFromGitHub
, meson
, ninja
, cmake
, pkg-config
, libdbusmenu-gtk3
, gtk-layer-shell
, stb
, wayland-protocols
, wayland-scanner
, bluez
, gtk3
, libpulseaudio
, wayland
}:
stdenv.mkDerivation {
pname = "gbar";
version = "unstable-2023-09-21";
src = fetchFromGitHub {
owner = "scorpion-26";
repo = "gBar";
rev = "96485f408efe411f281fa27dceb6d86399ec7804";
hash = "sha256-4zPvo0JBQOV1qn2X2iI8/JWYEQjFf9sDEICIWSCeaWk=";
fetchSubmodules = true;
};
nativeBuildInputs = [
meson
ninja
cmake
pkg-config
];
buildInputs = [
wayland
wayland-protocols
wayland-scanner
bluez
gtk3
gtk-layer-shell
libpulseaudio
stb
libdbusmenu-gtk3
];
meta = with lib; {
description = "Blazingly fast status bar written with GTK";
homepage = "https://github.com/scorpion-26/gBar";
license = licenses.mit;
maintainers = with maintainers; [ ocfox ];
mainProgram = "gBar";
platforms = platforms.linux;
};
}

View file

@ -5,14 +5,14 @@
python3.pkgs.buildPythonApplication rec {
pname = "poethepoet";
version = "0.24.0";
version = "0.24.1";
pyproject = true;
src = fetchFromGitHub {
owner = "nat-n";
repo = "poethepoet";
rev = "v${version}";
hash = "sha256-fW457R8DvkHdgNcPatEf1nJNjMYTmliiRHrYyAAoZuo=";
hash = "sha256-cIIMwQF0jqGQhNyX2qDBeKZlUNvdC6sBTv5LCxk8MMQ=";
};
nativeBuildInputs = [

View file

@ -3,15 +3,15 @@
, fetchFromGitHub
}:
python3.pkgs.buildPythonApplication rec {
python3.pkgs.toPythonModule (python3.pkgs.buildPythonApplication rec {
pname = "searxng";
version = "unstable-2023-07-19";
version = "unstable-2023-10-01";
src = fetchFromGitHub {
owner = pname;
repo = pname;
rev = "a446dea1bb492eac417de9a900fae7cdf94aeec0";
sha256 = "sha256-iZDaKCkDlp3O3IixWdXVykNRIxas+irG0dWAOU4wycI=";
rev = "d56b31d67473e0970bc457469b0cbec2e35f8b10";
hash = "sha256-/lMjL2dl7UVYRjafFKmV3XsIH6QehUWCozCuBuxFgpQ=";
};
postPatch = ''
@ -73,6 +73,6 @@ python3.pkgs.buildPythonApplication rec {
homepage = "https://github.com/searxng/searxng";
description = "A fork of Searx, a privacy-respecting, hackable metasearch engine";
license = licenses.agpl3Plus;
maintainers = with maintainers; [ SuperSandro2000 ];
maintainers = with maintainers; [ SuperSandro2000 _999eagle ];
};
}
})

View file

@ -6,20 +6,24 @@
, audioSupport ? true
, darwin
, alsa-lib
# passthru.tests.run
, runCommand
, uiua
}:
rustPlatform.buildRustPackage rec {
pname = "uiua";
version = "0.0.16";
version = "0.0.17";
src = fetchFromGitHub {
owner = "uiua-lang";
repo = "uiua";
rev = "refs/tags/${version}";
hash = "sha256-CMuCl4idoO5qIpXdkXBbglsZQBWVT8w9azbn2rRxviA=";
hash = "sha256-vZo3JKvvlL//4P+EqcsDXyamAMnCBARSF/H6OJTayF4=";
};
cargoHash = "sha256-BLP9OGTnksM9NscfhtVWxE0/CqZgkqqlIMgRclCzEzs=";
cargoHash = "sha256-AkBcvFz7mrYUNTokcfoSXwWpw7SupI0+52GL4QXUu24=";
nativeBuildInputs = lib.optionals stdenv.isDarwin [
rustPlatform.bindgenHook
@ -37,6 +41,12 @@ rustPlatform.buildRustPackage rec {
buildFeatures = lib.optional audioSupport "audio";
passthru.tests.run = runCommand "uiua-test-run" {nativeBuildInputs = [uiua];} ''
uiua init;
diff -U3 --color=auto <(uiua run main.ua) <(echo '"Hello, World!"')
touch $out;
'';
meta = with lib; {
description = "A stack-oriented array programming language with a focus on simplicity, beauty, and tacit code";
longDescription = ''

View file

@ -55,16 +55,16 @@ assert (extraParameters != null) -> set != null;
buildNpmPackage rec {
pname = if set != null then "iosevka-${set}" else "iosevka";
version = "27.1.0";
version = "27.2.0";
src = fetchFromGitHub {
owner = "be5invis";
repo = "iosevka";
rev = "v${version}";
hash = "sha256-KXF+ePMEwEUh0fs0cOELRmxOp9hHibDLfRdbffLcZDs=";
hash = "sha256-jRUwXnsYzM4BH+tEM6xuoB3/MFqbnR0deT3Slgkemvs=";
};
npmDepsHash = "sha256-NfR7OUVguMZVmeumf8oRaQK28G42zy6p6K+Hx4e1Kgw=";
npmDepsHash = "sha256-6ikjJScy6iL8lZ9eE2JBz7+egRCNli4XC9hnEalX408=";
nativeBuildInputs = [
remarshal

View file

@ -0,0 +1,188 @@
{ stdenv, lib, fetchurl, fetchpatch, fetchFromGitHub, bash, pkg-config, autoconf, cpio
, file, which, unzip, zip, perl, cups, freetype, alsa-lib, libjpeg, giflib
, libpng, zlib, lcms2, libX11, libICE, libXrender, libXext, libXt, libXtst
, libXi, libXinerama, libXcursor, libXrandr, fontconfig, openjdk21-bootstrap
, ensureNewerSourcesForZipFilesHook
, setJavaClassPath
# TODO(@sternenseemann): gtk3 fails to evaluate in pkgsCross.ghcjs.buildPackages
# which should be fixable, this is a no-rebuild workaround for GHC.
, headless ? stdenv.targetPlatform.isGhcjs
, enableJavaFX ? false, openjfx
, enableGnome2 ? true, gtk3, gnome_vfs, glib, GConf
}:
let
version = {
feature = "21";
interim = "";
build = "35";
};
# when building a headless jdk, also bootstrap it with a headless jdk
openjdk-bootstrap = openjdk21-bootstrap.override { gtkSupport = !headless; };
openjdk = stdenv.mkDerivation {
pname = "openjdk" + lib.optionalString headless "-headless";
version = "${version.feature}${version.interim}+${version.build}";
src = fetchFromGitHub {
owner = "openjdk";
repo = "jdk${version.feature}u";
rev = "jdk-${version.feature}${version.interim}+${version.build}";
hash = "sha256-fA8nRWBuTL87S8mwapmNfCPPQoI2aKHjbHJ6PDN3khs=";
};
nativeBuildInputs = [ pkg-config autoconf unzip ensureNewerSourcesForZipFilesHook ];
buildInputs = [
cpio file which zip perl zlib cups freetype alsa-lib libjpeg giflib
libpng zlib lcms2 libX11 libICE libXrender libXext libXtst libXt libXtst
libXi libXinerama libXcursor libXrandr fontconfig openjdk-bootstrap
] ++ lib.optionals (!headless && enableGnome2) [
gtk3 gnome_vfs GConf glib
];
patches = [
./fix-java-home-jdk21.patch
./read-truststore-from-env-jdk10.patch
./currency-date-range-jdk10.patch
./increase-javadoc-heap-jdk13.patch
./ignore-LegalNoticeFilePlugin-jdk18.patch
# -Wformat etc. are stricter in newer gccs, per
# https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79677
# so grab the work-around from
# https://src.fedoraproject.org/rpms/java-openjdk/pull-request/24
(fetchurl {
url = "https://src.fedoraproject.org/rpms/java-openjdk/raw/06c001c7d87f2e9fe4fedeef2d993bcd5d7afa2a/f/rh1673833-remove_removal_of_wformat_during_test_compilation.patch";
sha256 = "082lmc30x64x583vqq00c8y0wqih3y4r0mp1c4bqq36l22qv6b6r";
})
# Fix build for gnumake-4.4.1:
# https://github.com/openjdk/jdk/pull/12992
(fetchpatch {
name = "gnumake-4.4.1";
url = "https://github.com/openjdk/jdk/commit/9341d135b855cc208d48e47d30cd90aafa354c36.patch";
hash = "sha256-Qcm3ZmGCOYLZcskNjj7DYR85R4v07vYvvavrVOYL8vg=";
})
] ++ lib.optionals (!headless && enableGnome2) [
./swing-use-gtk-jdk13.patch
];
postPatch = ''
chmod +x configure
patchShebangs --build configure
'';
# JDK's build system attempts to specifically detect
# and special-case WSL, and we don't want it to do that,
# so pass the correct platform names explicitly
configurePlatforms = ["build" "host"];
configureFlags = [
"--with-boot-jdk=${openjdk-bootstrap.home}"
"--with-version-build=${version.build}"
"--with-version-opt=nixos"
"--with-version-pre="
"--enable-unlimited-crypto"
"--with-native-debug-symbols=internal"
"--with-libjpeg=system"
"--with-giflib=system"
"--with-libpng=system"
"--with-zlib=system"
"--with-lcms=system"
"--with-stdc++lib=dynamic"
] ++ lib.optional stdenv.isx86_64 "--with-jvm-features=zgc"
++ lib.optional headless "--enable-headless-only"
++ lib.optional (!headless && enableJavaFX) "--with-import-modules=${openjfx}";
separateDebugInfo = true;
env.NIX_CFLAGS_COMPILE = "-Wno-error";
NIX_LDFLAGS = toString (lib.optionals (!headless) [
"-lfontconfig" "-lcups" "-lXinerama" "-lXrandr" "-lmagic"
] ++ lib.optionals (!headless && enableGnome2) [
"-lgtk-3" "-lgio-2.0" "-lgnomevfs-2" "-lgconf-2"
]);
# -j flag is explicitly rejected by the build system:
# Error: 'make -jN' is not supported, use 'make JOBS=N'
# Note: it does not make build sequential. Build system
# still runs in parallel.
enableParallelBuilding = false;
buildFlags = [ "images" ];
installPhase = ''
mkdir -p $out/lib
mv build/*/images/jdk $out/lib/openjdk
# Remove some broken manpages.
rm -rf $out/lib/openjdk/man/ja*
# Mirror some stuff in top-level.
mkdir -p $out/share
ln -s $out/lib/openjdk/include $out/include
ln -s $out/lib/openjdk/man $out/share/man
# IDEs use the provided src.zip to navigate the Java codebase (https://github.com/NixOS/nixpkgs/pull/95081)
ln -s $out/lib/openjdk/lib/src.zip $out/lib/src.zip
# jni.h expects jni_md.h to be in the header search path.
ln -s $out/include/linux/*_md.h $out/include/
# Remove crap from the installation.
rm -rf $out/lib/openjdk/demo
${lib.optionalString headless ''
rm $out/lib/openjdk/lib/{libjsound,libfontmanager}.so
''}
ln -s $out/lib/openjdk/bin $out/bin
'';
preFixup = ''
# Propagate the setJavaClassPath setup hook so that any package
# that depends on the JDK has $CLASSPATH set up properly.
mkdir -p $out/nix-support
#TODO or printWords? cf https://github.com/NixOS/nixpkgs/pull/27427#issuecomment-317293040
echo -n "${setJavaClassPath}" > $out/nix-support/propagated-build-inputs
# Set JAVA_HOME automatically.
mkdir -p $out/nix-support
cat <<EOF > $out/nix-support/setup-hook
if [ -z "\''${JAVA_HOME-}" ]; then export JAVA_HOME=$out/lib/openjdk; fi
EOF
'';
postFixup = ''
# Build the set of output library directories to rpath against
LIBDIRS=""
for output in $(getAllOutputNames); do
if [ "$output" = debug ]; then continue; fi
LIBDIRS="$(find $(eval echo \$$output) -name \*.so\* -exec dirname {} \+ | sort -u | tr '\n' ':'):$LIBDIRS"
done
# Add the local library paths to remove dependencies on the bootstrap
for output in $(getAllOutputNames); do
if [ "$output" = debug ]; then continue; fi
OUTPUTDIR=$(eval echo \$$output)
BINLIBS=$(find $OUTPUTDIR/bin/ -type f; find $OUTPUTDIR -name \*.so\*)
echo "$BINLIBS" | while read i; do
patchelf --set-rpath "$LIBDIRS:$(patchelf --print-rpath "$i")" "$i" || true
patchelf --shrink-rpath "$i" || true
done
done
'';
disallowedReferences = [ openjdk-bootstrap ];
pos = builtins.unsafeGetAttrPos "feature" version;
meta = import ./meta.nix lib version.feature;
passthru = {
architecture = "";
home = "${openjdk}/lib/openjdk";
inherit gtk3;
};
};
in openjdk

View file

@ -1,92 +0,0 @@
{ lib
, stdenv
, fetchurl
, unzip
, setJavaClassPath
, enableJavaFX ? false
}:
let
# Details from https://www.azul.com/downloads/?version=java-11-lts&os=macos&package=jdk
# Note that the latest build may differ by platform
dist = {
x86_64-darwin = {
arch = "x64";
zuluVersion = "11.66.15";
jdkVersion = "11.0.20";
hash =
if enableJavaFX then "sha256-pVgCJkgYTlFeL7nkkMWLeJ/J8ELhgvWb7gzf3erZP7Y="
else "sha256-vKqxHP5Yb651g8bZ0xHGQ4Q1T7JjjrmgEuykw/Gh2f0=";
};
aarch64-darwin = {
arch = "aarch64";
zuluVersion = "11.66.15";
jdkVersion = "11.0.20";
hash =
if enableJavaFX then "sha256-VoZo34SCUU+HHnTl6iLe0QBC+4VDkPP14N98oqSg9EQ="
else "sha256-djK8Kfikt9SSuT87x1p7YWMIlNuF0TZFYDWrKiTTiIU=";
};
}."${stdenv.hostPlatform.system}";
jce-policies = fetchurl {
url = "https://web.archive.org/web/20211126120343/http://cdn.azul.com/zcek/bin/ZuluJCEPolicies.zip";
hash = "sha256-gCGii4ysQbRPFCH9IQoKCCL8r4jWLS5wo1sv9iioZ1o=";
};
javaPackage = if enableJavaFX then "ca-fx-jdk" else "ca-jdk";
jdk = stdenv.mkDerivation rec {
pname = "zulu${dist.zuluVersion}-${javaPackage}";
version = dist.jdkVersion;
src = fetchurl {
url = "https://cdn.azul.com/zulu/bin/zulu${dist.zuluVersion}-${javaPackage}${dist.jdkVersion}-macosx_${dist.arch}.tar.gz";
inherit (dist) hash;
curlOpts = "-H Referer:https://www.azul.com/downloads/zulu/";
};
nativeBuildInputs = [ unzip ];
installPhase = ''
mkdir -p $out
mv * $out
unzip ${jce-policies}
mv -f ZuluJCEPolicies/*.jar $out/lib/security/
# jni.h expects jni_md.h to be in the header search path.
ln -s $out/include/darwin/*_md.h $out/include/
if [ -f $out/LICENSE ]; then
install -D $out/LICENSE $out/share/zulu/LICENSE
rm $out/LICENSE
fi
'';
preFixup = ''
# Propagate the setJavaClassPath setup hook from the JDK so that
# any package that depends on the JDK has $CLASSPATH set up
# properly.
mkdir -p $out/nix-support
printWords ${setJavaClassPath} > $out/nix-support/propagated-build-inputs
# Set JAVA_HOME automatically.
cat <<EOF >> $out/nix-support/setup-hook
if [ -z "\''${JAVA_HOME-}" ]; then export JAVA_HOME=$out; fi
EOF
'';
# fixupPhase is moving the man to share/man which breaks it because it's a
# relative symlink.
postFixup = ''
ln -nsf ../zulu-11.jdk/Contents/Home/man $out/share/man
'';
passthru = {
home = jdk;
};
meta = import ./meta.nix lib version;
};
in
jdk

View file

@ -1,92 +0,0 @@
{ lib
, stdenv
, fetchurl
, unzip
, setJavaClassPath
, enableJavaFX ? false
}:
let
# Details from https://www.azul.com/downloads/?version=java-16-sts&os=macos&package=jdk
# Note that the latest build may differ by platform
dist = {
x86_64-darwin = {
arch = "x64";
zuluVersion = "16.32.15";
jdkVersion = "16.0.2";
hash =
if enableJavaFX then "sha256-6URaSBNHQWLauO//kCuKXb4Z7AqyshWnoeJEyVRKgaY="
else "sha256-NXgBj/KixTknaCYbo3B+rOo11NImH5CDUIU0LhTCtMo=";
};
aarch64-darwin = {
arch = "aarch64";
zuluVersion = "16.32.15";
jdkVersion = "16.0.2";
hash =
if enableJavaFX then "sha256-QuyhIAxUY3Vv1adGihW+LIsXtpDX2taCmFsMFj9o5vs="
else "sha256-3bUfDcLLyahLeURFAgLAVapBZHvqtam8GHbWTA6MQog=";
};
}."${stdenv.hostPlatform.system}";
jce-policies = fetchurl {
url = "https://web.archive.org/web/20211126120343/http://cdn.azul.com/zcek/bin/ZuluJCEPolicies.zip";
hash = "sha256-gCGii4ysQbRPFCH9IQoKCCL8r4jWLS5wo1sv9iioZ1o=";
};
javaPackage = if enableJavaFX then "ca-fx-jdk" else "ca-jdk";
jdk = stdenv.mkDerivation rec {
pname = "zulu${dist.zuluVersion}-${javaPackage}";
version = dist.jdkVersion;
src = fetchurl {
url = "https://cdn.azul.com/zulu/bin/zulu${dist.zuluVersion}-${javaPackage}${dist.jdkVersion}-macosx_${dist.arch}.tar.gz";
inherit (dist) hash;
curlOpts = "-H Referer:https://www.azul.com/downloads/zulu/";
};
nativeBuildInputs = [ unzip ];
installPhase = ''
mkdir -p $out
mv * $out
unzip ${jce-policies}
mv -f ZuluJCEPolicies/*.jar $out/lib/security/
# jni.h expects jni_md.h to be in the header search path.
ln -s $out/include/darwin/*_md.h $out/include/
if [ -f $out/LICENSE ]; then
install -D $out/LICENSE $out/share/zulu/LICENSE
rm $out/LICENSE
fi
'';
preFixup = ''
# Propagate the setJavaClassPath setup hook from the JDK so that
# any package that depends on the JDK has $CLASSPATH set up
# properly.
mkdir -p $out/nix-support
printWords ${setJavaClassPath} > $out/nix-support/propagated-build-inputs
# Set JAVA_HOME automatically.
cat <<EOF >> $out/nix-support/setup-hook
if [ -z "\''${JAVA_HOME-}" ]; then export JAVA_HOME=$out; fi
EOF
'';
# fixupPhase is moving the man to share/man which breaks it because it's a
# relative symlink.
postFixup = ''
ln -nsf ../zulu-${lib.versions.major version}.jdk/Contents/Home/man $out/share/man
'';
passthru = {
home = jdk;
};
meta = import ./meta.nix lib version;
};
in
jdk

View file

@ -1,92 +0,0 @@
{ lib
, stdenv
, fetchurl
, unzip
, setJavaClassPath
, enableJavaFX ? false
}:
let
# Details from https://www.azul.com/downloads/?version=java-17-lts&os=macos&package=jdk
# Note that the latest build may differ by platform
dist = {
x86_64-darwin = {
arch = "x64";
zuluVersion = "17.44.53";
jdkVersion = "17.0.8.1";
hash =
if enableJavaFX then "sha256-9U0XYZRA+LZTQ7eHrT5SWhgcxv43ajC9n9Tj3qPPLWA="
else "sha256-ZART6K/o/+D7Tc60U1+1DbnCg8ZGZe67C6aLGeZfSx8=";
};
aarch64-darwin = {
arch = "aarch64";
zuluVersion = "17.44.53";
jdkVersion = "17.0.8.1";
hash =
if enableJavaFX then "sha256-udYW3nOADclWqVcVtS9dgjSY0w6xf2nsBpLzPmQCYlI="
else "sha256-MUsEVo7Arps2ugPJy9Qq3J4SZfdGeJI7GSl9ZuuE3Mo=";
};
}."${stdenv.hostPlatform.system}";
jce-policies = fetchurl {
url = "https://web.archive.org/web/20211126120343/http://cdn.azul.com/zcek/bin/ZuluJCEPolicies.zip";
hash = "sha256-gCGii4ysQbRPFCH9IQoKCCL8r4jWLS5wo1sv9iioZ1o=";
};
javaPackage = if enableJavaFX then "ca-fx-jdk" else "ca-jdk";
jdk = stdenv.mkDerivation rec {
pname = "zulu${dist.zuluVersion}-${javaPackage}";
version = dist.jdkVersion;
src = fetchurl {
url = "https://cdn.azul.com/zulu/bin/zulu${dist.zuluVersion}-${javaPackage}${dist.jdkVersion}-macosx_${dist.arch}.tar.gz";
inherit (dist) hash;
curlOpts = "-H Referer:https://www.azul.com/downloads/zulu/";
};
nativeBuildInputs = [ unzip ];
installPhase = ''
mkdir -p $out
mv * $out
unzip ${jce-policies}
mv -f ZuluJCEPolicies/*.jar $out/lib/security/
# jni.h expects jni_md.h to be in the header search path.
ln -s $out/include/darwin/*_md.h $out/include/
if [ -f $out/LICENSE ]; then
install -D $out/LICENSE $out/share/zulu/LICENSE
rm $out/LICENSE
fi
'';
preFixup = ''
# Propagate the setJavaClassPath setup hook from the JDK so that
# any package that depends on the JDK has $CLASSPATH set up
# properly.
mkdir -p $out/nix-support
printWords ${setJavaClassPath} > $out/nix-support/propagated-build-inputs
# Set JAVA_HOME automatically.
cat <<EOF >> $out/nix-support/setup-hook
if [ -z "\''${JAVA_HOME-}" ]; then export JAVA_HOME=$out; fi
EOF
'';
# fixupPhase is moving the man to share/man which breaks it because it's a
# relative symlink.
postFixup = ''
ln -nsf ../zulu-${lib.versions.major version}.jdk/Contents/Home/man $out/share/man
'';
passthru = {
home = jdk;
};
meta = import ./meta.nix lib version;
};
in
jdk

View file

@ -1,92 +0,0 @@
{ lib
, stdenv
, fetchurl
, unzip
, setJavaClassPath
, enableJavaFX ? false
}:
let
# Details from https://www.azul.com/downloads/?version=java-18-sts&os=macos&package=jdk
# Note that the latest build may differ by platform
dist = {
x86_64-darwin = {
arch = "x64";
zuluVersion = "18.32.13";
jdkVersion = "18.0.2.1";
hash =
if enableJavaFX then "sha256-ZVZ1gbpJwxTduq2PPOCKqbSl+shq2NTFgqG++OXvFcg="
else "sha256-uHPcyOgxUdTgzmIVRp/awtwve9zSt+1TZNef7DUuoRg=";
};
aarch64-darwin = {
arch = "aarch64";
zuluVersion = "18.32.13";
jdkVersion = "18.0.2.1";
hash =
if enableJavaFX then "sha256-tNx0a1u9iamcN9VFOJ3eqDEA6C204dtIBJZvuAH2Vjk="
else "sha256-jAZDgxtWMq/74yKAxA69oOU0C9nXvKG5MjmZLsK04iM=";
};
}."${stdenv.hostPlatform.system}";
jce-policies = fetchurl {
url = "https://web.archive.org/web/20211126120343/http://cdn.azul.com/zcek/bin/ZuluJCEPolicies.zip";
hash = "sha256-gCGii4ysQbRPFCH9IQoKCCL8r4jWLS5wo1sv9iioZ1o=";
};
javaPackage = if enableJavaFX then "ca-fx-jdk" else "ca-jdk";
jdk = stdenv.mkDerivation rec {
pname = "zulu${dist.zuluVersion}-${javaPackage}";
version = dist.jdkVersion;
src = fetchurl {
url = "https://cdn.azul.com/zulu/bin/zulu${dist.zuluVersion}-${javaPackage}${dist.jdkVersion}-macosx_${dist.arch}.tar.gz";
inherit (dist) hash;
curlOpts = "-H Referer:https://www.azul.com/downloads/zulu/";
};
nativeBuildInputs = [ unzip ];
installPhase = ''
mkdir -p $out
mv * $out
unzip ${jce-policies}
mv -f ZuluJCEPolicies/*.jar $out/lib/security/
# jni.h expects jni_md.h to be in the header search path.
ln -s $out/include/darwin/*_md.h $out/include/
if [ -f $out/LICENSE ]; then
install -D $out/LICENSE $out/share/zulu/LICENSE
rm $out/LICENSE
fi
'';
preFixup = ''
# Propagate the setJavaClassPath setup hook from the JDK so that
# any package that depends on the JDK has $CLASSPATH set up
# properly.
mkdir -p $out/nix-support
printWords ${setJavaClassPath} > $out/nix-support/propagated-build-inputs
# Set JAVA_HOME automatically.
cat <<EOF >> $out/nix-support/setup-hook
if [ -z "\''${JAVA_HOME-}" ]; then export JAVA_HOME=$out; fi
EOF
'';
# fixupPhase is moving the man to share/man which breaks it because it's a
# relative symlink.
postFixup = ''
ln -nsf ../zulu-${lib.versions.major version}.jdk/Contents/Home/man $out/share/man
'';
passthru = {
home = jdk;
};
meta = import ./meta.nix lib version;
};
in
jdk

View file

@ -1,92 +0,0 @@
{ lib
, stdenv
, fetchurl
, unzip
, setJavaClassPath
, enableJavaFX ? false
}:
let
# Details from https://www.azul.com/downloads/?version=java-19-sts&os=macos&package=jdk
# Note that the latest build may differ by platform
dist = {
x86_64-darwin = {
arch = "x64";
zuluVersion = if enableJavaFX then "19.32.15" else "19.32.13";
jdkVersion = "19.0.2";
hash =
if enableJavaFX then "sha256-AwLcIId0gH5D6DUU8CgJ3qnKVQm28LXYirBeXBHwPYE="
else "sha256-KARXWumsY+OcqpEOV2EL9SsPni1nGSipjRji/Mn2KsE=";
};
aarch64-darwin = {
arch = "aarch64";
zuluVersion = if enableJavaFX then "19.32.15" else "19.32.13";
jdkVersion = "19.0.2";
hash =
if enableJavaFX then "sha256-/R2rrcBr64qPGEtvhruXBhPwnvurt/hiR1ICzZAdYxE="
else "sha256-F30FjZaLL756X/Xs6xjNwW9jds4pEATxoxOeeLL7Y5E=";
};
}."${stdenv.hostPlatform.system}";
jce-policies = fetchurl {
url = "https://web.archive.org/web/20211126120343/http://cdn.azul.com/zcek/bin/ZuluJCEPolicies.zip";
hash = "sha256-gCGii4ysQbRPFCH9IQoKCCL8r4jWLS5wo1sv9iioZ1o=";
};
javaPackage = if enableJavaFX then "ca-fx-jdk" else "ca-jdk";
jdk = stdenv.mkDerivation rec {
pname = "zulu${dist.zuluVersion}-${javaPackage}";
version = dist.jdkVersion;
src = fetchurl {
url = "https://cdn.azul.com/zulu/bin/zulu${dist.zuluVersion}-${javaPackage}${dist.jdkVersion}-macosx_${dist.arch}.tar.gz";
inherit (dist) hash;
curlOpts = "-H Referer:https://www.azul.com/downloads/zulu/";
};
nativeBuildInputs = [ unzip ];
installPhase = ''
mkdir -p $out
mv * $out
unzip ${jce-policies}
mv -f ZuluJCEPolicies/*.jar $out/lib/security/
# jni.h expects jni_md.h to be in the header search path.
ln -s $out/include/darwin/*_md.h $out/include/
if [ -f $out/LICENSE ]; then
install -D $out/LICENSE $out/share/zulu/LICENSE
rm $out/LICENSE
fi
'';
preFixup = ''
# Propagate the setJavaClassPath setup hook from the JDK so that
# any package that depends on the JDK has $CLASSPATH set up
# properly.
mkdir -p $out/nix-support
printWords ${setJavaClassPath} > $out/nix-support/propagated-build-inputs
# Set JAVA_HOME automatically.
cat <<EOF >> $out/nix-support/setup-hook
if [ -z "\''${JAVA_HOME-}" ]; then export JAVA_HOME=$out; fi
EOF
'';
# fixupPhase is moving the man to share/man which breaks it because it's a
# relative symlink.
postFixup = ''
ln -nsf ../zulu-${lib.versions.major version}.jdk/Contents/Home/man $out/share/man
'';
passthru = {
home = jdk;
};
meta = import ./meta.nix lib version;
};
in
jdk

View file

@ -1,92 +0,0 @@
{ lib
, stdenv
, fetchurl
, unzip
, setJavaClassPath
, enableJavaFX ? false
}:
let
# Details from https://www.azul.com/downloads/?version=java-19-sts&os=macos&package=jdk
# Note that the latest build may differ by platform
dist = {
x86_64-darwin = {
arch = "x64";
zuluVersion = "20.32.11";
jdkVersion = "20.0.2";
hash =
if enableJavaFX then "sha256-hyxQAivZAXtqMebe30L+EYa7p+TdSdKNYj7Rl/ZwRNQ="
else "sha256-Ev9KG6DvuBnsZrOguLsO1KQzudHCBcJNwKh45Inpnfo=";
};
aarch64-darwin = {
arch = "aarch64";
zuluVersion = "20.32.11";
jdkVersion = "20.0.2";
hash =
if enableJavaFX then "sha256-iPQzZS4CwaoqT8cSzg4kWCT1OyGBSJLq+NETcbucLo4="
else "sha256-15uNZ6uMfSASV3QU2q2oA/jBk2PCHOfSjn1GY7/7qIY=";
};
}."${stdenv.hostPlatform.system}";
jce-policies = fetchurl {
url = "https://web.archive.org/web/20211126120343/http://cdn.azul.com/zcek/bin/ZuluJCEPolicies.zip";
hash = "sha256-gCGii4ysQbRPFCH9IQoKCCL8r4jWLS5wo1sv9iioZ1o=";
};
javaPackage = if enableJavaFX then "ca-fx-jdk" else "ca-jdk";
jdk = stdenv.mkDerivation rec {
pname = "zulu${dist.zuluVersion}-${javaPackage}";
version = dist.jdkVersion;
src = fetchurl {
url = "https://cdn.azul.com/zulu/bin/zulu${dist.zuluVersion}-${javaPackage}${dist.jdkVersion}-macosx_${dist.arch}.tar.gz";
inherit (dist) hash;
curlOpts = "-H Referer:https://www.azul.com/downloads/zulu/";
};
nativeBuildInputs = [ unzip ];
installPhase = ''
mkdir -p $out
mv * $out
unzip ${jce-policies}
mv -f ZuluJCEPolicies/*.jar $out/lib/security/
# jni.h expects jni_md.h to be in the header search path.
ln -s $out/include/darwin/*_md.h $out/include/
if [ -f $out/LICENSE ]; then
install -D $out/LICENSE $out/share/zulu/LICENSE
rm $out/LICENSE
fi
'';
preFixup = ''
# Propagate the setJavaClassPath setup hook from the JDK so that
# any package that depends on the JDK has $CLASSPATH set up
# properly.
mkdir -p $out/nix-support
printWords ${setJavaClassPath} > $out/nix-support/propagated-build-inputs
# Set JAVA_HOME automatically.
cat <<EOF >> $out/nix-support/setup-hook
if [ -z "\''${JAVA_HOME-}" ]; then export JAVA_HOME=$out; fi
EOF
'';
# fixupPhase is moving the man to share/man which breaks it because it's a
# relative symlink.
postFixup = ''
ln -nsf ../zulu-${lib.versions.major version}.jdk/Contents/Home/man $out/share/man
'';
passthru = {
home = jdk;
};
meta = import ./meta.nix lib version;
};
in
jdk

View file

@ -1,96 +0,0 @@
{ lib
, stdenv
, fetchurl
, unzip
, setJavaClassPath
, enableJavaFX ? false
}:
let
# Details from https://www.azul.com/downloads/?version=java-8-lts&os=macos&package=jdk
# Note that the latest build may differ by platform
dist = {
x86_64-darwin = {
arch = "x64";
zuluVersion = "8.72.0.17";
jdkVersion = "8.0.382";
hash =
if enableJavaFX then "sha256-/x8FqygivzddXsOwIV8aj/u+LPXMmokgu97vLAVEv80="
else "sha256-3dTPIPGUeT6nb3gncNvEa4VTRyQIBJpp8oZadrT2ToE=";
};
aarch64-darwin = {
arch = "aarch64";
zuluVersion = "8.72.0.17";
jdkVersion = "8.0.382";
hash =
if enableJavaFX then "sha256-FkQ+0MzSZWUzc/HmiDVZEHGOrdKAVCdK5pm9wXXzzaU="
else "sha256-rN5AI4xAWppE4kJlzMod0JmGyHdHjTXYtx8/wOW6CFk=";
};
}."${stdenv.hostPlatform.system}";
jce-policies = fetchurl {
url = "https://web.archive.org/web/20211126120343/http://cdn.azul.com/zcek/bin/ZuluJCEPolicies.zip";
hash = "sha256-gCGii4ysQbRPFCH9IQoKCCL8r4jWLS5wo1sv9iioZ1o=";
};
javaPackage = if enableJavaFX then "ca-fx-jdk" else "ca-jdk";
jdk = stdenv.mkDerivation rec {
# @hlolli: Later version than 1.8.0_202 throws error when building jvmci.
# dyld: lazy symbol binding failed: Symbol not found: _JVM_BeforeHalt
# Referenced from: ../libjava.dylib Expected in: .../libjvm.dylib
pname = "zulu${dist.zuluVersion}-${javaPackage}";
version = dist.jdkVersion;
src = fetchurl {
url = "https://cdn.azul.com/zulu/bin/zulu${dist.zuluVersion}-${javaPackage}${dist.jdkVersion}-macosx_${dist.arch}.tar.gz";
inherit (dist) hash;
curlOpts = "-H Referer:https://www.azul.com/downloads/zulu/";
};
nativeBuildInputs = [ unzip ];
installPhase = ''
mkdir -p $out
mv * $out
unzip ${jce-policies}
mv -f ZuluJCEPolicies/*.jar $out/jre/lib/security/
# jni.h expects jni_md.h to be in the header search path.
ln -s $out/include/darwin/*_md.h $out/include/
if [ -f $out/LICENSE ]; then
install -D $out/LICENSE $out/share/zulu/LICENSE
rm $out/LICENSE
fi
'';
preFixup = ''
# Propagate the setJavaClassPath setup hook from the JRE so that
# any package that depends on the JRE has $CLASSPATH set up
# properly.
mkdir -p $out/nix-support
printWords ${setJavaClassPath} > $out/nix-support/propagated-build-inputs
# Set JAVA_HOME automatically.
cat <<EOF >> $out/nix-support/setup-hook
if [ -z "\''${JAVA_HOME-}" ]; then export JAVA_HOME=$out; fi
EOF
'';
# fixupPhase is moving the man to share/man which breaks it because it's a
# relative symlink.
postFixup = ''
ln -nsf ../zulu-${lib.versions.major version}.jdk/Contents/Home/man $out/share/man
'';
passthru = {
jre = jdk;
home = jdk;
};
meta = import ./meta.nix lib version;
};
in
jdk

View file

@ -1,4 +0,0 @@
lib: version: (removeAttrs (import ../meta.nix lib version) [ "maintainers" ]) // {
platforms = lib.platforms.darwin;
homepage = "https://www.azul.com/";
}

View file

@ -0,0 +1,14 @@
--- a/src/hotspot/os/linux/os_linux.cpp 2017-07-04 23:09:02.533972226 -0400
+++ b/src/hotspot/os/linux/os_linux.cpp 2017-07-04 23:07:52.118338845 -0400
@@ -2270,8 +2270,5 @@
assert(ret, "cannot locate libjvm");
char *rp = nullptr;
if (ret && dli_fname[0] != '\0') {
- rp = os::Posix::realpath(dli_fname, buf, buflen);
- }
- if (rp == nullptr) {
- return;
+ snprintf(buf, buflen, "%s", dli_fname);
}
if (Arguments::sun_java_launcher_is_altjvm()) {

View file

@ -0,0 +1,113 @@
{ stdenv, lib, fetchFromGitHub, fetchpatch, writeText, openjdk17_headless
, openjdk19_headless, gradle_7, pkg-config, perl, cmake, gperf, gtk2, gtk3, libXtst
, libXxf86vm, glib, alsa-lib, ffmpeg_4, python3, ruby, icu68
, withMedia ? true
, withWebKit ? false
}:
let
major = "21";
update = "";
build = "-ga";
repover = "${major}${update}${build}";
gradle_ = (gradle_7.override {
# note: gradle does not yet support running on 19
java = openjdk17_headless;
});
makePackage = args: stdenv.mkDerivation ({
version = "${major}${update}${build}";
src = fetchFromGitHub {
owner = "openjdk";
repo = "jfx";
rev = repover;
hash = "sha256-deNAGfnA6gwcAa64l0AWdkX+vJd3ZOfIgAifSl+/m+s=";
};
buildInputs = [ gtk2 gtk3 libXtst libXxf86vm glib alsa-lib ffmpeg_4 icu68 ];
nativeBuildInputs = [ gradle_ perl pkg-config cmake gperf python3 ruby ];
dontUseCmakeConfigure = true;
config = writeText "gradle.properties" (''
CONF = Release
JDK_HOME = ${openjdk19_headless.home}
'' + args.gradleProperties or "");
buildPhase = ''
runHook preBuild
export GRADLE_USER_HOME=$(mktemp -d)
ln -s $config gradle.properties
export NIX_CFLAGS_COMPILE="$(pkg-config --cflags glib-2.0) $NIX_CFLAGS_COMPILE"
gradle --no-daemon $gradleFlags sdk
runHook postBuild
'';
} // args);
# Fake build to pre-download deps into fixed-output derivation.
# We run nearly full build because I see no other way to download everything that's needed.
# Anyone who knows a better way?
deps = makePackage {
pname = "openjfx-deps";
# perl code mavenizes pathes (com.squareup.okio/okio/1.13.0/a9283170b7305c8d92d25aff02a6ab7e45d06cbe/okio-1.13.0.jar -> com/squareup/okio/okio/1.13.0/okio-1.13.0.jar)
installPhase = ''
find $GRADLE_USER_HOME -type f -regex '.*/modules.*\.\(jar\|pom\)' \
| perl -pe 's#(.*/([^/]+)/([^/]+)/([^/]+)/[0-9a-f]{30,40}/([^/\s]+))$# ($x = $2) =~ tr|\.|/|; "install -Dm444 $1 \$out/$x/$3/$4/$5" #e' \
| sh
rm -rf $out/tmp
'';
outputHashAlgo = "sha256";
outputHashMode = "recursive";
# suspiciously the same as for openjfx 17 ...
# could they really not have changed any of their dependencies?
# or did we miss changing another upstream hash when copy-pasting?
outputHash = "sha256-dV7/U5GpFxhI13smZ587C6cVE4FRNPY0zexZkYK4Yqo=";
};
in makePackage {
pname = "openjfx-modular-sdk";
gradleProperties = ''
COMPILE_MEDIA = ${lib.boolToString withMedia}
COMPILE_WEBKIT = ${lib.boolToString withWebKit}
'';
preBuild = ''
swtJar="$(find ${deps} -name org.eclipse.swt\*.jar)"
substituteInPlace build.gradle \
--replace 'mavenCentral()' 'mavenLocal(); maven { url uri("${deps}") }' \
--replace 'name: SWT_FILE_NAME' "files('$swtJar')"
'';
installPhase = ''
cp -r build/modular-sdk $out
'';
stripDebugList = [ "." ];
postFixup = ''
# Remove references to bootstrap.
export openjdkOutPath='${openjdk19_headless.outPath}'
find "$out" -name \*.so | while read lib; do
new_refs="$(patchelf --print-rpath "$lib" | perl -pe 's,:?\Q$ENV{openjdkOutPath}\E[^:]*,,')"
patchelf --set-rpath "$new_refs" "$lib"
done
'';
disallowedReferences = [ openjdk17_headless openjdk19_headless ];
passthru.deps = deps;
meta = with lib; {
homepage = "https://openjdk.org/projects/openjfx/";
license = licenses.gpl2Classpath;
description = "The next-generation Java client toolkit";
maintainers = with maintainers; [ abbradar ];
platforms = platforms.unix;
};
}

View file

@ -0,0 +1,42 @@
{ callPackage
, enableJavaFX ? false
, ...
}@args:
callPackage ./common.nix ({
# Details from https://www.azul.com/downloads/?version=java-11-lts&package=jdk
# Note that the latest build may differ by platform
dists = {
x86_64-linux = {
zuluVersion = "11.66.15";
jdkVersion = "11.0.20";
hash =
if enableJavaFX then "sha256-CjWtqnirEDrpF61WXm/Yi372IzhpTpi+/AfEqirlZnc="
else "sha256-o0tAT4egimEUizjhQW2DcYnh33oEDZSedDYz2vRpWjw=";
};
aarch64-linux = {
zuluVersion = "11.66.15";
jdkVersion = "11.0.20";
hash =
if enableJavaFX then throw "JavaFX is not available for aarch64-linux"
else "sha256-VBdEOfKz/d0R8QSMOX/nu0XUydZtRS1oibAT0E0hxN4=";
};
x86_64-darwin = {
zuluVersion = "11.66.15";
jdkVersion = "11.0.20";
hash =
if enableJavaFX then "sha256-pVgCJkgYTlFeL7nkkMWLeJ/J8ELhgvWb7gzf3erZP7Y="
else "sha256-vKqxHP5Yb651g8bZ0xHGQ4Q1T7JjjrmgEuykw/Gh2f0=";
};
aarch64-darwin = {
zuluVersion = "11.66.15";
jdkVersion = "11.0.20";
hash =
if enableJavaFX then "sha256-VoZo34SCUU+HHnTl6iLe0QBC+4VDkPP14N98oqSg9EQ="
else "sha256-djK8Kfikt9SSuT87x1p7YWMIlNuF0TZFYDWrKiTTiIU=";
};
};
} // builtins.removeAttrs args [ "callPackage" ])

View file

@ -0,0 +1,26 @@
{ callPackage
, enableJavaFX ? false
, ...
}@args:
callPackage ./common.nix ({
# Details from https://www.azul.com/downloads/?version=java-16-sts&package=jdk
# Note that the latest build may differ by platform
dists = {
x86_64-darwin = {
zuluVersion = "16.32.15";
jdkVersion = "16.0.2";
hash =
if enableJavaFX then "sha256-6URaSBNHQWLauO//kCuKXb4Z7AqyshWnoeJEyVRKgaY="
else "sha256-NXgBj/KixTknaCYbo3B+rOo11NImH5CDUIU0LhTCtMo=";
};
aarch64-darwin = {
zuluVersion = "16.32.15";
jdkVersion = "16.0.2";
hash =
if enableJavaFX then "sha256-QuyhIAxUY3Vv1adGihW+LIsXtpDX2taCmFsMFj9o5vs="
else "sha256-3bUfDcLLyahLeURFAgLAVapBZHvqtam8GHbWTA6MQog=";
};
};
} // builtins.removeAttrs args [ "callPackage" ])

View file

@ -0,0 +1,42 @@
{ callPackage
, enableJavaFX ? false
, ...
}@args:
callPackage ./common.nix ({
# Details from https://www.azul.com/downloads/?version=java-17-lts&package=jdk
# Note that the latest build may differ by platform
dists = {
x86_64-linux = {
zuluVersion = "17.44.53";
jdkVersion = "17.0.8.1";
hash =
if enableJavaFX then "sha256-R6VJcSjpKFfsO3l32+8s+wlcuAVoXcSsW5Dg2M/hjpI="
else "sha256-uUgvIwShpophTfrN3PKVaacvD6wy5sdPg9wbmhV7g0A=";
};
aarch64-linux = {
zuluVersion = "17.44.53";
jdkVersion = "17.0.8.1";
hash =
if enableJavaFX then throw "JavaFX is not available for aarch64-linux"
else "sha256-ZTHO9h5BbVp7aRVVyM8r3/aJIBuKAB/0WrZ0AGK0QxM=";
};
x86_64-darwin = {
zuluVersion = "17.44.53";
jdkVersion = "17.0.8.1";
hash =
if enableJavaFX then "sha256-9U0XYZRA+LZTQ7eHrT5SWhgcxv43ajC9n9Tj3qPPLWA="
else "sha256-ZART6K/o/+D7Tc60U1+1DbnCg8ZGZe67C6aLGeZfSx8=";
};
aarch64-darwin = {
zuluVersion = "17.44.53";
jdkVersion = "17.0.8.1";
hash =
if enableJavaFX then "sha256-udYW3nOADclWqVcVtS9dgjSY0w6xf2nsBpLzPmQCYlI="
else "sha256-MUsEVo7Arps2ugPJy9Qq3J4SZfdGeJI7GSl9ZuuE3Mo=";
};
};
} // builtins.removeAttrs args [ "callPackage" ])

View file

@ -0,0 +1,26 @@
{ callPackage
, enableJavaFX ? false
, ...
}@args:
callPackage ./common.nix ({
# Details from https://www.azul.com/downloads/?version=java-18-sts&package=jdk
# Note that the latest build may differ by platform
dists = {
x86_64-darwin = {
zuluVersion = "18.32.13";
jdkVersion = "18.0.2.1";
hash =
if enableJavaFX then "sha256-ZVZ1gbpJwxTduq2PPOCKqbSl+shq2NTFgqG++OXvFcg="
else "sha256-uHPcyOgxUdTgzmIVRp/awtwve9zSt+1TZNef7DUuoRg=";
};
aarch64-darwin = {
zuluVersion = "18.32.13";
jdkVersion = "18.0.2.1";
hash =
if enableJavaFX then "sha256-tNx0a1u9iamcN9VFOJ3eqDEA6C204dtIBJZvuAH2Vjk="
else "sha256-jAZDgxtWMq/74yKAxA69oOU0C9nXvKG5MjmZLsK04iM=";
};
};
} // builtins.removeAttrs args [ "callPackage" ])

View file

@ -0,0 +1,26 @@
{ callPackage
, enableJavaFX ? false
, ...
}@args:
callPackage ./common.nix ({
# Details from https://www.azul.com/downloads/?version=java-19-sts&package=jdk
# Note that the latest build may differ by platform
dists = {
x86_64-darwin = {
zuluVersion = if enableJavaFX then "19.32.15" else "19.32.13";
jdkVersion = "19.0.2";
hash =
if enableJavaFX then "sha256-AwLcIId0gH5D6DUU8CgJ3qnKVQm28LXYirBeXBHwPYE="
else "sha256-KARXWumsY+OcqpEOV2EL9SsPni1nGSipjRji/Mn2KsE=";
};
aarch64-darwin = {
zuluVersion = if enableJavaFX then "19.32.15" else "19.32.13";
jdkVersion = "19.0.2";
hash =
if enableJavaFX then "sha256-/R2rrcBr64qPGEtvhruXBhPwnvurt/hiR1ICzZAdYxE="
else "sha256-F30FjZaLL756X/Xs6xjNwW9jds4pEATxoxOeeLL7Y5E=";
};
};
} // builtins.removeAttrs args [ "callPackage" ])

View file

@ -0,0 +1,26 @@
{ callPackage
, enableJavaFX ? false
, ...
}@args:
callPackage ./common.nix ({
# Details from https://www.azul.com/downloads/?version=java-20-sts&package=jdk
# Note that the latest build may differ by platform
dists = {
x86_64-darwin = {
zuluVersion = "20.32.11";
jdkVersion = "20.0.2";
hash =
if enableJavaFX then "sha256-hyxQAivZAXtqMebe30L+EYa7p+TdSdKNYj7Rl/ZwRNQ="
else "sha256-Ev9KG6DvuBnsZrOguLsO1KQzudHCBcJNwKh45Inpnfo=";
};
aarch64-darwin = {
zuluVersion = "20.32.11";
jdkVersion = "20.0.2";
hash =
if enableJavaFX then "sha256-iPQzZS4CwaoqT8cSzg4kWCT1OyGBSJLq+NETcbucLo4="
else "sha256-15uNZ6uMfSASV3QU2q2oA/jBk2PCHOfSjn1GY7/7qIY=";
};
};
} // builtins.removeAttrs args [ "callPackage" ])

View file

@ -0,0 +1,42 @@
{ callPackage
, enableJavaFX ? false
, ...
}@args:
callPackage ./common.nix ({
# Details from https://www.azul.com/downloads/?version=java-21-lts&package=jdk
# Note that the latest build may differ by platform
dists = {
x86_64-linux = {
zuluVersion = "21.28.85";
jdkVersion = "21.0.0";
hash =
if enableJavaFX then "sha256-ew/tgSdkrPdk1CTguk9nyl30w7se+YZYqyqOTaeketk="
else "sha256-DA6t+9xHp8pkrqtRucBh9xtuTSXS2HZ0US6bY4fp46Y=";
};
aarch64-linux = {
zuluVersion = "21.28.85";
jdkVersion = "21.0.0";
hash =
if enableJavaFX then throw "JavaFX is not available for aarch64-linux"
else "sha256-H7ZLgDbF1GPYq1mvBr9bawBoEeYBLjsOtrzPV/HFWDU=";
};
x86_64-darwin = {
zuluVersion = "21.28.85";
jdkVersion = "21.0.0";
hash =
if enableJavaFX then "sha256-QrgEpLaNGc2aNFF38z2ckUTCpweKnuALYLOWATZFJPA="
else "sha256-ljm4fbWG0MifepiSrkf0IeRCxkuXuuvf8xeI++IyZb0=";
};
aarch64-darwin = {
zuluVersion = "21.28.85";
jdkVersion = "21.0.0";
hash =
if enableJavaFX then "sha256-PUVB/R1K1dLTi1FsOYIvcI76M6EYYeMG1Bm+oMno//Y="
else "sha256-KnqZo+omPb2NMqZ9Hm42O6iyXGRcgm9eFnoCu6+v8fo=";
};
};
} // builtins.removeAttrs args [ "callPackage" ])

View file

@ -1,120 +1,34 @@
{ stdenv
, lib
, fetchurl
, autoPatchelfHook
, unzip
, makeWrapper
, setJavaClassPath
, zulu
# minimum dependencies
, alsa-lib
, fontconfig
, freetype
, xorg
# runtime dependencies
, cups
# runtime dependencies for GTK+ Look and Feel
, gtkSupport ? stdenv.isLinux
, cairo
, glib
, gtk3
}:
{ callPackage
, enableJavaFX ? false
, ...
}@args:
let
version = "8.68.0.19";
openjdk = "8.0.362";
callPackage ./common.nix ({
# Details from https://www.azul.com/downloads/?version=java-8-lts&package=jdk
# Note that the latest build may differ by platform
dists = {
x86_64-linux = {
zuluVersion = "8.72.0.17";
jdkVersion = "8.0.382";
hash =
if enableJavaFX then "sha256-mIPCFESU7hy2naYur2jvFBtVn/LZQRcFiyiG61buCYs="
else "sha256-exWlbyrgBb7aD4daJps9qtFP+hKWkwbMdFR4OFslupY=";
};
sha256_linux = "sha256-jNty0iJoXG+sp7v2fGCrwZWCSZfQ4tkYe8ERixQMKL0=";
sha256_darwin = "sha256-3/P3puM6a7tCHP5eZM6IzbdPrqnhY1dTa7QWss9M08M=";
x86_64-darwin = {
zuluVersion = "8.72.0.17";
jdkVersion = "8.0.382";
hash =
if enableJavaFX then "sha256-/x8FqygivzddXsOwIV8aj/u+LPXMmokgu97vLAVEv80="
else "sha256-3dTPIPGUeT6nb3gncNvEa4VTRyQIBJpp8oZadrT2ToE=";
};
platform = if stdenv.isDarwin then "macosx" else "linux";
hash = if stdenv.isDarwin then sha256_darwin else sha256_linux;
extension = if stdenv.isDarwin then "zip" else "tar.gz";
runtimeDependencies = [
cups
] ++ lib.optionals gtkSupport [
cairo glib gtk3
];
runtimeLibraryPath = lib.makeLibraryPath runtimeDependencies;
in stdenv.mkDerivation {
inherit version openjdk platform hash extension;
pname = "zulu";
src = fetchurl {
url = "https://cdn.azul.com/zulu/bin/zulu${version}-ca-jdk${openjdk}-${platform}_x64.${extension}";
sha256 = hash;
aarch64-darwin = {
zuluVersion = "8.72.0.17";
jdkVersion = "8.0.382";
hash =
if enableJavaFX then "sha256-FkQ+0MzSZWUzc/HmiDVZEHGOrdKAVCdK5pm9wXXzzaU="
else "sha256-rN5AI4xAWppE4kJlzMod0JmGyHdHjTXYtx8/wOW6CFk=";
};
};
buildInputs = lib.optionals stdenv.isLinux [
alsa-lib # libasound.so wanted by lib/libjsound.so
fontconfig
freetype
stdenv.cc.cc # libstdc++.so.6
xorg.libX11
xorg.libXext
xorg.libXi
xorg.libXrender
xorg.libXtst
];
nativeBuildInputs = [
makeWrapper
] ++ lib.optionals stdenv.isLinux [
autoPatchelfHook
] ++ lib.optionals stdenv.isDarwin [
unzip
];
installPhase = ''
runHook preInstall
mkdir -p $out
cp -r ./* "$out/"
'' + lib.optionalString stdenv.isLinux ''
# jni.h expects jni_md.h to be in the header search path.
ln -s $out/include/linux/*_md.h $out/include/
'' + ''
mkdir -p $out/nix-support
printWords ${setJavaClassPath} > $out/nix-support/propagated-build-inputs
# Set JAVA_HOME automatically.
cat <<EOF >> $out/nix-support/setup-hook
if [ -z "\''${JAVA_HOME-}" ]; then export JAVA_HOME=$out; fi
EOF
'' + lib.optionalString stdenv.isLinux ''
# We cannot use -exec since wrapProgram is a function but not a command.
for bin in $( find "$out" -executable -type f ); do
if patchelf --print-interpreter "$bin" &> /dev/null; then
wrapProgram "$bin" --prefix LD_LIBRARY_PATH : "${runtimeLibraryPath}"
fi
done
'' + ''
runHook postInstall
'';
preFixup = ''
find "$out" -name libfontmanager.so -exec \
patchelf --add-needed libfontconfig.so {} \;
'';
passthru = {
home = zulu;
};
meta = with lib; {
homepage = "https://www.azul.com/products/zulu/";
sourceProvenance = with sourceTypes; [ binaryBytecode binaryNativeCode ];
license = licenses.gpl2;
description = "Certified builds of OpenJDK";
longDescription = ''
Certified builds of OpenJDK that can be deployed across multiple
operating systems, containers, hypervisors and Cloud platforms.
'';
maintainers = with maintainers; [ ];
platforms = [ "x86_64-linux" "x86_64-darwin" ];
mainProgram = "java";
};
}
} // builtins.removeAttrs args [ "callPackage" ])

View file

@ -0,0 +1,159 @@
{ lib
, stdenv
, fetchurl
, setJavaClassPath
, enableJavaFX ? false
, dists
# minimum dependencies
, unzip
, autoPatchelfHook
, makeWrapper
, alsa-lib
, fontconfig
, freetype
, zlib
, xorg
# runtime dependencies
, cups
# runtime dependencies for GTK+ Look and Feel
, gtkSupport ? stdenv.isLinux
, cairo
, glib
, gtk3
}:
let
dist = dists.${stdenv.hostPlatform.system}
or (throw "Unsupported system: ${stdenv.hostPlatform.system}");
arch = {
"aarch64" = "aarch64";
"x86_64" = "x64";
}.${stdenv.hostPlatform.parsed.cpu.name}
or (throw "Unsupported architecture: ${stdenv.hostPlatform.parsed.cpu.name}");
platform = {
"darwin" = "macosx";
"linux" = "linux";
}.${stdenv.hostPlatform.parsed.kernel.name}
or (throw "Unsupported platform: ${stdenv.hostPlatform.parsed.kernel.name}");
runtimeDependencies = [
cups
] ++ lib.optionals gtkSupport [
cairo
glib
gtk3
];
runtimeLibraryPath = lib.makeLibraryPath runtimeDependencies;
jce-policies = fetchurl {
url = "https://web.archive.org/web/20211126120343/http://cdn.azul.com/zcek/bin/ZuluJCEPolicies.zip";
hash = "sha256-gCGii4ysQbRPFCH9IQoKCCL8r4jWLS5wo1sv9iioZ1o=";
};
javaPackage = if enableJavaFX then "ca-fx-jdk" else "ca-jdk";
isJdk8 = lib.versions.major dist.jdkVersion == "8";
jdk = stdenv.mkDerivation rec {
pname = "zulu${dist.zuluVersion}-${javaPackage}";
version = dist.jdkVersion;
src = fetchurl {
url = "https://cdn.azul.com/zulu/bin/zulu${dist.zuluVersion}-${javaPackage}${dist.jdkVersion}-${platform}_${arch}.tar.gz";
inherit (dist) hash;
curlOpts = "-H Referer:https://www.azul.com/downloads/zulu/";
};
nativeBuildInputs = [
unzip
] ++ lib.optionals stdenv.isLinux [
autoPatchelfHook
makeWrapper
];
buildInputs = lib.optionals stdenv.isLinux [
alsa-lib # libasound.so wanted by lib/libjsound.so
fontconfig
freetype
stdenv.cc.cc # libstdc++.so.6
xorg.libX11
xorg.libXext
xorg.libXi
xorg.libXrender
xorg.libXtst
zlib
];
installPhase = ''
mkdir -p $out
mv * $out
unzip ${jce-policies}
mv -f ZuluJCEPolicies/*.jar $out/${lib.optionalString isJdk8 "jre/"}lib/security/
# jni.h expects jni_md.h to be in the header search path.
ln -s $out/include/${stdenv.hostPlatform.parsed.kernel.name}/*_md.h $out/include/
if [ -f $out/LICENSE ]; then
install -D $out/LICENSE $out/share/zulu/LICENSE
rm $out/LICENSE
fi
'';
preFixup = ''
# Propagate the setJavaClassPath setup hook from the ${if isJdk8 then "JRE" else "JDK"} so that
# any package that depends on the ${if isJdk8 then "JRE" else "JDK"} has $CLASSPATH set up
# properly.
mkdir -p $out/nix-support
printWords ${setJavaClassPath} > $out/nix-support/propagated-build-inputs
# Set JAVA_HOME automatically.
cat <<EOF >> $out/nix-support/setup-hook
if [ -z "\''${JAVA_HOME-}" ]; then export JAVA_HOME=$out; fi
EOF
'' + lib.optionalString stdenv.isLinux ''
# We cannot use -exec since wrapProgram is a function but not a command.
#
# jspawnhelper is executed from JVM, so it doesn't need to wrap it, and it
# breaks building OpenJDK (#114495).
for bin in $( find "$out" -executable -type f -not -name jspawnhelper ); do
if patchelf --print-interpreter "$bin" &> /dev/null; then
wrapProgram "$bin" --prefix LD_LIBRARY_PATH : "${runtimeLibraryPath}"
fi
done
''
# FIXME: move all of the above to installPhase.
+ lib.optionalString stdenv.isLinux ''
find "$out" -name libfontmanager.so -exec \
patchelf --add-needed libfontconfig.so {} \;
'';
# fixupPhase is moving the man to share/man which breaks it because it's a
# relative symlink.
postFixup = lib.optionalString stdenv.isDarwin ''
ln -nsf ../zulu-${lib.versions.major version}.jdk/Contents/Home/man $out/share/man
'';
passthru = (lib.optionalAttrs isJdk8 {
jre = jdk;
}) // {
home = jdk;
};
meta = (import ../openjdk/meta.nix lib version) // {
description = "Certified builds of OpenJDK";
longDescription = ''
Certified builds of OpenJDK that can be deployed across multiple
operating systems, containers, hypervisors and Cloud platforms.
'';
homepage = "https://www.azul.com/products/zulu/";
mainProgram = "java";
maintainers = [ ];
platforms = builtins.attrNames dists;
sourceProvenance = with lib.sourceTypes; [ binaryBytecode binaryNativeCode ];
};
};
in
jdk

View file

@ -1,125 +0,0 @@
{ stdenv
, lib
, fetchurl
, autoPatchelfHook
, unzip
, makeWrapper
, setJavaClassPath
, zulu
# minimum dependencies
, alsa-lib
, fontconfig
, freetype
, zlib
, xorg
# runtime dependencies
, cups
# runtime dependencies for GTK+ Look and Feel
, gtkSupport ? stdenv.isLinux
, cairo
, glib
, gtk3
}:
let
version = "11.62.17";
openjdk = "11.0.18";
sha256_x64_linux = "sha256-b65oEbDzrrsUw+WaX94USBz/QS74yiMiGZPxqzMmmqs=";
sha256_x64_darwin = "sha256-nRRWTWiog8bRblmmPIPE5YibA34St3ZrJpZN91qEDUg=";
sha256_aarch64_darwin = "sha256-TBTrBxOfGo6MV+Md49P3sDfqVG1e+NraqfVbw9WTppk=";
platform = if stdenv.isDarwin then "macosx" else "linux";
hash = if stdenv.isAarch64 && stdenv.isDarwin then sha256_aarch64_darwin else if stdenv.isDarwin then sha256_x64_darwin else sha256_x64_linux;
extension = if stdenv.isDarwin then "zip" else "tar.gz";
architecture = if stdenv.isAarch64 then "aarch64" else "x64";
runtimeDependencies = [
cups
] ++ lib.optionals gtkSupport [
cairo glib gtk3
];
runtimeLibraryPath = lib.makeLibraryPath runtimeDependencies;
in stdenv.mkDerivation {
inherit version openjdk platform hash extension;
pname = "zulu";
src = fetchurl {
url = "https://cdn.azul.com/zulu/bin/zulu${version}-ca-jdk${openjdk}-${platform}_${architecture}.${extension}";
sha256 = hash;
};
buildInputs = lib.optionals stdenv.isLinux [
alsa-lib # libasound.so wanted by lib/libjsound.so
fontconfig
freetype
stdenv.cc.cc # libstdc++.so.6
xorg.libX11
xorg.libXext
xorg.libXi
xorg.libXrender
xorg.libXtst
zlib
];
nativeBuildInputs = [
makeWrapper
] ++ lib.optionals stdenv.isLinux [
autoPatchelfHook
] ++ lib.optionals stdenv.isDarwin [
unzip
];
installPhase = ''
runHook preInstall
mkdir -p $out
cp -r ./* "$out/"
'' + lib.optionalString stdenv.isLinux ''
# jni.h expects jni_md.h to be in the header search path.
ln -s $out/include/linux/*_md.h $out/include/
'' + ''
mkdir -p $out/nix-support
printWords ${setJavaClassPath} > $out/nix-support/propagated-build-inputs
# Set JAVA_HOME automatically.
cat <<EOF >> $out/nix-support/setup-hook
if [ -z "\''${JAVA_HOME-}" ]; then export JAVA_HOME=$out; fi
EOF
'' + lib.optionalString stdenv.isLinux ''
# We cannot use -exec since wrapProgram is a function but not a command.
#
# jspawnhelper is executed from JVM, so it doesn't need to wrap it, and it
# breaks building OpenJDK (#114495).
for bin in $( find "$out" -executable -type f -not -name jspawnhelper ); do
wrapProgram "$bin" --prefix LD_LIBRARY_PATH : "${runtimeLibraryPath}"
done
'' + ''
runHook postInstall
'';
preFixup = ''
find "$out" -name libfontmanager.so -exec \
patchelf --add-needed libfontconfig.so {} \;
'';
passthru = {
home = zulu;
};
meta = with lib; {
homepage = "https://www.azul.com/products/zulu/";
sourceProvenance = with sourceTypes; [ binaryBytecode binaryNativeCode ];
license = licenses.gpl2;
description = "Certified builds of OpenJDK";
longDescription = ''
Certified builds of OpenJDK that can be deployed across multiple
operating systems, containers, hypervisors and Cloud platforms.
'';
maintainers = with maintainers; [ ];
platforms = [ "x86_64-linux" "x86_64-darwin" "aarch64-darwin" ];
mainProgram = "java";
};
}

View file

@ -41,6 +41,7 @@ stdenv.mkDerivation rec {
meta = with lib; {
broken = stdenv.isDarwin;
mainProgram = "hugs";
homepage = "https://www.haskell.org/hugs";
description = "Haskell interpreter";
maintainers = with maintainers; [ joachifm ];

View file

@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
pname = "luau";
version = "0.596";
version = "0.598";
src = fetchFromGitHub {
owner = "Roblox";
repo = "luau";
rev = version;
hash = "sha256-25SMgBW5Uqh0dGM8A9qCTcUPPP7wzH8wCGk4w+0wp/c=";
hash = "sha256-B3ggPrhvq1kYmclmuomi6PhXIwN8GKBzbKRLIjH0pac=";
};
nativeBuildInputs = [ cmake ];

View file

@ -4,20 +4,22 @@
stdenv.mkDerivation rec {
pname = "libaec";
version = "1.0.6";
version = "1.1.1";
src = fetchFromGitLab {
domain = "gitlab.dkrz.de";
owner = "k202009";
repo = "libaec";
rev = "v${version}";
sha256 = "sha256-N0YwJuVqv8jv/uSbpn/eJBTMhlHDcY/74+anH2vNvpI=";
sha256 = "sha256-5nsJrbJVqjXNb3exYgEvSGUq8ccy9HG+gwmBZvjnupc=";
};
nativeBuildInputs = [
cmake
];
doCheck = true;
meta = with lib; {
homepage = "https://gitlab.dkrz.de/k202009/libaec";
description = "Adaptive Entropy Coding library";

View file

@ -0,0 +1,98 @@
From 9ece6e77dcf6545c3b8104068302c6243e3a5e88 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Micka=C3=ABl=20Turnel?=
<mickael.turnel@belledonne-communications.com>
Date: Wed, 1 Mar 2023 09:14:53 +0100
Subject: [PATCH] Set c++ version 17 and fix compilation errors
Backported-by: Lorenz Brun <lorenz@brun.one>
---
CMakeLists.txt | 2 +-
daemon/daemon.cc | 2 +-
libxsd/xsd/cxx/config.hxx | 2 +-
src/conference/session/streams-group.cpp | 10 +++++-----
4 files changed, 8 insertions(+), 8 deletions(-)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 475ff16a8..a771e4595 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -92,7 +92,7 @@ cmake_dependent_option(ENABLE_QRCODE "Enable QRCode support" YES "ENABLE_VIDEO"
# * DISABLE_BC_PACKAGE_SEARCH: skip find_package() for every BC package (bctoolbox, ortp, etc.)
# * DISABLE_SOCI_PACKAGE_SEARCH: skip find_package() for Soci.
-set(CMAKE_CXX_STANDARD 14)
+set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_EXTENSIONS NO)
if(NOT CMAKE_BUILD_TYPE)
diff --git a/daemon/daemon.cc b/daemon/daemon.cc
index 197fc22ef..fd09edb26 100644
--- a/daemon/daemon.cc
+++ b/daemon/daemon.cc
@@ -628,7 +628,7 @@ void Daemon::execCommand(const string &command) {
ist.get(argsbuf);
string args = argsbuf.str();
if (!args.empty() && (args[0] == ' ')) args.erase(0, 1);
- list<DaemonCommand*>::iterator it = find_if(mCommands.begin(), mCommands.end(), bind2nd(mem_fun(&DaemonCommand::matches), name));
+ list<DaemonCommand*>::iterator it = find_if(mCommands.begin(), mCommands.end(), [&name](const DaemonCommand *dc) { return dc->matches(name); });
if (it != mCommands.end()) {
ms_mutex_lock(&mMutex);
(*it)->exec(this, args);
diff --git a/libxsd/xsd/cxx/config.hxx b/libxsd/xsd/cxx/config.hxx
index 076b107f5..385841731 100644
--- a/libxsd/xsd/cxx/config.hxx
+++ b/libxsd/xsd/cxx/config.hxx
@@ -19,7 +19,7 @@
# endif
#else
# if defined(__GXX_EXPERIMENTAL_CXX0X__) || __cplusplus >= 201103L
-# ifdef __GNUC__
+# if defined(__GNUC__) && !defined(__clang__)
# if (__GNUC__ == 4 && __GNUC_MINOR__ >= 6) || __GNUC__ > 4
# define XSD_CXX11_NULLPTR
# endif
diff --git a/src/conference/session/streams-group.cpp b/src/conference/session/streams-group.cpp
index bff739dda..84277a6b7 100644
--- a/src/conference/session/streams-group.cpp
+++ b/src/conference/session/streams-group.cpp
@@ -447,11 +447,11 @@ float StreamsGroup::computeOverallQuality(_functor func){
}
float StreamsGroup::getAverageQuality(){
- return computeOverallQuality(mem_fun(&Stream::getAverageQuality));
+ return computeOverallQuality(mem_fn(&Stream::getAverageQuality));
}
float StreamsGroup::getCurrentQuality(){
- return computeOverallQuality(mem_fun(&Stream::getCurrentQuality));
+ return computeOverallQuality(mem_fn(&Stream::getCurrentQuality));
}
int StreamsGroup::getAvpfRrInterval()const{
@@ -481,11 +481,11 @@ bool StreamsGroup::avpfEnabled() const{
}
void StreamsGroup::refreshSockets(){
- forEach<Stream>(mem_fun(&Stream::refreshSockets));
+ forEach<Stream>(mem_fn(&Stream::refreshSockets));
}
void StreamsGroup::computeAndReportBandwidth(){
- forEach<Stream>(mem_fun(&Stream::updateBandwidthReports));
+ forEach<Stream>(mem_fn(&Stream::updateBandwidthReports));
if (!bctbx_log_level_enabled(BCTBX_LOG_DOMAIN, BCTBX_LOG_MESSAGE)) return;
@@ -540,7 +540,7 @@ void StreamsGroup::finish(){
mIceService->finish(); // finish ICE first, as it has actions on the streams.
for (auto & ss : mSharedServices) ss.second->checkDestroy();
mSharedServices.clear();
- forEach<Stream>(mem_fun(&Stream::finish));
+ forEach<Stream>(mem_fn(&Stream::finish));
mFinished = true;
}
--
2.41.0

View file

@ -13,6 +13,7 @@
, sqlite
, stdenv
, xercesc
, zxing-cpp
}:
stdenv.mkDerivation rec {
@ -28,6 +29,12 @@ stdenv.mkDerivation rec {
hash = "sha256-kQZePMa7MTaSJLEObM8khfSFYLqhlgTcVyKfTPLwKYU=";
};
patches = [
# zxing-cpp 2.0+ requires C++ 17
# Manual backport as upstream ran formatters in the meantime
./backport-cpp17.patch
];
postPatch = ''
substituteInPlace src/CMakeLists.txt \
--replace "jsoncpp_object" "jsoncpp" \
@ -38,7 +45,6 @@ stdenv.mkDerivation rec {
"-DENABLE_STATIC=NO" # Do not build static libraries
"-DENABLE_UNIT_TESTS=NO" # Do not build test executables
"-DENABLE_STRICT=NO" # Do not build with -Werror
"-DENABLE_QRCODE=NO" # Does not build with zxing-cpp 2
];
buildInputs = [
@ -56,6 +62,7 @@ stdenv.mkDerivation rec {
(python3.withPackages (ps: [ ps.pystache ps.six ]))
sqlite
xercesc
zxing-cpp
];
nativeBuildInputs = [

View file

@ -12,14 +12,14 @@
stdenv.mkDerivation (finalAttrs: {
pname = "the-foundation";
version = "1.6.1";
version = "1.7.0";
src = fetchFromGitea {
domain = "git.skyjake.fi";
owner = "skyjake";
repo = "the_Foundation";
rev = "v${finalAttrs.version}";
hash = "sha256-GOvdnmutSQcsNT57tADLSkJAUX0JDVsualII+y21a+I=";
hash = "sha256-6bEd8KzOfBse5sQ2zp+cZtEAu8xIl3GqrpxSZ7h/edI=";
};
nativeBuildInputs = [ cmake pkg-config ];

View file

@ -2,7 +2,7 @@
buildDunePackage rec {
pname = "pprint";
version = "20220103";
version = "20230830";
useDune2 = true;
@ -10,7 +10,7 @@ buildDunePackage rec {
owner = "fpottier";
repo = pname;
rev = version;
sha256 = "sha256:09y6nwnjldifm47406q1r9987njlk77g4ifqg6qs54dckhr64vax";
sha256 = "sha256-avf71vAgCL1MU8O7Q3FNN3wEdCDtbNZP0ipETnn8AqA=";
};
meta = with lib; {

View file

@ -13,21 +13,19 @@
buildPythonPackage rec {
pname = "ircrobots";
version = "0.4.6";
version = "0.6.6";
disabled = pythonOlder "3.7";
src = fetchFromGitHub {
owner = "jesopo";
repo = pname;
rev = "v${version}";
hash = "sha256-+BrS1+ZkgwT/qvqD0PwRZi2LF+31biS738SzKH1dy7w=";
hash = "sha256-mIh3tERwHtGH9eA0AT8Lcnwp1Wn9lQhKkUjuZcOXO/c=";
};
postPatch = ''
# too specific pins https://github.com/jesopo/ircrobots/issues/3
sed -iE 's/anyio.*/anyio/' requirements.txt
sed -iE 's/ircstates.*/ircstates/' requirements.txt
sed -iE 's/async_timeout.*/async_timeout/' requirements.txt
'';
propagatedBuildInputs = [

View file

@ -4,19 +4,20 @@
, pythonOlder
, irctokens
, pendulum
, freezegun
, python
}:
buildPythonPackage rec {
pname = "ircstates";
version = "0.11.8";
version = "0.12.1";
disabled = pythonOlder "3.6"; # f-strings
src = fetchFromGitHub {
owner = "jesopo";
repo = pname;
rev = "v${version}";
sha256 = "0scxqcgby4vzh2q937r0wy2mb46aghjf47q3z6fp6di1b6hlj7zh";
hash = "sha256-F9yOY3YBacyoUzNTvPs7pxp6yNx08tiq1jWQKhGiagc=";
};
propagatedBuildInputs = [
@ -24,6 +25,10 @@ buildPythonPackage rec {
pendulum
];
nativeCheckInputs = [
freezegun
];
checkPhase = ''
${python.interpreter} -m unittest test
'';

View file

@ -8,14 +8,14 @@
buildPythonPackage rec {
pname = "irctokens";
version = "2.0.1";
version = "2.0.2";
disabled = pythonOlder "3.6"; # f-strings
src = fetchFromGitHub {
owner = "jesopo";
repo = pname;
rev = "v${version}";
hash = "sha256-FgcLngS11U9eBNV/8jllwdrm89tCmthA1sUaFDovk6U=";
hash = "sha256-Y9NBqxGUkt48hnXxsmfydHkJmWWb+sRrElV8C7l9bpw=";
};
nativeCheckInputs = [ pyyaml ];

View file

@ -27,7 +27,7 @@ let
in
buildPythonPackage rec {
pname = "jax";
version = "0.4.17";
version = "0.4.18";
pyproject = true;
disabled = pythonOlder "3.9";
@ -37,7 +37,7 @@ buildPythonPackage rec {
repo = pname;
# google/jax contains tags for jax and jaxlib. Only use jax tags!
rev = "refs/tags/${pname}-v${version}";
hash = "sha256-Lxi/lBBq7VlsT6CgnXPFcwbRU+T8630rBdm693E2jok=";
hash = "sha256-rDvWHa8jYCAA9iKbWaFUXdE/9L7AepFiNzmqOcc/090=";
};
nativeBuildInputs = [

View file

@ -39,7 +39,7 @@ in
assert cudaSupport -> lib.versionAtLeast cudatoolkit.version "11.1" && lib.versionAtLeast cudnn.version "8.2" && stdenv.isLinux;
let
version = "0.4.17";
version = "0.4.18";
inherit (python) pythonVersion;
@ -60,15 +60,15 @@ let
{
"x86_64-linux" = getSrcFromPypi {
platform = "manylinux2014_x86_64";
hash = "sha256-Fg/OaLgqeabFImUujdmhCqycANFZnLfhZmca2QmqE54=";
hash = "sha256-MpNomovvSVx4N6gsowOLksTyEgTK261vSXMGxYqlVOE=";
};
"aarch64-darwin" = getSrcFromPypi {
platform = "macosx_11_0_arm64";
hash = "sha256-OSx3n5AsQ+Ggr0kVna/++bWvlSq6ABRj+Yz5WlnvF/8=";
hash = "sha256-if/5O5DQVHFdsLw9O1creZBx5j8ftE7fsWMMX1NjHP0=";
};
"x86_64-darwin" = getSrcFromPypi {
platform = "macosx_10_14_x86_64";
hash = "sha256-1L4axL8b4a4c2PX02kFKbQ3o3jbPLv/bV1jU1neJYHg=";
hash = "sha256-4NeHA/0SGdmHXyDGxpK7oJc7dE1meR4LPjzbIwxloqU=";
};
};
@ -77,8 +77,8 @@ let
# When upgrading, you can get these hashes from prefetch.sh. See
# https://github.com/google/jax/issues/12879 as to why this specific URL is the correct index.
gpuSrc = fetchurl {
url = "https://storage.googleapis.com/jax-releases/cuda11/jaxlib-${version}+cuda11.cudnn86-cp310-cp310-manylinux2014_x86_64.whl";
hash = "sha256-Ctdlr8mvlMcTnBSiyjEEvle5AGr+o1v6OI7XIqcTENM=";
url = "https://storage.googleapis.com/jax-releases/cuda12/jaxlib-${version}+cuda12.cudnn89-cp310-cp310-manylinux2014_x86_64.whl";
hash = "sha256-p6BNvhhRzVDQdpEoIRau5JovC+eDjlW3bXrahtsGvmI=";
};
in

View file

@ -54,7 +54,7 @@ let
inherit (cudaPackages) backendStdenv cudatoolkit cudaFlags cudnn nccl;
pname = "jaxlib";
version = "0.4.17";
version = "0.4.18";
meta = with lib; {
description = "JAX is Autograd and XLA, brought together for high-performance machine learning research.";
@ -151,7 +151,7 @@ let
repo = "jax";
# google/jax contains tags for jax and jaxlib. Only use jaxlib tags!
rev = "refs/tags/${pname}-v${version}";
hash = "sha256-Lxi/lBBq7VlsT6CgnXPFcwbRU+T8630rBdm693E2jok=";
hash = "sha256-rDvWHa8jYCAA9iKbWaFUXdE/9L7AepFiNzmqOcc/090=";
};
nativeBuildInputs = [
@ -264,10 +264,10 @@ let
];
sha256 = (if cudaSupport then {
x86_64-linux = "sha256-nRvvFAuP/9D8BWWVPjuZijVtk+F9IrBBHsNc5Daluy4=";
x86_64-linux = "sha256-0CfGWlwKsUFP1DHUN6+6wX3cHr5x3TE6NbqYlV5me1E=";
} else {
x86_64-linux = "sha256-pPIJOELN62GqUuaKpcpaqHu7wbJHiZgtb2PVUPRr1Ek=";
aarch64-linux = "sha256-Q0PYZkOkUYUHVtSHZDlWitslDZbjNq6yRZv/ZkhTmyc=";
x86_64-linux = "sha256-sljmyIligXC7d9fdlpqR32xyMR0UslWs04gXJBD8FTA=";
aarch64-linux = "sha256-eJ4KIkHdcA2EVvyBoNum2cOPcHPFoBOtUTAGufO8FJA=";
}).${stdenv.system} or (throw "jaxlib: unsupported system: ${stdenv.system}");
};

View file

@ -5,12 +5,10 @@
, pythonOlder
, hatch-jupyter-builder
, hatchling
, pandoc
, pytestCheckHook
, pytest-console-scripts
, pytest-jupyter
, pytest-timeout
, pytest-tornasync
, argon2-cffi
, jinja2
, tornado
@ -102,7 +100,8 @@ buildPythonPackage rec {
"test_authorized_requests"
# Insufficient access privileges for operation
"test_regression_is_hidden"
] ++ lib.optionals (stdenv.isLinux && stdenv.isAarch64) [
] ++ lib.optionals stdenv.isLinux [
# Failed: DID NOT RAISE <class 'tornado.web.HTTPError'>
"test_copy_big_dir"
];

View file

@ -8,14 +8,14 @@
buildPythonPackage rec {
pname = "pglast";
version = "5.4";
version = "5.5";
format = "setuptools";
disabled = pythonOlder "3.7";
src = fetchPypi {
inherit pname version;
hash = "sha256-fyLvgaYHmTh9OaWXkuenKmNTHCVYFln/FbN+5u2a9+8=";
hash = "sha256-yz6Q+Vt7ZuT9NaxuQQA+BH7U6Efaim7No6GJmnOQo1o=";
};
propagatedBuildInputs = [
@ -37,10 +37,15 @@ buildPythonPackage rec {
pytest
'';
pythonImportsCheck = [
"pglast"
"pglast.parser"
];
meta = with lib; {
homepage = "https://github.com/lelit/pglast";
description = "PostgreSQL Languages AST and statements prettifier";
changelog = "https://github.com/lelit/pglast/raw/v${version}/CHANGES.rst";
changelog = "https://github.com/lelit/pglast/blob/v${version}/CHANGES.rst";
license = licenses.gpl3Plus;
maintainers = with maintainers; [ marsam ];
mainProgram = "pgpp";

View file

@ -14,16 +14,16 @@
buildPythonPackage rec {
pname = "pymc";
version = "5.8.1";
format = "setuptools";
version = "5.9.0";
pyproject = true;
disabled = pythonOlder "3.7";
disabled = pythonOlder "3.9";
src = fetchFromGitHub {
owner = "pymc-devs";
repo = pname;
repo = "pymc";
rev = "refs/tags/v${version}";
hash = "sha256-GufQIVV8OXlsUmk/FQZhrJ84P28He5Qc3pz67nLhppU=";
hash = "sha256-iaX1+SHGAJ9V2Jv76as5BcL5DcxURwX3aGa+R9YVtXY=";
};
propagatedBuildInputs = [

View file

@ -0,0 +1,36 @@
{ lib
, buildPythonPackage
, fetchFromGitHub
, pythonOlder
, pytestCheckHook
, setuptools
}:
buildPythonPackage rec {
pname = "python-hl7";
version = "0.4.5";
pyproject = true;
disabled = pythonOlder "3.7";
src = fetchFromGitHub {
owner = "johnpaulett";
repo = "python-hl7";
rev = "refs/tags/${version}";
hash = "sha256-9uFdyL4+9KSWXflyOMOeUudZTv4NwYPa0ADNTmuVbqo=";
};
nativeBuildInputs = [ setuptools ];
nativeCheckInputs = [ pytestCheckHook ];
pythonImportsCheck = [ "hl7" ];
meta = with lib; {
description = "A simple library for parsing messages of Health Level 7 (HL7) version 2.x into Python objects";
homepage = "https://python-hl7.readthedocs.org";
changelog = "https://python-hl7.readthedocs.io/en/latest/changelog.html";
license = licenses.bsd3;
maintainers = with maintainers; [ bcdarwin ];
};
}

View file

@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
pname = "flow";
version = "0.217.2";
version = "0.218.0";
src = fetchFromGitHub {
owner = "facebook";
repo = "flow";
rev = "v${version}";
sha256 = "sha256-0Zu4uPxNDUUeyOLrjdQaCdiRbngtCtHx1qIqtLBmCdA=";
sha256 = "sha256-QmC1K2msiIN7bBwlrsQ8in3YGUoVqf2w21HbiLULWhM=";
};
postPatch = ''

View file

@ -8,14 +8,14 @@
stdenv.mkDerivation rec {
pname = "apktool";
version = "2.8.1";
version = "2.9.0";
src = fetchurl {
urls = [
"https://bitbucket.org/iBotPeaches/apktool/downloads/apktool_${version}.jar"
"https://github.com/iBotPeaches/Apktool/releases/download/v${version}/apktool_${version}.jar"
];
hash = "sha256-e0qOFwPiKNIG2ylkS3EUFofYoRG1WwObCLAt+kQ6sPk=";
hash = "sha256-5ez3WSl7hFvmSjpRRczDctuQWxWoAaIuocke4DxMemU=";
};
dontUnpack = true;

View file

@ -10,16 +10,16 @@
buildGoModule rec {
pname = "buf";
version = "1.26.1";
version = "1.27.0";
src = fetchFromGitHub {
owner = "bufbuild";
repo = pname;
rev = "v${version}";
hash = "sha256-e00o3G66GCJyA3flqRa+J1yQVBVusBrEOJrL9viKtlM=";
hash = "sha256-QBU04/w7Z8yaTzDqhiVcxC8xEuDpDJs7rNRpOtwodGg=";
};
vendorHash = "sha256-7RVYD0r3nqb0yLmKu9zzpQNiVDVBJGG1BiVb6J+VR9k=";
vendorHash = "sha256-4JSmn/TUojZjCQMZCgJic0y84VMP26J7uBybB5/BCoE=";
patches = [
# Skip a test that requires networking to be available to work.

View file

@ -1,20 +1,27 @@
{ lib
, stdenv
, darwin
, rustPlatform
, fetchFromGitHub
}:
rustPlatform.buildRustPackage rec {
pname = "darklua";
version = "0.10.2";
version = "0.10.3";
src = fetchFromGitHub {
owner = "seaofvoices";
repo = "darklua";
rev = "v${version}";
hash = "sha256-lZKf+05+qpQe21tMclYYUB9QBI6lC0vhNtsM4O3Jde4=";
hash = "sha256-OgQOsc6upMJveUUJSGqvopsyoKs7ALd6pVYxCi5fmS8=";
};
cargoHash = "sha256-NnMjvi1H3VQGtklzXKPnZX1dOq3kCSiW8MnSvymtZ68=";
cargoHash = "sha256-qq42K4cPrWu/92P4dpegZ/0Wv2ndCb5d5+DgEKzdhbw=";
buildInputs = lib.optionals stdenv.isDarwin [
darwin.apple_sdk.frameworks.CoreServices
];
# error: linker `aarch64-linux-gnu-gcc` not found
postPatch = ''

View file

@ -2,18 +2,18 @@
buildGoModule rec {
pname = "frugal";
version = "3.17.0";
version = "3.17.2";
src = fetchFromGitHub {
owner = "Workiva";
repo = pname;
rev = "v${version}";
sha256 = "sha256-r7/ZcqabSmpvhr3JKgCXaSD5378q2JOEmZyOfeLN3Nw=";
sha256 = "sha256-7+8wjWxePU3OrIf9SLYzu6jAaaeB3MUzZ/H6tdFn3ts=";
};
subPackages = [ "." ];
vendorHash = "sha256-2+7GQ54AHEF8ukvn/xUAD1eGESo8jO6TlRFPwlEvZ6A=";
vendorHash = "sha256-vES8WGaurEW5X9PX+ILN4XUGoSEtayq7UAes+1URKzg=";
meta = with lib; {
description = "Thrift improved";

View file

@ -5,13 +5,13 @@ let
in
buildDotnetModule rec {
pname = "fsautocomplete";
version = "0.64.0";
version = "0.64.1";
src = fetchFromGitHub {
owner = "fsharp";
repo = "FsAutoComplete";
rev = "v${version}";
sha256 = "sha256-C01CsGHRy0/FFEofEN8xLM/QgnMI8aq2tr4qkEbxlsQ=";
sha256 = "sha256-/1XJ09NKOlTjBLe3PvAceIIhk1AiSXenBOFjERKDZko=";
};
nugetDeps = ./deps.nix;

View file

@ -1,12 +1,12 @@
{ stdenv, fetchzip, lib, makeWrapper, makeDesktopItem, jdk, gawk }:
stdenv.mkDerivation rec {
version = "2.1.6";
version = "2.1.7";
pname = "visualvm";
src = fetchzip {
url = "https://github.com/visualvm/visualvm.src/releases/download/${version}/visualvm_${builtins.replaceStrings ["."] [""] version}.zip";
sha256 = "sha256-RqQEeYMYpBlqla+VmrxOUNyrlIGVL4YjZadg2Gq+f8k=";
sha256 = "sha256-k9DnbLfpCQimRueHquDSuBDhn/w8ZyUKZzZ5o35YCNA=";
};
desktopItem = makeDesktopItem {

View file

@ -3,12 +3,12 @@
, pythonOlder
, buildPythonPackage
, fetchFromGitHub
, fetchpatch
, ruff
, pygls
, lsprotocol
, hatchling
, typing-extensions
, packaging
, pytestCheckHook
, python-lsp-jsonrpc
, pytest-asyncio
@ -37,6 +37,7 @@ buildPythonPackage rec {
];
propagatedBuildInputs = [
packaging
pygls
lsprotocol
typing-extensions

View file

@ -10,16 +10,16 @@
rustPlatform.buildRustPackage rec {
pname = "fzf-make";
version = "0.7.0";
version = "0.8.0";
src = fetchFromGitHub {
owner = "kyu08";
repo = "fzf-make";
rev = "v${version}";
hash = "sha256-QxEYa8+sY7fQVvoXkUJOJkbumus2tYM6T1GmkJRnUHY=";
hash = "sha256-VDPkucvp12pdnJkUxSTfU73X9CMvP/UU1ypBnN0Jp80=";
};
cargoHash = "sha256-EpFSZlzzoZ+Wzsvj5pSk5UhesbftcTFn6t1ZUOHdZsk=";
cargoHash = "sha256-mLbGV0hj571SiM1ZPiHnADYYICgP8ZfgnMTjo2npIgk=";
nativeBuildInputs = [
makeBinaryWrapper

View file

@ -5,16 +5,16 @@
rustPlatform.buildRustPackage rec {
pname = "rsonpath";
version = "0.8.2";
version = "0.8.3";
src = fetchFromGitHub {
owner = "v0ldek";
repo = "rsonpath";
rev = "v${version}";
hash = "sha256-3/xhYfo23aps3UjjUEcuLYg8JALfIpbCf6LO0F2IS20=";
hash = "sha256-gAoxWdczeaN4VqeQY0qJeLK8aABGhuwXf41QFKUxAG0=";
};
cargoHash = "sha256-2HVPqSkQU90ZAFG0tPbysCVIkd433fpTtTO1y4+ZUTU=";
cargoHash = "sha256-UXPVqc4RNIFKx0f/BPCfkJxilioXbRZSAgqQv1MzK7k=";
cargoBuildFlags = [ "-p=rsonpath" ];
cargoTestFlags = cargoBuildFlags;

View file

@ -11,16 +11,16 @@
buildGo121Module rec {
pname = "runme";
version = "1.7.5";
version = "1.7.6";
src = fetchFromGitHub {
owner = "stateful";
repo = "runme";
rev = "v${version}";
hash = "sha256-cy4IUsCMh0sFpHLFce3DW4KAMYT2/BtvKBHKPpkCggQ=";
hash = "sha256-gYaC1ROvW4wFrOKt1Wjl/ExhWX0ZQXHW6n6N70tXa+E=";
};
vendorHash = "sha256-vfLLL/sV8Jg/QE4oT45XLXAwvlLep3ehtPwXbpwo5PQ=";
vendorHash = "sha256-/eofPpXmfpc7Vjz97hjKXH/Fl/EAk0zrnI279iit7MI=";
nativeBuildInputs = [
installShellFiles

View file

@ -11,16 +11,16 @@
rustPlatform.buildRustPackage rec {
pname = "cargo-binstall";
version = "1.4.2";
version = "1.4.3";
src = fetchFromGitHub {
owner = "cargo-bins";
repo = "cargo-binstall";
rev = "v${version}";
hash = "sha256-x+fjngKdSS3ujWs2FbdcRSLi99wEuhi3f7uf7wEAvY8=";
hash = "sha256-z69uGnXyzV4spa3pNMwZrqOX1i0RYCgo8dwfZ86MBlA=";
};
cargoHash = "sha256-p/O8v08GjccJGMTvSdAFgOZAMG9jjXmvlJykzyne84w=";
cargoHash = "sha256-/eXdbHDVzM4hHRfP/gw+IXZVDuZcergGyotnvQEKEiw=";
nativeBuildInputs = [
pkg-config
@ -31,7 +31,7 @@ rustPlatform.buildRustPackage rec {
xz
zstd
] ++ lib.optionals stdenv.isDarwin [
darwin.apple_sdk.frameworks.Security
darwin.apple_sdk.frameworks.SystemConfiguration
];
buildNoDefaultFeatures = true;

View file

@ -9,16 +9,16 @@
rustPlatform.buildRustPackage rec {
pname = "cargo-guppy";
version = "unstable-2023-07-29";
version = "unstable-2023-10-04";
src = fetchFromGitHub {
owner = "guppy-rs";
repo = "guppy";
rev = "7c7f352d9d2dea1007b4475d4a76f86f061b6ba9";
sha256 = "sha256-H2vU7qax0P8Ulh1/DHnlmGRqSqzLuRy9TZOvikSLONw=";
rev = "837d0ae762b9ae79cc8ca5d629842e5ca34293b4";
sha256 = "sha256-LWU1yAD/f9w5m522vcKP9D2JusGkwzvfGSGstvFGUpk=";
};
cargoSha256 = "sha256-lr7N/qqB1AwhNA+mbEAJFSp/rDxGp3qIGSKP9B3JAls=";
cargoSha256 = "sha256-IyU5fJSFzef8P5v8ILufGcTP3+5Gm0PH4Cox2G5saHw=";
nativeBuildInputs = [ pkg-config ];

View file

@ -2,16 +2,16 @@
rustPlatform.buildRustPackage rec {
pname = "cargo-hakari";
version = "0.9.27";
version = "0.9.28";
src = fetchFromGitHub {
owner = "guppy-rs";
repo = "guppy";
rev = "cargo-hakari-${version}";
sha256 = "sha256-H2vU7qax0P8Ulh1/DHnlmGRqSqzLuRy9TZOvikSLONw=";
sha256 = "sha256-mTemccM/C9M2kso9PNpd0UGEZJd/tBd1PjCpbDFFtNo=";
};
cargoHash = "sha256-fRaGtQc9CA5A6fQ1yj5zsg1Qv42yIi8ZlIcp4o5cNBU=";
cargoHash = "sha256-UaSW9PZMUhqjvRM0/URHaOfofG5Ap3bvKgAHa+H+MFw=";
cargoBuildFlags = [ "-p" "cargo-hakari" ];
cargoTestFlags = [ "-p" "cargo-hakari" ];

View file

@ -2,16 +2,16 @@
rustPlatform.buildRustPackage rec {
pname = "cargo-modules";
version = "0.9.3";
version = "0.9.4";
src = fetchFromGitHub {
owner = "regexident";
repo = pname;
rev = version;
hash = "sha256-GbBPIJh2TnIpzpuSLZlrxEVN5hWFakeERKNeTcYbjSY=";
hash = "sha256-BFASEf9WUVJHsakujjeBBxfxPYlsuzonqFuDLXmLgwc=";
};
cargoHash = "sha256-g8Edt2rmOSfoJ3UsZIUyTOIxXgf6iQD+TueK89d18CQ=";
cargoHash = "sha256-FojpC4RMrW0hZ0jvXxznxR6rKDDxrNMPoLoHEscOPEo=";
buildInputs = lib.optionals stdenv.isDarwin [
darwin.apple_sdk.frameworks.CoreServices

View file

@ -7,16 +7,16 @@
rustPlatform.buildRustPackage rec {
pname = "cargo-mutants";
version = "23.9.1";
version = "23.10.0";
src = fetchFromGitHub {
owner = "sourcefrog";
repo = "cargo-mutants";
rev = "cargo-mutants-${version}";
hash = "sha256-VFlnCzaWy8IDuCkr1aHKhJThS3Sde9I2mRj8hKKdXOk=";
rev = "v${version}";
hash = "sha256-AJcteYaEm1pJ2tn1mydZAhrhqoMtEVJUrfGY/Vt71Ks=";
};
cargoHash = "sha256-C7ikZZrTw+KjY+kjgEZGZ7lC8irLw+uXl+T+6Grq7UY=";
cargoHash = "sha256-0NLP8KtzeX3jjWjSXBKku4c1LzKmoJce1RPUB+aO804=";
buildInputs = lib.optionals stdenv.isDarwin [
darwin.apple_sdk.frameworks.SystemConfiguration

View file

@ -1086,7 +1086,7 @@ dependencies = [
[[package]]
name = "cargo-shuttle"
version = "0.28.0"
version = "0.28.1"
dependencies = [
"anyhow",
"assert_cmd",

View file

@ -10,13 +10,13 @@
rustPlatform.buildRustPackage rec {
pname = "cargo-shuttle";
version = "0.28.0";
version = "0.28.1";
src = fetchFromGitHub {
owner = "shuttle-hq";
repo = "shuttle";
rev = "v${version}";
hash = "sha256-iBUd42MEfDFMhHXBrgrJaihUeYTRpVt4jFQaKCKhNlc=";
hash = "sha256-j4YFCvBvNJbzxaOwguhczWQt1CzCAMQsxZAVgJoLgUs=";
};
cargoLock = {

View file

@ -5,16 +5,16 @@
rustPlatform.buildRustPackage rec {
pname = "leptosfmt";
version = "0.1.14";
version = "0.1.15";
src = fetchFromGitHub {
owner = "bram209";
repo = "leptosfmt";
rev = version;
hash = "sha256-Dj58p//g6sCpZMmTbROrGxs8fiQm4y1WSYqNjQ5K3Oo=";
hash = "sha256-LbF/j6yKcH/OmrcYAvTN8L2XFYnULAAh9hCGsG/JkFg=";
};
cargoHash = "sha256-epCLbr9Z3o/G0rEiYri0CswZYzjOZkb4UVIO4/vD6ko=";
cargoHash = "sha256-92sRJt6d96BoinXlw432Fyn2EjsuSUdOwyFtqj0iUXw=";
meta = with lib; {
description = "A formatter for the leptos view! macro";

View file

@ -2,16 +2,16 @@
rustPlatform.buildRustPackage rec {
pname = "rust-script";
version = "0.32.0";
version = "0.34.0";
src = fetchFromGitHub {
owner = "fornwall";
repo = pname;
rev = version;
sha256 = "sha256-VyiVa1aeJslH1Vkg0TvON7VDiJVMIIbrlmx2FRDz75o=";
sha256 = "sha256-a9VWPN/mTz159xKgN2RNflrcuutWXVdEFzbTIZJKgdY=";
};
cargoSha256 = "sha256-K7wT5Og1nx+UcsehLbpUx0NlvoaicMDd02SkUoAncwI=";
cargoHash = "sha256-dawNgQtF9zVhlwIZzP+c5fHzcLJbCLOZx3kgIRAktTk=";
# tests require network access
doCheck = false;

View file

@ -2,16 +2,16 @@
buildGoModule rec {
pname = "flyctl";
version = "0.1.102";
version = "0.1.104";
src = fetchFromGitHub {
owner = "superfly";
repo = "flyctl";
rev = "v${version}";
hash = "sha256-OIqAX/Cgh+jpHbjIg7wApTlKGChYx82oq8oUGguDsrE=";
hash = "sha256-iTizgA3MtcG6YN7aHaZF4UXT6jBKodsMxXG61UgDNaQ=";
};
vendorHash = "sha256-XECl5evFO9ml28sILdWS2sQfNDf8ixsvQhiTShOcKKQ=";
vendorHash = "sha256-5Nu9XpYjlZHGazWTK7LmfnEGgewKa017PLHtV9HycD0=";
subPackages = [ "." ];

View file

@ -1,114 +0,0 @@
{ lib
, stdenv
, fetchFromGitHub
, glslang
, meson
, ninja
, windows
, dxvkVersion ? "default"
, spirv-headers
, vulkan-headers
, SDL2
, glfw
, pkgsBuildHost
, gitUpdater
, sdl2Support ? true
, glfwSupport ? false
, enableMoltenVKCompat ? false
}:
# SDL2 and GLFW support are mutually exclusive.
assert !sdl2Support || !glfwSupport;
let
# DXVK 2.0+ no longer vendors certain dependencies. This derivation also needs to build on Darwin,
# which does not currently support DXVK 2.0, so adapt conditionally for this situation.
isDxvk2 = lib.versionAtLeast (srcs.${dxvkVersion}.version) "2.0";
# DXVK has effectively the same build script regardless of platform.
srcs = {
"1.10" = rec {
version = "1.10.3";
src = fetchFromGitHub {
owner = "doitsujin";
repo = "dxvk";
rev = "v${version}";
hash = "sha256-T93ZylxzJGprrP+j6axZwl2d3hJowMCUOKNjIyNzkmE=";
};
# These patches are required when using DXVK with Wine on Darwin.
patches = lib.optionals enableMoltenVKCompat [
# Patch DXVK to work with MoltenVK even though it doesnt support some required features.
# Some games work poorly (particularly Unreal Engine 4 games), but others work pretty well.
./darwin-dxvk-compat.patch
# Use synchronization primitives from the C++ standard library to avoid deadlocks on Darwin.
# See: https://www.reddit.com/r/macgaming/comments/t8liua/comment/hzsuce9/
./darwin-thread-primitives.patch
];
};
"default" = rec {
version = "2.3";
src = fetchFromGitHub {
owner = "doitsujin";
repo = "dxvk";
rev = "v${version}";
hash = "sha256-RU+B0XfphD5HHW/vSzqHLUaGS3E31d5sOLp3lMmrCB8=";
fetchSubmodules = true; # Needed for the DirectX headers and libdisplay-info
};
patches = [ ];
};
};
isWindows = stdenv.targetPlatform.uname.system == "Windows";
isCross = stdenv.hostPlatform != stdenv.targetPlatform;
in
stdenv.mkDerivation (finalAttrs: {
pname = "dxvk";
inherit (srcs.${dxvkVersion}) version src patches;
nativeBuildInputs = [ glslang meson ninja ];
buildInputs = lib.optionals isWindows [ windows.pthreads ]
++ lib.optionals isDxvk2 (
[ spirv-headers vulkan-headers ]
++ lib.optional (!isWindows && sdl2Support) SDL2
++ lib.optional (!isWindows && glfwSupport) glfw
);
postPatch = lib.optionalString isDxvk2 ''
substituteInPlace "subprojects/libdisplay-info/tool/gen-search-table.py" \
--replace "/usr/bin/env python3" "${lib.getBin pkgsBuildHost.python3}/bin/python3"
'';
# Build with the Vulkan SDK in nixpkgs.
preConfigure = ''
rm -rf include/spirv/include include/vulkan/include
mkdir -p include/spirv/include include/vulkan/include
'';
mesonFlags =
let
arch = if stdenv.is32bit then "32" else "64";
in
[
"--buildtype" "release"
"--prefix" "${placeholder "out"}"
]
++ lib.optionals isCross [ "--cross-file" "build-win${arch}.txt" ]
++ lib.optional glfwSupport "-Ddxvk_native_wsi=glfw";
doCheck = isDxvk2 && !isCross;
passthru = lib.optionalAttrs (lib.versionAtLeast finalAttrs.version "2.0") {
updateScript = gitUpdater {
rev-prefix = "v";
};
};
meta = {
description = "A Vulkan-based translation layer for Direct3D 9/10/11";
homepage = "https://github.com/doitsujin/dxvk";
changelog = "https://github.com/doitsujin/dxvk/releases";
maintainers = [ lib.maintainers.reckenrode ];
license = lib.licenses.zlib;
platforms = lib.platforms.windows ++ lib.optionals isDxvk2 lib.platforms.linux;
};
})

View file

@ -1,35 +1,62 @@
{ lib, stdenvNoCC, rsync, fetchFromGitHub }:
{ lib
, stdenv
, fetchFromGitHub
, darwin
, testers
}:
# Note this is impure, using system XCode to build ios-deploy. We
# should have a special flag for users to enable this.
let version = "1.11.0";
in stdenvNoCC.mkDerivation {
let
privateFrameworks = "/Library/Apple/System/Library/PrivateFrameworks";
in
stdenv.mkDerivation (finalAttrs: {
pname = "ios-deploy";
inherit version;
version = "1.12.2";
src = fetchFromGitHub {
owner = "ios-control";
repo = "ios-deploy";
rev = version;
sha256 = "0hqwikdrcnslx4kkw9b0n7n443gzn2gbrw15pp2fnkcw5s0698sc";
rev = finalAttrs.version;
hash = "sha256-TVGC+f+1ow3b93CK3PhIL70le5SZxxb2ug5OkIg8XCA=";
};
nativeBuildInputs = [ rsync ];
buildInputs = [
darwin.apple_sdk.frameworks.Foundation
];
buildPhase = ''
LD=$CC
tmp=$(mktemp -d)
ln -s /usr/bin/xcodebuild $tmp
export PATH="$PATH:$tmp"
xcodebuild -configuration Release SYMROOT=build OBJROOT=$tmp
'';
checkPhase = ''
xcodebuild test -scheme ios-deploy-tests -configuration Release SYMROOT=build
runHook preBuild
awk '{ print "\""$0"\\n\""}' src/scripts/lldb.py >> src/ios-deploy/lldb.py.h
clang src/ios-deploy/ios-deploy.m \
-framework Foundation \
-F${privateFrameworks} -framework MobileDevice \
-o ios-deploy
runHook postBuild
'';
installPhase = ''
install -D build/Release/ios-deploy $out/bin/ios-deploy
runHook preInstall
install -Dm755 ios-deploy $out/bin/ios-deploy
runHook postInstall
'';
meta = {
platforms = lib.platforms.darwin;
description = "Install and debug iOS apps from the command line. Designed to work on un-jailbroken devices";
license = lib.licenses.gpl3;
__impureHostDeps = [
privateFrameworks
];
passthru.tests.version = testers.testVersion {
package = finalAttrs.finalPackage;
};
}
meta = {
description = "Install and debug iPhone apps from the command line, without using Xcode";
homepage = "https://github.com/ios-control/ios-deploy";
license = lib.licenses.gpl3Plus;
mainProgram = "ios-deploy";
maintainers = with lib.maintainers; [ wegank ];
platforms = lib.platforms.darwin;
};
})

View file

@ -10,13 +10,13 @@
stdenv.mkDerivation rec {
pname = "eudev";
version = "3.2.12";
version = "3.2.14";
src = fetchFromGitHub {
owner = "eudev-project";
repo = pname;
rev = "v${version}";
hash = "sha256-x9l+W8zuFYwG0m9JOIDbEf1x6yeBW36HnJws/buc7HI=";
hash = "sha256-v/szzqrBedQPRGYkZ0lV9rslCH//uqGp4PHEF0/51Lg=";
};
nativeBuildInputs = [

View file

@ -99,6 +99,22 @@ lib.makeScope
gawk = gawk-mes;
};
gcc8 = callPackage ./gcc/8.nix {
gcc = gcc46-cxx;
gnumake = gnumake-musl;
gnutar = gnutar-latest;
# FIXME: not sure why new gawk doesn't work
gawk = gawk-mes;
};
gcc-latest = callPackage ./gcc/latest.nix {
gcc = gcc8;
gnumake = gnumake-musl;
gnutar = gnutar-latest;
# FIXME: not sure why new gawk doesn't work
gawk = gawk-mes;
};
inherit (callPackage ./glibc {
bash = bash_2_05;
gnused = gnused-mes;
@ -142,6 +158,13 @@ lib.makeScope
gnused = gnused-mes;
};
# FIXME: better package naming scheme
gnutar-latest = callPackage ./gnutar/latest.nix {
gcc = gcc46;
gnumake = gnumake-musl;
gnutarBoot = gnutar-musl;
};
gzip = callPackage ./gzip {
bash = bash_2_05;
tinycc = tinycc-mes;
@ -207,11 +230,14 @@ lib.makeScope
echo ${gcc2-mes.tests.get-version}
echo ${gcc46.tests.get-version}
echo ${gcc46-cxx.tests.hello-world}
echo ${gcc8.tests.hello-world}
echo ${gcc-latest.tests.hello-world}
echo ${gnugrep.tests.get-version}
echo ${gnused.tests.get-version}
echo ${gnused-mes.tests.get-version}
echo ${gnutar.tests.get-version}
echo ${gnutar-musl.tests.get-version}
echo ${gnutar-latest.tests.get-version}
echo ${gzip.tests.get-version}
echo ${heirloom.tests.get-version}
echo ${mes.compiler.tests.get-version}

View file

@ -0,0 +1,140 @@
{ lib
, buildPlatform
, hostPlatform
, fetchurl
, bash
, coreutils
, gcc
, musl
, binutils
, gnumake
, gnused
, gnugrep
, gawk
, diffutils
, findutils
, gnutar
, gzip
, bzip2
, xz
}:
let
pname = "gcc";
version = "8.5.0";
src = fetchurl {
url = "mirror://gnu/gcc/gcc-${version}/gcc-${version}.tar.xz";
hash = "sha256-0wiEGlEbuDCmEAOXsAQtskzhH2Qtq26m7kSELlMl7VA=";
};
# last version to compile with gcc 4.6
gmpVersion = "6.2.1";
gmp = fetchurl {
url = "mirror://gnu/gmp/gmp-${gmpVersion}.tar.xz";
hash = "sha256-/UgpkSzd0S+EGBw0Ucx1K+IkZD6H+sSXtp7d2txJtPI=";
};
mpfrVersion = "4.2.1";
mpfr = fetchurl {
url = "mirror://gnu/mpfr/mpfr-${mpfrVersion}.tar.xz";
hash = "sha256-J3gHNTpnJpeJlpRa8T5Sgp46vXqaW3+yeTiU4Y8fy7I=";
};
mpcVersion = "1.3.1";
mpc = fetchurl {
url = "mirror://gnu/mpc/mpc-${mpcVersion}.tar.gz";
hash = "sha256-q2QkkvXPiCt0qgy3MM1BCoHtzb7IlRg86TDnBsHHWbg=";
};
islVersion = "0.24";
isl = fetchurl {
url = "https://gcc.gnu.org/pub/gcc/infrastructure/isl-${islVersion}.tar.bz2";
hash = "sha256-/PeN2WVsEOuM+fvV9ZoLawE4YgX+GTSzsoegoYmBRcA=";
};
in
bash.runCommand "${pname}-${version}" {
inherit pname version;
nativeBuildInputs = [
gcc
binutils
gnumake
gnused
gnugrep
gawk
diffutils
findutils
gnutar
gzip
bzip2
xz
];
passthru.tests.hello-world = result:
bash.runCommand "${pname}-simple-program-${version}" {
nativeBuildInputs = [ binutils musl result ];
} ''
cat <<EOF >> test.c
#include <stdio.h>
int main() {
printf("Hello World!\n");
return 0;
}
EOF
musl-gcc -o test test.c
./test
mkdir $out
'';
meta = with lib; {
description = "GNU Compiler Collection, version ${version}";
homepage = "https://gcc.gnu.org";
license = licenses.gpl3Plus;
maintainers = teams.minimal-bootstrap.members;
platforms = platforms.unix;
};
} ''
# Unpack
tar xf ${src}
tar xf ${gmp}
tar xf ${mpfr}
tar xf ${mpc}
tar xf ${isl}
cd gcc-${version}
ln -s ../gmp-${gmpVersion} gmp
ln -s ../mpfr-${mpfrVersion} mpfr
ln -s ../mpc-${mpcVersion} mpc
ln -s ../isl-${islVersion} isl
# Patch
# doesn't recognise musl
sed -i 's|"os/gnu-linux"|"os/generic"|' libstdc++-v3/configure.host
# Configure
export CC="gcc -Wl,-dynamic-linker -Wl,${musl}/lib/libc.so"
export CXX="g++ -Wl,-dynamic-linker -Wl,${musl}/lib/libc.so"
export CFLAGS_FOR_TARGET="-Wl,-dynamic-linker -Wl,${musl}/lib/libc.so"
export C_INCLUDE_PATH="${musl}/include"
export CPLUS_INCLUDE_PATH="$C_INCLUDE_PATH"
export LIBRARY_PATH="${musl}/lib"
bash ./configure \
--prefix=$out \
--build=${buildPlatform.config} \
--host=${hostPlatform.config} \
--with-native-system-header-dir=/include \
--with-sysroot=${musl} \
--enable-languages=c,c++ \
--disable-bootstrap \
--disable-libmpx \
--disable-libsanitizer \
--disable-lto \
--disable-multilib
# Build
make -j $NIX_BUILD_CORES
# Install
make -j $NIX_BUILD_CORES install
''

View file

@ -0,0 +1,136 @@
{ lib
, buildPlatform
, hostPlatform
, fetchurl
, bash
, coreutils
, gcc
, musl
, binutils
, gnumake
, gnused
, gnugrep
, gawk
, diffutils
, findutils
, gnutar
, gzip
, bzip2
, xz
}:
let
pname = "gcc";
version = "13.2.0";
src = fetchurl {
url = "mirror://gnu/gcc/gcc-${version}/gcc-${version}.tar.xz";
hash = "sha256-4nXnZEKmBnNBon8Exca4PYYTFEAEwEE1KIY9xrXHQ9o=";
};
gmpVersion = "6.3.0";
gmp = fetchurl {
url = "mirror://gnu/gmp/gmp-${gmpVersion}.tar.xz";
hash = "sha256-o8K4AgG4nmhhb0rTC8Zq7kknw85Q4zkpyoGdXENTiJg=";
};
mpfrVersion = "4.2.1";
mpfr = fetchurl {
url = "mirror://gnu/mpfr/mpfr-${mpfrVersion}.tar.xz";
hash = "sha256-J3gHNTpnJpeJlpRa8T5Sgp46vXqaW3+yeTiU4Y8fy7I=";
};
mpcVersion = "1.3.1";
mpc = fetchurl {
url = "mirror://gnu/mpc/mpc-${mpcVersion}.tar.gz";
hash = "sha256-q2QkkvXPiCt0qgy3MM1BCoHtzb7IlRg86TDnBsHHWbg=";
};
islVersion = "0.24";
isl = fetchurl {
url = "https://gcc.gnu.org/pub/gcc/infrastructure/isl-${islVersion}.tar.bz2";
hash = "sha256-/PeN2WVsEOuM+fvV9ZoLawE4YgX+GTSzsoegoYmBRcA=";
};
in
bash.runCommand "${pname}-${version}" {
inherit pname version;
nativeBuildInputs = [
gcc
binutils
gnumake
gnused
gnugrep
gawk
diffutils
findutils
gnutar
gzip
bzip2
xz
];
passthru.tests.hello-world = result:
bash.runCommand "${pname}-simple-program-${version}" {
nativeBuildInputs = [ binutils musl result ];
} ''
cat <<EOF >> test.c
#include <stdio.h>
int main() {
printf("Hello World!\n");
return 0;
}
EOF
musl-gcc -o test test.c
./test
mkdir $out
'';
meta = with lib; {
description = "GNU Compiler Collection, version ${version}";
homepage = "https://gcc.gnu.org";
license = licenses.gpl3Plus;
maintainers = teams.minimal-bootstrap.members;
platforms = platforms.unix;
};
} ''
# Unpack
tar xf ${src}
tar xf ${gmp}
tar xf ${mpfr}
tar xf ${mpc}
tar xf ${isl}
cd gcc-${version}
ln -s ../gmp-${gmpVersion} gmp
ln -s ../mpfr-${mpfrVersion} mpfr
ln -s ../mpc-${mpcVersion} mpc
ln -s ../isl-${islVersion} isl
# Patch
# force musl even if host triple is gnu
sed -i 's|"os/gnu-linux"|"os/generic"|' libstdc++-v3/configure.host
# Configure
export CC="gcc -Wl,-dynamic-linker -Wl,${musl}/lib/libc.so"
export CXX="g++ -Wl,-dynamic-linker -Wl,${musl}/lib/libc.so"
export CFLAGS_FOR_TARGET="-Wl,-dynamic-linker -Wl,${musl}/lib/libc.so"
export LIBRARY_PATH="${musl}/lib"
bash ./configure \
--prefix=$out \
--build=${buildPlatform.config} \
--host=${hostPlatform.config} \
--with-native-system-header-dir=/include \
--with-sysroot=${musl} \
--enable-languages=c,c++ \
--disable-bootstrap \
--disable-libsanitizer \
--disable-lto \
--disable-multilib
# Build
make -j $NIX_BUILD_CORES
# Install
make -j $NIX_BUILD_CORES install
''

View file

@ -0,0 +1,71 @@
{ lib
, buildPlatform
, hostPlatform
, fetchurl
, bash
, gcc
, musl
, binutils
, gnumake
, gnused
, gnugrep
, gawk
, gzip
, gnutarBoot
}:
let
pname = "gnutar";
version = "1.35";
src = fetchurl {
url = "mirror://gnu/tar/tar-${version}.tar.gz";
hash = "sha256-FNVeMgY+qVJuBX+/Nfyr1TN452l4fv95GcN1WwLStX4=";
};
in
bash.runCommand "${pname}-${version}" {
inherit pname version;
nativeBuildInputs = [
gcc
musl
binutils
gnumake
gnused
gnugrep
gawk
gzip
gnutarBoot
];
passthru.tests.get-version = result:
bash.runCommand "${pname}-get-version-${version}" {} ''
${result}/bin/tar --version
mkdir $out
'';
meta = with lib; {
description = "GNU implementation of the `tar' archiver";
homepage = "https://www.gnu.org/software/tar";
license = licenses.gpl3Plus;
maintainers = teams.minimal-bootstrap.members;
mainProgram = "tar";
platforms = platforms.unix;
};
} ''
# Unpack
tar xzf ${src}
cd tar-${version}
# Configure
bash ./configure \
--prefix=$out \
--build=${buildPlatform.config} \
--host=${hostPlatform.config} \
CC=musl-gcc
# Build
make -j $NIX_BUILD_CORES
# Install
make -j $NIX_BUILD_CORES install
''

View file

@ -7,7 +7,7 @@ rec {
version = "unstable-2023-05-02";
rev = "3189b5f325b7ef8b88e3edec7c1cde4fce73c76c";
outputHashAlgo = "sha256";
outputHash = "sha256-FpMp7z+B3cR3LkQ+PooH/b1/NlxH8NHVJNWifaPWt4U=";
outputHash = "sha256-7Y9+csTwZIQp0WGbagX+Q4f2zavN7AUk1TSBp/H5Xks=";
/*
Since `make-minimal-bootstrap-sources` requires nixpkgs and nix it

View file

@ -9,8 +9,9 @@
let
hash = {
"x86" = "sha256-QU3RPGy51W7M2xnfFY1IqruKzusrSLU+L190ztN6JW8=";
"AMD64" = "sha256-RCgK9oZRDQUiWLVkcIBSR2HeoB+Bh0czthrpjFEkCaY=";
"AArch64" = "sha256-XTPsoKeI6wTZAF0UwEJPzuHelWOJe//wXg4HYO0dEJo=";
"AMD64" = "sha256-RCgK9oZRDQUiWLVkcIBSR2HeoB+Bh0czthrpjFEkCaY=";
"x86" = "sha256-QU3RPGy51W7M2xnfFY1IqruKzusrSLU+L190ztN6JW8=";
}.${stage0Arch} or (throw "Unsupported system: ${hostPlatform.system}");
# Pinned from https://github.com/oriansj/stage0-posix/commit/3189b5f325b7ef8b88e3edec7c1cde4fce73c76c

View file

@ -13,6 +13,7 @@
{ lib
, fetchFromGitHub
, fetchpatch
}:
let
@ -37,6 +38,13 @@ fetchFromGitHub {
$out/M2-Planet/M2libc \
$out/mescc-tools/M2libc \
$out/mescc-tools-extra/M2libc
# aarch64: syscall: mkdir -> mkdirat
# https://github.com/oriansj/M2libc/pull/17
patch -Np1 -d $out/M2libc -i ${(fetchpatch {
url = "https://github.com/oriansj/M2libc/commit/ff7c3023b3ab6cfcffc5364620b25f8d0279e96b.patch";
hash = "sha256-QAKddv4TixIQHpFa9SVu9fAkeKbzhQaxjaWzW2yJy7A=";
})}
'';
meta = with lib; {

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