ChanServ changed the topic of #nixos-emacs to: https://github.com/nix-community/emacs-overlay | https://rms.sexy
bqv has joined #nixos-emacs
<bqv> adisbladis: do i remember correctly that it's your desire to eventually make it such that emacs can only be used with emacsWithPackages?
<bqv> cause if so, why? (just curious)
<bqv> I quite like being able to install an emacs package ad-hoc and not have to restart my weeklong emacs session to add a package
<bqv> seems that would be fundamentally impossible with emacsWithPackages, no?
<bqv> just came to mind because the nativeComp PR obviously doesn't work for me, but I don't see why theoretically it couldn't
<adisbladis> bqv: I have thought about not exposing emacsPackages as separate sets
<adisbladis> Because it's very easy to "hold it wrong"
johnw has joined #nixos-emacs
<adisbladis> Imagine something like:
<adisbladis> callPackage ({ elpaBuild, emacs }: elpaBuild { buildInputs = [ emacs ]; }) { emacs = emacsGcc; }
<adisbladis> Gah, this example was incomplete...
<adisbladis> callPackage ({ elpaBuild, emacs, emacsPackages }: elpaBuild { buildInputs = [ emacs emacsPackages.s ]; }) { emacs = emacsGcc; }
<adisbladis> It's quite ambigious what's going on here
<adisbladis> Which emacs are you actually building with?
<adisbladis> bqv: This doesn't mean that I want to completely remove the usecase though
<adisbladis> I think a fix might be as easy as tacking on the package set as a passthru on the emacs package
<adisbladis> And then the same example would look like
<adisbladis> callPackage ({ emacs }: emacs.pkgs.elpaBuild { buildInputs = [ emacs emacs.pkgs.s ]; }) { emacs = emacsGcc; }
<adisbladis> Much less risk to "hold it wrong"
<adisbladis> bqv: ^
<bqv> Ah, yes
<bqv> Understandable
<bqv> I like that outcome too
<adisbladis> I just realised it's also much more "symmetrical" in terms of what derivations/sets that exist
<adisbladis> Because we don't have package sets for the -nox packages
<adisbladis> I need to think a bit about what implications this has for overrides
neeasade has quit [Ping timeout: 264 seconds]
{^_^} has joined #nixos-emacs
JJJollyjim has joined #nixos-emacs
<JJJollyjim> i'm getting "builtins.storePath' is not allowed in pure evaluation mode" when I try to add the emacs overlay to my configuration using flakes
<JJJollyjim> (with nixpkgs.overlays = [emacsFlake.overlay];, inside the system config)
<adisbladis> Hm, I just greped the overlay and we don't reference builtins.storePath anywhere?
<adisbladis> Could you try with --show-trace and see where it's happening?
<JJJollyjim> storepath also isn't in any of the code snippets in the backtrace lol
<JJJollyjim> oh hold on
<JJJollyjim> i just commented out the flake and it's still happening haha
<adisbladis> (:
<JJJollyjim> umm
<adisbladis> Are you sure that stack trace is complete? :S
<adisbladis> I'm not doubting you.. It's just.. Odd..
<JJJollyjim> it's very odd
<JJJollyjim> I was doing this in flake.nix, to pass the emacs flake to the evaluation of the main config file:
<JJJollyjim> modules = [ ({ pkgs, ... } @ args: import ./configuration.nix (args // { inherit emacs; })) ];
<JJJollyjim> when I remove `emacs` from the destructuring parameters in configuration.nix, it works
<JJJollyjim> when emacs is present, it fails as above
<adisbladis> I'm not super familiar with flakes, but that looks wrong to me?
<JJJollyjim> I don't think that's a flake thing specifically, this is inside a standard call to nixpkgs.lib.nixosSystem {
<adisbladis> I don't think you need to manually pass emacs to modules at all, it's implemented as an overlay
<JJJollyjim> yeah, but i was adding it to nixpkgs.overlays inside configuration.nix
<JJJollyjim> and needed to pass it to that
<JJJollyjim> (have now switched to adding it as a tiny lambda module in flake.nix, and it works)
<JJJollyjim> (emacs there is the flake containing the overlay, not the emacs package itself)
<adisbladis> (I'm mostly speculating when it comes to flakes)
<JJJollyjim> yeah
<JJJollyjim> i uhh
<JJJollyjim> am getting no benefit and only pain and will switch back soon i think lol
<JJJollyjim> niv with a shittier ui
<JJJollyjim> i might not be the intended audience i guess
rajivr has joined #nixos-emacs
<bqv> I find the ux much more appealing than anything I see niv offer
<bqv> Flakes are about the thing I like most of nix
<aterius> Also prefer flakes, niv has broken on me on nix updates far more often and is slower to update dependencies
evanjs has quit [Ping timeout: 256 seconds]
neeasade has joined #nixos-emacs
neeasade has quit [Ping timeout: 260 seconds]
cole-h has quit [Ping timeout: 264 seconds]
reemerging has joined #nixos-emacs
Edward- has joined #nixos-emacs
Edward- has quit [Remote host closed the connection]
Edward- has joined #nixos-emacs
cosimone has joined #nixos-emacs
cosimone has quit [Remote host closed the connection]
cosimone has joined #nixos-emacs
Edward- has quit [Ping timeout: 268 seconds]
cosimone has quit [Remote host closed the connection]
cosimone has joined #nixos-emacs
cosimone has quit [Remote host closed the connection]
<{^_^}> #107152 (by adisbladis, 13 seconds ago, open): emacsPackages*: Move to emacs*.pkgs
<adisbladis> Still needs a relase note
<bqv> Ooh!
<adisbladis> I'm gonna mark it as a draft so no one merges it prematurely
<adisbladis> I'd love some feedback
<qyliss> adisbladis: I think I read somewhere that Fridh regrets doing this for Python
<qyliss> so it might be worth asking him
<bqv> Interesting
<adisbladis> qyliss: As opposed to separate sets for python37Packages, python38Packages and so on?
<bqv> I imagine because it means theres two paths, and the old is hard to deprecate
<adisbladis> Tbh I was thinking to do the same pattern for python
<adisbladis> The separate sets exposed like that is a huge error in design
<adisbladis> We've had quite a few cases of accidentally mixed python interpreters in nixpkgs
<adisbladis> Because of that
<adisbladis> Because the caller needs to take care to pass compatible arguments
<qyliss> adisbladis: yeah
evanjs has joined #nixos-emacs
reemerging has quit [Ping timeout: 246 seconds]
cole-h has joined #nixos-emacs
cosimone has joined #nixos-emacs
rajivr has quit [Quit: Connection closed for inactivity]
cosimone_ has joined #nixos-emacs
cosimone has quit [Ping timeout: 268 seconds]
cosimone_ is now known as cosimone
cosimone has quit [Quit: cosimone]
cole-h has quit [Quit: Goodbye]
cosimone has joined #nixos-emacs
cosimone has quit [Read error: Connection reset by peer]
cosimone has joined #nixos-emacs
cosimone_ has joined #nixos-emacs
cosimone has quit [Ping timeout: 240 seconds]
cosimone_ is now known as cosimone
selfsymmetric-mu has quit [Remote host closed the connection]
cosimone has quit [Quit: cosimone]