Skip to content

Instantly share code, notes, and snippets.

View rubencaro's full-sized avatar

Rubén Caro rubencaro

View GitHub Profile
@rubencaro
rubencaro / gist:9545060
Last active May 7, 2020 20:59
Reversible encryption for url json data
require 'openssl'
require 'digest/sha1'
require 'base64'
require 'json'
def go_demo!
key = Digest::SHA1.hexdigest("clave1")[0..15] # 16bytes => 128bits
iv = 'clave2 con chicha'[0..15] # 16bytes forced
data = { esto: 'es', un: 'hash', en: 'ruby' }
@rubencaro
rubencaro / .emacs
Last active August 29, 2015 14:02
Emacs config
;; TODO:
;; use PROMPT_COMMAND='printf "\033]0;hola\007"' to set term title on project switch
;; use current project name to save desktop to a separate file
;; binding for pgup pgdown to a real text scroll
;; bindings for git-gutter/ediff
;; bindings for neotree
;; use ctags everywhere possible
@rubencaro
rubencaro / install_elixir.md
Last active September 30, 2023 03:58
Elixir installation guide

Elixir installation guide

Version numbers should be the ones you want. Here I do it with the last ones available at the moment of writing.

The simplest way to install elixir is using your package manager. Sadly, at the time of writing only Fedora shows the intention to keep its packages up to date. There you can simply sudo dnf install erlang elixir and you are good to go.

Anyway, if you intend to work with several versions of erlang or elixir at the same time, or you are tied to a specific version, you will need to compile it yourself. Then asdf is your best friend.

[user]
name = Rubén Caro
email = ruben.caro.estevez@gmail.com
[alias]
co = checkout
lol = log --graph --decorate --pretty=oneline --abbrev-commit
lola = log --graph --decorate --pretty=oneline --abbrev-commit --all
lolas = log --graph --decorate --abbrev-commit --all --date=short --format=format:'%C(yellow)%h %Cgreen%an %Cblue%ad %Cred%d %Creset%s'
a = !bash -c 'git add --all . && git diff HEAD' -
c = commit -am
@rubencaro
rubencaro / elixir.xml
Last active July 22, 2017 21:49
Kate syntax highlight file for elixir
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE language
SYSTEM 'language.dtd'>
<!--
Elixir syntax highlighting definition for Kate.
Copyright (C) 2014 by Rubén Caro (ruben.caro.estevez@gmail.com)
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Library General Public
License as published by the Free Software Foundation; either
version 2 of the License, or (at your option) any later version.
@rubencaro
rubencaro / custom_modules.py
Last active August 29, 2015 14:07
py3status modules
# -*- coding: utf-8 -*-
#
# custom compiled modules for py3status
#
# ----------------------------------------------------------------- #
# Notes:
# 1. netdata will check 'eth0' interface by default. You can
# change it by changing 'self.net_interface' variable in 'GetData'
# class.
@rubencaro
rubencaro / ruby.xml
Created October 31, 2014 12:55
Ruby syntax file for Kate
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE language SYSTEM "language.dtd">
<!--
Ruby syntax highlighting definition for Kate.
Copyright (C) 2004 by Sebastian Vuorinen (sebastian dot vuorinen at helsinki dot fi)
Copyright (C) 2004 by Stefan Lang (langstefan@gmx.at)
Copyright (C) 2008 by Robin Pedersen (robinpeder@gmail.com)
Copyright (C) 2011 by Miquel Sabaté (mikisabate@gmail.com)
@rubencaro
rubencaro / Mine.kateschema
Created November 16, 2014 07:51
My kateschema
[Default Item Styles - Schema Mine]
Alert=ffbf0303,ffbf0303,1,,,,fff7e6e6,-,,---
Base-N Integer=ffff54ff,ffff54ff,0,,,,-,-,,---
Character=ffff54ff,ffff54ff,0,,,,-,-,,---
Comment=ff808080,ff5454ff,0,1,,,-,-,,---
Data Type=ffc0c0ff,ff54ff54,0,,,,-,-,,---
Decimal/Value=ffff54ff,ffff54ff,0,,,,-,-,,---
Error=ffbf0303,ffbf0303,0,0,0,,-,-,,---
Floating Point=ffff54ff,ffff54ff,0,,,,-,-,,---
Function=ffb2a2e1,ffa57aff,,,,,-,-,,---
# initialization file (not found)
@rubencaro
rubencaro / dot_render.sh
Last active August 28, 2017 07:54
DOT auto render script
function get_mtime {
ls -l --time-style=+%s "${1?}" | cut -d' ' -f6
}
function go_render {
dotfile="$1"
mtime=0
while true;