Skip to content

Instantly share code, notes, and snippets.

View phanirithvij's full-sized avatar
💫
you spin my head right round ...

loudgolem phanirithvij

💫
you spin my head right round ...
View GitHub Profile
@phanirithvij
phanirithvij / nix-lang.md
Last active October 23, 2025 06:51 — forked from edolstra/nix-lang.md
Nix language changes

This document contains some ideas for additions to the Nix language.

Motivation

The Nix package manager, Nixpkgs and NixOS currently have several problems:

  • Poor discoverability of package options. Package functions have function arguments like enableFoo, but there is no way for the Nix UI to discover them, let alone to provide programmatic ways to
@phanirithvij
phanirithvij / B2_snapshot_restore.clean.ipynb
Created February 10, 2025 09:50 — forked from Jwink3101/B2_snapshot_restore.clean.ipynb
Demonstration of extracting from a Backblaze Restor
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
@phanirithvij
phanirithvij / default.nix
Created January 18, 2025 06:52 — forked from nmattia/default.nix
Report for runtime dependencies of a derivation
# MIT License, see below
#
# These are some helpers for figuring out the derivations attributes of runtime
# dependencies of a derivation, in particular the function `runtimeReport`. At
# the bottom of the file you can see it used on `hello`. Spoiler: glibc is a
# runtime dependency.
# For more info see
#
# https://nmattia.com/posts/2019-10-08-runtime-dependencies.html
@phanirithvij
phanirithvij / minimod.nix
Created December 17, 2024 13:31 — forked from roberth/minimod.nix
Simple and quick module system alternative + thoughts and tasks
/*
minimod: A stripped down module system
TODO Comparison:
- [ ] Come up with a benchmark "logic" using plain old functions and let bindings
- [ ] Write the benchmark for the module system
- [ ] Write the benchmark for POP?
- [ ] Qualitative comparison of extensibility in the context of composable
Nixpkgs packaging logic
TODO Fine-tuning:
@phanirithvij
phanirithvij / get-fixed-volume-mounts.go
Created August 11, 2023 14:22 — forked from kostix/get-fixed-volume-mounts.go
Getting the list of fixed volumes and their mounts
package main
import (
"errors"
"log"
"strings"
"syscall"
"unsafe"
)
@phanirithvij
phanirithvij / README.md
Created August 5, 2023 18:38 — forked from ppoffice/README.md
Install Visual Studio Code (actually code-server) on Android
  1. Install Termux, an Android terminal emulator that provides a Linux execution environment and various tools.

  2. Update system packages in Termux:

    $ pkg update -y
#!/bin/bash
# Compiled by following instructions on https://wiki.cacert.org/FAQ/ImportRootCert
ADB="/home/christian/android-sdk-linux/platform-tools/adb"
ROOT_CRT="cacert-root.crt"
INT_CRT="cacert-class3.crt"
curl -o "$ROOT_CRT" "https://www.cacert.org/certs/root.crt"
curl -o "$INT_CRT" "https://www.cacert.org/certs/class3.crt"
@phanirithvij
phanirithvij / go_port_forwarding.go
Created November 19, 2020 20:28 — forked from qhwa/go_port_forwarding.go
network port forwarding in go lang
package main
import (
"fmt"
"io"
"net"
)
func main() {
ln, err := net.Listen("tcp", ":8080")
@phanirithvij
phanirithvij / aes_encryption_helper.dart
Created December 28, 2019 12:52 — forked from proteye/aes_encryption_helper.dart
How to AES-256 (CBC/CFB mode) encrypt and decrypt in Dart/Flutter with Pointy Castle
import 'dart:convert';
import 'dart:typed_data';
import "package:pointycastle/export.dart";
import "./convert_helper.dart";
// AES key size
const KEY_SIZE = 32; // 32 byte key for AES-256
const ITERATION_COUNT = 1000;
@phanirithvij
phanirithvij / webdev_online_resources.md
Created July 27, 2018 08:27 — forked from bradtraversy/webdev_online_resources.md
Online Resources For Web Developers (No Downloading)