blahgeek / emacs-lsp-booster

Emacs LSP performance booster
MIT License
418 stars 12 forks source link

Add a `flake.nix` #8

Closed slotThe closed 8 months ago

slotThe commented 9 months ago

Hi, thank you for this project! Wanting to try it out, I created a quick nix package. I feel like sharing this with the world is the right thing to do, so here we go. The flake works for both development (I added rust-analyzer for convenience) and installation.

Commit summary

nix: Add flake

This functions as both a development flake (including rust-analyzer), and a package.

Add .envrc

This provides a convenient way to immediately change to the correct environment with direnv.

README: Add nix installation instructions

Related: https://github.com/blahgeek/emacs-lsp-booster/commit/7a9b90d2d3f1004577f324b6d8e8a3ec16f58063

blahgeek commented 9 months ago

Hi there, thanks for your PR!

The pre-built binary in release page is static linked, does that work in NixOS?

slotThe commented 9 months ago

The pre-built binary in release page is static linked, does that work in NixOS?

Yes, these work on NixOS as well; it's just that "move this binary to some place in your $PATH" is something that nix people don't really enjoy very much :P

I understand if you don't want all of this garbage in your repo, though, and am happy to just maintain a fork

blahgeek commented 8 months ago

Thanks for your explain.

Again thanks for your PR but unfortunately I don't tend to merge this. I don't personally use NixOS so I don't think I would be able to maintain these codes in the future. Also I believe that generally, platform-specific packaging related codes should not be maintained in upstream? (e.g. for archlinux, those PKGBUILD files are maintained individually).

But in the other hand, if you maintain this in some other places, I would happy to add a link to it in the README.

:smiley:

slotThe commented 8 months ago

Again thanks for your PR but unfortunately I don't tend to merge this.

Okay, fair enough. Thanks for considering!

I don't personally use NixOS so I don't think I would be able to maintain these codes in the future. Also I believe that generally, platform-specific packaging related codes should not be maintained in upstream? (e.g. for archlinux, those PKGBUILD files are maintained individually).

But in the other hand, if you maintain this in some other places, I would happy to add a link to it in the README.

Well, this would also be for people using the nix package manager, not necessarily just NixOS. Think of it a bit like providing a more robust docker container (that also works for development, not just as a ready made binary). There is nixpkgs, of course, but providing a flake in the repo has a much lower barrier to entry.

But anyways, I'm not here to convince you of the value of nix, so I've created this repo, featuring just the flake, and adjusted the installation instructions