feat: +vibetyper

This commit is contained in:
2026-04-03 13:37:26 +02:00
parent 1aa83703f2
commit cb323f2d66
6 changed files with 27 additions and 13 deletions

8
flake.lock generated
View File

@@ -540,11 +540,11 @@
"openspec": "openspec"
},
"locked": {
"lastModified": 1775045654,
"narHash": "sha256-JAUl/bzTpolq9ULS3JLCmGA+JcZIMOhfjLaLhzEAKyo=",
"lastModified": 1775213085,
"narHash": "sha256-PwE/PkgxsX8mq5j+dGUKVlHmzX9AU/ZaitAnvkzkPMA=",
"ref": "refs/heads/master",
"rev": "df3c1f6e70788574d2471f25974f00f0d2c32f87",
"revCount": 205,
"rev": "53220ae007f21fca6247bb707fceb27ac8f665ff",
"revCount": 210,
"type": "git",
"url": "https://code.m3ta.dev/m3tam3re/nixpkgs"
},

View File

@@ -10,13 +10,6 @@
./zellij.nix
];
cli.stt-ptt = {
enable = true;
whisperPackage = pkgs.whisper-cpp-vulkan;
model = "ggml-large-v3-turbo";
notifyTimeout = 2000;
};
programs.carapace = {
enable = true;
enableFishIntegration = true;

View File

@@ -122,6 +122,7 @@
# v4l-utils
slack
telegram-desktop
vibetyper
vivaldi
vivaldi-ffmpeg-codecs
warp-terminal

View File

@@ -22,6 +22,7 @@ in {
"while ! hyprpaper-random; do sleep 0.5; done"
"wl-paste --type text --watch cliphist store" # Stores only text data
"wl-paste --type image --watch cliphist store" # Stores only image data "wl-paste -p -t text --watch clipman store -P --histpath=\"~/.local/share/clipman-primary.json\""
"vibetyper"
];
env = [
@@ -152,6 +153,9 @@ in {
"match:title ^(floating-pomodoro)$, pin on"
"match:initial_title .*streamlabs.com.*, no_blur on"
"border_color rgb(ffffff), match:xwayland 1"
# Vibetyper recording indicator
"match:class ^vibe-typer$, match:title ^Recording Indicator$, no_blur on"
"border_color rgb(ffffff), match:xwayland 1"
];
"$mainMod" = "SUPER";
@@ -165,7 +169,6 @@ in {
"$mainMod SHIFT, e, exec, $terminal -e zellij_nvim"
"$mainMod, o, exec, hyprctl dispatch setprop activewindow opaque toggle"
#"$mainMod, r, exec, hyprctl dispatch focuswindow \"initialtitle:.*alert-box.*\" && hyprctl dispatch moveactive exact 4300 102 && hyprctl dispatch focuswindow \"initialtitle:.*chat-box.*\" && hyprctl dispatch moveactive exact 4300 512"
"$mainMod, R, exec, stt-ptt start"
"$mainMod, b, exec, thunar"
"$mainMod SHIFT, B, exec, vivaldi"
"$mainMod, Escape, exec, wlogout -p layer-shell"
@@ -211,7 +214,6 @@ in {
"$mainMod, mouse_up, workspace, e-1"
];
bindr = [
"$mainMod, R, exec, stt-ptt stop"
];
bindm = [
"$mainMod, mouse:272, movewindow"

View File

@@ -5,4 +5,12 @@
keyboard.zsa.enable = true;
graphics.enable = true;
};
# udev rules for vibetyper / uinput access (virtual input device injection)
services.udev.extraRules = ''
KERNEL=="uinput", MODE="0660", GROUP="input", OPTIONS+="static_node=uinput"
KERNEL=="event*", SUBSYSTEM=="input", MODE="0660", GROUP="input"
'';
boot.kernelModules = ["uinput"];
}

View File

@@ -1,6 +1,16 @@
{pkgs, ...}: {
# CUPS Druckdienst für PDF-Druck aus n8n
# Drucker: Kyocera TASKalfa 4054ci @ 192.168.152.137
# Druckernetz (192.168.152.0/24) wird via NetBird geroutet ensure-printers
# muss warten bis NetBird verbunden ist und die Route aktiv ist.
systemd.services.ensure-printers = {
after = ["netbird.service"];
requires = ["netbird.service"];
serviceConfig.ExecStartPre = [
"${pkgs.bash}/bin/bash -c 'for i in $(seq 1 60); do ${pkgs.iproute2}/bin/ip route get 192.168.152.137 2>/dev/null | grep -q wt0 && exit 0; sleep 1; done; echo \"NetBird route to printer not available after 60s\" >&2; exit 1'"
];
};
services.printing = {
enable = true;
drivers = with pkgs; [