Compare commits

...

6 commits

5 changed files with 69 additions and 36 deletions

18
flake.lock generated
View file

@ -44,11 +44,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1771744638, "lastModified": 1774274588,
"narHash": "sha256-EDLi+YAsEEAmMeZe1v6GccuGRbCkpSZp/+A6g+pivR8=", "narHash": "sha256-dnHvv5EMUgTzGZmA+3diYjQU2O6BEpGLEOgJ1Qe9LaY=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "cb6c151f5c9db4df0b69d06894dc8484de1f16a0", "rev": "cf9686ba26f5ef788226843bc31fda4cf72e373b",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -66,11 +66,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1771243101, "lastModified": 1773876229,
"narHash": "sha256-p/qTbQU5wQEqbKWF8M0bZWuryUCrPsWrJB0GlNF1k6M=", "narHash": "sha256-ncup+eYqHABZzBgwfQzxOXWHIcjN4kkZl9QTb4cgNm8=",
"owner": "nix-community", "owner": "nix-community",
"repo": "NixOS-WSL", "repo": "NixOS-WSL",
"rev": "6d52ea6d66cb333c611c7b0e16dd24a05c9263e7", "rev": "381bc12a25d49c6b798f98ab33a8d951ec54659b",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -82,11 +82,11 @@
}, },
"nixpkgs": { "nixpkgs": {
"locked": { "locked": {
"lastModified": 1771714954, "lastModified": 1774244481,
"narHash": "sha256-nhZJPnBavtu40/L2aqpljrfUNb2rxmWTmSjK2c9UKds=", "narHash": "sha256-4XfMXU0DjN83o6HWZoKG9PegCvKvIhNUnRUI19vzTcQ=",
"owner": "nixos", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "afbbf774e2087c3d734266c22f96fca2e78d3620", "rev": "4590696c8693fea477850fe379a01544293ca4e2",
"type": "github" "type": "github"
}, },
"original": { "original": {

View file

@ -29,7 +29,7 @@
"o" = "xdg-open"; "o" = "xdg-open";
"update" = "sudo nixos-rebuild switch --flake ~/dev/nixos"; "update" = "sudo nixos-rebuild switch --flake ~/dev/nixos";
"rm" = "rm -i"; "rm" = "rm -i";
"ls" = "eza"; "ls" = "eza --git-ignore -ls type";
}; };
stateVersion = "25.11"; stateVersion = "25.11";

View file

@ -15,6 +15,7 @@
mattermost-desktop mattermost-desktop
nerd-fonts.adwaita-mono nerd-fonts.adwaita-mono
newsflash newsflash
proton-pass
protonmail-bridge-gui protonmail-bridge-gui
signal-desktop signal-desktop
texliveFull texliveFull
@ -31,6 +32,7 @@
rounded-window-corners-reborn rounded-window-corners-reborn
runcat runcat
tray-icons-reloaded tray-icons-reloaded
useless-gaps
window-centering window-centering
]); ]);

View file

@ -18,11 +18,12 @@ in
keys.insert.j.k = "normal_mode"; keys.insert.j.k = "normal_mode";
}; };
languages = { languages = {
language-server.tinymist = { language-server = {
tinymist = {
config.exportPdf = "onSave"; config.exportPdf = "onSave";
config.outputPath = "$root/$dir/out/$name"; config.outputPath = "$root/$dir/out/$name";
}; };
language-server.scls = { scls = {
command = "simple-completion-language-server"; command = "simple-completion-language-server";
config.feature_words = false; config.feature_words = false;
config.feature_snippets = true; config.feature_snippets = true;
@ -34,12 +35,15 @@ in
environment.RUST_LOG = "info,simple-completion-language-server=info"; environment.RUST_LOG = "info,simple-completion-language-server=info";
environment.LOG_FILE = "/tmp/completion.log"; environment.LOG_FILE = "/tmp/completion.log";
}; };
language-server.ocamllsp = { ocamllsp = {
command = "ocamllsp"; command = "ocamllsp";
args = [ "--fallback-read-dot-merlin" ]; args = [ "--fallback-read-dot-merlin" ];
}; };
language-server.menhir-lsp = { menhir-lsp.command = "menhir-lsp";
command = "menhir-lsp"; dafny-lsp = {
command = "dafny";
args = [ "server" ];
};
}; };
language = [ language = [
{ {
@ -58,6 +62,28 @@ in
]; ];
scope = "source.menhir"; scope = "source.menhir";
} }
{
name = "ocaml";
language-servers = [
"scls"
"ocamllsp"
];
}
{
name = "dafny";
file-types = [ "dfy" ];
language-servers = [ "dafny-lsp" ];
scope = "source.dafny";
}
{
name = "zelus";
file-types = [
"zli"
"zls"
];
language-servers = [ "scls" ];
scope = "source.ocaml";
}
]; ];
grammar = [ grammar = [
{ {

View file

@ -13,7 +13,10 @@
{ {
devShells."${system}".default = devShells."${system}".default =
let let
pkgs = import nixpkgs { inherit system; }; pkgs = import nixpkgs {
inherit system;
config.allowUnfree = true;
};
menhir-lsp = pkgs.callPackage ./menhir-lsp.nix (pkgs // pkgs.ocamlPackages); menhir-lsp = pkgs.callPackage ./menhir-lsp.nix (pkgs // pkgs.ocamlPackages);
in in
pkgs.mkShell { pkgs.mkShell {
@ -21,18 +24,20 @@
# Build elements # Build elements
autoconf autoconf
ocaml ocaml
ocamlPackages.ocaml-lsp
ocamlPackages.findlib ocamlPackages.findlib
ocamlPackages.menhir ocamlPackages.menhir
ocamlPackages.menhirLib ocamlPackages.menhirLib
ocamlPackages.zarith ocamlPackages.zarith
ocamlPackages.lablgtk3 ocamlPackages.lablgtk3
ocamlPackages.lablgtk3-sourceview3 ocamlPackages.lablgtk3-sourceview3
ocamlPackages.camlzip
# Available provers # Provers
# alt-ergo alt-ergo
cvc5 cvc5
z3 z3
# Development tooling
ocamlPackages.ocaml-lsp
menhir-lsp menhir-lsp
]; ];
}; };