From 52e6cc65a48e5c31d82eb952f3f549d57bf9fdb6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?KARASZI=20Istv=C3=A1n?= Date: Sat, 19 Sep 2026 18:45:38 +0200 Subject: [PATCH] Add a devenv shell with Emacs and Eask --- .envrc | 7 ++++++ .gitignore | 6 +++++ README.org | 13 +++++++++++ devenv.lock | 65 +++++++++++++++++++++++++++++++++++++++++++++++++++++ devenv.nix | 15 +++++++++++++ devenv.yaml | 5 +++++ 6 files changed, 111 insertions(+) create mode 100644 .envrc create mode 100644 devenv.lock create mode 100644 devenv.nix create mode 100644 devenv.yaml diff --git a/.envrc b/.envrc new file mode 100644 index 0000000..c808f54 --- /dev/null +++ b/.envrc @@ -0,0 +1,7 @@ +# shellcheck shell=bash +if has devenv; then + eval "$(devenv direnvrc)" + use devenv +else + echo "Cannot find devenv. Install it: https://devenv.sh/getting-started/" >&2 +fi diff --git a/.gitignore b/.gitignore index 271496d..41e4f1d 100644 --- a/.gitignore +++ b/.gitignore @@ -4,3 +4,9 @@ .eask/ .cask/ dist/ + +# Nix and devenv +/.devenv/ +/.devenv.flake.nix +/devenv.local.nix +/.direnv/ diff --git a/README.org b/README.org index 8f65dc3..d89baca 100644 --- a/README.org +++ b/README.org @@ -83,6 +83,19 @@ git log --format='%aN <%aE>' -1 The variable =magit-standup-author= (singular) still works, but it is obsolete since version 0.2.0. Use =magit-standup-authors= instead. +* Development + +The project uses [[https://devenv.sh/][devenv]]. It gives you Emacs and +[[https://emacs-eask.github.io/][Eask]]. + +#+begin_src shell +devenv shell # open a shell with the tools +devenv test # compile, lint and test +#+end_src + +With [[https://direnv.net/][direnv]], run =direnv allow= once. The tools then +load when you enter the directory. + * Release To make a release, run: diff --git a/devenv.lock b/devenv.lock new file mode 100644 index 0000000..58e2f2b --- /dev/null +++ b/devenv.lock @@ -0,0 +1,65 @@ +{ + "nodes": { + "devenv": { + "locked": { + "dir": "src/modules", + "lastModified": 1789773873, + "narHash": "sha256-lFR8A3JzpXn4Az9quklprOje/+Njyh9+bP+CE1TCIxI=", + "owner": "cachix", + "repo": "devenv", + "rev": "2ba2f9ed32596289874c58981a4d3e56cadd639d", + "type": "github" + }, + "original": { + "dir": "src/modules", + "owner": "cachix", + "repo": "devenv", + "type": "github" + } + }, + "nixpkgs": { + "inputs": { + "nixpkgs-src": "nixpkgs-src" + }, + "locked": { + "lastModified": 1789506231, + "narHash": "sha256-vNkJbtmqyBfFhn/HnzQo4ROuoyYWuy/allqTfJb4kMY=", + "owner": "cachix", + "repo": "devenv-nixpkgs", + "rev": "c2f38fe7f9e04d9aadd354d380f2bd40531d9737", + "type": "github" + }, + "original": { + "owner": "cachix", + "ref": "rolling", + "repo": "devenv-nixpkgs", + "type": "github" + } + }, + "nixpkgs-src": { + "flake": false, + "locked": { + "lastModified": 1789370336, + "narHash": "sha256-6RSEDHIWQtesQKWSu5qRai8L2h4KgCgMEfJHstW99G4=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "c7def046b9a883d46974757852106483d741586f", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixpkgs-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "root": { + "inputs": { + "devenv": "devenv", + "nixpkgs": "nixpkgs" + } + } + }, + "root": "root", + "version": 7 +} \ No newline at end of file diff --git a/devenv.nix b/devenv.nix new file mode 100644 index 0000000..a173a9f --- /dev/null +++ b/devenv.nix @@ -0,0 +1,15 @@ +{ pkgs, ... }: + +{ + packages = [ + pkgs.emacs-nox + pkgs.eask-cli + ]; + + enterTest = '' + eask install-deps + eask compile + eask lint package + eask test buttercup + ''; +} diff --git a/devenv.yaml b/devenv.yaml new file mode 100644 index 0000000..a298150 --- /dev/null +++ b/devenv.yaml @@ -0,0 +1,5 @@ +strict_ports: true + +inputs: + nixpkgs: + url: github:cachix/devenv-nixpkgs/rolling