Cleanup flake.nix

This commit is contained in:
2026-07-26 06:57:47 +01:00
parent 75e3b334bf
commit b71c72d735
+13 -22
View File
@@ -11,24 +11,19 @@
mruby = pkgs.stdenv.mkDerivation { mruby = pkgs.stdenv.mkDerivation {
pname = "mruby"; pname = "mruby";
version = "0.0.1"; version = "0.0.1";
src = pkgs.lib.cleanSourceWith { src = pkgs.lib.cleanSourceWith {
src = ./libs; src = ./libs;
name = "mruby-src"; name = "mruby-src";
}; };
patches = [ ./libs/changes.patch ]; patches = [ ./libs/changes.patch ];
nativeBuildInputs = with pkgs; [ nativeBuildInputs = with pkgs; [
ruby ruby
gnumake gnumake
gcc gcc
]; ];
buildPhase = '' buildPhase = ''
(cd mruby && rake) (cd mruby && rake)
''; '';
installPhase = '' installPhase = ''
mkdir -p $out mkdir -p $out
cp -r mruby/build/host/lib $out/ cp -r mruby/build/host/lib $out/
@@ -38,15 +33,12 @@
kutu = pkgs.stdenv.mkDerivation { kutu = pkgs.stdenv.mkDerivation {
pname = "kutu"; pname = "kutu";
version = "0.1.0"; version = "0.1.0";
src = ./.; src = ./.;
nativeBuildInputs = with pkgs; [ nativeBuildInputs = with pkgs; [
dune_3 dune_3
ocaml ocaml
ocamlPackages.findlib ocamlPackages.findlib
]; ];
buildInputs = with pkgs; [ buildInputs = with pkgs; [
libxcb libxcb
xcbutilwm xcbutilwm
@@ -54,29 +46,17 @@
ocamlPackages.ctypes-foreign ocamlPackages.ctypes-foreign
mruby mruby
]; ];
buildPhase = '' buildPhase = ''
export MRUBY_LIB=${mruby}/lib export MRUBY_LIB=${mruby}/lib
dune build src/main.exe --release dune build src/main.exe --release
''; '';
installPhase = '' installPhase = ''
mkdir -p $out/bin mkdir -p $out/bin
cp _build/default/src/main.exe $out/bin/kutu cp _build/default/src/main.exe $out/bin/kutu
''; '';
}; };
in kutu-run = pkgs.writeShellScriptBin "kutu-run" ''
{
packages.${system} = {
default = kutu;
kutu = kutu;
mruby = mruby;
};
apps.${system}.default = {
type = "app";
program = "${pkgs.writeShellScript "kutu-run" ''
set -e set -e
if [ -z "$DISPLAY" ]; then if [ -z "$DISPLAY" ]; then
exec ${pkgs.xinit}/bin/startx \ exec ${pkgs.xinit}/bin/startx \
@@ -97,7 +77,18 @@
DISPLAY=$DISPLAY_NUM ${kutu}/bin/kutu DISPLAY=$DISPLAY_NUM ${kutu}/bin/kutu
echo "Returned: $?" echo "Returned: $?"
fi fi
''}"; '';
in
{
packages.${system} = {
default = kutu;
kutu = kutu;
mruby = mruby;
};
apps.${system}.default = {
type = "app";
program = "${kutu-run}/bin/kutu-run";
}; };
devShells.${system}.default = pkgs.mkShell { devShells.${system}.default = pkgs.mkShell {