Skip to content

Instantly share code, notes, and snippets.

Hoàng Xuân Phú phunehehe

View GitHub Profile
@phunehehe
phunehehe / newconfig
Created Feb 25, 2011
In Gentoo, after updating you may see the message "IMPORTANT: <number> config files in '/etc' need updating.". This script looks for all the files that need to be updated, then overwrite old config files with new ones. Useful when there are a lot of new c
View newconfig
#! /bin/sh
# Update: There is no point using this, we have `etc-update'
for new_config in $(find /etc/ -name '._cfg????_*')
do
old_config=$(echo $new_config | sed 's:\([a-zA-Z0-9]*\)\._cfg[0-9]\{4\}_\([a-zA-Z0-9]*\):\1\2:')
if [[ -f "$new_config" || -f "$old_config" ]]
then
mv $new_config $old_config
else
View 10000x10000.txt
benchmarking repmat/useRepmat whnf
time 112.9 ms (111.7 ms .. 113.7 ms)
1.000 R² (1.000 R² .. 1.000 R²)
mean 113.3 ms (112.8 ms .. 113.9 ms)
std dev 724.5 μs (504.6 μs .. 955.7 μs)
variance introduced by outliers: 11% (moderately inflated)
benchmarking repmat/useReplicate whnf
time 101.6 ms (99.19 ms .. 104.0 ms)
0.999 R² (0.996 R² .. 1.000 R²)
@phunehehe
phunehehe / solo.rb
Created Aug 28, 2012
solo.rb that knows where it is
View solo.rb
chef_dir = File.expand_path(File.dirname(__FILE__))
cookbook_path [
"#{chef_dir}/chef-cookbooks",
"#{chef_dir}/site-cookbooks",
]
role_path "#{chef_dir}/chef-repo/roles"
View StrictList.hs
{-# LANGUAGE DeriveFoldable #-}
{-# LANGUAGE DeriveTraversable #-}
{-# LANGUAGE TypeFamilies #-}
module Data.StrictList where
import qualified Control.Foldl as L
import qualified GHC.Exts
import Control.Foldl (Fold (Fold))
@phunehehe
phunehehe / organize.sh
Created Aug 21, 2011
Organize files by file extension
View organize.sh
#!/bin/sh
# Organize files by file extension
# Written in answer to http://unix.stackexchange.com/q/19110/250
# Configuration (feel free to add your types and change the path)
DOCUMENTS='
pdf
doc
'
@phunehehe
phunehehe / stupid-spiders.md
Last active Dec 12, 2015
Block weird requests coming from stupid spiders
View stupid-spiders.md

Nginx

set $stupid_spider "";

# If the request comes from one of these stupid spiders
if ($http_user_agent ~* (stupid|spider)) {
    set $stupid_spider "1";
}
View sequence.py
WHATEVER_NUMBER_YOU_LIKE = 42
def sequence(input):
if input == 0:
return 340
if input == 1:
return 680
if input == 2:
return 1428
if input == 3:
View commands.md

Print permissions in a way that is suitable for executing again

for i in *
do
    echo chown $(stat -c%U:%G $i) $i
    echo chmod $(stat -c%a $i) $i
done
@phunehehe
phunehehe / ssh.md
Created Mar 15, 2013
Add self's SSH key to another account to gain access
View ssh.md

Add self's SSH key to another account to gain access

user=xyz
sudo mkdir -p /home/$user/.ssh
sudo cp -i ~/.ssh/authorized_keys /home/$user/.ssh/
sudo chown -R $user:$user /home/$user/.ssh
sudo chmod -R go-rwx /home/$user/.ssh
View dropbox_error9KrtSh.txt
bn.BUILD_KEY: Dropbox
bn.VERSION: 3.12.4
bn.DROPBOXEXT_VERSION: failed
bn.is_frozen: True
pid: 1414
ppid: 30834
ppid exe: '/nix/store/qgwrxh06c52aj17adg20wc75smg5qlay-zsh-5.0.8/bin/zsh'
uid: 1000
user_info: pwd.struct_passwd(pw_name='phunehehe', pw_passwd='x', pw_uid=1000, pw_gid=1000, pw_gecos='Hoang Xuan Phu,,,', pw_dir='/home/phunehehe', pw_shell='/bin/bash')
effective_user_info: pwd.struct_passwd(pw_name='phunehehe', pw_passwd='x', pw_uid=1000, pw_gid=1000, pw_gecos='Hoang Xuan Phu,,,', pw_dir='/home/phunehehe', pw_shell='/bin/bash')
You can’t perform that action at this time.