Skip to content

Instantly share code, notes, and snippets.

@aabccd021
aabccd021 / mpv-youtube.nix
Created April 4, 2025 04:54
mpv youtube keymap
{
programs.mpv.enable = true;
programs.mpv.bindings.j = "seek -5";
programs.mpv.bindings.l = "seek 5";
programs.mpv.bindings.k = "cycle pause";
programs.mpv.bindings.UP = "add volume 5";
programs.mpv.bindings.DOWN = "add volume -5";
programs.mpv.bindings.">" = "multiply speed 1.1";
programs.mpv.bindings."<" = "multiply speed 1/1.1";
programs.mpv.bindings.c = "cycle sub";
@aabccd021
aabccd021 / lsp-after-direnv.lua
Created April 4, 2025 02:56
neovim start lsp after direnv load
local lsp_langs = { "ts_ls", "biome", "nixd" }
local direnv_lspstart_group = vim.api.nvim_create_augroup("StartLspAfterDirenv", { clear = true })
vim.api.nvim_create_autocmd("BufEnter", {
group = vim.api.nvim_create_augroup("StartLsp", { clear = true }),
pattern = "*",
callback = function()
local result = vim.system(
{ "git", "-C", vim.fn.expand("%:p:h"), "rev-parse", "--show-toplevel" },
{ text = true }
)
@aabccd021
aabccd021 / colors.nix
Created April 3, 2025 12:04
qutebrowser gruvbox material dark hard
{
programs.qutebrowser.settings.colors.completion.fg = "#ddc7a1";
programs.qutebrowser.settings.colors.completion.odd.bg = "#282828";
programs.qutebrowser.settings.colors.completion.even.bg = "#1d2021";
programs.qutebrowser.settings.colors.completion.category.fg = "#e78a4e";
programs.qutebrowser.settings.colors.completion.category.bg = "#1d2021";
programs.qutebrowser.settings.colors.completion.category.border.top = "#1d2021";
programs.qutebrowser.settings.colors.completion.category.border.bottom = "#1d2021";
programs.qutebrowser.settings.colors.completion.item.selected.fg = "#ddc7a1";
programs.qutebrowser.settings.colors.completion.item.selected.bg = "#32361a";
@aabccd021
aabccd021 / master.nix
Last active March 26, 2025 22:30
immich distributed video transcoding
{
services.immich.enable = true;
services.immich.host = "0.0.0.0";
services.immich.openFirewall = true;
services.immich.mediaLocation = "/pool1/data1/immich/media";
services.immich.machine-learning.enable = false;
services.immich.settings.machineLearning.urls = [ "http://10.244.202.182:3003" ];
services.immich.redis.host = "0.0.0.0";
services.immich.redis.port = 6379;
services.immich.database.host = "0.0.0.0";
@aabccd021
aabccd021 / record-monitor.sh
Created March 19, 2025 00:44
record-monitor.sh
ffmpeg \
-f x11grab \
-video_size 1920x1080 \
-i :0 \
"$XDG_DOWNLOAD_DIR/$(date -u +%Y-%m-%dT%H:%M:%S%Z).mp4"
@aabccd021
aabccd021 / unar.nix
Created March 19, 2025 00:23
unar.nix
{ pkgs, lib, ... }:
let
desktopName = "unar";
mimeType = [
"application/vnd.rar"
"application/zip"
"application/x-tar"
"application/gzip"
"application/x-bzip2"
"application/x-compressed-tar"
@aabccd021
aabccd021 / open_url.nix
Created March 19, 2025 00:22
open_url.nix
{ pkgs, ... }:
let
openUrl = pkgs.writeShellScript "open_url" ''
chrome_urls=(
"https://youtube.com/"
"https://www.youtube.com/"
"https://youtu.be/"
"https://dash.cloudflare.com/"
"https://www.reddit.com/"
"https://reddit.com/"
@aabccd021
aabccd021 / sxhkd-amixr.nix
Created March 19, 2025 00:21
sxhkd alsa amixr
{
services.sxhkd.enable = true;
services.sxhkd.keybindings = {
"super + i" = "sh -c 'if [ $(ibus engine) == \"xkb:us::eng\" ]; then ibus engine mozc-jp; else ibus engine xkb:us::eng; fi'";
"super + Print" = "flameshot gui";
"XF86AudioMute" = "${pkgs.alsa-utils}/bin/amixer sset Master toggle";
"XF86AudioRaiseVolume" = "${pkgs.alsa-utils}/bin/amixer sset Master 4%+";
"XF86AudioLowerVolume" = "${pkgs.alsa-utils}/bin/amixer sset Master 4%-";
};
}
@aabccd021
aabccd021 / obs-virtual-camera.nix
Created March 18, 2025 23:19
obs virtual camera nixos
{
# uncomment this to enable virtual camera
# https://github.com/NixOS/nixpkgs/issues/251655#issuecomment-1696519655
boot.extraModulePackages = with config.boot.kernelPackages; [ v4l2loopback ];
boot.kernelModules = [
"v4l2loopback"
];
}
@aabccd021
aabccd021 / doh.nix
Created March 18, 2025 23:16
dns over https (DOH) nixos
{
networking.dhcpcd.extraConfig = "nohook resolv.conf";
networking.networkmanager.dns = "none";
networking.nameservers = [ "127.0.0.1" ];
services.dnscrypt-proxy2.enable = true;
services.dnscrypt-proxy2.settings = {
ipv6_servers = true;
ipv4_servers = true;