From b3a4f3cbd8cfbdde6b1288f4abefd132e94ecddf Mon Sep 17 00:00:00 2001 From: Lucien Cartier-Tilet Date: Sat, 24 May 2025 21:40:08 +0200 Subject: [PATCH] chore: switch from shell.nix to devenv --- .envrc | 7 ++++ .gitignore | 10 +++++ .yarnrc.yml | 3 -- devenv.lock | 103 ++++++++++++++++++++++++++++++++++++++++++++++++++++ devenv.nix | 9 +++++ devenv.yaml | 15 ++++++++ shell.nix | 9 ----- 7 files changed, 144 insertions(+), 12 deletions(-) create mode 100644 .envrc delete mode 100644 .yarnrc.yml create mode 100644 devenv.lock create mode 100644 devenv.nix create mode 100644 devenv.yaml delete mode 100644 shell.nix diff --git a/.envrc b/.envrc new file mode 100644 index 0000000..e3c2943 --- /dev/null +++ b/.envrc @@ -0,0 +1,7 @@ +export DIRENV_WARN_TIMEOUT=20s + +eval "$(devenv direnvrc)" + +# The use_devenv function supports passing flags to the devenv command +# For example: use devenv --impure --option services.postgres.enable:bool true +use devenv diff --git a/.gitignore b/.gitignore index 2ad5b72..03be8a9 100644 --- a/.gitignore +++ b/.gitignore @@ -4,3 +4,13 @@ node_modules /docs/**/*.md /docs/.vuepress/dist/ /.yarn/ + +# Devenv +.devenv* +devenv.local.nix + +# direnv +.direnv + +# pre-commit +.pre-commit-config.yaml diff --git a/.yarnrc.yml b/.yarnrc.yml deleted file mode 100644 index a88d909..0000000 --- a/.yarnrc.yml +++ /dev/null @@ -1,3 +0,0 @@ -enableMessageNames: false - -nodeLinker: node-modules diff --git a/devenv.lock b/devenv.lock new file mode 100644 index 0000000..4c2996e --- /dev/null +++ b/devenv.lock @@ -0,0 +1,103 @@ +{ + "nodes": { + "devenv": { + "locked": { + "dir": "src/modules", + "lastModified": 1747717470, + "owner": "cachix", + "repo": "devenv", + "rev": "c7f2256ee4a4a4ee9cbf1e82a6e49b253c374995", + "type": "github" + }, + "original": { + "dir": "src/modules", + "owner": "cachix", + "repo": "devenv", + "type": "github" + } + }, + "flake-compat": { + "flake": false, + "locked": { + "lastModified": 1747046372, + "owner": "edolstra", + "repo": "flake-compat", + "rev": "9100a0f413b0c601e0533d1d94ffd501ce2e7885", + "type": "github" + }, + "original": { + "owner": "edolstra", + "repo": "flake-compat", + "type": "github" + } + }, + "git-hooks": { + "inputs": { + "flake-compat": "flake-compat", + "gitignore": "gitignore", + "nixpkgs": [ + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1747372754, + "owner": "cachix", + "repo": "git-hooks.nix", + "rev": "80479b6ec16fefd9c1db3ea13aeb038c60530f46", + "type": "github" + }, + "original": { + "owner": "cachix", + "repo": "git-hooks.nix", + "type": "github" + } + }, + "gitignore": { + "inputs": { + "nixpkgs": [ + "git-hooks", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1709087332, + "owner": "hercules-ci", + "repo": "gitignore.nix", + "rev": "637db329424fd7e46cf4185293b9cc8c88c95394", + "type": "github" + }, + "original": { + "owner": "hercules-ci", + "repo": "gitignore.nix", + "type": "github" + } + }, + "nixpkgs": { + "locked": { + "lastModified": 1746807397, + "owner": "cachix", + "repo": "devenv-nixpkgs", + "rev": "c5208b594838ea8e6cca5997fbf784b7cca1ca90", + "type": "github" + }, + "original": { + "owner": "cachix", + "ref": "rolling", + "repo": "devenv-nixpkgs", + "type": "github" + } + }, + "root": { + "inputs": { + "devenv": "devenv", + "git-hooks": "git-hooks", + "nixpkgs": "nixpkgs", + "pre-commit-hooks": [ + "git-hooks" + ] + } + } + }, + "root": "root", + "version": 7 +} diff --git a/devenv.nix b/devenv.nix new file mode 100644 index 0000000..d21d803 --- /dev/null +++ b/devenv.nix @@ -0,0 +1,9 @@ +{ pkgs, ... }: + +{ + languages.typescript.enable = true; + packages = [ pkgs.nodejs_20 ]; + scripts.export.exec = '' + ${pkgs.emacs}/bin/emacs -Q --script export.el + ''; +} diff --git a/devenv.yaml b/devenv.yaml new file mode 100644 index 0000000..116a2ad --- /dev/null +++ b/devenv.yaml @@ -0,0 +1,15 @@ +# yaml-language-server: $schema=https://devenv.sh/devenv.schema.json +inputs: + nixpkgs: + url: github:cachix/devenv-nixpkgs/rolling + +# If you're using non-OSS software, you can set allowUnfree to true. +# allowUnfree: true + +# If you're willing to use a package that's vulnerable +# permittedInsecurePackages: +# - "openssl-1.1.1w" + +# If you have more than one devenv you can merge them +#imports: +# - ./backend diff --git a/shell.nix b/shell.nix deleted file mode 100644 index 5fb69b9..0000000 --- a/shell.nix +++ /dev/null @@ -1,9 +0,0 @@ -{ pkgs ? import {} }: -pkgs.mkShell { - nativeBuildInputs = with pkgs.buildPackages; [ - corepack - ]; - shellHook = '' -yarn set version stable -''; -}