Skip to content

Instantly share code, notes, and snippets.

View majabojarska's full-sized avatar

Maja Bojarska majabojarska

View GitHub Profile
"""
This script processes the bank transaction CSV export from the Polish ING bank site
into an encoding and structure ready to import into Actual (https://www.actualbudget.com/).
What this does:
- Reads and decodes the in_file CSV as 'windows-1250'.
- Trims legal cruft and account owner data from the top and bottom of the in_file CSV.
- Changes field separators from ';' to ','.
- Reorders and renames fields to match Actual's import process.
- Encodes the output as UTF8.
@majabojarska
majabojarska / image.html
Last active June 28, 2025 16:18
Zola auto-webp image with lightweight preview
{% if src %}
{%- if src is matching("[.](jpg|jpeg|png|webp)$") -%}
{# The trick is to resize first, which provides the original size for the 1:1 size format conversion #}
{% set converted_small = resize_image(path=src, width=800, op="fit_width", format="webp") %}
{% set converted_full = resize_image(path=src, width=converted_small.orig_width, height=converted_small.orig_height, format="webp") %}
{% set url_full = converted_full.url %}
{% set url_small = converted_small.url %}
@majabojarska
majabojarska / starcraft2-lutris.json
Created February 21, 2023 22:27
Lutris configuration for StarCraft 2
{"count":1,"next":null,"previous":null,"results":[{"id":8515,"game_id":3367,"game_slug":"starcraft-ii","name":"StarCraft II","year":2010,"user":"Dox","runner":"wine","slug":"starcraft-ii-battlenet","version":"Battle.net","description":null,"notes":"","credits":"","created_at":"2018-06-02T20:54:49.660000Z","updated_at":"2022-06-09T00:55:29.722145Z","draft":false,"published":true,"published_by":1,"rating":"","is_playable":true,"steamid":null,"gogid":null,"gogslug":"","humbleid":"","humblestoreid":"","humblestoreid_real":"","script":{"files":[{"setup":{"filename":"Battle.net-Setup.exe","url":"https://www.battle.net/download/getInstallerForGame?os=win&version=LIVE&gameProgram=BATTLENET_APP"}},{"d3dcompiler47":"https://lutris.net/files/tools/dll/d3dcompiler_47.dll"}],"game":{"arch":"win64","exe":"drive_c/Program Files (x86)/Battle.net/Battle.net Launcher.exe","prefix":"$GAMEDIR"},"installer":[{"task":{"arch":"win64","description":"Creating 64bit Wine prefix.","name":"create_prefix","prefix":"$GAMEDIR"}},{"task":{"
@majabojarska
majabojarska / scrape_poorly_drawn_lines.py
Created June 30, 2022 11:05
Downloads all comics from the Poorly Drawn Lines archive.
"""
Downloads all comics from the Poorly Drawn Lines archive.
Comic images are saved in directory defined by _OUTPUT_DIR.
"""
from pathlib import Path
from typing import Iterable, Tuple, Optional
from urllib.parse import urlparse
@majabojarska
majabojarska / pve_rm_subscription_notice.sh
Last active May 7, 2022 21:04
Proxmox VE remove no subscription notice
#!/bin/bash
# Credits go to John McLaren: https://johnscs.com/remove-proxmox51-subscription-notice/
sed -Ezi.bak "s/(Ext.Msg.show\(\{\s+title: gettext\('No valid sub)/void\(\{ \/\/\1/g" /usr/share/javascript/proxmox-widget-toolkit/proxmoxlib.js && systemctl restart pveproxy.service
@majabojarska
majabojarska / end.gcode
Last active February 4, 2024 18:26
Creality Ender 3 custom start and end G-codes
; Ender 3 custom end GCode
G91 ;Relative positioning
G1 E-2 F2700 ;Retract a bit
G1 E-2 Z0.2 F2400 ;Retract and raise Z
G1 X5 Y5 F3000 ;Wipe out
G1 Z10 ;Raise Z more
G90 ;Absolute positioning
G1 X0 Y{machine_depth} ;Present print
M106 S0 ;Turn-off fan
@majabojarska
majabojarska / skarsta_crank_shim.scad
Last active May 7, 2022 21:06
IKEA Skarsta crank shim
// IKEA Skarsta crank shim
$fn=100;
fi_in=8;
fi_out=15;
height=8;
fi_screw=4;
difference(){
difference(){
@majabojarska
majabojarska / qthread_example.py
Created December 10, 2020 21:48
PyQt5 QThread with QObject example
import sys
from PyQt5.QtCore import pyqtSlot, QThread, QObject, pyqtSignal
from PyQt5.QtWidgets import QMainWindow, QApplication
class Worker(QObject):
finished = pyqtSignal()
def __init__(self):
@majabojarska
majabojarska / ise.desktop
Created January 26, 2020 22:46
Xilinx ISE 14.7 Gnome Desktop Entry
[Desktop Entry]
Type=Application
Name=Xilinx ISE
Exec=/opt/Xilinx/14.7/ISE_DS/ISE/bin/lin64/ise
Icon=/opt/Xilinx/14.7/ISE_DS/ISE/data/images/pn-ise.png
Terminal=false
Categories=Development;Engineering;Electronics;
Keywords=embedded electronics;electronics;fpga;xilinx;ise;spartan;virtex;
@majabojarska
majabojarska / shim.scad
Created July 30, 2019 18:21
OpenSCAD Custom Shim Generator
/*
This script generates a custom shim based
on the given parameter values
*/
$fn=50;
internal_diameter=4;
external_diameter=8;
height=4;