Skip to content

Instantly share code, notes, and snippets.

View smola's full-sized avatar

Santiago M. Mola smola

View GitHub Profile
@smola
smola / README.md
Last active May 14, 2018 11:27
Get latest GitHub release from the command line (Linux, macOS, Windows)

Get latest GitHub release

These snippets can be used to retrieve the latest GitHub release from Linux, macOS and Windows. Note that other approaches involve either:

  • HTML scraping involving more dependencies or more complex code.
  • Using GitHub API, which has rate limit, so it is not suitable for all applications.

Replace the repository org/name with yours.

Bash

@smola
smola / structured_logging.py
Created July 26, 2018 08:47
quick example on structured logging approaches for Python
#!/usr/bin/env python3
import logging
# setting up a JSON formatter for standard library
from pythonjsonlogger import jsonlogger
logger = logging.getLogger()
logHandler = logging.StreamHandler()
@smola
smola / keybase.md
Created September 19, 2018 13:49
keybase.md

Keybase proof

I hereby claim:

  • I am smola on github.
  • I am smola (https://keybase.io/smola) on keybase.
  • I have a public key whose fingerprint is C2A3 00EF 5DCA BC7E ED7F 01B6 3B05 0C2B 76AA FD1A

To claim this, I am signing this object:

@smola
smola / GLUSTER_SETUP.sh
Created October 18, 2018 09:24
Quick and dirty single-node GlusterFS setup
#
# Instructions for quick gluster server (1 node) setup with a volume on LVM.
# No replication, just using localhost.
#
# See https://docs.gluster.org/en/latest/Administrator%20Guide/Brick%20Naming%20Conventions/
#
# Install GlusterFS
add-apt-repository ppa:gluster/glusterfs-4.0
apt-get install glusterfs-server
@smola
smola / README.md
Last active June 26, 2020 11:35
Quick notes on installing Ubuntu with LUKS+LVM2

Quick notes on installing Ubuntu with LUKS+LVM2

These are just some quick notes about installing Ubuntu to an encrypted partition (LUKS) with LVM2 on top of it. The installer GUI has an advanced option to do this, but it is only available if you select the Erase disk and install Ubuntu option. I wanted to use this setup while preserving dual boot with Windows.

You should probably follow the following guide, instead of my instructions: https://help.ubuntu.com/community/Full_Disk_Encryption_Howto_2019

TODO

  • Encrypt /boot partition (see the linked guide above).
  • Fix Windows boot loader, removed from GRUB after last update-grub.
@smola
smola / run.groovy
Created July 8, 2020 09:15
Run a command in Groovy
def run(cmd) {
// author: Bob Herrmann
// source: https://stackoverflow.com/a/159270
def sout = new StringBuilder(), serr = new StringBuilder()
def proc = cmd.execute()
proc.consumeProcessOutput(sout, serr)
proc.waitForOrKill(1000)
println "out> $sout err> $serr"
}
@smola
smola / old_openssl.sh
Last active July 12, 2023 17:55
Install old OpenSSL for use with PHPBrew and old PHP versions (e.g. 5.3)
#!/bin/sh
#
# Build old OpenSSL for usage in old PHP builds
# (e.g. PHP 5.3).
#
# This solution was originally found at:
# https://gist.github.com/marulitua/f8932064ec5bfe6a5be9fadac7c5a141
#
# Relevant discussions:
# https://github.com/phpbrew/phpbrew/issues/418
@smola
smola / PHP-EOL.md
Created July 25, 2020 22:49
PHP End of Life Schedule

PHP End of Life Schedule

This table summarizes End of Life (EOL) dates of PHP versions, including commercial vendors and Linux distributions.

Vendor Table

Version PHP Zend RHEL Ubuntu LTS Ubuntu ESM
7.4 2022-11-28
7.3 2021-12-06 LTS¹ 2025-04⁵
@smola
smola / linguist_cross_validation.rb
Last active July 4, 2021 18:33
Cross validation for github/linguist
require 'parallel'
require 'linguist'
include Linguist
all = false
if ARGV[0] == '--all'
all = true
ARGV.shift
end
@smola
smola / run_attachme
Created November 4, 2020 16:49
AttachMe helper script
#!/bin/bash
# run_attachme
#
# See https://github.com/JetBrains/attachme
ATTACHME_CONF="$HOME/.attachme/conf.sh"
if [[ ! -f $ATTACHME_CONF ]]; then
echo "$ATTACHME_CONF not found."
echo "See https://github.com/JetBrains/attachme"