~abcdw/rde-discuss

2 2

How to roll your own RDE-like Emacs features with Guix Home

Details
Message ID
<hEpPHvPyn8kYYbrgChzSyqy3zeP1WsCw6RFWXP7I15UA52u-jXekwwPCPh8X9XjDh42YU2bWxh24lvjvTq3I76xyfNd0Sy_imUJZfTIkjMI=@protonmail.com>
DKIM signature
pass
Download raw message
I run a Guix System, but I don't use RDE. I'm wondering what would be
the simplest way for me to generate `configure-x` elisp packages the way
Andrew Tropin demonstrated in his "GNU Guix as Emacs package manager"
video using Guix Home. Right now I'm using Guix Home to install my
init.el (from a file) which contains a bunch of "sections" that could be
nicely separated into `configure-x` packages with their dependent Emacs
packages. Unlike RDE, I do not need these configure packages to provide
external configuration flags or anything fancy, since I would just code
them to my exact specifications.

My trouble is I couldn't quite parse the feature definitions in (rde
features emacs-xyz) to get a better idea of how to do this myself or
what components I can take from RDE directly.

Got any advice for a Guix noob like me?

Thanks in advance,


- James
Details
Message ID
<87le8lvzfp.fsf@ngraves.fr>
In-Reply-To
<hEpPHvPyn8kYYbrgChzSyqy3zeP1WsCw6RFWXP7I15UA52u-jXekwwPCPh8X9XjDh42YU2bWxh24lvjvTq3I76xyfNd0Sy_imUJZfTIkjMI=@protonmail.com> (view parent)
DKIM signature
missing
Download raw message
Hi James,

The functionality you're looking for is located in the service
make-home-elisp-service-type (which is reused in
rde-elisp-configuration-service). It extends the
home-emacs-feature-loader-service-type which extends the
home-emacs-feature, so I guess you don't have an easy way to simply have
this extensibility feature without also embracing the whole
home-emacs-service from RDE. 

A possible way to go (possibly not the best): start from the
feature-emacs' emacs-home-services definition, clear out everything you
don't need, from there inject in your home services. Then one by one you
can add you own configure packages using home-elisp-configuration like
the one in rde-elisp-configuration-service.

-- 
Best regards,
Nicolas Graves
Details
Message ID
<iSuOwbgUX2K6LQfBDPHAxego5b--AZl58quaruPES9qLZOsngbqveVN40_0fEJPBeKVkL0ovr4odixjlgSuH27Q5-grP_GiJjDatJ7gmwrU=@protonmail.com>
In-Reply-To
<87le8lvzfp.fsf@ngraves.fr> (view parent)
DKIM signature
pass
Download raw message
> Hi James,

Hi! Thanks for helping out :)


> The functionality you're looking for is located in the service
> make-home-elisp-service-type (which is reused in
> rde-elisp-configuration-service). It extends the
> home-emacs-feature-loader-service-type which extends the
> home-emacs-feature, so I guess you don't have an easy way to simply have
> this extensibility feature without also embracing the whole
> home-emacs-service from RDE.

Hmm, okay that information should help me investigate further.

> A possible way to go (possibly not the best): start from the
> feature-emacs' emacs-home-services definition, clear out everything you
> don't need, from there inject in your home services. Then one by one you
> can add you own configure packages using home-elisp-configuration like
> the one in rde-elisp-configuration-service.

Okay that sounds promising, I'll give it my best shot and report back to 
this thread if I come up with something useful - or if I need more help :P

Thanks again Nicolas,


- James
Reply to thread Export thread (mbox)