summary refs log tree commit diff
path: root/pkgs/desktops
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/desktops')
-rw-r--r--pkgs/desktops/arcan/default.nix6
-rw-r--r--pkgs/desktops/arcan/pipeworld.nix46
2 files changed, 52 insertions, 0 deletions
diff --git a/pkgs/desktops/arcan/default.nix b/pkgs/desktops/arcan/default.nix
index 989ba69b90f..fd973adb07b 100644
--- a/pkgs/desktops/arcan/default.nix
+++ b/pkgs/desktops/arcan/default.nix
@@ -20,4 +20,10 @@ rec {
     name = "durden-wrapped";
     appls = [ durden ];
   };
+
+  pipeworld = callPackage ./pipeworld.nix { };
+  pipeworld-wrapped = callPackage ./wrapper.nix {
+    name = "pipeworld-wrapped";
+    appls = [ pipeworld ];
+  };
 }
diff --git a/pkgs/desktops/arcan/pipeworld.nix b/pkgs/desktops/arcan/pipeworld.nix
new file mode 100644
index 00000000000..a48ce5044ca
--- /dev/null
+++ b/pkgs/desktops/arcan/pipeworld.nix
@@ -0,0 +1,46 @@
+{ lib
+, stdenv
+, fetchFromGitHub
+}:
+
+stdenv.mkDerivation rec {
+  pname = "pipeworld";
+  version = "0.0.0+unstable=2021-05-27";
+
+  src = fetchFromGitHub {
+    owner = "letoram";
+    repo = pname;
+    rev = "c26df9ca0225ce2fd4f89e7ec59d4ab1f94a4c2e";
+    hash = "sha256-RkDAbM1q4o61RGPLPLXHLvbvClp+bfjodlWgUGoODzA=";
+  };
+
+  installPhase = ''
+    runHook preInstall
+
+    mkdir -p ${placeholder "out"}/share/arcan/appl/
+    cp -a ./pipeworld ${placeholder "out"}/share/arcan/appl/
+
+    runHook postInstall
+  '';
+
+  meta = with lib; {
+    homepage = "https://github.com/letoram/pipeworld";
+    description = "Dataflow 'spreadsheet' desktop environment";
+    longDescription = ''
+      Pipeworld is a zooming dataflow tool and desktop heavily inspired by
+      userland. It is built using the arcan desktop engine.
+
+      It combines the programmable processing of shell scripts and pipes, the
+      interactive visual addressing/programming model of spread sheets, the
+      scenegraph- and interactive controls-, IPC- and client processing- of
+      display servers into one model with zoomable tiling window management.
+
+      It can be used as a standalone desktop of its own, or as a normal
+      application within another desktop as a 'substitute' for your normal
+      terminal emulator.
+    '';
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ AndersonTorres ];
+    platforms = platforms.all;
+  };
+}