summaryrefslogtreecommitdiff
path: root/pkgs
diff options
context:
space:
mode:
authorFreya Murphy <freya@freyacat.org>2025-06-27 22:06:00 -0400
committerFreya Murphy <freya@freyacat.org>2025-06-27 22:06:00 -0400
commitfde33e02a35e86d9e5b8f98126bdc7471a047fca (patch)
treeb7bb829e5be5075640bfa8b5d9375cffc6da1b93 /pkgs
parentastal systemd user service (diff)
downloaddotfiles-nix-fde33e02a35e86d9e5b8f98126bdc7471a047fca.tar.gz
dotfiles-nix-fde33e02a35e86d9e5b8f98126bdc7471a047fca.tar.bz2
dotfiles-nix-fde33e02a35e86d9e5b8f98126bdc7471a047fca.zip
update commits
Diffstat (limited to 'pkgs')
-rw-r--r--pkgs/astal/builder.nix69
-rw-r--r--pkgs/astal/default.nix3
2 files changed, 71 insertions, 1 deletions
diff --git a/pkgs/astal/builder.nix b/pkgs/astal/builder.nix
new file mode 100644
index 0000000..a78d602
--- /dev/null
+++ b/pkgs/astal/builder.nix
@@ -0,0 +1,69 @@
+{
+ pkgs,
+ astal,
+ name,
+ src,
+ extraLuaPackages ? (ps: []),
+ extraPackages ? [],
+}: let
+ lua = pkgs.lua.withPackages (ps:
+ (extraLuaPackages ps)
+ ++ [
+ ps.lgi
+ (ps.luaPackages.toLuaModule (pkgs.stdenvNoCC.mkDerivation {
+ name = "astal";
+ src = "${astal}/lang/lua/astal";
+ dontBuild = true;
+ installPhase = ''
+ mkdir -p $out/share/lua/${ps.lua.luaversion}/astal
+ cp -r * $out/share/lua/${ps.lua.luaversion}/astal
+ '';
+ }))
+ (ps.luaPackages.toLuaModule (pkgs.stdenvNoCC.mkDerivation {
+ inherit src name;
+ dontBuild = true;
+ installPhase = ''
+ mkdir -p $out/share/lua/${ps.lua.luaversion}
+ cp -r * $out/share/lua/${ps.lua.luaversion}
+ '';
+ }))
+ ]);
+
+ script = ''
+ #!${lua}/bin/lua
+ require "init"
+ '';
+in
+ pkgs.stdenvNoCC.mkDerivation {
+ inherit src name;
+
+ nativeBuildInputs = with pkgs; [
+ wrapGAppsHook
+ gobject-introspection
+ ];
+
+ buildInputs =
+ extraPackages
+ ++ [
+ lua
+ astal.packages.${pkgs.system}.io
+ astal.packages.${pkgs.system}.astal3
+ ];
+
+ installPhase = ''
+ runHook preInstall
+
+ mkdir -p $out/bin
+ cp -r * $out/bin
+ echo '${script}' > astal-lua
+ install -m 755 astal-lua $out/bin/${name}
+
+ runHook postInstall
+ '';
+
+ preFixup = ''
+ gappsWrapperArgs+=(
+ --prefix PATH : "${pkgs.lib.makeBinPath extraPackages}"
+ )
+ '';
+ }
diff --git a/pkgs/astal/default.nix b/pkgs/astal/default.nix
index fb320ee..bc372f1 100644
--- a/pkgs/astal/default.nix
+++ b/pkgs/astal/default.nix
@@ -13,13 +13,14 @@
theme = import ./theme.nix {inherit options;};
mkAstal = file:
- inputs.astal.lib.mkLuaPackage {
+ import ./builder.nix {
pkgs =
pkgs
// {
# use luajit
lua = pkgs.luajit;
};
+ astal = inputs.astal;
src = runCommand "src" {} ''
mkdir -p $out
cp -r ${./src}/{*.lua,widget} $out/