From d14c80e68e023ac9aaefbd269a6dacf97d34a6cc Mon Sep 17 00:00:00 2001 From: Alexandre Esteves Date: Sat, 25 Apr 2026 01:42:47 +0100 Subject: [PATCH] haskellPackages.*: enable packages that build on aarch64-darwin --- .../haskell-modules/configuration-darwin.nix | 2 - .../configuration-hackage2nix/main.yaml | 39 +++-------------- .../haskell-modules/hackage-packages.nix | 42 +++---------------- 3 files changed, 12 insertions(+), 71 deletions(-) diff --git a/pkgs/development/haskell-modules/configuration-darwin.nix b/pkgs/development/haskell-modules/configuration-darwin.nix index 0c6c30554097..665bd415ca4f 100644 --- a/pkgs/development/haskell-modules/configuration-darwin.nix +++ b/pkgs/development/haskell-modules/configuration-darwin.nix @@ -134,8 +134,6 @@ self: super: + (oldAttrs.preCompileBuildDriver or ""); }) super.llvm-hs; - sym = markBroken super.sym; - yesod-core = super.yesod-core.overrideAttrs (drv: { # Allow access to local networking when the Darwin sandbox is enabled, so yesod-core can # run tests that access localhost. diff --git a/pkgs/development/haskell-modules/configuration-hackage2nix/main.yaml b/pkgs/development/haskell-modules/configuration-hackage2nix/main.yaml index 56bb238acddc..68ca53264ba3 100644 --- a/pkgs/development/haskell-modules/configuration-hackage2nix/main.yaml +++ b/pkgs/development/haskell-modules/configuration-hackage2nix/main.yaml @@ -670,7 +670,6 @@ unsupported-platforms: Allure: [ platforms.darwin ] bdcs-api: [ platforms.darwin ] bindings-directfb: [ platforms.darwin ] - bindings-sane: [ platforms.darwin ] bustle: [ platforms.darwin ] # uses glibc-specific ptsname_r bytelog: [ platforms.darwin ] # due to posix-api camfort: [ aarch64-linux ] @@ -684,27 +683,18 @@ unsupported-platforms: Euterpea: [ platforms.darwin ] follow-file: [ platforms.darwin ] freenect: [ platforms.darwin ] - FTGL: [ platforms.darwin ] fuzzytime: [ platforms.darwin ] # https://github.com/kamwitsta/fuzzytime/issues/2 ghc-gc-hook: [ platforms.darwin ] # requires C11 threads which Apple doesn't support - gi-adwaita: [ platforms.darwin ] - gi-dbusmenu: [ platforms.darwin ] - gi-dbusmenugtk3: [ platforms.darwin ] - gi-ggit: [ platforms.darwin ] gi-gtk-layer-shell: [ platforms.darwin ] # depends on gtk-layer-shell which is not supported on darwin gi-ibus: [ platforms.darwin ] gi-javascriptcore: [ platforms.darwin ] # webkitgtk marked broken on darwin gi-ostree: [ platforms.darwin ] - gi-vte: [ platforms.darwin ] gi-webkit2: [ platforms.darwin ] # webkitgtk marked broken on darwin gi-webkit2webextension: [ platforms.darwin ] # webkitgtk marked broken on darwin gi-wnck: [ platforms.darwin ] - gl: [ platforms.darwin ] # depends on mesa GLHUI: [ platforms.darwin ] # depends on mesa - gnome-keyring: [ platforms.darwin ] grid-proto: [ platforms.darwin ] gtk-sni-tray: [ platforms.darwin ] - h-raylib: [ platforms.darwin ] # depends on mesa haskell-snake: [ platforms.darwin ] hcwiid: [ platforms.darwin ] HDRUtils: [ platforms.darwin ] @@ -717,7 +707,6 @@ unsupported-platforms: jsaddle-webkit2gtk: [ platforms.darwin ] Kulitta: [ platforms.darwin ] # depends on Euterpea LambdaHack: [ platforms.darwin ] - libmodbus: [ platforms.darwin ] libsystemd-journal: [ platforms.darwin ] libtelnet: [ platforms.darwin ] libvirt-hs: [ platforms.darwin ] # spidermonkey is not supported on darwin @@ -726,18 +715,16 @@ unsupported-platforms: lio-fs: [ platforms.darwin ] logging-facade-journald: [ platforms.darwin ] longshot: [ aarch64-linux ] - mpi-hs-binary: [ aarch64-linux, platforms.darwin ] - mpi-hs-cereal: [ aarch64-linux, platforms.darwin ] + mpi-hs-binary: [ aarch64-linux ] + mpi-hs-cereal: [ aarch64-linux ] mpi-hs-store: [ aarch64-linux, platforms.darwin ] - mpi-hs: [ aarch64-linux, platforms.darwin ] + mpi-hs: [ aarch64-linux ] mplayer-spot: [ aarch64-linux, platforms.darwin ] mptcp-pm: [ platforms.darwin ] netlink: [ platforms.darwin ] network-unexceptional: [ platforms.darwin ] # depends on posix-api - notifications-tray-icon: [ platforms.darwin ] # depends on gi-dbusmenu oculus: [ platforms.darwin ] ostree-pin: [ platforms.darwin ] # depends on gi-ostree - pam: [ platforms.darwin ] parport: [ platforms.darwin ] persist-state: [ aarch64-linux, armv7l-linux ] # https://github.com/minad/persist-state/blob/6fd68c0b8b93dec78218f6d5a1f4fa06ced4e896/src/Data/PersistState.hs#L122-L128 piyo: [ platforms.darwin ] @@ -749,14 +736,8 @@ unsupported-platforms: reactive-balsa: [ platforms.darwin ] # depends on alsa-core reflex-dom-fragment-shader-canvas: [ platforms.darwin, aarch64-linux ] reflex-localize-dom: [ platforms.darwin, aarch64-linux ] - rtlsdr: [ platforms.darwin ] rubberband: [ platforms.darwin ] - SDL-mixer: [ platforms.darwin ] # depends on mesa - SDL-mpeg: [ platforms.darwin ] # depends on mesa - sdl2-mixer: [ platforms.darwin ] - sdl2-ttf: [ platforms.darwin ] sdr: [ platforms.darwin ] # depends on rtlsdr - sensei: [ platforms.darwin ] sockets: [ platforms.darwin ] # depends on posix-api spade: [ platforms.darwin ] # depends on sdl2-mixer, which doesn't work on darwin synthesizer-alsa: [ platforms.darwin ] @@ -766,14 +747,12 @@ unsupported-platforms: twirl: [ platforms.darwin ] # depends on sdl2-mixer Unixutils-shadow: [ platforms.darwin ] verifiable-expressions: [ aarch64-linux ] - vrpn: [ platforms.darwin ] - vulkan-utils: [ platforms.darwin ] - vulkan: [ i686-linux, armv7l-linux, platforms.darwin ] - VulkanMemoryAllocator: [ i686-linux, armv7l-linux, platforms.darwin ] + vulkan: [ i686-linux, armv7l-linux ] + VulkanMemoryAllocator: [ i686-linux, armv7l-linux ] webkit2gtk3-javascriptcore: [ platforms.darwin ] wiringPi: [ aarch64-darwin ] xattr: [ platforms.darwin ] - xgboost-haskell: [ aarch64-linux, armv7l-linux, platforms.darwin ] + xgboost-haskell: [ aarch64-linux, armv7l-linux ] xmobar: [ platforms.darwin ] xmonad-extras: [ platforms.darwin ] xmonad-volume: [ platforms.darwin ] @@ -791,9 +770,6 @@ supported-platforms: blake3: [ platforms.x86 ] # uses x86 intrinsics btrfs: [ platforms.linux ] # depends on linux bytepatch: [ platforms.x86 ] # due to blake3 - cpuid: [ platforms.x86 ] # needs to be i386 compatible (IA-32) - cpython: [ platforms.x86 ] # c2hs errors on glibc headers - crc32c: [ platforms.x86 ] # uses x86 intrinsics d3d11binding: [ platforms.windows ] DirectSound: [ platforms.windows ] dx9base: [ platforms.windows ] @@ -804,8 +780,6 @@ supported-platforms: evdev: [ platforms.linux ] geomancy-layout: [ platforms.x86 ] # x86 intrinsics geomancy: [ platforms.x86 ] # x86 intrinsics - ghcjs-base: [ javascript-ghcjs ] - ghcjs-dom-javascript: [ javascript-ghcjs ] gi-gtkosxapplication: [ platforms.darwin ] gtk-mac-integration: [ platforms.darwin ] gtk3-mac-integration: [ platforms.darwin ] @@ -841,7 +815,6 @@ supported-platforms: midi-alsa: [ platforms.linux ] # alsa-core only supported on linux midisurface: [ platforms.linux ] # alsa-core only supported on linux miso-action-logger: [ javascript-ghcjs ] # https://github.com/Lermex/miso-action-logger/issues/1 - miso-examples: [ javascript-ghcjs ] OrderedBits: [ platforms.x86 ] # lacks implementations for non-x86: https://github.com/choener/OrderedBits/blob/401cbbe933b1635aa33e8e9b29a4a570b0a8f044/lib/Data/Bits/Ordered.hs#L316 reactivity: [ platforms.windows ] reflex-libtelnet: [ platforms.linux ] # pkgs.libtelnet only supports linux diff --git a/pkgs/development/haskell-modules/hackage-packages.nix b/pkgs/development/haskell-modules/hackage-packages.nix index a2175623dd44..c2f9546d3270 100644 --- a/pkgs/development/haskell-modules/hackage-packages.nix +++ b/pkgs/development/haskell-modules/hackage-packages.nix @@ -12647,7 +12647,6 @@ self: { librarySystemDepends = [ ftgl ]; description = "Portable TrueType font rendering for OpenGL using the Freetype2 library"; license = lib.licenses.bsd3; - badPlatforms = lib.platforms.darwin; } ) { inherit (pkgs) ftgl; }; @@ -39157,7 +39156,6 @@ self: { librarySystemDepends = [ SDL_mixer ]; description = "Binding to libSDL_mixer"; license = lib.licenses.bsd3; - badPlatforms = lib.platforms.darwin; } ) { inherit (pkgs) SDL_mixer; }; @@ -39180,7 +39178,6 @@ self: { librarySystemDepends = [ smpeg ]; description = "Binding to the SMPEG library"; license = lib.licenses.bsd3; - badPlatforms = lib.platforms.darwin; } ) { inherit (pkgs) smpeg; }; @@ -46378,8 +46375,7 @@ self: { badPlatforms = [ "i686-linux" "armv7l-linux" - ] - ++ lib.platforms.darwin; + ]; } ) { }; @@ -106984,7 +106980,6 @@ self: { libraryPkgconfigDepends = [ sane-backends ]; description = "FFI bindings to libsane"; license = lib.licenses.lgpl3Only; - badPlatforms = lib.platforms.darwin; } ) { inherit (pkgs) sane-backends; }; @@ -168010,7 +168005,6 @@ self: { ]; description = "Binding for the cpuid machine instruction on x86 compatible processors"; license = lib.meta.getLicenseFromSpdxId "GPL-2.0-only"; - platforms = lib.platforms.x86; } ) { }; @@ -168090,7 +168084,6 @@ self: { testPkgconfigDepends = [ python3 ]; description = "Bindings for libpython"; license = lib.licenses.gpl3Only; - platforms = lib.platforms.x86; maintainers = [ lib.maintainers.sheepforce ]; } ) { inherit (pkgs) python3; }; @@ -169368,7 +169361,6 @@ self: { ]; description = "crc32c"; license = lib.meta.getLicenseFromSpdxId "BSD-3-Clause"; - platforms = lib.platforms.x86; } ) { }; @@ -268293,7 +268285,6 @@ self: { sha256 = "081w3234jramsmafnl86v37lwbckr2vc93gr9pdwc31yzni9kbml"; description = "base library for GHCJS"; license = lib.meta.getLicenseFromSpdxId "MIT"; - platforms = [ "javascript-ghcjs" ]; maintainers = [ lib.maintainers.alexfmpe ]; } ) { }; @@ -268425,7 +268416,6 @@ self: { sha256 = "1k62w5czg544ias8q2kvhp8qnlafzisgx1p0gq8d2kh662w99kcg"; description = "DOM library using JSFFI and GHCJS"; license = lib.meta.getLicenseFromSpdxId "MIT"; - platforms = [ "javascript-ghcjs" ]; maintainers = [ lib.maintainers.alexfmpe ]; } ) { }; @@ -269237,7 +269227,6 @@ self: { libraryPkgconfigDepends = [ libadwaita ]; description = "Adwaita bindings"; license = lib.licenses.lgpl21Only; - badPlatforms = lib.platforms.darwin; } ) { inherit (pkgs) libadwaita; }; @@ -269730,7 +269719,6 @@ self: { libraryPkgconfigDepends = [ libdbusmenu ]; description = "Dbusmenu bindings"; license = lib.licenses.lgpl21Only; - badPlatforms = lib.platforms.darwin; } ) { inherit (pkgs) libdbusmenu; }; @@ -269797,7 +269785,6 @@ self: { ]; description = "DbusmenuGtk bindings"; license = lib.licenses.lgpl21Only; - badPlatforms = lib.platforms.darwin; } ) { @@ -270279,7 +270266,6 @@ self: { libraryPkgconfigDepends = [ libgit2-glib ]; description = "libgit2-glib bindings"; license = lib.licenses.lgpl21Only; - badPlatforms = lib.platforms.darwin; } ) { inherit (pkgs) libgit2-glib; }; @@ -272720,7 +272706,6 @@ self: { libraryPkgconfigDepends = [ vte ]; description = "Vte bindings"; license = lib.licenses.lgpl21Only; - badPlatforms = lib.platforms.darwin; } ) { inherit (pkgs) vte; }; @@ -277451,7 +277436,6 @@ self: { librarySystemDepends = [ libGL ]; description = "Complete OpenGL raw bindings"; license = lib.licenses.bsd3; - badPlatforms = lib.platforms.darwin; } ) { inherit (pkgs) libGL; }; @@ -280411,7 +280395,6 @@ self: { libraryToolDepends = [ c2hs ]; description = "Bindings for libgnome-keyring"; license = lib.licenses.gpl3Only; - badPlatforms = lib.platforms.darwin; } ) { inherit (pkgs) libgnome-keyring; }; @@ -293637,7 +293620,6 @@ self: { ]; description = "Raylib bindings for Haskell"; license = lib.meta.getLicenseFromSpdxId "Apache-2.0"; - badPlatforms = lib.platforms.darwin; } ) { @@ -426728,7 +426710,6 @@ self: { librarySystemDepends = [ modbus ]; description = "Haskell bindings to the C modbus library"; license = lib.licenses.bsd2; - badPlatforms = lib.platforms.darwin; } ) { modbus = null; }; @@ -461409,7 +461390,6 @@ self: { isExecutable = true; description = "A tasty Haskell front-end web framework"; license = lib.meta.getLicenseFromSpdxId "BSD-3-Clause"; - platforms = [ "javascript-ghcjs" ]; } ) { }; @@ -472640,7 +472620,7 @@ self: { testPkgconfigDepends = [ ompi ]; description = "MPI bindings for Haskell"; license = lib.licenses.asl20; - badPlatforms = [ "aarch64-linux" ] ++ lib.platforms.darwin; + badPlatforms = [ "aarch64-linux" ]; maintainers = [ lib.maintainers.sheepforce ]; } ) { ompi = null; }; @@ -472674,7 +472654,7 @@ self: { testHaskellDepends = [ base ]; description = "MPI bindings for Haskell"; license = lib.licenses.asl20; - badPlatforms = [ "aarch64-linux" ] ++ lib.platforms.darwin; + badPlatforms = [ "aarch64-linux" ]; maintainers = [ lib.maintainers.sheepforce ]; } ) { }; @@ -472708,7 +472688,7 @@ self: { testHaskellDepends = [ base ]; description = "MPI bindings for Haskell"; license = lib.licenses.asl20; - badPlatforms = [ "aarch64-linux" ] ++ lib.platforms.darwin; + badPlatforms = [ "aarch64-linux" ]; maintainers = [ lib.maintainers.sheepforce ]; } ) { }; @@ -494180,7 +494160,6 @@ self: { tuple ]; license = lib.licenses.bsd3; - badPlatforms = lib.platforms.darwin; hydraPlatforms = lib.platforms.none; mainProgram = "notifications-tray-icon"; broken = true; @@ -512385,7 +512364,6 @@ self: { libraryToolDepends = [ c2hs ]; description = "Haskell binding for C PAM API"; license = lib.meta.getLicenseFromSpdxId "BSD-3-Clause"; - badPlatforms = lib.platforms.darwin; } ) { inherit (pkgs) pam; }; @@ -596285,7 +596263,6 @@ self: { libraryToolDepends = [ c2hs ]; description = "Bindings to librtlsdr"; license = lib.licenses.bsd3; - badPlatforms = lib.platforms.darwin; } ) { inherit (pkgs) rtl-sdr; }; @@ -607051,7 +607028,6 @@ self: { executablePkgconfigDepends = [ SDL2_mixer ]; description = "Haskell bindings to SDL2_mixer"; license = lib.meta.getLicenseFromSpdxId "BSD-3-Clause"; - badPlatforms = lib.platforms.darwin; } ) { inherit (pkgs) SDL2_mixer; }; @@ -607129,7 +607105,6 @@ self: { ]; description = "Bindings to SDL2_ttf"; license = lib.licenses.bsd3; - badPlatforms = lib.platforms.darwin; } ) { @@ -609930,7 +609905,6 @@ self: { testToolDepends = [ hspec-discover ]; description = "Automatically run Hspec tests on file modifications"; license = lib.licenses.mit; - badPlatforms = lib.platforms.darwin; maintainers = [ lib.maintainers.libjared ]; } ) { }; @@ -734322,7 +734296,6 @@ self: { ]; description = "Bindings to VRPN"; license = lib.licenses.mit; - badPlatforms = lib.platforms.darwin; mainProgram = "test-vrpn"; } ) @@ -734989,8 +734962,7 @@ self: { badPlatforms = [ "i686-linux" "armv7l-linux" - ] - ++ lib.platforms.darwin; + ]; } ) { inherit (pkgs) vulkan-loader; }; @@ -735064,7 +735036,6 @@ self: { ]; description = "Utils for the vulkan package"; license = lib.licenses.bsd3; - badPlatforms = lib.platforms.darwin; } ) { }; @@ -754993,8 +754964,7 @@ self: { badPlatforms = [ "aarch64-linux" "armv7l-linux" - ] - ++ lib.platforms.darwin; + ]; mainProgram = "xgb-agaricus"; } ) { inherit (pkgs) xgboost; };