Commit 0875a51b authored by Kasper Gałkowski's avatar Kasper Gałkowski
Browse files

sbclPackages.nyxt: remove

It's now built from release tarball with make. It's been removed from upstream quicklisp, too.
parent bab6f05d
Loading
Loading
Loading
Loading
+0 −265
Original line number Diff line number Diff line
@@ -206,271 +206,6 @@ let
    lispLibs = super.mathkit.lispLibs ++ [ super.sb-cga ];
  };

  cl-colors2_0_5_4 = build-asdf-system {
    inherit (super.cl-colors2) pname systems lispLibs;
    version = "0.5.4";

    src = pkgs.fetchgit {
      url = "https://codeberg.org/cage/cl-colors2";
      rev = "v0.5.4";
      sha256 = "sha256-JbT1BKjaXDwdlzHLPjX1eg0RMIOT86R17SPgbe2h+tA=";
    };
  };

  prompter = build-asdf-system rec {
    pname = "prompter";
    version = "20240108-git";

    src = pkgs.fetchFromGitHub {
      owner = "atlas-engineer";
      repo = "prompter";
      rev = "7890ed5d02e70aba01ceb964c6ee4f40776e7dc0";
      hash = "sha256-rRKtpSKAqfzvnlC3NQ4840RrlbBUpI4V6uX6p5hRJWQ=";
    };

    lispLibs = [
      self.cl-containers
      self.nclasses
      self.alexandria
      self.calispel
      self.closer-mop
      self.lparallel
      self.moptilities
      self.serapeum
      self.str
      self.trivial-package-local-nicknames
    ];

  };

  njson = build-asdf-system rec {
    pname = "njson";
    version = "1.2.2";
    src = pkgs.fetchFromGitHub {
      owner = "atlas-engineer";
      repo = "njson";
      rev = version;
      sha256 = "sha256-kw5DD0GJp/TeCiYATBY8GL8UKqYS6Q4j0a0eQsdcZRc=";
    };
    lispLibs = [ self.cl-json self.com_dot_inuoe_dot_jzon];
    systems = [ "njson" "njson/cl-json" "njson/jzon"];
  };

  nsymbols = build-asdf-system rec {
    pname = "nsymbols";
    version = "0.3.2";
    src = pkgs.fetchFromGitHub {
      owner = "atlas-engineer";
      repo = "nsymbols";
      rev = version;
      sha256 = "sha256-psk29WEA7Hxgp29oUniBNvI+lyZfMkdpa5A7okc6kKs=";
    };
    lispLibs = [ self.closer-mop ];
    systems = [ "nsymbols" "nsymbols/star" ];

  };

  nclasses = build-asdf-system rec {
    pname = "nclasses";
    version = "0.6.1";
    src = pkgs.fetchFromGitHub {
      owner = "atlas-engineer";
      repo = "nclasses";
      rev = version;
      sha256 = "sha256-foXmaLxMYMFieB2Yd2iPsU4EX5kLXq7kyElqGZ47OgI=";
    };
    lispLibs = [ self.moptilities ];
  };

  nfiles = build-asdf-system rec {
    pname = "nfiles";
    version = "1.1.4";
    src = pkgs.fetchFromGitHub {
      owner = "atlas-engineer";
      repo = "nfiles";
      rev = version;
      sha256 = "sha256-4rhpBErQgZHcwZRblxgiYaUmKalvllSbJjnRteDVH6k=";
    };
    lispLibs = [
      self.nclasses
      self.quri
      self.alexandria
      self.iolib
      self.serapeum
      self.trivial-garbage
      self.trivial-package-local-nicknames
      self.trivial-types
    ];
  };

  nhooks = build-asdf-system rec {
    pname = "nhooks";
    version = "1.2.2";
    src = pkgs.fetchFromGitHub {
      owner = "atlas-engineer";
      repo = "nhooks";
      rev = version;
      hash = "sha256-6A3fsemsv2KbTmdGMQeL9iHFUBHc4kK6CRNVyc91LdU=";
    };
    lispLibs = with self; [ bordeaux-threads closer-mop serapeum ];
  };

  nkeymaps = build-asdf-system rec {
    pname = "nkeymaps";
    version = "1.1.1";
    src = pkgs.fetchFromGitHub {
      owner = "atlas-engineer";
      repo = "nkeymaps";
      rev = version;
      hash = "sha256-/t85Yh4EvnSyIM6xeDBLmfVz3wddmavInXzeYafNMJ0=";
    };
    lispLibs = with self; [ alexandria fset trivial-package-local-nicknames
                            str ];
  };


  history-tree = build-asdf-system rec {
    pname = "history-tree";
    version = "0.1.2";
    src = pkgs.fetchFromGitHub {
      owner = "atlas-engineer";
      repo = "history-tree";
      rev = version;
      hash = "sha256-wpVONvShNnvrPOlbNoX/t9sYiwxnIKnnJaJyALEyeNg=";
    };
    lispLibs = with self; [
      alexandria
      cl-custom-hash-table
      local-time
      nclasses
      trivial-package-local-nicknames
    ];
  };

  nyxt-gtk = build-asdf-system {
    pname = "nyxt";
    version = "3.11.6";

    lispLibs = (with self; [
      alexandria
      bordeaux-threads
      calispel
      cl-base64
      cl-gopher
      cl-html-diff
      cl-json
      cl-ppcre
      cl-ppcre-unicode
      cl-prevalence
      cl-qrencode
      cl-tld
      closer-mop
      dissect
      moptilities
      dexador
      enchant
      flexi-streams
      idna
      iolib
      lass
      local-time
      lparallel
      log4cl
      montezuma
      ndebug
      osicat
      parenscript
      py-configparser
      serapeum
      str
      phos
      plump
      clss
      spinneret
      trivia
      trivial-features
      trivial-garbage
      trivial-package-local-nicknames
      trivial-types
      unix-opts
      cluffer
      cl-cffi-gtk
      quri
      sqlite
      trivial-clipboard
      cl-gobject-introspection
      cl-webkit2
      slynk
      iterate
      symbol-munger
      history-tree
      nhooks
      nkeymaps
      prompter
      cl-colors2_0_5_4
      njson
      nsymbols
      nclasses
      nfiles
      cl-containers
      swank
    ]);

    src = pkgs.fetchFromGitHub {
      owner = "atlas-engineer";
      repo = "nyxt";
      rev = "3.11.6";
      hash = "sha256-o+4LnSNyhdz5YAjNQJuE2ERtt48PckjKfts9QVRw82A=";
    };

    nativeBuildInputs = [ pkgs.makeWrapper ];

    buildInputs = [
      # needed for GSETTINGS_SCHEMAS_PATH
      pkgs.gsettings-desktop-schemas pkgs.glib pkgs.gtk3

      # needed for XDG_ICON_DIRS
      pkgs.adwaita-icon-theme
    ];

    # This patch removes the :build-operation component from the nyxt/gi-gtk-application system.
    # This is done because if asdf:operate is used and the operation matches the system's :build-operation
    # then output translations are ignored, causing the result of the operation to be placed where
    # the .asd is located, which in this case is the nix store.
    # see: https://gitlab.common-lisp.net/asdf/asdf/-/blob/master/doc/asdf.texinfo#L2582
    patches = [ ./patches/nyxt-remove-build-operation.patch ];

    NASDF_USE_LOGICAL_PATHS = true;

    buildScript = pkgs.writeText "build-nyxt.lisp" ''
      (load "${super.alexandria.asdfFasl}/asdf.${super.alexandria.faslExt}")
      (require :uiop)
      (let ((pwd (uiop:ensure-directory-pathname (uiop/os:getcwd))))
        (asdf:load-asd (uiop:merge-pathnames* "libraries/nasdf/nasdf.asd" pwd))
        (asdf:load-asd (uiop:merge-pathnames* "nyxt.asd" pwd)))
      ;; There's a weird error while copy/pasting in Nyxt that manifests with sb-ext:save-lisp-and-die, so we use asdf:operare :program-op instead
      (asdf:operate :program-op :nyxt/gi-gtk-application)
    '';

    # TODO(kasper): use wrapGAppsHook3
    installPhase = ''
      mkdir -pv $out
      cp -r * $out
      rm -fv $out/nyxt
      mkdir -p $out/bin
      cp -v nyxt $out/bin
      wrapProgram $out/bin/nyxt \
        --prefix LD_LIBRARY_PATH : $LD_LIBRARY_PATH \
        --prefix XDG_DATA_DIRS : $XDG_ICON_DIRS \
        --prefix XDG_DATA_DIRS : $GSETTINGS_SCHEMAS_PATH \
        --prefix GI_TYPELIB_PATH : $GI_TYPELIB_PATH \
        --prefix GIO_EXTRA_MODULES ":" ${pkgs.dconf.lib}/lib/gio/modules/ \
        --prefix GIO_EXTRA_MODULES ":" ${pkgs.glib-networking}/lib/gio/modules/
    '';
  };

  nyxt = self.nyxt-gtk;

  stumpwm = super.stumpwm.overrideLispAttrs (o: rec {
    version = "22.11";
    src = pkgs.fetchFromGitHub {