From 29ab64fee0696d7c15310e7ace4b7587811a6584 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Torjus=20H=C3=A5kestad?= Date: Tue, 19 Aug 2025 02:07:11 +0200 Subject: [PATCH] chore: initial commit --- .gdignore | 3 ++ .gitattributes | 3 ++ .gitignore | 3 ++ README.md | 1 + flake.lock | 27 +++++++++++++++++ flake.nix | 80 ++++++++++++++++++++++++++++++++++++++++++++++++++ 6 files changed, 117 insertions(+) create mode 100644 .gdignore create mode 100644 .gitattributes create mode 100644 .gitignore create mode 100644 README.md create mode 100644 flake.lock create mode 100644 flake.nix diff --git a/.gdignore b/.gdignore new file mode 100644 index 0000000..bd46893 --- /dev/null +++ b/.gdignore @@ -0,0 +1,3 @@ +README.md +flake.nix +flake.lock diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..5b0d1a4 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,3 @@ +# Normalize EOL for all files that Git considers text files. +* text=auto eol=lf +*.png filter=lfs diff=lfs merge=lfs -text diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..0af181c --- /dev/null +++ b/.gitignore @@ -0,0 +1,3 @@ +# Godot 4+ specific ignores +.godot/ +/android/ diff --git a/README.md b/README.md new file mode 100644 index 0000000..235d32b --- /dev/null +++ b/README.md @@ -0,0 +1 @@ +# Slopvivors diff --git a/flake.lock b/flake.lock new file mode 100644 index 0000000..b27632e --- /dev/null +++ b/flake.lock @@ -0,0 +1,27 @@ +{ + "nodes": { + "nixpkgs": { + "locked": { + "lastModified": 1755186698, + "narHash": "sha256-wNO3+Ks2jZJ4nTHMuks+cxAiVBGNuEBXsT29Bz6HASo=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "fbcf476f790d8a217c3eab4e12033dc4a0f6d23c", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "root": { + "inputs": { + "nixpkgs": "nixpkgs" + } + } + }, + "root": "root", + "version": 7 +} diff --git a/flake.nix b/flake.nix new file mode 100644 index 0000000..4d63eef --- /dev/null +++ b/flake.nix @@ -0,0 +1,80 @@ +{ + description = "Survivor Slop game"; + + inputs.nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable"; + + outputs = + { self, nixpkgs }: + let + allSystems = [ + "x86_64-linux" + "aarch64-linux" + "x86_64-darwin" + "aarch64-darwin" + ]; + forAllSystems = + f: + nixpkgs.lib.genAttrs allSystems ( + system: + f { + pkgs = import nixpkgs { + inherit system; + config.allowUnfree = true; + }; + } + ); + in + { + devShells = forAllSystems ( + { pkgs }: + { + default = pkgs.mkShell { + packages = with pkgs; [ + godot + krita + gimp + pixelorama + aseprite + ]; + }; + } + ); + + packages = forAllSystems ( + { pkgs }: + { + slopvivors = pkgs.stdenv.mkDerivation { + pname = "slopvivors"; + version = "0.1.0"; + src = ./.; + + strictDeps = true; + + nativeBuildInputs = with pkgs; [ + godot + ]; + + buildPhase = '' + runHook preBuild + + export HOME=$(mktemp -d) + mkdir -p $HOME/.local/share/godot/ + ln -s ${pkgs.godot.export-template}/share/godot/export_templates "$HOME/.local/share/godot/" + mkdir -p build + + godot --headless --export-release Linux ./build/slopvivors + + runHook postBuild + ''; + installPhase = '' + find . + install -D -m 755 -t $out/libexec ./build/slopvivors + install -D -m 644 -t $out/libexec ./build/slopvivors.pck + install -d -m 755 $out/bin + ln -s $out/libexec/utdg $out/bin/slopvivors + ''; + }; + } + ); + }; +}