2

I'm having trouble controlling fbi through a named pipe, it seems fbi simply stops listening to the pipe after the first write and I can't figure out why.

I'm running something like:

$ mkfifo /tmp/fbi
$ sudo fbi -T 1 *.png < /tmp/fbi &
[1] 19374
$ echo -n "." > /tmp/fbi
using "DejaVu Sans Mono-16", pixelsize=16.67 file=/usr/share/fonts/truetype/dejavu/DejaVuSansMono.ttf

After this it looks like something starts listening to STDIN (line becomes black with no cursor showing but I can type in whatever) but after pressing enter I simply get:

[1]+  Done                    fbi -T 1 *.png < /tmp/fbi

fbi keeps on running normally after this, but it won't listen to the fifo anymore. If I try to write something into the fifo after this I get stuck there until I CTRL-C out of it, which is the same that happens when writing to a fifo which has nothing listening to it.

Things to keep in mind:

  • I'm using a RPI 3 with Raspbian Jessie Lite
  • I'm running this from SSH
  • fbi version 2.09, compiled on Oct 21 2014
  • If I run fbi manually it won't listen to STDIN for commands either, it simply puts me back on bash and continues to run with whatever arguments I launched it

Things I have tried:

  • Using nohup to launch fbi
  • Writing to process via echo "something" > /proc/[fbi pid]/fd/0
  • Using both root and normal user pi
  • Writing these commands to .bashrc so it runs on autologin without having to ssh into the raspberry

None of the previous worked for me. What could I be doing wrong? Thanks for reading.

0 Answers0