RSSAmplifier

Blog

Brent's Blog

blog.cetinich.netRSS feed ↗50 posts

Latest posts

Nixos ydtools permission denied socket

To get ydotool running on Nixos Plasma with KDE you just need to:

Nixos Blutooth cant enable after disable

On my a Lenovo Z13 Gen1 with Nixos / KDE Plasma 6.0.5 after the laptop goes into power saving mode the bluetooth adapter enters some kind of degraded state where it does not work properly, for example random disconnects or intermittent lag on bluetooth mouse or the device disappears all together.

Native K8s Sidecar Containers with gluetun

I tried to use the new Kubernetes native Sidecar Containers introduced since v1.29. The initContainers and pod were stuck in PodInitializing state and the other containers were not starting up.

External-DNS Policy flag

The behavior of the external-dns --policy flag is not documented in the external-dns docs. After looking at the code and experimentation the flags work like this:

Deploy to K8s using helm without helm

On many occasions helm is not available directly on my cluster or I do not trust the author. So how can I deploy to my cluster without helm? Luckily helm can be configured to dump the template to on disk yaml manifests that can be applied to the target cluster. If you do not pass include-crds then no CRDs will be output and you will get errors later where CRDs are missing.

Cert-manager can’t find route53 secret

It seems I did something to delete the original cert-manager Route53 secret, renewals and new certs failed with this error:

Airpod reconnecting on Nixos

On my Apple Airpods Pro connected to Nixos vie bluetooth with KDE plasma, I get constant disconnect and reconnecting tones in the headset. The logs show this and the device number keeps incrementing after every reconnect:

10GB Thunderbolt Other World Computing OWC Arch Linux

The device does not show up in arch linux until the thunderbolt security mode in BIOS is set to “Legacy” It is based on the AQC107 chip and drivers are provided.

Opensearch failed to obtain node locks error

My cluster would not start up after killing the containers using the force, which means elasticsearch / opensearch did not get a chance to cleanly shutdown and remove the lock files. The error looks like this:

Feline stationary angular momentum exercise habits

Domesticated Feline engaged in stationary angular momentum exercise

Comso Synaptic Theory

I sometimes think of humanity and myself as creatures floating in space, trying to understand our physical cage with science, math and physics. Then I begin to compare our struggle to unravel the mystery of the universe to an ant who has been asked to prove the earth is round, struggling to perceive the true nature of its own physical cage (does the ant even need be asked, perhaps they are…

Make Search Great Again!

Internet search is basically useless now, I heard it described as “no longer a search engine, but an add serving platform”. The search results have deteriorated to the point where it is even worse than an add platform it is now just a market place.

IAM error: Resource vendor must be fully qualified and cannot contain regexes

Updating an IAM managed policy gave this error message:

Chilli Crab Recipe 🌶️🦀

It is more complicated to eat chilli crab than to cook it. This is an easy recipe. Prepare the chilli paste earlier (take about 30 mins). When you are ready to eat, it only takes 10 minutes to cook.

Philips HF3520

My HF3520 had a mainboard failure and my attempts to repair it also failed. I have salvaged some of the components. Trying to save the environment by keeping them out of landfill in the hope someone else needs the parts

Lenovo Z13 Gen 1 Review

Last Updated: Feb 2, 2024

Dell WD19TB screen flashing with M1 Mac

New 2022 M1 Macbook external display flickers when plugged into the Dell WD19TB docking station.

Download page including assets loaded at runtime

curl and wget can be used to archive a site but even with the most exotic command line switches they will omit dynamically loaded assets pulled via javascript during run time. curl and wget will not follow them and the site will not work for later offline viewing. To download all the assets including dynamically loaded data we can generate a HAR file from the developer tools view in chrome.

HA proxy upstream proxy support

Note: These are my notes during the creation of upstream proxy support, others in the HAProxy team have since picked up the work here.

Arch Linux on X1 Carbon 6th Gen

This is a bunch of random notes on installing Arch Linux on a ThinkPad X1 Carbon 6th Gen.

Arch Linux Tips

This is a bunch of random tips on Arch Linux.

Pagerduty Cloudwatch integration

It is possible to send your own custom payload to the Pagerduty Cloudwatch integration from a Lambda (instead of via a Cloudwatch alarm). Pagerduty does not document the internals but if you publish a custom message to the SNS topic that you have a HTTPS subscription to Pager duty following these simple rules you will see the event in Pagerduty.

Send payload to AWS Lambda from Cloudwatch scheduled event

How to send payload to AWS Lambda from Cloudwatch scheduled event.

The Foolproof Scones

These scones take max 30 mins to prep and cook and are very simple and enjoyable.

M5 Paper e-ink Calculator

I added an M5 Paper to my collection of dev boards and decided to make a basic calculator to teach my son to count. Since he is only a few months old he mostly uses it as an expensive teething device.

Python 3.10 tips

Handy tips and notes about Python 30.8 10, 11 and beyond.

Demystifying AWS IAM Policies: Unraveling De Morgan’s Laws and S3 Buckets Policy

Before we get into it we need to review how Condition evaluation works:

Trust on Cloud AWS S3 Threat Model

Trust on Cloud have open sourced their AWS S3 threat model, this release is a great tool to make sense of the “shared responsibility model” and what “responsibility” means for AWS customers.

Monitoring VPN / Direct Connect Connectivity

In an on premise network it is typical to do some type of topology discovery via the MIB-II SNMP tables of all your network gear and then use ICMP to ping each of the discovered routers or switches respective management interfaces to validate connectivity and contribute to intelligence when parts of the network go dark and speed up root cause analysis.

TLS/SSL Certificate Authority (CA) Trust store verification

The CA trust store is how a TLS client establish trust with the servers offered certificates. Curl uses openssl and Python uses its own store (like Java). The store on my system is located here:

Running Amazon Linux 2 on prem on VMware

There is no default ec2-user or root password set for the Amazon Linux 2 ova. You must use cloud-init via it’s nocloud datasource

Error: The maximum number of rules per security group has been reached

How to deal with the error: “The maximum number of rules per security group has been reached.”

AWS API Gateway notes

How to make a private REST API using AWS API Gateway that is only accessible from inside a VPC.

Stringer Self Hosted RSS Reader

My setup is using the docker compose file and a local build of the docker image (since docker hub image is years old). Here is a dark theme (solarized) for the CSS. Just paste this over your stringer/app/assets/stylesheets/application.css file. I did not spend much time on it but it looks good enough for my taste.

The Perfect Neapolitan Pizza

In Italy a society; Associazione Verace Pizza Napoletana makes the rules when it comes to every aspect of the Naples pizza and they describe the rules of a Naples pizza in extreme technical detail here this is a great read if you are a pizza nerd and it details the exact procedure to cook a perfect Napoletana pizza.

Peri Peri Chicken

Chicken Thigh (With or without skin / bone - to taste)

AWS Sagegemaker Jupyter Notebook

I wanted to upgrade the version of pandas that comes with AWS Sagemaker Notebook to > 1.1 because this simplify handling of group by with null or NaN values.

The Best Garlic Chilli Prawns 🌶🍤

These are mediterranean style garlic chilli prawns, normally I double the garlic and chilli for this recipe and the oil is so good to dip with warm fresh crusty bread.

OSS logstash with AWS Opendistro for Elasticsearch

To get logstash talking to the Open Distro Elasticsearch the first thing that should be understood is that open distro only works with the OSS (Apache 2.0 Licensed) edition of the Elastic tools and not the Elastic licensed edition (Xpack).

Intercept HTTP/HTTPS TLS traffic

Use open source project mitmproxy and have visibility into what iOS apps (or anything else) are sending back to their mother ship.

Moved blog to alabaster with Sphinx

Mostly notes to self on how to deploy and architecture / setup. Inspired by https://github.com/vincentbernat/vincent.bernat.ch

SES Email client for S3

You can conveniently browse the SES mail in S3 using this tool

Logstash ingestion of AWS billing customer usage reports

To get the CUR reports into elastic search:

Kubernetes tips

The problem is solved by removing the leading slash after the podname colon separator:

Enterprise tips for AWS Workspaces and AWS Managed AD

::: note ::: title Note :::

IAM resource based policy implicit allow

Resource policy are typically used to allow cross account access for resources where it is supported some of which include:

AWS Boto KeyError endpoint_resolver in session.py when using multithreading

When using multithreading in Python with AWS boto to get a session I was randomly hitting this error:

Route 53 Associate multiple private hosted zones with same name

Can I associate multiple private hosted zones with the same domain name to the same VPC?

CloudTrail and VPC Endpoints Logging

Today I learnt that AWS CloudTrail does not log requests that are denied by VPC endpoint policy. The reason for this is that it would allow an attacker to exfiltrate data via CloudTrail.

Expose WSL2 To LAN

I need to connect to my WSL2 container from other machines on the network over SSH: My container is assigned 172.24.208.2 and I will map 5022 to 22 on the host.