[Xastir] Desktop Icon for Xastir on Mint

Lee D Bengston kilo5dat at gmail.com
Sun Oct 27 18:07:07 PDT 2019


On Fri, Oct 25, 2019 at 8:00 PM Ken Koster <n7ipb at wetnet.net> wrote:

> On Thursday, October 24, 2019 1:29:11 PM PDT wa7skg wrote:
> > New subject. Got Xastir working and a few issues remain. Apparently, on
> > restart or whatever, I need to open a terminal and start the festival
> > server. Then I have to start Xastir in the terminal. Is it possible to
> > have festival start when the computer starts? More importantly, Xastir
>
> I'm not familiar with mint but on my systems (openSUSE) festival is
> started by a
> systemd service file.
>
> I've included mine below and it should work on mint but I make no
> guarantees.
>
> Copy the below into a file called festival.service
> On openSUSE service files are in /usr/lib/systemd/system.  Your mileage
> may vary.
>
> Enable with: sudo systemctl enable festival
> Start with: sudo systemctl start festival.
>
> --------------cut here-----------
> [Unit]
> Description=festival daemon providing full text-to-speech system
> After=remote-fs.target
> After=time-sync.target
> Wants=remote-fs.target
>
> [Service]
> Type=forking
> Restart=no
> TimeoutSec=5min
> IgnoreSIGPIPE=no
> KillMode=process
> GuessMainPID=no
> RemainAfterExit=yes
> SuccessExitStatus=5 6
> ExecStart=/usr/lib/festival/server start
> ExecStop=/usr/lib/festival/server stop
> ExecReload=/usr/lib/festival/server reload
>
> [Install]
> WantedBy=multi-user.target
> --------------cut here-----------
>
>  In Ubuntu, which should be the same as LInux Mint, the command to start
the festival server is as follows:

festival --server

(which including the path is /usr/bin/festival --server)

To get this to work with systemd I ended up creating a small 2-line shell
script (named festival.sh) with the following lines:

#!/bin/bash
/usr/bin/festival --server

Next added a festival.service file in /etc/systemd/system with the
following content:

[Unit]
Description=festival daemon providing full text-to-speech system
After=network.target

[Service]
Type=simple
Restart=no
TimeoutSec=5min
ExecStart=/path/to/festival.sh

[Install]
WantedBy=multi-user.target

For the "ExecStart" line use the real path to where the shell script is
located.  Don't forget to make the shell script executable.  Also don't
forget to issue "sudo systemctl daemon-reload" after adding or making
changes to festival.service

To test, issue "sudo systemctl start festival" and then start Xastir.
After a successful start I found festival could be stopped with sudo pkill
festival.  Issuing "sudo systemctl stop festival" will probably stop it as
well, and I'm sure that's the proper way to do it.

Once it's known to work via starting manually, issuing "sudo systemctl
enable festival" will enable it to start upon boot.  You probably already
know that by now based on previous posts.

I was not able to get festival to work by inserting /usr/bin/festival
--server directly in the systemd service file, but embedding it in a shell
script did the trick.

73,
Lee K5DAT


More information about the Xastir mailing list