Skip to content

Instantly share code, notes, and snippets.

View tiran's full-sized avatar

Christian Heimes tiran

View GitHub Profile
@tiran
tiran / sqlite-abi-notes.md
Created August 18, 2026 05:52
SQLite ABI Compatibility and WAL-Reset Bug Notes

SQLite ABI Compatibility and WAL-Reset Bug Notes

Is it safe to upgrade libsqlite3.so.0?

Yes. SQLite maintains strict backwards ABI compatibility within the libsqlite3.so.0 soname. From the official documentation:

Stable interfaces will be maintained indefinitely in a backwards compatible way. An application that uses only stable interfaces should

@tiran
tiran / graph.md
Created September 27, 2025 19:01
llama-stack-test-graph with my MR 763
@tiran
tiran / cpython_wasm_info.md
Last active July 10, 2022 23:13
CPython on WASM: macros and constants

CPython WASM

CPython

>>> import sys, os, platform
>>> sys.platform
'emscripten'
>>> os.name
'posix'
@tiran
tiran / config.site-wasm
Last active November 26, 2021 13:16
CONFIG_SITE for CPython wasm cross builds
#
# CONFIG_SITE=config.site-wasm READELF=true emconfigure ./configure -C --host=wasm32-unknown-emscripten --build=$(./config.guess) --without-pymalloc --enable-big-digits=30
# ln -sfr Modules/Setup.stdlib Modules/Setup.local
# emmake make CROSS_COMPILE=yes FREEZE_MODULE=../x86_64/Programs/_freeze_module PYTHON_FOR_BUILD=../x86_64/python _PYTHON_HOST_PLATFORM=wasm32-unknown-emscripten
#
# cannot be detected for cross builds
ac_cv_buggy_getaddrinfo=no
ac_cv_file__dev_ptmx=yes
ac_cv_file__dev_ptc=no
@tiran
tiran / audient_id4_pipewire.md
Last active March 25, 2024 07:32
Audient iD4 with pipewire: split mic and DI inputs into separate streams

UPDATE

The workaround is no longer needed with recent alsa-ucm, e.g. alsa-ucm-1.2.11-2.fc39. Just configure the device to use Default Alsa Profile instead of Pro.

old workaround

  • cp /usr/share/pipewire/media-session.d/media-session.conf ~/.config/pipewire/media-session.d/
  • add loopback modules to context.modules section
  • configure interface to use Pro Audio profile
  • systemctl restart --user pipewire.service pipewire-pulse.service
@tiran
tiran / ldap_sasl.py
Created August 27, 2021 12:31
Test SASL data security layer / SSF behavior
#!/usr/bin/python
"""Test SASL data security layer / SSF behavior
"""
from __future__ import print_function
import socket
import ldap
import ldap.sasl
FQDN = socket.getfqdn()
@tiran
tiran / make.txt
Created May 6, 2021 13:46
OpenSSL 3.0.0 alpha16+
$ make -s
crypto/ec/curve448/f_generic.c:21:27: warning: argument 1 of type 'uint8_t[56]' {aka 'unsigned char[56]'} with mismatched bound [-Warray-parameter=]
21 | void gf_serialize(uint8_t serial[SER_BYTES], const gf x, int with_hibit)
| ~~~~~~~~^~~~~~~~~~~~~~~~~
In file included from crypto/ec/curve448/f_generic.c:12:
crypto/ec/curve448/field.h:65:28: note: previously declared as 'uint8_t *' {aka 'unsigned char *'}
65 | void gf_serialize(uint8_t *serial, const gf x, int with_highbit);
| ~~~~~~~~~^~~~~~
crypto/ec/curve448/f_generic.c:21:27: warning: argument 1 of type 'uint8_t[56]' {aka 'unsigned char[56]'} with mismatched bound [-Warray-parameter=]
21 | void gf_serialize(uint8_t serial[SER_BYTES], const gf x, int with_hibit)
```
<Not-4ecb> [cpython] vstinner closed pull request #1658: bpo-30367: fix _testcapi to work when statically linked into Cpython3 - https://git.io/J3zgE
<Not-4ecb> [cpython] vstinner closed pull request #2336: bpo-36700: Updated obsolete references for RFC 3548 to RFC 4648 - https://git.io/J3zgu
<Not-4ecb> [cpython] vstinner closed pull request #4435: bpo-31956: Add start and stop parameters to array.index() - https://git.io/J3zgz
<Not-4ecb> [cpython] vstinner closed pull request #4988: bpo-32414: use string after the last dot as the capsule name in PyCapsule_Import - https://git.io/J3zgg
<Not-4ecb> [cpython] vstinner closed pull request #5068: bpo-32469: Improve representation of the coroutines - https://git.io/J3zg2
<Not-4ecb> [cpython] vstinner closed pull request #5215: bpo-32579: UUID python module fix, when there is no clock sequence given - https://git.io/J3zga
<Not-4ecb> [cpython] vstinner closed pull request #5313: bpo-29708: support SOURCE_DATE_EPOCH for build info - https://git.io/J3zgV
<Not-4ecb>
@tiran
tiran / proxykdc.md
Last active March 18, 2021 15:41
Create Kerberos pkinit cert for proxy

On each IPA server (server.ipa.example)

  1. Apply patch https://github.com/freeipa/freeipa/pull/5496/files (https://pagure.io/freeipa/issue/8686). on RHEL it's in /usr/lib/python3.6/site-packages/ipaserver/plugins/cert.py
  2. systemctl restart httpd.service to reload server code with patch
  3. ipa host-add proxy.ipa.example --force
  4. ipa host-add-managedby proxy.ipa.example --hosts=server.ipa.example
  5. Create /tmp/fake-kdc.update (replace proxy.ipa.example with your actual proxy name three times)
  6. Create fake KDC entry in masters configuration ipa-ldap-updater fake-kdc.update
  7. systemctl restart httpd.service
  8. request new KDC cert for server's and proxy's DNS name: ipa-getcert resubmit --wait -f /var/kerberos/krb5kdc/kdc.crt -D proxy.ipa.example -D server.ipa.example
@tiran
tiran / saslprof.py
Created January 4, 2021 15:24
Profile LDAP SASL bind performance
#!/usr/bin/python3
import collections
import configparser
import time
import socket
import ldap
import ldap.sasl
SASL_GSSAPI = ldap.sasl.sasl({}, 'GSSAPI')