SVL

 view release on metacpan or  search on metacpan

bin/svlserve  view on Meta::CPAN

# kill all processes in this group.
$SIG{INT} = $SIG{TERM} = sub {
  $SIG{TERM} = sub { exit };
  warn "Interrupted\n";
  kill(-SIGTERM(), $$);
};


# hate!
$ENV{HOME} ||= ($ENV{HOMEDRIVE} ? dir(@ENV{qw( HOMEDRIVE HOMEPATH )}) : '')
  || (getpwuid($<))[7];
$ENV{USER} ||= ((defined &Win32::LoginName) ? Win32::LoginName() : '')
  || $ENV{USERNAME}
  || (getpwuid($<))[0];
my $svkpath = $ENV{SVKROOT} || file($ENV{HOME}, ".svk");
my $xd = SVK::XD->new(
  giantlock => file($svkpath, 'lock'),
  statefile => file($svkpath, 'config'),
  svkpath   => $svkpath,
);
$xd->load();
$xd->giant_unlock();

my $bonjour = SVL::Bonjour->new;

lib/SVL/Command.pm  view on Meta::CPAN

use Path::Class;
use SVK;
use base qw(App::CLI Class::Accessor::Chained::Fast App::CLI::Command);
__PACKAGE__->mk_accessors(qw(xd svk svkpath));

sub dispatch {
  my $class = shift;

  # hate!
  $ENV{HOME} ||= ($ENV{HOMEDRIVE} ? dir(@ENV{qw( HOMEDRIVE HOMEPATH )}) : '')
    || (getpwuid($<))[7];
  $ENV{USER} ||= ((defined &Win32::LoginName) ? Win32::LoginName() : '')
    || $ENV{USERNAME}
    || (getpwuid($<))[0];

  my $svkpath = $ENV{SVKROOT} || file($ENV{HOME}, ".svk");

  my $xd = SVK::XD->new(
    giantlock => file($svkpath, 'lock'),
    statefile => file($svkpath, 'config'),
    svkpath   => $svkpath,
  );
  $xd->load();



( run in 0.291 second using v1.01-cache-2.11-cpan-8d75d55dd25 )