12 Jul 2023 |
Bruno Rodrigues | * but when I try to build the environment first, and then drop into bash that doesn't work. So when I do
RUN nix-build /home/renv/default.nix
CMD ["bash"]
I get following error message
112.8 unpacking sources
112.8 unpacking source archive /nix/store/2zdq28c97x3rqb7fqrrvwkdzh44pdq05-nix-2.13.3
113.0 source root is nix-2.13.3
113.0 patching sources
113.0 configuring
113.1 no configure script, doing nothing
113.1 building
113.1 no Makefile or custom buildPhase, doing nothing
113.1 installing
113.1 no Makefile or custom installPhase, doing nothing
113.1 post-installation fixup
113.4 error: builder for '/nix/store/1csmqrnlgbyzm5kkjw2s9q348qpx3rqy-myProject.drv' failed to produce output path for output 'out' at '/nix/store/icf4fsmlcalyc2v5wiwn88x6f7xab46y-myProject'
| 12:23:29 |
Bruno Rodrigues | ok so some more googling led me to write this default.nix:
| 13:04:26 |
Bruno Rodrigues | * ok so some more googling led me to write this default.nix:
{ pkgs ? import (fetchTarball "https://github.com/NixOS/nixpkgs/archive/e11142026e2cef35ea52c9205703823df225c947.tar.gz") {} }:
with pkgs;
let
my-pkgs = rWrapper.override {
packages = with rPackages; [ dplyr ggplot2 R];
};
in
mkShell {
buildInputs = [my-pkgs];
}
| 13:04:47 |
Bruno Rodrigues | and now it builds successfully | 13:05:00 |
Bruno Rodrigues | I guess the issue was that before I wasn't creating an environment, because I wasn't using mkShell explicitely? | 13:05:51 |
jbedo | In reply to @brodriguesco:matrix.org I guess the issue was that before I wasn't creating an environment, because I wasn't using mkShell explicitely? These general nix questions are better in #nix:nixos.org, but to answer your questions derivations have to produce all outputs, of which out is mandatory. Your expression above did not create the output path expected so your got an error when you tried to build it. mkShell is a wrapper around mkDerivation that simply dumps some text into the output path (see pkgs/build-support/mkShell/default.nix ). | 23:23:44 |
13 Jul 2023 |
Bruno Rodrigues | Ah great many thanks. I figured it had to do something with the fact that mkShell likely provided the required outputs, which I would have had to provide by hand otherwise | 07:52:14 |
Bruno Rodrigues | I've joined the NixOS channel, I'll ask these types of questions in there in the future, thanks! | 07:52:56 |
17 Jul 2023 |
| Jez (he/him) ♾️ joined the room. | 14:29:47 |
Jez (he/him) ♾️ | ok, it's been a while since i looked at this, but i'm having a go at implementing a nix-flakes buildpack for repo2docker which will allow use of a git repo with a flake.nix on https://mybinder.org/ | 14:32:09 |
Jez (he/him) ♾️ | story so far is that i got it working 2 years ago using the existing nix buildpack and edolstra's flake-compat, and to prove the long-term reproducibility of nix, it still builds and runs using repo2docker ! https://codeberg.org/jezcope/binder-nix-flakes | 14:34:22 |
Jez (he/him) ♾️ | hmm, OK, first roadblock to doing anything with a reasonably recent nixpkgs is this: repo2docker does not work with jupyter-server v2 https://github.com/jupyter-server/jupyter_server/issues/1038 | 16:24:45 |
Jez (he/him) ♾️ | is there a standard way to install an old version of a python package? equivalent to pip install jupyter-server<2.0.0 | 16:25:54 |
Jez (he/him) ♾️ | I guess I should ask in #python:nixos.org | 16:28:22 |
18 Jul 2023 |
| zimbatm changed their display name from zimbatm to Jonas Chevalier. | 11:06:32 |
20 Jul 2023 |
Bruno Rodrigues | hi again, I wrote two blog posts on Nix and R, maybe you’ll find them interesting :) any feedback welcome! | 14:40:00 |
Bruno Rodrigues | https://www.brodrigues.co/blog/2023-07-13-nix_for_r_part1/ | 14:40:02 |
Bruno Rodrigues | https://www.brodrigues.co/blog/2023-07-19-nix_for_r_part2/ | 14:40:10 |
raitobezarius | In reply to @petrichor:envs.net is there a standard way to install an old version of a python package? equivalent to pip install jupyter-server<2.0.0 checking out an older nixpkgs | 16:12:18 |
raitobezarius | or not using nixpkgs | 16:12:26 |
Bruno Rodrigues | fellow Nixers, I'm a beginner and started a series of blog posts that might interest some of you. It focuses on R but I believe a lot of what I describe could be used for any language | 16:19:15 |
Bruno Rodrigues | https://www.brodrigues.co/blog/2023-07-13-nix_for_r_part1/ | 16:19:18 |
Bruno Rodrigues | https://www.brodrigues.co/blog/2023-07-19-nix_for_r_part2/ | 16:19:34 |
Bruno Rodrigues | Feedback more than welcome | 16:19:49 |
21 Jul 2023 |
Jez (he/him) ♾️ | In reply to @raitobezarius:matrix.org or not using nixpkgs yeah, I'm leaning towards trying to poetry2nix it now. that will probably rebuild the python packages but at least it won't try to rebuild a weirdly specific version of llvm, which is what happened when I picked a nixpkgs commit with the right version of jupyter-server... | 06:01:24 |
Jez (he/him) ♾️ | turned out not many packages from that commit were cached 😭 | 06:01:57 |
| Domen Kožar changed their profile picture. | 12:30:46 |
25 Jul 2023 |
carlthome | Any easy way of setting up an ad-hoc Python environment with a few packages on the command line with nix run
I'm able to get nix run nixpkgs#jupyter working but can't get NumPy into a kernel without writing a shell.nix or similar first. Was thinking nix run 'nixpkgs#python3.withPackages(ps: with ps; [torch])' could work but it doesn't seem to.
| 00:19:12 |
carlthome | Or like if it was possible to nest Python packages with nix shell but they don't end up in the same site-packages. | 00:21:14 |
carlthome | Guess this is one area where nix-shell is still better?
nix-shell -p 'python310.withPackages (p: [ p.numpy ])' does what I expect.
| 00:25:18 |