about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--configurations/eonwe/vidya.nix1
-rw-r--r--modules/emacs/default.nix2
-rw-r--r--modules/emacs/doom/init.el2
-rw-r--r--overlays.nix2
-rw-r--r--packages/lampray.nix58
5 files changed, 63 insertions, 2 deletions
diff --git a/configurations/eonwe/vidya.nix b/configurations/eonwe/vidya.nix
index 5753ede..8f1faf4 100644
--- a/configurations/eonwe/vidya.nix
+++ b/configurations/eonwe/vidya.nix
@@ -28,6 +28,7 @@
     fallout-ce
     fallout2-ce
     gzdoom
+    lampray
     nethack
     openmw
     openttd
diff --git a/modules/emacs/default.nix b/modules/emacs/default.nix
index 762c0a6..3e59ce8 100644
--- a/modules/emacs/default.nix
+++ b/modules/emacs/default.nix
@@ -135,13 +135,13 @@ in
                       pipenv # :lang python
                       poetry # :lang python
                       pre-commit # :tools magit
+                      pyright # :lang python :editor format
                       python3 # :lang python
                       python3Packages.black # :lang python :editor format
                       python3Packages.isort # :lang python :editor format
                       python3Packages.nose2 # :lang python
                       python3Packages.pyflakes # :lang python :editor format
                       python3Packages.pytest # :lang python
-                      python3Packages.python-lsp-server # :lang python :editor format
                       ripgrep # doom!
                       rust-analyzer # :lang (rust +lsp)
                       rustc # :lang rust
diff --git a/modules/emacs/doom/init.el b/modules/emacs/doom/init.el
index ac4a687..8b04fa7 100644
--- a/modules/emacs/doom/init.el
+++ b/modules/emacs/doom/init.el
@@ -81,7 +81,7 @@
        (nix +lsp +tree-sitter)
        (org +pandoc +roam2)
        plantuml
-       (python +poetry +lsp +tree-sitter)
+       (python +poetry +pyright +lsp +tree-sitter)
        (rust +lsp +tree-sitter)
        (sh +lsp +tree-sitter)
        web
diff --git a/overlays.nix b/overlays.nix
index d387ea3..8e774e2 100644
--- a/overlays.nix
+++ b/overlays.nix
@@ -35,6 +35,8 @@ _: {
 
     hiccup = prev.callPackage ./packages/hiccup.nix { };
 
+    lampray = prev.callPackage ./packages/lampray.nix { };
+
     logcli = prev.grafana-loki.overrideAttrs (
       _: super: {
         pname = "logcli";
diff --git a/packages/lampray.nix b/packages/lampray.nix
new file mode 100644
index 0000000..876bf60
--- /dev/null
+++ b/packages/lampray.nix
@@ -0,0 +1,58 @@
+{
+  SDL2,
+  autoPatchelfHook,
+  cmake,
+  curl,
+  fetchFromGitHub,
+  lib,
+  lz4,
+  ninja,
+  pkg-config,
+  stdenv,
+}:
+stdenv.mkDerivation {
+  pname = "lampray";
+  version = "1.4.0-unstable-2024-05-25";
+
+  src = fetchFromGitHub {
+    owner = "CHollingworth";
+    repo = "Lampray";
+    rev = "c549fbfbd6ad18b2eca0a6d17b6066d1f74c54b7";
+    hash = "sha256-tjFxHU2kFS5yX0itm4rGKLE7lm/NMgsRjTEGykJELv8=";
+  };
+
+  nativeBuildInputs = [
+    autoPatchelfHook
+    cmake
+    ninja
+    pkg-config
+  ];
+
+  buildInputs = [
+    SDL2
+    curl
+    lz4
+  ];
+
+  installPhase = ''
+    runHook preInstall
+
+    install -Dm755 Lampray $out/bin/lampray
+
+    runHook postInstall
+  '';
+
+  meta = with lib; {
+    description = "Mod manager for gaming on Linux";
+    homepage = "https://github.com/CHollingworth/Lampray";
+    license = with licenses; [
+      unlicense
+      mpl20 # bit7z
+      mit # json & pugixml
+      bsd2 # l4z
+      gpl2Only # l4z
+    ];
+    platforms = [ "x86_64-linux" ];
+    maintainers = with maintainers; [ azahi ];
+  };
+}

Consider giving Nix/NixOS a try! <3