diff --git a/flake.lock b/flake.lock index 903fd3fb..c7e17241 100644 --- a/flake.lock +++ b/flake.lock @@ -469,7 +469,7 @@ }, "flake-fmt": { "inputs": { - "nixpkgs": "nixpkgs_10" + "nixpkgs": "nixpkgs_11" }, "locked": { "lastModified": 1767005043, @@ -1647,6 +1647,23 @@ } }, "nixpkgs_11": { + "locked": { + "lastModified": 1766840161, + "narHash": "sha256-Ss/LHpJJsng8vz1Pe33RSGIWUOcqM1fjrehjUkdrWio=", + "ref": "nixpkgs-unstable", + "rev": "3edc4a30ed3903fdf6f90c837f961fa6b49582d1", + "shallow": true, + "type": "git", + "url": "https://github.com/NixOS/nixpkgs" + }, + "original": { + "ref": "nixpkgs-unstable", + "shallow": true, + "type": "git", + "url": "https://github.com/NixOS/nixpkgs" + } + }, + "nixpkgs_12": { "locked": { "lastModified": 1758277210, "narHash": "sha256-iCGWf/LTy+aY0zFu8q12lK8KuZp7yvdhStehhyX1v8w=", @@ -2082,7 +2099,7 @@ "spectr": { "inputs": { "flake-fmt": "flake-fmt", - "flake-utils": "flake-utils_6", + "flake-utils": "flake-utils_7", "nixpkgs": [ "nixpkgs" ], @@ -2593,7 +2610,7 @@ }, "zen-browser": { "inputs": { - "nixpkgs": "nixpkgs_11" + "nixpkgs": "nixpkgs_12" }, "locked": { "lastModified": 1765643203, diff --git a/templates/csharp-shell/flake.nix b/templates/csharp-shell/flake.nix index 8f99108a..95b3063c 100644 --- a/templates/csharp-shell/flake.nix +++ b/templates/csharp-shell/flake.nix @@ -16,24 +16,25 @@ dotnet = pkgs.dotnet-sdk_8; - myApp = pkgs.buildDotnetModule rec { - pname = "my-csharp-app"; - version = "1.0.0"; - - src = ./.; - - projectFile = "src/MyApp.csproj"; - nugetDeps = ./deps.json; - - dotnet-sdk = dotnet; - dotnet-runtime = pkgs.dotnet-runtime_8; - - executables = ["MyApp"]; - }; + # Example package build (uncomment and customize for your project) + # myApp = pkgs.buildDotnetModule rec { + # pname = "my-csharp-app"; + # version = "1.0.0"; + # + # src = ./.; + # + # projectFile = "src/MyApp.csproj"; + # nugetDeps = ./deps.json; + # + # dotnet-sdk = dotnet; + # dotnet-runtime = pkgs.dotnet-runtime_8; + # + # executables = ["MyApp"]; + # }; in { - packages = { - default = myApp; - }; + # packages = { + # default = myApp; + # }; devShells.default = pkgs.mkShell { buildInputs = with pkgs; [ diff --git a/templates/go-shell/flake.nix b/templates/go-shell/flake.nix index 43efcf7e..5decb5bb 100644 --- a/templates/go-shell/flake.nix +++ b/templates/go-shell/flake.nix @@ -108,20 +108,21 @@ ++ builtins.attrValues scriptPackages; }; - packages = { - default = pkgs.buildGoModule { - pname = "my-go-project"; - version = "0.0.1"; - src = self; - vendorHash = null; - meta = with pkgs.lib; { - description = "My Go project"; - homepage = "https://github.com/connerohnesorge/my-go-project"; - license = licenses.asl20; - maintainers = with maintainers; [connerohnesorge]; - }; - }; - }; + # Example package build (uncomment and customize for your project) + # packages = { + # default = pkgs.buildGoModule { + # pname = "my-go-project"; + # version = "0.0.1"; + # src = ./.; # Use ./. instead of self for your project source + # vendorHash = null; # Set to the hash of your go dependencies or use vendorHash = "sha256-AAAA..."; after first build + # meta = with pkgs.lib; { + # description = "My Go project"; + # homepage = "https://github.com/connerohnesorge/my-go-project"; + # license = licenses.asl20; + # maintainers = with maintainers; [connerohnesorge]; + # }; + # }; + # }; formatter = treefmt-nix.lib.mkWrapper pkgs treefmtModule; }); diff --git a/templates/laravel-shell/composer.json b/templates/laravel-shell/composer.json new file mode 100644 index 00000000..03f856af --- /dev/null +++ b/templates/laravel-shell/composer.json @@ -0,0 +1,15 @@ +{ + "name": "template/laravel-shell", + "description": "Laravel development shell template", + "type": "project", + "require": { + "php": "^8.4" + }, + "config": { + "preferred-install": "dist", + "sort-packages": true, + "optimize-autoloader": true + }, + "minimum-stability": "stable", + "prefer-stable": true +} diff --git a/templates/ocaml-shell/flake.nix b/templates/ocaml-shell/flake.nix index e0ee4ec3..baf35acb 100644 --- a/templates/ocaml-shell/flake.nix +++ b/templates/ocaml-shell/flake.nix @@ -195,148 +195,149 @@ ''; }; - packages = { - default = pkgs.ocamlPackages.buildDunePackage { - pname = "ocaml_template"; - version = "0.1.0"; - src = ./.; - - # Runtime dependencies - propagatedBuildInputs = with pkgs.ocamlPackages; [ - base - stdio - core - lwt - cmdliner - yojson - logs - fmt - ppx_jane - qcheck - ]; - - # Build dependencies - buildInputs = with pkgs.ocamlPackages; [ - dune_3 - findlib - ]; - - # Test dependencies - checkInputs = with pkgs.ocamlPackages; [ - alcotest - alcotest-lwt - qcheck - ounit2 - ]; - - # Disable tests for now to focus on build - doCheck = false; - - # Override build phase to avoid --only-packages issue - buildPhase = '' - runHook preBuild - dune build --profile release lib bin examples @install - runHook postBuild - ''; - - meta = with pkgs.lib; { - description = "OCaml template project with modern tooling and best practices"; - longDescription = '' - A comprehensive OCaml project template featuring: - - Modern library ecosystem (Base, Core, Lwt) - - Command-line interface with Cmdliner - - JSON handling with Yojson - - Comprehensive testing with Alcotest and QCheck - - Async programming examples - - Structured logging - - Documentation with ODocs - ''; - homepage = "https://github.com/user/ocaml-template"; - changelog = "https://github.com/user/ocaml-template/blob/main/CHANGELOG.md"; - license = licenses.mit; - maintainers = with maintainers; [ - /* - Add your maintainer info - */ - ]; - platforms = platforms.unix; - }; - }; - - # Additional build targets - lib = pkgs.ocamlPackages.buildDunePackage { - pname = "ocaml-template-lib"; - version = "0.1.0"; - src = ./.; - - # Only build the library, not the executable - buildPhase = '' - runHook preBuild - dune build lib/ - runHook postBuild - ''; - - installPhase = '' - runHook preInstall - dune install --prefix=$out --libdir=$OCAMLFIND_DESTDIR lib - runHook postInstall - ''; - - propagatedBuildInputs = with pkgs.ocamlPackages; [ - base - stdio - core - lwt - yojson - logs - ppx_jane - ]; - - doCheck = false; # Skip tests for lib-only build - - meta = with pkgs.lib; { - description = "OCaml template library only"; - license = licenses.mit; - }; - }; - - examples = pkgs.ocamlPackages.buildDunePackage { - pname = "ocaml-template-examples"; - version = "0.1.0"; - src = ./.; - - # Build library and examples - buildPhase = '' - runHook preBuild - dune build lib/ examples/ - runHook postBuild - ''; - - installPhase = '' - runHook preInstall - dune install --prefix=$out --libdir=$OCAMLFIND_DESTDIR lib examples - runHook postInstall - ''; - - propagatedBuildInputs = with pkgs.ocamlPackages; [ - base - stdio - core - lwt - yojson - logs - fmt - ppx_jane - ]; - - doCheck = false; - - meta = with pkgs.lib; { - description = "OCaml template with examples"; - license = licenses.mit; - }; - }; - }; + # Example package builds (uncomment and customize for your project) + # packages = { + # default = pkgs.ocamlPackages.buildDunePackage { + # pname = "ocaml_template"; + # version = "0.1.0"; + # src = ./.; + # + # # Runtime dependencies + # propagatedBuildInputs = with pkgs.ocamlPackages; [ + # base + # stdio + # core + # lwt + # cmdliner + # yojson + # logs + # fmt + # ppx_jane + # qcheck + # ]; + # + # # Build dependencies + # buildInputs = with pkgs.ocamlPackages; [ + # dune_3 + # findlib + # ]; + # + # # Test dependencies + # checkInputs = with pkgs.ocamlPackages; [ + # alcotest + # alcotest-lwt + # qcheck + # ounit2 + # ]; + # + # # Disable tests for now to focus on build + # doCheck = false; + # + # # Override build phase to avoid --only-packages issue + # buildPhase = '' + # runHook preBuild + # dune build --profile release lib bin examples @install + # runHook postBuild + # ''; + # + # meta = with pkgs.lib; { + # description = "OCaml template project with modern tooling and best practices"; + # longDescription = '' + # A comprehensive OCaml project template featuring: + # - Modern library ecosystem (Base, Core, Lwt) + # - Command-line interface with Cmdliner + # - JSON handling with Yojson + # - Comprehensive testing with Alcotest and QCheck + # - Async programming examples + # - Structured logging + # - Documentation with ODocs + # ''; + # homepage = "https://github.com/user/ocaml-template"; + # changelog = "https://github.com/user/ocaml-template/blob/main/CHANGELOG.md"; + # license = licenses.mit; + # maintainers = with maintainers; [ + # /* + # Add your maintainer info + # */ + # ]; + # platforms = platforms.unix; + # }; + # }; + # + # # Additional build targets + # lib = pkgs.ocamlPackages.buildDunePackage { + # pname = "ocaml-template-lib"; + # version = "0.1.0"; + # src = ./.; + # + # # Only build the library, not the executable + # buildPhase = '' + # runHook preBuild + # dune build lib/ + # runHook postBuild + # ''; + # + # installPhase = '' + # runHook preInstall + # dune install --prefix=$out --libdir=$OCAMLFIND_DESTDIR lib + # runHook postInstall + # ''; + # + # propagatedBuildInputs = with pkgs.ocamlPackages; [ + # base + # stdio + # core + # lwt + # yojson + # logs + # ppx_jane + # ]; + # + # doCheck = false; # Skip tests for lib-only build + # + # meta = with pkgs.lib; { + # description = "OCaml template library only"; + # license = licenses.mit; + # }; + # }; + # + # examples = pkgs.ocamlPackages.buildDunePackage { + # pname = "ocaml-template-examples"; + # version = "0.1.0"; + # src = ./.; + # + # # Build library and examples + # buildPhase = '' + # runHook preBuild + # dune build lib/ examples/ + # runHook postBuild + # ''; + # + # installPhase = '' + # runHook preInstall + # dune install --prefix=$out --libdir=$OCAMLFIND_DESTDIR lib examples + # runHook postInstall + # ''; + # + # propagatedBuildInputs = with pkgs.ocamlPackages; [ + # base + # stdio + # core + # lwt + # yojson + # logs + # fmt + # ppx_jane + # ]; + # + # doCheck = false; + # + # meta = with pkgs.lib; { + # description = "OCaml template with examples"; + # license = licenses.mit; + # }; + # }; + # }; formatter = treefmt-nix.lib.mkWrapper pkgs treefmtModule; }); diff --git a/templates/zig-shell/flake.nix b/templates/zig-shell/flake.nix index 4285312f..b7a1f36b 100644 --- a/templates/zig-shell/flake.nix +++ b/templates/zig-shell/flake.nix @@ -109,31 +109,32 @@ ''; }; - packages = { - default = pkgs.stdenv.mkDerivation { - pname = "my-zig-project"; - version = "0.0.1"; - src = self; - nativeBuildInputs = [pkgs.zigpkgs.master]; - buildPhase = '' - zig build - ''; - installPhase = '' - mkdir -p $out/bin - # Copy built executables to $out/bin - # Adjust this based on your project structure - if [ -d "zig-out/bin" ]; then - cp -r zig-out/bin/* $out/bin/ - fi - ''; - meta = with pkgs.lib; { - description = "My Zig project"; - homepage = "https://github.com/connerohnesorge/my-zig-project"; - license = licenses.mit; - maintainers = with maintainers; [connerohnesorge]; - }; - }; - }; + # Example package build (uncomment and customize for your project) + # packages = { + # default = pkgs.stdenv.mkDerivation { + # pname = "my-zig-project"; + # version = "0.0.1"; + # src = ./.; # Use ./. for your project source + # nativeBuildInputs = [pkgs.zigpkgs.master]; + # buildPhase = '' + # zig build + # ''; + # installPhase = '' + # mkdir -p $out/bin + # # Copy built executables to $out/bin + # # Adjust this based on your project structure + # if [ -d "zig-out/bin" ]; then + # cp -r zig-out/bin/* $out/bin/ + # fi + # ''; + # meta = with pkgs.lib; { + # description = "My Zig project"; + # homepage = "https://github.com/connerohnesorge/my-zig-project"; + # license = licenses.mit; + # maintainers = with maintainers; [connerohnesorge]; + # }; + # }; + # }; formatter = treefmt-nix.lib.mkWrapper pkgs treefmtModule; });