Skip to content

Instantly share code, notes, and snippets.

View kumaxim's full-sized avatar
:octocat:
I may be slow to respond.

Maxim Kudryavtsev kumaxim

:octocat:
I may be slow to respond.
View GitHub Profile

I have 2 hard drive in my workstation:

  • SSD for system files and current working project
  • HDD for snap/flatpak caches, downloads etc familiar In some time I reached the limit of SSD and moved older projects to HDD. However, I want to save access to them from a familiar directory. I spent some time in Google and compose a simple terminal command:
while IFS= read -r -d '' n; do \
  ln -s "$(pwd)/$(basename "$n")" $HOME/Project/"$(basename "$n")"; \
 done < <(find . -maxdepth 1 -mindepth 1 -print0)
@kumaxim
kumaxim / README.md
Created August 5, 2022 17:37
Build PECL package on specific PHP version

One summer beautiful day I updated PHP from 7.4 to 8.0 and PHPStorm from 2019.3 to 2021.3 on my work station.

I used xDebug v2.9.8 from PECL on PHP 7.4 and xDebug v3.1.2 from Ubuntu repository ppa:ondrej/php on PHP 8.0

I wanted to preserve different version xDebug on different version PHP. Do not tell me Why :-)

This script build xDebug from PECL for PHP 7.4. Example usage:

./pecl-php-package-installer.sh 7.4 xdebug 2.9.8

Get list of all available tags of image from Docker Hub

Usages

Looking tags of Apache HTTP Server

dockertags httpd

Output:

@kumaxim
kumaxim / wp-cli-run-command-from-php
Created April 28, 2022 21:24
Run WP_CLI command from PHP code
<?php
// Import image to media library using WP_CLI
// Call the code from your own WP CLI custom command
$image_id = \WP_CLI::runcommand(
sprintf('media import "%s" --preserve-filetime --porcelain',$thumbnail),
['return' => true, 'launch' => false]
);
@kumaxim
kumaxim / benjamin-franklin-books.md
Last active March 27, 2020 09:11
Книги Бенджамина Франклина на Литрес.ру

Моя автобиография Время - деньги

На сайте Литрес.Ру опубликованы две книжки за авторством известного американского деятеля Бенджамина Франклина: [Моя автобиография] и [Время - деньги].

Обе книжки бесплатны и любой может скачать и прочесть их. Однако, мне не давал покоя вопрос: "А чем же они отличаются? У Франклина же только одна версия автобиографии!" Я начал гуглить и понял, что никакого упоминая о второй, т.е. [Время - деньги], нигде в сети не встречается, кроме как на сайте Литрес.Ру. Я также искал на английском, однако ни Amazon.com, ни GoodReads.com, ни Google Book ничего о такой книги не знают. Тогда, я решил скачать и сравнить обе книжки в [Meld], после чего все встало на свои места!

Это две абсолютно одинаковые кни

@kumaxim
kumaxim / bindfs-www
Last active August 23, 2022 11:46
Make files & folders editable inside Docker's containers
#!/bin/bash
if [[ $UID != 0 ]]; then
echo "Please run this script with sudo. Abort !!!"
exit 1
fi
SHORT=d:
LONG=wpdir:
OPTS=$(getopt -a -n bindfs-www --options $SHORT --longoptions $LONG -- "$@")
@kumaxim
kumaxim / teamviewer-headless-install.sh
Created March 17, 2017 00:52
Teamviewer Install on Headless Systems
# http://jsrsoft.co.uk/blog/post/Teamviewer-11-for-Ubuntu-Server-1510-running-in-Virtualbox
# https://blog.samat.org/2010/11/09/High-resolution-text-console-with-uvesafb-and-Debian/
apt-get install v86d
nano /etc/initramfs-tools/modules
# add the following line
# uvesafb mode_option=1024x768-32
update-initramfs -u
nano /etc/default/grub
# add/uncomment/change these lines
# (consoleblank is necessary to keep monitor on all times, when it's blank there's no way to get the screen back via tv)
@kumaxim
kumaxim / gulpfile.js
Created March 4, 2017 18:52
Simple sFTP task for sync the changes between local and remote machine
var gulp = require('gulp');
var plumber = require('gulp-plumber');
var sftp = require('gulp-sftp');
var sftpInfo = function () {
var info = {
host: '172.0.0.1',
port: '0',
user: 'secter_user_login',
pass: 'password',
@kumaxim
kumaxim / autoloader-psr4-for-psr-2-class-name.php
Created February 6, 2016 10:00
Autoloader PSR-4 is correspond PSR-2 class name
spl_autoload_register(function ($class) {
// project-specific namespace prefix
$prefix = 'RMLcustomizer\\';
// base directory for the namespace prefix
$baseDir = __DIR__ . DIRECTORY_SEPARATOR;
// does the class use the namespace prefix?
$len = strlen($prefix);
@kumaxim
kumaxim / Vagrantfile
Last active May 9, 2018 23:22
Vagrantfile with ubuntu/trusty32 to solve problem cloud-init-nonet timeout
# -*- mode: ruby -*-
# vi: set ft=ruby :
Vagrant.configure(2) do |config|
# Every Vagrant development environment requires a box.
config.vm.box = "ubuntu/trusty32"
# Disable automatic box update checking.
config.vm.box_check_update = false