about summary refs log tree commit diff
path: root/nixpkgs/pkgs/development/haskell-modules/patches
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/development/haskell-modules/patches')
-rw-r--r--nixpkgs/pkgs/development/haskell-modules/patches/hnix-compat-for-ghc-9.4.patch79
-rw-r--r--nixpkgs/pkgs/development/haskell-modules/patches/portmidi-alsa-plugins.patch31
2 files changed, 31 insertions, 79 deletions
diff --git a/nixpkgs/pkgs/development/haskell-modules/patches/hnix-compat-for-ghc-9.4.patch b/nixpkgs/pkgs/development/haskell-modules/patches/hnix-compat-for-ghc-9.4.patch
deleted file mode 100644
index c7322dfa3139..000000000000
--- a/nixpkgs/pkgs/development/haskell-modules/patches/hnix-compat-for-ghc-9.4.patch
+++ /dev/null
@@ -1,79 +0,0 @@
-From daae423d339e820e3fe8c720bd568cc49eae3fde Mon Sep 17 00:00:00 2001
-From: Rodney Lorrimar <dev@rodney.id.au>
-Date: Tue, 25 Jul 2023 16:46:36 +0800
-Subject: [PATCH] GHC 9.4 compatibility
-
-This is commit b89eed9 from haskell-nix/hnix master branch,
-backported to 0.16.
-
-The patch should be removed once hnix-0.17 is released.
-
----
- src/Nix/Fresh.hs | 2 +-
- src/Nix/Lint.hs  | 2 +-
- src/Nix/Utils.hs | 2 +-
- src/Nix/Value.hs | 2 +-
- 4 files changed, 4 insertions(+), 4 deletions(-)
-
-diff --git a/src/Nix/Fresh.hs b/src/Nix/Fresh.hs
-index fdd20c4a..4b55de4e 100644
---- a/src/Nix/Fresh.hs
-+++ b/src/Nix/Fresh.hs
-@@ -14,7 +14,7 @@ import           Control.Monad.Catch  ( MonadCatch
-                                       , MonadMask
-                                       , MonadThrow
-                                       )
--import           Control.Monad.Except ( MonadFix )
-+import           Control.Monad.Fix    ( MonadFix )
- import           Control.Monad.Ref    ( MonadAtomicRef(..)
-                                       , MonadRef(Ref)
-                                       )
-diff --git a/src/Nix/Lint.hs b/src/Nix/Lint.hs
-index 2c207c91..3da8c298 100644
---- a/src/Nix/Lint.hs
-+++ b/src/Nix/Lint.hs
-@@ -498,7 +498,7 @@ instance MonadThrow (Lint s) where
-   throwM e = Lint $ ReaderT $ const (throw e)
- 
- instance MonadCatch (Lint s) where
--  catch _m _h = Lint $ ReaderT $ const (fail "Cannot catch in 'Lint s'")
-+  catch _m _h = Lint $ ReaderT $ const (error "Cannot catch in 'Lint s'")
- 
- runLintM :: Options -> Lint s a -> ST s a
- runLintM opts action =
-diff --git a/src/Nix/Utils.hs b/src/Nix/Utils.hs
-index 8f53b3a7..af370c21 100644
---- a/src/Nix/Utils.hs
-+++ b/src/Nix/Utils.hs
-@@ -67,6 +67,7 @@ import           Relude                  hiding ( pass
- import           Data.Binary                    ( Binary )
- import           Data.Data                      ( Data )
- import           Codec.Serialise                ( Serialise )
-+import           Control.Monad                  ( foldM )
- import           Control.Monad.Fix              ( MonadFix(..) )
- import           Control.Monad.Free             ( Free(..) )
- import           Control.Monad.Trans.Control    ( MonadTransControl(..) )
-@@ -84,7 +85,6 @@ import           Lens.Family2.Stock             ( _1
-                                                 , _2
-                                                 )
- import qualified System.FilePath              as FilePath
--import Control.Monad.List (foldM)
- 
- #if ENABLE_TRACING
- import qualified Relude.Debug                 as X
-diff --git a/src/Nix/Value.hs b/src/Nix/Value.hs
-index aafdc25a..28b9508c 100644
---- a/src/Nix/Value.hs
-+++ b/src/Nix/Value.hs
-@@ -554,7 +554,7 @@ liftNValue
-   => (forall x . u m x -> m x)
-   -> NValue t f m
-   -> NValue t f (u m)
--liftNValue = (`hoistNValue` lift)
-+liftNValue f = hoistNValue f lift
- 
- 
- -- *** MonadTransUnlift
--- 
-2.40.1
-
diff --git a/nixpkgs/pkgs/development/haskell-modules/patches/portmidi-alsa-plugins.patch b/nixpkgs/pkgs/development/haskell-modules/patches/portmidi-alsa-plugins.patch
new file mode 100644
index 000000000000..13860b7cfb7f
--- /dev/null
+++ b/nixpkgs/pkgs/development/haskell-modules/patches/portmidi-alsa-plugins.patch
@@ -0,0 +1,31 @@
+diff -Naurd PortMidi-0.2.0.0/portmidi/pm_linux/pmlinuxalsa.c PortMidi-0.2.0.0-alsafix/portmidi/pm_linux/pmlinuxalsa.c
+--- PortMidi-0.2.0.0/portmidi/pm_linux/pmlinuxalsa.c	2023-12-13 11:35:12.517413022 +0000
++++ PortMidi-0.2.0.0-alsafix/portmidi/pm_linux/pmlinuxalsa.c	2023-12-13 11:35:12.565413037 +0000
+@@ -719,6 +719,18 @@
+ }

+ 

+ 

++static void set_alsa_plugin_path( void )

++{

++    char *existing;

++

++    existing = getenv("ALSA_PLUGIN_DIR");

++    if (NULL != existing) {

++        return;

++    }

++    setenv("ALSA_PLUGIN_DIR", "@alsa_plugin_dir@", 0);

++}

++

++

+ PmError pm_linuxalsa_init( void )

+ {

+     int  err;

+@@ -726,6 +738,8 @@
+     snd_seq_port_info_t *pinfo;

+     unsigned int caps;

+ 

++    set_alsa_plugin_path();

++

+     /* Previously, the last parameter was SND_SEQ_NONBLOCK, but this 

+      * would cause messages to be dropped if the ALSA buffer fills up.

+      * The correct behavior is for writes to block until there is