DevOS | 37 Members | |
| Seeking help and geeking out together on https://github.com/divnix/devos & https://github.com/divnix/digga | 10 Servers |
| Sender | Message | Time |
|---|---|---|
| 26 Jul 2021 | ||
| have any of you guys heard of some sort of deprecation policy? | 15:41:35 | |
| like i'd love to remove python2 shitties but can i straight up just remove stuff that is unused? | 15:42:03 | |
In reply to @kraftnix:matrix.org There are two ways: nixpkgs's
| 16:16:03 | |
You can reuse a nixpkgs build instruction and just override those parameters, as done with manix or you can add your own build instructions to the ./pkgs folder as an alterantive. | 16:16:57 | |
The error you experience is probably due to the way module dependencies are handled in rust, but also go, etc.: a source (autonomously, outside of nvfetcher's knowledge) fetches submodules according to the language source distribution mechanism (eg. Cargo.lock). | 16:18:25 | |
| Those submodules are "pinned" in `nixpkgs's build instrucations (the one you reuse) to the sha of those modules as per the original source. | 16:19:01 | |
Probably also overriding this "pinned" valued with the one that you experience, might get you one step further. Alternative redoing the building instructions within ./pgs should always work. | 16:20:01 | |
* Probably also overriding this "pinned" valued with the one that you experience, might get you one step further. Alternative redoing the building instructions within ./pkgs should always work. | 16:20:17 | |
In reply to @kraftnix:matrix.org* There are two ways: nixpkgs's
| 16:20:48 | |
| Yeah so I eventually got it working by adding
I had attempted to do it via sources like manix, but that error I ran into is because I need to update at least the above hacky solution gets it working for me, although I would prefer a cleaner solution. I am not sure exactly what you mean by how I could use follows, would simple setting | 16:35:19 | |
The way you did is already akin to the follows way: rnix-lsp.inputs.nixpkgs.follows = "nixos"; would at least make sure that dependencies are reused and rnix-lsp does not build off of a complety distinct nixpkgs version and hence dep tree. | 16:37:40 | |
On the other hand, if you'd want to avoid an extra nixpkgs evaluation and make use of memoization, it becomes relevant to examine how rnix-lsp actually imports nixpkgs. Assuming that it's import nixpkgs { config = {}; overlays = [];} we can be confident that any other such import get's evaluated only once and then is memoized. | 16:39:47 | |
* On the other hand, if you'd want to avoid an extra nixpkgs evaluation (reportatly taking 130MB of RAM, in any case: no scaling well) and make use of memoization, it becomes relevant to examine how rnix-lsp actually imports nixpkgs. Assuming that it's import nixpkgs { config = {}; overlays = [];} we can be confident that any other such import get's evaluated only once and then is memoized. | 16:40:27 | |
The main instantiation of nixpkgs done in fup, however does pass both, config and overlays`, henve you probably suffer one extra instantiation of nixpkgs. (but only one for any other such package that is added this way) | 16:42:15 | |
* The main instantiation of nixpkgs done in fup, however does pass both, config and overlays, hence you probably suffer one extra instantiation of nixpkgs. (but only one for any other such package that is added this way) | 16:42:29 | |
* The main instantiation of nixpkgs done in fup, however does pass both, config and overlays, hence you probably suffer one extra instantiation of nixpkgs. (but only one globally for any number of such packages that is added this way) | 16:42:52 | |
from repl it doesn't look like rnix-lsp provides an overlay, so in that case is the hacky to do what I did? also I'm guessing this would break rnix-lsp if I had multiple architectures | 16:45:57 | |
* from repl it doesn't look like rnix-lsp provides an overlay, so in that case is the hacky way the right way to go about this? also I'm guessing this would break rnix-lsp if I had multiple architectures | 16:46:25 | |
In reply to @kraftnix:matrix.orgyep, in this case this is the right way. IN theory, you can even add packages directly via inputs.[...].mypackage to where you want to us them without going through an overlay, but I understand in this case you probably want to override the nixpkgs stock version. | 16:49:39 | |
In reply to @kraftnix:matrix.org* yep, in this case this is the right way. In theory, you can even add packages directly via inputs.[...].mypackage to where you want to us them without going through an overlay, but I understand in this case you probably want to override the nixpkgs stock version. | 16:50:02 | |
If there are multiple architectures, all those who are supported by rnix-lsp outputs should work out of the box. | 16:51:31 | |
| thanks for all the answers, i definitely have a better grasp of the interconnections now 👍️ | 17:03:09 | |
| guys, check out this cancer https://github.com/NixOS/nixpkgs/pull/131585 | 17:26:25 | |
| it was very interesting experience 😁 | 17:26:41 | |
| what would be the easiest way to test runtime of everything? | 17:27:12 | |
| or is it "nixops v1 works, all good" | 17:27:22 | |
| I suppose you could iterate over pythonPackages and just count the backtraces 😆 | 17:27:48 | |
| u wot now mate | 17:28:09 | |
| 😆 | 17:28:19 | |
| welp, it failed yet again | 17:34:30 | |