[PD] pd patch startup at boot - ubuntu-server
mark edward grimm
meg156 at columbia.edu
Sat Nov 4 16:00:48 CET 2006
thanks derek!
This all looks very promising! I will try some of this
later tonight and i will let the list know what
works... (unless someone already knows what works:)
...no im not running X. its optimized to run with just
a power cord and and network cord :)
best
mark
--- derek holzer <derek at x-i.net> wrote:
> Hi Mark,
>
> mark edward grimm wrote:
>
> > I took a look at this thread:
> >
>
http://lists.puredata.info/pipermail/pd-list/2004-10/022984.html
> >
> > and gave it a whirl with no luck on ubuntu... it
> seems
> > like there should be an easier way to do this.
>
> I took a bunch of notes from various sources on
> this. Almost all are
> from posts on the PD list, however I don't have the
> authors names
> attached anymore. Apologies to the original posters!
>
> But anyway, you should be able to find a solution
> somewhere in these
> suggestions! It largely depends on whether or not
> you are running X
> (which I imagine on a server you are not!)
>
> best,
> d.
>
> -----------
>
> to autostart on linux
>
>
>
> put a symlink in your rc3.d (or with whatever
> runlevel you boot by default,
> this is set in /etc/inittab)
>
> called S19pd_start (any number, but be sure, all
> other important processes
> are started before/lower numbers...) to a script
> named pd_start
>
>
>
> linux then calls this script with the argument
> "start" when booting. the
> script "pd_start" looks like:
>
>
>
> ################################# beginning of
> script
> #############################
>
>
>
>
>
> #! /bin/sh
>
> # Check for missing binaries (stale symlinks should
> not happen)
> PD_BIN=/usr/local/pd/bin/pd
> test -x $PD_BIN || exit 5
>
> case "$1" in
> start)
> echo -n "Starting PD"
> ## Start daemon with startproc(8). If this
> fails
> ## the return value is set appropriately by
> startproc.
> /usr/local/pd/bin/pd -nogui -noadc -audiobuf
> 20 -r 22050 \
> -lib /usr/local/lib/pd/pdp/pdp \
> -lib /usr/local/lib/pd/externs/zexy \
> -path /home/marius \
> -path /usr/local/lib/pd/pdp \
> -path /usr/local/lib/pd/externs/zexy \
> /home/marius/application.pd &
> ;;
> ## mind the &!!!
> stop)
> echo -n "Shutting down FOO "
> ## Stop daemon with killproc(8) and if this
> fails
> ## killproc sets the return value according
> to LSB.
>
> kill 'cat /var/run/pd.pid'
> ;;
>
> restart)
> ## Stop the service and regardless of whether
> it was
> ## running or not, start it again.
> $0 stop
> $0 start
> ;;
>
> *)
> echo "Usage: $0 {start|stop|restart}"
> exit 1
> ;;
> esac
>
> ################################## end of script
> #######################
>
>
>
>
>
>
>
>
>
> -- /etc/rc.d/rc.local:
> #!/bin/sh
> echo -n "starting pd..."
> PATH=/sbin:/bin:/usr/sbin:/usr/bin
> /usr/local/bin/pd_start
> --
>
> -- /usr/local/bin/pd_start:
> #! /bin/sh
> echo -n "starting pd..."
> PATH=/usr/local/bin:/bin:/usr/bin:/sbin:/usr/sbin
> cd /home/glui
> pd -verbose -nogui -nomidi \
> -lib /usr/lib/pd/extra/OSC \
> -lib /usr/lib/pd/extra/zexy \
> -open
> /home/glui/proj/LIDARmacher/pd/GPlayerStereo.pd &
> --
>
>
>
> ########################
>
>
> make an ".xinitrc" file in your home directory. in
> it put something like:
>
> hdspmixer &
>
> you can also safely put other stuff in there if you
> like:
>
> jackd -d alsa &
> pd -jack mypathc.pd &
> xterm
>
> but you might be better off doing this in some other
> star script and
> killing X after you know hdspmixer has been run.
> you only need to run
> hdspmixer once - this initializes the card somehow.
>
> ---------
>
> to login to X automagically
>
> use mingetty on tty1 with the option --autologin
> you set that in /etc/inittab
>
> mine says this:
> 1:2345:respawn:/sbin/getty 38400 tty1
>
> change it to something like this:
> 1:2345:respawn:/sbin/mingetty --autologin
> myusername tty1
>
> where "myusername" is the name you want to log into.
>
> then in .bash_profile under "myusername", you'll
> want somthing to
> automatically startx, like this:
>
> if [ -z "$DISPLAY" ] && [ $(tty) == /dev/tty1 ];
> then
> startx
> fi
>
>
>
> ###################
>
> Using this script you can run Pd as a daemon:
>
> scripts/debian/init.d/pd
>
> That means you can do this kind of stuff:
>
> /etc/init.d/pd start
> /etc/init.d/pd stop
> /etc/init.d/pd restart
>
> You'll most likely need to use it in -nogui mode,
> but it does that by
> default. You can configure which user account pd
> runs
=== message truncated ===
More information about the Pd-list
mailing list