From fa08ab4c82ca7b76a4fdc41b30ceca10084caa26 Mon Sep 17 00:00:00 2001 From: Florian Schmitt Date: Sat, 8 Apr 2023 23:58:44 +0300 Subject: [PATCH] devenv for yeswiki WIP --- yeswiki-devenv/.envrc | 3 + yeswiki-devenv/.gitignore | 5 ++ yeswiki-devenv/devenv.lock | 138 +++++++++++++++++++++++++++++++++++++ yeswiki-devenv/devenv.nix | 50 ++++++++++++++ yeswiki-devenv/devenv.yaml | 3 + 5 files changed, 199 insertions(+) create mode 100644 yeswiki-devenv/.envrc create mode 100644 yeswiki-devenv/.gitignore create mode 100644 yeswiki-devenv/devenv.lock create mode 100644 yeswiki-devenv/devenv.nix create mode 100644 yeswiki-devenv/devenv.yaml diff --git a/yeswiki-devenv/.envrc b/yeswiki-devenv/.envrc new file mode 100644 index 0000000..6de8a8a --- /dev/null +++ b/yeswiki-devenv/.envrc @@ -0,0 +1,3 @@ +source_url "https://raw.githubusercontent.com/cachix/devenv/d1f7b48e35e6dee421cfd0f51481d17f77586997/direnvrc" "sha256-YBzqskFZxmNb3kYVoKD9ZixoPXJh1C9ZvTLGFRkauZ0=" + +use devenv \ No newline at end of file diff --git a/yeswiki-devenv/.gitignore b/yeswiki-devenv/.gitignore new file mode 100644 index 0000000..715bef4 --- /dev/null +++ b/yeswiki-devenv/.gitignore @@ -0,0 +1,5 @@ + +# Devenv +.devenv* +devenv.local.nix + diff --git a/yeswiki-devenv/devenv.lock b/yeswiki-devenv/devenv.lock new file mode 100644 index 0000000..ad24341 --- /dev/null +++ b/yeswiki-devenv/devenv.lock @@ -0,0 +1,138 @@ +{ + "nodes": { + "devenv": { + "locked": { + "dir": "src/modules", + "lastModified": 1680782537, + "narHash": "sha256-oQQoEzpuo4fjyPNCu3/Tc+f8hPAvvuoy4bIo9hn7akg=", + "owner": "cachix", + "repo": "devenv", + "rev": "e639583e5974e1d0f58ac110356f7f182d6f6004", + "type": "github" + }, + "original": { + "dir": "src/modules", + "owner": "cachix", + "repo": "devenv", + "type": "github" + } + }, + "flake-compat": { + "flake": false, + "locked": { + "lastModified": 1673956053, + "narHash": "sha256-4gtG9iQuiKITOjNQQeQIpoIB6b16fm+504Ch3sNKLd8=", + "owner": "edolstra", + "repo": "flake-compat", + "rev": "35bb57c0c8d8b62bbfd284272c928ceb64ddbde9", + "type": "github" + }, + "original": { + "owner": "edolstra", + "repo": "flake-compat", + "type": "github" + } + }, + "flake-utils": { + "locked": { + "lastModified": 1667395993, + "narHash": "sha256-nuEHfE/LcWyuSWnS8t12N1wc105Qtau+/OdUAjtQ0rA=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "5aed5285a952e0b949eb3ba02c12fa4fcfef535f", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, + "gitignore": { + "inputs": { + "nixpkgs": [ + "pre-commit-hooks", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1660459072, + "narHash": "sha256-8DFJjXG8zqoONA1vXtgeKXy68KdJL5UaXR8NtVMUbx8=", + "owner": "hercules-ci", + "repo": "gitignore.nix", + "rev": "a20de23b925fd8264fd7fad6454652e142fd7f73", + "type": "github" + }, + "original": { + "owner": "hercules-ci", + "repo": "gitignore.nix", + "type": "github" + } + }, + "nixpkgs": { + "locked": { + "lastModified": 1680881774, + "narHash": "sha256-Ou4+/oVbEWr+Lnnsc7yr21bdTTJFql9GvFzhPr7/Tew=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "d218e35480c7ea6cbb50ea68e6b1d88f5d2dc451", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixpkgs-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs-stable": { + "locked": { + "lastModified": 1678872516, + "narHash": "sha256-/E1YwtMtFAu2KUQKV/1+KFuReYPANM2Rzehk84VxVoc=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "9b8e5abb18324c7fe9f07cb100c3cd4a29cda8b8", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-22.11", + "repo": "nixpkgs", + "type": "github" + } + }, + "pre-commit-hooks": { + "inputs": { + "flake-compat": "flake-compat", + "flake-utils": "flake-utils", + "gitignore": "gitignore", + "nixpkgs": [ + "nixpkgs" + ], + "nixpkgs-stable": "nixpkgs-stable" + }, + "locked": { + "lastModified": 1680865110, + "narHash": "sha256-SOBuUZe+icM5zqeEBGRY/fM6BDanEySw4Ph9TQgC3MY=", + "owner": "cachix", + "repo": "pre-commit-hooks.nix", + "rev": "a6a5e1fa5327a8809c51bc6c69407b8a76f1a4ec", + "type": "github" + }, + "original": { + "owner": "cachix", + "repo": "pre-commit-hooks.nix", + "type": "github" + } + }, + "root": { + "inputs": { + "devenv": "devenv", + "nixpkgs": "nixpkgs", + "pre-commit-hooks": "pre-commit-hooks" + } + } + }, + "root": "root", + "version": 7 +} diff --git a/yeswiki-devenv/devenv.nix b/yeswiki-devenv/devenv.nix new file mode 100644 index 0000000..9803fdd --- /dev/null +++ b/yeswiki-devenv/devenv.nix @@ -0,0 +1,50 @@ +{ pkgs, config, ... }: +{ + packages = [ + pkgs.yarn + ]; + + hosts."yeswiki.test" = "127.0.0.1"; + + languages.javascript.enable = true; + languages.php = { + enable = true; + version = "8.2"; + ini = '' + memory_limit = 512M + ''; + fpm.pools.web = { + # user = "mrflos"; + settings = { + # "clear_env" = "no"; + # "listen.owner" = "mrflos"; + "pm" = "dynamic"; + "pm.max_children" = 5; + "pm.start_servers" = 2; + "pm.min_spare_servers" = 1; + "pm.max_spare_servers" = 5; + }; + }; + }; + + services.mysql = { + enable = true; + package = pkgs.mariadb; + }; + + services.caddy = { + enable = true; + virtualHosts."http://yeswiki.test" = { + extraConfig = '' + root * /var/www/yeswiki + php_fastcgi unix/${config.languages.php.fpm.pools.web.socket} + file_server + ''; + }; + }; + + env.GREET = "Environnement de développement de mrflos"; + enterShell = '' + echo $GREET + ''; +} \ No newline at end of file diff --git a/yeswiki-devenv/devenv.yaml b/yeswiki-devenv/devenv.yaml new file mode 100644 index 0000000..c7cb5ce --- /dev/null +++ b/yeswiki-devenv/devenv.yaml @@ -0,0 +1,3 @@ +inputs: + nixpkgs: + url: github:NixOS/nixpkgs/nixpkgs-unstable