updated dotfiles

This commit is contained in:
liphh committed 2026-09-09 07:28:20 +02:00
1 parent 89b1e380aa
commit 893fe34a11
12 files changed
+1760 -458

No files matched your search

+2 -2
View File
@@ -1,5 +1,5 @@
{ {
"version": "0.8.2", "version": "0.9.0",
"body": "### Added\n- CLI help now points coding agents to Herdr's plain-text guide, documentation index, and built-in control skill.\n- Added Qwen Code detection for idle, working, and user-confirmation states, plus optional native session restore. (#2730, #2743)\n- Herdr now keeps the outer terminal window title in sync with the session through `ui.window_title`, so window managers and terminal tab bars show the active workspace and the host the panes actually run on. (#2627, thanks @dhh)\n- The desktop tab bar now has configurable right-aligned status entries for zoom state, hostname, date/time, literal text, and asynchronously refreshed command output.\n- Optional `keys.move_tab_previous` and `keys.move_tab_next` bindings now reorder the active tab in place, wrapping at either end. (#2561, thanks @dhh)\n- Optional `keys.resize_pane_left`, `keys.resize_pane_down`, `keys.resize_pane_up`, and `keys.resize_pane_right` bindings now resize the focused pane in one keystroke without entering resize mode. (#2558, thanks @dhh)\n- Windows clients can now use `herdr --remote` to attach to Herdr servers on Linux and macOS. (#2329)\n- Cursor Agent CLI, MastraCode, Hermes Agent, and Grok CLI integrations now install and run natively on Windows.\n- Panes can now route normal right-click gestures to mouse-reporting applications through the pane menu, `herdr pane input`, `pane.input.set`, or the `pane split --right-click pane` launch option.\n- `ui.pane_outer_borders` can now keep or hide the outside edges of split-pane borders independently from internal dividers. (#2535, thanks @dhh)\n- `theme.custom.sidebar_bg` can now give the desktop sidebar its own background without changing built-in theme defaults.\n- Settings and `ui.status_indicators = \"symbols\"` can now use distinct static shapes for blocked, working, done, idle, and unknown agent states. (#2260)\n- Navigate-mode selection rows now use a dedicated per-theme cursor color, customizable via `theme.custom.selection_bg`, so the cursor stays distinguishable from the active Space and Agent highlight.\n- Copy mode now supports `B`, `E`, and `W` motions over whitespace-delimited big words. (#2270, thanks @jplew)\n- The plugin marketplace now discovers valid manifests at repository roots and subdirectories, groups multiple plugins under each repository, and publishes their versions and exact default-branch commits.\n\n### Changed\n- Windows support is now generally available through stable releases and uses the stable update channel by default. Existing preview installs stay on preview until explicitly switched.\n- Headless servers now use a configurable 120×40 virtual terminal instead of 80×24 when no client is attached, giving newly created panes a practical default size. (#2828)\n- Desktop tab labels are now centered in their tabs, so the active-tab highlight has symmetric padding. (#2570, thanks @dhh)\n- Experimental pane graphics now support bounded named layers, acknowledged full-RGBA primary-layer direct file frames on audited local terminals, owned BGRA fallback, exact pixel mouse input, and placement-only resize replay.\n\n### Fixed\n- Unix CLI commands now exit quietly when a downstream pipe closes instead of panicking with exit 101. (#2994)\n- The terminal theme now keeps the active Space row fill visible when the Navigate cursor lands on it, in both expanded and collapsed sidebars. (#2987)\n- Busy multi-pane sessions now avoid redundant hidden-pane wakeups and full terminal-state formatting in pane-scaled paths, preventing CPU regressions from high-rate background output, scrollbars, and enhanced keyboard modes. (#2550, #2901, #2962)\n- Chinese IME commits now reach panes on macOS when the focused application requests printable key-release events. (#2924)\n- Windows now recognizes `Ctrl+1` through `Ctrl+9` keybindings instead of decoding those key records as control characters. (#2910)\n- PowerShell panes now keep their process-reported working directory synchronized with the shell's logical location. (#2879, thanks @Pimpmuckl)\n- Foreground typing no longer waits behind render cadence consumed by output from panes in hidden tabs. (#2890)\n- The Windows ARM64 installer now waits for x64 emulation to release the verified executable before activating the downloaded release. (#2916)\n- On Unix, Ctrl-click URL openers are now reaped after they exit, preventing defunct child processes from accumulating on long-running servers. (#2903)\n- Windows updates now reuse only verified local packages, avoiding security-tool download blocks while preserving checksum validation. (#2751, #2816, thanks @Pimpmuckl)\n- Herdr no longer sends the full OSC 4 palette query burst under WSL, preventing reply fragments from leaking into the shell through ConPTY. (#2440)\n- Qwen Code panes now use locale-independent terminal-title states and localized confirmation fallbacks, preventing active or blocked turns from appearing idle. (#2756)\n- Claude Code panes now recognize and stLine truncated "body": "### Added\n- Manage Local and saved SSH machines from one Herdr window, with a combined agent list, machine-scoped navigation, notifications, and automatic reconnects. Add and manage connections with `herdr machine`; a disconnected machine does not interrupt the others. (#3670)\n- Multiple clients can now view different workspaces and tabs independently. Different tabs fit their viewing clients; when clients share a tab, the last one to interact with it controls its size. (#3526)\n- Added Muse agent detection for idle, working, approval, and question states. (#2489, thanks @ohk)\n- Sidebar text and metadata tokens can now change color, boldness, and dimming based on their values, using ordered text or numeric rules. (#3693)\n- Custom themes can now define separate light and dark color overrides when automatic theme switching is enabled. (#2324, thanks @aneym)\n- `ui.pane_borders = \"always\"` can now frame a single pane when outer borders are enabled. `\"auto\"` keeps split-only borders, `\"off\"` hides them, and existing boolean values keep working. (#3234, thanks @rsmdt)\n\n### Changed\n- Client updates can now leave compatible servers and their running agents untouched. Missing server features disable only the affected action instead of preventing connection. Servers older than endpoint generation 1 need a one-time upgrade. Replacing a remote server asks before stopping its pane processes, with No as the default answer; experimental handoff remains opt-in. (#3509)\n- The terminal UI now runs in each client, reducing redraw work in busy multi-client sessions and keeping themes, menus, copy mode, and other presentation settings local to the viewing machine. (#3487)\n- Idle terminal scrollback now uses less memory without reducing retained history or changing reads and resizing. (#3556)\n- Pane images and the graphics API are now enabled by default in compatible terminals. Set `terminal.kitty_graphics = false` to disable them; the old `experimental.kitty_graphics` setting remains accepted.\n- Closing a primary workspace with open worktree workspaces now requires explicit group intent: `workspace close --group` or `workspace.close` with `close_group: true`. Otherwise the whole group stays open. (#2874)\n- New lifecycle event subscriptions now start with live events rather than replaying retained history. API clients should subscribe before taking their initial snapshot to avoid missing changes. (#1270)\n\n### Fixed\n- Mouse selections now stay visible and copyable while terminal output continues, including with automatic copying disabled. Ctrl+C and Cmd+C copy a selection even before a delayed mouse release, and a failed copy no longer interrupts the agent. Selection highlights also remain visible when host colors are unavailable. (#3100, #2708, #3684, thanks @moret and @Pimpmuckl)\n- Wayland clipboard copies no longer freeze Herdr while `wl-copy` serves the selection. (#3014)\n- Live handoff now preserves mouse forwarding for running pane applications. (#3000, thanks @xkrogen)\n- Interrupted pane exits during host shutdown no longer replace the saved session with an empty session or a new default workspace. (#3415)\n- SSH clients whose terminal disappears now detach instead of resizing running panes to a fallback size and triggering expensive history reflow. (#3519)\n- Focusing a workspace now scrolls the sidebar to keep it visible. (#3554)\n- Removing a background worktree workspace no longer changes focus to its parent. Windows worktrees can also be removed while their agent panes are running, without a replacement shell locking the checkout again. (#3098, #3532)\n- Worktree commands can now trust a verified repository for one request with `--trust-repository`, including accessible Windows repositories owned by another SID, without changing global Git configuration. (#3044)\n- Oversized Kitty images no longer prevent smaller images from appearing, and image replacements no longer redraw or disappear one row at a time. Direct graphics stay bound to the client that owns them. (#3033, #3166, #3549, thanks @kataokatsuki)\n- Pixel mouse coordinates remain correct when pane applications reassert SGR mouse reporting. (#3295)\n- Prefix bindings such as `prefix+|` now recognize characters produced by macOS Option and custom keyboard layouts, while exact chords keep priority. Arrow navigation also works when terminals such as Alacritty attach text to special-key reports. (#3079, #3328, thanks @vlcinsky)\n- Direct terminal attaches now honor `ui.mouse_capture` and preserve multiline pastes as one paste instead of submitting each line separately. (#2992, #3054)\n- `agent prompt` now reliably sends the prompt and Enter before reporting successful submission. With `--wait`, prompts sent to a non-working agent require observed working or blocked activity, so unrelated state changes cannot complete the wait. Pending submissions fail cleanly if the terminal exits. (#3506, #3685)\n- Long Codex prompts on WindowLine truncated
"show_on_startup": true "show_on_startup": true
} }
@@ -3,47 +3,11 @@
"workspaces": [ "workspaces": [
{ {
"tabs": [ "tabs": [
{
"panes": {
"1": {
"ansi": "\u001b[0m\u001b[38;5;5march liph \u001b[0m\u001b[38;5;4m~\u001b[0m\r\n\u001b[0m\u001b[38;5;5m❯\u001b[0m ",
"lines": 2
}
}
}
]
},
{
"tabs": [
{
"panes": {
"3": {
"ansi": "\u001b[0m\u001b[38;5;6m~\u001b[0m\r\n \u001b[0m\u001b[38;5;4m\u001b[0m\u001b[7m\u001b[38;5;4m liph \u001b[0m\u001b[38;5;4m\u001b[0m\u001b[38;5;7m│\u001b[0m\u001b[38;5;4m\u001b[0m\u001b[7m\u001b[38;5;4m .atuin \u001b[0m\u001b[38;5;4m\u001b[0m\u001b[38;5;7m│\u001b[0m\u001b[38;5;4m \u001b[0m\u001b[38;5;6m/home/liph/\u001b[0m\u001b[1m\u001b[38;5;4m.atuin\u001b[0m\r\n \u001b[0m\u001b[38;5;7m│\u001b[0m\u001b[38;5;4m \u001b[0m\u001b[38;2;3;169;244m \u001b[0m\u001b[38;5;4m.cache \u001b[0m\u001b[38;5;7m│\u001b[0m\u001b[1m\u001b[38;5;8m└── \u001b[0m\u001b[38;5;4m \u001b[0m\u001b[1m\u001b[38;5;4mlogs\u001b[0m\r\n \u001b[0m\u001b[38;5;7m│\u001b[0m\u001b[38;5;4m \u001b[0m\u001b[38;2;3;169;244m \u001b[0m\u001b[38;5;4m.cargo \u001b[0m\u001b[38;5;7m│\u001b[0m\u001b[1m\u001b[38;5;8m ├── \u001b[0m search.log.2026-09-03\r\n \u001b[0m\u001b[38;5;7m│\u001b[0m\u001b[38;5;4m \u001b[0m\u001b[38;2;255;152;0m \u001b[0m\u001b[38;5;4m.config \u001b[0m\u001b[38;5;7m│\u001b[0m\u001b[1m\u001b[38;5;8m ├── \u001b[0m search.log.2026-09-04\r\n \u001b[0m\u001b[38;5;7m│\u001b[0m\u001b[38;5;4m \u001b[0m\u001b[38;2;3;169;244m \u001b[0m\u001b[38;5;4m.gnupg \u001b[0m\u001b[38;5;7m│\u001b[0m\u001b[1m\u001b[38;5;8m ├── \u001b[0m search.log.2026-09-06\r\n \u001b[0m\u001b[38;5;7m│\u001b[0m\u001b[38;5;4m \u001b[0m\u001b[38;2;3;169;244m \u001b[0m\u001b[38;5;4m.local \u001b[0m\u001b[38;5;7m│\u001b[0m\u001b[1m\u001b[38;5;8m └── \u001b[0m search.log.2026-09-07\r\n \u001b[0m\u001b[38;5;7m│\u001b[0m\u001b[38;5;4m \u001b[0m\u001b[38;2;3;169;244m \u001b[0m\u001b[38;5;4m.locale \u001b[0m\u001b[38;5;7m│\u001b[0m\r\n \u001b[0m\u001b[38;5;7m│\u001b[0m\u001b[38;5;4m \u001b[0m\u001b[38;2;3;169;244m \u001b[0m\u001b[38;5;4m.mozilla \u001b[0m\u001b[38;5;7m│\u001b[0m\r\n \u001b[0m\u001b[38;5;7m│\u001b[0m\u001b[38;5;4m \u001b[0m\u001b[38;2;3;169;244m \u001b[0m\u001b[38;5;4m.npm \u001b[0m\u001b[38;5;7m│\u001b[0m\r\n \u001b[0m\u001b[38;5;7m│\u001b[0m\u001b[38;5;4m \u001b[0m\u001b[38;2;158;158;158m \u001b[0m\u001b[38;5;4m.pi\u001b[0m\u001b[3m\u001b[38;5;4m -> dotfiles/pi/.pi\u001b[0m\u001b[38;5;4m \u001b[0m\u001b[38;5;7m│\u001b[0m\r\n \u001b[0m\u001b[38;5;7m│\u001b[0m\u001b[38;5;4m \u001b[0m\u001b[38;2;3;169;244m \u001b[0m\u001b[38;5;4m.pyenv \u001b[0m\u001b[38;5;7m│\u001b[0m\r\n \u001b[0m\u001b[38;5;7m│\u001b[0m\u001b[38;5;4m \u001b[0m\u001b[38;2;3;169;244m \u001b[0m\u001b[38;5;4m.rustup \u001b[0m\u001b[38;5;7m│\u001b[0m\r\n \u001b[0m\u001b[38;5;7m│\u001b[0m\u001b[38;5;4m \u001b[0m\u001b[38;2;158;158;158m \u001b[0m\u001b[38;5;4m.ssh\u001b[0m\u001b[3m\u001b[38;5;4m -> dotfiles/ssh/.\u001b[0m\u001b[38;5;4m… \u001b[0m\u001b[38;5;7m│\u001b[0m\r\n \u001b[0m\u001b[38;5;7m│\u001b[0m\u001b[38;5;4m \u001b[0m\u001b[38;2;158;158;158m \u001b[0m\u001b[38;5;4maerc\u001b[0m\u001b[3m\u001b[38;5;4m -> dotfiles/aerc/\u001b[0m\u001b[38;5;4m… \u001b[0m\u001b[38;5;7m│\u001b[0m\r\n \u001b[0m\u001b[38;5;7m│\u001b[0m\u001b[38;5;4m \u001b[0m\u001b[38;2;158;158;158m \u001b[0m\u001b[38;5;4maerc_back\u001b[0m\u001b[3m\u001b[38;5;4m -> dotfiles/\u001b[0m\u001b[38;5;4m… \u001b[0m\u001b[38;5;7m│\u001b[0m\r\n \u001b[0m\u001b[38;5;7m│\u001b[0m\u001b[38;5;4m \u001b[0m\u001b[38;2;158;158;158m \u001b[0m\u001b[38;5;4mcloud\u001b[0m\u001b[3m\u001b[38;5;4m -> /mnt/tank/clo\u001b[0m\u001b[38;5;4m… \u001b[0m\u001b[38;5;7m│\u001b[0m\r\n \u001b[0m\u001b[38;5;7m│\u001b[0m\u001b[38;5;4m \u001b[0m\u001b[38;2;158;158;158m \u001b[0m\u001b[38;5;4mcode\u001b[0m\u001b[3m\u001b[38;5;4m -> /mnt/tank/code\u001b[0m\u001b[38;5;4m \u001b[0m\u001b[38;5;7m│\u001b[0m\r\n \u001b[0m\u001b[38;5;7m│\u001b[0m\u001b[38;5;4m \u001b[0m\u001b[38;2;0;188;212m \u001b[0m\u001b[38;5;4mDocuments \u001b[0m\u001b[38;5;7m│\u001b[0m\r\n \u001b[0m\u001b[38;5;7m│\u001b[0m\u001b[38;5;4m \u001b[0m\u001b[38;2;3;169;244m \u001b[0m\u001b[38;5;4mdotfiles \u001b[0m\u001b[38;5;7m│\u001b[0m\r\n \u001b[0m\u001b[38;5;7m│\u001b[0m\u001b[38;5;4m \u001b[0m\u001b[38;2;0;188;212m \u001b[0m\u001b[38;5;4mDownloads \u001b[0m\u001b[38;5;7m│\u001b[0m\r\n \u001b[0m\u001b[38;5;7m│\u001b[0m\u001b[38;5;4m \u001b[0m\u001b[38;2;158;158;158m \u001b[0m\u001b[38;5;4mpaperless\u001b[0m\u001b[3m\u001b[38;5;4m -> /mnt/tank\u001b[0m\u001b[38;5;4m… \u001b[0m\u001b[38;5;7m│\u001b[0m\r\n \u001b[0m\u001b[38;5;7m│ \u001b[0m\u001b[38;2;137;22Line truncated
"lines": 35
},
"2": {
"ansi": "neo\r\n\u001b[0m\u001b[38;5;5m❯ \u001b[0m\u001b[38;5;2mneo\u001b[0m\r\n\u001b[0m\u001b[1m\u001b[38;5;6m -` \u001b[0m \r\n\u001b[0m\u001b[1m\u001b[38;5;6m .o+` \u001b[0m \r\n\u001b[0m\u001b[1m\u001b[38;5;6m `ooo/ \u001b[0m \r\n\u001b[0m\u001b[1m\u001b[38;5;6m `+oooo: \u001b[0m \r\n\u001b[0m\u001b[1m\u001b[38;5;6m `+oooooo: \u001b[0m \r\n\u001b[0m\u001b[1m\u001b[38;5;6m -+oooooo+: \u001b[0m \r\n\u001b[0m\u001b[1m\u001b[38;5;6m `/:-:++oooo+: \u001b[0m \r\n\u001b[0m\u001b[1m\u001b[38;5;6m `/++++/+++++++: \u001b[0m \r\n\u001b[0m\u001b[1m\u001b[38;5;6m `/++++++++++++++: \u001b[0m \r\n\u001b[0m\u001b[1m\u001b[38;5;6m `/+++ooooooooooooo/` \u001b[0m \r\n\u001b[0m\u001b[1m\u001b[38;5;6m ./ooosssso++osssssso+` \u001b[0m \r\n\u001b[0m\u001b[1m\u001b[38;5;6m .oossssso-````/ossssss+` \u001b[0m \r\n\u001b[0m\u001b[1m\u001b[38;5;6m -osssssso. :ssssssso. \u001b[0m \r\n\u001b[0m\u001b[1m\u001b[38;5;6m :osssssss/ osssso+++.\u001b[0m \r\n\u001b[0m\u001b[1m\u001b[38;5;6m /ossssssss/ +ssssooo/-\u001b[0m \r\n\u001b[0m\u001b[1m\u001b[38;5;6m `/ossssso+/:- -:/+osssso\u001b[0m \r\n\u001b[0m\u001b[1m\u001b[38;5;6m `+sso+:-` `.-/+o:\u001b[0m\r\n\u001b[0m\u001b[1m\u001b[38;5;6m `++:. `\u001b[0m\u001b[38;5;7m\u001b[48;5;7m \u001b[0m\r\n\u001b[0m\u001b[1m\u001b[38;5;6m .` \u001b[0m\u001b[38;5;15m\u001b[48;5;15m \u001b[0m\r\n\r\n\r\n\r\n\u001b[0m\u001b[38;5;5march liph \u001b[0m\u001b[38;5;4m~\u001b[0m\r\n\u001b[0m\u001b[38;5;5m❯\u001b[0m ",
"lines": 26
}
}
},
{
"panes": {
"5": {
"ansi": "mc\r\n\u001b[0m\u001b[38;5;5m❯ \u001b[0m\u001b[1m\u001b[38;5;1mmc\u001b[0m\r\nzsh: command not found: musikcube\r\n\r\n\u001b[0m\u001b[38;5;5march liph \u001b[0m\u001b[38;5;4m~\u001b[0m\r\n\u001b[0m\u001b[38;5;1m❯\u001b[0m ",
"lines": 6
},
"4": {
"ansi": "\u001b[0m\u001b[38;5;5march liph \u001b[0m\u001b[38;5;4m~\u001b[0m\r\n\u001b[0m\u001b[38;5;5m❯\u001b[0m ",
"lines": 2
}
}
},
{ {
"panes": { "panes": {
"6": { "6": {
"ansi": "\u001b[0m\u001b[1m\u001b[38;2;234;154;151m\u001b[48;2;35;33;54m phil \u001b[0m\u001b[48;2;35;33;54m spam proton \u001b[0m\r\n\u001b[0m\u001b[38;2;110;106;134m [..] \u001b[0m\u001b[1m\u001b[38;2;35;33;54m\u001b[48;2;35;33;54m│\u001b[0m\u001b[38;2;110;106;134m [..] \u001b[0m\r\n\u001b[0m\u001b[38;2;110;106;134m \u001b[0m\u001b[1m\u001b[38;2;35;33;54m\u001b[48;2;35;33;54m│\u001b[0m\u001b[38;2;110;106;134m \u001b[0m\r\n\u001b[0m\u001b[38;2;110;106;134m \u001b[0m\u001b[1m\u001b[38;2;35;33;54m\u001b[48;2;35;33;54m│\u001b[0m\u001b[38;2;110;106;134m \u001b[0m\r\n\u001b[0m\u001b[38;2;110;106;134m \u001b[0m\u001b[1m\u001b[38;2;35;33;54m\u001b[48;2;35;33;54m│\u001b[0m\u001b[38;2;110;106;134m \u001b[0m\r\n\u001b[0m\u001b[38;2;110;106;134m \u001b[0m\u001b[1m\u001b[38;2;35;33;54m\u001b[48;2;35;33;54m│\u001b[0m\u001b[38;2;110;106;134m \u001b[0m\r\n\u001b[0m\u001b[38;2;110;106;134m \u001b[0m\u001b[1m\u001b[38;2;35;33;54m\u001b[48;2;35;33;54m│\u001b[0m\u001b[38;2;110;106;134m \u001b[0m\r\n\u001b[0m\u001b[38;2;110;106;134m \u001b[0m\u001b[1m\u001b[38;2;35;33;54m\u001b[48;2;35;33;54m│\u001b[0m\u001b[38;2;110;106;134m \u001b[0m\r\n\u001b[0m\u001b[38;2;110;106;134m \u001b[0m\u001b[1m\u001b[38;2;35;33;54m\u001b[48;2;35;33;54m│\u001b[0m\u001b[38;2;110;106;134m \u001b[0m\r\n\u001b[0m\u001b[38;2;110;106;134m \u001b[0m\u001b[1m\u001b[38;2;35;33;54m\u001b[48;2;35;33;54m│\u001b[0m\u001b[38;2;110;106;134m \u001b[0m\r\n\u001b[0m\u001b[38;2;110;106;134m \u001b[0m\u001b[1m\u001b[38;2;35;33;54m\u001b[48;2;35;33;54m│\u001b[0m\u001b[38;2;110;106;134m \u001b[0m\r\n\u001b[0m\u001b[38;2;110;106;134m \u001b[0m\u001b[1m\u001b[38;2;35;33;54m\u001b[48;2;35;33;54m│\u001b[0m\u001b[38;2;110;106;134m \u001b[0m\r\n\u001b[0m\u001b[38;2;110;106;134m \u001b[0m\u001b[1m\u001b[38;2;35;33;54m\u001b[48;2;35;33;54m│\u001b[0m\u001b[38;2;110;106;134m \u001b[0m\r\n\u001b[0m\u001b[38;2;110;106;134m \u001b[0m\u001b[1m\u001b[38;2;35;33;54m\u001b[48;2;35;33;54m│\u001b[0m\u001b[38;2;110;106;134m \u001b[0m\r\n\u001b[0m\u001b[38;2;110;106;134m \u001b[0m\u001b[1m\u001b[38;2;35;33;54m\u001b[48;2;35;33;54m│\u001b[0m\u001b[38;2;110;106;134m \u001b[0m\r\n\u001b[0m\u001b[38;2;110;106;134m \u001b[0m\u001b[1m\u001b[38;2;35;33;54m\u001b[48;2;35;33;54m│\u001b[0m\u001b[38;2;110;106;134m Line truncated "ansi": "\u001b[0m\u001b[38;5;5march liph \u001b[0m\u001b[38;5;4m~\u001b[0m\r\n\u001b[0m\u001b[38;5;5m❯\u001b[0m ",
"lines": 37 "lines": 2
} }
} }
} }
@@ -54,8 +18,48 @@
{ {
"panes": { "panes": {
"7": { "7": {
"ansi": "yazi\r\n\u001b[0m\u001b[38;5;5m❯ \u001b[0m\u001b[38;5;2myazi\u001b[0m\r\n\r\n\u001b[0m\u001b[38;5;5march liph \u001b[0m\u001b[38;5;4m~/dotfiles\u001b[0m\u001b[38;5;3m main* \u001b[0m\r\n\u001b[0m\u001b[38;5;5m❯\u001b[0m ", "ansi": "neo\r\n\u001b[0m\u001b[38;5;5m❯ \u001b[0m\u001b[38;5;2mneo\u001b[0m\r\n\u001b[0m\u001b[1m\u001b[38;5;6m -` liph\u001b[0m@\u001b[0m\u001b[1m\u001b[38;5;6march\u001b[0m \r\n\u001b[0m\u001b[1m\u001b[38;5;6m .o+` \u001b[0m--------- \r\n\u001b[0m\u001b[1m\u001b[38;5;6m `ooo/ OS\u001b[0m: Arch Linux x86_64 \r\n\u001b[0m\u001b[1m\u001b[38;5;6m `+oooo: Host\u001b[0m: 20KS006FMZ ThinkPad E580 \r\n\u001b[0m\u001b[1m\u001b[38;5;6m `+oooooo: Kernel\u001b[0m: 6.18.50-1-lts \r\n\u001b[0m\u001b[1m\u001b[38;5;6m -+oooooo+: Uptime\u001b[0m: 7 hours, 43 mins \r\n\u001b[0m\u001b[1m\u001b[38;5;6m `/:-:++oooo+: Packages\u001b[0m: 987 (pacman) \r\n\u001b[0m\u001b[1m\u001b[38;5;6m `/++++/+++++++: Shell\u001b[0m: zsh 5.9.2 \r\n\u001b[0m\u001b[1m\u001b[38;5;6m `/++++++++++++++: Resolution\u001b[0m: 1920x1080 \r\n\u001b[0m\u001b[1m\u001b[38;5;6m `/+++ooooooooooooo/` DE\u001b[0m: Niri \r\n\u001b[0m\u001b[1m\u001b[38;5;6m ./ooosssso++osssssso+` Terminal\u001b[0m: WezTerm \r\n\u001b[0m\u001b[1m\u001b[38;5;6m .oossssso-````/ossssss+` CPU\u001b[0m: Intel i7-8550U (8) @ 4.000GHz \r\n\u001b[0m\u001b[1m\u001b[38;5;6m -osssssso. :ssssssso. GPU\u001b[0m: Intel Kaby Lake-R GT2 [UHD Graphics 620 \r\n\u001b[0m\u001b[1m\u001b[38;5;6m :osssssss/ osssso+++. GPU\u001b[0m: AMD ATI Radeon 540/540X/550/550X / RX 5 \r\n\u001b[0m\u001b[1m\u001b[38;5;6m /ossssssss/ +ssssooo/- Memory\u001b[0m: 4398MiB / 15752MiB \r\n\u001b[0m\u001b[1m\u001b[38;5;6m `/ossssso+/:- -:/+osssso+-\u001b[0m\r\n\u001b[0m\u001b[1m\u001b[38;5;6m `+sso+:-` `.-/+oso: \u001b[0m\u001b[38;5;0m\u001b[48;5;0m \u001b[0m\u001b[38;5;1m\u001b[48;5;1m \u001b[0m\u001b[38;5;2m\u001b[48;5;2m \u001b[0m\u001b[38;5;3m\u001b[48;5;3m \u001b[0m\u001b[38;5;4m\u001b[48;5;4m \u001b[0m\u001b[38;5;5m\u001b[48;5;5m \u001b[0m\u001b[38;5;6m\u001b[48;5;6m \u001b[0m\u001b[38;5;7m\u001b[48;5;7m \u001b[0m\r\n\u001b[0m\u001b[1m\u001b[38;5;6m `++:. `-/+/ \u001b[0m\u001b[38;5;8m\u001b[48;5;8m \u001b[0m\u001b[38;5;9m\u001b[48;5;9m \u001b[0m\u001b[38;5;10m\u001b[48;5;10m \u001b[0m\u001b[38;5;11m\u001b[48;5;11m \u001b[0m\u001b[38;5;12m\u001b[48;5;12m \u001b[0m\u001b[38;5;13m\u001b[48;5;13m \u001b[0m\u001b[38;5;14m\u001b[48;5;14m \u001b[0m\u001b[38;5;15m\u001b[48;5;15m \u001b[0m\r\n\u001b[0m\u001b[1m\u001b[38;5;6m .` `/\u001b[0m\r\n\r\n\r\n\u001b[0m\u001b[38;5;5march liph \u001b[0m\u001b[38;5;4m~\u001b[0m\r\n\u001b[0m\u001b[38;5;5m❯\u001b[0m ",
"lines": 5 "lines": 25
},
"8": {
"ansi": "\u001b[0m\u001b[38;5;6m~\u001b[0m\r\n \u001b[0m\u001b[38;5;4m\u001b[0m\u001b[7m\u001b[38;5;4m liph \u001b[0m\u001b[38;5;4m\u001b[0m\u001b[38;5;7m│ \u001b[0mLoading... \u001b[0m\u001b[38;5;7m│\u001b[0m\r\n \u001b[0m\u001b[38;5;7m│ │\u001b[0m\r\n \u001b[0m\u001b[38;5;7m│ │\u001b[0m\r\n \u001b[0m\u001b[38;5;7m│ │\u001b[0m\r\n \u001b[0m\u001b[38;5;7m│ │\u001b[0m\r\n \u001b[0m\u001b[38;5;7m│ │\u001b[0m\r\n \u001b[0m\u001b[38;5;7m│ │\u001b[0m\r\n \u001b[0m\u001b[38;5;7m│ │\u001b[0m\r\n \u001b[0m\u001b[38;5;7m│ │\u001b[0m\r\n \u001b[0m\u001b[38;5;7m│ │\u001b[0m\r\n \u001b[0m\u001b[38;5;7m│ │\u001b[0m\r\n \u001b[0m\u001b[38;5;7m│ │\u001b[0m\r\n \u001b[0m\u001b[38;5;7m│ │\u001b[0m\r\n \u001b[0m\u001b[38;5;7m│ │\u001b[0m\r\n \u001b[0m\u001b[38;5;7m│ │\u001b[0m\r\n \u001b[0m\u001b[38;5;7m│ │\u001b[0m\r\n \u001b[0m\u001b[38;5;7m│ │\u001b[0m\r\n \u001b[0m\u001b[38;5;7m│ │\u001b[0m\r\n \u001b[0m\u001b[38;5;7m│ │\u001b[0m\r\n \u001b[0m\u001b[38;5;7m│ │\u001b[0m\r\n \u001b[0m\u001b[38;5;7m│ │\u001b[0m\r\n \u001b[0m\u001b[38;5;7m│ │\u001b[0m\r\n \u001b[0m\u001b[38;5;7m│ │\u001b[0m\r\n \u001b[0m\u001b[38;5;7m│ │\u001b[0m\r\n \u001b[0m\u001b[38;5;7m│ │\u001b[0m\r\n \u001b[0m\u001b[38;5;7m│ │\u001b[0m\r\n \u001b[0m\u001b[38;5;7m│ │\u001b[0m\r\n \u001b[0m\u001b[38;5;7m│ │\u001b[0m\r\n \u001b[0m\u001b[38;5;7m│ │\u001b[0m\r\n \u001b[0m\u001b[38;5;7m│ │\u001b[0m\r\n \u001b[0m\u001b[38;5;7m│ │\u001b[0m\r\n \u001b[0m\u001b[38;5;7m│ │\u001b[0m\r\n \u001b[0m\u001b[38;5;7m│ │\u001b[0m\r\n\u001b[0m\u001b[38;2;152;195;121m\u001b[0m\u001b[38;5;0m\u001b[48;2;152;195;121m NORMAL \u001b[0m\u001b[38;2;152;195;121m\u001b[48;2;90;96;120m 0B \u001b[0m\u001b[38;2;90;96;120m \u001b[0m\u001b[38;2;152;195;121mEmpty dir\u001b[0m\u001b[38;2;90;96;120m  \u001b[0m\u001b[38;5;8m 0 󰆐 0 \u001b[0m\u001b[38;2;90;96;120m \u001b[0m\u001b[38;2;152;195;121m\u001b[48;2;90;96;120m Top \u001b[0m\u001b[38;5;0m\u001b[48;2;152;195;121m 0/0 \u001b[0m\u001b[38;2;152;195;121m\u001b[0m",
"lines": 35
}
}
},
{
"panes": {
"10": {
"ansi": "mc\r\n\u001b[0m\u001b[38;5;5m❯ \u001b[0m\u001b[1m\u001b[38;5;1mmc\u001b[0m\r\nzsh: command not found: musikcube\r\n\r\n\u001b[0m\u001b[38;5;5march liph \u001b[0m\u001b[38;5;4m~\u001b[0m\r\n\u001b[0m\u001b[38;5;1m❯\u001b[0m ",
"lines": 6
},
"9": {
"ansi": "\u001b[0m\u001b[38;5;5march liph \u001b[0m\u001b[38;5;4m~\u001b[0m\r\n\u001b[0m\u001b[38;5;5m❯\u001b[0m ",
"lines": 2
}
}
},
{
"panes": {
"11": {
"ansi": "aerc\r\n\u001b[0m\u001b[38;5;5m❯ \u001b[0m\u001b[38;5;2maerc\u001b[0m\r\n\u001b[0m\u001b[1m\u001b[38;5;3mFound existing alias for \u001b[0m\u001b[1m\u001b[38;5;5m\"aerc\"\u001b[0m\u001b[1m\u001b[38;5;3m. You should use: \u001b[0m\u001b[1m\u001b[38;5;5m\"a\"\u001b[0m",
"lines": 3
}
}
}
]
},
{
"tabs": [
{
"panes": {
"12": {
"ansi": "\u001b[0m\u001b[38;5;6m~/dotfiles\u001b[0m\r\n \u001b[0m\u001b[38;5;7m│\u001b[0m\u001b[38;5;4m\u001b[0m\u001b[7m\u001b[38;5;4m .git \u001b[0m\u001b[38;5;4m\u001b[0m\u001b[38;5;7m│ \u001b[0mNo items\r\n \u001b[0m\u001b[38;5;7m│\u001b[0m\u001b[38;5;4m \u001b[0m\u001b[38;2;3;169;244m \u001b[0m\u001b[38;5;4maerc \u001b[0m\u001b[38;5;7m│\u001b[0m\r\n \u001b[0m\u001b[38;5;7m│\u001b[0m\u001b[38;5;4m \u001b[0m\u001b[38;2;3;169;244m \u001b[0m\u001b[38;5;4mansible \u001b[0m\u001b[38;5;7m│\u001b[0m\r\n \u001b[0m\u001b[38;5;7m│\u001b[0m\u001b[38;5;4m \u001b[0m\u001b[38;2;3;169;244m \u001b[0m\u001b[38;5;4matuin \u001b[0m\u001b[38;5;7m│\u001b[0m\r\n \u001b[0m\u001b[38;5;7m│\u001b[0m\u001b[38;5;4m \u001b[0m\u001b[38;2;3;169;244m \u001b[0m\u001b[38;5;4mbackgrounds \u001b[0m\u001b[38;5;7m│\u001b[0m\r\n \u001b[0m\u001b[38;5;7m│\u001b[0m\u001b[38;5;4m \u001b[0m\u001b[38;2;3;169;244m \u001b[0m\u001b[38;5;4mgarmin \u001b[0m\u001b[38;5;7m│\u001b[0m\r\n \u001b[0m\u001b[38;5;7m│\u001b[0m\u001b[38;5;4m \u001b[0m\u001b[38;2;3;169;244m \u001b[0m\u001b[38;5;4mghostty \u001b[0m\u001b[38;5;7m│\u001b[0m\r\n \u001b[0m\u001b[38;5;7m│\u001b[0m\u001b[38;5;4m \u001b[0m\u001b[38;2;3;169;244m \u001b[0m\u001b[38;5;4mherdr \u001b[0m\u001b[38;5;3m \u001b[0m\u001b[38;5;4m \u001b[0m\u001b[38;5;7m│\u001b[0m\r\n \u001b[0m\u001b[38;5;7m│\u001b[0m\u001b[38;5;4m \u001b[0m\u001b[38;2;3;169;244m \u001b[0m\u001b[38;5;4mherdr_1 \u001b[0m\u001b[38;5;7m│\u001b[0m\r\n \u001b[0m\u001b[38;5;7m│\u001b[0m\u001b[38;5;4m \u001b[0m\u001b[38;2;3;169;244m \u001b[0m\u001b[38;5;4mhypr \u001b[0m\u001b[38;5;7m│\u001b[0m\r\n \u001b[0m\u001b[38;5;7m│\u001b[0m\u001b[38;5;4m \u001b[0m\u001b[38;2;3;169;244m \u001b[0m\u001b[38;5;4mkanata \u001b[0m\u001b[38;5;7m│\u001b[0m\r\n \u001b[0m\u001b[38;5;7m│\u001b[0m\u001b[38;5;4m \u001b[0m\u001b[38;2;3;169;244m \u001b[0m\u001b[38;5;4mkitty \u001b[0m\u001b[38;5;7m│\u001b[0m\r\n \u001b[0m\u001b[38;5;7m│\u001b[0m\u001b[38;5;4m \u001b[0m\u001b[38;2;3;169;244m \u001b[0m\u001b[38;5;4mniri \u001b[0m\u001b[38;5;5m? \u001b[0m\u001b[38;5;4m \u001b[0m\u001b[38;5;7m│\u001b[0m\r\n \u001b[0m\u001b[38;5;7m│\u001b[0m\u001b[38;5;4m \u001b[0m\u001b[38;2;3;169;244m \u001b[0m\u001b[38;5;4mnushell \u001b[0m\u001b[38;5;7m│\u001b[0m\r\n \u001b[0m\u001b[38;5;7m│\u001b[0m\u001b[38;5;4m \u001b[0m\u001b[38;2;3;169;244m \u001b[0m\u001b[38;5;4mnvim \u001b[0m\u001b[38;5;7m│\u001b[0m\r\n \u001b[0m\u001b[38;5;7m│\u001b[0m\u001b[38;5;4m \u001b[0m\u001b[38;2;3;169;244m \u001b[0m\u001b[38;5;4mohmyposh \u001b[0m\u001b[38;5;7m│\u001b[0m\r\n \u001b[0m\u001b[38;5;7m│\u001b[0m\u001b[38;5;4m \u001b[0m\u001b[38;2;3;169;244m \u001b[0m\u001b[38;5;4mopencode \u001b[0m\u001b[38;5;7m│\u001b[0m\r\n \u001b[0m\u001b[38;5;7m│\u001b[0m\u001b[38;5;4m \u001b[0m\u001b[38;2;3;169;244m \u001b[0m\u001b[38;5;4mparu \u001b[0m\u001b[38;5;3m \u001b[0m\u001b[38;5;4m \u001b[0m\u001b[38;5;7m│\u001b[0m\r\n \u001b[0m\u001b[38;5;7m│\u001b[0m\u001b[38;5;4m \u001b[0m\u001b[38;2;3;169;244m \u001b[0m\u001b[38;5;4mpi \u001b[0m\u001b[38;5;3m \u001b[0m\u001b[38;5;4m \u001b[0m\u001b[38;5;7m│\u001b[0m\r\n \u001b[0m\u001b[38;5;7m│\u001b[0m\u001b[38;5;4m \u001b[0m\u001b[38;2;3;169;244m \u001b[0m\u001b[38;5;4mscripts \u001b[0m\u001b[38;5;7m│\u001b[0m\r\n \u001b[0m\u001b[38;5;7m│\u001b[0m\u001b[38;5;4m \u001b[0m\u001b[38;2;3;169;244m \u001b[0m\u001b[38;5;4mssh \u001b[0m\u001b[38;5;7m│\u001b[0m\r\n \u001b[0m\u001b[38;5;7m│\u001b[0m\u001b[38;5;4m \u001b[0m\u001b[38;2;3;169;244m \u001b[0m\u001b[38;5;4mstarship \u001b[0m\u001b[38;5;7m│\u001b[0m\r\n \u001b[0m\u001b[38;5;7m│\u001b[0m\u001b[38;5;4m \u001b[0m\u001b[38;2;3;169;24Line truncated
"lines": 35
},
"13": {
"ansi": "╭─[1]─Status──────────────────────────╮╮\r\n│\u001b[0m\u001b[38;5;2m✓\u001b[0m dotfiles → main │▐\r\n╰─────────────────────────────────────╯│\r\n\u001b[0m\u001b[1m\u001b[38;5;2m╭─[2]─Files \u001b[0m- Worktrees - Submodules\u001b[0m\u001b[1m\u001b[38;5;2m──╮\u001b[0m│\r\n\u001b[0m\u001b[1m\u001b[38;5;2m│\u001b[0m\u001b[1m\u001b[48;5;4m▼ / \u001b[0m\u001b[1m\u001b[38;5;2m▐\u001b[0m│\r\n\u001b[0m\u001b[1m\u001b[38;5;2m│\u001b[0m ▼ herdr/.config/herdr \u001b[0m\u001b[1m\u001b[38;5;2m▐\u001b[0m│\r\n\u001b[0m\u001b[1m\u001b[38;5;2m│\u001b[0m \u001b[0m\u001b[38;5;1mM\u001b[0m release-notes.json \u001b[0m\u001b[1m\u001b[38;5;2m▐\u001b[0m│\r\n\u001b[0m\u001b[1m\u001b[38;5;2m│\u001b[0m ▼ sessions/home \u001b[0m\u001b[1m\u001b[38;5;2m▐\u001b[0m│\r\n\u001b[0m\u001b[1m\u001b[38;5;2m│\u001b[0m \u001b[0m\u001b[38;5;1mM\u001b[0m session-history.json \u001b[0m\u001b[1m\u001b[38;5;2m▐\u001b[0m│\r\n\u001b[0m\u001b[1m\u001b[38;5;2m│\u001b[0m \u001b[0m\u001b[38;5;1mM\u001b[0m session.json \u001b[0m\u001b[1m\u001b[38;5;2m▐\u001b[0m│\r\n\u001b[0m\u001b[1m\u001b[38;5;2m│\u001b[0m ▼ niri/.config/niri \u001b[0m\u001b[1m\u001b[38;5;2m▐\u001b[0m│\r\n\u001b[0m\u001b[1m\u001b[38;5;2m│\u001b[0m \u001b[0m\u001b[38;5;1mM\u001b[0m config.kdl \u001b[0m\u001b[1m\u001b[38;5;2m│\u001b[0m│\r\n\u001b[0m\u001b[1m\u001b[38;5;2m│\u001b[0m \u001b[0m\u001b[38;5;1m??\u001b[0m config.kdl.bak2 \u001b[0m\u001b[1m\u001b[38;5;2m│\u001b[0m│\r\n\u001b[0m\u001b[1m\u001b[38;5;2m│\u001b[0m \u001b[0m\u001b[38;5;1m??\u001b[0m config.kdl.bak3 \u001b[0m\u001b[1m\u001b[38;5;2m│\u001b[0m│\r\n\u001b[0m\u001b[1m\u001b[38;5;2m│\u001b[0m \u001b[0m\u001b[38;5;1mM\u001b[0m paru \u001b[0m\u001b[1m\u001b[38;5;2m│\u001b[0m│\r\n\u001b[0m\u001b[1m\u001b[38;5;2m│\u001b[0m ▼ pi/.pi/agent \u001b[0m\u001b[1m\u001b[38;5;2m│\u001b[0m│\r\n\u001b[0m\u001b[1m\u001b[38;5;2m╰─────────────────────────────1 of 22─╯\u001b[0m│\r\n╭─[3]─\u001b[0m\u001b[38;5;2mLocal branches \u001b[0m- Remotes - Tags─╮│\r\n│\u001b[0m\u001b[38;5;2m *\u001b[0m main \u001b[0m\u001b[38;5;2m✓\u001b[0m ││\r\n│ ││\r\n│ ││\r\n│ ││\r\n│ ││\r\n╰──────────────────────────────1 of 1─╯│\r\n╭─[4]─\u001b[0m\u001b[38;5;2mCommits \u001b[0m- Reflog────────────────╮│\r\n│\u001b[0m\u001b[38;5;2m89b1e380\u001b[0m \u001b[0m\u001b[38;2;36;244;94mli\u001b[0m \u001b[0m\u001b[38;2;36;244;94m○\u001b[0m udated colorscheme ▐│\r\n│\u001b[0m\u001b[38;5;2me078b218\u001b[0m \u001b[0m\u001b[38;2;36;244;94mli\u001b[0m \u001b[0m\u001b[38;2;36;244;94m○\u001b[0m changed to tokyo night ││\r\n│\u001b[0m\u001b[38;5;2m82af2452\u001b[0m \u001b[0m\u001b[38;2;36;244;94mli\u001b[0m \u001b[0m\u001b[38;2;36;244;94m○\u001b[0m hyprlock changes ││\r\n│\u001b[0m\u001b[38;5;2m0eaac74d\u001b[0m \u001b[0m\u001b[38;2;36;244;94mli\u001b[0m \u001b[0m\u001b[38;2;36;244;94m○\u001b[0m updated zshrc ││\r\n│\u001b[0m\u001b[38;5;2m9becc60e\u001b[0m \u001b[0m\u001b[38;2;221;12;75mli\u001b[0m \u001b[0m\u001b[38;2;221;12;75m○\u001b[0m herdr ││\r\n╰─────────────────────────────1 of 76─╯╯\r\n╭─[5]─Stash───────────────────────────╮╮\r\n│\u001b[0m\u001b[38;5;6m1d\u001b[0m On main: tmp install ││\r\n╰──────────────────────────────1 of 1─╯╯\r\n\u001b[0m\u001b[38;5;4mStage: <space\u001b[0m \u001b[0m\u001b[4m\u001b[38;5;5mDonate\u001b[0m \u001b[0m\u001b[4m\u001b[38;5;3mAsk Question\u001b[0m 0.63.0",
"lines": 35
} }
} }
} }
+53 -34
View File
@@ -2,11 +2,11 @@
"version": 3, "version": 3,
"workspaces": [ "workspaces": [
{ {
"id": "w1", "id": "w4",
"custom_name": null, "custom_name": null,
"identity_cwd": "/home/liph", "identity_cwd": "/home/liph",
"public_pane_numbers": { "public_pane_numbers": {
"1": 1 "6": 1
}, },
"next_public_pane_number": 2, "next_public_pane_number": 2,
"public_tab_numbers": [ "public_tab_numbers": [
@@ -17,30 +17,30 @@
{ {
"custom_name": null, "custom_name": null,
"layout": { "layout": {
"Pane": 1 "Pane": 6
}, },
"panes": { "panes": {
"1": { "6": {
"cwd": "/home/liph" "cwd": "/home/liph"
} }
}, },
"zoomed": false, "zoomed": false,
"focused": 1, "focused": 6,
"root_pane": 1 "root_pane": 6
} }
], ],
"active_tab": 0 "active_tab": 0
}, },
{ {
"id": "w2", "id": "w5",
"custom_name": "Home", "custom_name": "Home",
"identity_cwd": "/home/liph", "identity_cwd": "/home/liph",
"public_pane_numbers": { "public_pane_numbers": {
"4": 3, "7": 1,
"2": 1, "10": 4,
"6": 5, "9": 3,
"5": 4, "11": 5,
"3": 2 "8": 2
}, },
"next_public_pane_number": 6, "next_public_pane_number": 6,
"public_tab_numbers": [ "public_tab_numbers": [
@@ -57,24 +57,24 @@
"direction": "Horizontal", "direction": "Horizontal",
"ratio": 0.5, "ratio": 0.5,
"first": { "first": {
"Pane": 2 "Pane": 7
}, },
"second": { "second": {
"Pane": 3 "Pane": 8
} }
} }
}, },
"panes": { "panes": {
"3": { "7": {
"cwd": "/home/liph" "cwd": "/home/liph"
}, },
"2": { "8": {
"cwd": "/home/liph" "cwd": "/home/liph"
} }
}, },
"zoomed": false, "zoomed": false,
"focused": 3, "focused": 8,
"root_pane": 2 "root_pane": 7
}, },
{ {
"custom_name": "Music", "custom_name": "Music",
@@ -83,48 +83,49 @@
"direction": "Horizontal", "direction": "Horizontal",
"ratio": 0.5, "ratio": 0.5,
"first": { "first": {
"Pane": 4 "Pane": 9
}, },
"second": { "second": {
"Pane": 5 "Pane": 10
} }
} }
}, },
"panes": { "panes": {
"5": { "9": {
"cwd": "/home/liph" "cwd": "/home/liph"
}, },
"4": { "10": {
"cwd": "/home/liph" "cwd": "/home/liph"
} }
}, },
"zoomed": false, "zoomed": false,
"focused": 4, "focused": 9,
"root_pane": 4 "root_pane": 9
}, },
{ {
"custom_name": "Aerc", "custom_name": "Aerc",
"layout": { "layout": {
"Pane": 6 "Pane": 11
}, },
"panes": { "panes": {
"6": { "11": {
"cwd": "/home/liph" "cwd": "/home/liph"
} }
}, },
"zoomed": false, "zoomed": false,
"focused": 6, "focused": 11,
"root_pane": 6 "root_pane": 11
} }
], ],
"active_tab": 2 "active_tab": 2
}, },
{ {
"id": "w3", "id": "w6",
"custom_name": "Dotfiles", "custom_name": "Dotfiles",
"identity_cwd": "/home/liph/dotfiles", "identity_cwd": "/home/liph/dotfiles",
"public_pane_numbers": { "public_pane_numbers": {
"7": 1 "12": 1,
"13": 2
}, },
"next_public_pane_number": 3, "next_public_pane_number": 3,
"public_tab_numbers": [ "public_tab_numbers": [
@@ -135,16 +136,34 @@
{ {
"custom_name": "Dotfiles", "custom_name": "Dotfiles",
"layout": { "layout": {
"Pane": 7 "Split": {
"direction": "Horizontal",
"ratio": 0.7613636,
"first": {
"Pane": 12
},
"second": {
"Pane": 13
}
}
}, },
"panes": { "panes": {
"7": { "12": {
"cwd": "/home/liph/dotfiles" "cwd": "/home/liph/dotfiles"
},
"13": {
"cwd": "/home/liph/dotfiles",
"label": "Git",
"launch_argv": [
"bash",
"-c",
"exec bash \"$HERDR_PLUGIN_ROOT/scripts/run-lazygit.sh\""
]
} }
}, },
"zoomed": false, "zoomed": false,
"focused": 7, "focused": 13,
"root_pane": 7 "root_pane": 12
} }
], ],
"active_tab": 0 "active_tab": 0
+5 -4
View File
@@ -90,8 +90,9 @@ layout {
} }
spawn-at-startup "bash" "/mnt/tank/scripts/fix-bitwarden.sh" spawn-at-startup "bash" "/mnt/tank/scripts/fix-bitwarden.sh"
spawn-at-startup "waybar" "-c" "/home/liph/.config/niri/waybar-niri/config.jsonc" "-s" "/home/liph/.config/niri/waybar-niri/style.css" // spawn-at-startup "waybar" "-c" "/home/liph/.config/niri/waybar-niri/config.jsonc" "-s" "/home/liph/.config/niri/waybar-niri/style.css"
spawn-at-startup "swaync" // spawn-at-startup "swaync" // replaced by quickshell notification layer
spawn-at-startup "quickshell"
// spawn-at-startup "kanshi" // spawn-at-startup "kanshi"
spawn-at-startup "awww-daemon" spawn-at-startup "awww-daemon"
spawn-at-startup "xwayland-satellite" spawn-at-startup "xwayland-satellite"
@@ -295,8 +296,8 @@ binds {
Mod+Alt+Return hotkey-overlay-title="Open Kitty" { Mod+Alt+Return hotkey-overlay-title="Open Kitty" {
spawn "wezterm" spawn "wezterm"
} }
Mod+Alt+Space hotkey-overlay-title="Open Wofi" { Mod+Alt+Space hotkey-overlay-title="Open Launcher" {
spawn "wofi" "--show" "drun" spawn "qs" "ipc" "call" "launcher" "toggle"
} }
Mod+Mod5+Q hotkey-overlay-title="Open Htop" { Mod+Mod5+Q hotkey-overlay-title="Open Htop" {
spawn "wezterm" "start" "--class" "floating_htop" "-e" "htop" spawn "wezterm" "start" "--class" "floating_htop" "-e" "htop"
+655
View File
@@ -0,0 +1,655 @@
// This config is in the KDL format: https://kdl.dev
// "/-" comments out the following node.
// Check the wiki for a full description of the configuration:
// https://yalter.github.io/niri/Configuration:-Introduction
input {
keyboard {
xkb {
layout "ch"
variant "de_mac"
model "apple"
}
}
touchpad {
tap
natural-scroll
}
mouse {
}
trackpoint {
}
}
// x11 support for wayland
xwayland-satellite {
path "xwayland-satellite"
}
environment {
ELECTRON_OZONE_PLATFORM_HINT "auto"
ELECTRON_ENABLE_LOGGING "1"
// GDK_SCALE "1.75"
// GDK_DPI_SCALE "1"
}
output "eDP-1" {
mode "2880x1800@59.990"
scale 1.1
position x=0 y=0
focus-at-startup
}
output "eDP-2" {
mode "2880x1800@59.990"
scale 1.1
position x=0 y=0
focus-at-startup
}
output "eDP-3" {
mode "2880x1800@59.990"
scale 1.1
position x=0 y=0
focus-at-startup
}
output "DP-4" {
mode "2560x1440@59.951"
position x=1645 y=0
scale 1.1
}
layout {
gaps 2
center-focused-column "never"
preset-column-widths {
proportion 0.5
proportion 0.66667
proportion 0.3333
}
default-column-width {
proportion 0.5
}
focus-ring {
width 2
active-color "#7daea3"
inactive-color "#928374"
}
border {
off
width 4
active-color "#eba0ac"
inactive-color "#505050"
urgent-color "#9b0000"
}
shadow {
softness 30
spread 5
offset x=0 y=5
color "#0007"
}
struts {
}
}
spawn-at-startup "bash" "/mnt/tank/scripts/fix-bitwarden.sh"
// spawn-at-startup "waybar" "-c" "/home/liph/.config/niri/waybar-niri/config.jsonc" "-s" "/home/liph/.config/niri/waybar-niri/style.css"
spawn-at-startup "swaync"
spawn-at-startup "quickshell"
// spawn-at-startup "kanshi"
spawn-at-startup "awww-daemon"
spawn-at-startup "xwayland-satellite"
spawn-at-startup "gammastep" "-l" "47.38:8.54" "-t" "6000:4000"
spawn-at-startup "wezterm"
spawn-at-startup "obsidian"
// spawn-at-startup "kanshi"
spawn-at-startup "librewolf"
spawn-at-startup "sh" "-c" "sleep 5 && exec swayidle -w timeout 300 hyprlock timeout 600 'niri msg action power-off-monitors' resume 'niri msg action power-on-monitors' timeout 3600 'systemctl suspend'"
prefer-no-csd
gestures {
hot-corners {
off
}
}
workspace "1"
workspace "2"
workspace "3"
workspace "4"
// Example: block out two password managers from screen capture.
// (This example rule is commented out with a "/-" in front.)
/-window-rule {
match app-id=r#"^org\.keepassxc\.KeePassXC$"#
match app-id=r#"^org\.gnome\.World\.Secrets$"#
block-out-from "screen-capture"
}
window-rule {
match app-id="Zoom Workplace"
open-floating true
}
// Wezterm window rules
window-rule {
match at-startup=true app-id="wezterm"
open-on-workspace "1"
open-maximized true
open-floating false
// clip-to-geometry true
}
window-rule {
match at-startup=false app-id="wezterm"
open-floating false
// clip-to-geometry true
}
// Obsidian window rules
window-rule {
match at-startup=true app-id="obsidian"
open-on-workspace "3"
open-maximized true
open-floating false
}
window-rule {
match app-id="steam_app_4197610"
open-fullscreen true
}
window-rule {
match at-startup=false app-id="obsidian"
open-maximized true
open-floating false
}
// Librewolf window rules
window-rule {
match at-startup=true app-id="librewolf"
open-on-workspace "2"
open-maximized true
}
window-rule {
match app-id="librewolf"
open-maximized true
clip-to-geometry true
open-floating false
}
window-rule {
match app-id="slack"
open-maximized true
clip-to-geometry true
open-on-workspace "4"
open-floating false
}
window-rule {
match app-id="tidal-hifi"
open-maximized true
clip-to-geometry true
open-floating false
open-on-workspace "4"
}
window-rule {
match app-id="Tor Browser"
open-maximized true
clip-to-geometry true
open-floating false
open-on-workspace "2"
}
window-rule {
match app-id="Claude"
open-on-workspace "4"
default-column-width {
proportion 0.6667
}
clip-to-geometry true
}
// 2. Specific rule for windows opening at startup
window-rule {
match app-id="eu.betterbird.Betterbird"
open-maximized true
clip-to-geometry true
open-on-workspace "3"
}
window-rule {
match app-id="Slack"
open-maximized true
clip-to-geometry true
open-on-workspace "4"
}
window-rule {
match app-id="floating_btop"
default-column-width {
proportion 0.6667
}
open-floating true
}
window-rule {
match app-id="floating_musikcube"
default-column-width {
proportion 0.6667
}
open-floating true
}
window-rule {
match app-id="floating_htop"
default-column-width {
proportion 0.6667
}
open-floating true
}
window-rule {
match app-id="floating_bluetui"
default-column-width {
proportion 0.6667
}
open-floating true
}
window-rule {
match app-id="floating_pulsemixer"
default-column-width {
proportion 0.6667
}
open-floating true
}
window-rule {
match app-id="floating_wavemon"
default-column-width {
proportion 0.6667
}
open-floating true
}
window-rule {
match app-id="floating_network-tui"
default-column-width {
proportion 0.6667
}
open-floating true
}
window-rule {
match app-id="floating_yazi"
default-column-width {
proportion 0.6667
}
open-floating true
}
window-rule {
geometry-corner-radius 5
clip-to-geometry true
}
binds {
// Mod+Shift+Slash { show-hotkey-overlay; }
Mod+Mod5+J {
spawn "hyprlock"
}
Mod+Alt+P hotkey-overlay-title="Open Bitwarden" {
spawn "bitwarden-desktop"
}
Mod+Alt+T hotkey-overlay-title="Open Tipp10" {
spawn "tipp10"
}
Mod+Alt+S hotkey-overlay-title="Open Tidal" {
spawn "tidal-hifi" "--ozone-platform=wayland" "--enable-features=WaylandWindowDecorations"
}
Mod+Alt+O hotkey-overlay-title="Open Obsidian" {
spawn "obsidian"
}
Mod+Alt+C hotkey-overlay-title="Open Claude" {
spawn "claude-desktop"
}
Mod+Alt+Z hotkey-overlay-title="Open Librewolf" {
spawn "librewolf"
}
Mod+Alt+Return hotkey-overlay-title="Open Kitty" {
spawn "wezterm"
}
Mod+Alt+Space hotkey-overlay-title="Open Wofi" {
spawn "wofi" "--show" "drun"
}
Mod+Mod5+Q hotkey-overlay-title="Open Htop" {
spawn "wezterm" "start" "--class" "floating_htop" "-e" "htop"
}
Mod+Mod5+W hotkey-overlay-title="Open Btop" {
spawn "wezterm" "start" "--class" "floating_btop" "-e" "btop"
}
Mod+Mod5+E hotkey-overlay-title="Open Pulsemixer" {
spawn "wezterm" "start" "--class" "floating_pulsemixer" "-e" "pulsemixer"
}
Mod+Mod5+R allow-inhibiting=false hotkey-overlay-title="Open Bluetui" {
spawn "wezterm" "start" "--class" "floating_bluetui" "-e" "bluetui"
}
Mod+Mod5+T hotkey-overlay-title="Open Wavemon" {
spawn "wezterm" "start" "--class" "floating_wavemon" "-e" "wavemon"
}
Mod+Mod5+Z hotkey-overlay-title="Open network-tui" {
spawn "wezterm" "start" "--class" "floating_network-tui" "-e" "network-tui"
}
Mod+Mod5+U hotkey-overlay-title="Open Musikcube" {
spawn "wezterm" "start" "--class" "floating_musikcube" "-e" "musikcube"
}
Mod+Mod5+Y hotkey-overlay-title="Open Yazi" {
spawn "wezterm" "start" "--class" "floating_yazi" "-e" "yazi"
}
// Brightness Controll
Mod+Ctrl+0 {
spawn "sh" "-c" "~/scripts/layer_notify.sh 0"
}
Mod+Ctrl+1 {
spawn "sh" "-c" "~/scripts/layer_notify.sh 1"
}
Mod+Ctrl+2 {
spawn "sh" "-c" "~/scripts/layer_notify.sh 2"
}
Mod+Ctrl+3 {
spawn "sh" "-c" "~/scripts/layer_notify.sh 3"
}
// Brightness controls
Mod+Ctrl+4 {
spawn "sh" "-c" "~/scripts/niri_br_up.sh"
}
Mod+Ctrl+5 {
spawn "sh" "-c" "~/scripts/niri_br_down.sh"
}
Mod+Ctrl+6 {
spawn "sh" "-c" "~/scripts/niri_br_blue.sh"
}
Mod+Ctrl+7 {
spawn "sh" "-c" "~/scripts/niri_br_reset.sh"
}
// Swaync Notifications
Mod+Ctrl+8 {
spawn "swaync-client" "-t"
}
Super+Alt+S allow-when-locked=true hotkey-overlay-title=null {
spawn-sh "pkill orca || exec orca"
}
XF86AudioRaiseVolume allow-when-locked=true {
spawn-sh "wpctl set-volume @DEFAULT_AUDIO_SINK@ 0.1+ -l 1.0"
}
XF86AudioLowerVolume allow-when-locked=true {
spawn-sh "wpctl set-volume @DEFAULT_AUDIO_SINK@ 0.1-"
}
XF86AudioMute allow-when-locked=true {
spawn-sh "wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle"
}
XF86AudioMicMute allow-when-locked=true {
spawn-sh "wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle"
}
XF86AudioPlay allow-when-locked=true {
spawn-sh "playerctl play-pause"
}
XF86AudioStop allow-when-locked=true {
spawn-sh "playerctl stop"
}
XF86AudioPrev allow-when-locked=true {
spawn-sh "playerctl previous"
}
XF86AudioNext allow-when-locked=true {
spawn-sh "playerctl next"
}
XF86MonBrightnessUp allow-when-locked=true {
spawn "brightnessctl" "--class=backlight" "set" "+10%"
}
XF86MonBrightnessDown allow-when-locked=true {
spawn "brightnessctl" "--class=backlight" "set" "10%-"
}
Mod+O repeat=false {
toggle-overview
}
Mod+Shift+C repeat=false {
close-window
}
Mod+Left {
focus-column-left
}
Mod+Down {
focus-window-down
}
Mod+Up {
focus-window-up
}
Mod+Right {
focus-column-right
}
Mod+H {
focus-column-left
}
Mod+J {
focus-window-down
}
Mod+K {
focus-window-up
}
Mod+L {
focus-column-right
}
Mod+Ctrl+Left {
move-column-left
}
Mod+Ctrl+Down {
move-window-down
}
Mod+Ctrl+Up {
move-window-up
}
Mod+Ctrl+Right {
move-column-right
}
Mod+Ctrl+H {
move-column-left
}
Mod+Ctrl+J {
move-window-down
}
Mod+Ctrl+K {
move-window-up
}
Mod+Ctrl+L {
move-column-right
}
// Mod+Shift+Down { focus-monitor-down; }
// Mod+Shift+Up { focus-monitor-up; }
// Mod+Shift+Right { focus-monitor-right; }
Mod+Shift+H {
focus-monitor-left
}
// Mod+Shift+J { focus-monitor-down; }
// Mod+Shift+K { focus-monitor-up; }
Mod+Shift+L {
focus-monitor-right
}
Mod+Shift+Ctrl+Left {
move-column-to-monitor-left
}
// Mod+Shift+Ctrl+Down { move-column-to-monitor-down; }
// Mod+Shift+Ctrl+Up { move-column-to-monitor-up; }
Mod+Shift+Ctrl+Right {
move-column-to-monitor-right
}
Mod+Shift+Ctrl+H {
move-column-to-monitor-left
}
// Mod+Shift+Ctrl+J { move-column-to-monitor-down; }
// Mod+Shift+Ctrl+K { move-column-to-monitor-up; }
Mod+Shift+Ctrl+L {
move-column-to-monitor-right
}
Mod+U {
focus-workspace-down
}
Mod+I {
focus-workspace-up
}
Mod+Alt+J {
move-column-to-workspace-down
}
Mod+Alt+K {
move-column-to-workspace-up
}
Mod+Alt+U {
move-column-to-workspace-down
}
Mod+Alt+I {
move-column-to-workspace-up
}
Mod+Shift+U {
move-workspace-down
}
Mod+Shift+I {
move-workspace-up
}
Mod+WheelScrollDown cooldown-ms=150 {
focus-workspace-down
}
Mod+WheelScrollUp cooldown-ms=150 {
focus-workspace-up
}
Mod+Ctrl+WheelScrollDown cooldown-ms=150 {
move-column-to-workspace-down
}
Mod+Ctrl+WheelScrollUp cooldown-ms=150 {
move-column-to-workspace-up
}
Mod+WheelScrollRight {
focus-column-right
}
Mod+WheelScrollLeft {
focus-column-left
}
Mod+Ctrl+WheelScrollRight {
move-column-right
}
Mod+Ctrl+WheelScrollLeft {
move-column-left
}
Mod+Shift+WheelScrollDown {
focus-column-right
}
Mod+Shift+WheelScrollUp {
focus-column-left
}
Mod+Ctrl+Shift+WheelScrollDown {
move-column-right
}
Mod+Ctrl+Shift+WheelScrollUp {
move-column-left
}
Mod+1 {
focus-workspace 1
}
Mod+2 {
focus-workspace 2
}
Mod+3 {
focus-workspace 3
}
Mod+4 {
focus-workspace 4
}
Mod+5 {
focus-workspace 5
}
Mod+6 {
focus-workspace 6
}
Mod+7 {
focus-workspace 7
}
Mod+8 {
focus-workspace 8
}
Mod+9 {
focus-workspace 9
}
// Mod+Ctrl+1 { move-column-to-workspace 1; }
// Mod+Ctrl+2 { move-column-to-workspace 2; }
// Mod+Ctrl+3 { move-column-to-workspace 3; }
// Mod+Ctrl+4 { move-column-to-workspace 4; }
// Mod+Ctrl+5 { move-column-to-workspace 5; }
// Mod+Ctrl+6 { move-column-to-workspace 6; }
// Mod+Ctrl+7 { move-column-to-workspace 7; }
// Mod+Ctrl+8 { move-column-to-workspace 8; }
// Mod+Ctrl+9 { move-column-to-workspace 9; }
Mod+BracketLeft {
consume-or-expel-window-left
}
Mod+BracketRight {
consume-or-expel-window-right
}
Mod+Comma {
consume-window-into-column
}
Mod+Period {
expel-window-from-column
}
Mod+R {
switch-preset-column-width
}
// Cycling through the presets in reverse order is also possible.
// Mod+R { switch-preset-column-width-back; }
// Mod+Shift+R {
// switch-preset-window-height
// }
// Mod+Ctrl+R {
// reset-window-height
// }
Mod+F {
maximize-column
}
Mod+Shift+F {
fullscreen-window
}
Mod+Ctrl+F {
expand-column-to-available-width
}
// Mod+C { center-column; }
Mod+Ctrl+C {
center-visible-columns
}
Mod+Minus {
set-column-width "-10%"
}
Mod+Equal {
set-column-width "+10%"
}
// Finer height adjustments when in column with other windows.
Mod+Shift+Minus {
set-window-height "-10%"
}
Mod+Shift+Equal {
set-window-height "+10%"
}
// Move the focused window between the floating and the tiling layout.
Mod+V {
toggle-window-floating
}
Mod+Shift+V {
switch-focus-between-floating-and-tiling
}
Mod+W {
toggle-column-tabbed-display
}
// screenshot
Mod+Alt+4 {
spawn "sh" "-c" "grim -g \"$(slurp)\" ~/Pictures/screenshot-$(date +%Y%m%d-%H%M%S).png && notify-send 'Screenshot' 'Area screenshot saved'"
}
// Fullscreen and save
Mod+Alt+5 {
spawn "sh" "-c" "grim ~/Pictures/screenshot-$(date +%Y%m%d-%H%M%S).png && notify-send -t 2000 'Screenshot' 'Fullscreen screenshot saved'"
}
// Select area to clipboard
Mod+Shift+4 {
spawn "sh" "-c" "grim -g \"$(slurp)\" - | wl-copy && notify-send -t 2000 'Screenshot' 'Area copied to clipboard'"
}
// area screenshot → annotate in swappy
Mod+Shift+5 {
spawn "sh" "-c" "grim -g \"$(slurp)\" - | swappy -f -"
}
Mod+Escape allow-inhibiting=false {
toggle-keyboard-shortcuts-inhibit
}
Mod+Shift+E {
quit
}
Ctrl+Alt+Delete {
quit
}
Mod+Shift+P {
power-off-monitors
}
}
// include "theme.kdl"
+655
View File
@@ -0,0 +1,655 @@
// This config is in the KDL format: https://kdl.dev
// "/-" comments out the following node.
// Check the wiki for a full description of the configuration:
// https://yalter.github.io/niri/Configuration:-Introduction
input {
keyboard {
xkb {
layout "ch"
variant "de_mac"
model "apple"
}
}
touchpad {
tap
natural-scroll
}
mouse {
}
trackpoint {
}
}
// x11 support for wayland
xwayland-satellite {
path "xwayland-satellite"
}
environment {
ELECTRON_OZONE_PLATFORM_HINT "auto"
ELECTRON_ENABLE_LOGGING "1"
// GDK_SCALE "1.75"
// GDK_DPI_SCALE "1"
}
output "eDP-1" {
mode "2880x1800@59.990"
scale 1.1
position x=0 y=0
focus-at-startup
}
output "eDP-2" {
mode "2880x1800@59.990"
scale 1.1
position x=0 y=0
focus-at-startup
}
output "eDP-3" {
mode "2880x1800@59.990"
scale 1.1
position x=0 y=0
focus-at-startup
}
output "DP-4" {
mode "2560x1440@59.951"
position x=1645 y=0
scale 1.1
}
layout {
gaps 2
center-focused-column "never"
preset-column-widths {
proportion 0.5
proportion 0.66667
proportion 0.3333
}
default-column-width {
proportion 0.5
}
focus-ring {
width 2
active-color "#7daea3"
inactive-color "#928374"
}
border {
off
width 4
active-color "#eba0ac"
inactive-color "#505050"
urgent-color "#9b0000"
}
shadow {
softness 30
spread 5
offset x=0 y=5
color "#0007"
}
struts {
}
}
spawn-at-startup "bash" "/mnt/tank/scripts/fix-bitwarden.sh"
// spawn-at-startup "waybar" "-c" "/home/liph/.config/niri/waybar-niri/config.jsonc" "-s" "/home/liph/.config/niri/waybar-niri/style.css"
// spawn-at-startup "swaync" // replaced by quickshell notification layer
spawn-at-startup "quickshell"
// spawn-at-startup "kanshi"
spawn-at-startup "awww-daemon"
spawn-at-startup "xwayland-satellite"
spawn-at-startup "gammastep" "-l" "47.38:8.54" "-t" "6000:4000"
spawn-at-startup "wezterm"
spawn-at-startup "obsidian"
// spawn-at-startup "kanshi"
spawn-at-startup "librewolf"
spawn-at-startup "sh" "-c" "sleep 5 && exec swayidle -w timeout 300 hyprlock timeout 600 'niri msg action power-off-monitors' resume 'niri msg action power-on-monitors' timeout 3600 'systemctl suspend'"
prefer-no-csd
gestures {
hot-corners {
off
}
}
workspace "1"
workspace "2"
workspace "3"
workspace "4"
// Example: block out two password managers from screen capture.
// (This example rule is commented out with a "/-" in front.)
/-window-rule {
match app-id=r#"^org\.keepassxc\.KeePassXC$"#
match app-id=r#"^org\.gnome\.World\.Secrets$"#
block-out-from "screen-capture"
}
window-rule {
match app-id="Zoom Workplace"
open-floating true
}
// Wezterm window rules
window-rule {
match at-startup=true app-id="wezterm"
open-on-workspace "1"
open-maximized true
open-floating false
// clip-to-geometry true
}
window-rule {
match at-startup=false app-id="wezterm"
open-floating false
// clip-to-geometry true
}
// Obsidian window rules
window-rule {
match at-startup=true app-id="obsidian"
open-on-workspace "3"
open-maximized true
open-floating false
}
window-rule {
match app-id="steam_app_4197610"
open-fullscreen true
}
window-rule {
match at-startup=false app-id="obsidian"
open-maximized true
open-floating false
}
// Librewolf window rules
window-rule {
match at-startup=true app-id="librewolf"
open-on-workspace "2"
open-maximized true
}
window-rule {
match app-id="librewolf"
open-maximized true
clip-to-geometry true
open-floating false
}
window-rule {
match app-id="slack"
open-maximized true
clip-to-geometry true
open-on-workspace "4"
open-floating false
}
window-rule {
match app-id="tidal-hifi"
open-maximized true
clip-to-geometry true
open-floating false
open-on-workspace "4"
}
window-rule {
match app-id="Tor Browser"
open-maximized true
clip-to-geometry true
open-floating false
open-on-workspace "2"
}
window-rule {
match app-id="Claude"
open-on-workspace "4"
default-column-width {
proportion 0.6667
}
clip-to-geometry true
}
// 2. Specific rule for windows opening at startup
window-rule {
match app-id="eu.betterbird.Betterbird"
open-maximized true
clip-to-geometry true
open-on-workspace "3"
}
window-rule {
match app-id="Slack"
open-maximized true
clip-to-geometry true
open-on-workspace "4"
}
window-rule {
match app-id="floating_btop"
default-column-width {
proportion 0.6667
}
open-floating true
}
window-rule {
match app-id="floating_musikcube"
default-column-width {
proportion 0.6667
}
open-floating true
}
window-rule {
match app-id="floating_htop"
default-column-width {
proportion 0.6667
}
open-floating true
}
window-rule {
match app-id="floating_bluetui"
default-column-width {
proportion 0.6667
}
open-floating true
}
window-rule {
match app-id="floating_pulsemixer"
default-column-width {
proportion 0.6667
}
open-floating true
}
window-rule {
match app-id="floating_wavemon"
default-column-width {
proportion 0.6667
}
open-floating true
}
window-rule {
match app-id="floating_network-tui"
default-column-width {
proportion 0.6667
}
open-floating true
}
window-rule {
match app-id="floating_yazi"
default-column-width {
proportion 0.6667
}
open-floating true
}
window-rule {
geometry-corner-radius 5
clip-to-geometry true
}
binds {
// Mod+Shift+Slash { show-hotkey-overlay; }
Mod+Mod5+J {
spawn "hyprlock"
}
Mod+Alt+P hotkey-overlay-title="Open Bitwarden" {
spawn "bitwarden-desktop"
}
Mod+Alt+T hotkey-overlay-title="Open Tipp10" {
spawn "tipp10"
}
Mod+Alt+S hotkey-overlay-title="Open Tidal" {
spawn "tidal-hifi" "--ozone-platform=wayland" "--enable-features=WaylandWindowDecorations"
}
Mod+Alt+O hotkey-overlay-title="Open Obsidian" {
spawn "obsidian"
}
Mod+Alt+C hotkey-overlay-title="Open Claude" {
spawn "claude-desktop"
}
Mod+Alt+Z hotkey-overlay-title="Open Librewolf" {
spawn "librewolf"
}
Mod+Alt+Return hotkey-overlay-title="Open Kitty" {
spawn "wezterm"
}
Mod+Alt+Space hotkey-overlay-title="Open Wofi" {
spawn "wofi" "--show" "drun"
}
Mod+Mod5+Q hotkey-overlay-title="Open Htop" {
spawn "wezterm" "start" "--class" "floating_htop" "-e" "htop"
}
Mod+Mod5+W hotkey-overlay-title="Open Btop" {
spawn "wezterm" "start" "--class" "floating_btop" "-e" "btop"
}
Mod+Mod5+E hotkey-overlay-title="Open Pulsemixer" {
spawn "wezterm" "start" "--class" "floating_pulsemixer" "-e" "pulsemixer"
}
Mod+Mod5+R allow-inhibiting=false hotkey-overlay-title="Open Bluetui" {
spawn "wezterm" "start" "--class" "floating_bluetui" "-e" "bluetui"
}
Mod+Mod5+T hotkey-overlay-title="Open Wavemon" {
spawn "wezterm" "start" "--class" "floating_wavemon" "-e" "wavemon"
}
Mod+Mod5+Z hotkey-overlay-title="Open network-tui" {
spawn "wezterm" "start" "--class" "floating_network-tui" "-e" "network-tui"
}
Mod+Mod5+U hotkey-overlay-title="Open Musikcube" {
spawn "wezterm" "start" "--class" "floating_musikcube" "-e" "musikcube"
}
Mod+Mod5+Y hotkey-overlay-title="Open Yazi" {
spawn "wezterm" "start" "--class" "floating_yazi" "-e" "yazi"
}
// Brightness Controll
Mod+Ctrl+0 {
spawn "sh" "-c" "~/scripts/layer_notify.sh 0"
}
Mod+Ctrl+1 {
spawn "sh" "-c" "~/scripts/layer_notify.sh 1"
}
Mod+Ctrl+2 {
spawn "sh" "-c" "~/scripts/layer_notify.sh 2"
}
Mod+Ctrl+3 {
spawn "sh" "-c" "~/scripts/layer_notify.sh 3"
}
// Brightness controls
Mod+Ctrl+4 {
spawn "sh" "-c" "~/scripts/niri_br_up.sh"
}
Mod+Ctrl+5 {
spawn "sh" "-c" "~/scripts/niri_br_down.sh"
}
Mod+Ctrl+6 {
spawn "sh" "-c" "~/scripts/niri_br_blue.sh"
}
Mod+Ctrl+7 {
spawn "sh" "-c" "~/scripts/niri_br_reset.sh"
}
// Swaync Notifications
Mod+Ctrl+8 {
spawn "swaync-client" "-t"
}
Super+Alt+S allow-when-locked=true hotkey-overlay-title=null {
spawn-sh "pkill orca || exec orca"
}
XF86AudioRaiseVolume allow-when-locked=true {
spawn-sh "wpctl set-volume @DEFAULT_AUDIO_SINK@ 0.1+ -l 1.0"
}
XF86AudioLowerVolume allow-when-locked=true {
spawn-sh "wpctl set-volume @DEFAULT_AUDIO_SINK@ 0.1-"
}
XF86AudioMute allow-when-locked=true {
spawn-sh "wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle"
}
XF86AudioMicMute allow-when-locked=true {
spawn-sh "wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle"
}
XF86AudioPlay allow-when-locked=true {
spawn-sh "playerctl play-pause"
}
XF86AudioStop allow-when-locked=true {
spawn-sh "playerctl stop"
}
XF86AudioPrev allow-when-locked=true {
spawn-sh "playerctl previous"
}
XF86AudioNext allow-when-locked=true {
spawn-sh "playerctl next"
}
XF86MonBrightnessUp allow-when-locked=true {
spawn "brightnessctl" "--class=backlight" "set" "+10%"
}
XF86MonBrightnessDown allow-when-locked=true {
spawn "brightnessctl" "--class=backlight" "set" "10%-"
}
Mod+O repeat=false {
toggle-overview
}
Mod+Shift+C repeat=false {
close-window
}
Mod+Left {
focus-column-left
}
Mod+Down {
focus-window-down
}
Mod+Up {
focus-window-up
}
Mod+Right {
focus-column-right
}
Mod+H {
focus-column-left
}
Mod+J {
focus-window-down
}
Mod+K {
focus-window-up
}
Mod+L {
focus-column-right
}
Mod+Ctrl+Left {
move-column-left
}
Mod+Ctrl+Down {
move-window-down
}
Mod+Ctrl+Up {
move-window-up
}
Mod+Ctrl+Right {
move-column-right
}
Mod+Ctrl+H {
move-column-left
}
Mod+Ctrl+J {
move-window-down
}
Mod+Ctrl+K {
move-window-up
}
Mod+Ctrl+L {
move-column-right
}
// Mod+Shift+Down { focus-monitor-down; }
// Mod+Shift+Up { focus-monitor-up; }
// Mod+Shift+Right { focus-monitor-right; }
Mod+Shift+H {
focus-monitor-left
}
// Mod+Shift+J { focus-monitor-down; }
// Mod+Shift+K { focus-monitor-up; }
Mod+Shift+L {
focus-monitor-right
}
Mod+Shift+Ctrl+Left {
move-column-to-monitor-left
}
// Mod+Shift+Ctrl+Down { move-column-to-monitor-down; }
// Mod+Shift+Ctrl+Up { move-column-to-monitor-up; }
Mod+Shift+Ctrl+Right {
move-column-to-monitor-right
}
Mod+Shift+Ctrl+H {
move-column-to-monitor-left
}
// Mod+Shift+Ctrl+J { move-column-to-monitor-down; }
// Mod+Shift+Ctrl+K { move-column-to-monitor-up; }
Mod+Shift+Ctrl+L {
move-column-to-monitor-right
}
Mod+U {
focus-workspace-down
}
Mod+I {
focus-workspace-up
}
Mod+Alt+J {
move-column-to-workspace-down
}
Mod+Alt+K {
move-column-to-workspace-up
}
Mod+Alt+U {
move-column-to-workspace-down
}
Mod+Alt+I {
move-column-to-workspace-up
}
Mod+Shift+U {
move-workspace-down
}
Mod+Shift+I {
move-workspace-up
}
Mod+WheelScrollDown cooldown-ms=150 {
focus-workspace-down
}
Mod+WheelScrollUp cooldown-ms=150 {
focus-workspace-up
}
Mod+Ctrl+WheelScrollDown cooldown-ms=150 {
move-column-to-workspace-down
}
Mod+Ctrl+WheelScrollUp cooldown-ms=150 {
move-column-to-workspace-up
}
Mod+WheelScrollRight {
focus-column-right
}
Mod+WheelScrollLeft {
focus-column-left
}
Mod+Ctrl+WheelScrollRight {
move-column-right
}
Mod+Ctrl+WheelScrollLeft {
move-column-left
}
Mod+Shift+WheelScrollDown {
focus-column-right
}
Mod+Shift+WheelScrollUp {
focus-column-left
}
Mod+Ctrl+Shift+WheelScrollDown {
move-column-right
}
Mod+Ctrl+Shift+WheelScrollUp {
move-column-left
}
Mod+1 {
focus-workspace 1
}
Mod+2 {
focus-workspace 2
}
Mod+3 {
focus-workspace 3
}
Mod+4 {
focus-workspace 4
}
Mod+5 {
focus-workspace 5
}
Mod+6 {
focus-workspace 6
}
Mod+7 {
focus-workspace 7
}
Mod+8 {
focus-workspace 8
}
Mod+9 {
focus-workspace 9
}
// Mod+Ctrl+1 { move-column-to-workspace 1; }
// Mod+Ctrl+2 { move-column-to-workspace 2; }
// Mod+Ctrl+3 { move-column-to-workspace 3; }
// Mod+Ctrl+4 { move-column-to-workspace 4; }
// Mod+Ctrl+5 { move-column-to-workspace 5; }
// Mod+Ctrl+6 { move-column-to-workspace 6; }
// Mod+Ctrl+7 { move-column-to-workspace 7; }
// Mod+Ctrl+8 { move-column-to-workspace 8; }
// Mod+Ctrl+9 { move-column-to-workspace 9; }
Mod+BracketLeft {
consume-or-expel-window-left
}
Mod+BracketRight {
consume-or-expel-window-right
}
Mod+Comma {
consume-window-into-column
}
Mod+Period {
expel-window-from-column
}
Mod+R {
switch-preset-column-width
}
// Cycling through the presets in reverse order is also possible.
// Mod+R { switch-preset-column-width-back; }
// Mod+Shift+R {
// switch-preset-window-height
// }
// Mod+Ctrl+R {
// reset-window-height
// }
Mod+F {
maximize-column
}
Mod+Shift+F {
fullscreen-window
}
Mod+Ctrl+F {
expand-column-to-available-width
}
// Mod+C { center-column; }
Mod+Ctrl+C {
center-visible-columns
}
Mod+Minus {
set-column-width "-10%"
}
Mod+Equal {
set-column-width "+10%"
}
// Finer height adjustments when in column with other windows.
Mod+Shift+Minus {
set-window-height "-10%"
}
Mod+Shift+Equal {
set-window-height "+10%"
}
// Move the focused window between the floating and the tiling layout.
Mod+V {
toggle-window-floating
}
Mod+Shift+V {
switch-focus-between-floating-and-tiling
}
Mod+W {
toggle-column-tabbed-display
}
// screenshot
Mod+Alt+4 {
spawn "sh" "-c" "grim -g \"$(slurp)\" ~/Pictures/screenshot-$(date +%Y%m%d-%H%M%S).png && notify-send 'Screenshot' 'Area screenshot saved'"
}
// Fullscreen and save
Mod+Alt+5 {
spawn "sh" "-c" "grim ~/Pictures/screenshot-$(date +%Y%m%d-%H%M%S).png && notify-send -t 2000 'Screenshot' 'Fullscreen screenshot saved'"
}
// Select area to clipboard
Mod+Shift+4 {
spawn "sh" "-c" "grim -g \"$(slurp)\" - | wl-copy && notify-send -t 2000 'Screenshot' 'Area copied to clipboard'"
}
// area screenshot → annotate in swappy
Mod+Shift+5 {
spawn "sh" "-c" "grim -g \"$(slurp)\" - | swappy -f -"
}
Mod+Escape allow-inhibiting=false {
toggle-keyboard-shortcuts-inhibit
}
Mod+Shift+E {
quit
}
Ctrl+Alt+Delete {
quit
}
Mod+Shift+P {
power-off-monitors
}
}
// include "theme.kdl"
+1 -1
View File
@@ -1,6 +1,6 @@
{ {
"ollama-cloud": { "ollama-cloud": {
"type": "api_key", "type": "api_key",
"key": "c06adb6cc58a4c3aaa459bd75f42085b.EAGExkidZO9hklD3KWhWL2Uu" "key": "77a13370a1a148ff8667db60252cfabb.nxL8rySeqXECFKe6ZdNSSIIS"
} }
} }
Binary file not shown.
Binary file not shown.
Binary file not shown.
+343 -343
View File
@@ -1,98 +1,6 @@
{ {
"ollama-cloud": { "ollama-cloud": {
"models": [ "models": [
{
"id": "glm-5.3-flash",
"name": "glm-5.3-flash",
"reasoning": true,
"thinkingLevelMap": {
"off": "none",
"minimal": null,
"low": "low",
"medium": "medium",
"high": "high",
"xhigh": "max"
},
"input": [
"text",
"image"
],
"cost": {
"input": 0.15,
"output": 0.5,
"cacheRead": 0.03,
"cacheWrite": 0
},
"contextWindow": 1048576,
"maxTokens": 524288,
"compat": {
"supportsDeveloperRole": false,
"supportsReasoningEffort": true,
"supportsStore": false,
"maxTokensField": "max_tokens",
"supportsUsageInStreaming": true,
"requiresToolResultName": false,
"requiresAssistantAfterToolResult": false,
"requiresThinkingAsText": false,
"requiresReasoningContentOnAssistantMessages": false,
"thinkingFormat": "openai",
"supportsStrictMode": false,
"sendSessionAffinityHeaders": false,
"supportsLongCacheRetention": false,
"zaiToolStream": false,
"openRouterRouting": {},
"vercelGatewayRouting": {}
},
"provider": "ollama-cloud",
"api": "openai-completions",
"baseUrl": "https://ollama.com/v1"
},
{
"id": "kimi-k3",
"name": "kimi-k3",
"reasoning": true,
"thinkingLevelMap": {
"off": "none",
"minimal": null,
"low": "low",
"medium": "medium",
"high": "high",
"xhigh": "max"
},
"input": [
"text",
"image"
],
"cost": {
"input": 3,
"output": 15,
"cacheRead": 0.3,
"cacheWrite": 0
},
"contextWindow": 1048576,
"maxTokens": 524288,
"compat": {
"supportsDeveloperRole": false,
"supportsReasoningEffort": true,
"supportsStore": false,
"maxTokensField": "max_tokens",
"supportsUsageInStreaming": true,
"requiresToolResultName": false,
"requiresAssistantAfterToolResult": false,
"requiresThinkingAsText": false,
"requiresReasoningContentOnAssistantMessages": false,
"thinkingFormat": "openai",
"supportsStrictMode": false,
"sendSessionAffinityHeaders": false,
"supportsLongCacheRetention": false,
"zaiToolStream": false,
"openRouterRouting": {},
"vercelGatewayRouting": {}
},
"provider": "ollama-cloud",
"api": "openai-completions",
"baseUrl": "https://ollama.com/v1"
},
{ {
"id": "nemotron-3-nano:30b", "id": "nemotron-3-nano:30b",
"name": "nemotron-3-nano:30b", "name": "nemotron-3-nano:30b",
@@ -139,53 +47,8 @@
"baseUrl": "https://ollama.com/v1" "baseUrl": "https://ollama.com/v1"
}, },
{ {
"id": "deepseek-v4-flash:0731", "id": "kimi-k2.6",
"name": "deepseek-v4-flash:0731", "name": "kimi-k2.6",
"reasoning": true,
"thinkingLevelMap": {
"off": "none",
"minimal": null,
"low": "low",
"medium": "medium",
"high": "high",
"xhigh": "max"
},
"input": [
"text"
],
"cost": {
"input": 0.44,
"output": 1.32,
"cacheRead": 0.014,
"cacheWrite": 0
},
"contextWindow": 1048576,
"maxTokens": 65536,
"compat": {
"supportsDeveloperRole": false,
"supportsReasoningEffort": true,
"supportsStore": false,
"maxTokensField": "max_tokens",
"supportsUsageInStreaming": true,
"requiresToolResultName": false,
"requiresAssistantAfterToolResult": false,
"requiresThinkingAsText": false,
"requiresReasoningContentOnAssistantMessages": false,
"thinkingFormat": "openai",
"supportsStrictMode": false,
"sendSessionAffinityHeaders": false,
"supportsLongCacheRetention": false,
"zaiToolStream": false,
"openRouterRouting": {},
"vercelGatewayRouting": {}
},
"provider": "ollama-cloud",
"api": "openai-completions",
"baseUrl": "https://ollama.com/v1"
},
{
"id": "gemma4:31b",
"name": "gemma4:31b",
"reasoning": true, "reasoning": true,
"thinkingLevelMap": { "thinkingLevelMap": {
"off": "none", "off": "none",
@@ -200,9 +63,9 @@
"image" "image"
], ],
"cost": { "cost": {
"input": 0.14, "input": 0.95,
"output": 0.4, "output": 4,
"cacheRead": 0.05, "cacheRead": 0.16,
"cacheWrite": 0 "cacheWrite": 0
}, },
"contextWindow": 262144, "contextWindow": 262144,
@@ -230,8 +93,53 @@
"baseUrl": "https://ollama.com/v1" "baseUrl": "https://ollama.com/v1"
}, },
{ {
"id": "glm-5.1", "id": "glm-5.2",
"name": "glm-5.1", "name": "glm-5.2",
"reasoning": true,
"thinkingLevelMap": {
"off": "none",
"minimal": null,
"low": null,
"medium": null,
"high": "high",
"xhigh": "max"
},
"input": [
"text"
],
"cost": {
"input": 1.4,
"output": 4.4,
"cacheRead": 0.26,
"cacheWrite": 0
},
"contextWindow": 1048576,
"maxTokens": 131072,
"compat": {
"supportsDeveloperRole": false,
"supportsReasoningEffort": true,
"supportsStore": false,
"maxTokensField": "max_tokens",
"supportsUsageInStreaming": true,
"requiresToolResultName": false,
"requiresAssistantAfterToolResult": false,
"requiresThinkingAsText": false,
"requiresReasoningContentOnAssistantMessages": false,
"thinkingFormat": "openai",
"supportsStrictMode": false,
"sendSessionAffinityHeaders": false,
"supportsLongCacheRetention": false,
"zaiToolStream": false,
"openRouterRouting": {},
"vercelGatewayRouting": {}
},
"provider": "ollama-cloud",
"api": "openai-completions",
"baseUrl": "https://ollama.com/v1"
},
{
"id": "glm-5.3",
"name": "glm-5.3",
"reasoning": true, "reasoning": true,
"thinkingLevelMap": { "thinkingLevelMap": {
"off": "none", "off": "none",
@@ -245,13 +153,13 @@
"text" "text"
], ],
"cost": { "cost": {
"input": 1, "input": 1.4,
"output": 3.2, "output": 4.4,
"cacheRead": 0.2, "cacheRead": 0.26,
"cacheWrite": 0 "cacheWrite": 0
}, },
"contextWindow": 202752, "contextWindow": 1048576,
"maxTokens": 131072, "maxTokens": 524288,
"compat": { "compat": {
"supportsDeveloperRole": false, "supportsDeveloperRole": false,
"supportsReasoningEffort": true, "supportsReasoningEffort": true,
@@ -365,97 +273,6 @@
"api": "openai-completions", "api": "openai-completions",
"baseUrl": "https://ollama.com/v1" "baseUrl": "https://ollama.com/v1"
}, },
{
"id": "qwen3.5:397b",
"name": "qwen3.5:397b",
"reasoning": true,
"thinkingLevelMap": {
"off": "none",
"minimal": null,
"low": null,
"medium": "medium",
"high": null,
"xhigh": null
},
"input": [
"text",
"image"
],
"cost": {
"input": 0.6,
"output": 3.6,
"cacheRead": 0.6,
"cacheWrite": 0
},
"contextWindow": 262144,
"maxTokens": 65536,
"compat": {
"supportsDeveloperRole": false,
"supportsReasoningEffort": true,
"supportsStore": false,
"maxTokensField": "max_tokens",
"supportsUsageInStreaming": true,
"requiresToolResultName": false,
"requiresAssistantAfterToolResult": false,
"requiresThinkingAsText": false,
"requiresReasoningContentOnAssistantMessages": false,
"thinkingFormat": "openai",
"supportsStrictMode": false,
"sendSessionAffinityHeaders": false,
"supportsLongCacheRetention": false,
"zaiToolStream": false,
"openRouterRouting": {},
"vercelGatewayRouting": {}
},
"provider": "ollama-cloud",
"api": "openai-completions",
"baseUrl": "https://ollama.com/v1"
},
{
"id": "deepseek-v4-pro:0813",
"name": "deepseek-v4-pro:0813",
"reasoning": true,
"thinkingLevelMap": {
"off": "none",
"minimal": null,
"low": "low",
"medium": "medium",
"high": "high",
"xhigh": "max"
},
"input": [
"text"
],
"cost": {
"input": 1.32,
"output": 3.96,
"cacheRead": 0.044,
"cacheWrite": 0
},
"contextWindow": 1048576,
"maxTokens": 65536,
"compat": {
"supportsDeveloperRole": false,
"supportsReasoningEffort": true,
"supportsStore": false,
"maxTokensField": "max_tokens",
"supportsUsageInStreaming": true,
"requiresToolResultName": false,
"requiresAssistantAfterToolResult": false,
"requiresThinkingAsText": false,
"requiresReasoningContentOnAssistantMessages": false,
"thinkingFormat": "openai",
"supportsStrictMode": false,
"sendSessionAffinityHeaders": false,
"supportsLongCacheRetention": false,
"zaiToolStream": false,
"openRouterRouting": {},
"vercelGatewayRouting": {}
},
"provider": "ollama-cloud",
"api": "openai-completions",
"baseUrl": "https://ollama.com/v1"
},
{ {
"id": "minimax-m3", "id": "minimax-m3",
"name": "minimax-m3", "name": "minimax-m3",
@@ -503,46 +320,8 @@
"baseUrl": "https://ollama.com/v1" "baseUrl": "https://ollama.com/v1"
}, },
{ {
"id": "mistral-large-3:675b", "id": "deepseek-v4-flash:0731",
"name": "mistral-large-3:675b", "name": "deepseek-v4-flash:0731",
"reasoning": false,
"input": [
"text",
"image"
],
"cost": {
"input": 0.5,
"output": 1.5,
"cacheRead": 0.5,
"cacheWrite": 0
},
"contextWindow": 262144,
"maxTokens": 262144,
"compat": {
"supportsDeveloperRole": false,
"supportsReasoningEffort": true,
"supportsStore": false,
"maxTokensField": "max_tokens",
"supportsUsageInStreaming": true,
"requiresToolResultName": false,
"requiresAssistantAfterToolResult": false,
"requiresThinkingAsText": false,
"requiresReasoningContentOnAssistantMessages": false,
"thinkingFormat": "openai",
"supportsStrictMode": false,
"sendSessionAffinityHeaders": false,
"supportsLongCacheRetention": false,
"zaiToolStream": false,
"openRouterRouting": {},
"vercelGatewayRouting": {}
},
"provider": "ollama-cloud",
"api": "openai-completions",
"baseUrl": "https://ollama.com/v1"
},
{
"id": "nemotron-3-ultra",
"name": "nemotron-3-ultra",
"reasoning": true, "reasoning": true,
"thinkingLevelMap": { "thinkingLevelMap": {
"off": "none", "off": "none",
@@ -556,12 +335,12 @@
"text" "text"
], ],
"cost": { "cost": {
"input": 0.1, "input": 0.44,
"output": 3, "output": 1.32,
"cacheRead": 0.1, "cacheRead": 0.014,
"cacheWrite": 0 "cacheWrite": 0
}, },
"contextWindow": 262144, "contextWindow": 1048576,
"maxTokens": 65536, "maxTokens": 65536,
"compat": { "compat": {
"supportsDeveloperRole": false, "supportsDeveloperRole": false,
@@ -586,8 +365,8 @@
"baseUrl": "https://ollama.com/v1" "baseUrl": "https://ollama.com/v1"
}, },
{ {
"id": "glm-5.3", "id": "glm-5.1",
"name": "glm-5.3", "name": "glm-5.1",
"reasoning": true, "reasoning": true,
"thinkingLevelMap": { "thinkingLevelMap": {
"off": "none", "off": "none",
@@ -601,9 +380,55 @@
"text" "text"
], ],
"cost": { "cost": {
"input": 1.4, "input": 1,
"output": 4.4, "output": 3.2,
"cacheRead": 0.26, "cacheRead": 0.2,
"cacheWrite": 0
},
"contextWindow": 202752,
"maxTokens": 131072,
"compat": {
"supportsDeveloperRole": false,
"supportsReasoningEffort": true,
"supportsStore": false,
"maxTokensField": "max_tokens",
"supportsUsageInStreaming": true,
"requiresToolResultName": false,
"requiresAssistantAfterToolResult": false,
"requiresThinkingAsText": false,
"requiresReasoningContentOnAssistantMessages": false,
"thinkingFormat": "openai",
"supportsStrictMode": false,
"sendSessionAffinityHeaders": false,
"supportsLongCacheRetention": false,
"zaiToolStream": false,
"openRouterRouting": {},
"vercelGatewayRouting": {}
},
"provider": "ollama-cloud",
"api": "openai-completions",
"baseUrl": "https://ollama.com/v1"
},
{
"id": "glm-5.3-flash",
"name": "glm-5.3-flash",
"reasoning": true,
"thinkingLevelMap": {
"off": "none",
"minimal": null,
"low": "low",
"medium": "medium",
"high": "high",
"xhigh": "max"
},
"input": [
"text",
"image"
],
"cost": {
"input": 0.15,
"output": 0.5,
"cacheRead": 0.03,
"cacheWrite": 0 "cacheWrite": 0
}, },
"contextWindow": 1048576, "contextWindow": 1048576,
@@ -630,6 +455,51 @@
"api": "openai-completions", "api": "openai-completions",
"baseUrl": "https://ollama.com/v1" "baseUrl": "https://ollama.com/v1"
}, },
{
"id": "deepseek-v4-pro:0813",
"name": "deepseek-v4-pro:0813",
"reasoning": true,
"thinkingLevelMap": {
"off": "none",
"minimal": null,
"low": "low",
"medium": "medium",
"high": "high",
"xhigh": "max"
},
"input": [
"text"
],
"cost": {
"input": 1.32,
"output": 3.96,
"cacheRead": 0.044,
"cacheWrite": 0
},
"contextWindow": 1048576,
"maxTokens": 65536,
"compat": {
"supportsDeveloperRole": false,
"supportsReasoningEffort": true,
"supportsStore": false,
"maxTokensField": "max_tokens",
"supportsUsageInStreaming": true,
"requiresToolResultName": false,
"requiresAssistantAfterToolResult": false,
"requiresThinkingAsText": false,
"requiresReasoningContentOnAssistantMessages": false,
"thinkingFormat": "openai",
"supportsStrictMode": false,
"sendSessionAffinityHeaders": false,
"supportsLongCacheRetention": false,
"zaiToolStream": false,
"openRouterRouting": {},
"vercelGatewayRouting": {}
},
"provider": "ollama-cloud",
"api": "openai-completions",
"baseUrl": "https://ollama.com/v1"
},
{ {
"id": "gpt-oss:120b", "id": "gpt-oss:120b",
"name": "gpt-oss:120b", "name": "gpt-oss:120b",
@@ -720,6 +590,182 @@
"api": "openai-completions", "api": "openai-completions",
"baseUrl": "https://ollama.com/v1" "baseUrl": "https://ollama.com/v1"
}, },
{
"id": "mistral-large-3:675b",
"name": "mistral-large-3:675b",
"reasoning": false,
"input": [
"text",
"image"
],
"cost": {
"input": 0.5,
"output": 1.5,
"cacheRead": 0.5,
"cacheWrite": 0
},
"contextWindow": 262144,
"maxTokens": 262144,
"compat": {
"supportsDeveloperRole": false,
"supportsReasoningEffort": true,
"supportsStore": false,
"maxTokensField": "max_tokens",
"supportsUsageInStreaming": true,
"requiresToolResultName": false,
"requiresAssistantAfterToolResult": false,
"requiresThinkingAsText": false,
"requiresReasoningContentOnAssistantMessages": false,
"thinkingFormat": "openai",
"supportsStrictMode": false,
"sendSessionAffinityHeaders": false,
"supportsLongCacheRetention": false,
"zaiToolStream": false,
"openRouterRouting": {},
"vercelGatewayRouting": {}
},
"provider": "ollama-cloud",
"api": "openai-completions",
"baseUrl": "https://ollama.com/v1"
},
{
"id": "gemma4:31b",
"name": "gemma4:31b",
"reasoning": true,
"thinkingLevelMap": {
"off": "none",
"minimal": null,
"low": "low",
"medium": "medium",
"high": "high",
"xhigh": "max"
},
"input": [
"text",
"image"
],
"cost": {
"input": 0.14,
"output": 0.4,
"cacheRead": 0.05,
"cacheWrite": 0
},
"contextWindow": 262144,
"maxTokens": 262144,
"compat": {
"supportsDeveloperRole": false,
"supportsReasoningEffort": true,
"supportsStore": false,
"maxTokensField": "max_tokens",
"supportsUsageInStreaming": true,
"requiresToolResultName": false,
"requiresAssistantAfterToolResult": false,
"requiresThinkingAsText": false,
"requiresReasoningContentOnAssistantMessages": false,
"thinkingFormat": "openai",
"supportsStrictMode": false,
"sendSessionAffinityHeaders": false,
"supportsLongCacheRetention": false,
"zaiToolStream": false,
"openRouterRouting": {},
"vercelGatewayRouting": {}
},
"provider": "ollama-cloud",
"api": "openai-completions",
"baseUrl": "https://ollama.com/v1"
},
{
"id": "qwen3.5:397b",
"name": "qwen3.5:397b",
"reasoning": true,
"thinkingLevelMap": {
"off": "none",
"minimal": null,
"low": null,
"medium": "medium",
"high": null,
"xhigh": null
},
"input": [
"text",
"image"
],
"cost": {
"input": 0.6,
"output": 3.6,
"cacheRead": 0.6,
"cacheWrite": 0
},
"contextWindow": 262144,
"maxTokens": 65536,
"compat": {
"supportsDeveloperRole": false,
"supportsReasoningEffort": true,
"supportsStore": false,
"maxTokensField": "max_tokens",
"supportsUsageInStreaming": true,
"requiresToolResultName": false,
"requiresAssistantAfterToolResult": false,
"requiresThinkingAsText": false,
"requiresReasoningContentOnAssistantMessages": false,
"thinkingFormat": "openai",
"supportsStrictMode": false,
"sendSessionAffinityHeaders": false,
"supportsLongCacheRetention": false,
"zaiToolStream": false,
"openRouterRouting": {},
"vercelGatewayRouting": {}
},
"provider": "ollama-cloud",
"api": "openai-completions",
"baseUrl": "https://ollama.com/v1"
},
{
"id": "kimi-k3",
"name": "kimi-k3",
"reasoning": true,
"thinkingLevelMap": {
"off": "none",
"minimal": null,
"low": "low",
"medium": "medium",
"high": "high",
"xhigh": "max"
},
"input": [
"text",
"image"
],
"cost": {
"input": 3,
"output": 15,
"cacheRead": 0.3,
"cacheWrite": 0
},
"contextWindow": 1048576,
"maxTokens": 524288,
"compat": {
"supportsDeveloperRole": false,
"supportsReasoningEffort": true,
"supportsStore": false,
"maxTokensField": "max_tokens",
"supportsUsageInStreaming": true,
"requiresToolResultName": false,
"requiresAssistantAfterToolResult": false,
"requiresThinkingAsText": false,
"requiresReasoningContentOnAssistantMessages": false,
"thinkingFormat": "openai",
"supportsStrictMode": false,
"sendSessionAffinityHeaders": false,
"supportsLongCacheRetention": false,
"zaiToolStream": false,
"openRouterRouting": {},
"vercelGatewayRouting": {}
},
"provider": "ollama-cloud",
"api": "openai-completions",
"baseUrl": "https://ollama.com/v1"
},
{ {
"id": "nemotron-3-super", "id": "nemotron-3-super",
"name": "nemotron-3-super", "name": "nemotron-3-super",
@@ -766,53 +812,8 @@
"baseUrl": "https://ollama.com/v1" "baseUrl": "https://ollama.com/v1"
}, },
{ {
"id": "glm-5.2", "id": "nemotron-3-ultra",
"name": "glm-5.2", "name": "nemotron-3-ultra",
"reasoning": true,
"thinkingLevelMap": {
"off": "none",
"minimal": null,
"low": null,
"medium": null,
"high": "high",
"xhigh": "max"
},
"input": [
"text"
],
"cost": {
"input": 1.4,
"output": 4.4,
"cacheRead": 0.26,
"cacheWrite": 0
},
"contextWindow": 1048576,
"maxTokens": 131072,
"compat": {
"supportsDeveloperRole": false,
"supportsReasoningEffort": true,
"supportsStore": false,
"maxTokensField": "max_tokens",
"supportsUsageInStreaming": true,
"requiresToolResultName": false,
"requiresAssistantAfterToolResult": false,
"requiresThinkingAsText": false,
"requiresReasoningContentOnAssistantMessages": false,
"thinkingFormat": "openai",
"supportsStrictMode": false,
"sendSessionAffinityHeaders": false,
"supportsLongCacheRetention": false,
"zaiToolStream": false,
"openRouterRouting": {},
"vercelGatewayRouting": {}
},
"provider": "ollama-cloud",
"api": "openai-completions",
"baseUrl": "https://ollama.com/v1"
},
{
"id": "kimi-k2.6",
"name": "kimi-k2.6",
"reasoning": true, "reasoning": true,
"thinkingLevelMap": { "thinkingLevelMap": {
"off": "none", "off": "none",
@@ -823,17 +824,16 @@
"xhigh": "max" "xhigh": "max"
}, },
"input": [ "input": [
"text", "text"
"image"
], ],
"cost": { "cost": {
"input": 0.95, "input": 0.1,
"output": 4, "output": 3,
"cacheRead": 0.16, "cacheRead": 0.1,
"cacheWrite": 0 "cacheWrite": 0
}, },
"contextWindow": 262144, "contextWindow": 262144,
"maxTokens": 262144, "maxTokens": 65536,
"compat": { "compat": {
"supportsDeveloperRole": false, "supportsDeveloperRole": false,
"supportsReasoningEffort": true, "supportsReasoningEffort": true,
@@ -857,6 +857,6 @@
"baseUrl": "https://ollama.com/v1" "baseUrl": "https://ollama.com/v1"
} }
], ],
"checkedAt": 1788790671811 "checkedAt": 1788892975971
} }
} }
+2 -34
View File
@@ -5,14 +5,13 @@ alias qd='pi --provider ollama-cloud --model deepseek-v4-flash -p'
alias cl='clear' alias cl='clear'
alias cld='clear && cd' alias cld='clear && cd'
alias neo='neofetch' alias neo='neofetch'
alias mc='musikcube'
alias f='fuck' alias f='fuck'
alias a='aerc' alias a='aerc'
alias oc='opencode' alias oc='opencode'
alias bi='netbird down && netbird up --management-url https://bird.liphlink.xyz --setup-key 6652328A-1163-4D67-859E-331113224A56' alias bi='netbird down && netbird up --management-url https://bird.liphlink.xyz --setup-key 6652328A-1163-4D67-859E-331113224A56'
# colorscheme # colorscheme
alias col='kitten themes'
alias sc='~/scripts/theme-switch'
alias cc='bash -c "$(wget -qO- https://git.io/vQgMr)"' alias cc='bash -c "$(wget -qO- https://git.io/vQgMr)"'
# Store setup key outside dotfiles (e.g. pass / bitwarden / 1Password). # Store setup key outside dotfiles (e.g. pass / bitwarden / 1Password).
@@ -40,10 +39,7 @@ alias nv='nvim'
alias soz='source ~/.zshrc' alias soz='source ~/.zshrc'
alias rmm='sudo rm -R' alias rmm='sudo rm -R'
alias rr='sudo rm -rf' alias rr='sudo rm -rf'
alias mc='musikcube'
alias mat='tldr' alias mat='tldr'
alias kbu='kbdlight up 50'
alias kbd='kbdlight down 50'
alias tg='~/scripts/bluelight.sh' alias tg='~/scripts/bluelight.sh'
# niri brightness config # niri brightness config
@@ -56,10 +52,6 @@ alias rebo='sudo grub-mkconfig -o /boot/grub/grub.cfg; reboot'
alias shut='sudo grub-mkconfig -o /boot/grub/grub.cfg; shutdown now' alias shut='sudo grub-mkconfig -o /boot/grub/grub.cfg; shutdown now'
alias grubb='sudo grub-mkconfig -o /boot/grub/grub.cfg' alias grubb='sudo grub-mkconfig -o /boot/grub/grub.cfg'
# called from ~/scrtipts/
alias nlof="~/scripts/fzf_listoldfiles.sh"
# alias fman="compgen -c | fzf | xargs man"
## herdr ## herdr
alias hh="herdr" alias hh="herdr"
alias hsa="hh session attach" alias hsa="hh session attach"
@@ -69,13 +61,6 @@ alias hsd="hh session delete"
# alias heh="herdr && herdr-spreader apply [--file ~/.config/herdr/plugins/config/herdr-spreader/home.yml]" # alias heh="herdr && herdr-spreader apply [--file ~/.config/herdr/plugins/config/herdr-spreader/home.yml]"
# alias hec="herdr-spreader apply [--file ~/.config/herdr/plugins/config/herdr-spreader/code.yml]" # alias hec="herdr-spreader apply [--file ~/.config/herdr/plugins/config/herdr-spreader/code.yml]"
## tmux
alias ta='tmux attach'
# alias tn='tmux new'
alias tnh='tmuxp load ~/dotfiles/tmux/.tmuxp/home.yaml'
alias tnc='tmuxp load ~/dotfiles/tmux/.tmuxp/coding.yaml'
alias tns='~/scripts/tmux-sessionizer.sh'
# eza # eza
alias lt='eza --tree --level=1 --long --icons --git' alias lt='eza --tree --level=1 --long --icons --git'
alias ltt='eza --tree --level=2 --long --icons --git' alias ltt='eza --tree --level=2 --long --icons --git'
@@ -128,10 +113,6 @@ alias lsd='sudo mkdir /mount/'
alias lsm='sudo mount /dev/' alias lsm='sudo mount /dev/'
alias lsu='sudo umount /mount/' alias lsu='sudo umount /mount/'
# streamrip
alias ripp='rip search tidal album'
alias ripc='nvim ~/.config/streamrip/config.toml'
# paru # paru
alias ys='paru -S' # install packoz alias ys='paru -S' # install packoz
alias yr='paru -Rn' # remove package alias yr='paru -Rn' # remove package
@@ -169,17 +150,10 @@ alias yd='yt-dlp' # copy link from videodownload helper and add the URL i
alias photodetect='gphoto2 --auto-detect' alias photodetect='gphoto2 --auto-detect'
alias photoget='gphoto2 --get-all-files' alias photoget='gphoto2 --get-all-files'
# borg backup
alias boinit='borg init --encryption repokey' # add folder like /folder/ initiates the backupfunction
alias bolist='borg list' # /backup/ creates a list of al the backups which are contained in this folder
alias boc='borg create --stats --progress --compression lz4' # /backup::backup1 dotfiles creates the backup. The ::backup1 will be name of the backup
# create placeholder sudo borg create --stats --compression lz4 ::{user}-{now} file or folder
alias bomo='borg mount /home/liph/backup /tmp/borg' # which repo to mount and where to mount it. make sure the folder already exists
alias boumo='borg umount /tmp/borg' # unmount the mount folder
# systemctl # systemctl
alias sysen='sudo systemctl enable' alias sysen='sudo systemctl enable'
alias sysst='sudo systemctl start' alias sysst='sudo systemctl start'
alias syss='sudo systemctl status'
# podmand # podmand
alias pops='sudo podman ps' alias pops='sudo podman ps'
@@ -217,9 +191,3 @@ alias rmc='rm -rf ~/.cache/*' # clear user cache
alias ipa='sudo ip addr add ' alias ipa='sudo ip addr add '
alias ipl='sudo ip link set ' alias ipl='sudo ip link set '
alias ipf='sudo ip addr flush ' alias ipf='sudo ip addr flush '
# wireguard vpn
alias wgu='sudo wg-quick up' # start the connection you like to establish (f.E open)
alias wgd='sudo wg-quick down' # end the connection you like to end (f.E open)
alias wgc='sudo wg showconf' # show the config for a connection (f.E open)
alias wgs='sudo wg show' # show informations about the connection