Nix Flakes | 887 Members | |
| 179 Servers |
| Sender | Message | Time |
|---|---|---|
| 2 Dec 2023 | ||
| 03:43:40 | ||
| 21:07:34 | ||
| I have a flakes-based configuration and upgraded from nixos-23.05 to nixos-23.11. Which caused gnupg to upgrade from 2.4.0 to 2.4.1. Unfortunately gnupg 2.4.1 is not compatible with my install of emacs 29.1 for some reason. What is the recommended flakes-based method to pin a specific package, such as gnupg, to a specific version? I guess I could set up a 23.05 input, overlay that into pkgs, and then set programs.gnupg.package = 23-05-pkgs.gnupg, but wondering if there is a more direct way? | 21:11:22 | |
| Update, the overlay method worked out perfectly. | 21:42:54 | |
| 3 Dec 2023 | ||
| 09:46:37 | ||
| 14:09:06 | ||
In reply to @flyx:klacker.euone thing I do is to use nix copy instead of that rsync step; I wrote a script that automates the copy & build steps, writing the build result store address, which you can then nix copy back. It's basically your setup, but using more nix-builtin methods | 15:31:49 | |
is that script | 15:31:58 | |
In reply to @flyx:klacker.eu* one thing I do is to use nix copy instead of that rsync step; I wrote a script that automates the copy & build steps, writing the build result store address, which it optionally nix copy'd back. It's basically your setup, but using more nix-builtin methods | 15:32:44 | |
| 22:33:36 | ||
| 4 Dec 2023 | ||
| 11:23:33 | ||
| 5 Dec 2023 | ||
| 00:39:05 | ||
| 6 Dec 2023 | ||
| Hi ! It seems that you can use flake-parts without clearly adding it to the inputs.Is it somehow "contained" in nixpkgs ? I tried to grep the nixpkgs repo for flake-parts but had no result. | 12:55:36 | |
| What makes you think you can use flake-parts without adding to inputs? | 13:14:37 | |
| I tried ^^ | 13:15:18 | |
| Apparently it is because it is part of the global flake registry | 13:15:29 | |
| I was not aware of its existence | 13:15:39 | |
| https://github.com/NixOS/flake-registry | 13:16:36 | |
| 7 Dec 2023 | ||
| Hi! I'm finally migrating my 6 years old nixos config to Flakes! It's mostly going well but I need some help. I used to have an overlay that added This all seems to work, except that Nix is refusing to evaluate Unfree packages from Unstable now. It appears as though the | 09:48:32 | |
Right now, the overlay basically does { unstable = inputs.unstable.legacyPackages.x86_64-linux; }. I'm guessing this is where I should do something to inject the parent config into the unstable nixpkgs. | 09:52:49 | |
Oh. Wow. I just noticed my old approach did a similar thing: unstable = import (fetchTarball url) { config = config.nixpkgs.config; }; | 09:55:45 | |
But I don't know the way to refer to the config inside a Flake | 09:56:20 | |
it's not obvious, but you can literally do unstable = import inputs.unstable { config = ... } | 09:58:21 | |
| Oh? And then there's no need to mention the system architecture? :o | 09:59:03 | |
And what goes in the ...? :P Because right now I also don't know where to actually grab the parent config from | 09:59:48 | |
I'm also curious about how import inputs.x works. I thought input.x is an attribute set referring to the outputs of the flake you've imported. But it's also an import path referring to the source of what you've imported?! | 10:03:23 | |
i guess if you just want to allow unfree packages you can do unstable = import inputs.unstable { config.allowUnfree = true; } | 10:04:19 | |
In reply to @avaq:matrix.orgnot sure, i'm still figuring out this stuff too, but i think it should work because by the time overlays are being evaluated the system is already known | 10:05:09 | |
i think your overlay could look like final: prev: { unstable = import inputs.unstable { inherit (prev) system config; } but you might get away with omitting system | 10:06:59 | |
In reply to @avaq:matrix.orgflakes are attribute sets with _type = "flake", but when coerced to a string (builtins.toString) or a path (builtins.toPath) they resolve to the flake's store path | 10:08:18 | |