Pushing citations to Lyx: Lyxpipe.in.in instead of lyxpipe.in

If I try to push to lyx JabRef tries to write in lyxpipe.in.in instead of lyxpipe.in. How can I fix this
Using: JabRef 5.11–2023-10-21–a2cb3a7
Ubuntu 22.04 LTS
Java 21.0.1
JavaFX 20.0.2+3

Thank you for your kindly help!

grafik

Hi,

seems like there is some configuration issue with the extension.
You can check the settings for the lyx/kile.
The error message seems to be a bit misleading, it will always add a (.in) after the command.

Thank you for your answer! I think, my config is fine?
:frowning:

May be it is a permission problem:

Problem pushing to LyX/Kile.
java.io.FileNotFoundException: /home/rlau/.lyx/lyxpipe.in (Permission denied)
at java.base/java.io.FileOutputStream.open0(Native Method)
at java.base/java.io.FileOutputStream.open(Unknown Source)
at java.base/java.io.FileOutputStream.(Unknown Source)
at java.base/java.io.FileOutputStream.(Unknown Source)
at java.base/java.io.FileWriter.(Unknown Source)
at org.jabref@5.11.316/org.jabref.gui.push.PushToLyx.lambda$pushEntries$0(Unknown Source)
at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
at java.base/java.util.concurrent.FutureTask.run(Unknown Source)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.base/java.lang.Thread.run(Unknown Source)

that goes over my head
:-/

lyxpipe.in is writeable
prw-rw-rw- 1 rlau rlau 0 Dez 16 23:59 lyxpipe.in
or not?
the lyxpipe works fine, I can use it at console with
@Tux-2204:~/.lyx$ echo “LYXCMD:test:buffer-view:” > lyxpipe.in;read a < lyxpipe.out;echo $a

Are you using the deb version of JabRef or are you using the snap version?

I think that’s the problem: I’m using Snap and the reason is the sandbox?

But: Thank you for your interest and your kind support. There is no longer any need. I can integrate mybib.bib directly into Lyx.

Hi,

yes this seems to be the problem. Due to the snap sandbox restrictions, it’s not always possible to interact with programs installed on the system.
You could also test if the portable version of JabRef works to confirm this

Thank you for your interest!
Before I use snap, I tried the jabref_5.11_amd64.deb. But I can’t install it at ubuntu 22.04.

At ubuntu 22.04 JaBref is on jabref/jammy,jammy 3.8.2+ds-16 all.
Unfortunately lyx isn’t available in snap; only on flatpak. May be there is the same problem between flatpak and snap?

Try installing with dpkg -i from the terminal

Ok! I will try it with dpkg -i.

Thank you very much for your help. Now it works great if I push the entry!!

1 Like

If someone is interested, how it works on MacOS:
https://wiki.lyx.org/Mac/Mac#toc20
For me it works with
/Applications/LyX.app/Contents/Resources/lyxpipe
at
JabRef 5.11–2023-10-21–affb6ac
Mac OS X 12.7.1 x86_64
Java 21.0.1
JavaFX 20.0.2+3
Lyx 2.3.7

1 Like

To cite the Lyx documentation:

Pipes

Name in Path Problem (JabRef)

Programs such as JabRef communicate with LyX via pipes, which are sometimes named incorrectly by default (e.g., they assume that the pipe is in a directory that has a space in its name, such as Application Support, but other programs often cannot deal with spaces in paths). You may need to fix the lyxpipe path in both LyX and JabRef in Mac OS X.

To fix the LyX pipe in JabRef, open JabRef and go to Preferences>External Programs and in “Path to LyX pipe” enter /Applications/LyX.app/Contents/Resources/lyxpipe. Close JabRef.

Then open LyX, go to LyX>Preferences>Paths, and in “LyXServer pipe” enter /Applications/LyX.app/Contents/Resources/lyxpipe. Reconfigure. Close LyX.

The next time you run LyX and JabRef, you should be able to push citations directly from your BibTeX bibliography in JabRef into LyX. If anything goes wrong, JabRef will return an error message, and you will have to redefine the pipe. You might try the following: (1) change the LyXServer path in LyX → Preferences → Paths back to ~/.lyx; (2) recreate the ~/.lyx directory by entering in a terminal session, “mkdir ~/.lyx”; and (3) restart LyX.

Hello ThiloteE,
Thanks for your interest, I had solved the problem under MacOS in exactly the same way. It works fine for me.