Initial commit
This commit is contained in:
commit
b21f266793
|
@ -0,0 +1,84 @@
|
||||||
|
{
|
||||||
|
description = "Lisp packages not included in nixpkgs.";
|
||||||
|
|
||||||
|
inputs = {
|
||||||
|
nixpkgs.url = "nixpkgs/nixos-23.11";
|
||||||
|
utils.url = "github:numtide/flake-utils";
|
||||||
|
|
||||||
|
agnostic-lizard = {
|
||||||
|
url = "https://gitlab.common-lisp.net/mraskin/agnostic-lizard.git";
|
||||||
|
flake = false;
|
||||||
|
};
|
||||||
|
arrows = {
|
||||||
|
url = "github:Harlequin/arrows";
|
||||||
|
flake = false;
|
||||||
|
};
|
||||||
|
cl-sasl = {
|
||||||
|
url = "github:legoscia/cl-sasl";
|
||||||
|
flake = false;
|
||||||
|
};
|
||||||
|
fare-mop = {
|
||||||
|
url = "github:fare/fare-mop";
|
||||||
|
flake = false;
|
||||||
|
};
|
||||||
|
file-types = {
|
||||||
|
url = "github:eugenia/file-types";
|
||||||
|
flake = false;
|
||||||
|
};
|
||||||
|
inferior-shell = {
|
||||||
|
url = "github:fare/inferior-shell";
|
||||||
|
flake = false;
|
||||||
|
};
|
||||||
|
ip-utils = {
|
||||||
|
url = "https://fudo.dev/publc/ip-utils.git";
|
||||||
|
flake = false;
|
||||||
|
};
|
||||||
|
oscicat = {
|
||||||
|
url = "github:osicat/osicat";
|
||||||
|
flake = false;
|
||||||
|
};
|
||||||
|
sly = {
|
||||||
|
url = "github:joaotavora/sly";
|
||||||
|
flake = false;
|
||||||
|
};
|
||||||
|
sly-asdf = {
|
||||||
|
url = "github:mmgeorge/sly-asdf";
|
||||||
|
flake = false;
|
||||||
|
};
|
||||||
|
sly-macrostep = {
|
||||||
|
url = "github:joaotavora/sly-macrostep";
|
||||||
|
flake = false;
|
||||||
|
};
|
||||||
|
sly-stepper = {
|
||||||
|
url = "github:joaotavora/sly-stepper";
|
||||||
|
flake = false;
|
||||||
|
};
|
||||||
|
usocket = {
|
||||||
|
url = "github:usocket/usocket";
|
||||||
|
flake = false;
|
||||||
|
};
|
||||||
|
xml-emitter = {
|
||||||
|
url = "github:VitoVan/xml-emitter";
|
||||||
|
flake = false;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
outputs = { self, nixpkgs, utils, ... }@inputs:
|
||||||
|
(utils.lib.eachDefaultSystem (system:
|
||||||
|
let pkgs = import nixpkgs { inherit system; };
|
||||||
|
in pkgs.callPackage ./packages.nix { inherit inputs; })) // {
|
||||||
|
overlays = rec {
|
||||||
|
default = packages;
|
||||||
|
packages = (final: prev: {
|
||||||
|
lispPackages = prev.lispPackages // self.packages."${prev.system}";
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
|
nixosModules = rec {
|
||||||
|
default = packages;
|
||||||
|
packages = { ... }: {
|
||||||
|
config.nixpkgs.overlays = [ self.overlays.packages ];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
|
@ -0,0 +1,228 @@
|
||||||
|
{ inputs, lispPackages, ... }:
|
||||||
|
|
||||||
|
let inherit (lispPackages) buildLispPackage;
|
||||||
|
in rec {
|
||||||
|
agnostic-lizard = buildLispPackage {
|
||||||
|
baseName = "agnostic-lizard";
|
||||||
|
packageName = "agnostic-lizard";
|
||||||
|
description =
|
||||||
|
"Agnostic Lizard is a portable implementation of a code walker and in particular of the macroexpand-all function (and macro) that makes a best effort to be correct while not expecting much beyond what the Common Lisp standard requires.";
|
||||||
|
|
||||||
|
buildSystems = [ "agnostic-lizard" ];
|
||||||
|
|
||||||
|
deps = [ ];
|
||||||
|
|
||||||
|
src = inputs.agnostic-lizard;
|
||||||
|
|
||||||
|
asdFilesToKeep = [ "agnostic-lizard.asd" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
arrows = buildLispPackage {
|
||||||
|
baseName = "arrows";
|
||||||
|
packageName = "arrows";
|
||||||
|
description = "Clojure-style arrows for Common Lisp";
|
||||||
|
|
||||||
|
buildSystems = [ "arrows" ];
|
||||||
|
|
||||||
|
deps = [ ];
|
||||||
|
|
||||||
|
src = inputs.arrows;
|
||||||
|
|
||||||
|
asdFilesToKeep = [ "arrows.asd" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
cl-sasl = buildLispPackage {
|
||||||
|
description = "SASL package for common lisp";
|
||||||
|
baseName = "cl-sasl";
|
||||||
|
packageName = "cl-sasl";
|
||||||
|
|
||||||
|
buildSystems = [ "cl-sasl" ];
|
||||||
|
|
||||||
|
deps = with lispPackages; [ ironclad ];
|
||||||
|
|
||||||
|
src = inputs.cl-sasl;
|
||||||
|
|
||||||
|
asdFilesToKeep = [ "cl-sasl.asd" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
fare-mop = buildLispPackage {
|
||||||
|
baseName = "fare-mop";
|
||||||
|
packageName = "fare-mop";
|
||||||
|
description = "fare-mop has a few simple utilities relying on the MOP.";
|
||||||
|
|
||||||
|
buildSystems = [ "fare-mop" ];
|
||||||
|
|
||||||
|
deps = with lispPackages; [ closer-mop fare-utils ];
|
||||||
|
|
||||||
|
src = inputs.fare-mop;
|
||||||
|
|
||||||
|
asdFilesToKeep = [ "fare-mop.asd" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
file-types = buildLispPackage {
|
||||||
|
baseName = "file-types";
|
||||||
|
packageName = "file-types";
|
||||||
|
description =
|
||||||
|
"Simple scheme to classify file types in a hierarchical fashion. Includes support for associating and querying MIME types.";
|
||||||
|
|
||||||
|
buildSystems = [ "file-types" ];
|
||||||
|
|
||||||
|
deps = [ ];
|
||||||
|
|
||||||
|
src = inputs.file-types;
|
||||||
|
|
||||||
|
asdFilesToKeep = [ "file-types.asd" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
inferior-shell = buildLispPackage {
|
||||||
|
baseName = "inferior-shell";
|
||||||
|
packageName = "inferior-shell";
|
||||||
|
description =
|
||||||
|
"This CL library allows you to spawn local or remote processes and shell pipes.";
|
||||||
|
|
||||||
|
buildSystems = [ "inferior-shell" ];
|
||||||
|
|
||||||
|
deps = with lispPackages; [
|
||||||
|
pkgs.asdf
|
||||||
|
alexandria
|
||||||
|
fare-mop
|
||||||
|
fare-quasiquote-extras
|
||||||
|
fare-utils
|
||||||
|
trivia
|
||||||
|
trivia_dot_quasiquote
|
||||||
|
];
|
||||||
|
|
||||||
|
src = inputs.inferior-shell;
|
||||||
|
|
||||||
|
asdFilesToKeep = [ "inferior-shell.asd" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
ip-utils = buildLispPackage {
|
||||||
|
baseName = "ip-utils";
|
||||||
|
packageName = "ip-utils";
|
||||||
|
description = "Simple Common Lisp utility functions for working with IPs";
|
||||||
|
|
||||||
|
buildSystems = [ "ip-utils" ];
|
||||||
|
|
||||||
|
deps = with lispPackages; [ cl-ppcre split-sequence trivia ];
|
||||||
|
|
||||||
|
src = inputs.ip-utils;
|
||||||
|
|
||||||
|
asdFilesToKeep = [ "ip-utils.asd" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
osicat = buildLispPackage {
|
||||||
|
baseName = "osicat";
|
||||||
|
packageName = "osicat";
|
||||||
|
description =
|
||||||
|
"Osicat is a lightweight operating system interface for Common Lisp on Unix-platforms.";
|
||||||
|
|
||||||
|
buildSystems = [ "osicat" ];
|
||||||
|
|
||||||
|
deps = with lispPackages; [ alexandria cffi-grovel trivial-features ];
|
||||||
|
|
||||||
|
src = inputs.osicat;
|
||||||
|
|
||||||
|
asdFilesToKeep = [ "osicat.asd" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
slynk = buildLispPackage {
|
||||||
|
baseName = "slynk";
|
||||||
|
packageName = "slynk";
|
||||||
|
description = "SLY is Sylvester the Cat's Common Lisp IDE for Emacs.";
|
||||||
|
|
||||||
|
buildSystems = [
|
||||||
|
"slynk"
|
||||||
|
"slynk/arglists"
|
||||||
|
"slynk/fancy-inspector"
|
||||||
|
"slynk/package-fu"
|
||||||
|
"slynk/mrepl"
|
||||||
|
"slynk/trace-dialog"
|
||||||
|
"slynk/profiler"
|
||||||
|
"slynk/stickers"
|
||||||
|
"slynk/stickers"
|
||||||
|
"slynk/indentation"
|
||||||
|
"slynk/retro"
|
||||||
|
];
|
||||||
|
|
||||||
|
deps = [ ];
|
||||||
|
|
||||||
|
src = inputs.slynk;
|
||||||
|
|
||||||
|
asdFilesToKeep = [ "slynk/slynk.asd" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
slynk-asdf = buildLispPackage {
|
||||||
|
baseName = "slynk-asdf";
|
||||||
|
packageName = "slynk-asdf";
|
||||||
|
description =
|
||||||
|
"SLY-ASDF is a contrib for SLY that adds support for editing ASDF systems, exposing several utilities for working with and loading systems.";
|
||||||
|
|
||||||
|
buildSystems = [ "slynk-asdf" ];
|
||||||
|
|
||||||
|
deps = [ slynk ];
|
||||||
|
|
||||||
|
src = inputs.slynk-asdf;
|
||||||
|
|
||||||
|
asdFilesToKeep = [ "slynk-asdf.asd" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
slynk-macrostep = buildLispPackage {
|
||||||
|
baseName = "slynk-macrostep";
|
||||||
|
packageName = "slynk-macrostep";
|
||||||
|
description =
|
||||||
|
"sly-macrostep is a SLY contrib for expanding CL macros right inside the source file.";
|
||||||
|
|
||||||
|
buildSystems = [ "slynk-macrostep" ];
|
||||||
|
|
||||||
|
deps = [ slynk ];
|
||||||
|
|
||||||
|
src = inputs.slynk-macrostep;
|
||||||
|
|
||||||
|
asdFilesToKeep = [ "slynk-macrostep.asd" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
slynk-stepper = buildLispPackage {
|
||||||
|
baseName = "slynk-stepper";
|
||||||
|
packageName = "slynk-stepper";
|
||||||
|
description = "A portable Common Lisp stepper interface.";
|
||||||
|
|
||||||
|
buildSystems = [ "slynk-stepper" ];
|
||||||
|
|
||||||
|
deps = [ agnostic-lizard slynk ];
|
||||||
|
|
||||||
|
src = inputs.slynk-stepper;
|
||||||
|
|
||||||
|
asdFilesToKeep = [ "slynk-stepper.asd" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
usocket-server = buildLispPackage {
|
||||||
|
baseName = "usocket-server";
|
||||||
|
packageName = "usocket-server";
|
||||||
|
description =
|
||||||
|
"This is the usocket Common Lisp sockets library: a library to bring sockets access to the broadest of common lisp implementations as possible.";
|
||||||
|
|
||||||
|
buildSystems = [ "usocket" "usocket-server" ];
|
||||||
|
|
||||||
|
deps = with lispPackages; [ bordeaux-threads split-sequence ];
|
||||||
|
|
||||||
|
src = inputs.usocket-server;
|
||||||
|
|
||||||
|
asdFilesToKeep = [ "usocket.asd" "usocket-server.asd" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
xml-emitter = buildLispPackage {
|
||||||
|
baseName = "xml-emitter";
|
||||||
|
packageName = "xml-emitter";
|
||||||
|
description = "Map Lisp to XML.";
|
||||||
|
|
||||||
|
buildSystems = [ "xml-emitter" ];
|
||||||
|
|
||||||
|
deps = with lispPackages; [ cl-utilities ];
|
||||||
|
|
||||||
|
src = inputs.xml-emitter;
|
||||||
|
|
||||||
|
asdFilesToKeep = [ "xml-emitter.asd" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
}
|
Loading…
Reference in New Issue