Skip to content

Instantly share code, notes, and snippets.

@duzun
duzun / cron_eye_safe.sh
Last active August 6, 2018 12:49
Install notifications every 20 min and 2 hours to rest your eyes - KDE on Linux
#!/bin/sh
#
# Keep your eyes safe on cron
#
# @author Dumitru Uzun (DUzun.Me)
# @web https://gist.github.com/duzun/99bd0d1cba6c8ad1b5bf321c2689a257
#
_user=${USER:-$(whoami)}
@duzun
duzun / findByKey.php
Last active February 7, 2018 09:29
Find a value in an array by key recursively
<?php
// Note:
// Whether $list contains a NULL value for $needle at some level, or there is no $needle at all,
// in both cases this function returns NULL.
// If you want to find non-NULL $needle only, replace `array_key_exists` with `isset`
function findByKey($list, $needle) {
$stack = [$list];
while( !empty($stack) ) {
@duzun
duzun / Dockerfile
Created August 29, 2017 13:10
SSHD for Alpine container
FROM httpd:2.4-alpine
# SSHD #################################
RUN apk update && \
apk add openssh augeas && \
mkdir -p ~root/.ssh /etc/authorized_keys && chmod 700 ~root/.ssh/ && \
augtool 'set /files/etc/ssh/sshd_config/AuthorizedKeysFile ".ssh/authorized_keys /etc/authorized_keys/%u"' && \
augtool 'set /files/etc/ssh/sshd_config/PermitRootLogin yes' && \
augtool 'set /files/etc/ssh/sshd_config/PasswordAuthentication yes' && \
augtool 'set /files/etc/ssh/sshd_config/Port 22' && \
@duzun
duzun / psmem
Created March 15, 2017 08:33
Process Memory consumption - Linux
#!/bin/bash
#############################################
# Process Memory consumption #
# #
# Usage: psmem <process_name> [<user_grep>] #
# psmem nginx #
# psmem php5-fpm www-data #
# #
# Author: Dumitru Uzun (DUzun.me) #
@duzun
duzun / clone-es5.js
Created July 8, 2016 19:56 — forked from jherax/clone.js
JavaScript: clona o extiende un objeto
/**
* Creates a deep copy of an object
* @param {Any} from: Source object to clone
* @param {Object} dest: (Optional) destination object to merge with
* @return {Any} The cloned object
*/
var clone = (function() {
var _toString = Object.prototype.toString;
function _clone (from, dest, objectsCache) {
@duzun
duzun / ocp.php
Created June 7, 2016 10:55 — forked from ck-on/ocp.php
OCP - Opcache Control Panel (aka Zend Optimizer+ Control Panel for PHP)#ocp #php #opcache #opcode #cache #zend #optimizerplus #optimizer+
<?php
/*
OCP - Opcache Control Panel (aka Zend Optimizer+ Control Panel for PHP)
Author: _ck_ (with contributions by GK, stasilok)
Version: 0.1.7
Free for any kind of use or modification, I am not responsible for anything, please share your improvements
* revision history
0.1.7 2015-09-01 regex fix for PHP7 phpinfo
0.1.6 2013-04-12 moved meta to footer so graphs can be higher and reduce clutter
@duzun
duzun / latency.markdown
Created May 7, 2016 14:51 — forked from hellerbarde/latency.markdown
Latency numbers every programmer should know

Latency numbers every programmer should know

L1 cache reference ......................... 0.5 ns
Branch mispredict ............................ 5 ns
L2 cache reference ........................... 7 ns
Mutex lock/unlock ........................... 25 ns
Main memory reference ...................... 100 ns             
Compress 1K bytes with Zippy ............. 3,000 ns  =   3 µs
Send 2K bytes over 1 Gbps network ....... 20,000 ns  =  20 µs
SSD random read ........................ 150,000 ns  = 150 µs

Read 1 MB sequentially from memory ..... 250,000 ns = 250 µs

@duzun
duzun / gotoGithubIO-bookmarklet.html
Last active October 22, 2015 20:32
Go to github.io of a github repo which has gh-pages branch.
<a class="btn btn-default btn-info bookmarklet" href="javascript:(function(d,b,c,a){b=d.location;a=b.pathname.split('/');c=b.hostname;return'github.com'==c&&2<a.length?(a=b.protocol+'//'+a[1]+'.'+c.replace(/\.com$/,'.io')+'/'+a[2],void d.open(a,'_blank')):alert('Go to a github repo and try again!'),!1})(this);">
Go to Github.IO
</a>
@duzun
duzun / HTTPAuthLogout.js
Last active August 29, 2015 14:24
Logout from a website using HTTP Authorization - Bookmarklet
/**
* Logout from a website using HTTP Authorization.
*
* Inspired by http://stackoverflow.com/a/14329930/1242333
*
*/
(function(window,location,command,outcome,undefined){
function done(e) {
if ( !e || this.readyState == 4 ) {
outcome && location.reload();
@duzun
duzun / install-addon
Last active August 29, 2015 14:20 — forked from jeffgca/install-addon
A node script that abuses child_process to run cfx and post the resulting xpi to Firefox.
#!/usr/bin/env node
/**
* A node script that abuses child_process to run cfx and post the resulting xpi to Firefox.
* Requires: a working installation of the Add-on SDK (with cfx on your PATH)
* and a recent version of Firefox with the 'Extension Auto-installer' extension installed.
*
* Original gist https://gist.github.com/canuckistani/9301061
*
* Improved by Dumitru Uzun (DUzun.Me)