From 9ed3fa66908f5f446fffe1055694536453a8c63e Mon Sep 17 00:00:00 2001 From: Matt Nish-Lapidus Date: Wed, 16 Oct 2024 14:22:52 -0400 Subject: [PATCH] stuff --- dotfiles/dot_sbclrc | 28 +++++++++++++++++++++++++--- home/home.nix | 26 +++++++++++++++++++++----- 2 files changed, 46 insertions(+), 8 deletions(-) diff --git a/dotfiles/dot_sbclrc b/dotfiles/dot_sbclrc index 93c4fc4..a647fb3 100644 --- a/dotfiles/dot_sbclrc +++ b/dotfiles/dot_sbclrc @@ -1,9 +1,31 @@ - -;;; The following lines added by ql:add-to-init-file: +;; The following lines added by ql:add-to-init-file: #-quicklisp -(let ((quicklisp-init (merge-pathnames "~/.quicklisp/setup.lisp" +#+asdf (require :asdf) + +(let ((quicklisp-init (merge-pathnames "quicklisp/setup.lisp" (user-homedir-pathname)))) (when (probe-file quicklisp-init) (load quicklisp-init))) (push (pathname "~/source/_cl/") ql:*local-project-directories*) + +(ql:quickload :cffi :silent t) +(pushnew (merge-pathnames ".nix-profile/lib/" (user-homedir-pathname)) + cffi:*foreign-library-directories*) +(pushnew (merge-pathnames ".nix-profile/lib64/" (user-homedir-pathname)) + cffi:*foreign-library-directories*) + + +(defun pkg-config-add-lib (libname) + (let ((process (sb-ext:run-program "/usr/bin/env" + (list "pkg-config" libname "--libs-only-L") + :input t :output :stream :wait t))) + (let ((stream (sb-ext:process-output process))) + (loop for line = (read-line stream nil nil) + while line do + ;; Drop "-L" part, and add '/' to the end. '/' IS necessary! + (pushnew (pathname (concatenate 'string (subseq line 2) "/")) + cffi:*foreign-library-directories*)) + (sb-ext:process-close process)))) +;; load specific libs +(pkg-config-add-lib "libffi") diff --git a/home/home.nix b/home/home.nix index 891a194..386f071 100644 --- a/home/home.nix +++ b/home/home.nix @@ -70,6 +70,8 @@ ruff python311Packages.pip sbcl + sbclPackages.cffi + libffi.dev nodejs_18 platformio-core kanata-with-cmd @@ -80,7 +82,7 @@ pkg-config ftgl gperf - + numbat expat # node packages @@ -96,6 +98,8 @@ nixd + # bottles-unwrapped + fishPlugins.foreign-env fishPlugins.z fishPlugins.fzf @@ -115,6 +119,7 @@ gnomeExtensions.paperwm gnomeExtensions.tiling-shell gnomeExtensions.another-window-session-manager + gnomeExtensions.media-controls gnome-software gnome-tweaks gnome-photos @@ -209,7 +214,6 @@ helm surge odin2 - tunefish calf # Fonts @@ -234,6 +238,7 @@ sessionVariables = { EDITOR = "emacsclient -r"; WINEFSYNC = 1; + PKG_CONFIG_PATH = "/home/emenel/.nix-profile/lib/pkgconfig:/home/emenel/.nix-profile/lib64/pkgconfig:/home/emenal/.nix-profile/share/pkgconfig"; }; stateVersion = "24.05"; @@ -268,6 +273,7 @@ extraPackages = epkgs: [ epkgs.mu4e epkgs.vterm + epkgs.sly-quicklisp ]; }; ripgrep = { @@ -342,9 +348,19 @@ }; nixpkgs.config.packageOverrides = pkgs: { - renoise = pkgs.renoise.override { - releasePath = /home/emenel/temp/rns_344_linux_x86_64.tar.gz; - }; + # renoise = pkgs.renoise.override { + # releasePath = /home/emenel/temp/rns_344_linux_x86_64.tar.gz; + # }; + raylib = pkgs.raylib.overrideDerivation (previous: { + name = "raylib-head"; + src = pkgs.fetchFromGitHub { + owner = "raysan5"; + repo = "raylib"; + hash = "sha256-PHYdAEhittShd1UhASdhmq0nGHEEVZEUGcjCUUJZl9g="; + rev = "c9c830cb971d7aa744fe3c7444b768ccd5176c4c"; + }; + patches = [""]; + }); }; services = {