Skip to content

Instantly share code, notes, and snippets.

View dex4er's full-sized avatar

Piotr Roszatycki dex4er

  • Berlin, Germany
View GitHub Profile
@dex4er
dex4er / tz_offset.pl
Created August 14, 2012 00:12
TZ offset
use strict;
use warnings;
sub tz_offset
{
my $t = shift;
my @l = localtime($t);
my @g = gmtime($t);
my $minutes = ($l[2] - $g[2] + ((($l[5]<<9)|$l[7]) <=> (($g[5]<<9)|$g[7])) * 24) * 60 + $l[1] - $g[1];
@dex4er
dex4er / http2http.psgi
Created September 9, 2012 15:42
HTTP to HTTPS proxy server
#!/usr/bin/env perl
# generic HTTP to HTTP proxy server
use strict;
use Plack::Builder;
use Plack::App::Proxy;
my $error_500_res = [500, ['Content-Type' => 'text/plain'], [ "INTERNAL SERVER ERROR\n" ] ];
@dex4er
dex4er / example.pl
Created October 19, 2012 09:29
Scope::Using
#!/usr/bin/perl
use lib 'lib';
package My::Class;
use Moose;
has 'ref' => (is => 'rw', clearer => 'clear_ref');
sub DISPOSE { warn "$_[0]\->DISPOSE called"; $_[0]->clear_ref }
sub DESTROY { warn "memory leak of @_" if ${^GLOBAL_PHASE} and ${^GLOBAL_PHASE} eq 'DESTRUCT'; }
package main;
@dex4er
dex4er / capuniq.sh
Created November 29, 2012 13:36
capuniq
#!/bin/sh
file="$1"
if [ -z "$file" ]; then
echo "Usage: $0 file"
exit 1
fi
trap "rm -f $file.k12 $file.k12.uniq $file.cap; exit 1" 0 1 2 3 15
uwsgi_psgi --http localhost:5000 --remap-modifier 5:0 --psgi hello.psgi
@dex4er
dex4er / die.sh
Created February 4, 2013 20:06
Bash snippets
die () {
echo "$@" 1>&2
exit 1
}
@dex4er
dex4er / apt-cache.psgi
Created February 4, 2013 20:10
Caching proxy for apt-get
#!/usr/bin/perl -c
# twiggy apt-cache.psgi
use Plack::Builder;
use Plack::App::Proxy;
builder {
enable 'AccessLog';
enable 'Cache',
@dex4er
dex4er / mp4
Created February 6, 2013 21:32
magicrescue recipes
# Extracts mpeg files.
# Depends on avconv
4 string ftypisom
extension mp4
command dd of="$1.tmp" bs=1024k count=40; avconv -i "$1.tmp" -c:v copy "$1"; rm -f "$1.tmp"
min_output_file 102400
@dex4er
dex4er / txt2srt.pl
Last active December 17, 2015 03:38
#!/usr/bin/perl
use v5.10;
use Scalar::Util 'looks_like_number';
my $rate = looks_like_number $ARGV[0] ? shift @ARGV : 25.000;
for my $filein (@ARGV) {
open my $fhin, "<:crlf:encoding(cp-1250)", $filein or die "open: $filein: $!";
@dex4er
dex4er / pod2usage-test
Created May 12, 2013 20:42
pod2usage test
#!/usr/bin/perl
use Pod::Usage;
use Getopt::Long;
use strict;
use warnings;
GetOptions(
\my %opts,