Skip to content

Instantly share code, notes, and snippets.

View pavelsr's full-sized avatar
🏠
Working from home

Pavel Serikov pavelsr

🏠
Working from home
View GitHub Profile
#!/usr/bin/env bash
# CryptoPro Ubuntu deploy script
sudo apt-get install libccid pcscd libpcsclite1 pcsc-tools opensc
# https://www.dropbox.com/sh/mnn4hm3k7r2ot43/AACwEcMaF2xHS4PjUqJyZQbUa?dl=0
# author: pavel.p.serikov@gmail.com
archive_name="cryptopro-linux-amd64_deb-11998.tgz"
archive_folder="linux-amd64_deb"
@pavelsr
pavelsr / otrs_errors.md
Last active June 2, 2020 11:39
otrs ошибки при установке

TO-DO: пользователь otrs в postgres

Далее настраиваем postgres для поддержки UTF8: https://stackoverflow.com/a/16737776/1441592

Настройка кластера PostgreSQL

По умолчанию кластер создаётся с кодировкой SQL_ASCII (\l), чтоб работал otrs нужно либо сделать initdb с кодировкой utf8 либо создать базу данных ручками

@pavelsr
pavelsr / app.pl
Last active May 13, 2020 00:56
Demo of Yancy MultiTenant OpenApi problem https://github.com/preaction/Yancy/issues/104
#!/usr/bin/env perl
use Mojolicious::Lite;
use Mojo::SQLite;
helper sqlite => sub {
state $path = app->home->child( 'data.db' );
state $sqlite = Mojo::SQLite->new( 'sqlite:' . $path );
return $sqlite;
};
@pavelsr
pavelsr / app.pl
Created April 12, 2020 23:46
Yancy submit form using jquery.post - bypass of CSRF token validation failed
#!/usr/bin/env perl
# Demo of 'CSRF token validation failed' error bypass using jquery.post and serialize form data as JSON
use Mojolicious::Lite;
use Mojo::SQLite;
helper sqlite => sub {
state $path = app->home->child( 'data.db' );
state $sqlite = Mojo::SQLite->new( 'sqlite:' . $path );
return $sqlite;
#!/usr/bin/env perl
# Demo of 'CSRF token validation failed' error
use Mojolicious::Lite;
use Mojo::SQLite;
helper sqlite => sub {
state $path = app->home->child( 'data.db' );
state $sqlite = Mojo::SQLite->new( 'sqlite:' . $path );
return $sqlite;
@pavelsr
pavelsr / htaccess_tester.pl
Created May 13, 2019 21:40
put it in same level with .htaccess
use strict;
use warnings;
use File::Slurper 'read_lines';
use LWP::UserAgent ();
use JSON;
use feature 'say';
use Term::Table;
use List::Util qw(uniq);
use Data::Dumper;
@pavelsr
pavelsr / pcg.sh
Last active October 28, 2020 12:46
Quick CLI tool to view perl call graph, wrapper under
#!/bin/bash
# Quick CLI tool to view perl call graph
if ! [ -x "$(command -v dot)" ]; then
echo 'Error: graphviz is not installed. Try sudo apt-get install graphviz' >&2
exit 1
fi
if ! [ -x "$(command -v perl_call_graph)" ]; then
echo 'Error: please put perl_call_graph.pl to /usr/local/bin or make bash alias' >&2
@pavelsr
pavelsr / modify.sh
Created November 2, 2018 13:20
Some magic here
#!/bin/bash
# docker exec -it 220v_apache_1 cpanm DBI::Log
# git diff to check changes
sed -i '15iuse main_config;' htdocs/cgi-bin/a0/pbh-preprocessor.pl
sed -i '16iuse DBI::Log file => "debug.log";' htdocs/cgi-bin/a0/pbh-preprocessor.pl
sed -i '21iuse Middleware::Stacktrace;' framework/lib/Perl5/DDV/ControllerRunner.pm
cat >framework/lib/Perl5/Middleware/Stacktrace.pm <<'EOL'
package Middleware::Stacktrace;
pi@raspberrypi:~/unlock/linux_huawei_unlocker $ ./unlocker.py
********************************************************************************
Huawei modem unlocker
By Neil McPhail and dogbert
This is Free Software as defined by the GNU GENERAL PUBLIC
LICENSE version 2
********************************************************************************
This software comes with NO WARRANTY
This software can damage your hardware
Use it at your own risk
@pavelsr
pavelsr / move-volume.sh
Last active March 31, 2020 21:57
Script for quickly moving docker volume to another server
# Script for quickly moving docker volume to another server
echo "List of all running docker containers"
docker ps --format "table {{.Names}}"
echo " ============================== "
docker ps --format='{{.Name }}'
# defaults
REMOTE_HOST='admin@193.124.205.64'