From 32e78a24dbdaf25e2afe470d2ba246df0785d480 Mon Sep 17 00:00:00 2001 From: Daniel Barlow Date: Sun, 14 Aug 2022 14:59:39 +0100 Subject: [PATCH] fudging to make it work as buildable derivation a bit too much path shenanigans going on here to be entirely happy --- crier/{crier.fnl => init.fnl} | 2 +- default.nix | 9 ++++++--- rc.fnl => eufon.fnl | 20 +++++++++++--------- fennelrun.lua | 6 ++++-- init.lua | 3 ++- just/{just.fnl => init.fnl} | 0 modeline.fnl | 2 +- saturn/{main.fnl => init.fnl} | 0 8 files changed, 25 insertions(+), 17 deletions(-) rename crier/{crier.fnl => init.fnl} (99%) rename rc.fnl => eufon.fnl (91%) rename just/{just.fnl => init.fnl} (100%) rename saturn/{main.fnl => init.fnl} (100%) diff --git a/crier/crier.fnl b/crier/init.fnl similarity index 99% rename from crier/crier.fnl rename to crier/init.fnl index 42fe9a5..7fa2e76 100644 --- a/crier/crier.fnl +++ b/crier/init.fnl @@ -8,7 +8,7 @@ (local Gtk lgi.Gtk) (fn relpath [filename] - (.. "crier/" filename)) + (.. (os.getenv "EUFON_PATH") "/crier/" filename)) (local dbus-service-attrs { diff --git a/default.nix b/default.nix index d76c728..bdac204 100644 --- a/default.nix +++ b/default.nix @@ -76,9 +76,12 @@ stdenv.mkDerivation { substitute bin/eufonctl.sh $out/bin/eufonctl \ --replace SOCAT=socat SOCAT=${socat}/bin/socat makeWrapper ${kiwmi}/bin/kiwmi $out/bin/eufon \ - --set LUA_PATH ".;$out/?.fnl;$LUA_PATH" \ - --set LUA_CPATH ".;$out/?.so;$LUA_CPATH" \ - --prefix PATH : ${kiwmi}/bin \ + --set LUA_PATH "$out/?.lua;$LUA_PATH" \ + --set LUA_CPATH "$LUA_CPATH" \ + --prefix PATH : ${kiwmi}/bin:${luaWithPackages}/bin \ + --set EUFON_PATH "$out" \ + --set GIO_EXTRA_MODULES "${glib-networking}/lib/gio/modules" \ + --set GI_TYPELIB_PATH "$GI_TYPELIB_PATH" \ --add-flags "-c $out/init.lua" chmod +x $out/bin/eufon diff --git a/rc.fnl b/eufon.fnl similarity index 91% rename from rc.fnl rename to eufon.fnl index b980371..eeb3ed7 100644 --- a/rc.fnl +++ b/eufon.fnl @@ -34,6 +34,9 @@ (print "WHOOSH") true) +(fn eufon-path [f] + (.. (os.getenv "EUFON_PATH") "/" f)) + (fn show-overview [] (let [facets 64 angle (/ (* 2 math.pi) facets) @@ -135,9 +138,9 @@ (resize-wayland-backend output) (let [(width height) (output:size) r (output:renderer) - kill (texture.from-file r "close-window.png") - launch (texture.from-file r "launcher.png") - overview (texture.from-file r "carousel.png")] + kill (texture.from-file r (eufon-path "close-window.png")) + launch (texture.from-file r (eufon-path "launcher.png")) + overview (texture.from-file r (eufon-path "carousel.png"))] (output:on "render" (fn [{: output : renderer}] (let [buttons (placements output)] @@ -185,12 +188,11 @@ (view:on "request_move" #(view:imove)) (view:on "request_resize" (fn [ev] (view:iresize ev.edges))))) - -;(kiwmi:spawn "swaybg -c '#ff00ff'") -(kiwmi:spawn "lua -l fennelrun modeline.fnl") -(kiwmi:spawn "lua -l fennelrun saturn/main.fnl") -(kiwmi:spawn "lua -l fennelrun crier/crier.fnl") -(kiwmi:spawn "lua -l fennelrun just/just.fnl") +(kiwmi:spawn "swaybg -c '#ff00ff'") +(kiwmi:spawn "lua -l fennelrun modeline") +;(kiwmi:spawn "lua -l fennelrun saturn") +(kiwmi:spawn "lua -l fennelrun crier") +(kiwmi:spawn "lua -l fennelrun just https://brvt.telent.net") ;(kiwmi:spawn "foot") ;; Local Variables: diff --git a/fennelrun.lua b/fennelrun.lua index def0108..1510740 100644 --- a/fennelrun.lua +++ b/fennelrun.lua @@ -1,4 +1,6 @@ local fennel = require("fennel") table.insert(package.loaders or package.searchers, fennel.searcher) --- print(fennel.view(arg)) -fennel.dofile(arg[0], { correlate = true }) +fennel.path = os.getenv("EUFON_PATH") .. "/?.fnl;" .. + os.getenv("EUFON_PATH") .. "/?/init.fnl;" + +require(arg[0]) diff --git a/init.lua b/init.lua index 4dbadcc..7e81548 100644 --- a/init.lua +++ b/init.lua @@ -3,4 +3,5 @@ print(os.getenv("LUA_CPATH")) local fennel = require("fennel") table.insert(package.loaders or package.searchers, fennel.searcher) -fennel.dofile("rc.fnl") +fennel.path = fennel.path .. ";" .. os.getenv("EUFON_PATH") .. "/?.fnl" +require("eufon") diff --git a/just/just.fnl b/just/init.fnl similarity index 100% rename from just/just.fnl rename to just/init.fnl diff --git a/modeline.fnl b/modeline.fnl index b8abbb3..586b0fb 100644 --- a/modeline.fnl +++ b/modeline.fnl @@ -9,7 +9,7 @@ ;(local battery (require :blinkenlicht.metric.battery)) (local cpustat (require :blinkenlicht.metric.cpustat)) -(stylesheet "modeline.css") +(stylesheet (.. (os.getenv "EUFON_PATH") "/modeline.css")) (fn battery-icon-codepoint [status percent] (if (= status "Charging") 0xf0e7 diff --git a/saturn/main.fnl b/saturn/init.fnl similarity index 100% rename from saturn/main.fnl rename to saturn/init.fnl