Skip to content

Instantly share code, notes, and snippets.

View Checksum's full-sized avatar
:octocat:
Doing stuff

Srinath Sankar Checksum

:octocat:
Doing stuff
View GitHub Profile
@Checksum
Checksum / stack.yaml
Created July 31, 2019 00:40
Elm 0.19.1 stack.yaml
flags: {}
packages:
- .
extra-deps:
- language-glsl-0.3.0@sha256:85c1e7bf2cf5d6e604b7a2899c27e2935033425944db200798e57849e64d4c81
- time-1.9.2@sha256:874e07fb970531b9dcd814f74e00f253ce2f22ccd8272a6c4c137ee9040237fb
resolver: lts-12.14
@Checksum
Checksum / postgresql-json-queries.md
Last active January 14, 2020 06:11
Collection of queries to manipulate JSONB in PostgreSQL
CREATE TABLE users(
  id serial not null primary key,
  username text not null
);

CREATE TABLE tweets(
  id serial not null primary key,
  content jsonb default('{}')
);
@Checksum
Checksum / postgresql.sql
Last active January 14, 2020 06:15
PostgreSQL handy queries
-- Get size of database
SELECT pg_size_pretty(pg_database_size('database-name'));
-- Set the current session as read only
SET SESSION CHARACTERISTICS AS TRANSACTION READ ONLY;
-- Locks
-- https://www.postgresql.org/docs/10/functions-admin.html#FUNCTIONS-ADVISORY-LOCKS
SELECT pg_try_advisory_lock(123123213123) as lockObtained;
@Checksum
Checksum / main.rs
Created September 13, 2020 02:02
Syscheck rust lifetime issue
use crate::core::{Check, Error as CheckError};
use iced::{Application, Command, Container, Element, Settings, Text};
fn main() -> iced::Result {
Syscheck::run(Settings::default())
}
#[derive(Debug)]
pub enum Syscheck {
Setup(SetupState),
@Checksum
Checksum / bitwarden_rs.sh
Last active August 19, 2021 02:39
Cross compiling bitwarden_rs for Raspberry Pi
# Requires git and docker
# clone bitwarden_rs
git clone https://github.com/dani-garcia/bitwarden_rs
cd bitwarden_rs
# Use rust docker container to build everything
docker run --rm -it -v `pwd`:/bitwarden rust bash
# Download pi tools and openssl
@Checksum
Checksum / diff-patch.jq
Last active August 26, 2021 01:04
JSON diff and patch for jq
# JSON diff and patch for jq (https://stedolan.github.io/jq/)
# Author: Srinath Sankar
#
# Usage:
# diff: jq -sS 'include "diff-patch"; diff' a.json b.json > patch.json
# patch: jq -sS 'include "diff-patch"; patch' a.json patch.json
#
# Caveats: tested only with top level objects using jq 1.6
def flatten_obj:
@Checksum
Checksum / snippets.sh
Last active November 18, 2021 02:45
Bash snippets
#!/bin/bash
# Dynamic bracket expansion
eval echo "{1..3}"
eval echo "foo-{bar,baz}-{1..3}"
# Merge JSON objects
merged="$(jq -ers '.[0] * .[1]' <(echo '{"name": "foo"}') <(echo '{"age": "baz"}') 2>/dev/null)"
# Check if string is valid JSON
@Checksum
Checksum / redis-helpers.lua
Created March 23, 2022 03:59
Redis Lua helpers
local function key_patterns()
local uniq = {}
for _, key in ipairs(redis.call('keys', '*')) do
local pattern = string.match(key, "(.-):")
if pattern ~= nil and pattern ~= "" then
if uniq[pattern] == nil then
table.insert(uniq, pattern)
uniq[pattern]=1
else
uniq[pattern]=uniq[pattern]+1
@Checksum
Checksum / Canvas_Viewport.html
Created February 25, 2012 08:19
Fit canvas to viewport size for mobile devices
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Fit canvas to viewport for mobile devices</title>
<style>
* {
margin: 0;
padding: 0;
}
@Checksum
Checksum / neolink.log
Last active May 1, 2023 06:40
Neolink error log