# todo Transitioning to Sway/Wayland for desktop environment. _Expect iterative changes over the following months while fine-tuning happens on real hardware._ ## sway Fresh install after swapping motherboards since Gigabyte hasn't fixed the reboot problems in 1.5 years. - Verify gvm reloads properly as I have copied it to bashrc - Verify swapping export locations into bash_profile does not break (_eg. due to alacritty only loading bashrc not bash_profile_) - Test the new sway exit command works by properly terminating session services - _Figure out what is still broken so I can exit and restart sway without rebooting?_ - modify alacritty.yml to match former xdefaults - [reference](https://sunnnychan.github.io/cheatsheet/linux/config/alacritty.yml.html) - We can set the program and args to force it to load bash_profile and eliminate redundant gvm logic while fixing the other major issue I had with it? <<<<<<< HEAD alacritty does not load bash_profile, which means gvm never refreshes. I should move most of the non-static content into bashrc instead, which does get loaded every new shell. Perhaps hardcode gvm loading into the bashrc, and only keep raw static exports in bash_profile? --- Consider modifying this line to stop the sway-session.target: bindsym $mod+x exec swaymsg exit Like: bindsym $mod+x exec "systemctl --user import-environment; systemctl --user stop sway-session.target; swaymsg exit" --- When I eventually break down and buy elden ring, try these? PROTON_NO_FSYNC=1 WINE_FULLSCREEN_FSR=1 mangohud gamemoderun %command% May need other steps for ultrawide support? https://github.com/gurrgur/er-patcher ./er-patcher -r 144 -uavc -- env --- - install `aur` packages under actual user rather than temporary user - cmst (sway/wayland friendly connman management) - wev (_need to verify necessity?_) - investigate `poweralertd` and `batsignal` to setup low battery alerts with `mako` - _This is important for laptops_ - continue to refine `notes/sway.md` to account for the lack of obvious world-knowledge - Test SteamVR - Setup two new base stations for 4-station setup - Reconfigure steam vr utils software - Make sure all 4 base stations connect - Make sure all 4 base stations shutdown - Make sure audio transitions to and from - try Beat Saber - try No Man's Sky ## better temperature scripts Write a script to grab temperatures to replace the temperature module in waybar with custom commands... _This is because configuring temperatures is hardware dependent and the waybar has unintelligent defaults and anti-agnostic configuration!_ Example that matters? for amd cpu: `k10temp` followed by `tctl` for intel cpu: `coretemp` followed by `package id 0` for amd gpu `amdgpu` followed by `edge` for nvidia we need to use `nvidia-smi` and parse that instead, but that also means if `nvidia-smi` does not exist we have to back out! _For this we will want to have an `exec-if` that checks for results _There may be cases where there is no GPU, so when no sensors appear can we have the custom module omitted?_ For gpu temperatures: - `amdgpu`, followed by `edge` _This may not exist for laptops, may differ for nvidia, and may also differ depending on the driver._ Samples: "custom/cputemp": { "format": "{}°C", "interval": "3", "exec": "/usr/local/bin/temps cpu", "exec-if": "/usr/local/bin/temps cpu can" } "custom/gputemp": { "format": "GPU: {}°C", "interval": "3", "exec": "/usr/local/bin/temps gpu", "exec-if": "/usr/local/bin/temps gpu can" } ## scratchpad experiment I would like to be able to selectively deal with applications send to scratchpad. Getting an ordered list is a starting point. Probably replacing `scratchpad show` with an `exec`. New `/usr/local/bin/alacrittyq` with `$mod+tilde` toggle: #!/bin/bash # @todo: query swaymsg get_tree for alacrittyq # if not exists launch # if exists # if hidden in scratchpad show # if shown hide in scratchpad alacritty --class "alacrittyq" - investigate dedicated identity for an alacritty window to selectively target for scratchpad persistent terminal via mod+tilde ## workspace restoration It may be possible to write an IPC connected utility to save and restore workspaces _This tool would need to know when to save, and to intelligently restore only once when applications are first launched._ It would need to have a way to pull wayland equivalents for the content mentioned in this issue: - https://github.com/swaywm/sway/issues/1005 ## hidpi check Previously I stopped caring because hidpi is erratic and glitchy, but I'm curious if sway might be smarter than openbox... - test hidpi configuration - `output * scale 2` - also targeted output scaling for HDTV but not ultrawide - Verify hidpi behavior of applications is not poor: - firefox (many different websites?) - mpv - pcmanfm - steam - discord - _Remember to take some screenshots before and after to indicate visible changes?_ ## firefox automated configuration - investigate firefox configuration - [auto-configuration?](https://support.mozilla.org/en-US/kb/customizing-firefox-using-autoconfig) - add mimetypes to bypass godawful save dialog (eg. hanlders.json in `~/.mozilla`, but unique profile path?) - how to make it remember workspaces when restoring tabs (_probably not possible, so using tab manager addon_) ## data cleanup Utilize my old rig to cleanup and organize my data across my old HDD's - Uninstall everything that is taking up disk space - games - videos - music - data - disable transmission (_we should not be downloading more content on this box_) Since this machine is separate/independent I can happily deal with long running processes and filling the disks to the brim while going through my files... At the end I want to be able to eliminate a huge amount of data that I don't need anymore, and any redundant copies of data as well...