!SlMumQZnFjwLRjWFbW:nixos.org

Nix + Doom Emacs

205 Members
Running Doom Emacs with Nix | You probably want https://github.com/nix-community/nix-doom-emacs44 Servers

Load older messages


SenderMessageTime
9 Aug 2023
@ckie:ckie.devmei 🌒& * JoelMcCracken: right so, the emacs shim runs in one go, currently collecting just the package names, and it doesn't have a network connection at this point because it's in a Nix build. the package meta is put into a json file, which is the output of this derivation. next up the nix evaluator parses this JSON, and prepares the next derivation using that: reading another derivation's result is called IFD 19:49:32
@ckie:ckie.devmei 🌒& * JoelMcCracken: right so, the emacs shim runs in one go, currently collecting just the package names, and it doesn't have a network connection at this point because it's in a Nix build. the package meta is put into a json file, which is the output of this derivation. next up the nix evaluator parses this JSON, and prepares the next derivation using that: reading & Importing From a Derivation's result is called IFD 19:49:51
@JoelMcCracken:matrix.orgJoelMcCrackenahhhhhh19:50:16
@ckie:ckie.devmei 🌒& but the trick is we don't always get fully-qualified package paths, sometimes we just get a (package! blahblah-mode), and we have to resolve it 19:50:38
@JoelMcCracken:matrix.orgJoelMcCrackensure19:50:55
@ckie:ckie.devmei 🌒& so that's done here atm 19:51:55
@JoelMcCracken:matrix.orgJoelMcCrackenthis seems to be the key https://github.com/radian-software/straight.el/blob/master/straight.el#L302219:54:45
@ckie:ckie.devmei 🌒&i feel that comment on 303119:55:36
@ckie:ckie.devmei 🌒&so essentially we need to determine a good spot to splice Nix in19:56:38
@ckie:ckie.devmei 🌒&that ideally doesn't involve a large api surface area19:56:52
@JoelMcCracken:matrix.orgJoelMcCrackenyeah19:58:12
@ckie:ckie.devmei 🌒&so that's about where i timed out last time after running around the room trying to read elisp19:58:40
@j4:matrix.orgj4m3sslighty related question, is it sufficient to lock doom's git version to lock package version or ? (I'm confused about the ~/.emacs.d/bin/doom upgrade 19:59:10
@ckie:ckie.devmei 🌒&moooostly19:59:28
@ckie:ckie.devmei 🌒&all of doom's own packages should be pinned, but the user doesn't have to specify a pin19:59:50
@ckie:ckie.devmei 🌒&like I have all of these:20:00:09
@ckie:ckie.devmei 🌒&image.png
Download image.png
20:00:10
@j4:matrix.orgj4m3sYeah right, i was just confused by the fact that in the modules they're called w/o the pin20:00:41
@j4:matrix.orgj4m3sBut seems like the pin is global to the repo :)20:00:49
@ckie:ckie.devmei 🌒&image.png
Download image.png
20:01:36
@ckie:ckie.devmei 🌒& JoelMcCracken: so this is another thing to consider actually. we need to save straight's resolutions. or every package registry's, but that might not be as feasible 20:02:42
@ckie:ckie.devmei 🌒& i'm tending more towards that doom2nix that saves all the source url/commit-ish/hash pins 20:03:43
@j4:matrix.orgj4m3smb then, I remembered it being empty. Thanks for the correction ~ 20:07:46
@JoelMcCracken:matrix.orgJoelMcCrackenwhat is doom2nix?21:15:16
@JoelMcCracken:matrix.orgJoelMcCracken

also,

we need to save straight's resolutions
is this covered by e..g exporting them as json output?

21:16:07
@JoelMcCracken:matrix.orgJoelMcCracken *

also,

we need to save straight's resolutions

is this covered by e..g exporting them as json output?

21:16:16
@ckie:ckie.devmei 🌒& JoelMcCracken: it's a thing that doesn't exist. but it'd be a CLI that pokes the network and creates a nde-specific json lockfile for resolutions 21:20:29
@ckie:ckie.devmei 🌒&the idea is we want to put as little as possible behind the hash-dependent part with the network access21:21:08
@JoelMcCracken:matrix.orgJoelMcCrackenhmm21:29:12
10 Aug 2023
@JoelMcCracken:matrix.orgJoelMcCrackenI imagine I could add some shim here https://github.com/nix-community/nix-straight.el/blob/master/setup.el#L2003:07:07

Show newer messages


Back to Room ListRoom Version: 9