Skip to content

Instantly share code, notes, and snippets.

View fathonix's full-sized avatar
💭
I may be slow to respond.

Aldo Fathoni fathonix

💭
I may be slow to respond.
View GitHub Profile
@robertkirkman
robertkirkman / README.md
Last active December 11, 2024 19:37
How to build Turnip for SurfaceFlinger on-device without a PC and without zhiyong/termux-ndk

How to build Mesa Turnip with -Dplatforms=android but without cross-compilation

Small warning: This will "mess up" your Termux installation's zlib.pc file, but if you do other compilations with really similar settings to this one, you're probably going to need it again before you "fix" it by reinstalling Termux's official zlib anyway.

  1. Install Termux

termux-setup-storage
pkg install git make clang binutils
git clone https://github.com/madler/zlib.git
@jcmvbkbc
jcmvbkbc / gist:316e6da728021c8ff670a24e674a35e6
Last active August 29, 2025 23:28
esp32s3 linux rebuild scripts
Latest versions of these scripts are available in git repository https://github.com/jcmvbkbc/esp32-linux-build
@d7samurai
d7samurai / .readme.md
Last active December 31, 2025 20:32
Minimal D3D11 sprite renderer

Minimal D3D11 sprite renderer

Minimal D3D11 sprite renderer: basic back-to-front sprite rendering reference code with example sprite sheet animation logic. As usual: Complete, runnable single-function app. No modern C++ / OOP / obscuring cruft.

adventurer

Swap out the sprite sheet with a font atlas for a lightweight GUI / text renderer. Clip individual sprites and glyphs by offsetting screenPos and atlasPos to top left corner of visible area and adjusting size accordingly (all values in pixels):

sprite.screenPos.x += 17;
sprite.screenPos.y += 10;
@slavafomin
slavafomin / 00-typescript-esm.md
Last active October 23, 2025 18:19
Using TypeScript with native ESM

Using TypeScript Node.js with native ESM

This reference guide shows how to configure a TypeScript Node.js project to work and compile to to native ESM.

Rationale

CommonJS module system was introduced by the Node.js developers due to the lack of the notion of "modules" in the original JavaScript (ECMAScript) language specification at that time. However, nowadays, ECMAScript has a standard module system called ESM — ECMAScript Modules, which is a part of the accepted standard. This way CommonJS could be considered vendor-specific and obsolete/legacy. Hopefully, TypeScript ecosystem now supports the "new" standard.

So the key benefits are:

@atyachin
atyachin / Android_Emulator_AWS_EC2_ARM64_2022.txt
Last active November 14, 2025 16:48
Running headless android emulator on AWS EC2 Ubuntu instance (ARM64 / aarch64) - 2022
Android Emulator (ARM64) on EC2 - 2022
---------------------------------------
1. Launch EC2 ARM based Instance (a1.metal / a1.2xlarge): (16 Gb RAM, 32Gb Disk), Ubuntu Server 22.04 LTS (HVM) ARM x64
2. sudo apt update && sudo apt upgrade
3. sudo apt install default-jdk python3-pip repo python-is-python3 unzip libpcre2-dev adb
4. wget https://dl.google.com/android/repository/commandlinetools-linux-8512546_latest.zip
5. unzip commandlinetools-linux-8512546_latest.zip -d android-sdk
6. sudo mv android-sdk /opt/
7. mkdir /opt/android-sdk/cmdline-tools/latest
8. mv /opt/android-sdk/cmdline-tools/* /opt/android-sdk/cmdline-tools/latest (ignore the error)
@mmozeiko
mmozeiko / !README.md
Last active January 8, 2026 13:48
Download MSVC compiler/linker & Windows SDK without installing full Visual Studio

This downloads standalone MSVC compiler, linker & other tools, also headers/libraries from Windows SDK into portable folder, without installing Visual Studio. Has bare minimum components - no UWP/Store/WindowsRT stuff, just files & tools for native desktop app development.

Run py.exe portable-msvc.py and it will download output into msvc folder. By default it will download latest available MSVC & Windows SDK from newest Visual Studio.

You can list available versions with py.exe portable-msvc.py --show-versions and then pass versions you want with --msvc-version and --sdk-version arguments.

To use cl.exe/link.exe first run setup_TARGET.bat - after that PATH/INCLUDE/LIB env variables will be updated to use all the tools as usual. You can also use clang-cl.exe with these includes & libraries.

To use clang-cl.exe without running setup.bat, pass extra /winsysroot msvc argument (msvc is folder name where output is stored).

@amindadgar
amindadgar / main
Created June 4, 2021 14:47
Get DHCP client list from android hotstpot ( connect using adb )
# you can run this commands for rooted devices
adb tcpip 5555
adb connect 192.168.43.1 # mobile AP IP (Always it is this)
adb shell
cat /data/misc/dhcp/dnsmasq.leases # this command will show a list of connected devices with their ip and mac address
@zOrg1331
zOrg1331 / wireguard_layer2.md
Last active January 10, 2026 07:31
wireguard, wireguard layer 2, wireguard over TCP

Intro

This note describes how to connect two networks/devices/VMs over public network using Wireguard with Layer 2 support (ARP, IPv6 link-local, etc).

This can also be achieved using SSH and its "tap" tunnel, however, it does not provide the same level of latency and bandwidth as full-blown VPN such as Wireguard.

In addition, this note describes how to tunnel Wireguard over TCP connection. This may be of use if you encounter firewall in-between so, for instance, you can use TCP port 443 only.

Objective

@Hacksore
Hacksore / enable.sh
Created February 1, 2021 22:20
usb-gadget-enable
#!/usr/bin/env bash
# Adapted from https://github.com/girst/hardpass-sendHID/blob/master/README.md
# Exit on first error.
set -e
# Treat undefined environment variables as errors.
set -u
@FreddieOliveira
FreddieOliveira / docker.md
Last active January 9, 2026 19:02
This tutorial shows how to run docker natively on Android, without VMs and chroot.

Docker on Android 🐋📱

Edit 🎉

All packages, except for Tini have been added to termux-root. To install them, simply pkg install root-repo && pkg install docker. This will install the whole docker suite, left only Tini to be compiled manually.


Summary