Skip to content

Instantly share code, notes, and snippets.

View detj's full-sized avatar
🖥️
deep into work

Debjeet Biswas detj

🖥️
deep into work
View GitHub Profile
@detj
detj / clickhouse-client-download.sh
Last active February 11, 2026 14:49
download clickhouse-client using dra
# To figure out the tag use:
#
# - change the version 25.10 to whatever
# - match the tag in the --install-file option
# - no dra? get here: https://github.com/devmatteini/dra
#
# gh release list --repo ClickHouse/ClickHouse --limit 10000 | rg 25\.10
dra download \
--install-file clickhouse-client-25.10.6.36/usr/bin/clickhouse-client ClickHouse/ClickHouse \
@detj
detj / convert-timestamps.sh
Created December 1, 2025 08:48
convert timestamps
uvx timetool 2025-12-01T08:20:18.174661485Z
# output
# 1764577218
# 2025-12-01T08:20:18.174+00:00 Dec 01, 2025 8:20:18 UTC
# 2025-12-01T13:50:18.174+05:30 Dec 01, 2025 1:50:18 PM IST
# ~26.6 minutes ago (1598.420771 seconds ago)
@detj
detj / git-tag-list.sh
Last active November 9, 2025 06:56
List git tags sorted in descending order
# list git tags in descending order
#
# tag format: vX.X.X
git tag --list 'v*' --sort=-v:refname
# get the latest tag
#
# tag format: vX.X.X
git tag --list 'v*' --sort=-v:refname | head -n1
@detj
detj / caddy-certs.txt
Created October 24, 2025 12:35
caddy certificates location
Where caddy on ubuntu stores the actual certificates
/var/lib/caddy/.local/share/caddy/certificates/acme-v02.api.letsencrypt.org-directory/domain/domain.key
/var/lib/caddy/.local/share/caddy/certificates/acme-v02.api.letsencrypt.org-directory/domain/domain.crt
@detj
detj / list-tables-postgres.sql
Last active November 22, 2025 08:48
List tables in postgres with custom schema
# List tables when using a custom schema other than 'public' in postgres
# 'BASE TABLE' table_type filter ensures only tables are listed and not views
#
# Replace <schema-name> with your schema name
select table_name from information_schema.tables where table_schema = '<schema-name>' and table_type = 'BASE TABLE';
@detj
detj / clear-dns.sh
Created October 18, 2025 11:24
clear DNS cache on macOS Tahoe
# need admin password
sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder
@detj
detj / homebrew-package-disk-usage.sh
Last active October 11, 2025 13:26
List disk usage by homebrew packages
# Usage by formulae
echo "=== Formulae ==="
du -sh $(brew --cellar)/* 2>/dev/null | sort -h
# Usage by casks
echo "=== Casks ==="
du -sh /opt/homebrew/Caskroom/* 2>/dev/null | sort -h
@detj
detj / list-roles-predefined-role.sh
Last active October 8, 2025 19:52
List IAM roles for a predefined role
# List all the roles for a predefined role
#
# gcloud iam roles describe [PREDEFINED_ROLE]
gcloud iam roles describe roles/owner
gcloud iam roles describe roles/editor
gcloud iam roles describe roles/viewer
@detj
detj / read-x509.sh
Created October 8, 2025 12:32
Read an x509 certificate
# assuming the certificate is in a file at /tmp/cert.txt
cat /tmp/cert.txt | openssl x509 -text -noout
@detj
detj / isObject.js
Created October 2, 2025 09:57
isObject(something)
// Check if 'something' is just a plain JavaScript object
// like a map of keys and values.
function isObject(something) {
const type = Object.prototype.toString.call(something);
return something === Object(something) && type !== "[object Array]" && type !== "[object Function]" && type !== "[object Date]" && type !== "[object RegExp]" && type !== "[object Set]" && type !== "[object Map]";
}
// truthy
console.log("{}", isObject({}));
console.log("Object.create(null)", isObject(Object.create(null)))