From 5029a3e3b836f1ba3bbd57405a102a8ade70d9d4 Mon Sep 17 00:00:00 2001 From: Alan Daniels Date: Mon, 15 Dec 2025 20:02:33 +1100 Subject: [PATCH] patch & packaging with nix --- .gitignore | 1 + cl-dates.asd | 14 +++++++------- flake.lock | 27 +++++++++++++++++++++++++++ flake.nix | 29 +++++++++++++++++++++++++++++ 4 files changed, 64 insertions(+), 7 deletions(-) create mode 100644 .gitignore create mode 100644 flake.lock create mode 100644 flake.nix diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..b2be92b --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +result diff --git a/cl-dates.asd b/cl-dates.asd index ff21baf..96f6a5e 100644 --- a/cl-dates.asd +++ b/cl-dates.asd @@ -26,12 +26,12 @@ (in-package :cl-user) -(defpackage :cl-dates - (:use :cl :asdf)) +;; (defpackage :cl-dates +;; (:use :cl :asdf)) -(in-package :cl-dates) +;; (in-package :cl-dates) -(defsystem :cl-dates +(asdf:defsystem :cl-dates :version "1.0" :description "Date arithmetic library for Common Lisp" :author "Sudhir Shenoy" @@ -48,7 +48,7 @@ (:file "calendar") (:file "bus-date-arith"))) -(defsystem :cl-dates-test +(asdf:defsystem :cl-dates-test :description "Date arithmetic library tests" :author "Sudhir Shenoy" :license "BSD" @@ -60,6 +60,6 @@ (:file "test-parse-date") (:file "test-hols"))))) -(defmethod perform ((o test-op) (c (eql (find-system :cl-dates)))) - (operate 'load-op :cl-dates-test) +(defmethod asdf:perform ((o asdf:test-op) (c (eql (asdf:find-system :cl-dates)))) + (asdf:operate 'asdf:load-op :cl-dates-test) (funcall (intern (symbol-name :run-all-tests) (find-package :cl-dates-test)))) diff --git a/flake.lock b/flake.lock new file mode 100644 index 0000000..eee0f29 --- /dev/null +++ b/flake.lock @@ -0,0 +1,27 @@ +{ + "nodes": { + "nixpkgs": { + "locked": { + "lastModified": 1765472234, + "narHash": "sha256-9VvC20PJPsleGMewwcWYKGzDIyjckEz8uWmT0vCDYK0=", + "owner": "nixos", + "repo": "nixpkgs", + "rev": "2fbfb1d73d239d2402a8fe03963e37aab15abe8b", + "type": "github" + }, + "original": { + "owner": "nixos", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "root": { + "inputs": { + "nixpkgs": "nixpkgs" + } + } + }, + "root": "root", + "version": 7 +} diff --git a/flake.nix b/flake.nix new file mode 100644 index 0000000..1127d99 --- /dev/null +++ b/flake.nix @@ -0,0 +1,29 @@ +{ + description = "A very basic flake"; + + inputs = { + nixpkgs.url = "github:nixos/nixpkgs?ref=nixos-unstable"; + }; + + outputs = { + self, + nixpkgs, + }: let + pkgs = import nixpkgs {system = "x86_64-linux";}; + cl-dates = pkgs.sbcl.buildASDFSystem { + pname = "cl-dates"; + version = "latest"; + src = ./.; + }; + in { + packages.x86_64-linux.default = cl-dates; + + devShells.x86_64-linux.default = pkgs.mkShell { + buildInputs = [ + (pkgs.sbcl.withPackages (ps: [ + cl-dates + ])) + ]; + }; + }; +}