mirror of
https://github.com/zoriya/astal.git
synced 2025-12-06 06:06:10 +00:00
69 lines
1.5 KiB
Nix
69 lines
1.5 KiB
Nix
defaults: {
|
|
pkgs ? defaults.pkgs,
|
|
astal ? defaults.astal,
|
|
name ? "astal-lua",
|
|
src,
|
|
extraLuaPackages ? (ps: []),
|
|
extraPackages ? [],
|
|
}: let
|
|
lua = pkgs.lua.withPackages (ps:
|
|
(extraLuaPackages ps)
|
|
++ [
|
|
ps.lgi
|
|
(ps.luaPackages.toLuaModule (pkgs.stdenvNoCC.mkDerivation {
|
|
name = "astal";
|
|
src = "${astal}/core/lua";
|
|
dontBuild = true;
|
|
installPhase = ''
|
|
mkdir -p $out/share/lua/${ps.lua.luaversion}/astal
|
|
cp -r astal/* $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}.default
|
|
];
|
|
|
|
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}"
|
|
)
|
|
'';
|
|
}
|