Compare commits

...

10 commits

7 changed files with 150 additions and 52 deletions

48
devshells/idris2.nix Normal file
View file

@ -0,0 +1,48 @@
{ withSystem, inputs, ... }:
{
perSystem =
{
config,
pkgs,
lib,
inputs',
...
}:
{
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}
'';
};
};
}

41
devshells/raku.nix Normal file
View file

@ -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}
'';
};
};
}

View file

@ -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

56
flake.lock generated
View file

@ -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": 1732466619,
"narHash": "sha256-T1e5oceypZu3Q8vzICjv1X/sGs9XfJRMW5OuXHgpB3c=",
"lastModified": 1734366194,
"narHash": "sha256-vykpJ1xsdkv0j8WOVXrRFHUAdp9NXHpxdnn1F4pYgSw=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "f3111f62a23451114433888902a55cf0692b408d",
"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": 1732758367,
"narHash": "sha256-RzaI1RO0UXqLjydtz3GAXSTzHkpb/lLD1JD8a0W4Wpo=",
"lastModified": 1734649271,
"narHash": "sha256-4EVBRhOjMDuGtMaofAIqzJbg4Ql7Ai0PSeuVZTHjyKQ=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "fa42b5a5f401aab8a32bd33c9a4de0738180dc59",
"rev": "d70bd19e0a38ad4790d3913bf08fcbfc9eeca507",
"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": 1732824227,
"narHash": "sha256-fYNXgpu1AEeLyd3fQt4Ym0tcVP7cdJ8wRoqJ+CtTRyY=",
"lastModified": 1735141468,
"narHash": "sha256-VIAjBr1qGcEbmhLwQJD6TABppPMggzOvqFsqkDoMsAY=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "c71ad5c34d51dcbda4c15f44ea4e4aa6bb6ac1e9",
"rev": "4005c3ff7505313cbc21081776ad0ce5dfd7a3ce",
"type": "github"
},
"original": {

View file

@ -25,6 +25,8 @@
./nixos/machines/wsl/configuration.nix
./home-manager/machines/wsl/home.nix
./devshells/rust.nix
./devshells/idris2.nix
./devshells/raku.nix
];
systems = [
"x86_64-linux"

View file

@ -30,7 +30,7 @@ in
# For spelling
myAspell
# For nix
# rnix-lsp
nil
manix
nix-doc
# For email
@ -38,6 +38,9 @@ in
meson
pkg-config
glib
# Ripgrep for projectile
ripgrep
fd
# Desktop file for org-protocol
(makeDesktopItem {
name = "org-protocol";
@ -53,12 +56,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
]
))
];
};
}

View file

@ -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;
};