perlbrew and tmux

Tonight I decided to install a variety of perl versions on the desktop PC where I run Arch Linux. Rather than kick them all off manually, I whipped up a bash script wrapper around perlbrew.

It loops through all of the versions of perl I'm interested in. It starts perlbrew with the specified options but backgrounded. When the build.log shows up, it sends keystrokes to tmux window 4 telling it tail the build.log and brings perlbrew to the foreground. When the install is finished, it sends keystrokes to tmux window 4 telling it stop tailing the file and moves the build.log out of the way so we can view it later.

perlinstall.sh

3 Comments

With perlall it's a bit simplier:

for p in 6.2 8.4 8.5 8.9 10.1 12.4 14.2 15.9; do
  perlall build 5.${p}-nt
perlall build 5.${p}d-nt
done
^Z
bg

builds some non-threaded debugging and non-debugging variants. And does the named build log thing. threaded leave off the -nt.
See also https://github.com/rurban/App-perlall/blob/master/INSTALL

You can remove the wait for buid.log, changing the -f option of tail to -F option.

Leave a comment

About Mr. Muskrat

user-pic I'm married with 2 girls. By day, I work as a Senior Design Engineer (full time Perl programmer) for EFJohnson Technologies, a Land Mobile Radio company, in the Dallas/Fort Worth area. By night, I play various games as the mood strikes me. (Lately it's CPAN smoke testing.)