Skip to content

Instantly share code, notes, and snippets.

@lbt
lbt / gist:01b5932d80bc1c87eccd0695fe4189f8
Created June 27, 2025 20:05
Radicale bug test case
import datetime
import os
import sys
import caldav # version 1.6.0 or below
# See https://github.com/python-caldav/caldav/issues/439
# This is a minimal test for Radicale server side expansion
# Create a recurring event in Radicale and specify the datetime inside one instance
@lbt
lbt / LE_Subdomain_Wildcard
Last active September 6, 2024 10:15
LE subdomain for Cloudflare hosted DNS
certbot -v -n certonly --manual --force-renewal -d "*.local.example.com" \
--preferred-challenges dns --agree-tos --email [email protected] \
--logs-dir ~/letsencrypt/logs \
--config-dir ~/letsencrypt/etc \
--work-dir ~/letsencrypt/work/. \
--manual-auth-hook ~/letsencrypt/manual-local-hook.sh
import json
from ovos_workshop.skills import OVOSSkill
from ovos_workshop.decorators import intent_handler
import paho.mqtt.client as mqtt
import paho.mqtt
class FeedTheFish(OVOSSkill):
* Descriptions
** neon-tts-plugin-coqui
Plugin to connect to the coqui TTS service
** ovos-audio
The "mouth" of the OVOS assistant!
Handles TTS generation and audio playback
** ovos-backend-client
Python client library for interaction with several supported backends under a single unified interface
** ovos-bus-client
This module is a simple interface for the mycroft messagebus and can be used to connect to ovos, send messages and react to messages sent by the OpenVoiceOS system
#!/usr/bin/python3
import logging
import datetime
from PySide2.QtCore import QObject, Slot
from PySide2.QtCore import QTimer
logger = logging.getLogger(__name__)
logger.setLevel(logging.DEBUG)
#!/usr/bin/env python3
import asyncio
import evdev
from evdev import ecodes
from evdev.events import KeyEvent
from PySide2.QtCore import QObject
class IR(QObject):
In your config add sections for user-$IDENTITY. Below I use -work and -home
Also add an alias to run a script when you want to change .. I chose "user" ... "become" might be fun...
$ cat ~/.gitconfig
<---------snip---------->
[user]
name = David Greaves
email = [email protected]
[user-home]
name = David Greaves
nemo/devel/hw/android/common
nemo/devel/hw/asus/flo
nemo/devel/hw/brcm/bcm2835
nemo/devel/hw/fairphone/fp2-sibon
nemo/devel/hw/htc/vision
nemo/devel/hw/lge/hammerhead
nemo/devel/hw/lge/mako
nemo/devel/hw/motorola/athene
nemo/devel/hw/motorola/falcon
nemo/devel/hw/motorola/kinzie
%install
rm -rf %{buildroot}
# >> install pre
# << install pre
%qmake5_install
# >> install post
mkdir -p %{buildroot}%{_datadir}/%{name}/lib
cp -a /usr/lib/libassimp* %{buildroot}%{_datadir}/%{name}/lib/
class SSEvent
{
public:
SSEvent(QString type, QString data, QString origin, QString lastEventId):
m_data(data)
, m_lastEventId(lastEventId)
, m_origin(origin)
, m_type(type) { }
QString type() const { return m_type; }