kopia lustrzana https://github.com/alecmuffett/eotk
51 wiersze
953 B
Perl
Executable File
51 wiersze
953 B
Perl
Executable File
#!/bin/sh
|
|
exec perl -wx $0 "$@";
|
|
#!perl
|
|
# eotk (c) 2017-2020 Alec Muffett
|
|
|
|
if (-t STDIN) { # stderr is already redirected...
|
|
if (open(DOTS, ">/dev/tty")) {
|
|
$dots = 1;
|
|
}
|
|
}
|
|
|
|
sub GenOnion {
|
|
my $version = shift;
|
|
chomp($onion = `env ONION_VERSION=$version eotk gen`);
|
|
return $onion; # THIS IS NOW THE UNIFIED FORMAT
|
|
}
|
|
|
|
sub Lookup {
|
|
my $var = shift;
|
|
|
|
foreach $deprecated (qw(NEW_HARD_ONION NEW_SOFT_ONION)) {
|
|
die "Lookup: $deprecated is no longer supported syntax\n"
|
|
if $var =~ /$deprecated/;
|
|
}
|
|
|
|
if ($var =~ /^NEW_(V3_)?ONION$/) {
|
|
my $version = $1 ? 3 : 2;
|
|
return &GenOnion($version);
|
|
}
|
|
|
|
if (defined($ENV{$var})) {
|
|
return $ENV{$var};
|
|
}
|
|
die "Lookup: variable named '$var' not set\n";
|
|
}
|
|
|
|
while (<>) {
|
|
if ($dots) {
|
|
print DOTS ".";
|
|
}
|
|
s/%([\w+]+)%/&Lookup($1)/ge;
|
|
print;
|
|
}
|
|
|
|
if ($dots) {
|
|
print DOTS "\n";
|
|
close(DOTS);
|
|
}
|
|
|
|
exit 0;
|