about summary refs log tree commit diff
path: root/pkgs/desktops
diff options
context:
space:
mode:
authorPeder Bergebakken Sundt <pbsds@hotmail.com>2023-12-06 23:58:55 +0100
committerGitHub <noreply@github.com>2023-12-06 23:58:55 +0100
commit37eb75ecc29fcdbe94b7480a024e5619abb0f06b (patch)
tree548b38321194d220d98be4175425e9548b2f1196 /pkgs/desktops
parent6be62203abd573b77472606e4848d29e2f1dd961 (diff)
parente9654b3ea39a9d170da0e0739119f6d39a07720c (diff)
Merge pull request #270301 from atorres1985-contrib/arcan
Arcan updates
Diffstat (limited to 'pkgs/desktops')
-rw-r--r--pkgs/desktops/arcan/arcan/default.nix213
-rw-r--r--pkgs/desktops/arcan/cat9/default.nix37
-rw-r--r--pkgs/desktops/arcan/default.nix49
-rw-r--r--pkgs/desktops/arcan/durden/default.nix43
-rw-r--r--pkgs/desktops/arcan/pipeworld/default.nix50
-rw-r--r--pkgs/desktops/arcan/prio/default.nix37
-rw-r--r--pkgs/desktops/arcan/wrapper.nix29
-rw-r--r--pkgs/desktops/arcan/xarcan/default.nix119
8 files changed, 0 insertions, 577 deletions
diff --git a/pkgs/desktops/arcan/arcan/default.nix b/pkgs/desktops/arcan/arcan/default.nix
deleted file mode 100644
index 1a46c693b0278..0000000000000
--- a/pkgs/desktops/arcan/arcan/default.nix
+++ /dev/null
@@ -1,213 +0,0 @@
-{ lib
-, stdenv
-, fetchFromGitHub
-, SDL2
-, cmake
-, espeak
-, ffmpeg
-, file
-, freetype
-, glib
-, gumbo
-, harfbuzz
-, jbig2dec
-, leptonica
-, libGL
-, libX11
-, libXau
-, libXcomposite
-, libXdmcp
-, libXfixes
-, libdrm
-, libffi
-, libjpeg
-, libusb1
-, libuvc
-, libvlc
-, libvncserver
-, libxcb
-, libxkbcommon
-, makeWrapper
-, mesa
-, mupdf
-, openal
-, openjpeg
-, pcre2
-, pkg-config
-, ruby
-, sqlite
-, tesseract
-, valgrind
-, wayland
-, wayland-protocols
-, xcbutil
-, xcbutilwm
-, xz
-, buildManPages ? true
-, useBuiltinLua ? true
-, useEspeak ? !stdenv.isDarwin
-, useStaticLibuvc ? true
-, useStaticOpenAL ? true
-, useStaticSqlite ? true
-, useTracy ? true
-}:
-
-let
-  allSources = {
-    letoram-arcan-src = fetchFromGitHub {
-      owner = "letoram";
-      repo = "arcan";
-      rev = "85c8564bdbee8468a5716bea64daf1d78937ffbf";
-      hash = "sha256-etmj1vpZTjxbmr4UiLBEK57WFJ1NeEnY5WfBYajX3ls=";
-    };
-    letoram-openal-src = fetchFromGitHub {
-      owner = "letoram";
-      repo = "openal";
-      rev = "81e1b364339b6aa2b183f39fc16c55eb5857e97a";
-      hash = "sha256-X3C3TDZPiOhdZdpApC4h4KeBiWFMxkFsmE3gQ1Rz420=";
-    };
-    libuvc-src = fetchFromGitHub {
-      owner = "libuvc";
-      repo = "libuvc";
-      rev = "68d07a00e11d1944e27b7295ee69673239c00b4b";
-      hash = "sha256-IdV18mnPTDBODpS1BXl4ulkFyf1PU2ZmuVGNOIdQwzE=";
-    };
-    luajit-src = fetchFromGitHub {
-      owner = "LuaJIT";
-      repo = "LuaJIT";
-      rev = "656ecbcf8f669feb94e0d0ec4b4f59190bcd2e48";
-      hash = "sha256-/gGQzHgYuWGqGjgpEl18Rbh3Sx2VP+zLlx4N9/hbYLc=";
-    };
-    tracy-src = fetchFromGitHub {
-      owner = "wolfpld";
-      repo = "tracy";
-      rev = "93537dff336e0796b01262e8271e4d63bf39f195";
-      hash = "sha256-FNB2zTbwk8hMNmhofz9GMts7dvH9phBRVIdgVjRcyQM=";
-    };
-  };
-in
-stdenv.mkDerivation (finalAttrs: {
-  pname = "arcan";
-  version = "0.6.2.1-unstable-2023-10-14";
-
-  src = allSources.letoram-arcan-src;
-
-  nativeBuildInputs = [
-    cmake
-    makeWrapper
-    pkg-config
-  ] ++ lib.optionals buildManPages [
-    ruby
-  ];
-
-  buildInputs = [
-    SDL2
-    ffmpeg
-    file
-    freetype
-    glib
-    gumbo
-    harfbuzz
-    jbig2dec
-    leptonica
-    libGL
-    libX11
-    libXau
-    libXcomposite
-    libXdmcp
-    libXfixes
-    libdrm
-    libffi
-    libjpeg
-    libusb1
-    libuvc
-    libvlc
-    libvncserver
-    libxcb
-    libxkbcommon
-    mesa
-    mupdf
-    openal
-    openjpeg
-    pcre2
-    sqlite
-    tesseract
-    valgrind
-    wayland
-    wayland-protocols
-    xcbutil
-    xcbutilwm
-    xz
-  ]
-  ++ lib.optionals useEspeak [
-    espeak
-  ];
-
-  # Emulate external/git/clone.sh
-  postUnpack = let
-    inherit (allSources)
-      letoram-openal-src libuvc-src luajit-src tracy-src;
-    prepareSource = flag: source: destination:
-      lib.optionalString flag ''
-        cp -va ${source}/ ${destination}
-        chmod --recursive 744 ${destination}
-      '';
-  in
-    ''
-      pushd $sourceRoot/external/git/
-    ''
-    + prepareSource useStaticOpenAL letoram-openal-src "openal"
-    + prepareSource useStaticLibuvc libuvc-src "libuvc"
-    + prepareSource useBuiltinLua luajit-src "luajit"
-    + prepareSource useTracy tracy-src "tracy"
-    + ''
-      popd
-    '';
-
-  postPatch = ''
-    substituteInPlace ./src/platform/posix/paths.c \
-      --replace "/usr/bin" "$out/bin" \
-      --replace "/usr/share" "$out/share"
-    substituteInPlace ./src/CMakeLists.txt \
-      --replace "SETUID" "# SETUID"
-  '';
-
-  # INFO: Arcan build scripts require the manpages to be generated *before* the
-  # `configure` phase
-  preConfigure = lib.optionalString buildManPages ''
-    pushd doc
-    ruby docgen.rb mangen
-    popd
-  '';
-
-  cmakeFlags = [
-    # The upstream project recommends tagging the distribution
-    (lib.cmakeFeature "DISTR_TAG" "Nixpkgs")
-    (lib.cmakeFeature "ENGINE_BUILDTAG" finalAttrs.src.rev)
-    (lib.cmakeFeature "BUILD_PRESET" "everything")
-    (lib.cmakeBool "BUILTIN_LUA" useBuiltinLua)
-    (lib.cmakeBool "DISABLE_JIT" useBuiltinLua)
-    (lib.cmakeBool "STATIC_LIBUVC" useStaticLibuvc)
-    (lib.cmakeBool "STATIC_SQLite3" useStaticSqlite)
-    (lib.cmakeBool "ENABLE_TRACY" useTracy)
-    "../src"
-  ];
-
-  hardeningDisable = [
-    "format"
-  ];
-
-  meta = {
-    homepage = "https://arcan-fe.com/";
-    description = "Combined Display Server, Multimedia Framework, Game Engine";
-    longDescription = ''
-      Arcan is a portable and fast self-sufficient multimedia engine for
-      advanced visualization and analysis work in a wide range of applications
-      e.g. game development, real-time streaming video, monitoring and
-      surveillance, up to and including desktop compositors and window managers.
-    '';
-    license = with lib.licenses; [ bsd3 gpl2Plus lgpl2Plus ];
-    maintainers = with lib.maintainers; [ AndersonTorres ];
-    platforms = lib.platforms.unix;
-  };
-})
diff --git a/pkgs/desktops/arcan/cat9/default.nix b/pkgs/desktops/arcan/cat9/default.nix
deleted file mode 100644
index 7bc6005b0c650..0000000000000
--- a/pkgs/desktops/arcan/cat9/default.nix
+++ /dev/null
@@ -1,37 +0,0 @@
-{ lib
-, stdenvNoCC
-, fetchFromGitHub
-}:
-
-stdenvNoCC.mkDerivation (finalAttrs: {
-  pname = "cat9";
-  version = "unstable-2023-06-25";
-
-  src = fetchFromGitHub {
-    owner = "letoram";
-    repo = "cat9";
-    rev = "4d8a0c539a5c756acada96fd80e7eb3b9554ac05";
-    hash = "sha256-T3RPuldKTzHm0EdfdMOtHv9kcr9oE9YQgdzv/jjPPnc=";
-  };
-
-  dontConfigure = true;
-
-  dontBuild = true;
-
-  installPhase = ''
-    runHook preInstall
-
-    mkdir -p ${placeholder "out"}/share/arcan/appl/cat9
-    cp -a ./* ${placeholder "out"}/share/arcan/appl/cat9
-
-    runHook postInstall
-  '';
-
-  meta = with lib; {
-    homepage = "https://github.com/letoram/cat9";
-    description = "A User shell for LASH";
-    license = licenses.unlicense;
-    maintainers = with maintainers; [ AndersonTorres ];
-    platforms = platforms.all;
-  };
-})
diff --git a/pkgs/desktops/arcan/default.nix b/pkgs/desktops/arcan/default.nix
deleted file mode 100644
index 76cc6a2a4a03d..0000000000000
--- a/pkgs/desktops/arcan/default.nix
+++ /dev/null
@@ -1,49 +0,0 @@
-{ config, lib, pkgs }:
-
-lib.makeScope pkgs.newScope (self: with self; {
-  # Dependencies
-
-  espeak = pkgs.espeak-ng;
-  ffmpeg = pkgs.ffmpeg-full;
-  harfbuzz = pkgs.harfbuzzFull;
-
-  # Arcan
-
-  arcan = callPackage ./arcan { };
-  arcan-wrapped = callPackage ./wrapper.nix { };
-  xarcan = callPackage ./xarcan { };
-
-  # Appls
-
-  cat9 = callPackage ./cat9 { };
-  cat9-wrapped = callPackage ./wrapper.nix {
-    name = "cat9-wrapped";
-    appls = [ cat9 ];
-  };
-
-  durden = callPackage ./durden { };
-  durden-wrapped = callPackage ./wrapper.nix {
-    name = "durden-wrapped";
-    appls = [ durden ];
-  };
-
-  pipeworld = callPackage ./pipeworld { };
-  pipeworld-wrapped = callPackage ./wrapper.nix {
-    name = "pipeworld-wrapped";
-    appls = [ pipeworld ];
-  };
-
-  # Warning: prio is deprecated; however it works and is useful for testing
-  prio = callPackage ./prio { };
-  prio-wrapped = callPackage ./wrapper.nix {
-    name = "prio-wrapped";
-    appls = [ prio ];
-  };
-
-  # One Expression to SymlinkJoin Them All
-
-  all-wrapped = callPackage ./wrapper.nix {
-    name = "all-wrapped";
-    appls = [ durden cat9 pipeworld ];
-  };
-})
diff --git a/pkgs/desktops/arcan/durden/default.nix b/pkgs/desktops/arcan/durden/default.nix
deleted file mode 100644
index f6677b9823ffb..0000000000000
--- a/pkgs/desktops/arcan/durden/default.nix
+++ /dev/null
@@ -1,43 +0,0 @@
-{ lib
-, stdenvNoCC
-, fetchFromGitHub
-}:
-
-stdenvNoCC.mkDerivation (finalAttrs: {
-  pname = "durden";
-  version = "unstable-2023-08-11";
-
-  src = fetchFromGitHub {
-    owner = "letoram";
-    repo = "durden";
-    rev = "728d7fc3292cc162b1cea505c8a71512b2e84925";
-    hash = "sha256-UL36JeppnoFDdzdsJMsWKJL58ioz9eOaNEZp/7DGV9w=";
-  };
-
-  dontConfigure = true;
-
-  dontBuild = true;
-
-  installPhase = ''
-    runHook preInstall
-
-    mkdir -p ${placeholder "out"}/share/arcan/appl/
-    cp -a ./durden ${placeholder "out"}/share/arcan/appl/
-
-    runHook postInstall
-  '';
-
-  meta = with lib; {
-    homepage = "https://durden.arcan-fe.com/";
-    description = "Reference Desktop Environment for Arcan";
-    longDescription = ''
-      Durden is a desktop environment for the Arcan Display Server. It serves
-      both as a reference showcase on how to take advantage of some of the
-      features in Arcan, and as a very competent entry to the advanced-user side
-      of the desktop environment spectrum.
-    '';
-    license = licenses.bsd3;
-    maintainers = with maintainers; [ AndersonTorres ];
-    platforms = platforms.all;
-  };
-})
diff --git a/pkgs/desktops/arcan/pipeworld/default.nix b/pkgs/desktops/arcan/pipeworld/default.nix
deleted file mode 100644
index 9474535133fdb..0000000000000
--- a/pkgs/desktops/arcan/pipeworld/default.nix
+++ /dev/null
@@ -1,50 +0,0 @@
-{ lib
-, stdenvNoCC
-, fetchFromGitHub
-}:
-
-stdenvNoCC.mkDerivation (finalPackages: {
-  pname = "pipeworld";
-  version = "unstable-2023-03-02";
-
-  src = fetchFromGitHub {
-    owner = "letoram";
-    repo = "pipeworld";
-    rev = "9ea79f72ad500fe78b9f46e680be87eaac3bfb0e";
-    hash = "sha256-/cjse6XXrdLoUB35GLgl871qINOm4SvKPTbfoBceLu0=";
-  };
-
-  dontConfigure = true;
-
-  dontBuild = true;
-
-  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;
-  };
-})
diff --git a/pkgs/desktops/arcan/prio/default.nix b/pkgs/desktops/arcan/prio/default.nix
deleted file mode 100644
index f733b189757b3..0000000000000
--- a/pkgs/desktops/arcan/prio/default.nix
+++ /dev/null
@@ -1,37 +0,0 @@
-{ lib
-, stdenvNoCC
-, fetchFromGitHub
-}:
-
-stdenvNoCC.mkDerivation (finalAttrs: {
-  pname = "prio";
-  version = "unstable-2018-09-13";
-
-  src = fetchFromGitHub {
-    owner = "letoram";
-    repo = "prio";
-    rev = "c3f97491339d15f063d6937d5f89bcfaea774dd1";
-    hash = "sha256-Idv/duEYmDk/rO+TI8n+FY3VFDtUEh8C292jh12BJuM=";
-  };
-
-  dontConfigure = true;
-
-  dontBuild = true;
-
-  installPhase = ''
-    runHook preInstall
-
-    mkdir -p ${placeholder "out"}/share/arcan/appl/prio
-    cp -a ./* ${placeholder "out"}/share/arcan/appl/prio
-
-    runHook postInstall
-  '';
-
-  meta = with lib; {
-    homepage = "https://github.com/letoram/prio";
-    description = "Plan9- Rio like Window Manager for Arcan";
-    license = licenses.bsd3;
-    maintainers = with maintainers; [ AndersonTorres ];
-    platforms = platforms.all;
-  };
-})
diff --git a/pkgs/desktops/arcan/wrapper.nix b/pkgs/desktops/arcan/wrapper.nix
deleted file mode 100644
index b61c5a5becd87..0000000000000
--- a/pkgs/desktops/arcan/wrapper.nix
+++ /dev/null
@@ -1,29 +0,0 @@
-{ arcan
-, makeWrapper
-, symlinkJoin
-, appls ? [ ]
-, name ? "arcan-wrapped"
-}:
-
-symlinkJoin rec {
-  inherit name;
-
-  paths = appls ++ [ arcan ];
-
-  nativeBuildInputs = [ makeWrapper ];
-
-  postBuild = ''
-    for prog in ${placeholder "out"}/bin/*; do
-      wrapProgram $prog \
-        --prefix PATH ":" "${placeholder "out"}/bin" \
-        --set ARCAN_APPLBASEPATH "${placeholder "out"}/share/arcan/appl/" \
-        --set ARCAN_BINPATH "${placeholder "out"}/bin/arcan_frameserver" \
-        --set ARCAN_LIBPATH "${placeholder "out"}/lib/" \
-        --set ARCAN_RESOURCEPATH "${placeholder "out"}/share/arcan/resources/" \
-        --set ARCAN_SCRIPTPATH "${placeholder "out"}/share/arcan/scripts/"
-    done
-  '';
-}
-# TODO: set ARCAN_STATEBASEPATH to $HOME/.arcan/resources/savestates/ - possibly
-# via a suitable script
-# TODO: set ARCAN_FONTPATH to a set of default-but-configurable fontset
diff --git a/pkgs/desktops/arcan/xarcan/default.nix b/pkgs/desktops/arcan/xarcan/default.nix
deleted file mode 100644
index b979b64a06c5b..0000000000000
--- a/pkgs/desktops/arcan/xarcan/default.nix
+++ /dev/null
@@ -1,119 +0,0 @@
-{ lib
-, stdenv
-, fetchFromGitHub
-, fetchpatch
-, arcan
-, audit
-, dbus
-, libepoxy
-, fontutil
-, libGL
-, libX11
-, libXau
-, libXdmcp
-, libXfont2
-, libdrm
-, libgcrypt
-, libmd
-, libselinux
-, libtirpc
-, libxcb
-, libxkbfile
-, libxshmfence
-, mesa
-, meson
-, nettle
-, ninja
-, openssl
-, pixman
-, pkg-config
-, systemd
-, xcbutil
-, xcbutilwm
-, xkbcomp
-, xkeyboard_config
-, xorgproto
-, xtrans
-}:
-
-stdenv.mkDerivation (finalPackages: {
-  pname = "xarcan";
-  version = "unstable-2022-06-14";
-
-  src = fetchFromGitHub {
-    owner = "letoram";
-    repo = "xarcan";
-    rev = "02111f4925453c0c545e9193c6a5e22c0d4e98c3";
-    hash = "sha256-rp2sNRbv0OZdfyqZfsv/v3TGQY5uyXWqbvlmUDd7iBk=";
-  };
-
-  nativeBuildInputs = [
-    meson
-    ninja
-    pkg-config
-  ];
-
-  buildInputs = [
-    arcan
-    audit
-    dbus
-    libepoxy
-    fontutil
-    libGL
-    libX11
-    libXau
-    libXdmcp
-    libXfont2
-    libdrm
-    libgcrypt
-    libmd
-    libselinux
-    libtirpc
-    libxcb
-    libxkbfile
-    libxshmfence
-    mesa
-    nettle
-    openssl
-    pixman
-    systemd
-    xcbutil
-    xcbutilwm
-    xkbcomp
-    xkeyboard_config
-    xorgproto
-    xtrans
-  ];
-
-  configureFlags = [
-    "--disable-int10-module"
-    "--disable-static"
-    "--disable-xnest"
-    "--disable-xorg"
-    "--disable-xvfb"
-    "--disable-xwayland"
-    "--enable-glamor"
-    "--enable-glx"
-    "--enable-ipv6"
-    "--enable-kdrive"
-    "--enable-record"
-    "--enable-xarcan"
-    "--enable-xcsecurity"
-    "--with-xkb-bin-directory=${xkbcomp}/bin"
-    "--with-xkb-output=/tmp"
-    "--with-xkb-path=${xkeyboard_config}/share/X11/xkb"
-  ];
-
-  meta = with lib; {
-    homepage = "https://github.com/letoram/letoram";
-    description = "Patched Xserver that bridges connections to Arcan";
-    longDescription = ''
-      xarcan is a patched X server with a KDrive backend that uses the
-      arcan-shmif to map Xlib/Xcb/X clients to a running arcan instance. It
-      allows running an X session as a window under Arcan.
-    '';
-    license = licenses.mit;
-    maintainers = with maintainers; [ AndersonTorres ];
-    platforms = platforms.unix;
-  };
-})