Skip to content

Instantly share code, notes, and snippets.

@weshouman
weshouman / how-to-generate-and-use-private-keys-with-openssl-tool.md
Created April 11, 2024 17:02 — forked from briansmith/how-to-generate-and-use-private-keys-with-openssl-tool.md
How to generate & use private keys using the OpenSSL command line tool

How to Generate & Use Private Keys using OpenSSL's Command Line Tool

These commands generate and use private keys in unencrypted binary (not Base64 “PEM”) PKCS#8 format. The PKCS#8 format is used here because it is the most interoperable format when dealing with software that isn't based on OpenSSL.

OpenSSL has a variety of commands that can be used to operate on private key files, some of which are specific to RSA (e.g. openssl rsa and openssl genrsa) or which have other limitations. Here we always use

@weshouman
weshouman / README.md
Last active April 10, 2024 23:46
eBPF tips and tricks

The eBPF (Extended Berkeley Packet Filter) language is a low-level assembly-like language that is specifically designed for writing programs that can be loaded into the Linux kernel. These programs are typically used for networking, security, and observability tasks.

eBPF has its own domain-specific language (DSL), following are some information about it.

Characteristics of eBPF DSL:

  1. Low-Level: The language is closer to assembly than to high-level languages like C.

  2. Limited Instructions: eBPF has a limited set of instructions to ensure that programs are safe to run in the kernel space.

@weshouman
weshouman / README.md
Last active March 22, 2024 23:50
Using Chart.js in Trilium tutorial files
@weshouman
weshouman / openstack_study.md
Last active March 15, 2024 09:51
Openstack study topics

Rapid dive resource

  • Take a look at this list, it has the namings clearly stated within a multi-part guide for setting up openstack, alongside with the system requirements.

Component Documentation

General Introduction resources

For basic understanding of the functionality, following are some useful resources.

  • OpenStack's demo videos, is a good collection for different videos.
@weshouman
weshouman / README.md
Last active March 5, 2024 13:26
jira panel colors

jira supports 5 colors for the panels that could be created programmatically

{panel:title=BlueDefault}
{panel}
{panel:title=Green|bgColor=e3fce3}
{panel}
{panel:title=Purple|bgColor=f3f0ff}
{panel}
{panel:title=Orange|bgColor=fff7d6}
{panel}
@weshouman
weshouman / Makefile
Last active March 3, 2024 10:39
arduino cli tips
VERSION=0.14.0
SPECIFIER=arduino-cli_${VERSION}_Linux_64bit
BINDIR=/usr/local/bin/
# - Avoid redownloading
# - Avoid overwriting
# - To overwrite, use make uninstall
install:
TMPDIR=/tmp/$(SPECIFIER) && \
mkdir -p $${TMPDIR} && \
@weshouman
weshouman / 1-simple.mk
Last active February 20, 2024 18:16
Makefile function example
PATH = /tmp/
define myfn
processed_input=${PATH}/$(2)
$(1) := $$(processed_input)
endef
mytarget:
$(eval FILE=myfile)
$(eval $(call myfn,abs_filename,$(FILE)))
@weshouman
weshouman / README.md
Last active January 5, 2024 15:36
Sinon structured fake clock

Testing in Both Real and Fake Time in Javascript

The code shows how to jump between the fake and real time allowing to:

  • Execute real-time dependent stubs (in real time), in this scenario it's the HIL simulation.
  • Execute long test in time controlled manner (in fake time), in this scenario it's the HIL test.

Current Implementation

Avoid using await Promise.resolve() by ticking asynchronously, for example using fakeClock.tickAsync() and then you could move between fake and real time, the code is updated to show this solution.

@weshouman
weshouman / README.md
Last active December 20, 2023 11:15
Nautilus meld extension

This gist is now packaged and maintained at weshouman/nautilus-meld-compare-extension


Nautilus Meld Extension

Overview

This Nautilus extension allows us to easily compare files and directories using the Meld comparison tool directly from the Nautilus context menu.

@weshouman
weshouman / README.md
Created December 2, 2023 08:31
vim tips and tricks ep001

Using a macro to add double quotations over multiple lines in vim

  1. Select the Lines of Interest:

    • Move the cursor to the start of the first line where you want to perform the operation.
    • Enter Visual Line mode by pressing Shift+V.
    • Use the up or down arrow keys to extend the selection to cover all lines of interest.
  2. Start Recording the Macro:

    • Press q followed by a letter (like a) to start recording the macro into register a.