add extra modules as git submodule

This commit is contained in:
2025-05-11 19:17:33 -05:00
parent cb56bd302d
commit ec4b85587b
4 changed files with 113 additions and 108 deletions

3
.gitmodules vendored Normal file
View File

@@ -0,0 +1,3 @@
[submodule "modules/Archimedes-Modules"]
path = modules/Archimedes-Modules
url = blunkall:Blunkall-Technologies/Archimedes-Modules

View File

@@ -12,7 +12,7 @@
buildPhase = ''
clang++ \
modules/examples/TestMenu/src/*.cpp \
modules/Archimedes-Modules/TestMenu/src/*.cpp \
-fpic -shared \
-I src \
-Wall \
@@ -43,7 +43,7 @@
buildPhase = ''
clang++ \
modules/examples/TestNotCurses/src/*.cpp \
modules/Archimedes-Modules/TestNotCurses/src/*.cpp \
-fpic -shared \
-I src -I include \
-Wall \
@@ -71,7 +71,7 @@
buildPhase = ''
clang++ \
modules/examples/Print/src/*.cpp \
modules/Archimedes-Modules/Print/src/*.cpp \
-fpic -shared \
-I src -I include \
-Wall \
@@ -98,7 +98,7 @@
buildPhase = ''
clang++ \
modules/examples/DependsOnPrint/src/*.cpp \
modules/Archimedes-Modules/DependsOnPrint/src/*.cpp \
-fpic -shared \
-I src -I include \
-Wall \
@@ -125,8 +125,8 @@
buildPhase = ''
clang++ \
modules/examples/DependsOnPrintStatic/src/*.cpp \
modules/examples/Print/src/*.cpp \
modules/Archimedes-Modules/DependsOnPrintStatic/src/*.cpp \
modules/Archimedes-Modules/Print/src/*.cpp \
-fpic -shared \
-I src -I include -I . \
-DDEPENDSONPRINTSTATIC_DYNAMIC \
@@ -160,7 +160,7 @@
buildPhase = ''
clang++ \
modules/examples/TestImgui/src/*.cpp \
modules/Archimedes-Modules/TestImgui/src/*.cpp \
modules/WindowModule/src/*.cpp \
modules/ImguiModule/src/*.cpp \
$imgui/backends/imgui_impl_glfw.cpp \
@@ -198,7 +198,7 @@
buildPhase = ''
clang++ \
modules/examples/TestClay/src/*.cpp \
modules/Archimedes-Modules/TestClay/src/*.cpp \
-fpic -shared \
-I src -I include \
-DRENDERER_OPENGL \
@@ -231,7 +231,7 @@
buildPhase = ''
clang++ \
modules/examples/ChatServer/src/*.cpp \
modules/Archimedes-Modules/ChatServer/src/*.cpp \
modules/ServerModule/src/*.cpp \
-fpic -shared \
-I ${pkgs.gamenetworkingsockets}/include/GameNetworkingSockets \
@@ -265,7 +265,7 @@
buildPhase = ''
clang++ \
modules/examples/ChatServerVoice/src/*.cpp \
modules/Archimedes-Modules/ChatServerVoice/src/*.cpp \
modules/ServerModule/src/*.cpp \
-fpic -shared \
-I ${pkgs.gamenetworkingsockets}/include/GameNetworkingSockets \
@@ -303,7 +303,7 @@
buildPhase = ''
clang++ \
modules/examples/ChatClient/src/*.cpp \
modules/Archimedes-Modules/ChatClient/src/*.cpp \
modules/ClientModule/src/*.cpp \
-I ${pkgs.gamenetworkingsockets}/include/GameNetworkingSockets \
-lGameNetworkingSockets \
@@ -350,7 +350,7 @@
buildPhase = ''
clang++ \
modules/examples/ChatClientVoice/src/*.cpp \
modules/Archimedes-Modules/ChatClientVoice/src/*.cpp \
modules/ClientModule/src/*.cpp \
-I ${pkgs.gamenetworkingsockets}/include/GameNetworkingSockets \
-lGameNetworkingSockets \
@@ -376,4 +376,96 @@
'';
};
Terminal = pkgs.stdenvNoCC.mkDerivation {
name = "Terminal";
src = ./.;
imgui = inputs.imgui;
nativeBuildInputs = with pkgs; [
clang
];
buildInputs = with pkgs; [
glfw
glew
];
buildPhase = ''
clang++ \
modules/Terminal/src/*.cpp \
modules/ImguiModule/src/*.cpp \
modules/WindowModule/src/*.cpp \
$imgui/backends/imgui_impl_glfw.cpp \
$imgui/backends/imgui_impl_opengl3.cpp \
$imgui/misc/cpp/*.cpp \
$imgui/*.cpp \
-DRENDERER=1 \
-DWINDOW=1 \
-DTERMINAL_DYNAMIC \
-fpic -shared \
-I src -I include -I $imgui -I . \
-lGL -lglfw -lGLEW \
-Wall \
-o $name
'';
installPhase = ''
mkdir -p $out/bin
cp $name $out/bin
'';
};
Ollama = pkgs.stdenvNoCC.mkDerivation {
name = "Ollama";
src = ./.;
imgui = inputs.imgui;
nativeBuildInputs = with pkgs; [
clang
];
buildInputs = with pkgs; [
glfw
glew
curl
nlohmann_json
];
buildPhase = ''
clang++ \
modules/Ollama/src/*.cpp \
modules/ImguiModule/src/*.cpp \
modules/WindowModule/src/*.cpp \
$imgui/backends/imgui_impl_glfw.cpp \
$imgui/backends/imgui_impl_opengl3.cpp \
$imgui/misc/cpp/*.cpp \
$imgui/*.cpp \
-DRENDERER=1 \
-DWINDOW=1 \
-DOLLAMA_DYNAMIC \
-fpic -shared \
-I src -I include -I $imgui -I . \
-lGL -lglfw -lGLEW \
$(curl-config --cflags) \
$(curl-config --libs) \
-Wall \
-o $name
'';
installPhase = ''
mkdir -p $out/bin
cp $name $out/bin
'';
};
}

101
flake.nix
View File

@@ -168,6 +168,7 @@
'';
};
MainGUIsdl = pkgs.stdenvNoCC.mkDerivation {
name = "MainGUI";
@@ -254,105 +255,13 @@
};
Terminal = pkgs.stdenvNoCC.mkDerivation {
name = "Terminal";
src = ./.;
inherit imgui;
nativeBuildInputs = with pkgs; [
clang
];
buildInputs = with pkgs; [
glfw
glew
];
buildPhase = ''
clang++ \
modules/Terminal/src/*.cpp \
modules/ImguiModule/src/*.cpp \
modules/WindowModule/src/*.cpp \
$imgui/backends/imgui_impl_glfw.cpp \
$imgui/backends/imgui_impl_opengl3.cpp \
$imgui/misc/cpp/*.cpp \
$imgui/*.cpp \
-DRENDERER=1 \
-DWINDOW=1 \
-DTERMINAL_DYNAMIC \
-fpic -shared \
-I src -I include -I $imgui -I . \
-lGL -lglfw -lGLEW \
-Wall \
-o $name
'';
installPhase = ''
mkdir -p $out/bin
cp $name $out/bin
'';
packages.${system}.default = self.Archimedes.examples.MinimalApp;
apps.${system}.default = {
type = "app";
program = "${self.Archimedes.examples.MinimalApp}/bin/Archimedes";
};
Ollama = pkgs.stdenvNoCC.mkDerivation {
name = "Ollama";
src = ./.;
inherit imgui;
nativeBuildInputs = with pkgs; [
clang
];
buildInputs = with pkgs; [
glfw
glew
curl
nlohmann_json
];
buildPhase = ''
clang++ \
modules/Ollama/src/*.cpp \
modules/ImguiModule/src/*.cpp \
modules/WindowModule/src/*.cpp \
$imgui/backends/imgui_impl_glfw.cpp \
$imgui/backends/imgui_impl_opengl3.cpp \
$imgui/misc/cpp/*.cpp \
$imgui/*.cpp \
-DRENDERER=1 \
-DWINDOW=1 \
-DOLLAMA_DYNAMIC \
-fpic -shared \
-I src -I include -I $imgui -I . \
-lGL -lglfw -lGLEW \
$(curl-config --cflags) \
$(curl-config --libs) \
-Wall \
-o $name
'';
installPhase = ''
mkdir -p $out/bin
cp $name $out/bin
'';
};
};
packages.${system}.default = self.Archimedes.examples.MinimalApp;
apps.${system}.default = {
type = "app";
program = "${self.Archimedes.examples.MinimalApp}/bin/Archimedes";
};
};