diff --git a/.bin/webcam-config.sh b/.bin/webcam-config.sh deleted file mode 100755 index 87465c9..0000000 --- a/.bin/webcam-config.sh +++ /dev/null @@ -1,87 +0,0 @@ -#!/bin/bash -# Creative Live! Cam Sync V3 - Optimized Configuration -# Based on actual available controls - -DEVICE="/dev/video0" - -echo "Configuring Creative Live! Cam Sync V3..." - -# Set resolution to 1080p @ 30fps -v4l2-ctl -d $DEVICE --set-fmt-video=width=1920,height=1080,pixelformat=MJPG -v4l2-ctl -d $DEVICE --set-parm=30 - -# Basic Image Controls -# brightness: -64 to 64 (default: 3) -# Setting to 10-15 for slightly brighter image in typical indoor lighting -v4l2-ctl -d $DEVICE --set-ctrl=brightness=12 - -# contrast: 0 to 64 (default: 38) -# Setting to 42 for slightly more punch -v4l2-ctl -d $DEVICE --set-ctrl=contrast=42 - -# saturation: 0 to 128 (default: 64) -# Setting to 75 for more vivid colors without oversaturation -v4l2-ctl -d $DEVICE --set-ctrl=saturation=75 - -# hue: -40 to 40 (default: 0) -# Keep at 0 for accurate colors -v4l2-ctl -d $DEVICE --set-ctrl=hue=0 - -# gamma: 72 to 500 (default: 100) -# Keep at 100 for natural look -v4l2-ctl -d $DEVICE --set-ctrl=gamma=100 - -# gain: 0 to 100 (default: 0) -# Set to 10 for low-light improvement without too much noise -# Use 0 if you have good lighting, increase to 15-20 for dim rooms -v4l2-ctl -d $DEVICE --set-ctrl=gain=10 - -# sharpness: 0 to 6 (default: 3) -# Setting to 4 for slightly crisper image -v4l2-ctl -d $DEVICE --set-ctrl=sharpness=4 - -# backlight_compensation: 0 to 8 (default: 4) -# Increase if you have bright window behind you -# Decrease if you have good front lighting -v4l2-ctl -d $DEVICE --set-ctrl=backlight_compensation=4 - -# White Balance Configuration -# First, disable auto white balance to set manual temperature -v4l2-ctl -d $DEVICE --set-ctrl=white_balance_automatic=0 - -# white_balance_temperature: 2800 to 6500 (default: 4600) -# 2800-3200: Warm tungsten/incandescent lights -# 3500-4000: Mixed indoor lighting (RECOMMENDED for most) -# 4600-5000: Neutral indoor -# 5500-6500: Daylight/cool white LED -v4l2-ctl -d $DEVICE --set-ctrl=white_balance_temperature=3800 - -# Exposure Configuration -# auto_exposure: 0=Manual, 1=Auto, 3=Aperture Priority (default: 3) -# Setting to Manual (1) for consistent exposure -v4l2-ctl -d $DEVICE --set-ctrl=auto_exposure=1 - -# exposure_time_absolute: 1 to 5000 (default: 157) -# Lower = brighter but may blur with movement -# Higher = darker but sharper with movement -# 157 is default (good starting point) -# Adjust based on your lighting: -# - Good lighting: 100-150 -# - Normal lighting: 150-250 (RECOMMENDED) -# - Dim lighting: 250-400 -v4l2-ctl -d $DEVICE --set-ctrl=exposure_time_absolute=200 - -# exposure_dynamic_framerate: Keep disabled for consistent 30fps -v4l2-ctl -d $DEVICE --set-ctrl=exposure_dynamic_framerate=0 - -# power_line_frequency: 0=Disabled, 1=50Hz, 2=60Hz -# Set based on your region: -# - Europe/most of world: 50 Hz (1) -# - Americas/some Asia: 60 Hz (2) -# This prevents flickering from artificial lights -v4l2-ctl -d $DEVICE --set-ctrl=power_line_frequency=1 - -echo "Camera configuration complete!" -echo "" -echo "Current settings:" -v4l2-ctl -d $DEVICE --all | grep -A 1 "brightness\|contrast\|saturation\|sharpness\|exposure\|white_balance" diff --git a/.config/btop/btop.conf b/.config/btop/btop.conf index 7cc6a17..0c5bf05 100644 --- a/.config/btop/btop.conf +++ b/.config/btop/btop.conf @@ -1,18 +1,18 @@ -#? Config file for btop v. 1.4.5 +#? Config file for btop v.1.4.6 #* 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 = "/usr/share/btop/themes/gruvbox_material_dark.theme" #* If the theme set background should be shown, set to False if you want terminal background transparency. -theme_background = True +theme_background = true #* Sets if 24-bit truecolor should be used, will convert 24-bit colors to 256 color (6x6x6 color cube) if false. -truecolor = True +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 +force_tty = false #* 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. @@ -22,10 +22,13 @@ presets = "cpu:1:default,proc:0:default cpu:0:default,mem:0:default,net:0:defaul #* 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 +vim_keys = true #* Rounded corners on boxes, is ignored if TTY mode is ON. -rounded_corners = True +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. @@ -57,40 +60,43 @@ 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 = "memory" +proc_sorting = "cpu direct" #* Reverse sorting order, True or False. -proc_reversed = False +proc_reversed = false #* Show processes as a tree. -proc_tree = True +proc_tree = true #* Use the cpu graph colors in the process list. -proc_colors = True +proc_colors = true #* Use a darkening gradient in the process list. -proc_gradient = True +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 +proc_per_core = false #* Show process memory as bytes instead of percent. -proc_mem_bytes = True +proc_mem_bytes = true #* Show cpu graph for each process. -proc_cpu_graphs = True +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 +proc_info_smaps = false #* Show proc box on left side of screen instead of right. -proc_left = False +proc_left = false #* (Linux) Filter processes tied to the Linux kernel(similar behavior to htop). -proc_filter_kernel = False +proc_filter_kernel = false #* In tree-view, always accumulate child process resources in the parent process. -proc_aggregate = False +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. @@ -104,28 +110,28 @@ cpu_graph_lower = "total" show_gpu_info = "Auto" #* Toggles if the lower CPU graph should be inverted. -cpu_invert_lower = True +cpu_invert_lower = true #* Set to True to completely disable the lower CPU graph. -cpu_single_graph = False +cpu_single_graph = false #* Show cpu box at bottom of screen instead of top. -cpu_bottom = False +cpu_bottom = false #* Shows the system uptime in the CPU box. -show_uptime = True +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_watts = true #* Show cpu temperature. -check_temp = True +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 +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. @@ -137,17 +143,20 @@ cpu_core_map = "" temp_scale = "celsius" #* Use base 10 for bits/bytes sizes, KB = 1000 instead of KiB = 1024. -base_10_sizes = False +base_10_sizes = false #* Show CPU frequency. -show_cpu_freq = True +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 +background_update = true #* Custom cpu model name, empty string to disable. custom_cpu_name = "" @@ -157,43 +166,43 @@ custom_cpu_name = "" disks_filter = "" #* Show graphs instead of meters for memory values. -mem_graphs = True +mem_graphs = true #* Show mem box below net box instead of above. -mem_below_net = False +mem_below_net = false #* Count ZFS ARC in cached and available memory. -zfs_arc_cached = True +zfs_arc_cached = true #* If swap memory should be shown in memory box. -show_swap = True +show_swap = true #* Show swap as a disk, ignores show_swap value above, inserts itself after first disk. -swap_disk = True +swap_disk = true #* If mem box should be split to also show disks info. -show_disks = True +show_disks = true #* Filter out non physical disks. Set this to False to include network disks, RAM disks and similar. -only_physical = True +only_physical = true #* Read disks list from /etc/fstab. This also disables only_physical. -use_fstab = True +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 +zfs_hide_datasets = false #* Set to true to show available disk space for privileged users. -disk_free_priv = False +disk_free_priv = false #* Toggles if io activity % (disk busy time) should be shown in regular disk usage view. -show_io_stat = False +show_io_stat = false #* Toggles io mode for disks, showing big graphs for disk read/write speeds. -io_mode = False +io_mode = false #* Set to True to show combined read/write io graphs in io mode. -io_graph_combined = False +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". @@ -205,10 +214,10 @@ 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 +net_auto = true #* Sync the auto scaling for download and upload to whichever currently has the highest scale. -net_sync = False +net_sync = false #* Starts with the Network Interface specified here. net_iface = "" @@ -217,26 +226,32 @@ net_iface = "" base_10_bitrate = "Auto" #* Show battery stats in top right if battery is present. -show_battery = True +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 +show_battery_watts = true -#* Set loglevel for "~/.config/btop/btop.log" levels are: "ERROR" "WARNING" "INFO" "DEBUG". +#* 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 +nvml_measure_pcie_speeds = true #* Measure PCIe throughput on AMD cards, may impact performance on certain cards. -rsmi_measure_pcie_speeds = True +rsmi_measure_pcie_speeds = true #* Horizontally mirror the GPU graph. -gpu_mirror_graph = True +gpu_mirror_graph = true + +#* Set which GPU vendors to show. Available values are "nvidia amd intel" +shown_gpus = "nvidia amd intel" #* Custom gpu0 model name, empty string to disable. custom_gpu_name0 = "" diff --git a/.config/electron-flags.conf b/.config/electron-flags.conf index 51bdd86..fd96603 100644 --- a/.config/electron-flags.conf +++ b/.config/electron-flags.conf @@ -1,2 +1,3 @@ ---enable-features=UseOzonePlatform +--enable-features=WaylandWindowDecorations,AllowQt --ozone-platform=wayland +--gtk-version=4 diff --git a/.config/environment.d/envvars.conf b/.config/environment.d/envvars.conf index 7d9c384..c2d9740 100644 --- a/.config/environment.d/envvars.conf +++ b/.config/environment.d/envvars.conf @@ -29,6 +29,8 @@ GTK_USE_PORTAL=1 # -------------------------- # Disable WebKit’s compositing; rely on WM compositor. WEBKIT_DISABLE_COMPOSITING_MODE=1 +WEBKIT_DISABLE_DMABUF_RENDERER=1 +__NV_DISABLE_EXPLICIT_SYNC=1 # Default browser for CLI utilities (xdg-open, git web--browse). BROWSER="firefox-developer-edition" diff --git a/.config/firefox/.github/sushi.jpg b/.config/firefox/.github/sushi.jpg new file mode 100644 index 0000000..4ec82ba Binary files /dev/null and b/.config/firefox/.github/sushi.jpg differ diff --git a/.config/firefox/start.html b/.config/firefox/start.html index 042239a..a222a99 100644 --- a/.config/firefox/start.html +++ b/.config/firefox/start.html @@ -9,7 +9,7 @@ font-family: my-queue; background: linear-gradient(rgba(37, 36, 35, 0.8), rgba(37, 36, 35, 0.8)), - url(https://gruvbox-wallpapers.pages.dev/wallpapers/anime/sushi.jpg); + url(https://raw.githubusercontent.com/AngelJumbo/gruvbox-wallpapers/refs/heads/main/wallpapers/anime/sushi.jpg); color: #d4be98; display: flex; justify-content: center; diff --git a/.config/mimeapps.list b/.config/mimeapps.list index cfced54..a853bde 100644 --- a/.config/mimeapps.list +++ b/.config/mimeapps.list @@ -236,7 +236,7 @@ image/svg+xml=krita_svg.desktop image/x-nikon-nef=krita_tiff.desktop image/x-xcf=krita_xcf.desktop image/x-tiff-multipage=imv.desktop -image/webp=krita_qimageio.desktop +image/webp=imv.desktop image/x-sony-sr2=krita_qimageio.desktop image/x-fuji-raf=krita_qimageio.desktop image/jp2=krita_qimageio.desktop @@ -450,7 +450,7 @@ image/x-panasonic-rw=krita_raw.desktop; image/svg+xml=krita_svg.desktop; image/x-nikon-nef=krita_tiff.desktop; image/x-xcf=krita_xcf.desktop; -image/webp=krita_webp.desktop; +image/webp=imv.desktop; image/x-sony-sr2=imv.desktop;krita_tiff.desktop;krita_qimageio.desktop; image/x-fuji-raf=krita_raw.desktop;krita_qimageio.desktop; image/jp2=krita_jp2.desktop;krita_qimageio.desktop; diff --git a/.config/pipewire/pipewire.conf.d/99-custom.conf b/.config/pipewire/pipewire.conf.d/99-custom.conf index ec3a566..4771e8a 100644 --- a/.config/pipewire/pipewire.conf.d/99-custom.conf +++ b/.config/pipewire/pipewire.conf.d/99-custom.conf @@ -1,7 +1,7 @@ context.properties = { default.clock.rate = 48000 default.clock.quantum = 1024 - default.clock.min-quantum = 512 + default.clock.min-quantum = 1024 default.clock.max-quantum = 2048 } diff --git a/.config/sworkstyle/config.toml b/.config/sworkstyle/config.toml index 6ce78c5..a3dd76a 100644 --- a/.config/sworkstyle/config.toml +++ b/.config/sworkstyle/config.toml @@ -37,7 +37,7 @@ separator = ' ' # -------------------- '/nvim ?\w*/' = '' '/vim ?\w*/' = '' -'/Yazi ?\w*/' = '' +'/yazi ?\w*/' = '' 'kitty' = '' 'cool-retro-term.cool-retro-term' = '' diff --git a/.config/waybar/config b/.config/waybar/config index 264d4cb..29c3ab3 100644 --- a/.config/waybar/config +++ b/.config/waybar/config @@ -97,6 +97,7 @@ "on-scroll-up": "shift_up", "on-scroll-down": "shift_down" }, + "on-click-right": "kitty -e tatuin" }, "pulseaudio": { diff --git a/.config/yazi/.github/yazi.png b/.config/yazi/.github/yazi.png index a446568..1b67fe3 100644 Binary files a/.config/yazi/.github/yazi.png and b/.config/yazi/.github/yazi.png differ diff --git a/.config/yazi/NvimTree_1 b/.config/yazi/NvimTree_1 deleted file mode 100644 index e69de29..0000000 diff --git a/.config/yazi/theme.toml b/.config/yazi/theme.toml index d989f6e..f75110a 100644 --- a/.config/yazi/theme.toml +++ b/.config/yazi/theme.toml @@ -19,13 +19,18 @@ marker_marked = { fg = "cyan", bg = "cyan" } marker_selected = { fg = "#e78a4e", bg = "#e78a4e" } # Counts style -count_copied = { fg = "gray", bg = "green" } -count_cut = { fg = "gray", bg = "red" } -count_selected = { fg = "gray", bg = "#e78a4e" } +count_copied = { fg = "black", bg = "green" } +count_cut = { fg = "black", bg = "red" } +count_selected = { fg = "black", bg = "#e78a4e" } # Border Style border_style = { fg = "yellow" } +[indicator] +parent = { fg = "black", bg = "blue" } +current = { fg = "black", bg = "blue" } +preview = { fg = "black", bg = "blue" } + # ----------- # Tabs Style # ----------- @@ -51,6 +56,10 @@ select_alt = { fg = "white", bg = "#665c54", bold = true } overall = { fg = "white", bg = "darkgray" } sep_left = { open = "", close = "" } sep_right = { open = "", close = "" } +perm_type = { fg = "blue" } +perm_read = { fg = "yellow" } +perm_exec = { fg = "green" } +perm_sep = { fg = "white" } # -------------- # Confirm Style @@ -81,11 +90,11 @@ rules = [ { mime = "application/{,g}zip", fg = "red" }, { mime = "application/x-{tar,bzip*,7z-compressed,xz,rar}", fg = "red" }, { mime = "application/{pdf,doc,rtf,vnd.*}", fg = "cyan" }, - { name = "*", is = "orphan", bg = "red" }, - { name = "*", is = "exec", fg = "green" }, - { name = "*", is = "dummy", bg = "red" }, - { name = "*/", is = "dummy", bg = "red" }, - { name = "*/", fg = "blue" }, + { url = "*", is = "orphan", bg = "red" }, + { url = "*", is = "exec", fg = "green" }, + { url = "*", is = "dummy", bg = "red" }, + { url = "*/", is = "dummy", bg = "red" }, + { url = "*/", fg = "blue" }, ] # ---------------------------- @@ -240,17 +249,17 @@ files = [ exts = [ # Audio Files - { name = "aac", text = "", fg = "blue" }, - { name = "aif", text = "", fg = "blue" }, - { name = "aiff", text = "", fg = "blue" }, - { name = "ape", text = "", fg = "blue" }, - { name = "flac", text = "", fg = "blue" }, - { name = "m4a", text = "", fg = "blue" }, - { name = "mp3", text = "", fg = "blue" }, - { name = "ogg", text = "", fg = "blue" }, - { name = "opus", text = "", fg = "blue" }, - { name = "wav", text = "", fg = "blue" }, - { name = "wma", text = "", fg = "blue" }, + { name = "aac", text = "", fg = "blue" }, + { name = "aif", text = "", fg = "blue" }, + { name = "aiff", text = "", fg = "blue" }, + { name = "ape", text = "", fg = "blue" }, + { name = "flac", text = "", fg = "blue" }, + { name = "m4a", text = "", fg = "blue" }, + { name = "mp3", text = "", fg = "blue" }, + { name = "ogg", text = "", fg = "blue" }, + { name = "opus", text = "", fg = "blue" }, + { name = "wav", text = "", fg = "blue" }, + { name = "wma", text = "", fg = "blue" }, # Video Files { name = "3gp", text = "", fg = "#e78a4e" }, diff --git a/.config/yazi/yazi.toml b/.config/yazi/yazi.toml index 6c62c73..34befb5 100644 --- a/.config/yazi/yazi.toml +++ b/.config/yazi/yazi.toml @@ -8,94 +8,68 @@ ratio = [1, 2, 3] # Sort using natural order (e.g., file10 after file2) sort_by = "natural" +# Sort case-insensitively +sort_sensitive = false + +# Sort in normal order +sort_reverse = false + +# Sort directories first +sort_dir_first = true + # Apply transliteration to sort non-ASCII names properly sort_translit = true # Show file size in the list view linemode = "size" -# Number of lines to keep above/below the cursor when scrolling -# Note: 200 is extremely high and may reduce usability -scrolloff = 10 - - -[preview] -# Max width/height of previewed images (in pixels) -# Keep these values reasonable to avoid performance issues -max_width = 720 -max_height = 1280 - - -[plugin] +# Don't show hidden files +show_hidden = false -# ----------------------------------------------------------- -# Fetchers – Define how to fetch metadata or additional info -# ----------------------------------------------------------- -fetchers = [ - # Use MIME-based fetcher with high priority if MIME is not already present - { id = "mime", name = "*", run = "mime", if = "!mime", prio = "high" }, -] - - -# ------------------------------------------------------- -# Preloaders – Run before previewers, useful for caching -# ------------------------------------------------------- -preloaders = [ - # Specialized image formats, handled by ImageMagick - { mime = "image/{avif,hei?,jxl,svg+xml}", run = "magick" }, - - # General image previewing - { mime = "image/*", run = "image" }, +# Show the path of the symlink file +show_symlink = true - # Video thumbnails or metadata - { mime = "video/*", run = "video" }, - - # PDFs (can be slow — consider optional size check) - { mime = "application/pdf", run = "pdf" }, - - # Fonts - { mime = "font/*", run = "font" }, - { mime = "application/vnd.ms-opentype", run = "font" }, -] +# Number of lines to keep above/below the cursor when scrolling +scrolloff = 10 +# Mouse events to capture +mouse_events = ["click", "scroll"] -# ------------------------------------------- -# Previewers – Shown when a file is selected -# ------------------------------------------- -previewers = [ - # Directories - { name = "*/", run = "folder", sync = true }, +# Format string for the title bar +title_format = "" - # Text/code files - { mime = "text/*", run = "code" }, - { mime = "*/{xml,javascript,x-wine-extension-ini}", run = "code" }, - # JSON files - { mime = "application/{json,x-ndjson}", run = "json" }, +[preview] +# Wrap long lines +wrap = "yes" - # Specialized image formats - { mime = "image/{avif,hei?,jxl,svg+xml}", run = "magick" }, +# Number of spaces per tab +tab_size = 2 - # All other images - { mime = "image/*", run = "image" }, +# Max width/height of previewed images (in pixels) +max_width = 720 +max_height = 1280 - # Video files - { mime = "video/*", run = "video" }, +# Image preview delay in milliseconds +image_delay = 100 - # PDF documents - { mime = "application/pdf", run = "pdf" }, +# Image downscaling filter to use +image_filter = "catmull-rom" - # Archives (tarballs, 7z, ISO) - { mime = "application/{,g}zip", run = "archive" }, - { mime = "application/x-{tar,bzip*,7z-compressed,xz,rar,iso9660-image}", run = "archive" }, +# Image quality (50-90) +image_quality = 50 - # Fonts - { mime = "font/*", run = "font" }, - { mime = "application/vnd.ms-opentype", run = "font" }, - # Empty file handler - { mime = "inode/x-empty", run = "empty" }, +[opener] +# Opener to use for opening files +play = [{ run = "mpv %s", orphan = true, for = "unix" }] +edit = [{ run = "kitty -e $EDITOR %s", orphan = true, for = "unix" }] +open = [{ run = "xdg-open %s", desc = "Open" }] - # Fallback if nothing else matches - { name = "*", run = "file" }, +[open] +rules = [ + { mime = "text/*", use = "edit" }, + { mime = "video/*", use = "play" }, + { mime = "audio/*", use = "play" }, + { mime = "*", use = "open" }, ] diff --git a/.github/README.md b/.github/README.md index 6fcc205..78df030 100644 --- a/.github/README.md +++ b/.github/README.md @@ -105,12 +105,13 @@ All the info about my setup. | **Fuzzy file finder** | [fzf](https://github.com/junegunn/fzf/) [:gear:](../.fzfrc) | | **Fuzzy word finder** | [ripgrep](https://github.com/BurntSushi/ripgrep/) [:gear:](../.ripgreprc) | | **Cheat sheet tool** | [navi](https://github.com/denisidoro/navi) | -| **Git TUI** | [lazygit](https://github.com/jesseduffield/lazygit/) | +| **Git TUI** | [lazygit](https://github.com/jesseduffield/lazygit/) [:gear:](../.config/lazygit/) | | **Docker TUI** | [lazydocker](https://github.com/jesseduffield/lazydocker/) | | **Trash CLI** | [glib2](https://archlinux.org/packages/core/x86_64/glib2) (gio trash) | | **System monitor** | [btop](https://github.com/aristocratos/btop/) [:gear:](../.config/btop/) | | **Pulse audio control** | [pulsemixer](https://github.com/GeorgeFilipkin/pulsemixer/) [:gear:](../.config/pulsemixer.cfg) | | **Torrent client** | [stig](https://github.com/rndusr/stig) | +| **Task manager** | [tatuin](https://github.com/panter-dsd/tatuin) [:gear:](../.config/tatuin/) | ### :window: GUI software diff --git a/.github/assets/final.png b/.github/assets/final.png index af71c21..498b677 100644 Binary files a/.github/assets/final.png and b/.github/assets/final.png differ diff --git a/.github/assets/sway-floating.png b/.github/assets/sway-floating.png index f5a9404..1585e43 100644 Binary files a/.github/assets/sway-floating.png and b/.github/assets/sway-floating.png differ diff --git a/.ideavimrc b/.ideavimrc index 39addf5..d7266c7 100644 --- a/.ideavimrc +++ b/.ideavimrc @@ -56,7 +56,7 @@ let g:WhichKeyDesc_tool_debug = "td Debug window" let g:WhichKeyDesc_execution = "e Execution menu" let g:WhichKeyDesc_execution_run = "er Run" let g:WhichKeyDesc_execution_run_config = "eR Choose run configuration" -let g:WhichKeyDesc_execution_stop = "eS Stop" +let g:WhichKeyDesc_execution_stop = "es Stop" let g:WhichKeyDesc_debug = "d Debug menu" let g:WhichKeyDesc_debug_start = "de Strat debug" @@ -98,6 +98,7 @@ let g:WhichKeyDesc_comment_block = "cb Comment block" map (CloseContent) imap (CloseContent) map :noh +map U (Redo) " Tool windows map te :NERDTreeToggle @@ -135,7 +136,7 @@ map rr (Refactorings.QuickListPopupAction) map gd (GotoDeclaration) map gy (GotoTypeDeclaration) map gi (GotoImplementation) -map gt (GotoTest) +map gs (GotoTest) map gb (Back) map gn (Forward) @@ -149,4 +150,4 @@ map fr (ShowUsages) " Comments map cc (CommentByLineComment) -map cb (CommentByBlockComment) \ No newline at end of file +map cb (CommentByBlockComment) diff --git a/.system-config-backup/aurpkglist.txt b/.system-config-backup/aurpkglist.txt index 7182398..b6e5e92 100644 --- a/.system-config-backup/aurpkglist.txt +++ b/.system-config-backup/aurpkglist.txt @@ -1,29 +1,39 @@ advcpmv +camset ddcui debtap gnu-netcat -google-chrome google-java-format gruvbox-material-gtk-theme-git gruvbox-material-icon-theme-git insomnia-bin intellij-idea-ultimate-edition lazyjournal +libdeep_filter_ladspa-git luajit-tiktoken-bin +ms-sys pacnews-neovim-git paru pkgtools -playit-bin python-async-timeout python-commitizen python-decli +python-google-genai +python-httpx-sse +python-mcp +python-pdfplumber +python-pypdf2 +python-pypdfium2 python-questionary +python-sentencepiece +python-sse-starlette python-xlsx2csv rate-mirrors reiserfsprogs riseup-vpn rmlint rofi-power-menu +sentencepiece sniprun stig swaykbdd @@ -31,12 +41,14 @@ swaylock-effects swayosd-git sworkstyle sysz +tatuin tgpt-git +ungoogled-chromium-bin vesktop-bin waybar-crypto waybar-module-pacman-updates-git wg-cmd -windscribe-v2-bin +woeusb wttrbar xcursor-simp1e-gruvbox-dark xdg-desktop-portal-termfilechooser-hunkyburrito-git diff --git a/.system-config-backup/pacman/pacman.conf b/.system-config-backup/pacman/pacman.conf index ecb06c1..8944775 100644 --- a/.system-config-backup/pacman/pacman.conf +++ b/.system-config-backup/pacman/pacman.conf @@ -36,7 +36,8 @@ CheckSpace #VerbosePkgLists ParallelDownloads = 5 DownloadUser = alpm -#DisableSandbox +#DisableSandboxFilesystem +#DisableSandboxSyscalls # By default, pacman accepts packages signed by keys that its local keyring # trusts (see pacman-key and its man page), as well as unsigned packages. diff --git a/.system-config-backup/pkglist.txt b/.system-config-backup/pkglist.txt index 9127337..593bbf5 100644 --- a/.system-config-backup/pkglist.txt +++ b/.system-config-backup/pkglist.txt @@ -16,6 +16,7 @@ calibre cantarell-fonts chafa cliphist +cloudflared cmake cool-retro-term ddcutil @@ -49,6 +50,8 @@ grep groff groovy grub +gst-plugin-pipewire +gst-plugins-base gst-plugins-ugly gvfs-mtp gzip @@ -93,13 +96,13 @@ mdadm mpv msmtp-mta mtpfs -nautilus navi neovim net-tools netctl network-manager-applet networkmanager +nodejs noto-fonts-emoji npm ntfs-3g @@ -119,8 +122,11 @@ playerctl polkit postgresql pulsemixer +python-distro python-pillow python-pip +python-pipx +python-pymupdf python-pystray python-requests qemu-desktop @@ -145,6 +151,7 @@ telegram-desktop texinfo tlp-rdw transmission-cli +tree ttf-dejavu ttf-hack ttf-jetbrains-mono @@ -162,6 +169,7 @@ virtualbox-host-dkms waybar webkit2gtk webkit2gtk-4.1 +webkitgtk-6.0 wget which wipe diff --git a/.system-config-backup/tlp/tlp.conf b/.system-config-backup/tlp/tlp.conf index 5e05b35..0141b2f 100644 --- a/.system-config-backup/tlp/tlp.conf +++ b/.system-config-backup/tlp/tlp.conf @@ -1,5 +1,5 @@ -# ------------------------------------------------------------------------------ -# /etc/tlp.conf - TLP user configuration (version 1.8.0) +# ---------------------------------------------------------------------------- +# /etc/tlp.conf - TLP user configuration (version 1.9.0) # See full explanation: https://linrunner.de/tlp/settings # # Copyright (c) 2025 Thomas Koch and others. @@ -11,6 +11,17 @@ # 2. /etc/tlp.d/*.conf - Drop-in customization snippets # 3. /etc/tlp.conf - User configuration (this file) # +# Power Profiles: a part of TLP's parameters is divided into two or three +# groups: +# - performance: parameters ending in _AC are used when AC power is +# connected or when the command 'tlp performance' is run. +# - balanced: parameters ending in _BAT are used when operating +# on battery power or when the command 'tlp balanced' is run. +# - power-saver: parameters ending in _SAV are used when the command +# 'tlp power-saver' is run. If there is no _SAV parameter available +# for a feature, the _BAT parameter will be used instead. +# - Any remaining parameters not divided apply to all power profiles. +# # Please note: # - If parameters are specified more than once, the last occurrence takes # precedence. This also means that any parameters defined here will take @@ -20,16 +31,17 @@ # - Important: all parameters are disabled here. Remove the leading '#' if you # want to enable a feature without a default or if you want to set a value # other than the default. -# - Parameters must always be specified in pairs, i.e. for AC and BAT. -# If you omit one of them, the value you set will apply to both power -# sources, since a change will only occur if different values are defined. +# - Parameters must always be specified for all power profiles, i.e. in the +# AC, BAT and SAV category (where applicable). If you omit one of them, +# the missing profile will receive its value from another profile, since +# a change will only occur if different values are defined. # - To completely disable a parameter, use PARAMETER="". # Legend for defaults: # - Default *: intrinsic default that is effective when the parameter is # missing or the line has a leading #'. # - Default : do nothing or use kernel/hardware defaults. # -# ------------------------------------------------------------------------------ +# ---------------------------------------------------------------------------- # tlp - Parameters for power saving # Set to 0 to disable, 1 to enable TLP. @@ -37,10 +49,19 @@ #TLP_ENABLE=1 +# Set to 1 to deactivate all intrinsic defaults of TLP. This means that +# TLP only applies settings that have been explicitly activated i.e. +# parameters without a leading '#'. +# Notes: +# - Helpful if one wants to use only selected features of TLP +# - After activation, use tlp-stat -c to display your effective configuration + +#TLP_DISABLE_DEFAULTS=1 + # Control how warnings about invalid settings are issued: -# 0=disabled, -# 1=background tasks (boot, resume, change of power source) report to syslog, -# 2=shell commands report to the terminal (stderr), +# 0=disabled +# 1=background tasks (boot, resume, change of power source) report to syslog +# 2=shell commands report to the terminal (stderr) # 3=combination of 1 and 2 # Default: 3 @@ -52,34 +73,54 @@ # 96=cyan, 97=white. # Other colors are possible, refer to: # https://en.wikipedia.org/wiki/ANSI_escape_code#3-bit_and_4-bit -# Colors must be specified in the order " ". +# Colors must be specified in the order +# " ". # By default, errors are shown in red, warnings in yellow, notices in bold # and success in green. # Default: "91 93 1 92" #TLP_MSG_COLORS="91 93 1 92" -# Operation mode when no power supply can be detected: AC, BAT. -# Concerns some desktop and embedded hardware only. +# Control automatic switching of the power profile when connecting or removing +# the charger, when booting the system or when executing 'tlp start': +# 0=disabled - never switch, use TLP_DEFAULT_MODE if configured +# 1=auto - always switch, select performance on AC and +# balanced on battery power. +# 2=smart - do not switch if the following profiles were active previously: +# power-saver or balanced on AC resp. +# power-saver or performance on battery power. +# Note: the same applies if the charger was connected/removed during suspend. +# Default: 2 + +#TLP_AUTO_SWITCH=2 + +# Power profile to use when automatic switching is disabled +# (TLP_AUTO_SWITCH=0), profile is locked (TLP_PERSISTENT_DEFAULT=1) +# or no power supply is detected: +# PRF=performance, BAL=balanced, SAV=power-saver. +# Note: legacy values AC and BAT continue to work. They are mapped to +# PRF and BAL, respectively. # Default: -#TLP_DEFAULT_MODE=AC +#TLP_DEFAULT_MODE=BAL -# Operation mode select: 0=depend on power source, 1=always use TLP_DEFAULT_MODE -# Note: use in conjunction with TLP_DEFAULT_MODE=BAT for BAT settings on AC. +# Lock power profile: +# 0=profile depends on automatic switching, +# 1=profile is locked to TLP_DEFAULT_MODE (TLP_AUTO_SWITCH is ignored). # Default: 0 #TLP_PERSISTENT_DEFAULT=0 -# Power supply classes to ignore when determining operation mode: AC, USB, BAT. +# Power supply classes to ignore when determining power profile: +# AC, USB, BAT. # Separate multiple classes with spaces. # Note: try on laptops where operation mode AC/BAT is incorrectly detected. # Default: #TLP_PS_IGNORE="BAT" -# Seconds laptop mode has to wait after the disk goes idle before doing a sync. -# Non-zero value enables, zero disables laptop mode. +# Seconds laptop mode has to wait after the disk goes idle before doing a +# sync. Non-zero value enables, zero disables laptop mode. # Default: 0 (AC), 2 (BAT) #DISK_IDLE_SECS_ON_AC=0 @@ -99,6 +140,7 @@ # Default: #CPU_DRIVER_OPMODE_ON_AC=active #CPU_DRIVER_OPMODE_ON_BAT=active +#CPU_DRIVER_OPMODE_ON_SAV=active # Select a CPU frequency scaling governor. # Intel CPU with intel_pstate driver or @@ -107,7 +149,7 @@ # Intel CPU with intel_pstate driver in passive mode ('intel_cpufreq') or # AMD CPU with amd-pstate driver in passive or guided mode ('amd-pstate') or # Intel, AMD and other CPU brands with acpi-cpufreq driver: -# conservative, ondemand(*), userspace, powersave, performance, schedutil(*). +# conservative, ondemand(*), userspace, powersave, performance, schedutil(*) # Use tlp-stat -p to show the active driver and available governors. # Important: # Governors marked (*) above are power efficient for *almost all* workloads @@ -116,8 +158,9 @@ # changing the governor. # Default: -#CPU_SCALING_GOVERNOR_ON_AC=powersave +#CPU_SCALING_GOVERNOR_ON_AC=performance #CPU_SCALING_GOVERNOR_ON_BAT=powersave +#CPU_SCALING_GOVERNOR_ON_SAV=powersave # Set the min/max frequency available for the scaling governor. # Possible values depend on your CPU. For available frequencies see @@ -132,6 +175,8 @@ #CPU_SCALING_MAX_FREQ_ON_AC=0 #CPU_SCALING_MIN_FREQ_ON_BAT=0 #CPU_SCALING_MAX_FREQ_ON_BAT=0 +#CPU_SCALING_MIN_FREQ_ON_SAV=0 +#CPU_SCALING_MAX_FREQ_ON_SAV=0 # Set CPU energy/performance policies EPP and EPB: # performance, balance_performance, default, balance_power, power. @@ -144,10 +189,11 @@ # will not honor EPB. Only the matching feature will be applied by TLP. # * AMD Zen 2 or newer CPU # EPP: amd-pstate driver in active mode ('amd-pstate-epp') as of kernel 6.3 -# Default: balance_performance (AC), balance_power (BAT) +# Default: balance_performance (AC), balance_power (BAT), power (SAV) #CPU_ENERGY_PERF_POLICY_ON_AC=balance_performance #CPU_ENERGY_PERF_POLICY_ON_BAT=balance_power +#CPU_ENERGY_PERF_POLICY_ON_SAV=power # Set Intel CPU P-state performance: 0..100 (%). # Limit the max/min P-state to control the power dissipation of the CPU. @@ -158,7 +204,9 @@ #CPU_MIN_PERF_ON_AC=0 #CPU_MAX_PERF_ON_AC=100 #CPU_MIN_PERF_ON_BAT=0 -#CPU_MAX_PERF_ON_BAT=30 +#CPU_MAX_PERF_ON_BAT=80 +#CPU_MIN_PERF_ON_SAV=0 +#CPU_MAX_PERF_ON_SAV=60 # Set the CPU "turbo boost" (Intel) or "core performance boost" (AMD) feature: # 0=disable, 1=allow. @@ -168,18 +216,21 @@ # Default: #CPU_BOOST_ON_AC=1 -#CPU_BOOST_ON_BAT=0 +#CPU_BOOST_ON_BAT=1 +#CPU_BOOST_ON_SAV=0 # Set CPU dynamic boost feature: # 0=disable, 1=enable. # Improve performance by increasing minimum P-state limit dynamically # whenever a task previously waiting on I/O is selected to run. -# Requires Intel Core i 6th gen. or newer CPU: intel_pstate driver in active mode. +# Requires Intel Core i 6th gen. or newer CPU with intel_pstate driver +# in active mode. # Note: AMD CPUs currently have no tunable for this. # Default: #CPU_HWP_DYN_BOOST_ON_AC=1 -#CPU_HWP_DYN_BOOST_ON_BAT=0 +#CPU_HWP_DYN_BOOST_ON_BAT=1 +#CPU_HWP_DYN_BOOST_ON_SAV=0 # Kernel NMI Watchdog: # 0=disable (default, saves power), 1=enable (for kernel debugging only). @@ -193,10 +244,11 @@ # thermal and fan speed. Values are given in order of increasing power saving. # Note: check the output of tlp-stat -p to determine availability on your # hardware and additional profiles such as: balanced-performance, quiet, cool. -# Default: +# Default: performance (AC), balanced (BAT), low-power (SAV) #PLATFORM_PROFILE_ON_AC=performance -#PLATFORM_PROFILE_ON_BAT=low-power +#PLATFORM_PROFILE_ON_BAT=balanced +#PLATFORM_PROFILE_ON_SAV=low-power # System suspend mode: # s2idle: Idle standby - a pure software, light-weight, system sleep state, @@ -286,8 +338,8 @@ # Runtime Power Management for NVMe, SATA, ATA and USB disks # as well as SATA ports: # on=disable, auto=enable. -# Note: SATA controllers are PCIe bus devices and handled by RUNTIME_PM further -# down. +# Note: SATA controllers are PCIe bus devices and handled by RUNTIME_PM +# further down. # Default: on (AC), auto (BAT) @@ -347,10 +399,11 @@ # Notes: # - Requires AMD Vega or newer GPU with amdgpu driver as of kernel 6.9 # - Savings are made at the expense of color balance -# Default: 0 (AC), 1 (BAT) +# Default: 0 (AC), 1 (BAT), 3 (SAV) #AMDGPU_ABM_LEVEL_ON_AC=0 -#AMDGPU_ABM_LEVEL_ON_BAT=3 +#AMDGPU_ABM_LEVEL_ON_BAT=1 +#AMDGPU_ABM_LEVEL_ON_SAV=3 # Wi-Fi power saving mode: on=enable, off=disable. # Default: off (AC), on (BAT) @@ -544,8 +597,9 @@ #RESTORE_THRESHOLDS_ON_BAT=1 -# ------------------------------------------------------------------------------ -# tlp-rdw - Parameters for the radio device wizard +# ---------------------------------------------------------------------------- +# tlp-rdw - Radio Device Wizard +# Note: requires installation of the optional package tlp-rdw. # Possible devices: bluetooth, wifi, wwan. # Separate multiple radio devices with spaces. @@ -564,6 +618,9 @@ #DEVICES_TO_ENABLE_ON_WWAN_DISCONNECT="" # Radio devices to enable/disable when docked. +# Note: not all docks can be recognized, especially USB-C docks. If a LAN +# cable is connected to the dock, use DEVICES_TO_DISABLE_ON_LAN_CONNECT +# and DEVICES_TO_ENABLE_ON_LAN_DISCONNECT instead. #DEVICES_TO_ENABLE_ON_DOCK="" #DEVICES_TO_DISABLE_ON_DOCK=""