Skip to content

Instantly share code, notes, and snippets.

Avatar

Jakub Jirutka jirutka

View GitHub Profile
View option_result.h
#include <stdbool.h>
typedef char* str;
#define GENERATE_OPTION_TYPES(Option) \
Option(int) \
Option(str)
#define GENERATE_RESULT_TYPES(Result) \
Result(str, int) \
@jirutka
jirutka / radacct-rotate
Created Sep 21, 2021
Script for compressing and later removing old FreeRADIUS' radacct log files with "-YYYYMMDD" suffix #freeradius #logrotate
View radacct-rotate
#!/bin/sh
# SPDX-License-Identifier: MIT
# SPDX-FileCopyrightText: 2021 Jakub Jirutka <jakub@jirutka.cz>
#---help---
# Usage: radacct-rotate [options]
#
# Compress and later remove old FreeRADIUS' radacct log files with "-YYYYMMDD"
# suffix.
#
# Options:
@jirutka
jirutka / arch-linux-installation.md
Last active Jun 30, 2022
My notes for installing Arch Linux on encrypted Btrfs with UEFI Secure Boot on ThinkPad T14s
View arch-linux-installation.md

Arch Linux Installation

1. Securely erase drive

cryptsetup open --type plain -d /dev/urandom /dev/nvme0n1 to-be-wiped
dd if=/dev/zero of=/dev/mapper/to-be-wiped bs=1M status=progress
cryptsetup close to-be-wiped
wipefs -a /dev/nvme0n1
@jirutka
jirutka / zeme.json
Created May 8, 2021
Číselník zemí z onlinescitani.cz
View zeme.json
{
"poradiCse": [
"004",
"248",
"008",
"012",
"016",
"850",
"020",
"024",
@jirutka
jirutka / array_uniq.sql
Created Apr 2, 2021
Example of PostgreSQL trigger function to sort and deduplicate an array
View array_uniq.sql
create function array_uniq (a anyarray) returns anyarray
immutable
language sql
as $$
select array_agg(distinct x) from unnest(a) x;
$$;
comment on function array_uniq is
'Sorts and deduplicates elements of an array.';
create function trg_person_roles_normalize () returns trigger
@jirutka
jirutka / trg_check_array_elements_column_uniq.sql
Created Apr 2, 2021
PostgreSQL constraint trigger to check if each array element is unique within the table
View trg_check_array_elements_column_uniq.sql
-------------------------------------------------------------------------------
-- EXAMPLE USAGE
--
-- create table specialization (
-- id bigserial,
-- name text not null,
-- study_plan_codes text[] not null default '{}'
-- )
--
-- create constraint trigger study_plan_codes_unique_check
@jirutka
jirutka / aes.ts
Created Nov 20, 2020
Modernized SJCL AES implementation (TypeScript, ES2015, Typed Arrays, no useless prototypes, better readability)
View aes.ts
/**
* Low-level AES implementation.
*
* This code is based on AES implementation from SJCL library available at
* https://github.com/bitwiseshiftleft/sjcl/blob/master/core/aes.js.
* It should be functionally exactly the same, I just converted the code
* from plain JavaScript into TypeScript, modernized it and replaced plain
* arrays with typed arrays.
*
* @author Jakub Jirutka
@jirutka
jirutka / koronavir-fatalni-stret-s-realitou.md
Created Aug 3, 2020
Článek „Koronavir – Fatální střet s realitou“ z webu mppraha.cz
View koronavir-fatalni-stret-s-realitou.md

Koronavir - Fatální střet s realitou

Problémy při prvním nástupu koronavirové krize by se ještě daly pochopit nedostatkem znalostí a zkušeností osob, které rozhodují o našich osudech. Následující příběh však popisuje reálnou situaci, kterou na vlastní kůži zažil v posledních čtrnácti dnech jeden z našich zaměstnanců bydlící ve Středočeském kraji. Informace jsou pravdivé a identita zaměstnance je nám samozřejmě známa.

11. 7. Můj dospělý syn navštívil s přáteli dnes již bohužel legendární pražský klub, přičemž neporušil žádné platné mimořádné opatření ve vztahu k šíření SARS-CoV-2.

11. 7. – 16. 7. V tomto období neměl žádné příznaky ani zdravotní komplikace, které by indikovaly, že byl nakažen.

16. 7. Objevila se mírná bolest hlavy, prostě nic co by nevyřešil, stejně jako dříve, obyčejný volně prodejný prášek proti bolesti.

@jirutka
jirutka / print-fit-linux.ppd
Last active Apr 22, 2020
Modified PPD file for Kyocera TASKalfa 6053ci with support for overwriting the accounting username sent to the print server.
View print-fit-linux.ppd
*PPD-Adobe: "4.3"
*cupsLanguages: "de es fr it pt"
*%=============================================================================
*%
*% PPD file for Kyocera TASKalfa 6053ci
*% Linux Version
*%
*% (C) 2019 KYOCERA Document Solutions Inc.
*%
*% Permission is hereby granted, free of charge, to any person obtaining
View keybase.md

Keybase proof

I hereby claim:

  • I am jirutka on github.
  • I am jirutka (https://keybase.io/jirutka) on keybase.
  • I have a public key whose fingerprint is D785 8912 669D 3A20 F4F4 6BD2 F95B D679 104D 3115

To claim this, I am signing this object: