Skip to content

Instantly share code, notes, and snippets.

@cpegel
cpegel / gist:8275123
Created January 5, 2014 22:49
GAMS formatting for LaTeX listings
\lstdefinelanguage{GAMS}{
morekeywords={
ABORT , ACRONYM , ACRONYMS , ALIAS , ALL , AND , ASSIGN , BINARY , CARD , DISPLAY , EPS , EQ , EQUATION , EQUATIONS , GE , GT , INF , INTEGER , LE , LOOP , LT , MAXIMIZING , MINIMIZING , MODEL , MODELS , NA , NE , NEGATIVE , NOT , OPTION , OPTIONS , OR , ORD , PARAMETER , PARAMETERS , POSITIVE , PROD , SCALAR , SCALARS , SET , SETS , SMAX , SMIN , SOS1 , SOS2 , SUM , SYSTEM , TABLE , USING , VARIABLE , VARIABLES , XOR , YES , REPEAT , UNTIL , WHILE , IF , THEN , ELSE , SEMICONT , SEMIINT , FILE , FILES , PUT , PUTPAGE , PUTTL , PUTCLOSE , FREE , NO , SOLVE , FOR , ELSEIF , ABS , ARCTAN , CEIL , COS , ERROR , EXP , FLOOR , LOG , LOG10 , MAP , MAPVAL , MAX , MIN , MOD , NORMAL , POWER , ROUND , SIGN , SIN , SQR , SQRT , TRUNC , UNIFORM , LO , UP , FX , SCALE , PRIOR , PC , PS , PW , TM , BM , CASE , DATE , IFILE , OFILE , PAGE , RDATE , RFILE , RTIME , SFILE , TIME , TITLE , TS , TL , TE , TF , LJ , NJ , SJ , TJ , LW , NW , SW , TW , ND , NR , NZ , CC , HDCC , TLCC , LL
# extract linux-3.16 to $linux
# extract rtai-4.1 to $rtai
# have .config ready at $config
# patch kernel
cd $linux
patch -p1 < $rtai/base/arch/x86/patches/hal-linux-3.16-x86-3.patch
# configure kernel
cp $config .config
def lowersets(P):
L = {P}
for m in P.maximal_elements():
L = L.union(set(lowersets(P.subposet(set(P) - {m}))))
return LatticePoset(([tuple(l) for l in L],
lambda x, y: set(x).issubset(set(y))))
P = Poset({1: [2,3], 2: [4], 3: [4]})
P.show(figsize=[5,5], aspect_ratio='automatic')
L = lowersets(P)
@cpegel
cpegel / chroot-guide
Created September 17, 2015 17:31
This is a guide on how to create a chroot in archlinux and downgrade it to a specific date. This is useful when trying to compile old kernels that don't build with new gcc versions.
#
# Setting up an archlinux chroot environment
#
# install devtools for bootstrapping
sudo pacman -S devtools
# create chroot environment with base-devel packages
mkarchroot mychroot base-devel
# enter the chroot
sudo arch-chroot mychroot /bin/bash
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQC7GMXi5+3FcfA0sDIW3N0Vd4kQQ4j4locZiNjagdORP+mZoGcqRfN3MhycWKr0CVJnzzUqNL5Vnn8CZmfUQUD2c645bgxvelV/qw+Wc6VUvFCIh+zsvnZ3WDlslw5D3qIFysiB05gosSxBCdO7P8MchftxpbpEW0tdRIM87YVETLcmdAcf/tZbqs9mlFU0gT6gZL7k5DAQUL8nL0qmI1JAp5LY6WM3M6m6ZZCXhi1TiE7T58J7eJEjTdFgZLYZlTVdYqrAgR1YNODJsgK7pjegUfn1YKxfoTNOKh5wnww0bxLHamwhXMEmP/gBmP28X6QxTzk5BS/+I68fGtt9rDUWbaGRnBVQpOAKm9Qj9zKGLLNk/etQIuzCLEuQbPIWTtmaSMXfVHR4OjcomdultZpohzjZaMIY2iJoHX9u4sqFPzrNBeMeZv96ZgZldQHjQkRfLTJ7CPA6+RTUOec16x/K/ZLK+Ha8duUUbM9FuK7QR4zOjXdnuXeFKtXBLXjWweDnill8O5Jzb8l0zs/CkFZe/VcBli2MCd6E/xAfCqQSLhUpAZRODjIT5vfiFCdQHryDMlrPkhrULV+xstjJoAzatKmEbL9yQqjrSHDNXTh5Y2VlWSzb4HubtpdL5uhk41XFi5mZruQHCeADDMQSziBcAdTo7EqRXMEp/98Iup+xYw== rio@rick
set background=dark
set number
set modeline
set tabstop=4
set shiftwidth=4
set expandtab
"set noexpandtab
"set copyindent
#!/bin/env python
import sys
from zlib import decompress
from Crypto.Cipher import AES
AES_KEY = b'\x2a\x5f\xcb\x17\x91\xd2\x2f\xb6\x02\x45\xb3\xd8\x36\x9e\xd0\xb2\xc2\x73\x71\x56\x3f\xbf\x1f\x3c\x9e\xdf\x6b\x11\x82\x5a\x5d\x0a'
def decrypt(filename):
print("decrypting %s" % filename)
f = open(filename, "rb")
@cpegel
cpegel / pedro.tex
Last active February 16, 2016 09:34
\documentclass{standalone}
\usepackage[utf8]{inputenc}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{tikz}
\usepackage{pgfplots}
\begin{document}
\begin{tikzpicture}
\begin{axis}[
[Unit]
Description=Advanced key-value store
After=network.target
[Service]
Type=simple
User=redis
Group=redis
ExecStart=/usr/bin/redis-server /etc/redis.conf
ExecStop=/usr/bin/redis-cli shutdown
\begin{frame}
\begin{tikzpicture}[overlay, remember picture]
\coordinate (my north west) at ($ (current page.north west)+(5pt,-30pt) $);
\coordinate (my west) at ($ (current page.west)+(5pt,0) $);
\coordinate (my east) at ($ (current page.east)+(-5pt,0) $);
\coordinate (my south east) at ($ (current page.south east)+(-5pt,20pt) $);
\coordinate (my south west) at ($ (current page.south west)+(5pt,20pt) $);
\coordinate (my south) at ($ (current page.south)+(0,20pt) $);
\node[anchor=north west] (orthonormal bases) at (my north west) {