Compare commits

...
80 Commits
Author SHA1 Message Date
coja f62cb40499 [Zelij] vim binds 2026-06-28 04:23:16 +02:00
coja a5a5bc1b1b [Pyradio] station update 2026-06-28 04:22:51 +02:00
coja 9d447e1cd0 [Tuis] update 2026-06-28 04:22:05 +02:00
coja e305c812ef [Fish] update 2026-06-28 04:21:07 +02:00
coja 71addd70ea [Cava] update 2026-06-28 04:20:12 +02:00
coja 077e5acba6 [Btop] conf update 2026-06-28 04:20:00 +02:00
coja 7a8a8fce6f [Pi] llms and keys 2026-06-28 04:19:53 +02:00
coja 0e07bcced0 [Git] gitignore 2026-06-28 04:18:55 +02:00
coja 572a4c2286 [Pi] update 2026-06-28 03:53:37 +02:00
coja b33a45fa1c [Pi] init 2026-06-27 21:23:59 +02:00
coja 3cbf3116c9 [Opencode] cleanup 2026-06-27 20:58:37 +02:00
coja b9398d31fe [Opencode] update 2026-06-27 20:56:55 +02:00
coja 9eb42566db [TuiOS] conf init 2026-06-27 04:33:42 +02:00
coja d314b43943 [Nvim] format on save, formatters 2026-06-27 04:19:13 +02:00
John Doe c14c6bf1af [Tuis] clis and tuis 2026-06-01 19:45:41 +02:00
John Doe f18b85247d [Pyradio] stations update 2026-06-01 19:44:59 +02:00
John Doe f59b36d637 [Fix] update fixes and cleanup 2026-06-01 19:44:50 +02:00
coja f30a7275d0 [Fish] worktree funciton 2026-05-08 14:22:55 +02:00
coja 2163dd70b6 [Pyradio] stations update 2026-05-06 20:35:42 +02:00
coja 076975d384 [Opencode] fail fix 2026-04-20 00:36:06 +02:00
coja d18a799be3 [Opencode] update 2026-04-20 00:34:26 +02:00
coja 3ced0b13d9 [Gitignore] update 2026-04-19 01:26:13 +02:00
coja 68d6cc3109 [Opencode] init 2026-04-19 01:25:09 +02:00
coja 8f73757604 [Nvim] snacks 2026-04-19 01:24:37 +02:00
coja dad966c3be [Keybinds] browsers 2026-04-19 01:24:24 +02:00
coja 7b2a2e5447 [Aichat] models update 2026-04-19 01:24:06 +02:00
coja 6cd73dc865 [AIchat] fix 2026-04-18 22:53:32 +02:00
coja 63c9bc520a [Fish] llm api key todo 2026-04-18 10:25:13 +02:00
coja 3c336fa1b3 [Swaylock] remove 2026-04-18 10:24:52 +02:00
coja 2a5d020110 [Pyradio] stations update 2026-04-18 09:06:25 +02:00
coja c6f63eb958 [Pyradio] stations update 2026-04-17 04:05:07 +02:00
coja a9f3dd28de [Nvim] mappings 2026-04-12 00:51:10 +02:00
coja f0dfb66fc2 [Nvim] gen -> codecompanion 2026-04-12 00:51:01 +02:00
coja 62f68b6570 [Hypr] hypridle fix 2026-04-12 00:50:46 +02:00
coja 01d7666f51 [Fish] cleanup 2026-04-12 00:49:43 +02:00
coja a4675f15b9 [Nvim] mappings 2026-04-11 05:13:37 +02:00
coja 3705c90fda [Nvim] mappings without yanking 2026-04-11 05:05:50 +02:00
coja b7e2599094 [Nvim] remove gen import 2026-04-11 02:59:11 +02:00
coja bdb669bb73 [Nvim] Gen -> CodeCompanion 2026-04-11 02:19:46 +02:00
coja e7da0a5f93 [Nvim] gen 2026-04-11 01:43:20 +02:00
coja f413a68803 [Nvim] fix render-markdown 2026-04-11 01:26:24 +02:00
coja e72c0b648c [Mpv] binds 2026-04-10 23:41:19 +02:00
coja 581001db0b [Fish] fzf and bashs 2026-04-10 23:41:08 +02:00
coja 9a154c71ec [Nvim] term 2026-04-10 23:06:31 +02:00
coja d8a08b8b14 [Lazygit] init 2026-04-10 23:05:38 +02:00
coja 19faeed49e [Hypr] hyprlock, hypridle 2026-04-10 23:05:23 +02:00
coja d943a80530 [Fish] fzf, xremap 2026-04-10 23:02:01 +02:00
coja 535d28900d [Btop] init 2026-04-10 23:01:22 +02:00
coja 0c480e2d1e [Nvim] cleanup 2026-04-10 01:06:00 +02:00
coja 03e193f975 [Nvim] mappings, floating term 2026-04-10 01:05:49 +02:00
coja 6498afda47 [Lazygit] selected color 2026-04-10 00:44:47 +02:00
coja 5580d801ee [Fish] cleanup 2026-04-10 00:40:25 +02:00
coja 1057355b76 [Opencode] typo 2026-04-10 00:40:17 +02:00
coja 83697d71e6 [Tui] update 2026-04-10 00:38:53 +02:00
coja 87798f132a [Opencode] bubblewrap 2026-04-08 01:19:50 +02:00
coja 751014a9fb [Hypr] bindings monitors 2026-04-08 01:17:20 +02:00
coja 6cee197b2e [Nvim] plugins cleanup 2026-04-08 01:16:42 +02:00
coja 2cc3a7330c [Swaylock] changes 2026-04-08 01:16:32 +02:00
coja 9dd5639868 [Nvim] Lazy update 2026-04-08 01:16:10 +02:00
coja c1d60f4786 [Swaylock] fix and bg change 2026-03-08 00:30:04 +01:00
coja ec99ca58d8 [Inputrc] cleanup 2026-03-07 02:45:28 +01:00
coja 5e2e481726 [Inputrc] init 2026-03-07 01:36:30 +01:00
coja 7ebe0a5d4b [Gitignore] greet 2026-03-07 01:35:56 +01:00
coja 5b9d76e08e [Nvim] mappings 2026-03-07 01:35:46 +01:00
coja 9736d2fd6e [Fish] update cleanup 2026-03-07 01:35:33 +01:00
coja 17540f0b8b [Fish] aliases and function 2026-03-07 01:35:09 +01:00
coja cd5cd23e71 [Fish] update cleanup 2026-03-07 01:34:20 +01:00
coja 87935ca581 [AiChat] config 2026-03-07 01:34:01 +01:00
coja 3ef2509830 [Nvim] update and LLM 2026-02-17 18:57:07 +01:00
coja c07058a3c4 [Kitty] conf 2026-02-17 18:56:51 +01:00
coja d78a9f76cf [Fish] update 2026-02-17 18:56:35 +01:00
coja 48d6400905 [Update] changes due to update 2026-02-17 18:55:08 +01:00
coja 6b7a6fd6e6 [Nvim] lint and pkg update 2025-10-11 00:57:02 +02:00
coja f5ae2e0848 [Fish] nmtui theme, bat 2025-10-11 00:56:33 +02:00
coja 940ba48422 [Kitty] music edits 2025-10-11 00:55:52 +02:00
coja 47d3d0d254 [Keybinds] update 2025-10-11 00:54:57 +02:00
coja 039eb20956 [Hypr] bugfix 2025-10-11 00:54:13 +02:00
coja 2d4b03425f [Cava] music visualizer config 2025-10-11 00:54:02 +02:00
coja 9002b1e720 [Doc] Readme edit 2025-10-11 00:52:38 +02:00
coja 4c6488d927 [Tuis] update 2025-10-11 00:52:29 +02:00
67 changed files with 2987 additions and 592 deletions
+3
View File
@@ -0,0 +1,3 @@
greet.txt
fish_variables
secrets.fish
+27
View File
@@ -0,0 +1,27 @@
# see https://github.com/sigoden/aichat/blob/main/config.example.yaml
keybindings: vi
editor: nvim
model: duskadiy:Qwen3-Coder-30B-Instruct-IQ4_XS
clients:
- type: openai-compatible
name: local
api_base: http://192.168.0.204:11343/v1
models:
- name: Qwen3.5-27B-UD-Q3_K_XL
- name: Qwen3.5-9B-Q8_0
- name: Qwen3-Coder-30B-Instruct-IQ4_XS
- name: GLM-4.7-Flash-UD-Q3_K_XL
- name: DeepSeek-Coder-V2-Lite-Instruct-Q8_0
- name: gemma-4-E4B-it-UD-Q8_K_XL
- name: gemma-4-26B-A4B-it-UD-IQ4_XS
- type: openai-compatible
name: duskadiy
api_base: https://llm.duskadiy.com/api/v1
models:
- name: Qwen3.5-27B-UD-Q3_K_XL
- name: Qwen3.5-9B-Q8_0
- name: Qwen3-Coder-30B-Instruct-IQ4_XS
- name: GLM-4.7-Flash-UD-Q3_K_XL
- name: DeepSeek-Coder-V2-Lite-Instruct-Q8_0
- name: gemma-4-E4B-it-UD-Q8_K_XL
- name: gemma-4-26B-A4B-it-UD-IQ4_XS
+286
View File
@@ -0,0 +1,286 @@
#? Config file for btop v.1.4.7
#* Name of a btop++/bpytop/bashtop formatted ".theme" file, "Default" and "TTY" for builtin themes.
#* Themes should be placed in "../share/btop/themes" relative to binary or "$HOME/.config/btop/themes"
color_theme = "Default"
#* If the theme set background should be shown, set to False if you want terminal background transparency.
theme_background = false
#* Sets if 24-bit truecolor should be used, will convert 24-bit colors to 256 color (6x6x6 color cube) if false.
truecolor = true
#* Set to true to force tty mode regardless if a real tty has been detected or not.
#* Will force 16-color mode and TTY theme, set all graph symbols to "tty" and swap out other non tty friendly symbols.
force_tty = false
#* Option to disable presets. Either the default preset, custom presets, or all presets.
#* "Off" All presets are enabled.
#* "Default" preset is disabled.#* "Custom" presets are disabled.#* "All" presets are disabled.
disable_presets = "Off"
#* Define presets for the layout of the boxes. Preset 0 is always all boxes shown with default settings. Max 9 presets.
#* Format: "box_name:P:G,box_name:P:G" P=(0 or 1) for alternate positions, G=graph symbol to use for box.
#* Use whitespace " " as separator between different presets.
#* Example: "cpu:0:default,mem:0:tty,proc:1:default cpu:0:braille,proc:0:tty"
presets = "cpu:1:default,proc:0:default cpu:0:default,mem:0:default,net:0:default cpu:0:block,net:0:tty"
#* Set to True to enable "h,j,k,l,g,G" keys for directional control in lists.
#* Conflicting keys for h:"help" and k:"kill" is accessible while holding shift.
vim_keys = true
#* Disable all mouse events.
disable_mouse = false
#* Rounded corners on boxes, is ignored if TTY mode is ON.
rounded_corners = true
#* Use terminal synchronized output sequences to reduce flickering on supported terminals.
terminal_sync = true
#* Default symbols to use for graph creation, "braille", "block" or "tty".
#* "braille" offers the highest resolution but might not be included in all fonts.
#* "block" has half the resolution of braille but uses more common characters.
#* "tty" uses only 3 different symbols but will work with most fonts and should work in a real TTY.
#* Note that "tty" only has half the horizontal resolution of the other two, so will show a shorter historical view.
graph_symbol = "braille"
# Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty".
graph_symbol_cpu = "default"
# Graph symbol to use for graphs in gpu box, "default", "braille", "block" or "tty".
graph_symbol_gpu = "default"
# Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty".
graph_symbol_mem = "default"
# Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty".
graph_symbol_net = "default"
# Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty".
graph_symbol_proc = "default"
#* Manually set which boxes to show. Available values are "cpu mem net proc" and "gpu0" through "gpu5", separate values with whitespace.
shown_boxes = "proc cpu mem net"
#* Update time in milliseconds, recommended 2000 ms or above for better sample times for graphs.
update_ms = 2000
#* Processes sorting, "pid" "program" "arguments" "threads" "user" "memory" "cpu lazy" "cpu direct",
#* "cpu lazy" sorts top process over time (easier to follow), "cpu direct" updates top process directly.
proc_sorting = "cpu lazy"
#* Reverse sorting order, True or False.
proc_reversed = false
#* Show processes as a tree.
proc_tree = true
#* Use the cpu graph colors in the process list.
proc_colors = true
#* Use a darkening gradient in the process list.
proc_gradient = true
#* If process cpu usage should be of the core it's running on or usage of the total available cpu power.
proc_per_core = false
#* Show process memory as bytes instead of percent.
proc_mem_bytes = true
#* Show cpu graph for each process.
proc_cpu_graphs = true
#* Use /proc/[pid]/smaps for memory information in the process info box (very slow but more accurate)
proc_info_smaps = false
#* Show proc box on left side of screen instead of right.
proc_left = false
#* (Linux) Filter processes tied to the Linux kernel(similar behavior to htop).
proc_filter_kernel = false
#* Should the process list follow the selected process when detailed view is open.
proc_follow_detailed = true
#* In tree-view, always accumulate child process resources in the parent process.
proc_aggregate = false
#* Should cpu and memory usage display be preserved for dead processes when paused.
keep_dead_proc_usage = false
#* Sets the CPU stat shown in upper half of the CPU graph, "total" is always available.
#* Select from a list of detected attributes from the options menu.
cpu_graph_upper = "Auto"
#* Sets the CPU stat shown in lower half of the CPU graph, "total" is always available.
#* Select from a list of detected attributes from the options menu.
cpu_graph_lower = "Auto"
#* If gpu info should be shown in the cpu box. Available values = "Auto", "On" and "Off".
show_gpu_info = "Auto"
#* Toggles if the lower CPU graph should be inverted.
cpu_invert_lower = true
#* Set to True to completely disable the lower CPU graph.
cpu_single_graph = false
#* Show cpu box at bottom of screen instead of top.
cpu_bottom = false
#* Shows the system uptime in the CPU box.
show_uptime = true
#* Shows the CPU package current power consumption in watts. Requires running `make setcap` or `make setuid` or running with sudo.
show_cpu_watts = true
#* Show cpu temperature.
check_temp = true
#* Which sensor to use for cpu temperature, use options menu to select from list of available sensors.
cpu_sensor = "Auto"
#* Show temperatures for cpu cores also if check_temp is True and sensors has been found.
show_coretemp = true
#* Set a custom mapping between core and coretemp, can be needed on certain cpus to get correct temperature for correct core.
#* Use lm-sensors or similar to see which cores are reporting temperatures on your machine.
#* Format "x:y" x=core with wrong temp, y=core with correct temp, use space as separator between multiple entries.
#* Example: "4:0 5:1 6:3"
cpu_core_map = ""
#* Which temperature scale to use, available values: "celsius", "fahrenheit", "kelvin" and "rankine".
temp_scale = "celsius"
#* Use base 10 for bits/bytes sizes, KB = 1000 instead of KiB = 1024.
base_10_sizes = false
#* Show CPU frequency.
show_cpu_freq = true
#* How to calculate CPU frequency, available values: "first", "range", "lowest", "highest" and "average".
freq_mode = "first"
#* Draw a clock at top of screen, formatting according to strftime, empty string to disable.
#* Special formatting: /host = hostname | /user = username | /uptime = system uptime
clock_format = "%X"
#* Update main ui in background when menus are showing, set this to false if the menus is flickering too much for comfort.
background_update = true
#* Custom cpu model name, empty string to disable.
custom_cpu_name = ""
#* Optional filter for shown disks, should be full path of a mountpoint, separate multiple values with whitespace " ".
#* Only disks matching the filter will be shown. Prepend exclude= to only show disks not matching the filter. Examples: disk_filter="/boot /home/user", disks_filter="exclude=/boot /home/user"
disks_filter = ""
#* Show graphs instead of meters for memory values.
mem_graphs = true
#* Show mem box below net box instead of above.
mem_below_net = false
#* Count ZFS ARC in cached and available memory.
zfs_arc_cached = true
#* If swap memory should be shown in memory box.
show_swap = true
#* Show swap as a disk, ignores show_swap value above, inserts itself after first disk.
swap_disk = true
#* If mem box should be split to also show disks info.
show_disks = true
#* Filter out non physical disks. Set this to False to include network disks, RAM disks and similar.
only_physical = true
#* Read disks list from /etc/fstab. This also disables only_physical.
use_fstab = true
#* Setting this to True will hide all datasets, and only show ZFS pools. (IO stats will be calculated per-pool)
zfs_hide_datasets = false
#* Set to true to show available disk space for privileged users.
disk_free_priv = false
#* Toggles if io activity % (disk busy time) should be shown in regular disk usage view.
show_io_stat = true
#* Toggles io mode for disks, showing big graphs for disk read/write speeds.
io_mode = false
#* Set to True to show combined read/write io graphs in io mode.
io_graph_combined = false
#* Set the top speed for the io graphs in MiB/s (100 by default), use format "mountpoint:speed" separate disks with whitespace " ".
#* Example: "/mnt/media:100 /:20 /boot:1".
io_graph_speeds = ""
#* Swap the positions of the upload and download speed graphs. When true, upload will be on top.
swap_upload_download = false
#* Set fixed values for network graphs in Mebibits. Is only used if net_auto is also set to False.
net_download = 100
net_upload = 100
#* Use network graphs auto rescaling mode, ignores any values set above and rescales down to 10 Kibibytes at the lowest.
net_auto = true
#* Sync the auto scaling for download and upload to whichever currently has the highest scale.
net_sync = true
#* Starts with the Network Interface specified here.
net_iface = ""
#* "True" shows bitrates in base 10 (Kbps, Mbps). "False" shows bitrates in binary sizes (Kibps, Mibps, etc.). "Auto" uses base_10_sizes.
base_10_bitrate = "Auto"
#* Show battery stats in top right if battery is present.
show_battery = true
#* Which battery to use if multiple are present. "Auto" for auto detection.
selected_battery = "Auto"
#* Show power stats of battery next to charge indicator.
show_battery_watts = true
#* Set loglevel for "~/.local/state/btop.log" levels are: "ERROR" "WARNING" "INFO" "DEBUG".
#* The level set includes all lower levels, i.e. "DEBUG" will show all logging info.
log_level = "WARNING"
#* Automatically save current settings to config file on exit.
save_config_on_exit = true
#* Measure PCIe throughput on NVIDIA cards, may impact performance on certain cards.
nvml_measure_pcie_speeds = true
#* Measure PCIe throughput on AMD cards, may impact performance on certain cards.
rsmi_measure_pcie_speeds = true
#* Horizontally mirror the GPU graph.
gpu_mirror_graph = true
#* Set which GPU vendors to show. Available values are "nvidia amd intel apple"
shown_gpus = "nvidia amd intel"
#* Custom gpu0 model name, empty string to disable.
custom_gpu_name0 = ""
#* Custom gpu1 model name, empty string to disable.
custom_gpu_name1 = ""
#* Custom gpu2 model name, empty string to disable.
custom_gpu_name2 = ""
#* Custom gpu3 model name, empty string to disable.
custom_gpu_name3 = ""
#* Custom gpu4 model name, empty string to disable.
custom_gpu_name4 = ""
#* Custom gpu5 model name, empty string to disable.
custom_gpu_name5 = ""
+40
View File
@@ -0,0 +1,40 @@
2024/11/19 (20:36:51) | ===> btop++ v.1.4.0
2024/11/19 (20:36:51) | WARNING: Intel GPU: Failed to initialize PMU
2024/11/19 (20:37:28) | INFO: Logger set to INFO
2024/11/26 (00:47:27) | ===> btop++ v.1.4.0
2024/11/26 (00:47:27) | WARNING: Intel GPU: Failed to initialize PMU
2024/11/26 (00:47:32) | ===> btop++ v.1.4.0
2024/11/26 (00:47:32) | WARNING: Intel GPU: Failed to initialize PMU
2024/12/16 (20:32:28) | ===> btop++ v.1.4.0
2024/12/16 (20:32:28) | WARNING: Intel GPU: Failed to initialize PMU
2025/01/06 (01:34:00) | ===> btop++ v.1.4.0
2025/01/06 (01:34:00) | WARNING: Intel GPU: Failed to initialize PMU
2025/02/23 (01:19:32) | ===> btop++ v.1.4.0
2025/02/23 (01:19:32) | WARNING: Intel GPU: Failed to initialize PMU
2025/03/12 (19:08:38) | ===> btop++ v.1.4.0
2025/03/12 (19:08:38) | WARNING: Intel GPU: Failed to initialize PMU
2025/03/13 (00:34:24) | ===> btop++ v.1.4.0
2025/03/13 (00:34:24) | WARNING: Intel GPU: Failed to initialize PMU
2025/03/19 (17:51:06) | ===> btop++ v.1.4.0
2025/03/19 (17:51:06) | WARNING: Intel GPU: Failed to initialize PMU
2025/03/22 (05:43:25) | ===> btop++ v.1.4.0
2025/03/22 (05:43:25) | WARNING: Intel GPU: Failed to initialize PMU
2025/03/22 (05:43:39) | ===> btop++ v.1.4.0
2025/03/22 (05:43:39) | WARNING: Intel GPU: Failed to initialize PMU
2025/03/24 (02:13:29) | ===> btop++ v.1.4.0
2025/03/24 (02:13:29) | WARNING: Intel GPU: Failed to initialize PMU
2025/03/25 (22:21:48) | ===> btop++ v.1.4.0
2025/03/25 (22:21:48) | WARNING: Intel GPU: Failed to initialize PMU
-14
View File
@@ -307,17 +307,3 @@ gradient_color_8 = '#59cc33'
; 3 = 1 # midtone
; 4 = 1
; 5 = 1 # treble
### HYPRDOTS CAVA: Autogenerated line below for wallbash###
[color]
gradient = 1
gradient_count = 8
gradient_color_1 = '#332952'
gradient_color_2 = '#463A6B'
gradient_color_3 = '#7D4B5F'
gradient_color_4 = '#8F576D'
gradient_color_5 = '#A36578'
gradient_color_6 = '#C27A90'
gradient_color_7 = '#E69A9D'
gradient_color_8 = '#F0AAAD'
+117
View File
@@ -0,0 +1,117 @@
#version 330
// this shader was stolen from shadertoy user ChunderFPV
#define SCALE 8.0
#define PI radians(180.0)
#define TAU (PI * 2.0)
#define CS(a) vec2(cos(a), sin(a))
#define PT(u, r) smoothstep(0.0, r, r - length(u))
in vec2 fragCoord;
out vec4 fragColor;
uniform float bars[512];
uniform int bars_count; // number of bars (left + right) (configurable)
uniform float shader_time; // shader execution time s
uniform int bar_width; // bar width (configurable), not used here
uniform int bar_spacing; // space bewteen bars (configurable)
uniform vec3 u_resolution; // window resolution
// colors, configurable in cava config file (r,g,b) (0.0 - 1.0)
uniform vec3 bg_color; // background color
uniform vec3 fg_color; // foreground color
uniform int gradient_count;
uniform vec3 gradient_colors[8]; // gradient colors
// gradient map ( color, equation, time, width, shadow, reciprocal )
vec3 gm(vec3 c, float n, float t, float w, float d, bool i) {
float g = min(abs(n), 1.0 / abs(n));
float s = abs(sin(n * PI - t));
if (i)
s = min(s, abs(sin(PI / n + t)));
return (1.0 - pow(abs(s), w)) * c * pow(g, d) * 6.0;
}
// denominator spiral, use 1/n for numerator
// ( screen xy, spiral exponent, decimal, line width, hardness, rotation )
float ds(vec2 u, float e, float n, float w, float h, float ro) {
float ur = length(u); // unit radius
float sr = pow(ur, e); // spiral radius
float a = round(sr) * n * TAU; // arc
vec2 xy = CS(a + ro) * ur; // xy coords
float l = PT(u - xy, w); // line
float s = mod(sr + 0.5, 1.0); // gradient smooth
s = min(s, 1.0 - s); // darken filter
return l * s * h;
}
void main() {
float t = shader_time / PI * 2.0;
vec4 m = vec4(0, 0, 0, 0); // iMouse;
m.xy = m.xy * 2.0 / u_resolution.xy - 1.0; // ±1x, ±1y
if (m.z > 0.0)
t += m.y * SCALE; // move time with mouse y
float z = (m.z > 0.0) ? pow(1.0 - abs(m.y), sign(m.y)) : 1.0; // zoom (+)
float e = (m.z > 0.0) ? pow(1.0 - abs(m.x), -sign(m.x))
: 1.0; // screen exponent (+)
float se = (m.z > 0.0) ? e * -sign(m.y) : 1.0; // spiral exponent
vec3 bg = vec3(0); // black background
float aa = 3.0; // anti-aliasing
for (float j = 0.0; j < aa; j++)
for (float k = 0.0; k < aa; k++) {
vec3 c = vec3(0);
vec2 o = vec2(j, k) / aa;
vec2 uv = (fragCoord * u_resolution.xy - 0.5 * u_resolution.xy + o) /
u_resolution.y * SCALE * z; // apply cartesian, scale and zoom
if (m.z > 0.0)
uv =
exp(log(abs(uv)) * e) * sign(uv); // warp screen space with exponent
float px = length(fwidth(uv)); // pixel width
float x = uv.x; // every pixel on x
float y = uv.y; // every pixel on y
float l = length(uv); // hypot of xy: sqrt(x*x+y*y)
float mc = (x * x + y * y - 1.0) / y; // metallic circle at xy
float g = min(abs(mc), 1.0 / abs(mc)); // gradient
vec3 gold = vec3(1.0, 0.6, 0.0) * g * l;
vec3 blue = vec3(0.3, 0.5, 0.9) * (1.0 - g);
vec3 rgb = max(gold, blue);
float w = 0.1; // line width
float d = 0.4; // shadow depth
c = max(c, gm(rgb, mc, -t, w * bars[0], d, false)); // metallic
c = max(c, gm(rgb, abs(y / x) * sign(y), -t, w * bars[1], d,
false)); // tangent
c = max(c, gm(rgb, (x * x) / (y * y) * sign(y), -t, w * bars[2], d,
false)); // sqrt cotangent
c = max(c, gm(rgb, (x * x) + (y * y), t, w * bars[3], d,
true)); // sqrt circles
c += rgb * ds(uv, se, t / TAU, px * 2.0 * bars[4], 2.0, 0.0); // spiral 1a
c += rgb * ds(uv, se, t / TAU, px * 2.0 * bars[5], 2.0, PI); // spiral 1b
c +=
rgb * ds(uv, -se, t / TAU, px * 2.0 * bars[6], 2.0, 0.0); // spiral 2a
c += rgb * ds(uv, -se, t / TAU, px * 2.0 * bars[7], 2.0, PI); // spiral 2b
c = max(c, 0.0); // clear negative color
c += pow(max(1.0 - l, 0.0), 3.0 / z); // center glow
if (m.z > 0.0) // display grid on click
{
vec2 xyg = abs(fract(uv + 0.5) - 0.5) / px; // xy grid
c.gb += 0.2 * (1.0 - min(min(xyg.x, xyg.y), 1.0));
}
bg += c;
}
bg /= aa * aa;
bg *= sqrt(bg) * 1.5;
fragColor = vec4(bg, 1.0);
}
+15
View File
@@ -0,0 +1,15 @@
[color]
background = '#001e26'
foreground = '#708183'
gradient = 1
gradient_color_1 = '#268bd2'
gradient_color_2 = '#6c71c4'
gradient_color_3 = '#cb4b16'
horizontal_gradient = 1
horizontal_gradient_color_1 = '#586e75'
horizontal_gradient_color_2 = '#b58900'
horizontal_gradient_color_3 = '#839496'
blend_direction = 'up'
+10
View File
@@ -0,0 +1,10 @@
[color]
horizontal_gradient = 1
horizontal_gradient_color_1 = '#c45161'
horizontal_gradient_color_2 = '#e094a0'
horizontal_gradient_color_3 = '#f2b6c0'
horizontal_gradient_color_4 = '#f2dde1'
horizontal_gradient_color_5 = '#cbc7d8'
horizontal_gradient_color_6 = '#8db7d2'
horizontal_gradient_color_7 = '#5e62a9'
horizontal_gradient_color_8 = '#434279'
@@ -0,0 +1,3 @@
set --global fish_key_bindings fish_vi_key_bindings
set --erase --universal fish_key_bindings
@@ -0,0 +1,38 @@
set --global fish_color_autosuggestion 4D5566
set --global fish_color_cancel -r
set --global fish_color_command 39BAE6
set --global fish_color_comment 626A73
set --global fish_color_cwd 59C2FF
set --global fish_color_cwd_root red
set --global fish_color_end F29668
set --global fish_color_error FF3333
set --global fish_color_escape 95E6CB
set --global fish_color_history_current --bold
set --global fish_color_host normal
set --global fish_color_host_remote yellow
set --global fish_color_keyword 39BAE6
set --global fish_color_match F07178
set --global fish_color_normal B3B1AD
set --global fish_color_operator E6B450
set --global fish_color_option B3B1AD
set --global fish_color_param B3B1AD
set --global fish_color_quote C2D94C
set --global fish_color_redirection FFEE99
set --global fish_color_search_match --background=E6B450
set --global fish_color_selection --background=E6B450
set --global fish_color_status red
set --global fish_color_user brgreen
set --global fish_color_valid_path --underline
set --global fish_pager_color_background
set --global fish_pager_color_completion normal
set --global fish_pager_color_description B3A06D yellow
set --global fish_pager_color_prefix normal --bold --underline
set --global fish_pager_color_progress brwhite --background=cyan
set --global fish_pager_color_secondary_background
set --global fish_pager_color_secondary_completion
set --global fish_pager_color_secondary_description
set --global fish_pager_color_secondary_prefix
set --global fish_pager_color_selected_background --background=E6B450
set --global fish_pager_color_selected_completion
set --global fish_pager_color_selected_description
set --global fish_pager_color_selected_prefix
+1
View File
@@ -0,0 +1 @@
fnm env --use-on-cd --shell fish | source
+30 -20
View File
@@ -1,39 +1,40 @@
set -gx QT_FONT_DPI 96
set -gx EDITOR nvim
set -gx PAGER less
set -gx PATH "/run/user/1000/fnm_multishells/14287_1763490645306/bin" $PATH;
set -gx FNM_MULTISHELL_PATH "/run/user/1000/fnm_multishells/14287_1763490645306";
set -gx FNM_VERSION_FILE_STRATEGY "local";
set -gx FNM_DIR "/home/anon/.local/share/fnm";
set -gx FNM_LOGLEVEL "info";
set -gx FNM_NODE_DIST_MIRROR "https://nodejs.org/dist";
set -gx FNM_COREPACK_ENABLED "false";
set -gx FNM_RESOLVE_ENGINES "true";
set -gx FNM_ARCH "x64";
set -Ux MANPAGER "nvim +Man!"
# set -gx DUSKADIY_API_KEY "*****"
set -x NEWT_COLORS 'root=black,black;window=black,black;border=white,black;listbox=white,black;label=blue,black;checkbox=red,black;title=green,black;button=white,red;actsellistbox=white,red;actlistbox=white,gray;compactbutton=white,gray;actcheckbox=white,blue;entry=lightgray,black;textbox=blue,black' nmtui
# set -gx BAT_THEME "Catppuccin Mocha"
## functions
set -g fish_greeting
set -g fish_cursor_insert line
set -g fish_cursor_default block
set -g fish_cursor_visual underscore
set -g fish_user_key_bindings
set -g askllama
set -g ask
set -g sshf
set -g tuis
alias dmz="cat ~/.config/fish/dmz.txt"
alias matrix="~/projects/random-clones/matrix/matrix"
alias nmatrix="neo-matrix -DS 3"
# LLMs
alias codellamasrv=" ~/projects/llama.cpp/build/bin/llama-server -m ~/projects/llama.cpp/models/codellama"
alias llama3-web="~/projects/llama.cpp/build/bin/llama-server -m ~/projects/llama.cpp/models/llama3"
alias llama3=" ~/projects/llama.cpp/build/bin/llama-cli -m ~/projects/llama.cpp/models/llama3"
alias llama=" ~/projects/llama.cpp/build/bin/llama-run"
alias llamasrv="~/projects/pkgs/llama.cpp/build/bin/llama-server"
abbr llamastart "llamasrv --host 0.0.0.0 --port 11343 --models-max 3 --models-preset ~/Documents/models/config.ini"
# Shorts
alias fzf="fzf --preview color='always {}'"
alias fzf="fzf --multi --preview 'bat --style=numbers --color=always {}' | xargs -n 1 nvim"
alias grep="grep --color=auto"
alias cat="vimcat"
# Git
alias gs="git status"
alias gs="git status --short"
alias gca="git add -p . && git commit"
alias gd="git diff --word-diff"
alias gl="git log --graph --show-signature"
alias gla="git log --all --decorate --oneline --graph"
alias gls="serie"
alias gm="git merge"
alias gm="git merge"
# List Directory
@@ -49,6 +50,7 @@ abbr dots "cdots && nvim"
abbr pnotes "cpnotes && nvim"
abbr todo "cpnotes && nvim ToDoNext.md"
abbr cat "bat -p"
abbr copy "wl-copy"
abbr img "kitten icat"
abbr fm "yazi" ## file manager
@@ -56,7 +58,7 @@ abbr lg "lazygit"
abbr mkdir "mkdir -p"
abbr faillock "sudo faillock --reset"
abbr ipadd "sudo ip route add 192.168.0.234 dev wg0"
abbr xremaps "sudo xremap ~/.config/xremap/config.yml"
abbr xremaps "sudo xremap --watch ~/.config/xremap/config.yml"
abbr pacs "sudo pacman -Syu --noconfirm"
abbr yays "yay --noconfirm --sudoloop"
abbr nmaps "sudo nmap -sn 192.168.0.0/24"
@@ -75,9 +77,17 @@ abbr .5 "cd ../../../../.."
zoxide init --cmd cd fish | source
export PATH="$HOME/.cargo/bin:$PATH"
thefuck --alias | source
# Created by `pipx` on 2025-05-31 20:14:06
set PATH $PATH /home/anon/.local/bin
thefuck --alias | source
# pnpm
set -gx PNPM_HOME "/home/anon/.local/share/pnpm"
if not string match -q -- $PNPM_HOME $PATH
set -gx PATH "$PNPM_HOME" $PATH
end
# pnpm end
fnm env --use-on-cd --shell fish | source
+2 -40
View File
@@ -3,43 +3,5 @@
SETUVAR --export EDITOR:nvim
SETUVAR --export MANPAGER:nvim\x20\x2bMan\x21
SETUVAR --export MANROFFOPT:\x2dP\x20\x2dc
SETUVAR __fish_initialized:3800
SETUVAR fish_color_autosuggestion:4D5566
SETUVAR fish_color_cancel:\x2dr
SETUVAR fish_color_command:39BAE6
SETUVAR fish_color_comment:626A73
SETUVAR fish_color_cwd:59C2FF
SETUVAR fish_color_cwd_root:red
SETUVAR fish_color_end:F29668
SETUVAR fish_color_error:FF3333
SETUVAR fish_color_escape:95E6CB
SETUVAR fish_color_history_current:\x2d\x2dbold
SETUVAR fish_color_host:normal
SETUVAR fish_color_host_remote:yellow
SETUVAR fish_color_keyword:39BAE6
SETUVAR fish_color_match:F07178
SETUVAR fish_color_normal:B3B1AD
SETUVAR fish_color_operator:E6B450
SETUVAR fish_color_option:B3B1AD
SETUVAR fish_color_param:B3B1AD
SETUVAR fish_color_quote:C2D94C
SETUVAR fish_color_redirection:FFEE99
SETUVAR fish_color_search_match:\x2d\x2dbackground\x3dE6B450
SETUVAR fish_color_selection:\x2d\x2dbackground\x3dE6B450
SETUVAR fish_color_status:red
SETUVAR fish_color_user:brgreen
SETUVAR fish_color_valid_path:\x2d\x2dunderline
SETUVAR fish_key_bindings:fish_vi_key_bindings
SETUVAR fish_pager_color_background:\x1d
SETUVAR fish_pager_color_completion:normal
SETUVAR fish_pager_color_description:B3A06D\x1eyellow
SETUVAR fish_pager_color_prefix:normal\x1e\x2d\x2dbold\x1e\x2d\x2dunderline
SETUVAR fish_pager_color_progress:brwhite\x1e\x2d\x2dbackground\x3dcyan
SETUVAR fish_pager_color_secondary_background:\x1d
SETUVAR fish_pager_color_secondary_completion:\x1d
SETUVAR fish_pager_color_secondary_description:\x1d
SETUVAR fish_pager_color_secondary_prefix:\x1d
SETUVAR fish_pager_color_selected_background:\x2d\x2dbackground\x3dE6B450
SETUVAR fish_pager_color_selected_completion:\x1d
SETUVAR fish_pager_color_selected_description:\x1d
SETUVAR fish_pager_color_selected_prefix:\x1d
SETUVAR TMP:/tmp/tmp\x2eYYqSsNsses
SETUVAR __fish_initialized:4300
+1 -1
View File
@@ -1,3 +1,3 @@
function askllama --description 'answer from llama'
~/projects/llama.cpp/build/bin/llama-run ~/projects/llama.cpp/models/llama3 $(string join '+' $argv[1..])
~/projects/pkgs/llama.cpp/build/bin/llama-simple -m ~/Documents/models/Qwen3-4B-Instruct-2507.Q4_K_M.gguf $(string join '+' $argv[1..])
end
+3
View File
@@ -0,0 +1,3 @@
function bashs --description 'raw bash command'
bash -c "$argv"
end
+24
View File
@@ -0,0 +1,24 @@
function c2-worktree
if test (count $argv) -ne 1
echo "Usage: pkg-worktree <branch-name>"
echo "Example: pkg-worktree package/package-update"
return 1
end
set branch $argv[1]
set dir (basename $branch)
git checkout -b $branch
or return 1
git checkout master
or return 1
git worktree add $dir $branch
or return 1
cd $dir
or return 1
pnpm i
end
+3
View File
@@ -0,0 +1,3 @@
function clis --description 'fzf select cli'
eval (string split "\n" (cat $HOME/.config/misc/clis.txt) | bashs "fzf --multi")
end
+21
View File
@@ -0,0 +1,21 @@
function opencodes --description 'bubblewraped opencode'
bwrap --unshare-all \
--new-session \
--clearenv \
--die-with-parent \
--share-net \
--dev /dev \
--proc /proc \
--ro-bind /usr /usr \
--ro-bind /lib /lib \
--ro-bind /lib64 /lib64 \
--ro-bind /bin /bin \
--ro-bind /etc /etc \
--ro-bind ~/.config/opencode ~/.config/opencode \
--tmpfs /tmp/node-compile-cache \
--bind ~/.local/state/opencode ~/.local/state/opencode \
--bind ~/.local/share/opencode ~/.local/share/opencode \
--bind "$(pwd)" "$(pwd)" \
opencode
end
# strace -f -e trace=%file opencode
+1 -1
View File
@@ -1,3 +1,3 @@
function sshf --description 'fzf select for ssh hosts'
ssh $(grep Host -w ~/.ssh/config | awk '{print $2}' | fzf --preview="echo" --preview-border="none")
ssh $(grep Host -w ~/.ssh/config | awk '{print $2}' | bashs "fzf --multi")
end
+1 -1
View File
@@ -1,3 +1,3 @@
function tuis --description 'fzf select tui'
eval (string split "\n" (cat $HOME/.dotfiles/tuis.txt) | fzf)
eval (string split "\n" (cat $HOME/.config/misc/tuis.txt) | bashs "fzf --multi")
end
+27
View File
@@ -0,0 +1,27 @@
#!/bin/bash
# Get the current battery percentage
battery_percentage=$(cat /sys/class/power_supply/BAT0/capacity)
# Get the battery status (Charging or Discharging)
battery_status=$(cat /sys/class/power_supply/BAT0/status)
# Define the battery icons for each 10% segment
battery_icons=("󰂃" "󰁺" "󰁻" "󰁼" "󰁽" "󰁾" "󰁿" "󰂀" "󰂁" "󰁹")
# Define the charging icon
charging_icon="󰂄"
# Calculate the index for the icon array
icon_index=$((battery_percentage / 10))
# Get the corresponding icon
battery_icon=${battery_icons[icon_index]}
# Check if the battery is charging
if [ "$battery_status" = "Charging" ]; then
battery_icon="$charging_icon"
fi
# Output the battery percentage and icon
echo "$battery_percentage% $battery_icon"
+18 -26
View File
@@ -10,41 +10,33 @@
$LOCKSCREEN = lockscreen.sh # Calls $LOCKSCREEN set from hyprland
general {
lock_cmd = $LOCKSCREEN
unlock_cmd = #notify-send "unlock!" # same as above, but unlock
before_sleep_cmd = $LOCKSCREEN # command ran before sleep
after_sleep_cmd = # notify-send "Awake!" # command ran after sleep
ignore_dbus_inhibit = 0
lock_cmd = pidof hyprlock || hyprlock
on_unlock_cmd = bash -c 'notify-send "Welcome back!"'
before_sleep_cmd = loginctl lock-session
after_sleep_cmd = bash -c 'brightnessctl -r; brightnessctl -d tpacpi::kbd_backlight set 1; hyprctl dispatch dpms on'
}
# Dims the display
listener {
timeout = 120
on-timeout = { brightnessctl -s && brightnessctl s 1% ;}
on-resume = brightnessctl -r
timeout = 180
on-timeout = bash -c 'brightnessctl -s set 50'
on-resume = bash -c 'brightnessctl -r'
}
# Lock it first before dpms off so that screen won't show for a moment after wake up.
listener {
timeout = 240
on-timeout = $LOCKSCREEN
timeout = 250 # 5min
on-timeout = loginctl lock-session # lock screen when timeout has passed
}
# DPMS off
listener {
timeout = 2300
on-timeout = hyprctl dispatch dpms off #do not turn off display while media is playing
on-resume = hyprctl dispatch dpms on
timeout = 350 # 3.6 minutes
on-timeout = bash -c 'brightnessctl -r; brightnessctl -s set 10; brightnessctl -d tpacpi::kbd_backlight set 0; hyprctl dispatch dpms off'
on-resume = bash -c 'brightnessctl -r; brightnessctl -d tpacpi::kbd_backlight set 1; hyprctl dispatch dpms on'
}
# Suspend
# listener {
# timeout = 500
# on-timeout = systemctl suspend
# }
# hyprlang noerror true
# Source anything from this path if you want to add your own listener
# source command actually do not exist yet
source = ~/.config/hypridle/*
# hyprlang noerror false
listener {
timeout = 550 # 5.5min
on-timeout = hyprctl dispatch dpms off # screen off when timeout has passed
on-resume = hyprctl dispatch dpms on # screen on when activity is detected after timeout has fired.
}
+9 -7
View File
@@ -38,8 +38,10 @@ exec-once = wl-paste --type text --watch cliphist store # clipboard store text d
exec-once = wl-paste --type image --watch cliphist store # clipboard store image data
exec-once = $scrPath/swwwallpaper.sh # start wallpaper daemon
exec-once = $scrPath/batterynotify.sh # battery notification
exec-once = xremap ~/.config/xremap/config.yml
exec-once = swayidle -w timeout 180 'swaylock --timestr %H:%M & brightnessctl -s & brightnessctl set 15' resume 'brightnessctl -r'
exec-once = xremap --watch ~/.config/xremap/config.yml
exec-once = hypridle
# █▀▀ █▄░█ █░█
# ██▄ █░▀█ ▀▄▀
@@ -98,10 +100,10 @@ device {
# See https://wiki.hyprland.org/Configuring/Variables/
gestures {
workspace_swipe = true
workspace_swipe_fingers = 3
}
# gestures {
# workspace_swipe = true
# workspace_swipe_fingers = 3
# }
# █░░ ▄▀█ █▄█ █▀█ █░█ ▀█▀ █▀
@@ -110,7 +112,7 @@ gestures {
# See https://wiki.hyprland.org/Configuring/Dwindle-Layout/
dwindle {
pseudotile = yes
# pseudotile = yes
preserve_split = yes
}
+108 -76
View File
@@ -2,83 +2,115 @@
#! █▀█ ░█░ █▀▀ █▀▄ █▄▄ █▄█ █▄▄ █░█
#*  Hyprlock Configuration File 
# Please do not edit this file manually.
# Follow the instructions below on how to make changes.
$fontColor = rgba(255,255,255,0.5)
$fontFamily = SourceCodeVF ExtraBold
$timeFontFamily = Cantarell ExtraBold
general {
no_fade_in = true
grade = 1
ignore_empty_input = true
text_trim = true
fade_in_time = 0.8
disable_loading_bar = 0
}
background {
monitor =
path = ~/sync/Drive/pics/foss-world-crop.png
blur_passes = 2
blur_size = 4
contrast = 0.7
brightness = 0.3
vibrancy = 0.15
vibrancy_darkness = 0.5
}
image {
monitor =
path = ~/sync/Drive/pics/matrixom-crop.png
position = 0, 80
reload_time = -1
reload_cmd =
}
input-field {
monitor =
size = 20%, 5%
position = 0, -60
outline_thickness = 3
dots_size = 0.08
dots_spacing = 0.2
dots_center = true
outer_color = rgba(0,0,0,0.1)
inner_color = $fontColor
fade_on_empty = true
}
label {
monitor =
text = cmd[update:5000] echo "<span alpha='40%'>$(uptime -p)</span>"
color = $fontColor
font_family = $fontFamily
font_size = 15
position = 0, 350
}
label {
monitor =
text = cmd[update:300000] echo "<span alpha='50%'>$(cat ~/.config/fish/greet.txt)</span>"
color = $fontColor
font_family = $fontFamily
font_size = 14
position = 0, 310
}
label {
monitor =
text = cmd[update:1000] echo "<span alpha='50%'>$(date +"%H:%M")</span>"
color = $fontColor
font_family = $timeFontFamily
font_size = 120
position = 0, -180
animation = pulse 2s infinite
opacity = 0.5
shadow_passes = 1
shadow_size = 1
shadow_color = rgba(0, 0, 0, 0.5)
}
label {
monitor =
text = cmd[update:1000] echo "<span alpha='50%'>$(LC_TIME=en_US.UF-8 date +'%A, %B %d')</span>"
color = $fontColor
font_family = $fontFamily
font_size = 25
position = 0, -300
}
label {
monitor =
text = cmd[update:1000] echo -e "<span alpha='50%'>$(~/.config/hypr/battery.sh)</span>"
color = $fontColor
font_family = $fontFamily
font_size = 14
position = -50, 30
halign = right
valign = bottom
}
label {
monitor =
color = $fontColor
text = cmd[] echo "<span alpha='50%'>⏻ </span>"
font-size=24
onclick = systemctl poweroff
position = 50, 30
halign = left
valign = bottom
}
#* Hyprlock active layout path:
# Set the layout path to be used by Hyprlock.
# Check the available layouts in the './hyprlock/' directory.
# Example: /=/path/to/anurati
$LAYOUT_PATH=~/.config/hypr/hyprlock/theme.conf
#*  Persistent layout declaration 
# If a persistent layout path is declared in $XDG_CONFIG_HOME/hypr/hyde.conf,
# the above layout setting will be ignored.
# this should be the full path to the layout file.
#*  All boilerplate configurations are handled by HyDE 
source = ~/.local/share/hyde/hyprlock.conf
#*  Making a custom layout 
# To create a custom layout, make a file in the './hyprlock/' directory.
# Example: './hyprlock/your_custom.conf'
# To use the custom layout, set the following variable:
# $LAYOUT_PATH=your_custom
# The custom layout will be sourced automatically.
# Alternatively, you can statically source the layout in '~/.config/hypr/hyde.conf'.
# This will take precedence over the variable in '~/.config/hypr/hyprlock.conf'.
#*  Command Variables 
# Hyprlock ships with there default variables that can be used to customize the lock screen.
# - https://wiki.hyprland.org/Hypr-Ecosystem/hyprlock/#label
# HyDE also provides custom variables that extend the functionality of Hyprlock.
# $BACKGROUND_PATH
# - The path to the wallpaper image.
# $HYPRLOCK_BACKGROUND
# - The path to the static hyprlock wallpaper image.
# - Can be set to set a static wallpaper for Hyprlock.
# $MPRIS_IMAGE
# - The path to the MPRIS image.
# - If MPRIS is not available, it will show the ~/.face.icon image
# - if available, otherwise, it will show the HyDE logo.
# $PROFILE_IMAGE
# - The path to the profile image.
# - If the image is not available, it will show the ~/.face.icon image
# - if available, otherwise, it will show the HyDE logo.
# $GREET_TEXT
# - A greeting text to be displayed on the lock screen.
# - The text will be updated every hour.
# $resolve.font
# - Resolves the font name and download link.
# - HyDE will run 'font.sh resolve' to install the font for you.
# - Note that you needed to have a network connection to download the font.
# - You also need to restart Hyprlock to apply the font.
# cmd [update:1000] $MPRIS_TEXT
# - Text from media players in "Title  Author" format.
# cmd [update:1000] $SPLASH_CMD
# - Outputs the song title when MPRIS is available,
# - otherwise, it will output the splash command.
# cmd [update:1] $CAVA_CMD
# - The command to be executed to get the CAVA output.
# - ⚠️ (Use with caution as it eats up the CPU.)
# cmd [update:5000] $BATTERY_ICON
# - The battery icon to be displayed on the lock screen.
# - Only works if the battery is available.
# cmd [update:1000] $KEYBOARD_LAYOUT
# - The current keyboard layout
# - SUPER + K to change the keyboard layout (or any binding you set)
+16 -14
View File
@@ -1,4 +1,3 @@
# █▄▀ █▀▀ █▄█ █▄▄ █ █▄░█ █▀▄ █ █▄░█ █▀▀ █▀
# █░█ ██▄ ░█░ █▄█ █ █░▀█ █▄▀ █ █░▀█ █▄█ ▄█
@@ -9,16 +8,12 @@
$mainMod = Super # super / meta / windows key
# Assign apps
$term = kitty # fish alacritty
$editor = neovide
$term = kitty # fish alacritty
$file = dolphin
$browser = librewolf
$yt = freetube
$notes = obsidian
$wm=Window Management
$d=[$wm]
# Window/Session actions
bind = $mainMod, Q, exec, $scrPath/dontkillsteam.sh # close focused window
@@ -27,7 +22,7 @@ bind = $mainMod, Delete, exit, # kill hyprland session
bind = $mainMod, W, togglefloating, # toggle the window between focus and float
bind = $mainMod, G, togglegroup, # toggle the window between focus and group
bind = Alt, Return, fullscreen, # toggle the window between focus and fullscreen
bind = $mainMod, L, exec, swaylock --timestr %H:%M # launch lock screen
bind = $mainMod, L, exec, hyprlock --immediate #& sleep 0.3 && hyprctl dispatch dpms off
bind = Ctrl+Alt, W, exec, killall waybar || waybar # toggle waybar
# bind = $mainMod+Shift, F, exec, $scrPath/windowpin.sh # toggle pin on focused window
# bind = $mainMod, Backspace, exec, $scrPath/logoutlaunch.sh # launch logout menu
@@ -39,14 +34,21 @@ bind = Ctrl+Shift+Alt, T, exec, st # launch tilix terminal emulator - using for
bind = $mainMod+Shift, T, exec, st
bind = $mainMod+Ctrl, T, exec, tilix # launch tilix terminal emulator
bind = $mainMod, E, exec, $file # launch file manager
bind = $mainMod, C, exec, $editor # launch text editor
bind = $mainMod, F, exec, $yt # launch yt alternative
bind = $mainMod, B, exec, $browser # launch web browser
bind = $mainMod, M, exec, $notes # launch notes app
bind = $mainMod + Shift, B, exec, chromium
bind = $mainMod + Ctrl, B, exec, thorium-browser
bind = $mainMod, G, exec, gajim # launch messanger
bind = $mainMod, K, exec, keepassxc # launch password manager
bind = Ctrl+Shift, Escape, exec, $scrPath/sysmonlaunch.sh # launch system monitor (htop/btop or fallback to top)
# bind = $mainMod+Shift, B, exec, $browser, title: ^(LibreWolf Private Browsing)$ # launch private web browser
bind = $mainMod, Escape, exec, dunstctl close
bindd = $mainMod, N, Neovim, exec, $term -e nvim
bindd = $mainMod, R, $d pyradio, exec, kitty --session ~/.config/kitty/music.conf
bindd = $mainMod, I, $d c2, exec, kitty --session ~/.config/kitty/c2.conf
bindd = $mainMod, O, $d runners, exec, kitty --session ~/.config/kitty/runners.conf
bindd = Ctrl+Shift, Escape, Btop, exec, kitty -e btop
bindd = Ctrl+Alt, Delete, Btop, exec, kitty -e btop
# bind = Ctrl+Shift, Escape, exec, $scrPath/sysmonlaunch.sh # launch system monitor (htop/btop or fallback to top)
# Rofi menus
bind = $mainMod, A, exec, pkill -x rofi || $scrPath/rofilaunch.sh d # launch application launcher
@@ -85,8 +87,8 @@ bind = , Print, exec, $scrPath/screenshot.sh p # all monitors screenshot capture
# Custom scripts
bind = $mainMod+Alt, G, exec, $scrPath/gamemode.sh # disable hypr effects for gamemode
bind = $mainMod+Alt, Right, exec, $scrPath/swwwallpaper.sh -n # next wallpaper
bind = $mainMod+Alt, Left, exec, $scrPath/swwwallpaper.sh -p # previous wallpaper
# bind = $mainMod+Alt, Right, exec, $scrPath/swwwallpaper.sh -n # next wallpaper
# bind = $mainMod+Alt, Left, exec, $scrPath/swwwallpaper.sh -p # previous wallpaper
# bind = $mainMod+Alt, Up, exec, $scrPath/wbarconfgen.sh n # next waybar mode
# bind = $mainMod+Alt, Down, exec, $scrPath/wbarconfgen.sh p # previous waybar mode
bind = $mainMod+Shift, R, exec, pkill -x rofi || $scrPath/wallbashtoggle.sh -m # launch wallbash mode select menu
@@ -173,7 +175,7 @@ bind = $mainMod+Alt, S, movetoworkspacesilent, special
bind = $mainMod, S, togglespecialworkspace,
# Toggle focused window split
bind = $mainMod, J, togglesplit
bindd = $mainMod, J, $d toggle split, layoutmsg, togglesplit
$d=[$ws|Navigation|Relative workspace]
bindd = $mainMod Control Shift, Right, $d change active workspace forwards , workspace, r+1
+2
View File
@@ -19,7 +19,9 @@ monitor = $rightScreen, 1920x1080@60,1366x0, 1 # right
# monitor=DP-2,640x480@59.94Hz,0x0,1 # vga
# monitor = HDMI-A-1, 1366x768@60.00Hz, auto , 1, mirror, eDP-1 #mirror lapscreen
# monitor = DP-2, 1920x1080@60.00Hz, auto , 1, mirror, eDP-1 #mirror lapscreen jag3
# monitor = eDP-1, 1920x1080@60.00Hz, auto , 1, mirror, HDMI-A-1 #main hdmi, lapscreen mirrors
# monitor = eDP-1, 1920x1080@60.00Hz, auto , 1, mirror, DP-2 #main VGA, lapscreen mirrors
# monitor = , preferred, auto, 1, mirror, DP-2 # dmz projector
# monitor = eDP-1, 1920x1080@60, auto , 1, mirror, DP-2 #mirror vga test
+1 -1
View File
@@ -32,4 +32,4 @@ decoration {
}
}
layerrule = blur,waybar
# layerrule = blur,waybar
+18 -20
View File
@@ -30,8 +30,6 @@ bind = $mainMod+Alt, XF86MonBrightnessUp, exec, hyprshade off # disable blue lig
# █░░ ▄▀█ █░█ █▄░█ █▀▀ █░█
# █▄▄ █▀█ █▄█ █░▀█ █▄▄ █▀█
# exec-once = swayidle -w timeout 600 'swaylock' timeout 900 'hyprctl dispatch dpms off' resume 'hyprctl dispatch dpms on' # lock after 10 mins, sleep after 15 mins // install swayidle
# exec-once = swayidle -w timeout 1200 'swaylock; hyprctl dispatch dpms off' resume 'hyprctl dispatch dpms on' timeout 1800 'systemctl suspend' # lock and sleep after 20 mins, suspend after 30 mins // install swayidle
# exec-once = libinput-gestures // install libinput-gestures
# exec-once = swayosd-server # enable swayosd service
# exec-once = `pkexec swayosd-libinput-backend` # swayosd service for keyboard input (requires to be run in a subshell)
@@ -39,24 +37,24 @@ bind = $mainMod+Alt, XF86MonBrightnessUp, exec, hyprshade off # disable blue lig
# █░█░█ █ █▄░█ █▀▄ █▀█ █░█░█   █▀█ █░█ █░░ █▀▀ █▀
# ▀▄▀▄▀ █ █░▀█ █▄▀ █▄█ ▀▄▀▄▀   █▀▄ █▄█ █▄▄ ██▄ ▄█
windowrulev2 = opacity 0.90 0.90,class:^(neovide)$
windowrulev2 = opacity 0.90 0.90,class:^(firefox)$
windowrulev2 = opacity 0.80 0.80,class:^(betterbird)$
windowrulev2 = opacity 0.80 0.80,class:^(org.qbittorrent.qBittorrent)$
windowrulev2 = opacity 0.80 0.80,class:^(org.gajim.Gajim)$
windowrulev2 = opacity 0.80 0.80,class:^(Chromium)$
windowrulev2 = opacity 0.80 0.80,class:^(FreeTube)$
windowrulev2 = opacity 0.80 0.80,class:^(LibreWolf)$
windowrulev2 = opacity 0.80 0.60,class:^(obsidian)$
windowrulev2 = opacity 0.80 0.80,class:^(VSCodium)$
windowrulev2 = opacity 0.80 0.80,class:^(codium-url-handler)$
windowrulev2 = opacity 0.80 0.80,class:^(code-oss)$
windowrulev2 = opacity 0.80 0.80,class:^(Code)$
windowrulev2 = opacity 0.80 0.80,class:^(kitty)$
windowrulev2 = opacity 0.70 0.70,class:^(tilix)$
windowrulev2 = opacity 0.70 0.70,class:^(rustdesk)$
windowrulev2 = opacity 0.70 0.70,class:^(Ferdium)$
windowrulev2 = opacity 0.70 0.70,class:^(org.keepassxc.KeePassXC)$
windowrule = opacity 0.90 0.90, match:class ^(neovide)$
windowrule = opacity 0.90 0.90, match:class ^(firefox)$
windowrule = opacity 0.80 0.80, match:class ^(betterbird)$
windowrule = opacity 0.80 0.80, match:class ^(org.qbittorrent.qBittorrent)$
windowrule = opacity 0.80 0.80, match:class ^(org.gajim.Gajim)$
windowrule = opacity 0.80 0.80, match:class ^(FreeTube)$
windowrule = opacity 0.80 0.80, match:class ^(librewolf)$
windowrule = opacity 0.80 0.60, match:class ^(obsidian)$
windowrule = opacity 0.80 0.80, match:class ^(VSCodium)$
windowrule = opacity 0.80 0.80, match:class ^(codium-url-handler)$
windowrule = opacity 0.80 0.80, match:class ^(code-oss)$
windowrule = opacity 0.80 0.80, match:class ^(Code)$
windowrule = opacity 0.80 0.80, match:class ^(kitty)$
windowrule = opacity 0.70 0.70, match:class ^(chromium)$
windowrule = opacity 0.70 0.70, match:class ^(tilix)$
windowrule = opacity 0.70 0.70, match:class ^(rustdesk)$
windowrule = opacity 0.70 0.70, match:class ^(Ferdium)$
windowrule = opacity 0.70 0.70, match:class ^(org.keepassxc.KeePassXC)$
# █░█ █▀▄▀█
# ▀▄▀ █░▀░█
+57 -76
View File
@@ -5,87 +5,68 @@
# See https://wiki.hyprland.org/Configuring/Window-Rules/
# hyprctl clients to get names
windowrulev2 = opacity 0.80 0.80,class:^(code-url-handler)$
windowrulev2 = opacity 0.80 0.80,class:^(code-insiders-url-handler)$
windowrulev2 = opacity 0.80 0.80,class:^(org.kde.dolphin)$
windowrulev2 = opacity 0.80 0.80,class:^(org.kde.ark)$
windowrulev2 = opacity 0.80 0.80,class:^(nwg-look)$
windowrulev2 = opacity 0.80 0.80,class:^(qt5ct)$
windowrulev2 = opacity 0.80 0.80,class:^(qt6ct)$
windowrulev2 = opacity 0.80 0.80,class:^(kvantummanager)$
windowrulev2 = opacity 0.80 0.70,class:^(org.pulseaudio.pavucontrol)$
windowrulev2 = opacity 0.80 0.70,class:^(lagrange)$
windowrulev2 = opacity 0.60 0.60,class:^(com.github.wwmm.easyeffects)$
windowrulev2 = opacity 0.80 0.70,class:^(blueman-manager)$
windowrulev2 = opacity 0.80 0.70,class:^(nm-applet)$
windowrulev2 = opacity 0.80 0.70,class:^(nm-connection-editor)$
windowrulev2 = opacity 0.80 0.70,class:^(org.kde.polkit-kde-authentication-agent-1)$
windowrulev2 = opacity 0.80 0.70,class:^(polkit-gnome-authentication-agent-1)$
windowrulev2 = opacity 0.80 0.70,class:^(org.freedesktop.impl.portal.desktop.gtk)$
windowrulev2 = opacity 0.80 0.70,class:^(org.freedesktop.impl.portal.desktop.hyprland)$
windowrulev2 = opacity 0.70 0.70,class:^([Ss]team)$
windowrule = opacity 0.80 0.80, match:class ^(code-url-handler)$
windowrule = opacity 0.80 0.80, match:class ^(code-insiders-url-handler)$
windowrule = opacity 0.80 0.80, match:class ^(org.kde.dolphin)$
windowrule = opacity 0.80 0.80, float on, match:class ^(org.kde.ark)$
windowrule = opacity 0.80 0.80, float on, match:class ^(nwg-look)$
windowrule = opacity 0.80 0.80, float on, match:class ^(qt5ct)$
windowrule = opacity 0.80 0.80, float on, match:class ^(qt6ct)$
windowrule = opacity 0.80 0.80, float on, match:class ^(kvantummanager)$
windowrule = opacity 0.80 0.70, float on, match:class ^(org.pulseaudio.pavucontrol)$
windowrule = opacity 0.80 0.70, match:class ^(lagrange)$
windowrule = opacity 0.60 0.60, match:class ^(com.github.wwmm.easyeffects)$
windowrule = opacity 0.80 0.70, float on, match:class ^(blueman-manager)$
windowrule = opacity 0.80 0.70, float on, match:class ^(nm-applet)$
windowrule = opacity 0.80 0.70, float on, match:class ^(nm-connection-editor)$
windowrule = opacity 0.80 0.70, float on, match:class ^(org.kde.polkit-kde-authentication-agent-1)$
windowrule = opacity 0.80 0.70, match:class ^(polkit-gnome-authentication-agent-1)$
windowrule = opacity 0.80 0.70, match:class ^(org.freedesktop.impl.portal.desktop.gtk)$
windowrule = opacity 0.80 0.70, match:class ^(org.freedesktop.impl.portal.desktop.hyprland)$
windowrule = opacity 0.70 0.70, match:class ^([Ss]team)$
windowrulev2 = opacity 0.90 0.90,class:^(com.github.rafostar.Clapper)$ # Clapper-Gtk
windowrulev2 = opacity 0.80 0.80,class:^(com.github.tchx84.Flatseal)$ # Flatseal-Gtk
windowrulev2 = opacity 0.80 0.80,class:^(hu.kramo.Cartridges)$ # Cartridges-Gtk
windowrulev2 = opacity 0.80 0.80,class:^(com.obsproject.Studio)$ # Obs-Qt
windowrulev2 = opacity 0.80 0.80,class:^(gnome-boxes)$ # Boxes-Gtk
windowrulev2 = opacity 0.80 0.80,class:^(discord)$ # Discord-Electron
windowrulev2 = opacity 0.80 0.80,class:^(WebCord)$ # WebCord-Electron
windowrulev2 = opacity 0.80 0.80,class:^(ArmCord)$ # ArmCord-Electron
windowrulev2 = opacity 0.80 0.80,class:^(app.drey.Warp)$ # Warp-Gtk
windowrulev2 = opacity 0.80 0.80,class:^(net.davidotek.pupgui2)$ # ProtonUp-Qt
windowrulev2 = opacity 0.80 0.80,class:^(yad)$ # Protontricks-Gtk
windowrulev2 = opacity 0.80 0.80,class:^(Signal)$ # Signal-Gtk
windowrulev2 = opacity 0.80 0.80,class:^(io.github.alainm23.planify)$ # planify-Gtk
windowrulev2 = opacity 0.80 0.80,class:^(io.gitlab.theevilskeleton.Upscaler)$ # Upscaler-Gtk
windowrulev2 = opacity 0.80 0.80,class:^(com.github.unrud.VideoDownloader)$ # VideoDownloader-Gtk
windowrulev2 = opacity 0.80 0.80,class:^(io.gitlab.adhami3310.Impression)$ # Impression-Gtk
windowrulev2 = opacity 0.80 0.80,class:^(io.missioncenter.MissionCenter)$ # MissionCenter-Gtk
windowrulev2 = opacity 0.80 0.80,class:^(io.github.flattool.Warehouse)$ # Warehouse-Gtk
windowrule = opacity 0.90 0.90, float on, match:class ^(com.github.rafostar.Clapper)$ # Clapper-Gtk
windowrule = opacity 0.80 0.80, match:class ^(com.github.tchx84.Flatseal)$ # Flatseal-Gtk
windowrule = opacity 0.80 0.80, match:class ^(hu.kramo.Cartridges)$ # Cartridges-Gtk
windowrule = opacity 0.80 0.80, match:class ^(com.obsproject.Studio)$ # Obs-Qt
windowrule = opacity 0.80 0.80, match:class ^(gnome-boxes)$ # Boxes-Gtk
windowrule = opacity 0.80 0.80, match:class ^(discord)$ # Discord-Electron
windowrule = opacity 0.80 0.80, match:class ^(WebCord)$ # WebCord-Electron
windowrule = opacity 0.80 0.80, match:class ^(ArmCord)$ # ArmCord-Electron
windowrule = opacity 0.80 0.80, float on, match:class ^(app.drey.Warp)$ # Warp-Gtk
windowrule = opacity 0.80 0.80, float on, match:class ^(net.davidotek.pupgui2)$ # ProtonUp-Qt
windowrule = opacity 0.80 0.80, float on, match:class ^(yad)$ # Protontricks-Gtk
windowrule = opacity 0.80 0.80, float on, match:class ^(Signal)$ # Signal-Gtk
windowrule = opacity 0.80 0.80, float on, match:class ^(io.github.alainm23.planify)$ # planify-Gtk
windowrule = opacity 0.80 0.80, float on, match:class ^(io.gitlab.theevilskeleton.Upscaler)$ # Upscaler-Gtk
windowrule = opacity 0.80 0.80, match:class ^(com.github.unrud.VideoDownloader)$ # VideoDownloader-Gtk
windowrule = opacity 0.80 0.80, float on, match:class ^(io.gitlab.adhami3310.Impression)$ # Impression-Gtk
windowrule = opacity 0.80 0.80, float on, match:class ^(io.missioncenter.MissionCenter)$ # MissionCenter-Gtk
windowrule = opacity 0.80 0.80, match:class ^(io.github.flattool.Warehouse)$ # Warehouse-Gtk
windowrulev2 = float,class:^(org.kde.dolphin)$,title:^(Progress Dialog — Dolphin)$
windowrulev2 = float,class:^(org.kde.dolphin)$,title:^(Copying — Dolphin)$
windowrulev2 = float,title:^(About Mozilla Firefox)$
windowrulev2 = float,class:^(firefox)$,title:^(Picture-in-Picture)$
windowrulev2 = float,class:^(firefox)$,title:^(Library)$
windowrulev2 = float,class:^(kitty)$,title:^(top)$
windowrulev2 = float,class:^(kitty)$,title:^(btop)$
windowrulev2 = float,class:^(kitty)$,title:^(htop)$
windowrulev2 = float,class:^(vlc)$
windowrulev2 = float,class:^(kvantummanager)$
windowrulev2 = float,class:^(qt5ct)$
windowrulev2 = float,class:^(qt6ct)$
windowrulev2 = float,class:^(nwg-look)$
windowrulev2 = float,class:^(org.kde.ark)$
windowrulev2 = float,class:^(org.pulseaudio.pavucontrol)$
windowrulev2 = float,class:^(blueman-manager)$
windowrulev2 = float,class:^(nm-applet)$
windowrulev2 = float,class:^(nm-connection-editor)$
windowrulev2 = float,class:^(org.kde.polkit-kde-authentication-agent-1)$
windowrule = float on, match:class ^(org.kde.dolphin)$, match:title ^(Progress Dialog — Dolphin)$
windowrule = float on, match:class ^(org.kde.dolphin)$, match:title ^(Copying — Dolphin)$
windowrule = float on, match:title ^(About Mozilla Firefox)$
windowrule = float on, match:class ^(firefox)$, match:title ^(Picture-in-Picture)$
windowrule = float on, match:class ^(firefox)$, match:title ^(Library)$
windowrule = float on, match:class ^(kitty)$, match:title ^(top)$
windowrule = float on, match:class ^(kitty)$, match:title ^(btop)$
windowrule = float on, match:class ^(kitty)$, match:title ^(htop)$
windowrule = float on, match:class ^(vlc)$
windowrulev2 = float,class:^(Signal)$ # Signal-Gtk
windowrulev2 = float,class:^(com.github.rafostar.Clapper)$ # Clapper-Gtk
windowrulev2 = float,class:^(app.drey.Warp)$ # Warp-Gtk
windowrulev2 = float,class:^(net.davidotek.pupgui2)$ # ProtonUp-Qt
windowrulev2 = float,class:^(yad)$ # Protontricks-Gtk
windowrulev2 = float,class:^(eog)$ # Imageviewer-Gtk
windowrulev2 = float,class:^(io.github.alainm23.planify)$ # planify-Gtk
windowrulev2 = float,class:^(io.gitlab.theevilskeleton.Upscaler)$ # Upscaler-Gtk
windowrulev2 = float,class:^(com.github.unrud.VideoDownloader)$ # VideoDownloader-Gkk
windowrulev2 = float,class:^(io.gitlab.adhami3310.Impression)$ # Impression-Gtk
windowrulev2 = float,class:^(io.missioncenter.MissionCenter)$ # MissionCenter-Gtk
windowrule = float on, match:class ^(eog)$ # Imageviewer-Gtk
windowrule = float on, match:class ^(com.github.unrud.VideoDownloader)$ # VideoDownloader-Gkk
# █░░ ▄▀█ █▄█ █▀▀ █▀█   █▀█ █░█ █░░ █▀▀ █▀
# █▄▄ █▀█ ░█░ ██▄ █▀▄   █▀▄ █▄█ █▄▄ ██▄ ▄█
layerrule = blur,rofi
layerrule = ignorezero,rofi
layerrule = blur,notifications
layerrule = ignorezero,notifications
layerrule = blur,swaync-notification-window
layerrule = ignorezero,swaync-notification-window
layerrule = blur,swaync-control-center
layerrule = ignorezero,swaync-control-center
layerrule = blur,logout_dialog
# layerrule = blur,rofi
# layerrule = ignorezero,rofi
# layerrule = blur,notifications
# layerrule = ignorezero,notifications
# layerrule = blur,swaync-notification-window
# layerrule = ignorezero,swaync-notification-window
# layerrule = blur,swaync-control-center
# layerrule = ignorezero,swaync-control-center
# layerrule = blur,logout_dialog
+17
View File
@@ -0,0 +1,17 @@
# run with `kitty --session ~/.config/kitty/c2.conf`
layout tall
# create a new tab
new_tab c2
cd ~/projects/wingman/c2/
launch --var window=first nvim
new_tab git
cd ~/projects/wingman/c2/
launch --var window=second lazygit
# focus neovim
# focus first
+1 -1
View File
@@ -12,5 +12,5 @@ tab_bar_style powerline
tab_powerline_style slanted
confirm_os_window_close 0
#background_opacity 0.60
background_opacity 0.70
#hide_window_decorations yes
+7 -7
View File
@@ -1,17 +1,17 @@
# Run with `kitty --session ~/.config/kitty/music.conf`
# run with `kitty --session ~/.config/kitty/music.conf`
layout tall
os_window_size 220c 64c
# Create a new tab
new_tab Music
# os_window_size 220c 64c
# create a new tab
new_tab music
# Set the working directory for windows in the current tab
# set the working directory for windows in the current tab
cd
launch --var window=first cava
# Create additional terminals
# create additional terminals
launch --location=hsplit pyradio
resize_window taller 10
focus pyradio
launch --location=vsplit pipes-rs
resize_window narrower 50
resize_window wider 20
+20
View File
@@ -0,0 +1,20 @@
# run with `kitty --session ~/.config/kitty/runners.conf`
layout stack
# create a new tab
new_tab runners
cd ~/projects/wingman/c2/
launch --var window=first pnpm dev
launch --location=hsplit react-devtools
resize_window narrower 20
launch --location=hsplit lazydocker
resize_window wider 120
# new_tab simulator
# cd ~/wmclient
# launch --var window=first wmsimulator.sh
+489
View File
@@ -0,0 +1,489 @@
# Config relating to the Lazygit UI
gui:
# The number of lines you scroll by when scrolling the main window
scrollHeight: 2
# If true, allow scrolling past the bottom of the content in the main window
scrollPastBottom: true
# See https://github.com/jesseduffield/lazygit/blob/master/docs/Config.md#scroll-off-margin
scrollOffMargin: 2
# One of: 'margin' (default) | 'jump'
scrollOffBehavior: margin
# If true, capture mouse events.
# When mouse events are captured, it's a little harder to select text: e.g. requiring you to hold the option key when on macOS.
mouseEvents: true
# If true, do not show a warning when discarding changes in the staging view.
skipDiscardChangeWarning: false
# If true, do not show warning when applying/popping the stash
skipStashWarning: false
# If true, do not show a warning when attempting to commit without any staged files; instead stage all unstaged files.
skipNoStagedFilesWarning: false
# If true, do not show a warning when rewording a commit via an external editor
skipRewordInEditorWarning: false
# Fraction of the total screen width to use for the left side section. You may want to pick a small number (e.g. 0.2) if you're using a narrow screen, so that you can see more of the main section.
# Number from 0 to 1.0.
sidePanelWidth: 0.3333
# If true, increase the height of the focused side window; creating an accordion effect.
expandFocusedSidePanel: true
# The weight of the expanded side panel, relative to the other panels. 2 means
# twice as tall as the other panels. Only relevant if `expandFocusedSidePanel` is true.
expandedSidePanelWeight: 3
# Sometimes the main window is split in two (e.g. when the selected file has both staged and unstaged changes). This setting controls how the two sections are split.
# Options are:
# - 'horizontal': split the window horizontally
# - 'vertical': split the window vertically
# - 'flexible': (default) split the window horizontally if the window is wide enough, otherwise split vertically
mainPanelSplitMode: flexible
# How the window is split when in half screen mode (i.e. after hitting '+' once).
# Possible values:
# - 'left': split the window horizontally (side panel on the left, main view on the right)
# - 'top': split the window vertically (side panel on top, main view below)
enlargedSideViewLocation: left
# If true, wrap lines in the staging view to the width of the view. This
# makes it much easier to work with diffs that have long lines, e.g.
# paragraphs of markdown text.
wrapLinesInStagingView: true
# One of 'auto' (default) | 'en' | 'zh-CN' | 'zh-TW' | 'pl' | 'nl' | 'ja' | 'ko' | 'ru'
language: auto
# Format used when displaying time e.g. commit time.
# Uses Go's time format syntax: https://pkg.go.dev/time#Time.Format
timeFormat: 02 Jan 06
# Format used when displaying time if the time is less than 24 hours ago.
# Uses Go's time format syntax: https://pkg.go.dev/time#Time.Format
shortTimeFormat: 3:04PM
# Config relating to colors and styles.
# See https://github.com/jesseduffield/lazygit/blob/master/docs/Config.md#color-attributes
theme:
# Border color of focused window
activeBorderColor:
- green
- bold
# Border color of non-focused windows
inactiveBorderColor:
- default
# Border color of focused window when searching in that window
searchingActiveBorderColor:
- cyan
- bold
# Color of keybindings help text in the bottom line
optionsTextColor:
- blue
# Background color of selected line.
# See https://github.com/jesseduffield/lazygit/blob/master/docs/Config.md#highlighting-the-selected-line
selectedRangeBgColor:
- "#444444"
selectedLineBgColor:
- "#444444"
# Background color of selected line when view doesn't have focus.
inactiveViewSelectedLineBgColor:
- bold
# Foreground color of copied commit
cherryPickedCommitFgColor:
- blue
# Background color of copied commit
cherryPickedCommitBgColor:
- cyan
# Foreground color of marked base commit (for rebase)
markedBaseCommitFgColor:
- blue
# Background color of marked base commit (for rebase)
markedBaseCommitBgColor:
- yellow
# Color for file with unstaged changes
unstagedChangesColor:
- red
# Default text color
defaultFgColor:
- default
# Config relating to the commit length indicator
commitLength:
# If true, show an indicator of commit message length
show: true
# If true, show the '5 of 20' footer at the bottom of list views
showListFooter: true
# If true, display the files in the file views as a tree. If false, display the files as a flat list.
# This can be toggled from within Lazygit with the '~' key, but that will not change the default.
showFileTree: true
# If true, show the number of lines changed per file in the Files view
showNumstatInFilesView: false
# If true, show a random tip in the command log when Lazygit starts
showRandomTip: true
# If true, show the command log
showCommandLog: true
# If true, show the bottom line that contains keybinding info and useful buttons. If false, this line will be hidden except to display a loader for an in-progress action.
showBottomLine: true
# If true, show jump-to-window keybindings in window titles.
showPanelJumps: true
# Deprecated: use nerdFontsVersion instead
showIcons: false
# Nerd fonts version to use.
# One of: '2' | '3' | empty string (default)
# If empty, do not show icons.
nerdFontsVersion: ""
# If true (default), file icons are shown in the file views. Only relevant if NerdFontsVersion is not empty.
showFileIcons: true
# Length of author name in (non-expanded) commits view. 2 means show initials only.
commitAuthorShortLength: 2
# Length of author name in expanded commits view. 2 means show initials only.
commitAuthorLongLength: 17
# Length of commit hash in commits view. 0 shows '*' if NF icons aren't on.
commitHashLength: 8
# If true, show commit hashes alongside branch names in the branches view.
showBranchCommitHash: false
# Whether to show the divergence from the base branch in the branches view.
# One of: 'none' | 'onlyArrow' | 'arrowAndNumber'
showDivergenceFromBaseBranch: none
# Height of the command log view
commandLogSize: 8
# Whether to split the main window when viewing file changes.
# One of: 'auto' | 'always'
# If 'auto', only split the main window when a file has both staged and unstaged changes
splitDiff: auto
# Default size for focused window. Window size can be changed from within Lazygit with '+' and '_' (but this won't change the default).
# One of: 'normal' (default) | 'half' | 'full'
screenMode: normal
# Window border style.
# One of 'rounded' (default) | 'single' | 'double' | 'hidden'
border: rounded
# If true, show a seriously epic explosion animation when nuking the working tree.
animateExplosion: true
# Whether to stack UI components on top of each other.
# One of 'auto' (default) | 'always' | 'never'
portraitMode: auto
# How things are filtered when typing '/'.
# One of 'substring' (default) | 'fuzzy'
filterMode: substring
# Config relating to the spinner.
spinner:
# The frames of the spinner animation.
frames:
- '|'
- /
- '-'
- \
# The "speed" of the spinner in milliseconds.
rate: 50
# Status panel view.
# One of 'dashboard' (default) | 'allBranchesLog'
statusPanelView: dashboard
# If true, jump to the Files panel after popping a stash
switchToFilesAfterStashPop: true
# If true, jump to the Files panel after applying a stash
switchToFilesAfterStashApply: true
# If true, when using the panel jump keys (default 1 through 5) and target panel is already active, go to next tab instead
switchTabsWithPanelJumpKeys: false
# Config relating to git
git:
# See https://github.com/jesseduffield/lazygit/blob/master/docs/Custom_Pagers.md
pagers:
- # Value of the --color arg in the git diff command. Some pagers want this to be set to 'always' and some want it set to 'never'
colorArg: always
# e.g.
# diff-so-fancy
# delta --dark --paging=never
# ydiff -p cat -s --wrap --width={{columnWidth}}
pager: ""
# If true, Lazygit will use whatever pager is specified in `$GIT_PAGER`, `$PAGER`, or your *git config*. If the pager ends with something like ` | less` we will strip that part out, because less doesn't play nice with our rendering approach. If the custom pager uses less under the hood, that will also break rendering (hence the `--paging=never` flag for the `delta` pager).
useConfig: false
# e.g. 'difft --color=always'
externalDiffCommand: ""
# Config relating to committing
commit:
# If true, pass '--signoff' flag when committing
signOff: false
# Automatic WYSIWYG wrapping of the commit message as you type
autoWrapCommitMessage: true
# If autoWrapCommitMessage is true, the width to wrap to
autoWrapWidth: 72
# Config relating to merging
merging:
# If true, run merges in a subprocess so that if a commit message is required, Lazygit will not hang
# Only applicable to unix users.
manualCommit: false
# Extra args passed to `git merge`, e.g. --no-ff
args: ""
# The commit message to use for a squash merge commit. Can contain "{{selectedRef}}" and "{{currentBranch}}" placeholders.
squashMergeMessage: Squash merge {{selectedRef}} into {{currentBranch}}
# list of branches that are considered 'main' branches, used when displaying commits
mainBranches:
- master
- main
# Prefix to use when skipping hooks. E.g. if set to 'WIP', then pre-commit hooks will be skipped when the commit message starts with 'WIP'
skipHookPrefix: WIP
# If true, periodically fetch from remote
autoFetch: true
# If true, periodically refresh files and submodules
autoRefresh: true
# If true, pass the --all arg to git fetch
fetchAll: true
# If true, lazygit will automatically stage files that used to have merge
# conflicts but no longer do; and it will also ask you if you want to
# continue a merge or rebase if you've resolved all conflicts. If false, it
# won't do either of these things.
autoStageResolvedConflicts: true
# Command used when displaying the current branch git log in the main window
branchLogCmd: git log --graph --color=always --abbrev-commit --decorate --date=relative --pretty=medium {{branchName}} --
# If true, do not spawn a separate process when using GPG
overrideGpg: false
# If true, do not allow force pushes
disableForcePushing: false
# See https://github.com/jesseduffield/lazygit/blob/master/docs/Config.md#predefined-commit-message-prefix
commitPrefix:
- # pattern to match on. E.g. for 'feature/AB-123' to match on the AB-123 use "^\\w+\\/(\\w+-\\w+).*"
pattern: ""
# Replace directive. E.g. for 'feature/AB-123' to start the commit message with 'AB-123 ' use "[$1] "
replace: ""
# See https://github.com/jesseduffield/lazygit/blob/master/docs/Config.md#predefined-branch-name-prefix
branchPrefix: ""
# If true, parse emoji strings in commit messages e.g. render :rocket: as 🚀
# (This should really be under 'gui', not 'git')
parseEmoji: false
# Config for showing the log in the commits view
log:
# One of: 'date-order' | 'author-date-order' | 'topo-order' | 'default'
# 'topo-order' makes it easier to read the git log graph, but commits may not
# appear chronologically. See https://git-scm.com/docs/
#
# Deprecated: Configure this with `Log menu -> Commit sort order` (<c-l> in the commits window by default).
order: topo-order
# This determines whether the git graph is rendered in the commits panel
# One of 'always' | 'never' | 'when-maximised'
#
# Deprecated: Configure this with `Log menu -> Show git graph` (<c-l> in the commits window by default).
showGraph: always
# displays the whole git graph by default in the commits view (equivalent to passing the `--all` argument to `git log`)
showWholeGraph: false
# When copying commit hashes to the clipboard, truncate them to this
# length. Set to 40 to disable truncation.
truncateCopiedCommitHashesTo: 12
allBranchesLogCmds:
- git log --graph --all --color=always --abbrev-commit --decorate --date=relative --pretty=medium
# Periodic update checks
update:
# One of: 'prompt' (default) | 'background' | 'never'
method: prompt
# Period in days between update checks
days: 14
# Background refreshes
refresher:
# File/submodule refresh interval in seconds.
# Auto-refresh can be disabled via option 'git.autoRefresh'.
refreshInterval: 10
# Re-fetch interval in seconds.
# Auto-fetch can be disabled via option 'git.autoFetch'.
fetchInterval: 60
# If true, show a confirmation popup before quitting Lazygit
confirmOnQuit: false
# If true, exit Lazygit when the user presses escape in a context where there is nothing to cancel/close
quitOnTopLevelReturn: false
# Config relating to things outside of Lazygit like how files are opened, copying to clipboard, etc
os:
# Command for editing a file. Should contain "{{filename}}".
edit: ""
# Command for editing a file at a given line number. Should contain
# "{{filename}}", and may optionally contain "{{line}}".
editAtLine: ""
# Same as EditAtLine, except that the command needs to wait until the
# window is closed.
editAtLineAndWait: ""
# For opening a directory in an editor
openDirInEditor: ""
# A built-in preset that sets all of the above settings. Supported presets
# are defined in the getPreset function in editor_presets.go.
editPreset: ""
# Command for opening a file, as if the file is double-clicked. Should
# contain "{{filename}}", but doesn't support "{{line}}".
open: ""
# Command for opening a link. Should contain "{{link}}".
openLink: ""
# EditCommand is the command for editing a file.
# Deprecated: use Edit instead. Note that semantics are different:
# EditCommand is just the command itself, whereas Edit contains a
# "{{filename}}" variable.
editCommand: ""
# EditCommandTemplate is the command template for editing a file
# Deprecated: use EditAtLine instead.
editCommandTemplate: ""
# OpenCommand is the command for opening a file
# Deprecated: use Open instead.
openCommand: ""
# OpenLinkCommand is the command for opening a link
# Deprecated: use OpenLink instead.
openLinkCommand: ""
# CopyToClipboardCmd is the command for copying to clipboard.
# See https://github.com/jesseduffield/lazygit/blob/master/docs/Config.md#custom-command-for-copying-to-and-pasting-from-clipboard
copyToClipboardCmd: ""
# ReadFromClipboardCmd is the command for reading the clipboard.
# See https://github.com/jesseduffield/lazygit/blob/master/docs/Config.md#custom-command-for-copying-to-and-pasting-from-clipboard
readFromClipboardCmd: ""
# If true, don't display introductory popups upon opening Lazygit.
disableStartupPopups: false
# What to do when opening Lazygit outside of a git repo.
# - 'prompt': (default) ask whether to initialize a new repo or open in the most recent repo
# - 'create': initialize a new repo
# - 'skip': open most recent repo
# - 'quit': exit Lazygit
notARepository: prompt
# If true, display a confirmation when subprocess terminates. This allows you to view the output of the subprocess before returning to Lazygit.
promptToReturnFromSubprocess: true
# Keybindings
keybinding:
universal:
quit: q
quit-alt1: <c-c>
return: <esc>
quitWithoutChangingDirectory: Q
togglePanel: <tab>
prevItem: <up>
nextItem: <down>
prevItem-alt: k
nextItem-alt: j
prevPage: ','
nextPage: .
scrollLeft: H
scrollRight: L
gotoTop: <
gotoBottom: '>'
toggleRangeSelect: v
rangeSelectDown: <s-down>
rangeSelectUp: <s-up>
prevBlock: <left>
nextBlock: <right>
prevBlock-alt: h
nextBlock-alt: l
nextBlock-alt2: <tab>
prevBlock-alt2: <backtab>
jumpToBlock:
- "1"
- "2"
- "3"
- "4"
- "5"
nextMatch: "n"
prevMatch: "N"
startSearch: /
optionMenu: <disabled>
optionMenu-alt1: '?'
select: <space>
goInto: <enter>
confirm: <enter>
confirmInEditor: <a-enter>
remove: d
new: "n"
edit: e
openFile: o
scrollUpMain: <pgup>
scrollDownMain: <pgdown>
scrollUpMain-alt1: K
scrollDownMain-alt1: J
scrollUpMain-alt2: <c-u>
scrollDownMain-alt2: <c-d>
executeShellCommand: ':'
createRebaseOptionsMenu: m
# 'Files' appended for legacy reasons
pushFiles: P
# 'Files' appended for legacy reasons
pullFiles: p
refresh: R
createPatchOptionsMenu: <c-p>
nextTab: ']'
prevTab: '['
nextScreenMode: +
prevScreenMode: _
undo: z
redo: <c-z>
filteringMenu: <c-s>
diffingMenu: W
diffingMenu-alt: <c-e>
copyToClipboard: <c-o>
openRecentRepos: <c-r>
submitEditorText: <enter>
extrasMenu: '@'
toggleWhitespaceInDiffView: <c-w>
increaseContextInDiffView: '}'
decreaseContextInDiffView: '{'
increaseRenameSimilarityThreshold: )
decreaseRenameSimilarityThreshold: (
openDiffTool: <c-t>
status:
checkForUpdate: u
recentRepos: <enter>
allBranchesLogGraph: a
files:
commitChanges: c
commitChangesWithoutHook: w
amendLastCommit: A
commitChangesWithEditor: C
findBaseCommitForFixup: <c-f>
confirmDiscard: x
ignoreFile: i
refreshFiles: r
stashAllChanges: s
viewStashOptions: S
toggleStagedAll: a
viewResetOptions: D
fetch: f
toggleTreeView: '`'
openMergeOptions: M
openStatusFilter: <c-b>
copyFileInfoToClipboard: "y"
branches:
createPullRequest: o
viewPullRequestOptions: O
copyPullRequestURL: <c-y>
checkoutBranchByName: c
forceCheckoutBranch: F
rebaseBranch: r
renameBranch: R
mergeIntoCurrentBranch: M
viewGitFlowOptions: i
fastForward: f
createTag: T
pushTag: P
setUpstream: u
fetchRemote: f
sortOrder: s
worktrees:
viewWorktreeOptions: w
commits:
squashDown: s
renameCommit: r
renameCommitWithEditor: R
viewResetOptions: g
markCommitAsFixup: f
createFixupCommit: F
squashAboveCommits: S
moveDownCommit: <c-j>
moveUpCommit: <c-k>
amendToCommit: A
resetCommitAuthor: a
pickCommit: p
revertCommit: t
cherryPickCopy: C
pasteCommits: V
markCommitAsBaseForRebase: B
tagCommit: T
checkoutCommit: <space>
copyCommitAttributeToClipboard: "y"
openLogMenu: <c-l>
openInBrowser: o
viewBisectOptions: b
startInteractiveRebase: i
amendAttribute:
resetAuthor: a
setAuthor: A
addCoAuthor: c
stash:
popStash: g
renameStash: r
commitFiles:
checkoutCommitFile: c
main:
toggleSelectHunk: a
pickBothHunks: b
editSelectHunk: E
submodules:
init: i
update: u
bulkMenu: b
commitMessage:
commitMenu: <c-o>
+29
View File
@@ -0,0 +1,29 @@
cal
calc
speedtest
aichat -e
askllama
ask
tldr
man
info
rsync -avkP
lsd
zioxide
httpie
bat
xxd
mpv
nix
distrobox
scrcpy
adb
watch
unzip
open
nmcli
iwctl
lsusb
thefuck
fastfetch
+16 -8
View File
@@ -15,20 +15,28 @@ bmon
profanity
nmtui
bluetui
drawterm
hunk
lazygit
lazydocker
lazyjorunal
oatmeal
tt
pastel
hexyl
pyradio
kew
tt
gittype
matrix
cava
tetrigo
tui-mines
nyaa
stig
tmux
zellij
nvim
vim
tetrigo
pyradio
kew
matrix
cava
tuios
llmfit
battop
subtui
+21
View File
@@ -0,0 +1,21 @@
# Volume
9 add volume -5
0 add volume 5
UP add volume 2
DOWN add volume -2
k add volume 2
j add volume -2
# Seek backward / forward
LEFT seek -5
RIGHT seek 5
l seek 5
h seek -5
# Bigger jumps
Shift+LEFT seek -30
Shift+RIGHT seek 30
+5
View File
@@ -0,0 +1,5 @@
[pyradio]
volume=50
-40
View File
@@ -1,31 +1,7 @@
vim.g.base46_cache = vim.fn.stdpath "data" .. "/base46/"
vim.g.mapleader = " "
----- custom config -----
if vim.g.neovide then
vim.g.neovide_opacity = 0.5
vim.g.neovide_scale_factor = 0.7
vim.g.neovide_window_blurred = true
vim.g.neovide_floating_blur_amount_x = 1.9
vim.g.neovide_floating_blur_amount_y = 1.9
vim.g.neovide_floating_shadow = true
vim.g.neovide_floating_z_height = 0
vim.g.neovide_hide_mouse_when_typing = true
vim.g.neovide_padding_top = 15
vim.g.neovide_padding_right = 5
vim.g.neovide_padding_left = 5
-- vim.g.neovide_fullscreen = true
-- vim.g.neovide_padding_bottom = 0
-- vim.g.neovide_light_radius = 5
-- vim.g.neovide_show_border = false
-- vim.g.neovide_light_angle_degrees = 45
end
vim.opt.relativenumber = true
----- end of custom -----
-- bootstrap lazy and all plugins
local lazypath = vim.fn.stdpath "data" .. "/lazy/lazy.nvim"
@@ -56,22 +32,6 @@ dofile(vim.g.base46_cache .. "statusline")
require "options"
require "nvchad.autocmds"
require "render-markdown"
require("gen").prompts["Markdown_links"] = {
prompt = "Make markdown links wherever you find link in the following text, and generate the namas accordingly:\n$text",
replace = true,
}
require("gen").prompts["Optimize code"] = {
prompt = "Check if code can be optimized for speed and readability:\n$text",
replace = true,
}
require("gen").prompts["Genetrate types "] = {
prompt = "Check if types are correct in this code, fix and optimize if something is needed:\n$text",
replace = true,
}
vim.schedule(function()
require "mappings"
+29 -29
View File
@@ -1,32 +1,32 @@
{
"LuaSnip": { "branch": "master", "commit": "0f7bbce41ea152a94d12aea286f2ce98e63c0f58" },
"NvChad": { "branch": "v2.5", "commit": "bbc3d43db088c141b142a40cd5f717635833a54e" },
"base46": { "branch": "v2.5", "commit": "8971be55aeb6d5fe086169c0ee9ce647a3871570" },
"cmp-buffer": { "branch": "main", "commit": "3022dbc9166796b644a841a02de8dd1cc1d311fa" },
"cmp-nvim-lsp": { "branch": "main", "commit": "39e2eda76828d88b773cc27a3f61d2ad782c922d" },
"cmp-nvim-lua": { "branch": "main", "commit": "f12408bdb54c39c23e67cab726264c10db33ada8" },
"cmp-path": { "branch": "main", "commit": "91ff86cd9c29299a64f968ebb45846c485725f23" },
"LuaSnip": { "branch": "master", "commit": "a62e1083a3cfe8b6b206e7d3d33a51091df25357" },
"NvChad": { "branch": "v2.5", "commit": "d042cc975247c2aa55fcb228e5d146dc1dc6c648" },
"base46": { "branch": "v2.5", "commit": "fde7a2cd54599e148d376f82980407c2d24b0fa2" },
"cmp-async-path": { "branch": "main", "commit": "f8af3f726e07f2e9d37672eaa9102581aefce149" },
"cmp-buffer": { "branch": "main", "commit": "b74fab3656eea9de20a9b8116afa3cfc4ec09657" },
"cmp-nvim-lsp": { "branch": "main", "commit": "cbc7b02bb99fae35cb42f514762b89b5126651ef" },
"cmp-nvim-lua": { "branch": "main", "commit": "e3a22cb071eb9d6508a156306b102c45cd2d573d" },
"cmp_luasnip": { "branch": "master", "commit": "98d9cb5c2c38532bd9bdb481067b20fea8f32e90" },
"conform.nvim": { "branch": "master", "commit": "023f795dbcf32d4351b6a9ed2e613d471b5bb812" },
"friendly-snippets": { "branch": "main", "commit": "de8fce94985873666bd9712ea3e49ee17aadb1ed" },
"gen.nvim": { "branch": "main", "commit": "c8e1f574d4a3a839dde73a87bdc319a62ee1e559" },
"gitsigns.nvim": { "branch": "main", "commit": "ac5aba6dce8c06ea22bea2c9016f51a2dbf90dc7" },
"indent-blankline.nvim": { "branch": "master", "commit": "7871a88056f7144defca9c931e311a3134c5d509" },
"lazy.nvim": { "branch": "main", "commit": "7967abe55752aa90532e6bb4bd4663fe27a264cb" },
"mason.nvim": { "branch": "main", "commit": "e2f7f9044ec30067bc11800a9e266664b88cda22" },
"menu": { "branch": "main", "commit": "657bfc91382c0928453d9a4d0a10ec92db5de2bb" },
"mini.nvim": { "branch": "main", "commit": "efff26174ca363c059f92e906753db47e81d870b" },
"minty": { "branch": "main", "commit": "a3d69bd63fc98f640815f94b797bf978e9193022" },
"nvim-autopairs": { "branch": "master", "commit": "b464658e9b880f463b9f7e6ccddd93fb0013f559" },
"nvim-cmp": { "branch": "main", "commit": "f17d9b4394027ff4442b298398dfcaab97e40c4f" },
"nvim-lspconfig": { "branch": "master", "commit": "f012c1b176f0e3c71f40eb309bdec0316689462e" },
"nvim-tree.lua": { "branch": "master", "commit": "f7c65e11d695a084ca10b93df659bb7e68b71f9f" },
"nvim-treesitter": { "branch": "master", "commit": "37427012d1c77c544356bfff0c9acc88fd3256bc" },
"nvim-web-devicons": { "branch": "master", "commit": "e87554285f581047b1bf236794b0eb812b444b87" },
"plenary.nvim": { "branch": "master", "commit": "2d9b06177a975543726ce5c73fca176cedbffe9d" },
"render-markdown.nvim": { "branch": "main", "commit": "eec00fbfd7273cdfa0a1154dbef0bb983641eaf8" },
"telescope.nvim": { "branch": "master", "commit": "85922dde3767e01d42a08e750a773effbffaea3e" },
"ui": { "branch": "v3.0", "commit": "9b31c25fc497d1ef726de15ae297769dbf90c1a5" },
"volt": { "branch": "main", "commit": "41c03a5d6a0a8a997e774a3482d82e5ef820c6ba" },
"which-key.nvim": { "branch": "main", "commit": "68e37e12913a66b60073906f5d3f14dee0de19f2" }
"codecompanion.nvim": { "branch": "main", "commit": "680c445eb357c72129d175ea5d481aa9e92ae6a5" },
"conform.nvim": { "branch": "master", "commit": "086a40dc7ed8242c03be9f47fbcee68699cc2395" },
"friendly-snippets": { "branch": "main", "commit": "6cd7280adead7f586db6fccbd15d2cac7e2188b9" },
"gitsigns.nvim": { "branch": "main", "commit": "6d808f99bd63303646794406e270bd553ad7792e" },
"indent-blankline.nvim": { "branch": "master", "commit": "d28a3f70721c79e3c5f6693057ae929f3d9c0a03" },
"lazy.nvim": { "branch": "main", "commit": "306a05526ada86a7b30af95c5cc81ffba93fef97" },
"mason.nvim": { "branch": "main", "commit": "12ddd182d9efbdc848b540f16484a583d52da0fb" },
"menu": { "branch": "main", "commit": "7a0a4a2896b715c066cfbe320bdc048091874cc6" },
"minty": { "branch": "main", "commit": "aafc9e8e0afe6bf57580858a2849578d8d8db9e0" },
"nvim-autopairs": { "branch": "master", "commit": "59bce2eef357189c3305e25bc6dd2d138c1683f5" },
"nvim-cmp": { "branch": "main", "commit": "a1d504892f2bc56c2e79b65c6faded2fd21f3eca" },
"nvim-lspconfig": { "branch": "master", "commit": "e146efacbafed3789ac568abcc5a981c5decaa58" },
"nvim-tree.lua": { "branch": "master", "commit": "d277467fc0d1d0e2bca88165a1de6b526f9f6fe8" },
"nvim-treesitter": { "branch": "main", "commit": "4916d6592ede8c07973490d9322f187e07dfefac" },
"nvim-web-devicons": { "branch": "master", "commit": "c72328a5494b4502947a022fe69c0c47e53b6aa6" },
"plenary.nvim": { "branch": "master", "commit": "74b06c6c75e4eeb3108ec01852001636d85a932b" },
"render-markdown.nvim": { "branch": "main", "commit": "d67113f11384c0dad96fced2f7b91f1fc811e97f" },
"snacks.nvim": { "branch": "main", "commit": "ad9ede6a9cddf16cedbd31b8932d6dcdee9b716e" },
"telescope.nvim": { "branch": "master", "commit": "028d9a0695a0cc4cfa893889f8c408ed7ccc8adc" },
"ui": { "branch": "v3.0", "commit": "cb75908a86720172594b30de147272c1b3a7f452" },
"volt": { "branch": "main", "commit": "620de1321f275ec9d80028c68d1b88b409c0c8b1" },
"which-key.nvim": { "branch": "main", "commit": "3aab2147e74890957785941f0c1ad87d0a44c15a" }
}
+25 -11
View File
@@ -27,17 +27,31 @@ local M = {
-- },
},
-- ui = {
-- -- lazyload it when there are 1+ buffers
-- tabufline = {
-- enabled = true,
-- lazyload = true,
-- order = { "treeOffset", "buffers", "tabs", "btns" },
-- modules = nil,
-- bufwidth = 21,
-- transparency = true,
-- },
-- },
ui = {
-- lazyload it when there are 1+ buffers
tabufline = {
enabled = true,
lazyload = true,
order = { "treeOffset", "buffers", "tabs", "btns" },
modules = nil,
bufwidth = 21,
transparency = true,
},
},
term = {
base46_colors = true,
winopts = { number = false },
sizes = { sp = 0.5, vsp = 0.2, ["bo sp"] = 0.3, ["bo vsp"] = 0.2 },
float = {
relative = "editor",
row = 0.05,
col = 0.05,
width = 0.9,
height = 0.8,
border = "single",
},
},
}
return M
@@ -0,0 +1,34 @@
local model = "Qwen3-Coder-30B-Instruct-IQ4_XS"
return {
adapters = {
http = {
llama_cpp = function()
return require("codecompanion.adapters").extend("openai_compatible", {
env = {
url = "http://localhost:11343",
chat_url = "/v1/chat/completions",
models_endpoint = "/v1/models",
api_key = "dummy",
},
schema = {
model = {
default = model,
},
},
})
end,
},
},
interactions = {
chat = {
adapter = "llama_cpp",
},
inline = {
adapter = "llama_cpp",
},
cmd = {
adapter = "llama_cpp",
},
},
}
+14 -7
View File
@@ -1,16 +1,23 @@
local options = {
formatters_by_ft = {
lua = { "stylua" },
css = { "prettier" },
html = { "prettier" },
javascript = { "prettier" },
javascriptreact = { "prettier" },
typescript = { "prettier" },
typescriptreact = { "prettier" },
json = { "prettier" },
html = { "prettier" },
yaml = { "prettier" },
markdown = { "prettier" },
css = { "prettier", "stylelint" },
scss = { "prettier", "stylelint" },
},
-- format_on_save = {
-- -- These options will be passed to conform.format()
-- timeout_ms = 500,
-- lsp_fallback = true,
-- },
format_on_save = {
-- These options will be passed to conform.format()
timeout_ms = 500,
lsp_format = "fallback",
},
}
return options
+1 -1
View File
@@ -1,6 +1,6 @@
require("nvchad.configs.lspconfig").defaults()
local servers = { "html", "cssls", "ts_ls" }
local servers = { "html", "cssls", "ts_ls", "eslint", "yamlls" }
vim.lsp.enable(servers)
-- local lspconfig = require "lspconfig"
+2 -2
View File
@@ -1,4 +1,4 @@
require("render-markdown").setup {
return {
-- Whether markdown should be rendered by default.
enabled = true,
-- Vim modes that will show a rendered view of the markdown file, :h mode(), for all enabled
@@ -24,7 +24,7 @@ require("render-markdown").setup {
-- Only intended to be used for plugin development / debugging.
log_runtime = false,
-- Filetypes this plugin will run on.
file_types = { "markdown" },
file_types = { "markdown", "gitcommit", "codecompanion" },
-- Takes buffer as input, if it returns true this plugin will not attach to the buffer
ignore = function()
return false
+19 -12
View File
@@ -4,16 +4,23 @@ require "nvchad.mappings"
local map = vim.keymap.set
map("n", ";", ":", { desc = "CMD enter command mode" })
map("n", "gd", vim.lsp.buf.definition, { desc = "Go to definition" })
local builtin = require "telescope.builtin"
map("n", "gD", builtin.lsp_definitions, { desc = "Go to definitions" })
map("n", "grr", builtin.lsp_references, { desc = "Go to references" })
map({ "n", "v" }, "<leader>ge", ":Gen<CR>")
map("n", "<leader>gl", "<cmd>lua vim.lsp.buf.code_action()<CR>", { noremap = true, silent = true })
-- map({ "n", "i", "v" }, "<C-s>", "<cmd> w <cr>")
map("n", "gD", "<cmd>Telescope lsp_definitions<CR>", { desc = "Go to Definitions" })
map("n", "grr", "<cmd>Telescope lsp_references<CR>", { desc = "Go to references" })
map("n", "<leader>da", ":lua vim.lsp.buf.code_action()<cr>", { desc = "Code actions", noremap = true, silent = true })
map("n", "<leader>dh", ":lua vim.diagnostic.open_float()<CR>", { desc = "Show diagnostics" })
map("n", "<leader>dj", ":lua vim.diagnostic.goto_next()<CR>", { desc = "Go to next" })
map("n", "<leader>dk", ":lua vim.diagnostic.goto_prev()<CR>", { desc = "Go to previous" })
-- Telescope
map("n", "<leader>fr", ":Telescope resume<CR>", { desc = "Resume last search" })
map("n", "<leader>fs", ":Telescope grep_string<CR>", { desc = "Find selected string" })
map("n", "<leader>fk", ":Telescope keymaps<CR>", { desc = "Find keymaps" })
map("n", "<leader>fd", ":Telescope diagnostics<CR>", { desc = "Diagnostics" })
-- CodeCompanion
map({ "n", "v" }, "<leader>ge", ":CodeCompanion<CR>", { desc = "CodeCompanion" })
map({ "n", "v" }, "<leader>ga", ":CodeCompanionActions<CR>", { desc = "CodeCompanion actions" })
map("n", "<leader>gc", ":CodeCompanionChat Toggle<CR>", { desc = "CodeCompanion chat" })
map("v", "<leader>gc", ":CodeCompanionChat Add<CR>", { desc = "Send selection to CodeCompanion chat" })
-- Remaps
map({ "n", "v" }, "x", '"_x', { desc = "Delete char without yanking" })
map({ "n", "v" }, "c", '"_c', { desc = "Change without yanking" })
+37 -44
View File
@@ -1,7 +1,7 @@
return {
{
"stevearc/conform.nvim",
-- event = 'BufWritePre', -- uncomment for format on save
event = "BufWritePre",
opts = require "configs.conform",
},
@@ -12,54 +12,47 @@ return {
end,
},
-- Custom Parameters (with defaults)
{
"David-Kunz/gen.nvim",
opts = {
-- model = "llama3.2:3b", -- The default model to use.
model = "mistral-small:22b",
-- host = "192.168.0.17",
quit_map = "q", -- set keymap to close the response window
retry_map = "<c-r>", -- set keymap to re-send the current prompt
accept_map = "<c-cr>", -- set keymap to replace the previous selection with the last result
-- host = "localhost", -- The host running the Ollama service.
host = "192.168.0.204", -- The host running the Ollama service.
port = "11434", -- The port on which the Ollama service is listening.
display_mode = "vertical-split", -- The display mode. Can be "float" or "split" or "horizontal-split" or "vertical-split".
show_prompt = true, -- Shows the prompt submitted to Ollama. Can be true (3 lines) or "full".
show_model = true, -- Displays which model you are using at the beginning of your chat session.
no_auto_close = false, -- Never closes the window automatically.
file = false, -- Write the payload to a temporary file to keep the command short.
hidden = false, -- Hide the generation window (if true, will implicitly set `prompt.replace = true`), requires Neovim >= 0.10
init = function(options)
pcall(io.popen, "ollama serve > /dev/null 2>&1 &")
end,
-- Function to initialize Ollama
command = function(options)
local body = { model = options.model, stream = true }
return "curl --silent --no-buffer -X POST http://"
.. options.host
.. ":"
.. options.port
.. "/api/chat -d $body"
end,
-- The command for the Ollama service. You can use placeholders $prompt, $model and $body (shellescaped).
-- This can also be a command string.
-- The executed command must return a JSON object with { response, context }
-- (context property is optional).
-- list_models = '<omitted lua function>', -- Retrieves a list of model names
result_filetype = "markdown", -- Configure filetype of the result buffer
debug = false, -- Prints errors and the command which is run.
"olimorris/codecompanion.nvim",
version = "^19.0.0",
lazy = false,
dependencies = {
"nvim-lua/plenary.nvim",
"nvim-treesitter/nvim-treesitter",
},
opts = function()
return require "configs.codecompanion"
end,
},
{
"MeanderingProgrammer/render-markdown.nvim",
dependencies = { "nvim-treesitter/nvim-treesitter", "echasnovski/mini.nvim" }, -- if you use the mini.nvim suite
-- dependencies = { 'nvim-treesitter/nvim-treesitter', 'echasnovski/mini.icons' }, -- if you use standalone mini plugins
-- dependencies = { 'nvim-treesitter/nvim-treesitter', 'nvim-tree/nvim-web-devicons' }, -- if you prefer nvim-web-devicons
---@module 'render-markdown'
---@type render.md.UserConfig
opts = {},
ft = { "markdown", "gitcommit", "codecompanion" },
opts = function()
return require "configs.render-markdown"
end,
},
{
"folke/snacks.nvim",
priority = 1000,
lazy = false,
---@type snacks.Config
opts = {
-- your configuration comes here
-- or leave it empty to use the default settings
-- refer to the configuration section below
bigfile = { enabled = false },
dashboard = { enabled = false },
explorer = { enabled = true },
indent = { enabled = true },
input = { enabled = true },
picker = { enabled = false },
notifier = { enabled = true },
quickfile = { enabled = true },
scope = { enabled = true },
scroll = { enabled = true },
statuscolumn = { enabled = true },
words = { enabled = true },
},
},
-- {
+278
View File
@@ -0,0 +1,278 @@
{
"$schema": "https://opencode.ai/config.json",
"model": "duskadiy/gemma-4-26B-A4B-it-UD-IQ4_XS",
"small_model": "duskadiy/gemma-4-E4B-it-UD-Q8_K_XL",
"instructions": ["CLAUDE.md", "AGENTS.md"],
"share": "disabled",
"autoupdate": "notify",
"disabled_providers": [
"gemini",
"anthropic",
"groq",
"openrouter",
"opencode"
],
"permission": {
"edit": "deny",
"webfetch": "ask",
"websearch": "ask",
"external_directory": "ask",
"read": {
"*": "allow",
"**/.env*": "deny",
"**/*.env": "deny",
"**/*.pem": "deny",
"**/*.key": "deny",
"**/*.p12": "deny",
"**/*.pfx": "deny",
"**/*.keystore": "deny",
"**/id_rsa*": "deny",
"**/.ssh/**": "deny",
"**/.aws/**": "deny",
"**/.npmrc": "deny",
"**/.netrc": "deny"
},
"bash": {
"*": "ask",
"ls *": "allow",
"cat *": "allow",
"grep *": "allow",
"rg *": "allow",
"find *": "allow",
"fd *": "allow",
"which *": "allow",
"file *": "allow",
"stat *": "allow",
"wc *": "allow",
"tree *": "allow",
"diff *": "allow",
"sort *": "allow",
"uniq *": "allow",
"echo *": "allow",
"pwd": "allow",
"date": "allow",
"whoami": "allow",
"jq *": "allow",
"tsc *": "allow",
"mkdir *": "allow",
"touch *": "allow",
"git *": "ask",
"git status": "allow",
"git status *": "allow",
"git diff": "allow",
"git diff *": "allow",
"git log": "allow",
"git log *": "allow",
"git show *": "allow",
"git branch": "allow",
"git remote -v": "allow",
"npm *": "ask",
"pnpm *": "ask",
"npx *": "ask",
"npm list": "allow",
"npm help": "allow",
"npm version": "allow",
"pnpm list": "allow",
"pnpm help": "allow",
"npx --version": "allow",
"curl *": "ask",
"wget *": "ask",
"rm *": "deny",
"rmdir *": "deny",
"dd *": "deny",
"mkfs*": "deny",
"shred *": "deny",
"chmod -R *": "deny",
"sudo *": "deny",
"doas *": "deny",
"npm install*": "deny",
"npm i": "deny",
"npm i *": "deny",
"npm ci*": "deny",
"pnpm install*": "deny",
"pnpm i": "deny",
"pnpm i *": "deny",
"pnpm add*": "deny",
"yarn add*": "deny",
"yarn install*": "deny",
"pip install*": "deny",
"pip3 install*": "deny",
"pipx install*": "deny",
"cargo install*": "deny",
"go install*": "deny",
"gem install*": "deny",
"brew install*": "deny",
"pacman *": "deny",
"yay *": "deny",
"apt *": "deny",
"apt-get *": "deny",
"dnf *": "deny",
"cat .env*": "deny",
"cat *.env": "deny",
"cat *.pem": "deny",
"cat *.key": "deny",
"cat *id_rsa*": "deny",
"cat *secret*": "deny",
"cat *credential*": "deny",
"cat ~/.ssh/*": "deny",
"cat ~/.aws/*": "deny",
"grep .env*": "deny",
"grep * .env*": "deny"
}
},
"provider": {
"duskadiy": {
"npm": "@ai-sdk/openai-compatible",
"name": "DuskaDIY",
"options": {
"baseURL": "https://llm.duskadiy.com/api/v1"
},
"models": {
"gemma-4-26B-A4B-it-UD-IQ4_XS": {
"name": "Gemma 4 26B (remote)",
"limit": {
"context": 81920,
"output": 8192
}
},
"DeepSeek-Coder-V2-Lite-Instruct-Q8_0": {
"name": "DeepSeek Coder V2 (remote)",
"limit": {
"context": 81920,
"output": 8192
}
},
"Qwen3-Coder-30B-Instruct-IQ4_XS": {
"name": "Qwen3 Coder A3B (remote)",
"limit": {
"context": 81920,
"output": 8192
}
}
}
},
"llama.cpp": {
"npm": "@ai-sdk/openai-compatible",
"name": "llamacpp",
"options": {
"baseURL": "http://192.168.0.204:11343/v1"
},
"models": {
"DeepSeek-Coder-V2-Lite-Instruct-Q8_0": {
"name": "DeepSeek Coder V2",
"limit": {
"context": 81920,
"output": 8192
}
},
"gemma-4-E4B-it-UD-Q8_K_XL": {
"name": "Gemma 4 E4B",
"limit": {
"context": 81920,
"output": 8192
}
},
"gemma-4-26B-A4B-it-UD-IQ4_XS": {
"name": "Gemma 4 26B",
"limit": {
"context": 81920,
"output": 8192
}
},
"Qwen3-Coder-30B-Instruct-IQ4_XS": {
"name": "Qwen3 Coder A3B",
"limit": {
"context": 81920,
"output": 8192
}
},
"Qwen3.6-27B-UD-IQ3_XXS.gguf": {
"name": "Qwen3.6 27B",
"limit": {
"context": 81920,
"output": 8192
}
}
}
}
},
"agent": {
"plan": {
"mode": "primary",
"model": "llama.cpp/gemma-4-26B-A4B-it-UD-IQ4_XS",
"permission": {
"edit": "deny"
}
},
"build": {
"mode": "primary",
"model": "llama.cpp/gemma-4-26B-A4B-it-UD-IQ4_XS",
"permission": {
"edit": {
"*": "allow",
"**/.env*": "deny",
"**/*.env": "deny",
"**/*.pem": "deny",
"**/*.key": "deny",
"**/id_rsa*": "deny",
"**/.ssh/**": "deny",
"**/.aws/**": "deny",
"**/.git/**": "deny",
"**/.npmrc": "deny",
"**/.netrc": "deny"
}
}
},
"code-reviewer": {
"description": "Reviews code for best practices and potential issues",
"prompt": "You are a code reviewer. Focus on security, performance, and maintainability.",
"mode": "subagent",
"model": "llama.cpp/DeepSeek-Coder-V2-Lite-Instruct-Q8_0",
"permission": {
"edit": "deny"
}
},
"test-runner": {
"description": "Runs and interprets test suites",
"prompt": "You are a test runner. Focus on identifying failing tests and providing clear reproduction steps.",
"mode": "subagent",
"model": "llama.cpp/DeepSeek-Coder-V2-Lite-Instruct-Q8_0",
"permission": {
"edit": "deny"
}
},
"doc-writer": {
"description": "Maintains project documentation and docstrings",
"prompt": "You are a technical writer. Focus on clarity, accuracy, and keeping documentation in sync with code changes.",
"mode": "subagent",
"model": "llama.cpp/gemma-4-26B-A4B-it-UD-IQ4_XS",
"permission": {
"edit": {
"*": "deny",
"**/*.md": "allow",
"**/*.mdx": "allow",
"**/*.markdown": "allow",
"**/*.txt": "allow",
"**/*.rst": "allow"
}
}
},
"security-auditor": {
"description": "Scans for security vulnerabilities and hardcoded secrets",
"prompt": "You are a security auditor. Focus on OWASP principles, secret detection, and dependency vulnerabilities.",
"mode": "subagent",
"model": "llama.cpp/DeepSeek-Coder-V2-Lite-Instruct-Q8_0",
"permission": {
"edit": "deny"
}
}
}
}
+1 -1
View File
@@ -1,6 +1,6 @@
# PyRadio User Configuration File
# To get a full list of options execute: pyradio -pc
# or examine the file: /usr/lib/python3.12/site-packages/pyradio/config
# or examine the file: /usr/lib/python3.13/site-packages/pyradio/config
#
theme = blue-by-boxer
use_transparency = True
+54 -47
View File
@@ -1,61 +1,68 @@
psyradio * fm - chillout,http://streamer.psyradio.org:8020/;listen.mp3,,
Caprice - Suomisaundi,http://79.120.77.11:8004/suomisaundi,,
Chillout (Groove Salad - SomaFM),http://somafm.com/startstream=groovesalad.pls,,
Soma FM Space,http://ice.somafm.com/spacestation,,
Soma FM Deep Space, http://ice.somafm.com/deepspaceone,,
SomaFM: Goa Psychill,http://ice3.somafm.com/suburbsofgoa-128-mp3,,
Caprice Liquid funk, http://79.111.119.111:9115/,,
Ambient Psychill [1.FM],http://strm112.1.fm/ambientpsy_mobile_mp3,,
Goa Psychill [SomaFM],http://ice3.somafm.com/suburbsofgoa-128-mp3,,
Chilli Zet,https://ch.cdn.eurozet.pl/chi-net.mp3,,
Chilltrax,http://server1.chilltrax.com:9000/,,
Chillout [psyradio*fm],http://streamer.psyradio.org:8020/;listen.mp3,,
Chillout [Psyndora],http://cast.magicstreams.gr:9125/stream,,
Chillout (Groove Salad) [SomaFM],https://hls.somafm.com/hls/groovesalad/320k/program.m3u8,,
Groove Salad Classic (Early 2000s Ambient),https://somafm.com/gsclassic.pls,,
Ambient and Experimental [n5MD],https://somafm.com/n5md.pls,,
Suomisaundi [Caprice],http://79.120.77.11:8004/suomisaundi,,
Vaporwaves [SomaFM],https://somafm.com/vaporwaves.pls,,
Cliq Hop [SomaFM],http://somafm.com/startstream=cliqhop.pls,,
Lounge (Illinois Street) [SomaFM],http://somafm.com/illstreet.pls,,
Space [SomaFM],http://ice.somafm.com/spacestation,,
Space Music [Synphaera],https://somafm.com/synphaera.pls,,
Deep Space [SomaFM], http://ice.somafm.com/deepspaceone,,
Downtempo (Secret Agent) [SomaFM],http://somafm.com/secretagent.pls,,
Dub Step (Beyond) [SomaFM],http://somafm.com/dubstep.pls,,
Dub Techno [Schizoid], http://94.130.113.214:8000/dubtechno,,
Dubplate.fm,https://sc2.dubplate.fm/radio/8030/dnb/uhifi,,
MansionNET,https://radio.inthemansion.com/listen/mansionnet/radio.mp3,,
Liquid funk [Caprice], http://79.111.119.111:9115/,,
Liquid funk,https://radiorecord.hostingradio.ru/liquidfunk96.aacp,,
Liqui Radio,https://stream-162.zeno.fm/ug59eq099yzuv?zs=zaqVusVSQuWMN3O5gnh8xA,,
Boris Brejcha,https://live.radiospinner.com/brsbrjch-96,,
Liquid DnB,http://95.47.244.172:8000/live,,
Acid Techno,https://radiorecord.hostingradio.ru/techno96.aacp,,
ToXoRs minimalRADIO (320k),http://95.216.245.239:8000/stream/1/,,
minimalradio.de,https://azurafallback.de:8010/320.mp3,,
Technolovers - minimal,https://stream.technolovers.fm/minimal,,
Full-on psytrance,http://79.111.14.76:9019/,,
Dark Techno [Caprice],http://79.111.14.76:8000/darktechno,,
Deep Techno/House [1.FM],http://strm112.1.fm/deeptech_mobile_mp3,,
90s90s Techno,http://streams.90s90s.de/techno/mp3-192/radiode/,,
The Trip: [SomaFM],https://somafm.com/thetrip.pls,,
ToXoRs minimalRADIO,http://95.216.245.239:8000/stream/1/,,
Minimalradio.de,https://azurafallback.de:8010/320.mp3,,
Minimal [Technolovers],https://stream.technolovers.fm/minimal,,
Suomisaundi / Freeform Psytrance / Spugedelic Trance [Caprice],http://79.120.77.11:8000/suomisaundi,,
Psychedelic Secret,https://solid48.streamupsolutions.com/proxy/bglsokon?mp=/=stream,,
Full-on psytrance [Caprice],http://79.111.14.76:9019/,,
Magnathospere Morning,https://listen7.myradio24.com/magnatos,,
PsyndoraTrance,http://cast.magicstreams.gr:9111/stream/,,
Psytrance [Psyndora],https://cast.magicstreams.gr/sc/psyndora/stream,,
Hirschmilch Psytrance,https://hirschmilch.de:7001/psytrance.mp3,,
Bluffphonica,http://bluffphonica.stream.laut.fm/bluffphonica?pl=m3u&amp;t302=2024-09-17_23-09-40&amp;uuid=ce6a1b0b-1654-4d08-afbc-31b028f8f23b,,
1.FM - BOM Psytrance Radio,http://strm112.1.fm/psytrance_mobile_mp3,,
Vasilis Cfu psy trance,https://stream-40.zeno.fm/c2t7d9p6mf9uv?zs=_D-E0xBPQcGB_V9n7LLuqA,,
BOM Psytrance [1.FM],http://strm112.1.fm/psytrance_mobile_mp3,,
TL_Psytrance,https://stream.technolovers.fm/psytrance,,
Record Goa Psy,https://radiorecord.hostingradio.ru/goa96.aacp,,
Anima Amoris [Goa Psy Trance],http://amoris.sknt.ru/goa.mp3,,
DMT FM Psytrance 24/7,https://dc1.serverse.com/proxy/ywycfrxn/live,,
radiOzora Trance,http://trance.out.airtime.pro:8000/trance_a,,
Psyndora Psytrance,http://cast.magicstreams.gr:9111/stream,,
Alternative (BAGeL Radio),https://ais-sa3.cdnstream1.com/2606_128.aac,,
Celtic (ThistleRadio - SomaFM),http://somafm.com/thistle.pls,,
Groove Salad Classic (Early 2000s Ambient),https://somafm.com/gsclassic.pls,,
n5MD Radio (Ambient and Experimental),https://somafm.com/n5md.pls,,
Vaporwaves [SomaFM],https://somafm.com/vaporwaves.pls,,
Commodore 64 Remixes (Slay Radio),http://www.slayradio.org/tune_in.php/128kbps/listen.m3u,,
Covers (SomaFM),http://somafm.com/covers.pls,,
Downtempo (Secret Agent - SomaFM),http://somafm.com/secretagent.pls,,
Dub Step (Dub Step Beyond - SomaFM),http://somafm.com/dubstep.pls,,
Electronic/Dance (Electronic Culture),http://www.shouted.fm/tunein/electro-dsl.m3u,,
House (Beat Blender - SomaFM),http://somafm.com/startstream=beatblender.pls,,
Indie Pop (Indie Pop Rocks! - SomaFM),http://somafm.com/indiepop130.pls,,
Intelligent dance music (Cliq Hop - SomaFM),http://somafm.com/startstream=cliqhop.pls,,
Jazz (Sonic Universe - SomaFM),http://somafm.com/startstream=sonicuniverse.pls,,
Lounge (Illinois Street Lounge - SomaFM),http://somafm.com/illstreet.pls,,
The Trip: [SomaFM],https://somafm.com/thetrip.pls,,
Pop (PopTron! - SomaFM),http://somafm.com/poptron.pls,,
Psytrance 24/7 [DMT FM],https://dc1.serverse.com/proxy/ywycfrxn/live,,
Trance [RadiOzora],http://trance.out.airtime.pro:8000/trance_a,,
Uplifting trance [Technolovers],https://0nlineradio.stream13.radiohost.de/technolovers-uplifting-trance,,
Uplift [RadioRecord],https://radiorecord.hostingradio.ru/uplift96.aacp,,
Alternative [BAGeL],https://ais-sa3.cdnstream1.com/2606_128.aac,,
Celtic (ThistleRadio) [SomaFM],http://somafm.com/thistle.pls,,
Commodore 64 Remixes [Slay],http://www.slayradio.org/tune_in.php/128kbps/listen.m3u,,
Covers [SomaFM],http://somafm.com/covers.pls,,
Indie Pop [SomaFM],http://somafm.com/indiepop130.pls,,
Jazz (Sonic Universe) [SomaFM],http://somafm.com/startstream=sonicuniverse.pls,,
Pop (PopTron) [SomaFM],http://somafm.com/poptron.pls,,
Pop/Rock/Urban (Frequence 3 - Paris),http://streams.frequence3.net/hd-mp3.m3u,,
Progressive (Tags Trance Trip - SomaFM),http://somafm.com/tagstrance.pls,,
Progressive (Tags Trance Trip) [SomaFM],http://somafm.com/tagstrance.pls,,
Public Radio (NPR National Public Radio Stream),https://npr-ice.streamguys1.com/live.mp3,,
Reggae Dancehall (Ragga Kings),https://raggakings.radio:8443/stream.ogg,,
Heavyweight Reggae,https://somafm.com/reggae.pls,,
Rock (Digitalis - SomaFM),http://somafm.com/digitalis.pls,,
Rock (Digitalis) [SomaFM],http://somafm.com/digitalis.pls,,
Metal Detector,https://somafm.com/metal.pls,,
DanceUK,https://www.internet-radio.com/servers/tools/playlistgenerator/?u=http://uk2.internet-radio.com:8024/listen.pls&t=.pls,,
JazzGroove,https://www.internet-radio.com/servers/tools/playlistgenerator/?u=http://199.180.72.2:8015/listen.pls?sid=1&t=.pls,,
Radio Paradise - Main Mix,http://stream.radioparadise.com/aac-128,,
Radio Paradise - Mellow Mix,http://stream.radioparadise.com/mellow-128,,
Radio Paradise - Rock Mix,http://stream.radioparadise.com/rock-128,,
Radio Paradise - Eclectic Mix,http://stream.radioparadise.com/eclectic-128,,
Main Mix [Paradise],http://stream.radioparadise.com/aac-128,,
Mellow Mix [Paradise] ,http://stream.radioparadise.com/mellow-128,,
Rock Mix [Paradise],http://stream.radioparadise.com/rock-128,,
Eclectic Mix [Paradise],http://stream.radioparadise.com/eclectic-128,,
Echoes of Bluemars,http://streams.echoesofbluemars.org:8000/bluemars.m3u,,
Echoes of Bluemars - Cryosleep,http://streams.echoesofbluemars.org:8000/cryosleep.m3u,,
Echoes of Bluemars - Voices from Within,http://streams.echoesofbluemars.org:8000/voicesfromwithin.m3u,,
Synphaera Radio (Space Music),https://somafm.com/synphaera.pls,,
Cryosleep [Echoes of Bluemars] ,http://streams.echoesofbluemars.org:8000/cryosleep.m3u,,
Voices from Within [Echoes of Bluemars],http://streams.echoesofbluemars.org:8000/voicesfromwithin.m3u,,
1 psyradio * fm - chillout Ambient Psychill [1.FM] http://streamer.psyradio.org:8020/;listen.mp3 http://strm112.1.fm/ambientpsy_mobile_mp3
2 Caprice - Suomisaundi Goa Psychill [SomaFM] http://79.120.77.11:8004/suomisaundi http://ice3.somafm.com/suburbsofgoa-128-mp3
3 Chillout (Groove Salad - SomaFM) Chilli Zet http://somafm.com/startstream=groovesalad.pls https://ch.cdn.eurozet.pl/chi-net.mp3
4 Soma FM Space Chilltrax http://ice.somafm.com/spacestation http://server1.chilltrax.com:9000/
5 Soma FM Deep Space Chillout [psyradio*fm] http://ice.somafm.com/deepspaceone http://streamer.psyradio.org:8020/;listen.mp3
6 SomaFM: Goa Psychill Chillout [Psyndora] http://ice3.somafm.com/suburbsofgoa-128-mp3 http://cast.magicstreams.gr:9125/stream
7 Caprice Liquid funk Chillout (Groove Salad) [SomaFM] http://79.111.119.111:9115/ https://hls.somafm.com/hls/groovesalad/320k/program.m3u8
8 Groove Salad Classic (Early 2000s Ambient) https://somafm.com/gsclassic.pls
9 Ambient and Experimental [n5MD] https://somafm.com/n5md.pls
10 Suomisaundi [Caprice] http://79.120.77.11:8004/suomisaundi
11 Vaporwaves [SomaFM] https://somafm.com/vaporwaves.pls
12 Cliq Hop [SomaFM] http://somafm.com/startstream=cliqhop.pls
13 Lounge (Illinois Street) [SomaFM] http://somafm.com/illstreet.pls
14 Space [SomaFM] http://ice.somafm.com/spacestation
15 Space Music [Synphaera] https://somafm.com/synphaera.pls
16 Deep Space [SomaFM] http://ice.somafm.com/deepspaceone
17 Downtempo (Secret Agent) [SomaFM] http://somafm.com/secretagent.pls
18 Dub Step (Beyond) [SomaFM] http://somafm.com/dubstep.pls
19 Dub Techno [Schizoid] http://94.130.113.214:8000/dubtechno
20 Dubplate.fm Dubplate.fm https://sc2.dubplate.fm/radio/8030/dnb/uhifi https://sc2.dubplate.fm/radio/8030/dnb/uhifi
21 MansionNET https://radio.inthemansion.com/listen/mansionnet/radio.mp3
22 Liquid funk [Caprice] http://79.111.119.111:9115/
23 Liquid funk https://radiorecord.hostingradio.ru/liquidfunk96.aacp
24 Liqui Radio Liqui Radio https://stream-162.zeno.fm/ug59eq099yzuv?zs=zaqVusVSQuWMN3O5gnh8xA https://stream-162.zeno.fm/ug59eq099yzuv?zs=zaqVusVSQuWMN3O5gnh8xA
25 Boris Brejcha Liquid DnB https://live.radiospinner.com/brsbrjch-96 http://95.47.244.172:8000/live
26 Acid Techno Acid Techno https://radiorecord.hostingradio.ru/techno96.aacp https://radiorecord.hostingradio.ru/techno96.aacp
27 ToXoRs minimalRADIO (320k) Dark Techno [Caprice] http://95.216.245.239:8000/stream/1/ http://79.111.14.76:8000/darktechno
28 minimalradio.de Deep Techno/House [1.FM] https://azurafallback.de:8010/320.mp3 http://strm112.1.fm/deeptech_mobile_mp3
29 Technolovers - minimal 90s90s Techno https://stream.technolovers.fm/minimal http://streams.90s90s.de/techno/mp3-192/radiode/
30 Full-on psytrance The Trip: [SomaFM] http://79.111.14.76:9019/ https://somafm.com/thetrip.pls
31 ToXoRs minimalRADIO http://95.216.245.239:8000/stream/1/
32 Minimalradio.de https://azurafallback.de:8010/320.mp3
33 Minimal [Technolovers] https://stream.technolovers.fm/minimal
34 Suomisaundi / Freeform Psytrance / Spugedelic Trance [Caprice] http://79.120.77.11:8000/suomisaundi
35 Psychedelic Secret https://solid48.streamupsolutions.com/proxy/bglsokon?mp=/=stream
36 Full-on psytrance [Caprice] http://79.111.14.76:9019/
37 Magnathospere Morning Magnathospere Morning https://listen7.myradio24.com/magnatos https://listen7.myradio24.com/magnatos
38 PsyndoraTrance Psytrance [Psyndora] http://cast.magicstreams.gr:9111/stream/ https://cast.magicstreams.gr/sc/psyndora/stream
39 Hirschmilch Psytrance Hirschmilch Psytrance https://hirschmilch.de:7001/psytrance.mp3 https://hirschmilch.de:7001/psytrance.mp3
40 Bluffphonica Bluffphonica http://bluffphonica.stream.laut.fm/bluffphonica?pl=m3u&amp;t302=2024-09-17_23-09-40&amp;uuid=ce6a1b0b-1654-4d08-afbc-31b028f8f23b http://bluffphonica.stream.laut.fm/bluffphonica?pl=m3u&amp;t302=2024-09-17_23-09-40&amp;uuid=ce6a1b0b-1654-4d08-afbc-31b028f8f23b
41 1.FM - BOM Psytrance Radio BOM Psytrance [1.FM] http://strm112.1.fm/psytrance_mobile_mp3 http://strm112.1.fm/psytrance_mobile_mp3
Vasilis Cfu psy trance https://stream-40.zeno.fm/c2t7d9p6mf9uv?zs=_D-E0xBPQcGB_V9n7LLuqA
42 TL_Psytrance TL_Psytrance https://stream.technolovers.fm/psytrance https://stream.technolovers.fm/psytrance
43 Record Goa Psy Record Goa Psy https://radiorecord.hostingradio.ru/goa96.aacp https://radiorecord.hostingradio.ru/goa96.aacp
44 Anima Amoris [Goa Psy Trance] Psytrance 24/7 [DMT FM] http://amoris.sknt.ru/goa.mp3 https://dc1.serverse.com/proxy/ywycfrxn/live
45 DMT FM Psytrance 24/7 Trance [RadiOzora] https://dc1.serverse.com/proxy/ywycfrxn/live http://trance.out.airtime.pro:8000/trance_a
46 radiOzora Trance Uplifting trance [Technolovers] http://trance.out.airtime.pro:8000/trance_a https://0nlineradio.stream13.radiohost.de/technolovers-uplifting-trance
47 Psyndora Psytrance Uplift [RadioRecord] http://cast.magicstreams.gr:9111/stream https://radiorecord.hostingradio.ru/uplift96.aacp
48 Alternative (BAGeL Radio) Alternative [BAGeL] https://ais-sa3.cdnstream1.com/2606_128.aac https://ais-sa3.cdnstream1.com/2606_128.aac
49 Celtic (ThistleRadio - SomaFM) Celtic (ThistleRadio) [SomaFM] http://somafm.com/thistle.pls http://somafm.com/thistle.pls
50 Groove Salad Classic (Early 2000s Ambient) Commodore 64 Remixes [Slay] https://somafm.com/gsclassic.pls http://www.slayradio.org/tune_in.php/128kbps/listen.m3u
51 n5MD Radio (Ambient and Experimental) Covers [SomaFM] https://somafm.com/n5md.pls http://somafm.com/covers.pls
52 Vaporwaves [SomaFM] Indie Pop [SomaFM] https://somafm.com/vaporwaves.pls http://somafm.com/indiepop130.pls
53 Commodore 64 Remixes (Slay Radio) Jazz (Sonic Universe) [SomaFM] http://www.slayradio.org/tune_in.php/128kbps/listen.m3u http://somafm.com/startstream=sonicuniverse.pls
54 Covers (SomaFM) Pop (PopTron) [SomaFM] http://somafm.com/covers.pls http://somafm.com/poptron.pls
Downtempo (Secret Agent - SomaFM) http://somafm.com/secretagent.pls
Dub Step (Dub Step Beyond - SomaFM) http://somafm.com/dubstep.pls
Electronic/Dance (Electronic Culture) http://www.shouted.fm/tunein/electro-dsl.m3u
House (Beat Blender - SomaFM) http://somafm.com/startstream=beatblender.pls
Indie Pop (Indie Pop Rocks! - SomaFM) http://somafm.com/indiepop130.pls
Intelligent dance music (Cliq Hop - SomaFM) http://somafm.com/startstream=cliqhop.pls
Jazz (Sonic Universe - SomaFM) http://somafm.com/startstream=sonicuniverse.pls
Lounge (Illinois Street Lounge - SomaFM) http://somafm.com/illstreet.pls
The Trip: [SomaFM] https://somafm.com/thetrip.pls
Pop (PopTron! - SomaFM) http://somafm.com/poptron.pls
55 Pop/Rock/Urban (Frequence 3 - Paris) Pop/Rock/Urban (Frequence 3 - Paris) http://streams.frequence3.net/hd-mp3.m3u http://streams.frequence3.net/hd-mp3.m3u
56 Progressive (Tags Trance Trip - SomaFM) Progressive (Tags Trance Trip) [SomaFM] http://somafm.com/tagstrance.pls http://somafm.com/tagstrance.pls
57 Public Radio (NPR National Public Radio Stream) Public Radio (NPR National Public Radio Stream) https://npr-ice.streamguys1.com/live.mp3 https://npr-ice.streamguys1.com/live.mp3
Reggae Dancehall (Ragga Kings) https://raggakings.radio:8443/stream.ogg
58 Heavyweight Reggae Heavyweight Reggae https://somafm.com/reggae.pls https://somafm.com/reggae.pls
59 Rock (Digitalis - SomaFM) Rock (Digitalis) [SomaFM] http://somafm.com/digitalis.pls http://somafm.com/digitalis.pls
60 Metal Detector Metal Detector https://somafm.com/metal.pls https://somafm.com/metal.pls
DanceUK https://www.internet-radio.com/servers/tools/playlistgenerator/?u=http://uk2.internet-radio.com:8024/listen.pls&t=.pls
61 JazzGroove JazzGroove https://www.internet-radio.com/servers/tools/playlistgenerator/?u=http://199.180.72.2:8015/listen.pls?sid=1&t=.pls https://www.internet-radio.com/servers/tools/playlistgenerator/?u=http://199.180.72.2:8015/listen.pls?sid=1&t=.pls
62 Radio Paradise - Main Mix Main Mix [Paradise] http://stream.radioparadise.com/aac-128 http://stream.radioparadise.com/aac-128
63 Radio Paradise - Mellow Mix Mellow Mix [Paradise] http://stream.radioparadise.com/mellow-128 http://stream.radioparadise.com/mellow-128
64 Radio Paradise - Rock Mix Rock Mix [Paradise] http://stream.radioparadise.com/rock-128 http://stream.radioparadise.com/rock-128
65 Radio Paradise - Eclectic Mix Eclectic Mix [Paradise] http://stream.radioparadise.com/eclectic-128 http://stream.radioparadise.com/eclectic-128
66 Echoes of Bluemars Echoes of Bluemars http://streams.echoesofbluemars.org:8000/bluemars.m3u http://streams.echoesofbluemars.org:8000/bluemars.m3u
67 Echoes of Bluemars - Cryosleep Cryosleep [Echoes of Bluemars] http://streams.echoesofbluemars.org:8000/cryosleep.m3u http://streams.echoesofbluemars.org:8000/cryosleep.m3u
68 Echoes of Bluemars - Voices from Within Voices from Within [Echoes of Bluemars] http://streams.echoesofbluemars.org:8000/voicesfromwithin.m3u http://streams.echoesofbluemars.org:8000/voicesfromwithin.m3u
Synphaera Radio (Space Music) https://somafm.com/synphaera.pls
-38
View File
@@ -1,38 +0,0 @@
daemonize
show-failed-attempts
clock
screenshot
effect-blur=10x10
effect-vignette=1:1
color=1f1d2e80
font="Inter"
indicator
indicator-radius=200
indicator-thickness=20
line-color=1f1d2e
ring-color=191724
inside-color=1f1d2e
key-hl-color=eb6f92
separator-color=00000000
text-color=e0def4
text-caps-lock-color=""
line-ver-color=eb6f92
ring-ver-color=eb6f92
inside-ver-color=1f1d2e
text-ver-color=e0def4
ring-wrong-color=31748f
text-wrong-color=31748f
inside-wrong-color=1f1d2e
inside-clear-color=1f1d2e
text-clear-color=e0def4
ring-clear-color=9ccfd8
line-clear-color=1f1d2e
line-wrong-color=1f1d2e
bs-hl-color=31748f
grace=2
grace-no-mouse
grace-no-touch
datestr=%a, %B %e
timestr=%I:%M %p
fade-in=0.5
ignore-empty-password
+242
View File
@@ -0,0 +1,242 @@
# TUIOS Configuration File
# This file allows you to customize appearance and keybindings
#
# Configuration location: /home/coja/.config/tuios/config.toml
# Documentation: https://github.com/Gaurav-Gosain/tuios
# For keybindings documentation, run: tuios keybinds list
# ============================================================================
# APPEARANCE SETTINGS
# ============================================================================
# border_style: Window border style
# Options: rounded, normal, thick, double, hidden, block, ascii,
# outer-half-block, inner-half-block
# Default: rounded
#
# dockbar_position: Position of the dockbar
# Options: bottom, top, hidden
# Default: bottom
#
# hide_window_buttons: Hide window control buttons (minimize, maximize, close)
# Options: true, false
# Default: false
#
# scrollback_lines: Number of lines to keep in scrollback buffer
# Range: 100 to 1000000
# Default: 10000
# ============================================================================
[appearance]
border_style = 'rounded'
hide_window_buttons = false
scrollback_lines = 10000
dockbar_position = 'bottom'
preferred_shell = ''
whichkey_position = ''
window_title_position = ''
hide_clock = false
animations_enabled = false
show_cpu = true
show_ram = true
confirm_quit = true
# shared_borders=true
[keybindings]
leader_key = 'ctrl+b'
# leader_key = 'shift+space'
[keybindings.window_management]
close_window = ['w', 'x']
minimize_window = ['m']
new_window = ['n']
next_window = ['tab']
prev_window = ['shift+tab']
rename_window = ['r']
restore_all = ['M']
select_window_1 = ['1']
select_window_2 = ['2']
select_window_3 = ['3']
select_window_4 = ['4']
select_window_5 = ['5']
select_window_6 = ['6']
select_window_7 = ['7']
select_window_8 = ['8']
select_window_9 = ['9']
[keybindings.workspaces]
move_and_follow_1 = ['alt+shift+1']
move_and_follow_2 = ['alt+shift+2']
move_and_follow_3 = ['alt+shift+3']
move_and_follow_4 = ['alt+shift+4']
move_and_follow_5 = ['alt+shift+5']
move_and_follow_6 = ['alt+shift+6']
move_and_follow_7 = ['alt+shift+7']
move_and_follow_8 = ['alt+shift+8']
move_and_follow_9 = ['alt+shift+9']
switch_workspace_1 = ['alt+1']
switch_workspace_2 = ['alt+2']
switch_workspace_3 = ['alt+3']
switch_workspace_4 = ['alt+4']
switch_workspace_5 = ['alt+5']
switch_workspace_6 = ['alt+6']
switch_workspace_7 = ['alt+7']
switch_workspace_8 = ['alt+8']
switch_workspace_9 = ['alt+9']
[keybindings.layout]
equalize_splits = ['=']
preselect_down = ['alt+j']
preselect_left = ['alt+h']
preselect_right = ['alt+l']
preselect_up = ['alt+k']
resize_height_grow = ['}', 'shift+]']
resize_height_grow_top = [']']
resize_height_shrink = ['{', 'shift+[']
resize_height_shrink_top = ['[']
resize_master_grow = ['>', 'shift+.']
resize_master_grow_left = ['.']
resize_master_shrink = ['<', 'shift+,']
resize_master_shrink_left = [',']
rotate_split = ['R']
snap_corner_1 = ['1']
snap_corner_2 = ['2']
snap_corner_3 = ['3']
snap_corner_4 = ['4']
snap_fullscreen = ['f']
snap_left = ['h']
snap_right = ['l']
split_horizontal = ['-']
split_vertical = ['|', '\']
swap_down = ['J', 'ctrl+down']
swap_left = ['H', 'ctrl+left']
swap_right = ['L', 'ctrl+right']
swap_up = ['K', 'ctrl+up']
toggle_tiling = ['t']
unsnap = ['u']
[keybindings.mode_control]
enter_terminal_mode = ['i', 'enter']
enter_window_mode = ['esc', 'ctrl+z']
quit = ['q']
toggle_help = ['?']
[keybindings.system]
[keybindings.navigation]
extend_down = ['shift+down']
extend_left = ['shift+left']
extend_right = ['shift+right']
extend_up = ['shift+up']
nav_down = ['down']
nav_left = ['left']
nav_right = ['right']
nav_up = ['up']
[keybindings.restore_minimized]
restore_minimized_1 = ['shift+1', '!']
restore_minimized_2 = ['shift+2', '@']
restore_minimized_3 = ['shift+3', '#']
restore_minimized_4 = ['shift+4', '$']
restore_minimized_5 = ['shift+5', '%']
restore_minimized_6 = ['shift+6', '^']
restore_minimized_7 = ['shift+7', '&']
restore_minimized_8 = ['shift+8', '*']
restore_minimized_9 = ['shift+9', '(']
[keybindings.prefix_mode]
prefix_close_window = ['x']
prefix_debug = ['D']
prefix_detach = ['d', 'esc']
prefix_equalize_splits = ['=']
prefix_fullscreen = ['z']
prefix_help = ['?']
prefix_minimize = ['m']
prefix_new_window = ['c']
prefix_next_window = ['n', 'tab']
prefix_prev_window = ['p', 'shift+tab']
prefix_quit = ['q']
prefix_rename_window = [',', 'r']
prefix_rotate_split = ['R']
prefix_select_0 = ['0']
prefix_select_1 = ['1']
prefix_select_2 = ['2']
prefix_select_3 = ['3']
prefix_select_4 = ['4']
prefix_select_5 = ['5']
prefix_select_6 = ['6']
prefix_select_7 = ['7']
prefix_select_8 = ['8']
prefix_select_9 = ['9']
prefix_selection = ['[']
prefix_split_horizontal = ['-']
prefix_split_vertical = ['|', '\']
prefix_tape = ['T']
prefix_toggle_tiling = ['space']
prefix_window = ['t']
prefix_workspace = ['w']
[keybindings.window_prefix]
window_prefix_cancel = ['esc']
window_prefix_close = ['x']
window_prefix_new = ['n']
window_prefix_next = ['tab']
window_prefix_prev = ['shift+tab']
window_prefix_rename = ['r']
window_prefix_tiling = ['t']
[keybindings.minimize_prefix]
minimize_prefix_cancel = ['esc']
minimize_prefix_focused = ['m']
minimize_prefix_restore_1 = ['1']
minimize_prefix_restore_2 = ['2']
minimize_prefix_restore_3 = ['3']
minimize_prefix_restore_4 = ['4']
minimize_prefix_restore_5 = ['5']
minimize_prefix_restore_6 = ['6']
minimize_prefix_restore_7 = ['7']
minimize_prefix_restore_8 = ['8']
minimize_prefix_restore_9 = ['9']
minimize_prefix_restore_all = ['M']
[keybindings.workspace_prefix]
workspace_prefix_cancel = ['esc']
workspace_prefix_move_1 = ['!']
workspace_prefix_move_2 = ['@']
workspace_prefix_move_3 = ['#']
workspace_prefix_move_4 = ['$']
workspace_prefix_move_5 = ['%']
workspace_prefix_move_6 = ['^']
workspace_prefix_move_7 = ['&']
workspace_prefix_move_8 = ['*']
workspace_prefix_move_9 = ['(']
workspace_prefix_switch_1 = ['1']
workspace_prefix_switch_2 = ['2']
workspace_prefix_switch_3 = ['3']
workspace_prefix_switch_4 = ['4']
workspace_prefix_switch_5 = ['5']
workspace_prefix_switch_6 = ['6']
workspace_prefix_switch_7 = ['7']
workspace_prefix_switch_8 = ['8']
workspace_prefix_switch_9 = ['9']
[keybindings.debug_prefix]
debug_prefix_animations = ['a']
debug_prefix_cache = ['c']
debug_prefix_cancel = ['esc']
debug_prefix_logs = ['l']
[keybindings.tape_prefix]
tape_prefix_cancel = ['esc']
tape_prefix_manager = ['m']
tape_prefix_record = ['r']
tape_prefix_stop = ['s']
[keybindings.terminal_mode]
terminal_exit_mode = ['alt+esc']
terminal_next_window = ['alt+n']
terminal_prev_window = ['alt+p']
[daemon]
log_level = 'off'
default_codec = 'gob'
socket_path = ''
+2 -2
View File
@@ -8,6 +8,6 @@
"format-disconnected": "󰖪 ",
"tooltip-format-disconnected": "Disconnected",
"format-alt": "<span foreground='#99ffdd'> {bandwidthDownBytes}</span> <span foreground='#ffcc66'> {bandwidthUpBytes}</span>",
"interval": 2,
},
"interval": 2
}
+36 -27
View File
@@ -1,5 +1,5 @@
//
// THIS FILE WAS AUTOGENERATED BY ZELLIJ, THE PREVIOUS FILE AT THIS LOCATION WAS COPIED TO: /home/anon/.config/zellij/config.kdl.bak
// THIS FILE WAS AUTOGENERATED BY ZELLIJ, THE PREVIOUS FILE AT THIS LOCATION WAS COPIED TO: /home/coja/.config/zellij/config.kdl.bak
//
keybinds clear-defaults=true {
@@ -7,10 +7,10 @@ keybinds clear-defaults=true {
bind "Alt g" { SwitchToMode "normal"; }
}
pane {
bind "left" { MoveFocus "left"; }
bind "down" { MoveFocus "down"; }
bind "up" { MoveFocus "up"; }
bind "right" { MoveFocus "right"; }
bind "h" "left" { MoveFocus "left"; }
bind "j" "down" { MoveFocus "down"; }
bind "k" "up" { MoveFocus "up"; }
bind "j" "right" { MoveFocus "right"; }
bind "c" { SwitchToMode "renamepane"; PaneNameInput 0; }
bind "d" { NewPane "down"; SwitchToMode "normal"; }
bind "e" { TogglePaneEmbedOrFloating; SwitchToMode "normal"; }
@@ -28,10 +28,10 @@ keybinds clear-defaults=true {
bind "z" { TogglePaneFrames; SwitchToMode "normal"; }
}
tab {
bind "left" { GoToPreviousTab; }
bind "down" { GoToNextTab; }
bind "up" { GoToPreviousTab; }
bind "right" { GoToNextTab; }
bind "h" "left" { GoToPreviousTab; }
bind "j" "down" { GoToNextTab; }
bind "k" "up" { GoToPreviousTab; }
bind "j" "right" { GoToNextTab; }
bind "1" { GoToTab 1; SwitchToMode "normal"; }
bind "2" { GoToTab 2; SwitchToMode "normal"; }
bind "3" { GoToTab 3; SwitchToMode "normal"; }
@@ -56,10 +56,10 @@ keybinds clear-defaults=true {
bind "tab" { ToggleTab; }
}
resize {
bind "left" { Resize "Increase left"; }
bind "down" { Resize "Increase down"; }
bind "up" { Resize "Increase up"; }
bind "right" { Resize "Increase right"; }
bind "h" "left" { Resize "Increase left"; }
bind "j" "down" { Resize "Increase down"; }
bind "k" "up" { Resize "Increase up"; }
bind "j" "right" { Resize "Increase right"; }
bind "+" { Resize "Increase"; }
bind "-" { Resize "Decrease"; }
bind "=" { Resize "Increase"; }
@@ -74,10 +74,10 @@ keybinds clear-defaults=true {
bind "Alt n" { SwitchToMode "normal"; }
}
move {
bind "left" { MovePane "left"; }
bind "down" { MovePane "down"; }
bind "up" { MovePane "up"; }
bind "right" { MovePane "right"; }
bind "h" "left" { MovePane "left"; }
bind "j" "down" { MovePane "down"; }
bind "k" "up" { MovePane "up"; }
bind "j" "right" { MovePane "right"; }
bind "h" { MovePane "left"; }
bind "Alt h" { SwitchToMode "normal"; }
bind "j" { MovePane "down"; }
@@ -88,7 +88,14 @@ keybinds clear-defaults=true {
bind "tab" { MovePane; }
}
scroll {
bind "Alt left" { MoveFocusOrTab "left"; SwitchToMode "normal"; }
bind "Alt down" { MoveFocus "down"; SwitchToMode "normal"; }
bind "Alt up" { MoveFocus "up"; SwitchToMode "normal"; }
bind "Alt right" { MoveFocusOrTab "right"; SwitchToMode "normal"; }
bind "e" { EditScrollback; SwitchToMode "normal"; }
bind "Alt j" { MoveFocus "down"; SwitchToMode "normal"; }
bind "Alt k" { MoveFocus "up"; SwitchToMode "normal"; }
bind "Alt l" { MoveFocusOrTab "right"; SwitchToMode "normal"; }
bind "s" { SwitchToMode "entersearch"; SearchInput 0; }
bind "Alt s" { SwitchToMode "normal"; }
}
@@ -176,10 +183,6 @@ keybinds clear-defaults=true {
bind "Alt n" { SwitchToMode "resize"; }
}
shared_except "normal" "locked" {
bind "Alt left" { MoveFocusOrTab "left"; }
bind "Alt down" { MoveFocus "down"; }
bind "Alt up" { MoveFocus "up"; }
bind "Alt right" { MoveFocusOrTab "right"; }
bind "Alt +" { Resize "Increase"; }
bind "Alt -" { Resize "Decrease"; }
bind "Alt =" { Resize "Increase"; }
@@ -187,9 +190,6 @@ keybinds clear-defaults=true {
bind "Alt ]" { NextSwapLayout; }
bind "Alt f" { ToggleFloatingPanes; }
bind "Alt i" { MoveTab "left"; }
bind "Alt j" { MoveFocus "down"; }
bind "Alt k" { MoveFocus "up"; }
bind "Alt l" { MoveFocusOrTab "right"; }
}
shared_except "normal" "locked" "entersearch" {
bind "enter" { SwitchToMode "normal"; }
@@ -197,6 +197,15 @@ keybinds clear-defaults=true {
shared_except "normal" "locked" "entersearch" "renametab" "renamepane" {
bind "esc" { SwitchToMode "normal"; }
}
shared_except "normal" "locked" "scroll" {
bind "Alt left" { MoveFocusOrTab "left"; }
bind "Alt down" { MoveFocus "down"; }
bind "Alt up" { MoveFocus "up"; }
bind "Alt right" { MoveFocusOrTab "right"; }
bind "Alt j" { MoveFocus "down"; }
bind "Alt k" { MoveFocus "up"; }
bind "Alt l" { MoveFocusOrTab "right"; }
}
shared_among "pane" "tmux" {
bind "x" { CloseFocus; SwitchToMode "normal"; }
}
@@ -304,13 +313,13 @@ load_plugins {
// Choose the theme that is specified in the themes section.
// Default: default
theme "one-half-dark"
//
// theme "dracula"
// Choose the base input mode of zellij.
// Default: normal
//
// default_mode "locked"
default_mode "normal"
// Choose the path to the default shell that zellij will use for opening new panes
// Default: $SHELL
+21
View File
@@ -0,0 +1,21 @@
# Vi mode
set editing-mode vi
set keymap vi
set show-mode-in-prompt on
set vi-ins-mode-string "\1\e[32m\2[I] \1\e[0m\2"
set vi-cmd-mode-string "\1\e[31m\2[N] \1\e[0m\2"
# exclude .dotfles
set match-hidden-files off
set show-all-if-ambiguous on
set show-all-if-unmodified on
set colored-stats on
set colored-completion-prefix on
set mark-symlinked-directories on
set completion-ignore-case on
# Ignore duplicates in history where supported
set skip-completed-text on
+10
View File
@@ -0,0 +1,10 @@
{
"localcpp": {
"type": "api_key",
"key": "no-key-required"
},
"duskadiy": {
"type": "api_key",
"key": "$DUSKADIY_API_KEY"
}
}
+190
View File
@@ -0,0 +1,190 @@
{
"providers": {
"duskadiy": {
"baseUrl": "https://llm.duskadiy.com/api/v1",
"api": "openai-completions",
"apiKey": "no-key-required",
"compat": {
"supportsDeveloperRole": false,
"supportsReasoningEffort": false,
"maxTokensField": "max_tokens"
},
"models": [
{
"id": "DeepSeek-Coder-V2-Lite-Instruct-Q8_0",
"name": "DeepSeek Coder V2",
"reasoning": false,
"input": ["text"],
"contextWindow": 81920,
"maxTokens": 16384,
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }
},
{
"id": "gemma-4-E4B-it-UD-Q8_K_XL",
"name": "Gemma 4 E4B",
"reasoning": false,
"input": ["text"],
"contextWindow": 81920,
"maxTokens": 16384,
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }
},
{
"id": "gemma-4-26B-A4B-it-UD-IQ4_XS",
"name": "Gemma 4 26B",
"reasoning": false,
"input": ["text"],
"contextWindow": 81920,
"maxTokens": 16384,
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }
},
{
"id": "Qwen3-Coder-30B-Instruct-IQ4_XS",
"name": "Qwen3 Coder A3B",
"reasoning": false,
"input": ["text"],
"contextWindow": 8192,
"maxTokens": 4096,
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }
},
{
"id": "Qwen3.6-27B-UD-IQ3_XXS",
"name": "Qwen3.6 27B",
"reasoning": false,
"input": ["text"],
"contextWindow": 81920,
"maxTokens": 16384,
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }
},
{
"id": "Qwen3.5-27B-UD-Q3_K_XL",
"name": "Qwen3.5 27B",
"reasoning": false,
"input": ["text"],
"contextWindow": 81920,
"maxTokens": 16384,
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }
},
{
"id": "Qwen3.5-9B-Q8_0",
"name": "Qwen3.5 9B",
"reasoning": false,
"input": ["text"],
"contextWindow": 81920,
"maxTokens": 16384,
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }
},
{
"id": "Qwen3.6-27B-Uncensored-HauhauCS-Aggressive-IQ3_M",
"name": "Qwen3.6 27B Uncensored",
"reasoning": false,
"input": ["text"],
"contextWindow": 81920,
"maxTokens": 16384,
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }
},
{
"id": "GLM-4.7-Flash-UD-Q3_K_XL",
"name": "GLM-4.7 Flash",
"reasoning": false,
"input": ["text"],
"contextWindow": 81920,
"maxTokens": 16384,
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }
}
]
},
"localcpp": {
"baseUrl": "http://192.168.0.204:11343/v1",
"api": "openai-completions",
"apiKey": "no-key-required",
"compat": {
"supportsDeveloperRole": false,
"supportsReasoningEffort": false,
"maxTokensField": "max_tokens"
},
"models": [
{
"id": "DeepSeek-Coder-V2-Lite-Instruct-Q8_0",
"name": "DeepSeek Coder V2",
"reasoning": false,
"input": ["text"],
"contextWindow": 81920,
"maxTokens": 16384,
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }
},
{
"id": "gemma-4-E4B-it-UD-Q8_K_XL",
"name": "Gemma 4 E4B",
"reasoning": false,
"input": ["text"],
"contextWindow": 81920,
"maxTokens": 16384,
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }
},
{
"id": "gemma-4-26B-A4B-it-UD-IQ4_XS",
"name": "Gemma 4 26B",
"reasoning": false,
"input": ["text"],
"contextWindow": 81920,
"maxTokens": 16384,
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }
},
{
"id": "Qwen3-Coder-30B-Instruct-IQ4_XS",
"name": "Qwen3 Coder A3B",
"reasoning": false,
"input": ["text"],
"contextWindow": 8192,
"maxTokens": 4096,
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }
},
{
"id": "Qwen3.6-27B-UD-IQ3_XXS",
"name": "Qwen3.6 27B",
"reasoning": false,
"input": ["text"],
"contextWindow": 81920,
"maxTokens": 16384,
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }
},
{
"id": "Qwen3.5-27B-UD-Q3_K_XL",
"name": "Qwen3.5 27B",
"reasoning": false,
"input": ["text"],
"contextWindow": 81920,
"maxTokens": 16384,
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }
},
{
"id": "Qwen3.5-9B-Q8_0",
"name": "Qwen3.5 9B",
"reasoning": false,
"input": ["text"],
"contextWindow": 81920,
"maxTokens": 16384,
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }
},
{
"id": "Qwen3.6-27B-Uncensored-HauhauCS-Aggressive-IQ3_M",
"name": "Qwen3.6 27B Uncensored",
"reasoning": false,
"input": ["text"],
"contextWindow": 81920,
"maxTokens": 16384,
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }
},
{
"id": "GLM-4.7-Flash-UD-Q3_K_XL",
"name": "GLM-4.7 Flash",
"reasoning": false,
"input": ["text"],
"contextWindow": 81920,
"maxTokens": 16384,
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }
}
]
}
}
}
+11
View File
@@ -0,0 +1,11 @@
---
description: Write a Conventional Commits message for the staged changes
argument-hint: "[extra context]"
---
Inspect the staged changes with `git diff --cached` (and `git status` for context). Then write a single Conventional Commits message:
- A `<type>(<scope>): <subject>` summary line, imperative mood, ≤72 chars (types: feat, fix, refactor, docs, chore, test, perf, build).
- An optional short body explaining the *why* only when it isn't obvious from the diff.
- Do NOT run `git commit`. Output only the message inside a code block so I can review it.
Extra context to incorporate: ${1:-none}
+14
View File
@@ -0,0 +1,14 @@
---
description: Review the current diff for bugs and issues
argument-hint: "[focus area]"
---
Review the current changes. Check both `git diff` (unstaged) and `git diff --cached` (staged). Focus on:
- Correctness and logic bugs
- Error handling and missing edge cases
- Security issues (injection, secrets, unsafe input)
- Anything that doesn't match the surrounding code's conventions
List concrete findings as `file:line — issue — suggested fix`, ordered by severity. Be concise; skip praise. If nothing is wrong, say so.
Extra focus this round: ${1:-general correctness}
+36
View File
@@ -0,0 +1,36 @@
{
"defaultProvider": "duskadiy",
"defaultModel": "gemma-4-E4B-it-UD-Q8_K_XL",
"defaultThinkingLevel": "off",
"theme": "catppuccin-mocha",
"quietStartup": false,
"defaultProjectTrust": "ask",
"enableInstallTelemetry": false,
"enabledModels": [
"localcpp/*",
"duskadiy/*"
],
"compaction": {
"enabled": true,
"reserveTokens": 16384,
"keepRecentTokens": 20000
},
"retry": {
"enabled": true,
"maxRetries": 3,
"baseDelayMs": 2000,
"provider": {
"timeoutMs": 3600000
}
},
"httpIdleTimeoutMs": 600000,
"npmCommand": [
"fnm",
"exec",
"--using=22",
"--",
"npm"
],
"showHardwareCursor": true,
"lastChangelogVersion": "0.80.2"
}
+90
View File
@@ -0,0 +1,90 @@
{
"$schema": "https://raw.githubusercontent.com/earendil-works/pi/main/packages/coding-agent/src/modes/interactive/theme/theme-schema.json",
"name": "catppuccin-mocha",
"vars": {
"rosewater": "#f5e0dc",
"flamingo": "#f2cdcd",
"pink": "#f5c2e7",
"mauve": "#cba6f7",
"red": "#f38ba8",
"maroon": "#eba0ac",
"peach": "#fab387",
"yellow": "#f9e2af",
"green": "#a6e3a1",
"teal": "#94e2d5",
"sky": "#89dceb",
"sapphire": "#74c7ec",
"blue": "#89b4fa",
"lavender": "#b4befe",
"fg": "#cdd6f4",
"subtext1": "#bac2de",
"subtext0": "#a6adc8",
"overlay2": "#9399b2",
"overlay1": "#7f849c",
"overlay0": "#6c7086",
"surface2": "#585b70",
"surface1": "#45475a",
"surface0": "#313244",
"base": "#1e1e2e",
"mantle": "#181825",
"crust": "#11111b"
},
"colors": {
"accent": "mauve",
"border": "surface1",
"borderAccent": "mauve",
"borderMuted": "surface0",
"success": "green",
"error": "red",
"warning": "yellow",
"muted": "subtext0",
"dim": "overlay0",
"text": "fg",
"thinkingText": "overlay1",
"selectedBg": "surface0",
"userMessageBg": "surface0",
"userMessageText": "fg",
"customMessageBg": "surface0",
"customMessageText": "fg",
"customMessageLabel": "mauve",
"toolPendingBg": "mantle",
"toolSuccessBg": "#1e2b22",
"toolErrorBg": "#2b1e22",
"toolTitle": "mauve",
"toolOutput": "fg",
"mdHeading": "mauve",
"mdLink": "blue",
"mdLinkUrl": "sapphire",
"mdCode": "green",
"mdCodeBlock": "fg",
"mdCodeBlockBorder": "surface1",
"mdQuote": "subtext0",
"mdQuoteBorder": "surface2",
"mdHr": "surface1",
"mdListBullet": "mauve",
"toolDiffAdded": "green",
"toolDiffRemoved": "red",
"toolDiffContext": "overlay0",
"syntaxComment": "overlay0",
"syntaxKeyword": "mauve",
"syntaxFunction": "blue",
"syntaxVariable": "fg",
"syntaxString": "green",
"syntaxNumber": "peach",
"syntaxType": "yellow",
"syntaxOperator": "sky",
"syntaxPunctuation": "overlay2",
"thinkingOff": "surface1",
"thinkingMinimal": "overlay0",
"thinkingLow": "blue",
"thinkingMedium": "teal",
"thinkingHigh": "peach",
"thinkingXhigh": "red",
"bashMode": "peach"
},
"export": {
"pageBg": "#11111b",
"cardBg": "#1e1e2e",
"infoBg": "#313244"
}
}
+190
View File
@@ -0,0 +1,190 @@
{
"providers": {
"duskadiy": {
"baseUrl": "https://llm.duskadiy.com/api/v1",
"api": "openai-completions",
"apiKey": "$DUSKADIY_API_KEY",
"compat": {
"supportsDeveloperRole": false,
"supportsReasoningEffort": false,
"maxTokensField": "max_tokens"
},
"models": [
{
"id": "DeepSeek-Coder-V2-Lite-Instruct-Q8_0",
"name": "DeepSeek Coder V2",
"reasoning": false,
"input": ["text"],
"contextWindow": 81920,
"maxTokens": 16384,
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }
},
{
"id": "gemma-4-E4B-it-UD-Q8_K_XL",
"name": "Gemma 4 E4B",
"reasoning": false,
"input": ["text"],
"contextWindow": 81920,
"maxTokens": 16384,
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }
},
{
"id": "gemma-4-26B-A4B-it-UD-IQ4_XS",
"name": "Gemma 4 26B",
"reasoning": false,
"input": ["text"],
"contextWindow": 81920,
"maxTokens": 16384,
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }
},
{
"id": "Qwen3-Coder-30B-Instruct-IQ4_XS",
"name": "Qwen3 Coder A3B",
"reasoning": false,
"input": ["text"],
"contextWindow": 8192,
"maxTokens": 4096,
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }
},
{
"id": "Qwen3.6-27B-UD-IQ3_XXS",
"name": "Qwen3.6 27B",
"reasoning": false,
"input": ["text"],
"contextWindow": 81920,
"maxTokens": 16384,
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }
},
{
"id": "Qwen3.5-27B-UD-Q3_K_XL",
"name": "Qwen3.5 27B",
"reasoning": false,
"input": ["text"],
"contextWindow": 81920,
"maxTokens": 16384,
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }
},
{
"id": "Qwen3.5-9B-Q8_0",
"name": "Qwen3.5 9B",
"reasoning": false,
"input": ["text"],
"contextWindow": 81920,
"maxTokens": 16384,
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }
},
{
"id": "Qwen3.6-27B-Uncensored-HauhauCS-Aggressive-IQ3_M",
"name": "Qwen3.6 27B Uncensored",
"reasoning": false,
"input": ["text"],
"contextWindow": 81920,
"maxTokens": 16384,
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }
},
{
"id": "GLM-4.7-Flash-UD-Q3_K_XL",
"name": "GLM-4.7 Flash",
"reasoning": false,
"input": ["text"],
"contextWindow": 81920,
"maxTokens": 16384,
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }
}
]
},
"localcpp": {
"baseUrl": "http://192.168.0.204:11343/v1",
"api": "openai-completions",
"apiKey": "no-key-required",
"compat": {
"supportsDeveloperRole": false,
"supportsReasoningEffort": false,
"maxTokensField": "max_tokens"
},
"models": [
{
"id": "DeepSeek-Coder-V2-Lite-Instruct-Q8_0",
"name": "DeepSeek Coder V2",
"reasoning": false,
"input": ["text"],
"contextWindow": 81920,
"maxTokens": 16384,
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }
},
{
"id": "gemma-4-E4B-it-UD-Q8_K_XL",
"name": "Gemma 4 E4B",
"reasoning": false,
"input": ["text"],
"contextWindow": 81920,
"maxTokens": 16384,
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }
},
{
"id": "gemma-4-26B-A4B-it-UD-IQ4_XS",
"name": "Gemma 4 26B",
"reasoning": false,
"input": ["text"],
"contextWindow": 81920,
"maxTokens": 16384,
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }
},
{
"id": "Qwen3-Coder-30B-Instruct-IQ4_XS",
"name": "Qwen3 Coder A3B",
"reasoning": false,
"input": ["text"],
"contextWindow": 8192,
"maxTokens": 4096,
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }
},
{
"id": "Qwen3.6-27B-UD-IQ3_XXS",
"name": "Qwen3.6 27B",
"reasoning": false,
"input": ["text"],
"contextWindow": 81920,
"maxTokens": 16384,
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }
},
{
"id": "Qwen3.5-27B-UD-Q3_K_XL",
"name": "Qwen3.5 27B",
"reasoning": false,
"input": ["text"],
"contextWindow": 81920,
"maxTokens": 16384,
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }
},
{
"id": "Qwen3.5-9B-Q8_0",
"name": "Qwen3.5 9B",
"reasoning": false,
"input": ["text"],
"contextWindow": 81920,
"maxTokens": 16384,
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }
},
{
"id": "Qwen3.6-27B-Uncensored-HauhauCS-Aggressive-IQ3_M",
"name": "Qwen3.6 27B Uncensored",
"reasoning": false,
"input": ["text"],
"contextWindow": 81920,
"maxTokens": 16384,
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }
},
{
"id": "GLM-4.7-Flash-UD-Q3_K_XL",
"name": "GLM-4.7 Flash",
"reasoning": false,
"input": ["text"],
"contextWindow": 81920,
"maxTokens": 16384,
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }
}
]
}
}
}
+11
View File
@@ -0,0 +1,11 @@
---
description: Write a Conventional Commits message for the staged changes
argument-hint: "[extra context]"
---
Inspect the staged changes with `git diff --cached` (and `git status` for context). Then write a single Conventional Commits message:
- A `<type>(<scope>): <subject>` summary line, imperative mood, ≤72 chars (types: feat, fix, refactor, docs, chore, test, perf, build).
- An optional short body explaining the *why* only when it isn't obvious from the diff.
- Do NOT run `git commit`. Output only the message inside a code block so I can review it.
Extra context to incorporate: ${1:-none}
+14
View File
@@ -0,0 +1,14 @@
---
description: Review the current diff for bugs and issues
argument-hint: "[focus area]"
---
Review the current changes. Check both `git diff` (unstaged) and `git diff --cached` (staged). Focus on:
- Correctness and logic bugs
- Error handling and missing edge cases
- Security issues (injection, secrets, unsafe input)
- Anything that doesn't match the surrounding code's conventions
List concrete findings as `file:line — issue — suggested fix`, ordered by severity. Be concise; skip praise. If nothing is wrong, say so.
Extra focus this round: ${1:-general correctness}
+30
View File
@@ -0,0 +1,30 @@
{
"defaultProvider": "duskadiy",
"defaultModel": "gemma-4-26B-A4B-it-UD-IQ4_XS",
"defaultThinkingLevel": "on",
"theme": "catppuccin-mocha",
"quietStartup": false,
"defaultProjectTrust": "ask",
"enableInstallTelemetry": false,
"enabledModels": [
"localcpp/*",
"duskadiy/*"
],
"compaction": {
"enabled": true,
"reserveTokens": 16384,
"keepRecentTokens": 20000
},
"retry": {
"enabled": true,
"maxRetries": 3,
"baseDelayMs": 2000,
"provider": {
"timeoutMs": 3600000
}
},
"httpIdleTimeoutMs": 600000,
"npmCommand": ["fnm", "exec", "--using=22", "--", "npm"],
"showHardwareCursor": true,
"lastChangelogVersion": "0.80.1"
}
+90
View File
@@ -0,0 +1,90 @@
{
"$schema": "https://raw.githubusercontent.com/earendil-works/pi/main/packages/coding-agent/src/modes/interactive/theme/theme-schema.json",
"name": "catppuccin-mocha",
"vars": {
"rosewater": "#f5e0dc",
"flamingo": "#f2cdcd",
"pink": "#f5c2e7",
"mauve": "#cba6f7",
"red": "#f38ba8",
"maroon": "#eba0ac",
"peach": "#fab387",
"yellow": "#f9e2af",
"green": "#a6e3a1",
"teal": "#94e2d5",
"sky": "#89dceb",
"sapphire": "#74c7ec",
"blue": "#89b4fa",
"lavender": "#b4befe",
"fg": "#cdd6f4",
"subtext1": "#bac2de",
"subtext0": "#a6adc8",
"overlay2": "#9399b2",
"overlay1": "#7f849c",
"overlay0": "#6c7086",
"surface2": "#585b70",
"surface1": "#45475a",
"surface0": "#313244",
"base": "#1e1e2e",
"mantle": "#181825",
"crust": "#11111b"
},
"colors": {
"accent": "mauve",
"border": "surface1",
"borderAccent": "mauve",
"borderMuted": "surface0",
"success": "green",
"error": "red",
"warning": "yellow",
"muted": "subtext0",
"dim": "overlay0",
"text": "fg",
"thinkingText": "overlay1",
"selectedBg": "surface0",
"userMessageBg": "surface0",
"userMessageText": "fg",
"customMessageBg": "surface0",
"customMessageText": "fg",
"customMessageLabel": "mauve",
"toolPendingBg": "mantle",
"toolSuccessBg": "#1e2b22",
"toolErrorBg": "#2b1e22",
"toolTitle": "mauve",
"toolOutput": "fg",
"mdHeading": "mauve",
"mdLink": "blue",
"mdLinkUrl": "sapphire",
"mdCode": "green",
"mdCodeBlock": "fg",
"mdCodeBlockBorder": "surface1",
"mdQuote": "subtext0",
"mdQuoteBorder": "surface2",
"mdHr": "surface1",
"mdListBullet": "mauve",
"toolDiffAdded": "green",
"toolDiffRemoved": "red",
"toolDiffContext": "overlay0",
"syntaxComment": "overlay0",
"syntaxKeyword": "mauve",
"syntaxFunction": "blue",
"syntaxVariable": "fg",
"syntaxString": "green",
"syntaxNumber": "peach",
"syntaxType": "yellow",
"syntaxOperator": "sky",
"syntaxPunctuation": "overlay2",
"thinkingOff": "surface1",
"thinkingMinimal": "overlay0",
"thinkingLow": "blue",
"thinkingMedium": "teal",
"thinkingHigh": "peach",
"thinkingXhigh": "red",
"bashMode": "peach"
},
"export": {
"pageBg": "#11111b",
"cardBg": "#1e1e2e",
"infoBg": "#313244"
}
}
+5 -4
View File
@@ -1,12 +1,13 @@
using `gnu stow`
```
https://github.com/HyDE-Project/HyDE
```
`hyde`, `waybar` and `fish` are from hyprdots with edits
Customized [Hyde](https://github.com/HyDE-Project/HyDE)
`hyde`, `waybar` and `fish` are from hyprdots with customizations
`nvim` is [nvchad](https://nvchad.com/) custom conf