mkdir osm
wget -O osm/planet.mbtiles https://hidrive.ionos.com/api/sharelink/download?id=SYEgScrRe
podman run -ti --rm -p 9000:9000 --name sms -v $(pwd)/osm/:/data/ registry.gitlab.com/markuman/sms:latest
firefox http://localhost:9000
#!/usr/bin/env sh | |
#!Declare Some Symbols or Replacements here just to look good | |
declare -A replacements=( | |
["XF86Audio"]="🕪 " | |
["XF86MonBrightnessUp"]="☼ ↑" | |
["XF86MonBrightnessDown"]="☼ ↓" | |
['$mainMod']="[]" | |
["UP"]="↑" | |
["DOWN"]="↓" |
For anyone considering the use of ULIDs in MySQL with drizzle
, here's a ready-to-use ULID
type for your convenience.
import { Ulid as ULID } from "id128";
export const ulid = customType<{
data: string;
notNull: true;
default: false;
- Cloudstream's Discord Server: https://discord.gg/RgbktAuXEu
- My Discord Server: https://destronia.com/discord or https://discord.com/invite/rvpbyWy
How to use:
- Go to Settings > Extensions > Add Repository
- Copy relevant url into the Repository URL section
- Give it a name
When using Lua-based plugins for Neovim, you may need to install some packages
with luarocks. To use these packages, the environment variables LUA_PATH
and
LUA_CPATH
needs to contain the luarocks directories. Problem is, Neovim uses
LuaJIT which is a Lua 5.1 implementation; however, you may already have your
environment setup for a different Lua version, for example the current last
version 5.4. To resolve this problem, this gist patches the Lua paths in the
startup configuration instead of relying on the environment variables as is
default in Neovim.
I have an updated version of this on my blog here: https://chrisamico.com/blog/2023-01-14/python-setup/.
This is my recommended Python setup, as of Fall 2022. The Python landscape can be a confusing mess of overlapping tools that sometimes don't work well together. This is an effort to standardize our approach and environments.
- Python docs: https://docs.python.org/3/
- Python Standard Library: - Start here when you're trying to solve a specific problem
// ------------------------- | |
// useMediaQuery | |
import { useState, useEffect, useLayoutEffect } from "react"; | |
export function useMediaQuery(query: string) { | |
const [matches, setMatches] = useState(false); | |
useEffect(() => { | |
const media = window.matchMedia(query); |
Update 2025-07-16: Use either Revanced, NewPipe or Firefox with add-ons. Revanced is my personal pick, due to it being a mod of the official App like Vanced, but better (e.g. it has integration of Sponsor Block, Return YouTube Disklike and more).
I wouldn't recommend Kiwi Browser anymore as it has been discontinued. AFAIK it has been accuired by Microsoft and the extension support has been merged into Edge (Canary). But you'd have to use Edge. Yuck.
// yarn add --dev @esbuild-plugins/node-globals-polyfill | |
import { NodeGlobalsPolyfillPlugin } from '@esbuild-plugins/node-globals-polyfill' | |
// yarn add --dev @esbuild-plugins/node-modules-polyfill | |
import { NodeModulesPolyfillPlugin } from '@esbuild-plugins/node-modules-polyfill' | |
// You don't need to add this to deps, it's included by @esbuild-plugins/node-modules-polyfill | |
import rollupNodePolyFill from 'rollup-plugin-node-polyfills' | |
export default { | |
resolve: { | |
alias: { |