Skip to content

Instantly share code, notes, and snippets.

@mister2d
mister2d / README.md
Created January 21, 2023 06:22 — forked from qcasey/README.md
Headless A2DP Audio Streaming on Ubuntu / Debian for non-raspbian SBCs (ODROID, Orange Pi, Armbian, etc)

About

This gist will show how to setup a generic SBC Debian / Ubuntu install as a headless Bluetooth A2DP audio sink. This will allow your phone, laptop or other Bluetooth device to play audio wirelessly through a Rasperry Pi.

Motivation

This is forked from another gist specific to the Raspberry Pi on Stretch. A required package isn't in Ubuntu's repos, so in this gist we build it from scratch.

Tested to be working on Armbian/Ubuntu/Debian images of the Orange Pi Zero, ODROID XU4, ODROID N2, and Atomic Pi.

Prerequisites

@mister2d
mister2d / get-windows-license-key.sh
Created September 1, 2022 04:18
Print Windows Activation key from with Linux
#!/bin/bash
strings /sys/firmware/acpi/tables/MSDM | tail -1
@mister2d
mister2d / id_ed25519.pub
Created August 31, 2022 02:54
ssh-key-public
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIGQp6H/n2JPSt1VxCAupTC1OTh7R3eu7wO0ZtCNbAkd7
@mister2d
mister2d / _README.md
Created March 17, 2022 08:20 — forked from oleq/_README.md
A2DP audio streaming using Raspberry PI (Raspbian Jessie)

What is this all about?

This tutorial will turn your Raspberry PI into a simple Bluetooth audio receiver, which plays music through connected speakers. It's like a regular car audio system, but it can be used anywhere and it's a good value.

   Audio source (i.e. smartphone) 
                |
                v
 (((  Wireless Bluetooth Channel  )))
 |
@mister2d
mister2d / resinstack.nomad
Created March 18, 2021 01:12
Simple Nomad job to deploy a VM using the qemu driver.
job "resinstack-small" {
datacenters = ["home"]
group "qcow2" {
constraint {
attribute = "${meta.node_type}"
value = "metal"
}
network {
{
"cniVersion": "0.4.0",
"name": "macvlan-plex",
"plugins": [
{
"type": "macvlan",
"master": "enp3s0f0v1",
"ipam": {
"type": "dhcp"
}
locals {
config = jsondecode(file("runnervars.json"))
}
job "logging" {
datacenters = ["dc1"]
type = "service"
constraint {
attribute = "${attr.cpu.arch}"
@mister2d
mister2d / haproxy-ingress.hcl
Last active February 12, 2021 02:36
nomad job for HAProxy ingress
locals {
config = jsondecode(file("runnervars.json"))
}
job "ingress" {
region = "global"
datacenters = ["home"]
type = "service"
constraint {
@mister2d
mister2d / site.yml
Created July 22, 2020 00:01 — forked from gswallow/site.yml
Ansible tags are a code smell
---
- hosts: localhost
vars:
ansible_connection: local
tasks:
- name: demo an untagged task
debug:
msg: I am an untagged task
- name: demo a normal tagged task