tkjuke - manipulate jukeboxes from a Perl/Tk program


tkjuke [ "slave" | window ID ]


tkjuke is a GUI for manipulating a jukebox in a windowed environment, which uses the program juke as the underlying controller.

tkjuke runs in either master or slave mode. As a master, tkjuke displays one or more tkjuke windows from the local and/or remote jukeboxes in tabs of a NoteBook widget. When an operator wants to manipulate a jukebox, she tells the master to contact the requisite computer and start tkjuke in slave mode. The slave's window becomes embedded in a NoteBook tab on the master.

When tkjuke is invoked with no command line argument, it becomes a master. The master also reads the file tkjuke.config for the list of jukeboxes under its control. Each lines designates a jukebox (lines are split below, but in the actual configuration file use one line per jukebox):

    auto-connect = 1 tkjuke = \
        "/usr/bin/ssh -p 222 -X -f root@rigel /home/root/bin/tkjuke"
    auto-connect = 1 tkjuke = \
        "/usr/bin/ssh -p  22 -X -f root@fire  /home/root/bin/tkjuke"

If auto-connect = 1, the master tkjuke will try to acquire the associated jukebox during startup. tkjuke is a double-quoted OpenSSH string that invokes a slave tkjuke.

When tkjuke is supplied a single argument, it's a string representation of a Tk hexadecimal window ID within which the slave should embed itself. For debugging, if the tkjuke argument is the string "slave" then a standalone slave is started.

Communication is via password-less ssh with X11 forwarding enabled. For simplicity, we assume OpenSSH, so as to have complete control over known command line arguments.

Many thanks to Eric Lee Green - I could not have written this without his counseling. Any bugs and/or misunderstandings concerning jukebox operations are my own.


To run the master tkjuke:


To run a stand-alone slave:

    tkjuke slave


Copyright (C) 2002 - 2007, Steve Lidie. All rights reserved.

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.


mtx, juke, jukebox