system recovery

This commit is contained in:
thomasabishop 2024-03-28 13:42:56 +00:00
parent ce268b29dd
commit f9c52d5fd3
14 changed files with 136 additions and 129 deletions

View file

@ -1,17 +1,3 @@
########################################################################################
AUTOGENERATED HYPR CONFIG.
PLEASE USE THE CONFIG PROVIDED IN THE GIT REPO /examples/hypr.conf AND EDIT IT,
OR EDIT THIS ONE ACCORDING TO THE WIKI INSTRUCTIONS.
########################################################################################
#
# Please note not all available settings / options are set here.
# For a full list, see the wiki
#
# autogenerated = 1 # remove this line to remove the warning
# See https://wiki.hyprland.org/Configuring/Monitors/ # See https://wiki.hyprland.org/Configuring/Monitors/
monitor=HDMI-A-1,preferred,0x1440,1 # Dell monitor=HDMI-A-1,preferred,0x1440,1 # Dell
monitor=DP-2,preferred,0x0,1 # AOC monitor=DP-2,preferred,0x0,1 # AOC
@ -21,10 +7,11 @@ monitor=eDP-1,preferred,3440x1648,1 # ThinkPad
# Execute your favorite apps at launch # Execute your favorite apps at launch
exec-once = hyprlock exec-once = hyprlock
exec-once = waybar & hyprpaper & hypridle & swaync exec-once = waybar & hyprpaper & swaync
exec-once=hyperctl setcursor Breeze 24 exec-once=hyperctl setcursor Breeze 24
gsettings set org.gnome.desktop.interface cursor-theme Breeze
gsettings set org.gnome.desktop.interface cursor-size 24 #gsettings set org.gnome.desktop.interface cursor-theme Breeze
#gsettings set org.gnome.desktop.interface cursor-size 24
# Source a file (multi-file configs) # Source a file (multi-file configs)
# source = ~/.config/hypr/myColors.conf # source = ~/.config/hypr/myColors.conf
@ -133,18 +120,14 @@ force_default_wallpaper = 0 # Set to 0 to disable the anime mascot wallpapers
disable_hyprland_logo = true disable_hyprland_logo = true
} }
# Example per-device config
# See https://wiki.hyprland.org/Configuring/Keywords/#executing for more
device:epic-mouse-v1 {
sensitivity = -0.5
}
# Example windowrule v1 # Example windowrule v1
# windowrule = float, ^(kitty)$ # windowrule = float, ^(kitty)$
# Example windowrule v2 # Example windowrule v2
# windowrulev2 = float,class:^(kitty)$,title:^(kitty)$ # windowrulev2 = float,class:^(kitty)$,title:^(kitty)$
# See https://wiki.hyprland.org/Configuring/Window-Rules/ for more # See https://wiki.hyprland.org/Configuring/Window-Rules/ for more
windowrulev2 = nomaximizerequest, class:.* # You'll probably like this. # windowrulev2 = nomaximizerequest, class:.* # You'll probably like this.
# See https://wiki.hyprland.org/Configuring/Keywords/ for more # See https://wiki.hyprland.org/Configuring/Keywords/ for more

View file

@ -1,9 +1,9 @@
background { background {
monitor = monitor =
path = /home/thomas/dotfiles/images/gruv_city.png path = /home/thomas/Pictures/login_splash_screen.png
color = rgba(40, 40, 40, 1.0) color = rgba(40, 40, 40, 1.0)
# all these options are taken from hyprland, see https://wiki.hyprland.org/Configuring/Variables/#blur for explanations # all these options are taken from hyprland, see https://wiki.hyprland.org/Configuring/Variables/#blur for explanations
blur_passes = 4 # 0 disables blurring blur_passes = 0 # 4 before disables blurring
blur_size = 2 blur_size = 2
noise = 0.0117 noise = 0.0117
contrast = 0.8916 contrast = 0.8916
@ -13,8 +13,8 @@ background {
} }
input-field { input-field {
monitor = monitor =
size = 200, 50 size = 200, 38
outline_thickness = 3 outline_thickness = 2
dots_size = 0.2 # Scale of input-field height, 0.2 - 0.8 dots_size = 0.2 # Scale of input-field height, 0.2 - 0.8
dots_spacing = 0.15 # Scale of dots' absolute size, 0.0 - 1.0 dots_spacing = 0.15 # Scale of dots' absolute size, 0.0 - 1.0
dots_center = true dots_center = true
@ -32,7 +32,7 @@ input-field {
} }
label { label {
monitor = monitor =
text = Enter password, Thomas text = Enter password
color = rgba(235,219,178, 0.8) color = rgba(235,219,178, 0.8)
font_size = 25 font_size = 25
font_family = Sys TT Bold font_family = Sys TT Bold

View file

@ -1,13 +1,9 @@
preload = ~/Pictures/wallpapers/shah-gruv-aoc.png preload = ~/Pictures/Wallpapers/plain_gruv_thinkpad.png
preload = ~/Pictures/wallpapers/shah-gruv-dell.png preload = ~/Pictures/Wallpapers/plain_gruv_aoc.png
preload = ~/Pictures/wallpapers/shah-gruv-thinkpad.png preload = ~/Pictures/Wallpapers/plain_gruv_dell.png
preload = ~/Pictures/wallpapers/gruv_city.jpg
preload = ~/Pictures/wallpapers/gruv_shroom.jpg
preload = ~/Pictures/wallpapers/gruv_woods.jpg
preload = ~/Pictures/grid-test.png
wallpaper = HDMI-A-1,~/Pictures/wallpapers/gruv_city.jpg wallpaper = HDMI-A-1,~/Pictures/Wallpapers/plain_gruv_dell.png
wallpaper = DP-2, ~/Pictures/wallpapers/gruv_city.jpg wallpaper = DP-2,~/Pictures/Wallpapers/plain_gruv_aoc.png
wallpaper = eDP-1,~/Pictures/wallpapers/gruv_city.jpg wallpaper = eDP-1,~/Pictures/Wallpapers/plain_gruv_thinkpad.png
splash = false splash = false

View file

@ -10,7 +10,7 @@ window_padding_width 5
remember_window_size no remember_window_size no
copy_on_select yes copy_on_select yes
background_opacity 0.9 background_opacity 1
confirm_os_window_close 0 confirm_os_window_close 0
# hide_window_decorations no # hide_window_decorations no
# wayland_titlebar_color background # wayland_titlebar_color background

View file

@ -28,6 +28,6 @@ require("thomas.plugins.nvim-tree")
require("thomas.plugins.rainbow-delimiters") require("thomas.plugins.rainbow-delimiters")
require("thomas.plugins.gitblame") require("thomas.plugins.gitblame")
require("thomas.plugins.zk") require("thomas.plugins.zk")
require("thomas.plugins.noice") -- require("thomas.plugins.noice")
require("thomas.plugins.obsidian-nvim") require("thomas.plugins.obsidian-nvim")
require("thomas.plugins.nvim-notify") -- require("thomas.plugins.nvim-notify")

View file

@ -25,6 +25,6 @@ opt.wrap = false
opt.formatoptions = "cro" opt.formatoptions = "cro"
opt.backspace = "indent,eol,start" opt.backspace = "indent,eol,start"
opt.conceallevel = 0 opt.conceallevel = 0
vim.notify = require("notify") -- vim.notify = require("notify")
-- vim.g.gruvbox_material_background = "hard" -- vim.g.gruvbox_material_background = "hard"
vim.g.gruvbox_material_enable_bold = 1 vim.g.gruvbox_material_enable_bold = 1

View file

@ -48,7 +48,7 @@ return packer.startup(function(use)
use("zk-org/zk-nvim") use("zk-org/zk-nvim")
use("ryanoasis/vim-devicons") use("ryanoasis/vim-devicons")
use("tpope/vim-fugitive") use("tpope/vim-fugitive")
use("rcarriga/nvim-notify") -- use("rcarriga/nvim-notify")
use("tpope/vim-markdown") use("tpope/vim-markdown")
use("f-person/git-blame.nvim") use("f-person/git-blame.nvim")
use("lewis6991/gitsigns.nvim") -- show line modifications on left hand side use("lewis6991/gitsigns.nvim") -- show line modifications on left hand side

View file

@ -13,7 +13,7 @@ set -g status-right 'tmux '
set -g window-status-format " #I:#W " set -g window-status-format " #I:#W "
set -g window-status-current-format " #I:#W " set -g window-status-current-format " #I:#W "
set -g status-style "bg=#98971a,fg=#282828" set -g status-style "bg=#a89984,fg=#282828"
# set -g status-bg colour8 # set -g status-bg colour8
# set -g status-fg colour7 # set -g status-fg colour7

View file

@ -13,7 +13,7 @@
# characters not in the chosen font will fail to render. # characters not in the chosen font will fail to render.
# #
# Otherwise, fonts are interpreted in Pango format. # Otherwise, fonts are interpreted in Pango format.
font = "/usr/share/fonts/Sys1.1/Sys1.1.ttf" font = ".local/share/fonts/Sys1.1.ttf"
# Point size of text. # Point size of text.
font-size = 14 font-size = 14
z z
@ -229,7 +229,7 @@ z
# Window offset from edge of screen. Only has an effect when anchored # Window offset from edge of screen. Only has an effect when anchored
# to the relevant edge. Can be pixels or a percentage. # to the relevant edge. Can be pixels or a percentage.
margin-top = 38 margin-top = 43
margin-bottom = 0 margin-bottom = 0
margin-left = 0 margin-left = 0
margin-right = 0 margin-right = 0

View file

@ -3,7 +3,8 @@
"margin": "0", "margin": "0",
"height": 25, "height": 25,
"spacing": 0, "spacing": 0,
"modules-left": [
"modules-left": [
"custom/os", "custom/os",
"hyprland/workspaces", "hyprland/workspaces",
"wlr/taskbar" "wlr/taskbar"
@ -29,11 +30,10 @@
"custom/notification", "custom/notification",
], ],
"wlr/taskbar": { "wlr/taskbar": {
"format": "{icon}", "format": "{icon}",
"icon-size": 20, "icon-size": 20,
"icon-theme": "Pop Extended", "icon-theme": "Pop",
"tooltip-format": "{title}", "tooltip-format": "{title}",
"on-click": "activate", "on-click": "activate",
"on-click-middle": "close", "on-click-middle": "close",
@ -90,19 +90,19 @@
"spacing": 10 "spacing": 10
}, },
"clock": { "clock": {
"format": "󱑎 {:%H:%M}", "format": "{:%H:%M}",
"format-alt": "󱑎 {:%d/%m/%Y}" "format-alt": "{:%d/%m/%Y}"
}, },
"cpu": { "cpu": {
"format": "󰛕 {usage}%", "format": "CPU: {usage}%",
"tooltip": false "tooltip": false
}, },
"memory": { "memory": {
"format": " {}%", "format": "Mem: {}%",
}, },
"temperature": { "temperature": {
"critical-threshold": 80, "critical-threshold": 80,
"format": "{icon} {temperatureC}°C", "format": "Temp: {temperatureC}°C",
"format-icons": [ "format-icons": [
"󱩅", "󱩅",
"󱩅", "󱩅",
@ -111,7 +111,7 @@
}, },
"backlight": { "backlight": {
"device": "acpi_video1", "device": "acpi_video1",
"format": "{icon} {percent}%", "format": "Dim: {percent}%",
"format-icons": [ "format-icons": [
"󰪞 ", "󰪞 ",
"󰪟 ", "󰪟 ",
@ -127,9 +127,9 @@
"warning": 30, "warning": 30,
"critical": 15 "critical": 15
}, },
"format": "{icon} {capacity}%", "format": "Bat: {capacity}%",
"format-charging": "{icon} {capacity}%", "format-charging": "Bat: {capacity}%",
"format-plugged": "{icon} {capacity}%", "format-plugged": "Bat: {capacity}%",
"format-icons": [ "format-icons": [
"󰁻", "󰁻",
"󰁼", "󰁼",
@ -142,12 +142,12 @@
"bat": "BAT2" "bat": "BAT2"
}, },
"network": { "network": {
"format-wifi": "󰖩 {essid}", "format-wifi": "Net: {essid}",
"format-ethernet": "{ipaddr}/{cidr}", "format-ethernet": "{ipaddr}/{cidr}",
"tooltip-format": "{ifname} via {gwaddr}", "tooltip-format": "{ifname} via {gwaddr}",
"format-linked": "{ifname} (No IP)", "format-linked": "{ifname} (No IP)",
"format-disconnected": "󰖪 ", "format-disconnected": "Net: none",
"format-alt": "󰖩 {essid} ({signalStrength}%)" "format-alt": "Sig: {essid} ({signalStrength}%)"
}, },
"pulseaudio": { "pulseaudio": {
"format": "{icon} {volume}%", "format": "{icon} {volume}%",
@ -172,15 +172,15 @@
}, },
"disk": { "disk": {
"interval": 30, "interval": 30,
"format": "󰟸 {percentage_used}%", "format": "Disk: {percentage_used}%",
"path": "/home" "path": "/home"
}, },
"bluetooth": { "bluetooth": {
"controller": "bluetoothctl", "controller": "bluetoothctl",
"format": " active", "format": "BT: active",
"format-connected": " connected", "format-connected": "BT: connected",
"format-alt": " {device_alias}", "format-alt": "BT: {device_alias}",
"format-connected-battery": " {device_battery_percentage}%", "format-connected-battery": "BT: {device_battery_percentage}%",
"tooltip-format": "{controller_alias}\t{controller_address}\n\n{num_connections} connected", "tooltip-format": "{controller_alias}\t{controller_address}\n\n{num_connections} connected",
"tooltip-format-connected": "{controller_alias}\t{controller_address}\n\n{num_connections} connected\n\n{device_enumerate}", "tooltip-format-connected": "{controller_alias}\t{controller_address}\n\n{num_connections} connected\n\n{device_enumerate}",
"tooltip-format-enumerate-connected": "{device_alias}\t{device_address}", "tooltip-format-enumerate-connected": "{device_alias}\t{device_address}",
@ -201,8 +201,8 @@
"format": "" "format": ""
}, },
"custom/wakatime": { "custom/wakatime": {
"exec": "source $HOME/dotfiles/.env && python3 $HOME/.config/waybar/resources/custom_modules/wakatime_waybar.py", "exec": "source $HOME/.env && python3 $HOME/.config/waybar/resources/custom_modules/wakatime.py",
"format": "󰲌 {}", "format": "Code: {}",
"return-type": "json", "return-type": "json",
"interval": 600 "interval": 600
}, },
@ -240,7 +240,7 @@
"escape": true "escape": true
}, },
"custom/diskBackup": { "custom/diskBackup": {
"format": "󰠘 {}", "format": "Bak: {}",
"exec": "df -h /media/backups | awk 'NR==2{print $5}'", "exec": "df -h /media/backups | awk 'NR==2{print $5}'",
"interval": 60 "interval": 60
}, },
@ -255,7 +255,5 @@
"custom/restart": { "custom/restart": {
"format": "󰑓", "format": "󰑓",
"on-click": "systemctl reboot" "on-click": "systemctl reboot"
}, }
} }

View file

@ -0,0 +1,54 @@
#! /usr/local/bin/python3
import subprocess
import json
def invoke_shell(proc):
try:
result = subprocess.run(
proc,
shell=True,
check=True,
stdout=subprocess.PIPE,
stderr=subprocess.PIPE,
text=True,
)
return result.stdout.strip()
except subprocess.CalledProcessError as e:
return e.stderr.strip()
def timer_active() -> bool:
status = invoke_shell("timew get dom.active")
if status == "1":
return True
else:
return False
def generate_tooltip():
tooltip = invoke_shell("timew summary :week")
return tooltip
def main():
output = {}
try:
if timer_active():
output["text"] = "󱫐"
output["class"] = "active"
else:
output["text"] = "󱫦"
output["class"] = "inactive"
except Exception as e:
output["text"] = "Error"
print(json.dumps(output))
if __name__ == "__main__":
main()
print(timer_active())

View file

@ -3,17 +3,14 @@
} }
window#waybar { window#waybar {
font-family: "Sys TT", "PragmataPro Mono Liga"; font-family: "Sys TT", "Font Awesome";
background-color: #458588; background-color: #458588;
border-bottom: 2px solid #282828; border-bottom: 2px solid #282828;
/* background-color: rgba(40, 40, 40, 1); */
font-size: 16px; font-size: 16px;
} }
button { button {
border-radius: 0; border-radius: 0;
/* box-shadow: inset 0 -3px transparent; */
border: none; border: none;
opacity: 1; opacity: 1;
} }
@ -36,9 +33,13 @@ tooltip label {
margin-right: 10px; margin-right: 10px;
} }
#custom-os {
padding: 0px 8px;
margin: 5px 3px 6px;
}
#clock, #clock,
#custom-wakatime, #custom-wakatime,
#custom-os,
#network, #network,
#bluetooth, #bluetooth,
#cpu, #cpu,
@ -48,7 +49,7 @@ tooltip label {
#disk, #disk,
#custom-diskBackup, #custom-diskBackup,
#battery { #battery {
padding: 0px 8px; padding: 2px 8px 0;
margin: 5px 3px 6px; margin: 5px 3px 6px;
} }
@ -58,7 +59,6 @@ tooltip label {
padding: 0px 4px; padding: 0px 4px;
} }
#workspaces button,
#custom-timewarrior, #custom-timewarrior,
#custom-notification, #custom-notification,
#custom-lock, #custom-lock,
@ -73,28 +73,21 @@ tooltip label {
} }
#taskbar button { #taskbar button {
color: #282828;
background-color: #a89984; background-color: #a89984;
border: 2px solid; /* Base border */ border: 2px solid; /* Base border */
border-color: #ebdbb2 #665c54 #665c54 #ebdbb2; border-color: #ebdbb2 #665c54 #665c54 #ebdbb2;
} }
#workspaces button { #workspaces button {
padding: 0; margin: 5px 0 6px;
padding-top: 3px; font-size: 18px;
/* padding-left: 2px; */ color: #ebdbb2;
/* padding-right: 2px; */ padding: 3px 5px 0;
/* margin-right: 5px; */
background-color: #665c54; background-color: #665c54;
border: 2px solid; /* Base border */ border: 2px solid; /* Base border */
border-color: #928374 #282828 #282828 #928374; border-color: #928374 #282828 #282828 #928374;
} }
/* #waybar .modules-left > *:first-child > * { */
/* margin-left: 25px; */
/* } */
#workspaces > *:last-child { #workspaces > *:last-child {
margin-right: 10px; margin-right: 10px;
} }
@ -110,10 +103,6 @@ tooltip label {
/* Colours */ /* Colours */
#taskbar button.active { #taskbar button.active {
/* background-color: #98971a; */
/* border: 2px solid; /1* Base border *1/ */
/* border-color: #b8bb27 #79740e #79740e #b8bb27; */
background-color: #ebdbb2; background-color: #ebdbb2;
border: 2px solid; /* Base border */ border: 2px solid; /* Base border */
border-color: #fbf1c7 #a89984 #a89984 #fbf1c7; border-color: #fbf1c7 #a89984 #a89984 #fbf1c7;
@ -185,9 +174,6 @@ tooltip label {
#workspaces button.active { #workspaces button.active {
color: #282828; color: #282828;
/* background-color: #98971a; */
/* border: 2px solid; /1* Base border *1/ */
/* border-color: #b8bb27 #79740e #79740e #b8bb27; */
background-color: #ebdbb2; background-color: #ebdbb2;
border: 2px solid; /* Base border */ border: 2px solid; /* Base border */
border-color: #fbf1c7 #a89984 #a89984 #fbf1c7; border-color: #fbf1c7 #a89984 #a89984 #fbf1c7;
@ -200,16 +186,6 @@ tooltip label {
border-color: #b8bb27 #79740e #79740e #b8bb27; border-color: #b8bb27 #79740e #79740e #b8bb27;
} }
#custom-notification,
#custom-lock,
#custom-shutdown,
#custom-restart,
#custom-notification,
#custom-timewarrior.inactive {
/* background-color: #282828; */
/* color: #ebdbb2; */
}
#custom-timewarrior { #custom-timewarrior {
margin-left: 10px; margin-left: 10px;
} }
@ -220,15 +196,20 @@ tooltip label {
margin-right: 10px; margin-right: 10px;
font-size: 18px; font-size: 18px;
padding-right: 14px; padding-right: 14px;
/* background-color: #458588; */
/* border: 2px solid; /1* Base border *1/ */
/* border-color: #83a598 #076678 #076678 #83a598; */
color: #282828; color: #282828;
background-color: #a89984; background-color: #a89984;
border: 2px solid; /* Base border */ border: 2px solid; /* Base border */
border-color: #ebdbb2 #665c54 #665c54 #ebdbb2; border-color: #ebdbb2 #665c54 #665c54 #ebdbb2;
} }
#custom-notification {
margin-left: 10px;
}
#custom-timewarrior {
margin-right: 10px;
}
#custom-timewarrior, #custom-timewarrior,
#custom-notification, #custom-notification,
#custom-lock, #custom-lock,
@ -240,10 +221,4 @@ tooltip label {
border: 2px solid; /* Base border */ border: 2px solid; /* Base border */
border-color: #928374 #282828 #282828 #928374; border-color: #928374 #282828 #282828 #928374;
color: #ebdbb2; color: #ebdbb2;
/* color: #282828; */
/* background-color: #a89984; */
/* border: 2px solid; /1* Base border *1/ */
/* border-color: #ebdbb2 #665c54 #665c54 #ebdbb2; */
/* border: 2px solid #665c54; */
} }

View file

@ -1,6 +1,6 @@
# -*- sh -*- vim:set ft=sh ai et sw=4 sts=4: # -*- sh -*- vim:set ft=sh ai et sw=4 sts=4:
# It might be bash like, but I can't have my co-workers knowing I use zsh # It might be bash like, but I can't have my co-workers knowing I use zsh
PROMPT='%{$fg_bold[green]%}%n@%m:%{$fg_bold[magenta]%}%2~$(git_prompt_info)%{$reset_color%}%(.) ' PROMPT='%{$fg_bold[green]%}%n@%m %{$fg_bold[magenta]%}%2~$(git_prompt_info)%{$reset_color%}%(.) '
ZSH_THEME_GIT_PROMPT_PREFIX="%{$fg[blue]%}" ZSH_THEME_GIT_PROMPT_PREFIX="%{$fg[blue]%} "
ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%}" ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%}"

View file

@ -15,6 +15,8 @@ alias gpt="chatgpt-cli"
# Set properties based on OS # Set properties based on OS
# ZSH_THEME="thomas"
ZSH_THEME="thomas" ZSH_THEME="thomas"
plugins=(git npm fzf-tab zsh-autosuggestions zsh-syntax-highlighting) plugins=(git npm fzf-tab zsh-autosuggestions zsh-syntax-highlighting)
@ -24,22 +26,21 @@ plugins=(git npm fzf-tab zsh-autosuggestions zsh-syntax-highlighting)
# User configuration # User configuration
export EDITOR='nvim' export EDITOR='nvim'
source ~/dotfiles/.env source ~/.env
source $ZSH/oh-my-zsh.sh source $ZSH/oh-my-zsh.sh
export NVM_DIR="$HOME/.nvm" export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" # This loads nvm bash_completion [ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" # This loads nvm bash_completion
export PYENV_ROOT="$HOME/.pyenv" #export PYENV_ROOT="$HOME/.pyenv"
export PATH="$PYENV_ROOT/bin:$PATH" #export PATH="$PYENV_ROOT/bin:$PATH"
eval "$(pyenv init --path)" #eval "$(pyenv init --path)"
export PATH="$HOME/.local/bin:$PATH" export PATH="$HOME/.local/bin:$PATH"
export OPENAI_API_KEY=${OPENAI_API_KEY} # export OPENAI_API_KEY=${OPENAI_API_KEY}
# eval "$(starship init zsh)"
export PATH=$PATH:/home/thomas/.spicetify export PATH=$PATH:/home/thomas/.spicetify