Comments (4)
I would be great if the runtime dependency to llvm-dev and nix-dev can be removed.
AFAIK, we do not rely on llvm-dev & nix-dev as runtime dependency, only llvm.out & nix.out.
from nixd.
LLVM closure size is much larger than many other repositories (e.g. Debian), it's only about 30~40M if properly packaged1. You may refer to NixOS/nixpkgs#230616 and these llvm static libraries contributed most closure size (which is definitely unnecessary at runtime).
Footnotes
-
For example, on Debian (amd64) https://packages.debian.org/bookworm/llvm-14 it is only 48,353kb (47.2M) after installation. ↩
from nixd.
You are right, the llvm itself is the main problem.
My mentioned packaged llvm-dev and nix-dev are only a problem on darwin, the dependencies are:
/nix/store/qlml6qifkgs47s3gb714lcq4vh27qpic-libcxxabi-16.0.6
/nix/store/6zn9dj3sdncl5qafw52p5zx7zszxjpjm-libcxx-16.0.6
/nix/store/a6kpihjkaiwxj1z544ha4s39mqgsjv8p-llvm-16.0.6-lib
/nix/store/4fkk4s69qln8nsbkd46n77s48cli1i6i-llvm-16.0.6-dev
/nix/store/909bg372n5iij7cs8vyggzkpb381dkla-boehm-gc-8.2.2
/nix/store/zic94z6xi9vrhd65z5dsn1q3bwab7wa8-nix-2.16.2
/nix/store/8mqyfmzb9nbfa3gghzfzkbv56zwzb44x-nix-2.16.2-dev
/nix/store/awwqpd7740g1m0qpxgcljmf18amsb1ky-libbacktrace-unstable-2022-12-16
/nix/store/8rsj7vmz86kgwy8aq8hbqg4kvsc22cw5-nixd-1.2.2
On linux, the package dependency shows following:
nix/store/p3jshbwxiwifm1py0yq544fmdyy98j8a-glibc-2.38-27
/nix/store/4zp05qkzh9s3c3k7pp9d36vhiz3x8h9l-gcc-13.2.0-lib
/nix/store/6ki2537r0m4p16i55j0gw5x0il6j9nl8-libbacktrace-unstable-2022-12-16
/nix/store/93kxyl9lh01rbqwjgdxjaf7l62zf9fp6-llvm-16.0.6-lib
/nix/store/kdgrm7cn9nfh0nhq2qnxc2fjx5ha1lq4-boehm-gc-8.2.2
/nix/store/v851wnb6ny7v2zhlikxma0qn9cwa1a69-nix-2.16.2
/nix/store/m8c94isyh6920vkb531pvxri998lwc3p-nixd-1.2.2
from nixd.
The root cause is the big llvm package, which needs to be fixed in nixpkgs. Therefor I close this issue.
Sorry for the noise.
from nixd.
Related Issues (20)
- example of usage and configuration without flakes HOT 2
- support completions for lib HOT 1
- Option to use Flake's `outputs.formatter.${system}` for formatting HOT 5
- document nixf-tidy HOT 2
- nixd dies on shutdown but not in the way eglot expects? HOT 2
- unnecessary "definition is not used warning" HOT 3
- Anything after the first expression in one file is ignored HOT 1
- [bug] nixd uses too much RAM when opening large files HOT 2
- autocomplete for builtins HOT 3
- Complete outputs: (dev out) for `package_name.` HOT 1
- `nixd.options` with `$NIX_PATH` import expressions HOT 4
- auto-complete default value for option HOT 4
- Wrong suggestions for rec keyword. HOT 3
- Somehow group the multipart suggestions in Neovim.
- support & auto complete nixvim options HOT 4
- vendor: enable written regression tests in derivations HOT 3
- documentation for nixvim modules
- completion pops up in comment context HOT 1
- Invalid range when going to package definition HOT 3
- Warning suppression is ignored, warnings are still shown HOT 5
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from nixd.