Skip to content

Instantly share code, notes, and snippets.

View thebouv's full-sized avatar
🐍
Automating and/or breaking things

Anthony Bouvier thebouv

🐍
Automating and/or breaking things
View GitHub Profile
@thebouv
thebouv / blank_pelican_theme.sh
Created April 12, 2021 20:14
creates the mandatory folders and files for a blank theme for pelican
# creates the mandatory folders and files for a blank theme for pelican
# to be run in your newly minted theme repo
mkdir -p static/css static/images templates
touch templates/{archives,period_archives,article,author,authors,categories,category,index,page,tag,tags}.html
@thebouv
thebouv / findfiles.sh
Created December 30, 2019 22:33
find files between datetimes
find -newermt "2019-12-30 15:15:00" ! -newermt "2019-12-30 16:26:00"
# and say you want to then send those files somewhere else like via cp?
find -newermt "2019-12-30 15:15:00" ! -newermt "2019-12-30 16:26:00" | xargs cp -t /path/to/destinationfolder
@thebouv
thebouv / gzip-flask.py
Created December 30, 2019 00:40
python flask gzip example
import gzip, functools
from io import BytesIO as IO
from flask import after_this_request, request
def gzipped(f):
@functools.wraps(f)
def view_func(*args, **kwargs):
@after_this_request
def zipper(response):
accept_encoding = request.headers.get('Accept-Encoding', '')

Keybase proof

I hereby claim:

  • I am thebouv on github.
  • I am thebouv (https://keybase.io/thebouv) on keybase.
  • I have a public key whose fingerprint is B7B1 E67D A27A 1F47 56EB 4732 2226 E190 8D28 A58E

To claim this, I am signing this object:

@thebouv
thebouv / apachememavg.sh
Created February 20, 2017 14:20
One line to get average mem used by running apache processes, great for estimating MaxClients
ps -ylC httpd --sort:rss | awk '{sum+=$8; ++n} END {print "Tot="sum"("n")";print "Avg="sum"/"n"="sum/n/1024"MB"}'
# above is a one liner, not really a script
# MaxClients = 80% of max memory on system / average mem from one-liner above
LogFormat "%{X-Cluster-Client-IP}i %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" proxy
SetEnvIf X-Cluster-Client-IP "^.*\..*\..*\..*" forwarded
CustomLog "logs/access_log" combined env=!forwarded
CustomLog "logs/access_log" proxy env=forwarded
# http://fishnix.tumblr.com/post/18037951487/x-forwarded-for-in-rackspace-cloud-load-balancers
@thebouv
thebouv / .sh
Created June 24, 2016 16:03
gitshellstuff.sh
export PS1="\[\e[00;36m\]thebouv\[\e[0m\]\[\e[00;37m\]@nurgle:\[\e[0m\]\[\e[00;33m\][\W]\[\e[0m\]\[\e[00;36m\]\$(parse_git_branch):\[\e[0m\]\[\e[00;37m\] \[\e[0m\]"
export CLICOLOR=1
export LSCOLORS=ExFxBxDxCxegedabagacad
# git branch in prompt
parse_git_branch() {
git branch 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/ (\1)/'
}
@thebouv
thebouv / gitgraph.sh
Created May 11, 2016 20:14
git graph
git --no-pager log --all -n 15 --graph --abbrev-commit --decorate --format=tformat:'%C(bold blue)%h%C(reset) - %C(bold cyan)%aD%C(reset) %C(bold green)(%ar)%C(reset)%C(bold yellow)%d%C(reset)%n'' %C(white)%s%C(reset) %C(dim white)- %an <%ce>%C(reset)'
@thebouv
thebouv / disablescrollling.js
Created February 28, 2016 16:47
Disable scrolling
// as seen here: http://stackoverflow.com/questions/4770025/how-to-disable-scrolling-temporarily
// left: 37, up: 38, right: 39, down: 40,
// spacebar: 32, pageup: 33, pagedown: 34, end: 35, home: 36
var keys = {37: 1, 38: 1, 39: 1, 40: 1};
function preventDefault(e) {
e = e || window.event;
if (e.preventDefault)
@thebouv
thebouv / solradvice
Created May 28, 2015 19:50
Solr Statement
<@elyograg> remember this sentence: collections are made up of shards. shards are made up of replicas. each replica is a core.