/ shell.nix
shell.nix
1 { 2 pkgs ? ( 3 let 4 inherit (builtins) fetchTree fromJSON readFile; 5 inherit ((fromJSON (readFile ./flake.lock)).nodes) nixpkgs gomod2nix; 6 in 7 import (fetchTree nixpkgs.locked) { 8 overlays = [ 9 (import "${fetchTree gomod2nix.locked}/overlay.nix") 10 ]; 11 } 12 ), 13 mkGoEnv ? pkgs.mkGoEnv, 14 gomod2nix ? pkgs.gomod2nix, 15 }: let 16 goEnv = mkGoEnv {pwd = ./.;}; 17 in 18 pkgs.mkShell { 19 packages = [ 20 goEnv 21 gomod2nix 22 pkgs.go_1_22 23 pkgs.pre-commit 24 ]; 25 }