|
|
| (3 intermediate revisions by one other user not shown) |
| Line 3: |
Line 3: |
| [https://godotengine.org/ Godot] is an open-source game engine, capable of creating both 2D and 3D games. | | [https://godotengine.org/ Godot] is an open-source game engine, capable of creating both 2D and 3D games. |
|
| |
|
| == Usage in NixOS == | | == Installation == |
|
| |
|
| Use <code>steam-run</code> to run a Godot exported project (without having to fix paths for Nix).
| | Add <code>pkgs.godot</code> (GDScript only) to <code>environment.systemPackages</code>. |
|
| |
|
| == Installation ==
| | For installing Godot-Mono (C#), see [[Godot-Mono]] article. |
| | |
| Add either <code>pkgs.godot</code> (GDScript) or <code>pkgs.godot-mono</code> (GDScript + C#) to <code>environment.systemPackages</code>.
| |
|
| |
|
| == Export Templates == | | == Export Templates == |
| Automatically enable `godot-templates` in your host using:
| | On Godot upgrade, the new export template can be automatically provisioned this way: |
| | |
| <code>home.file.".local/share/godot/export_templates/${pkgs.godot_4-export-templates.version}".source = pkgs.godot_4-export-templates;</code>
| |
| | |
| Whenever Godot application is upgraded, the new template version will be automatically provisioned.
| |
|
| |
|
| For `godot-mono`, should reference `pkgs.godot-mono_4-export-templates` but package is still pending in nixpkgs.
| | <code>home.file.".local/share/godot/export_templates/${builtins.replaceStrings [ "-" ] [ "." ] pkgs.godot_4-export-templates.version}".source = pkgs.godot_4-export-templates;</code> |
|
| |
|
| == Configuring VSCode Editor for Godot-Mono (C#) == | | === Android Export Target === |
| As Godot editor has poor support for C#, VSCode editor is recommended.
| | Accept Android license: |
| | nixpkgs.config.android_sdk.accept_license = true; |
| | Add to your system the usual Android and Java development packages, such as: |
| | environment.systemPackages = with pkgs; [ |
| | android-studio |
| | android-tools |
| | androidenv.androidPkgs.androidsdk |
| | androidenv.androidPkgs.emulator |
| | androidenv.androidPkgs.ndk-bundle |
| | jdk # Java |
| | ]; |
| | Configure Godot's '''Editor''' -> '''Editor Settings''' -> '''General''' [Tab] -> '''Export''' [Category] -> '''Android''' [Sub-item], as such: |
|
| |
|
| Install and configure VSCode as such:
| | * '''Android SDK Path:''' Reference <code>pkgs.androidenv.androidPkgs.androidsdk</code> path. Like: <code>/nix/store/p2cdj75bbzswjc84789cmlwhy6ll7avr-androidsdk/libexec/android-sdk/</code> |
| programs.vscode = {
| | * '''Java SDK Path:''' Reference <code>pkgs.jdk</code> path. Like: <code>/nix/store/55qm2mvhmv7n2n6yzym1idrvnlwia73z-openjdk-21.0.5+11</code> |
| enable = true;
| |
| package = pkgs.codium;
| |
| profiles.default = {
| |
| "godotTools.lsp.serverPort" = 6005; # port should match your Godot configuration
| |
| "dotnetAcquisitionExtension.sharedExistingDotnetPath" = "${pkgs.dotnet-sdk_8}/bin/dotnet";
| |
| "dotnetAcquisitionExtension.existingDotnetPath" = [
| |
| {
| |
| "extensionId" = "ms-dotnettools.csharp";
| |
| "path" = "${pkgs.dotnet-sdk_8}/bin/dotnet";
| |
| }
| |
| {
| |
| "extensionId" = "ms-dotnettools.csdevkit";
| |
| "path" = "${pkgs.dotnet-sdk_8}/bin/dotnet";
| |
| }
| |
| ];
| |
| extensions = with pkgs.vscode-extensions; [
| |
| geequlim.godot-tools # For Godot GDScript
| |
| ms-dotnettools.csdevkit
| |
| ms-dotnettools.csharp
| |
| ms-dotnettools.vscode-dotnet-runtime
| |
| ];
| |
| };
| |
| Configure Godot's '''Editor → Editor Settings''' menu:
| |
| * Set '''Dotnet''' -> '''Editor''' -> '''External Editor''' to '''Visual Studio Code'''.
| |
| ====== Configure Godot 4 for External VSCode Integration ======
| |
| Click '''Editor''' [top menu] -> '''Editor Settings''' [menu item] -> '''General''' [Tab] -> '''Text Editor''' [Category] -> '''External''' [Sub-Category]:
| |
|
| |
|
| * '''Exec Path''' -> Add the output of <code>which codium</code>, on my case would be: <code>/etc/profiles/per-user/REPLACE-USERNAME/bin/codium</code>
| | === Running Exported Application in NixOS === |
| * '''Exec Flags''' -> <code>{project} --goto {file}:{line}:{col}</code>
| | Use <code>steam-run</code> to run a Godot exported project without having to fix paths for Nix. |
| * '''Use External Editor''' -> <code>On</code>
| |
|
| |
|
| [[Category:Applications]] | | [[Category:Applications]] |
| | [[Category:IDE]] |