7 Jul 2023 |
trexd | I need flax to implement a small transformer model. Jax is easier to reason about for me as well | 01:37:32 |
| @lotte:chir.rs changed their profile picture. | 05:28:04 |
8 Jul 2023 |
| ascendo joined the room. | 12:29:09 |
9 Jul 2023 |
| Bruno Rodrigues joined the room. | 14:54:58 |
10 Jul 2023 |
Bruno Rodrigues | Hi all, I’m Bruno and am interested in Nix to set up reproducible development environments for R (my main language, but am curious for any language whatsoever). I’m thinking about Nix to essentially replace {renv} + Docker (and maybe even {targets}) | 10:19:22 |
Bruno Rodrigues | for now I’m reading the Nix pills and trying some things out | 10:19:34 |
Gaétan Lepage | In reply to @trexd:matrix.org Well currently updating flax is marked as broken on nixpkgs because it requires orbax to be built. I've started packaging orbax; however it requires a newer version of Jax than what is currently available on nixpkgs. Seems like people are working on it over here https://github.com/NixOS/nixpkgs/pull/227145 but it's stalled because of the changes breaking a lot of packages. I was wondering what the best way to insert myself in this process to help out in getting an update to jax merged so I can fix the state of the flax pacakge. Hi ! I'm the dumb guy at the origin of this PR. Indeed, we are struggling hard to get this through. A lot of problems have been tackled already. First and foremost, all of the packages (jax, jaxlib, jaxlibWithCuda) build fine now. However, a few existing packages are broken by this update. There are only 2: numpyro and tensorflow-datasets . | 13:18:52 |
Gaétan Lepage | I am only targetting 0.4.12 with this PR because 0.4.13 brings yet new issues (related to jax's dependencies) | 13:19:34 |
Gaétan Lepage | Honestly, it is kind of a nightmare ^^ | 13:19:49 |
trexd | Yeah it seems like it. Ya'll are doing excellent work though :D | 17:45:14 |
peddie | welcome! I've had some luck (with jbedo's help) setting up R development environments with flakes in the past year. feel free to ping me about it; I think nix is underused in the R world! | 22:11:53 |
11 Jul 2023 |
Bruno Rodrigues | thanks peddie! actually I was exactly going to be asking this: should I use flakes for this? and another question: have you written down some of this into a guide ? | 05:31:26 |
jbedo | the decision to use flakes is orthogonal to R, i use it and find it useful but it does have limitiations and are somewhat controversial | 05:39:21 |
jbedo | regardless of using flakes or not, focusing on understanding core nix will go a long way | 05:43:30 |
peddie | I've not written much down as it's just what I have managed to scrape together, and I don't have any blog or commit bits to nixpkgs. but there are examples in projects on github, like https://github.com/peddie/solar-api/blob/master/flake.nix | 05:55:52 |
peddie | as to whether you should use flakes: not really sure, I just happened to go that route | 05:56:25 |
Bruno Rodrigues | very interesting thanks! I’m still in exploration phase, and am reading lots of docs currently. Already managed to drop into a nix interactive shell with R and some packages. But I’m looking more into it to see if I could build some R package that would make it easy to essentially set up, for each new project one starts, an dev environment using nix | 06:42:52 |
Bruno Rodrigues | yesterday I read about flakes, so I was wondering if and what was the consensus on them :) | 06:43:36 |
Bruno Rodrigues | what would you say is the biggest benefit of using flakes over not using them? | 06:44:02 |
peddie | OK, it sounds a bit like templates (for setting up a dev env)? | 07:01:43 |
peddie | I think there is emphatically no consensus on flakes | 07:01:50 |
Bruno Rodrigues | ok | 07:03:15 |
Bruno Rodrigues | I’d like to have something like setup_env("4.2.1", c("dplyr", "tidyr", "janitor"), ide = "rstudio") that would create a default.nix and build the environment. Then, users would be advised to go to the environment and start rstudio from there, so that they could work in that new environment shipping that specific version of R and packages | 07:06:04 |
peddie | ah, I see, you want to configure it from an R session different to the one you want to use for development? | 10:10:10 |
Bruno Rodrigues | yes, because I want to build something that R users could use with as little friction as possible | 10:12:48 |
Bruno Rodrigues | and R users are really used to do everything from the R session, not so much from a cli tool | 10:13:04 |
Bruno Rodrigues | something that would mimic renv in a sense, but with nix instead (and nix would even go further, as it would even provide a separate R installation and potentielly RStudio as well) | 10:13:48 |
Bruno Rodrigues | then that default.nix file could be used for reproducibility purposes | 10:14:18 |
peddie | got it | 22:13:55 |
12 Jul 2023 |
| @futaki:matrix.org left the room. | 08:46:24 |