From 85feb977a1bf35026eb5531cee2cd367531ee18f Mon Sep 17 00:00:00 2001 From: Nils Pukropp Date: Tue, 24 Feb 2026 22:44:05 +0100 Subject: [PATCH] updated dotfiles --- .gitignore | 1 + btop/btop.conf | 111 ++++++++++--------- hypr/hyprlock.conf | 2 +- hypr/modules/autostart.conf | 1 + hypr/modules/env.conf | 2 + hypr/modules/monitors.conf | 4 +- hypr/scripts/lid_handler.sh | 3 +- hyprpanel/config.json | 166 +++++++++++++++++++++++++++++ hyprpanel/style.css | 127 ++++++++++++++++++++++ mimeapps.list | 1 + systemd/user/narl_io_mount.service | 2 +- 11 files changed, 368 insertions(+), 52 deletions(-) create mode 100644 hyprpanel/config.json create mode 100644 hyprpanel/style.css diff --git a/.gitignore b/.gitignore index ab55071..1247faf 100644 --- a/.gitignore +++ b/.gitignore @@ -6,6 +6,7 @@ !alacritty/ !dunst/ !hypr/ +!hyprpanel/ !nvim/ !waybar/ !zathura/ diff --git a/btop/btop.conf b/btop/btop.conf index 76fbf1a..1e906b0 100644 --- a/btop/btop.conf +++ b/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 = "/home/narl/.config/btop/themes/catppuccin_mocha.theme" #* If the theme set background should be shown, set to False if you want terminal background transparency. -theme_background = False +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 +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. @@ -60,37 +63,40 @@ update_ms = 2000 proc_sorting = "cpu lazy" #* 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 = "Auto" 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 = True +show_io_stat = true #* 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 = True +net_sync = true #* 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/hypr/hyprlock.conf b/hypr/hyprlock.conf index 64fee28..0521527 100644 --- a/hypr/hyprlock.conf +++ b/hypr/hyprlock.conf @@ -12,7 +12,7 @@ general { # BACKGROUND background { monitor = - path = $HOME/Pictures/exp33/exp33-oled.jpeg + path = $HOME/Pictures/mandelbrot.png blur_passes = 0 color = $base } diff --git a/hypr/modules/autostart.conf b/hypr/modules/autostart.conf index 4130237..bb74624 100644 --- a/hypr/modules/autostart.conf +++ b/hypr/modules/autostart.conf @@ -3,6 +3,7 @@ # Or execute your favorite apps at launch like this: # exec-once = uwsm app -- waybar +# exec-once = uwsm app -- hyprpanel # exec-once = uwsm app -- nextcloud --background exec-once = uwsm app -- nm-applet --indicator # exec-once = uwsm app -- rclone mount google_drive: ~/gdrive diff --git a/hypr/modules/env.conf b/hypr/modules/env.conf index af09d21..4f281f8 100644 --- a/hypr/modules/env.conf +++ b/hypr/modules/env.conf @@ -1,6 +1,8 @@ # See https://wiki.hyprland.org/Configuring/Environment-variables/ +env = INTEL_DEBUG,noccs +env = WLR_DRM_NO_ATOMIC,1 env = HYPRCURSOR_THEME,Bibata-Modern-Classic env = HYPRCURSOR_SIZE,24 env = XCURSOR_SIZE,24 diff --git a/hypr/modules/monitors.conf b/hypr/modules/monitors.conf index fddf8f7..de6f23c 100644 --- a/hypr/modules/monitors.conf +++ b/hypr/modules/monitors.conf @@ -1,5 +1,7 @@ # monitor = desc:Samsung Electric Company LC27G7xT H4ZRA00734, 2560x1440@90, 0x-1440, 1 # monitor = desc:Samsung Electric Company LC27G7xT H4ZRA00734, 2560x1440@90, 0x-1440, 1, bitdepth, 10 -monitor = desc:Samsung Electric Company LC27G7xT H4ZRA00734, 1920x1080@90, 0x-1080, 1 +monitor = desc:Samsung Electric Company LC27G7xT H4ZRA00734, 1920x1080@75, 0x-1080, 1 +# monitor = desc:Samsung Electric Company LC27G7xT H4ZRA00734, 1920x1080@60, 0x-1080, 1 +# monitor = desc:Samsung Electric Company LC27G7xT H4ZRA00734, 1280x720@240, 0x-720, 1 monitor = eDP-1, 1920x1080@60, 0x0, 1 diff --git a/hypr/scripts/lid_handler.sh b/hypr/scripts/lid_handler.sh index 6e2cf61..d0084e5 100755 --- a/hypr/scripts/lid_handler.sh +++ b/hypr/scripts/lid_handler.sh @@ -11,8 +11,9 @@ if [[ "$1" == "close" ]]; then for monitor in $(hyprctl monitors all | grep "Monitor DP-" | awk '{print $2}'); do hyprctl keyword monitor "$monitor, enable" done + systemd-run --user --on-active=5s systemctl --user restart waybar.service hyprpaper.service fi elif [[ "$1" == "open" ]]; then # Lid opened: re-enable laptop screen hyprctl keyword monitor "eDP-1, enable" -fi \ No newline at end of file +fi diff --git a/hyprpanel/config.json b/hyprpanel/config.json new file mode 100644 index 0000000..0695ebe --- /dev/null +++ b/hyprpanel/config.json @@ -0,0 +1,166 @@ +{ + "log_level": "LOG_LEVEL_INFO", + "log_subprocesses_to_journal": false, + "dbus": { + "enabled": true, + "connect_timeout": "20s", + "connect_interval": "0.200s", + "notifications": { + "enabled": true + }, + "systray": { + "enabled": true + }, + "shortcuts": { + "enabled": true + }, + "brightness": { + "enabled": true, + "adjust_step_percent": 5, + "min_brightness": 1, + "enable_logind": true, + "hud_notifications": true + }, + "power": { + "enabled": true, + "low_percent": 10, + "critical_percent": 5, + "hud_notifications": true + } + }, + "audio": { + "enabled": true, + "volume_step_percent": 5, + "volume_exceed_maximum": false, + "hud_notifications": true + }, + "panels": [ + { + "id": "panel0", + "edge": "EDGE_TOP", + "size": 34, + "monitor": "", + "modules": [ + { + "pager": { + "icon_size": 14, + "active_monitor_only": false, + "scroll_wrap_workspaces": true, + "scroll_include_inactive": true, + "enable_workspace_names": false, + "pinned": [1, 2, 3, 4, 5, 6], + "preview_width": 256 + } + }, + { + "spacer": { + "size": 8, + "expand": false + } + }, + { + "taskbar": { + "icon_size": 24, + "active_workspace_only": true, + "active_monitor_only": true, + "group_tasks": true, + "expand": false + } + }, + { + "spacer": { + "expand": true + } + }, + { + "clock": { + "time_format": "15:04", + "date_format": "%a %d %b", + "tooltip_time_format": "15:04", + "tooltip_date_format": "Monday, 02 January 2006" + } + }, + { + "spacer": { + "expand": true + } + }, + { + "systray": { + "icon_size": 18, + "menu_icon_size": 18, + "pinned": [ + "nm-applet" + ], + "modules": [ + { + "power": { + "icon_size": 18, + "icon_symbolic": true + } + } + ] + } + }, + { + "spacer": { + "size": 8, + "expand": false + } + }, + { + "notifications": { + "icon_size": 18, + "notification_icon_size": 48, + "default_timeout": "7s", + "position": "POSITION_TOP_RIGHT", + "margin": 24 + } + }, + { + "spacer": { + "size": 8, + "expand": false + } + }, + { + "audio": { + "icon_size": 18, + "icon_symbolic": true, + "command_mixer": "pavucontrol", + "enable_source": true + } + }, + { + "spacer": { + "size": 8, + "expand": false + } + }, + { + "session": { + "icon_size": 18, + "icon_symbolic": true, + "overlay_icon_size": 64, + "overlay_icon_symbolic": true, + "command_logout": "uwsm stop", + "command_reboot": "systemctl reboot", + "command_suspend": "systemctl suspend", + "command_shutdown": "systemctl poweroff" + } + }, + { + "spacer": { + "size": 8, + "expand": false + } + } + ] + } + ], + "launch_wrapper": [ + "uwsm", + "app", + "--" + ] +} diff --git a/hyprpanel/style.css b/hyprpanel/style.css new file mode 100644 index 0000000..ffcb71e --- /dev/null +++ b/hyprpanel/style.css @@ -0,0 +1,127 @@ +/* Catppuccin Mocha Palette */ +@define-color base #1e1e2e; +@define-color mantle #181825; +@define-color crust #11111b; +@define-color surface0 #313244; +@define-color surface1 #45475a; +@define-color surface2 #585b70; +@define-color text #cdd6f4; +@define-color subtext0 #a6adc8; +@define-color subtext1 #bac2de; +@define-color overlay0 #6c7086; +@define-color overlay1 #7f849c; +@define-color overlay2 #9399b2; +@define-color blue #89b4fa; +@define-color lavender #b4befe; +@define-color sapphire #74c7ec; +@define-color sky #89dceb; +@define-color teal #94e2d5; +@define-color green #a6e3a1; +@define-color yellow #f9e2af; +@define-color peach #fab387; +@define-color maroon #eba0ac; +@define-color red #f38ba8; +@define-color mauve #cba6f7; +@define-color flamingo #f2cdcd; +@define-color rosewater #f5e0dc; + +* { + font-family: "JetBrainsMono Nerd Font"; + font-size: 13px; + border: none; + box-shadow: none; +} + +window#panel0 { + background-color: alpha(@base, 0.7); + color: @text; +} + +#pager { + margin: 4px; +} + +#pager button { + background-color: @surface0; + color: @subtext0; + border-radius: 12px; + margin: 0 2px; + padding: 0 12px; + transition: all 0.2s ease-in-out; +} + +#pager button.active { + background-color: @mauve; + color: @base; +} + +#pager button:hover { + background-color: @surface1; + color: @text; +} + +#taskbar button { + background-color: transparent; + color: @subtext1; + border-radius: 12px; + margin: 0 2px; + padding: 0 8px; +} + +#taskbar button.active { + background-color: @surface0; + border-bottom: 2px solid @mauve; +} + +#clock, #systray, #audio, #session, #notifications { + background-color: @surface0; + color: @text; + border-radius: 15px; + margin: 4px 3px; + padding: 0 12px; +} + +#notifications { + color: @yellow; +} + +#clock { + color: @mauve; + font-weight: bold; +} + +#audio { + color: @sapphire; +} + +#audio.muted { + color: @subtext0; +} + +#session { + color: @red; + padding: 0 8px; +} + +/* Notifications and HUD */ +#notifications { + background-color: @base; + color: @text; + border: 1px solid @surface1; + border-radius: 12px; +} + +#hud { + background-color: alpha(@base, 0.8); + color: @text; + border-radius: 20px; + padding: 10px; +} + +#hud .progress-bar { + background-color: @surface1; +} + +#hud .progress-bar-fill { + background-color: @mauve; +} diff --git a/mimeapps.list b/mimeapps.list index 60e6093..c047f12 100644 --- a/mimeapps.list +++ b/mimeapps.list @@ -15,6 +15,7 @@ application/x-extension-xht=zen.desktop x-scheme-handler/about=google-chrome.desktop x-scheme-handler/unknown=google-chrome.desktop application/vnd.openxmlformats-officedocument.wordprocessingml.document=libreoffice-writer.desktop +x-scheme-handler/ror2mm=r2modman.desktop [Added Associations] application/pdf=org.pwmt.zathura-pdf-poppler.desktop; diff --git a/systemd/user/narl_io_mount.service b/systemd/user/narl_io_mount.service index 5a1d7d7..020579b 100644 --- a/systemd/user/narl_io_mount.service +++ b/systemd/user/narl_io_mount.service @@ -9,7 +9,7 @@ After=network-online.target # The command to start the mount. # Replace "my-remote:" and "/path/to/local/mount" accordingly. # The flags below are highly recommended for a good experience. -ExecStart=sshfs -f -p 420 narl@narl.io:/home/narl %h/narl_io +ExecStart=sshfs -f -p 420 narl@narl.io:/opt %h/narl_io # The command to unmount gracefully. ExecStop=fusermount -u %h/narl_io