lsp-ai
lsp-ai copied to clipboard
Flake
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.