lsp-ai icon indicating copy to clipboard operation
lsp-ai copied to clipboard

Flake

Open haras-unicorn opened this issue 6 months ago • 1 comments

Description

Fixes #32

This PR adds shells and packages for the cargo workspace and vscode extension. The nixos and home-manager modules for the lsp-ai package were included because the issuer requested to add this easily to their home-manager configuration.

This is a WIP.

Additional work to be done and requests for help

The build for the lsp-ai package fails because the build for openssl-sys fails and I haven't been able to fix it. Any help around this would be greatly appreciated.

The vscode extension package needs to be modified to actually call esbuild but IDK what would be the right approach for that. On the other side, I don't know if packaging it is even worthwhile because it already exists in the vscode marketplace and the vscode extensions flake most likely already picked it up so users can add it to their configuration through there.

Possible regressions

cargo2nix modified the Cargo.lock file. If this is a problem I will try and make it so it doesn't do that.

node2nix which the vscode extension flake uses requires the package-lock.json be downgraded to version 2 but if that is not acceptable i will remove that flake. The reason why that flake is added is to "nixify" the whole repository and there is surely a way to package up the vscode extension nicely so it can be added to vscode extensions home-manager configuration.

Additional info

I use direnv for easily switching between environments in my shell so I added .envrc files. I hope this is not a problem.

Some additional lines were added to .gitignore to ease development which are optional and could be removed if it is a problem. The .direnv folder is only relevant if a developer uses direnv and result is the location where nix build saves the results of builds by default so unless someone is testing the result of nix build it is not needed.

haras-unicorn avatar Aug 15 '24 18:08 haras-unicorn