sup

A curses threads-with-tags style email client

sup.git

git clone https://supmua.dev/git/sup/
commit 7a444112c8d915515d6a90644cf2b4e86000fa30
parent a9e44f2145a56f88286c98aeda62ab0ca2dacc87
Author: Dan Callaghan <djc@djc.id.au>
Date:   Sun,  6 Apr 2025 10:20:20 +1000

contrib/nix: use patched ncursesw-ruby instead of modifying ncurses

Diffstat:
M contrib/nix/ruby3.1-shell.nix | 14 ++++++--------
M contrib/nix/ruby3.2-shell.nix | 14 ++++++--------
M contrib/nix/ruby3.3-shell.nix | 14 ++++++--------
M contrib/nix/ruby3.4-shell.nix | 14 ++++++--------
4 files changed, 24 insertions(+), 32 deletions(-)
diff --git a/contrib/nix/ruby3.1-shell.nix b/contrib/nix/ruby3.1-shell.nix
@@ -4,9 +4,6 @@ let
     ref = "refs/heads/master";
     rev = "5d0ebea1934d80948ff7b84f3b06e4ec9d99ee49";
   }) {};
-  ncurses = pkgs.ncurses.overrideAttrs (finalAttrs: previousAttrs: {
-    configureFlags = previousAttrs.configureFlags ++ [ "--disable-opaque-curses" ];
-  });
   gems = pkgs.bundlerEnv {
     name = "ruby3.1-gems-for-sup";
     ruby = pkgs.ruby_3_1;
@@ -16,11 +13,12 @@ let
     gemConfig = pkgs.defaultGemConfig // {
       # Workaround for Sup issue #623
       ncursesw = attrs: pkgs.defaultGemConfig.ncursesw attrs // {
-        buildInputs = [ ncurses ];
-        buildFlags = [
-          "--with-cflags=-I${ncurses.dev}/include"
-          "--with-ldflags=-L${ncurses.out}/lib"
-        ];
+        src = pkgs.fetchFromGitHub {
+          owner = "danc86";
+          repo = "ncursesw-ruby";
+          rev = "43cfa21f781e9412dc73d0d4a44b3ec0bf4a3c8d";
+          hash = "sha256-MkXFwhbtL9aJOMqn1IR5DKMXcnKHzICjb/rVhDDLL94=";
+        };
       };
     };
   };
diff --git a/contrib/nix/ruby3.2-shell.nix b/contrib/nix/ruby3.2-shell.nix
@@ -4,9 +4,6 @@ let
     ref = "refs/heads/master";
     rev = "5d0ebea1934d80948ff7b84f3b06e4ec9d99ee49";
   }) {};
-  ncurses = pkgs.ncurses.overrideAttrs (finalAttrs: previousAttrs: {
-    configureFlags = previousAttrs.configureFlags ++ [ "--disable-opaque-curses" ];
-  });
   gems = pkgs.bundlerEnv {
     name = "ruby3.2-gems-for-sup";
     ruby = pkgs.ruby_3_2;
@@ -16,11 +13,12 @@ let
     gemConfig = pkgs.defaultGemConfig // {
       # Workaround for Sup issue #623
       ncursesw = attrs: pkgs.defaultGemConfig.ncursesw attrs // {
-        buildInputs = [ ncurses ];
-        buildFlags = [
-          "--with-cflags=-I${ncurses.dev}/include"
-          "--with-ldflags=-L${ncurses.out}/lib"
-        ];
+        src = pkgs.fetchFromGitHub {
+          owner = "danc86";
+          repo = "ncursesw-ruby";
+          rev = "43cfa21f781e9412dc73d0d4a44b3ec0bf4a3c8d";
+          hash = "sha256-MkXFwhbtL9aJOMqn1IR5DKMXcnKHzICjb/rVhDDLL94=";
+        };
       };
     };
   };
diff --git a/contrib/nix/ruby3.3-shell.nix b/contrib/nix/ruby3.3-shell.nix
@@ -4,9 +4,6 @@ let
     ref = "refs/heads/master";
     rev = "5d0ebea1934d80948ff7b84f3b06e4ec9d99ee49";
   }) {};
-  ncurses = pkgs.ncurses.overrideAttrs (finalAttrs: previousAttrs: {
-    configureFlags = previousAttrs.configureFlags ++ [ "--disable-opaque-curses" ];
-  });
   gems = pkgs.bundlerEnv {
     name = "ruby3.3-gems-for-sup";
     ruby = pkgs.ruby_3_3;
@@ -16,11 +13,12 @@ let
     gemConfig = pkgs.defaultGemConfig // {
       # Workaround for Sup issue #623
       ncursesw = attrs: pkgs.defaultGemConfig.ncursesw attrs // {
-        buildInputs = [ ncurses ];
-        buildFlags = [
-          "--with-cflags=-I${ncurses.dev}/include"
-          "--with-ldflags=-L${ncurses.out}/lib"
-        ];
+        src = pkgs.fetchFromGitHub {
+          owner = "danc86";
+          repo = "ncursesw-ruby";
+          rev = "43cfa21f781e9412dc73d0d4a44b3ec0bf4a3c8d";
+          hash = "sha256-MkXFwhbtL9aJOMqn1IR5DKMXcnKHzICjb/rVhDDLL94=";
+        };
       };
     };
   };
diff --git a/contrib/nix/ruby3.4-shell.nix b/contrib/nix/ruby3.4-shell.nix
@@ -4,9 +4,6 @@ let
     ref = "refs/heads/master";
     rev = "5d0ebea1934d80948ff7b84f3b06e4ec9d99ee49";
   }) {};
-  ncurses = pkgs.ncurses.overrideAttrs (finalAttrs: previousAttrs: {
-    configureFlags = previousAttrs.configureFlags ++ [ "--disable-opaque-curses" ];
-  });
   gems = pkgs.bundlerEnv {
     name = "ruby3.4-gems-for-sup";
     ruby = pkgs.ruby_3_4;
@@ -16,11 +13,12 @@ let
     gemConfig = pkgs.defaultGemConfig // {
       # Workaround for Sup issue #623
       ncursesw = attrs: pkgs.defaultGemConfig.ncursesw attrs // {
-        buildInputs = [ ncurses ];
-        buildFlags = [
-          "--with-cflags=-I${ncurses.dev}/include"
-          "--with-ldflags=-L${ncurses.out}/lib"
-        ];
+        src = pkgs.fetchFromGitHub {
+          owner = "danc86";
+          repo = "ncursesw-ruby";
+          rev = "43cfa21f781e9412dc73d0d4a44b3ec0bf4a3c8d";
+          hash = "sha256-MkXFwhbtL9aJOMqn1IR5DKMXcnKHzICjb/rVhDDLL94=";
+        };
       };
     };
   };