From 3ac06942ab3fa311f61eb443f002f8e005e36439 Mon Sep 17 00:00:00 2001 From: Nathan McCarty Date: Sat, 30 Nov 2024 09:39:53 +0000 Subject: [PATCH 01/10] Idris2 devshell --- devshells/idris2.nix | 24 ++++++++++++++++++++++++ flake.nix | 1 + 2 files changed, 25 insertions(+) create mode 100644 devshells/idris2.nix diff --git a/devshells/idris2.nix b/devshells/idris2.nix new file mode 100644 index 0000000..9f873c4 --- /dev/null +++ b/devshells/idris2.nix @@ -0,0 +1,24 @@ +{ withSystem, inputs, ... }: +{ + perSystem = + { + config, + pkgs, + inputs', + ... + }: + { + devShells.idris2 = pkgs.mkShell { + buildInputs = with pkgs; [ + # Idris toolchain + inputs'.nixpkgs-unstable.legacyPackages.idris2Packages.pack + inputs'.nixpkgs-unstable.legacyPackages.idris2 + pkg-config + gmp + gnumake + chez + rlwrap + ]; + }; + }; +} diff --git a/flake.nix b/flake.nix index 4546751..15b54d4 100644 --- a/flake.nix +++ b/flake.nix @@ -25,6 +25,7 @@ ./nixos/machines/wsl/configuration.nix ./home-manager/machines/wsl/home.nix ./devshells/rust.nix + ./devshells/idris2.nix ]; systems = [ "x86_64-linux" From 5fc17343cf6f4f6c4a344842f3c22947dcd962d9 Mon Sep 17 00:00:00 2001 From: Nathan McCarty Date: Sun, 1 Dec 2024 10:49:05 +0000 Subject: [PATCH 02/10] Tweak rust shell --- devshells/rust.nix | 17 ++--------------- 1 file changed, 2 insertions(+), 15 deletions(-) diff --git a/devshells/rust.nix b/devshells/rust.nix index 7a8160a..5207e18 100644 --- a/devshells/rust.nix +++ b/devshells/rust.nix @@ -3,21 +3,8 @@ perSystem = { config, pkgs, ... }: { - devshells.rust = { - env = [ - { - name = "RUSTC_WRAPPER"; - value = "${pkgs.sccache}/bin/sccache"; - } - ]; - commands = [ - # { - # help = "print hello"; - # name = "hello"; - # command = "echo hello"; - # } - ]; - packages = with pkgs; [ + devShells.rust = pkgs.mkShell { + buildInputs = with pkgs; [ # Rust toolchain clang rustup From 53957e2457b9a5d4de577b8ae1fb34d3242a290b Mon Sep 17 00:00:00 2001 From: Nathan McCarty Date: Mon, 2 Dec 2024 06:35:45 +0000 Subject: [PATCH 03/10] Add tree-sitter grammars to emacs Switch rnix to nil --- home-manager/modules/programs/emacs.nix | 24 ++++++++++++++++-------- 1 file changed, 16 insertions(+), 8 deletions(-) diff --git a/home-manager/modules/programs/emacs.nix b/home-manager/modules/programs/emacs.nix index 4fa60bc..a4c638b 100644 --- a/home-manager/modules/programs/emacs.nix +++ b/home-manager/modules/programs/emacs.nix @@ -30,7 +30,7 @@ in # For spelling myAspell # For nix - # rnix-lsp + nil manix nix-doc # For email @@ -53,12 +53,20 @@ in programs.emacs = { enable = true; package = emacsPackage'; - extraPackages = epkgs: [ - epkgs.mu4e - epkgs.vterm - epkgs.pdf-tools - epkgs.emacsql - epkgs.emacsql-sqlite - ]; + extraPackages = + epkgs: with pkgs; [ + epkgs.mu4e + epkgs.vterm + epkgs.pdf-tools + epkgs.emacsql + epkgs.emacsql-sqlite + (tree-sitter.withPlugins ( + grammars: with grammars; [ + tree-sitter-nix + tree-sitter-rust + tree-sitter-toml + ] + )) + ]; }; } From 029bd4d807d49303ca69aea46be1bdccb1805e61 Mon Sep 17 00:00:00 2001 From: Nathan McCarty Date: Mon, 2 Dec 2024 06:42:17 +0000 Subject: [PATCH 04/10] Update flake --- flake.lock | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/flake.lock b/flake.lock index 0d72145..88ae756 100644 --- a/flake.lock +++ b/flake.lock @@ -110,11 +110,11 @@ ] }, "locked": { - "lastModified": 1732466619, - "narHash": "sha256-T1e5oceypZu3Q8vzICjv1X/sGs9XfJRMW5OuXHgpB3c=", + "lastModified": 1733050161, + "narHash": "sha256-lYnT+EYE47f5yY3KS/Kd4pJ6CO9fhCqumkYYkQ3TK20=", "owner": "nix-community", "repo": "home-manager", - "rev": "f3111f62a23451114433888902a55cf0692b408d", + "rev": "62d536255879be574ebfe9b87c4ac194febf47c5", "type": "github" }, "original": { @@ -210,11 +210,11 @@ }, "nixpkgs-unstable": { "locked": { - "lastModified": 1732758367, - "narHash": "sha256-RzaI1RO0UXqLjydtz3GAXSTzHkpb/lLD1JD8a0W4Wpo=", + "lastModified": 1732837521, + "narHash": "sha256-jNRNr49UiuIwaarqijgdTR2qLPifxsVhlJrKzQ8XUIE=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "fa42b5a5f401aab8a32bd33c9a4de0738180dc59", + "rev": "970e93b9f82e2a0f3675757eb0bfc73297cc6370", "type": "github" }, "original": { @@ -242,11 +242,11 @@ }, "nixpkgs_3": { "locked": { - "lastModified": 1732824227, - "narHash": "sha256-fYNXgpu1AEeLyd3fQt4Ym0tcVP7cdJ8wRoqJ+CtTRyY=", + "lastModified": 1732981179, + "narHash": "sha256-F7thesZPvAMSwjRu0K8uFshTk3ZZSNAsXTIFvXBT+34=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "c71ad5c34d51dcbda4c15f44ea4e4aa6bb6ac1e9", + "rev": "62c435d93bf046a5396f3016472e8f7c8e2aed65", "type": "github" }, "original": { From 3b2d2617f4c77e4bfc163bf5d5df84f8878a93d0 Mon Sep 17 00:00:00 2001 From: Nathan McCarty Date: Wed, 11 Dec 2024 16:19:01 +0000 Subject: [PATCH 05/10] Add raku to idris dev environment --- devshells/idris2.nix | 48 +++++++++++++++++++++++++++++++++----------- 1 file changed, 36 insertions(+), 12 deletions(-) diff --git a/devshells/idris2.nix b/devshells/idris2.nix index 9f873c4..ed2ed75 100644 --- a/devshells/idris2.nix +++ b/devshells/idris2.nix @@ -4,21 +4,45 @@ { config, pkgs, + lib, inputs', ... }: { - devShells.idris2 = pkgs.mkShell { - buildInputs = with pkgs; [ - # Idris toolchain - inputs'.nixpkgs-unstable.legacyPackages.idris2Packages.pack - inputs'.nixpkgs-unstable.legacyPackages.idris2 - pkg-config - gmp - gnumake - chez - rlwrap - ]; - }; + devShells.idris2 = + let + rakudo_env = pkgs.buildEnv { + name = "rakudo-env"; + paths = with pkgs; [ + rakudo + zef + ]; + pathsToLink = [ + "/bin" + "/lib" + "/share" + ]; + }; + libPackages = with pkgs; [ readline70 ]; + in + pkgs.mkShell { + buildInputs = + with pkgs; + [ + # Idris toolchain + inputs'.nixpkgs-unstable.legacyPackages.idris2Packages.pack + inputs'.nixpkgs-unstable.legacyPackages.idris2 + pkg-config + gmp + gnumake + chez + rlwrap + rakudo_env + ] + ++ libPackages; + shellHook = '' + export LD_LIBRARY_PATH=${lib.makeLibraryPath libPackages} + ''; + }; }; } From 0b262ef37d26fba8e9e60440458db5d6f973536a Mon Sep 17 00:00:00 2001 From: Nathan McCarty Date: Wed, 18 Dec 2024 06:35:09 +0000 Subject: [PATCH 06/10] Update flake --- flake.lock | 56 +++++++++++++++++++++++++++--------------------------- 1 file changed, 28 insertions(+), 28 deletions(-) diff --git a/flake.lock b/flake.lock index 88ae756..f650b92 100644 --- a/flake.lock +++ b/flake.lock @@ -21,11 +21,11 @@ "flake-compat": { "flake": false, "locked": { - "lastModified": 1696426674, - "narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=", + "lastModified": 1733328505, + "narHash": "sha256-NeCCThCEP3eCl2l/+27kNNK7QrwZB1IJCrXfrbv5oqU=", "owner": "edolstra", "repo": "flake-compat", - "rev": "0f9255e01c2351cc7d116c072cb317785dd33b33", + "rev": "ff81ac966bb2cae68946d5ed5fc4994f96d0ffec", "type": "github" }, "original": { @@ -39,11 +39,11 @@ "nixpkgs-lib": "nixpkgs-lib" }, "locked": { - "lastModified": 1730504689, - "narHash": "sha256-hgmguH29K2fvs9szpq2r3pz2/8cJd2LPS+b4tfNFCwE=", + "lastModified": 1733312601, + "narHash": "sha256-4pDvzqnegAfRkPwO3wmwBhVi/Sye1mzps0zHWYnP88c=", "owner": "hercules-ci", "repo": "flake-parts", - "rev": "506278e768c2a08bec68eb62932193e341f55c90", + "rev": "205b12d8b7cd4802fbcb8e8ef6a0f1408781a4f9", "type": "github" }, "original": { @@ -75,11 +75,11 @@ "systems": "systems_2" }, "locked": { - "lastModified": 1726560853, - "narHash": "sha256-X6rJYSESBVr3hBoH0WbKE5KvhPU5bloyZ2L4K60/fPQ=", + "lastModified": 1731533236, + "narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=", "owner": "numtide", "repo": "flake-utils", - "rev": "c1dfcf08411b08f6b8615f7d8971a2bfa81d5e8a", + "rev": "11707dc2f618dd54ca8739b309ec4fc024de578b", "type": "github" }, "original": { @@ -110,11 +110,11 @@ ] }, "locked": { - "lastModified": 1733050161, - "narHash": "sha256-lYnT+EYE47f5yY3KS/Kd4pJ6CO9fhCqumkYYkQ3TK20=", + "lastModified": 1734366194, + "narHash": "sha256-vykpJ1xsdkv0j8WOVXrRFHUAdp9NXHpxdnn1F4pYgSw=", "owner": "nix-community", "repo": "home-manager", - "rev": "62d536255879be574ebfe9b87c4ac194febf47c5", + "rev": "80b0fdf483c5d1cb75aaad909bd390d48673857f", "type": "github" }, "original": { @@ -166,11 +166,11 @@ "nixpkgs": "nixpkgs_2" }, "locked": { - "lastModified": 1731682434, - "narHash": "sha256-HnZFPB7akVIy0KuPq/tEkiB+Brt1qi0DUIDzR8z25qI=", + "lastModified": 1733854371, + "narHash": "sha256-K9qGHniYBbjqVcEiwXyiofj/IFf78L5F0/FCf+CKyr0=", "owner": "nix-community", "repo": "NixOS-WSL", - "rev": "a6b9cf0b7805e2c50829020a73e7bde683fd36dd", + "rev": "dee4425dcee3149475ead0cb6a616b8a028c5888", "type": "github" }, "original": { @@ -198,23 +198,23 @@ }, "nixpkgs-lib": { "locked": { - "lastModified": 1730504152, - "narHash": "sha256-lXvH/vOfb4aGYyvFmZK/HlsNsr/0CVWlwYvo2rxJk3s=", + "lastModified": 1733096140, + "narHash": "sha256-1qRH7uAUsyQI7R1Uwl4T+XvdNv778H0Nb5njNrqvylY=", "type": "tarball", - "url": "https://github.com/NixOS/nixpkgs/archive/cc2f28000298e1269cea6612cd06ec9979dd5d7f.tar.gz" + "url": "https://github.com/NixOS/nixpkgs/archive/5487e69da40cbd611ab2cadee0b4637225f7cfae.tar.gz" }, "original": { "type": "tarball", - "url": "https://github.com/NixOS/nixpkgs/archive/cc2f28000298e1269cea6612cd06ec9979dd5d7f.tar.gz" + "url": "https://github.com/NixOS/nixpkgs/archive/5487e69da40cbd611ab2cadee0b4637225f7cfae.tar.gz" } }, "nixpkgs-unstable": { "locked": { - "lastModified": 1732837521, - "narHash": "sha256-jNRNr49UiuIwaarqijgdTR2qLPifxsVhlJrKzQ8XUIE=", + "lastModified": 1734119587, + "narHash": "sha256-AKU6qqskl0yf2+JdRdD0cfxX4b9x3KKV5RqA6wijmPM=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "970e93b9f82e2a0f3675757eb0bfc73297cc6370", + "rev": "3566ab7246670a43abd2ffa913cc62dad9cdf7d5", "type": "github" }, "original": { @@ -226,11 +226,11 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1729973466, - "narHash": "sha256-knnVBGfTCZlQgxY1SgH0vn2OyehH9ykfF8geZgS95bk=", + "lastModified": 1733384649, + "narHash": "sha256-K5DJ2LpPqht7K76bsxetI+YHhGGRyVteTPRQaIIKJpw=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "cd3e8833d70618c4eea8df06f95b364b016d4950", + "rev": "190c31a89e5eec80dd6604d7f9e5af3802a58a13", "type": "github" }, "original": { @@ -242,11 +242,11 @@ }, "nixpkgs_3": { "locked": { - "lastModified": 1732981179, - "narHash": "sha256-F7thesZPvAMSwjRu0K8uFshTk3ZZSNAsXTIFvXBT+34=", + "lastModified": 1734323986, + "narHash": "sha256-m/lh6hYMIWDYHCAsn81CDAiXoT3gmxXI9J987W5tZrE=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "62c435d93bf046a5396f3016472e8f7c8e2aed65", + "rev": "394571358ce82dff7411395829aa6a3aad45b907", "type": "github" }, "original": { From 0273032031dd82e98a9084e09b6ee32aa82401bb Mon Sep 17 00:00:00 2001 From: Nathan McCarty Date: Wed, 18 Dec 2024 07:10:43 +0000 Subject: [PATCH 07/10] Add raku devshell --- devshells/raku.nix | 41 +++++++++++++++++++++++++++++++++++++++++ flake.nix | 1 + 2 files changed, 42 insertions(+) create mode 100644 devshells/raku.nix diff --git a/devshells/raku.nix b/devshells/raku.nix new file mode 100644 index 0000000..0cce9d3 --- /dev/null +++ b/devshells/raku.nix @@ -0,0 +1,41 @@ +{ withSystem, inputs, ... }: +{ + perSystem = + { + config, + pkgs, + lib, + inputs', + ... + }: + { + devShells.raku = + let + rakudo_env = pkgs.buildEnv { + name = "rakudo-env"; + paths = with pkgs; [ + rakudo + zef + ]; + pathsToLink = [ + "/bin" + "/lib" + "/share" + ]; + }; + libPackages = with pkgs; [ readline70 ]; + in + pkgs.mkShell { + buildInputs = + with pkgs; + [ + # Raku toolchain + rakudo_env + ] + ++ libPackages; + shellHook = '' + export LD_LIBRARY_PATH=${lib.makeLibraryPath libPackages} + ''; + }; + }; +} diff --git a/flake.nix b/flake.nix index 15b54d4..c13f841 100644 --- a/flake.nix +++ b/flake.nix @@ -26,6 +26,7 @@ ./home-manager/machines/wsl/home.nix ./devshells/rust.nix ./devshells/idris2.nix + ./devshells/raku.nix ]; systems = [ "x86_64-linux" From 5defb95536d742bc12223c1d9fc07728942ca8da Mon Sep 17 00:00:00 2001 From: Nathan McCarty Date: Fri, 20 Dec 2024 03:41:07 +0000 Subject: [PATCH 08/10] Add djot grammer to neovim --- home-manager/modules/programs/neovim.nix | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/home-manager/modules/programs/neovim.nix b/home-manager/modules/programs/neovim.nix index 45cd344..7aa636c 100644 --- a/home-manager/modules/programs/neovim.nix +++ b/home-manager/modules/programs/neovim.nix @@ -31,7 +31,9 @@ } vim-surround vim-commentary - nvim-treesitter.withAllGrammars + { + plugin = nvim-treesitter.withAllGrammars; + } nvim-nu null-ls-nvim vim-fugitive @@ -39,6 +41,11 @@ extraLuaConfig = '' vim.o.termguicolors = true require'nu'.setup{} + require'nvim-treesitter.configs'.setup { + highlight = { + enable = true, + }, + } ''; extraConfig = '' " Show relative line numbers @@ -49,6 +56,8 @@ set shiftwidth=4 " Keep 4 lines off the edge of the screen when scrolling set scrolloff=4 + " Djot setup + au BufNewFile,BufRead *.dj set filetype=djot ''; withPython3 = true; }; From 89ee5c0ec1a065a0b6398b79bb5052d42aa0fa54 Mon Sep 17 00:00:00 2001 From: Nathan McCarty Date: Fri, 27 Dec 2024 06:33:33 +0000 Subject: [PATCH 09/10] add ripgrep and fd packages for projectile --- home-manager/modules/programs/emacs.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/home-manager/modules/programs/emacs.nix b/home-manager/modules/programs/emacs.nix index a4c638b..cf61e4d 100644 --- a/home-manager/modules/programs/emacs.nix +++ b/home-manager/modules/programs/emacs.nix @@ -38,6 +38,9 @@ in meson pkg-config glib + # Ripgrep for projectile + ripgrep + fd # Desktop file for org-protocol (makeDesktopItem { name = "org-protocol"; From 7a2000c13b73094db6c2ca96ca0b355707c49467 Mon Sep 17 00:00:00 2001 From: Nathan McCarty Date: Fri, 27 Dec 2024 09:49:08 +0000 Subject: [PATCH 10/10] update flake --- flake.lock | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/flake.lock b/flake.lock index f650b92..67aad86 100644 --- a/flake.lock +++ b/flake.lock @@ -210,11 +210,11 @@ }, "nixpkgs-unstable": { "locked": { - "lastModified": 1734119587, - "narHash": "sha256-AKU6qqskl0yf2+JdRdD0cfxX4b9x3KKV5RqA6wijmPM=", + "lastModified": 1734649271, + "narHash": "sha256-4EVBRhOjMDuGtMaofAIqzJbg4Ql7Ai0PSeuVZTHjyKQ=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "3566ab7246670a43abd2ffa913cc62dad9cdf7d5", + "rev": "d70bd19e0a38ad4790d3913bf08fcbfc9eeca507", "type": "github" }, "original": { @@ -242,11 +242,11 @@ }, "nixpkgs_3": { "locked": { - "lastModified": 1734323986, - "narHash": "sha256-m/lh6hYMIWDYHCAsn81CDAiXoT3gmxXI9J987W5tZrE=", + "lastModified": 1735141468, + "narHash": "sha256-VIAjBr1qGcEbmhLwQJD6TABppPMggzOvqFsqkDoMsAY=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "394571358ce82dff7411395829aa6a3aad45b907", + "rev": "4005c3ff7505313cbc21081776ad0ce5dfd7a3ce", "type": "github" }, "original": {