Skip to content

Instantly share code, notes, and snippets.

@melizeche
melizeche / gameeky_macos.md
Last active October 8, 2025 18:44
Instructions for running Gameeky on MacOS

Building and Running Gameeky Launcher

This guide explains how to build and run Gameeky Launcher from source using Meson and Ninja.


1. Install Dependencies

macOS (Homebrew):

@melizeche
melizeche / repo_loc.sh
Created March 25, 2025 17:05
get lines of code added/deleted by author in a repo
git log --author=<emailregex> --pretty=tformat: --numstat | awk '{ adds += $1; subs += $2; loc += $1 - $2 } END { printf "added lines: %s, removed lines: %s, total lines: %s, added:deleted ratio:%s\n", adds, subs, loc, adds/subs }' -
@melizeche
melizeche / rucDv.js
Last active January 17, 2025 04:47
Calculo del dígito verificador del RUC en Javascript
/**
* Calcula el dígito verificador del RUC utilizando el algoritmo basado en el módulo 11 (Cálculo de la DNIT/SET).
* Ref: https://www.dnit.gov.py/documents/20123/224893/D%C3%ADgito+Verificador.pdf/fb9f86c8-245d-9dad-2dc1-ac3b3dc307a7?t=1683343426554.pdf
*
* @author Marcelo Elizeche Landó
* @license MIT
*
* @param {number} numero - Número base(CI o RUC sin DV) para calcular el dígito verificador.
* @param {number} [basemax=11] - Base máxima para los multiplicadores (por defecto 11, ver PDF de la DNIT).
* @returns {number} Dígito verificador calculado.
@melizeche
melizeche / ruc_dv.py
Last active January 17, 2025 04:41
Calculo del dígito verificador del RUC en Python
def calcular_digito_verificador(numero: int, basemax: int = 11) -> int:
"""
Calcula el dígito verificador del RUC utilizando el algoritmo basado en el módulo 11.
Ref: https://www.dnit.gov.py/documents/20123/224893/D%C3%ADgito+Verificador.pdf/fb9f86c8-245d-9dad-2dc1-ac3b3dc307a7?t=1683343426554.pdf
Autor: Marcelo Elizeche Landó
Licencia: MIT
Args:
numero (int): Número base(CI o RUC sin DV) para calcular el dígito verificador.
Postgres Internals
Djangocon US 2024
Elizabeth Christensen
## psql basics
--whoami
\conninfo
--user list
@melizeche
melizeche / prepare-commit-msg
Created July 27, 2022 21:18
Better commit messages
# BRANCH_PREFIX will match everithing before the first underscore so if your branch name
# is ESGCA-9999_my_awesomefeature and your commit message is 'Fixes Changes Rabbits'
# your "final" commit message will be: 'ESGCA-9999: Fixes Changes Rabbits'
COMMIT_MSG_FILE=$1
BRANCH_PREFIX=$(git branch | grep '*' | sed 's/* //' | cut -d _ -f 1)
echo "$BRANCH_PREFIX: $(cat $COMMIT_MSG_FILE)" > "$COMMIT_MSG_FILE"
# Copy this file in the .git/hooks/ directory of your local repo and make it executable `chmod +x prepare-commit-msg`
@melizeche
melizeche / django-filter-sample.py
Created April 20, 2020 00:12 — forked from dkarchmer/django-filter-sample.py
How to use django-filter to add a DRF filter using dates and slugs
class SampleFilter(filters.FilterSet):
start_date = django_filters.DateFilter(name="date", lookup_type='gte')
end_date = django_filters.DateFilter(name="date", lookup_type='lte')
# How to filter by a foreign key that uses slug as a lookup
foo = django_filters.ModelMultipleChoiceFilter(
queryset=MyModel.objects.all(),
to_field_name='slug',
conjoined=True,
)
class Meta:
@melizeche
melizeche / remove_duplicates.py
Last active April 19, 2020 12:55 — forked from victorono/remove_duplicates.py
Django - remove duplicate objects where there is more than one field to compare
from django.db.models import Count, Max
from core.models import HelpRequest
unique_fields = ['phone', 'title']
actives = HelpRequest.objects.filter(active=True)
duplicates = (
actives.values(*unique_fields)
.order_by()
@melizeche
melizeche / cotizacion.py
Last active October 6, 2019 03:06
ejemplo del campus party
# Primero hay que instalar las librerias necesarias
# pip install requests beautifulsoup4
import requests
from bs4 import BeautifulSoup
# Descargamos la pagina del BCP
bcp = requests.get('https://www.bcp.gov.py/webapps/web/cotizacion/monedas',
headers={'user-agent': 'Mozilla/5.0'}, verify=False)
#buscamos todas las etiquetas <td>, elegmos la cuarta, elegimos el texto, reemplazamos el . separador de miles y la coma decimal
cotizacion = float(BeautifulSoup(bcp.text).findAll("td")[3].get_text().replace(".","").replace(",","."))
@melizeche
melizeche / models.py
Last active May 9, 2020 22:31
Django models con relaciones entre tablas
from django.db import models
# Un Autor puede tener varios libros
# Un libro puede tener un autor
# Un Libro puede tener varios Generos
# Un Genero puede pertenecer a varios libros
# null=True, blank=True hace que el campo sea opcional
class Autor(models.Model):
nombre = models.CharField(max_length=120)