Subject: Re: bug#75295: emacs-math-preview: add math-preview dependency?

From: muradm <[email-masked]>
Date: Fri, 03 Jan 2025 15:30:54 +0300

Hi, normally nodejs packages are hard to import, since they have 
tons of dependencies, just like crates for rust, while crates are 
maintained in Guix and npm packages are not.

When I need nodejs package to be available for emacs, I once 
install it globally:

guix shell node -- npm install -g 
git+https://gitlab.com/matsievskiysv/math-preview

Then next time I need an instance of emacs with it, I would run:

guix shell node -- emacs

Beware, that if you run emacs without node available, math-preview 
would not be available as well.

If you normally don't have any thing complex to do with node (like 
having multiple nodejs versions, environments etc.), you may add 
it to your profile.

Christopher Howard <[email-masked]> writes:

> Hi, the package emacs-math-preview requires nodejs package 
> math-preview to be installed, in order to work. Would it be 
> possible Somebody™ could create a package for that and add it as 
> an explicit dependency for emacs-math-preview?
>
> I know nothing about nodejs and am having trouble figuring out 
> how to install math-preview myself on Guix. The README.md 
> instructions in emacs-math-preview state:
>
>> It may be installed by issuing the command:
>>
>> ```bash
>> > npm install -g 
>> > git+https://gitlab.com/matsievskiysv/math-preview
>> ```
>
> However, if I do this, I get this error:
>
> ```
> christopher@theoden ~$ npm install -g 
> git+https://gitlab.com/matsievskiysv/math-preview
> npm ERR! code ENOENT
> npm ERR! syscall mkdir
> npm ERR! path 
> /gnu/store/lknvzfbwqffvvyflid5dpm53vbjg8kh4-node-18.19.0/lib/node_modules/math-preview
> npm ERR! errno -2
> npm ERR! enoent ENOENT: no such file or directory, mkdir 
> '/gnu/store/lknvzfbwqffvvyflid5dpm53vbjg8kh4-node-18.19.0/lib/node_modules/math-preview'
> npm ERR! enoent This is related to npm not being able to find a 
> file.
> npm ERR! enoent
>
> npm ERR! A complete log of this run can be found in: 
> /home/christopher/.npm/_logs/2025-01-02T18_16_26_364Z-debug-0.log
> ```
>
> Evidently, I need to somehow pick a different path or something 
> like that. If somebody could at least document the correct 
> installation steps here, that would be helpful.