add gh-cli
This commit is contained in:
parent
ab917700ee
commit
5b46a0b217
30 changed files with 680 additions and 356 deletions
29
home/config/gh/config.yaml
Normal file
29
home/config/gh/config.yaml
Normal file
|
|
@ -0,0 +1,29 @@
|
|||
# What protocol to use when performing git operations. Supported values: ssh, https
|
||||
git_protocol: ssh
|
||||
# What editor gh should run when creating issues, pull requests, etc. If blank, will refer to environment.
|
||||
editor: nvim
|
||||
# When to interactively prompt. This is a global config that cannot be overridden by hostname. Supported values: enabled, disabled
|
||||
prompt: enabled
|
||||
# A pager program to send command output to, e.g. "less". Set the value to "cat" to disable the pager.
|
||||
pager: bat
|
||||
# Aliases allow you to create nicknames for gh commands
|
||||
aliases:
|
||||
co: pr checkout
|
||||
diff: pr diff
|
||||
merge: pr merge
|
||||
close: issue close
|
||||
add: issue create --title
|
||||
todo: issue create -a @me --title
|
||||
mine: issue list -a @me
|
||||
e: issue edit
|
||||
label: issue edit --add-label
|
||||
claim: issue edit --add-assignee @me
|
||||
rmlabel: issue edit --remove-label
|
||||
5c: issue edit --add-project "5♠️"
|
||||
9c: issue edit --add-project "9♠️"
|
||||
17c: issue edit --add-project "17♠️"
|
||||
# The path to a unix socket through which send HTTP connections. If blank, HTTP traffic will be handled by net/http.DefaultTransport.
|
||||
http_unix_socket:
|
||||
# What web browser gh should use when opening URLs. If blank, will refer to environment.
|
||||
browser:
|
||||
version: "1"
|
||||
|
|
@ -1,7 +1,11 @@
|
|||
$scripts = ~/.config/scripts/
|
||||
|
||||
exec-once = swaync -s ~/.config/swaync/style.css -c ~/.config/swaync/config.json
|
||||
exec-once = dbus-update-activation-environment --systemd --all
|
||||
exec-once = systemctl --user import-environment WAYLAND_DISPLAY XDG_CURRENT_DESKTOP
|
||||
exec-once = /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1
|
||||
exec-once = waybar & hyprpaper
|
||||
exec-once = waybar -c ~/.config/waybar/config -s ~/.config/waybar/style.css
|
||||
exec-once = hyprpaper
|
||||
exec-once = swayidle -w
|
||||
exec-once = nwg-look -a
|
||||
exec-once = [silent] fcitx5 -d -r &
|
||||
|
|
|
|||
|
|
@ -1,3 +1,4 @@
|
|||
preload = ~/.config/wallpapers/wall.png
|
||||
# wallpaper = HDMI-A-1, ~/.config/wallpapers/wall.png
|
||||
wallpaper = , ~/.config/wallpapers/wall.png
|
||||
splash = false
|
||||
ipc = on
|
||||
|
|
|
|||
|
|
@ -12,5 +12,9 @@ input {
|
|||
natural_scroll = no
|
||||
}
|
||||
|
||||
sensitivity = 0.7 # -1.0 - 1.0, 0 means no modification.
|
||||
sensitivity = -0.1 # -1.0 - 1.0, 0 means no modification.
|
||||
}
|
||||
|
||||
cursor {
|
||||
no_hardware_cursors = true
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,3 +1,3 @@
|
|||
monitor=desc:ASUSTek COMPUTER INC ASUS VG32VQ1B 0x00002271,2560x1440@164.55, 0x0, 1
|
||||
monitor=desc:Acer Technologies XV272U V3 7422007E54222, 2560x1440@143.91, -1440x-560, 1, transform, 1
|
||||
monitor=desc:ASUSTek COMPUTER INC ASUS VG32VQ1B 0x00002271,2560x1440@165, 0x0, 1
|
||||
monitor=desc:Acer Technologies XV272U V3 7422007E54222, 2560x1440@144, -1152x-448, 1.25, transform, 1
|
||||
|
||||
|
|
|
|||
|
|
@ -17,8 +17,8 @@ decoration {
|
|||
new_optimizations = true
|
||||
xray = false
|
||||
}
|
||||
active_opacity = 0.8
|
||||
inactive_opacity = 0.8
|
||||
active_opacity = 0.95
|
||||
inactive_opacity = 0.95
|
||||
fullscreen_opacity = 1.0
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -28,7 +28,13 @@ windowrulev2 = float, class:^(steam)$,title:^(Friends List)$
|
|||
|
||||
|
||||
# Workspace assign
|
||||
|
||||
windowrulev2 = workspace: 1, class:^(kitty)$
|
||||
windowrulev2 = workspace: 1, class:^(firefox)$
|
||||
windowrulev2 = workspace: 5, class:^(steam)$
|
||||
|
||||
layerrule = blur, waybar
|
||||
layerrule = blur, logout_dialog
|
||||
layerrule = blur, swaync-control-center
|
||||
layerrule = blur, swaync-notification-window
|
||||
layerrule = ignorezero, swaync-control-center
|
||||
layerrule = ignorezero, swaync-notification-window
|
||||
layerrule = ignorealpha 0.1, swaync-control-center
|
||||
layerrule = ignorealpha 0.1, swaync-notification-window
|
||||
|
|
|
|||
8
home/config/scripts/lockscreen.sh
Executable file
8
home/config/scripts/lockscreen.sh
Executable file
|
|
@ -0,0 +1,8 @@
|
|||
#!/bin/bash
|
||||
|
||||
#Script for lockscreen
|
||||
|
||||
sleep 2
|
||||
powerprofilesctl set power-saver
|
||||
hyprlock -c ~/.config/dotfiles/hyprland/hyprlock/hyprlock.conf
|
||||
powerprofilesctl set performance
|
||||
41
home/config/scripts/lofi.sh
Executable file
41
home/config/scripts/lofi.sh
Executable file
|
|
@ -0,0 +1,41 @@
|
|||
#!/bin/bash
|
||||
|
||||
#Taken from jakoolit's hyprland dots
|
||||
|
||||
iDIR="$HOME/.config/swaync/icons"
|
||||
|
||||
declare -A menu_options=(
|
||||
["Lofi Girl ☕️🎶"]="https://play.streamafrica.net/lofiradio"
|
||||
["White Noise 📖🎶"]="https://www.youtube.com/watch?v=nMfPqeZjc2c&t=7040s&pp=ygULd2hpdGUgbm9pc2U%3D"
|
||||
["Easy Rock 96.3 FM 📻🎶"]="https://radio-stations-philippines.com/easy-rock"
|
||||
["Wish 107.5 FM 📻🎶"]="https://radio-stations-philippines.com/dwnu-1075-wish"
|
||||
["Wish 107.5 YT Pinoy HipHop 🎻🎶"]="https://youtube.com/playlist?list=PLkrzfEDjeYJnmgMYwCKid4XIFqUKBVWEs&si=vahW_noh4UDJ5d37"
|
||||
["Wish 107.5 YT Wishclusives ☕️🎶"]="https://youtube.com/playlist?list=PLkrzfEDjeYJn5B22H9HOWP3Kxxs-DkPSM&si=d_Ld2OKhGvpH48WO"
|
||||
["Chillhop ☕️🎶"]="http://stream.zeno.fm/fyn8eh3h5f8uv"
|
||||
["SmoothChill ☕️🎶"]="https://media-ssl.musicradio.com/SmoothChill"
|
||||
["Relaxing Music ☕️🎶"]="https://youtube.com/playlist?list=PLMIbmfP_9vb8BCxRoraJpoo4q1yMFg4CE"
|
||||
)
|
||||
|
||||
notification() {
|
||||
notify-send -u normal "Playing now: $@"
|
||||
}
|
||||
|
||||
main() {
|
||||
choice=$(printf "%s\n" "${!menu_options[@]}" | rofi -i -dmenu -config ~/.config/dotfiles/rofi/config.rasi -p "")
|
||||
|
||||
if [ -z "$choice" ]; then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
link="${menu_options[$choice]}"
|
||||
|
||||
notification "$choice"
|
||||
|
||||
if [[ $link == *playlist* || $link == *watch* ]]; then
|
||||
mpv --shuffle --vid=no --volume=50 "$link"
|
||||
else
|
||||
mpv --volume=50 "$link"
|
||||
fi
|
||||
}
|
||||
|
||||
pkill mpv && notify-send -u low "Online Music stopped" || main
|
||||
54
home/config/scripts/scrcpy.sh
Executable file
54
home/config/scripts/scrcpy.sh
Executable file
|
|
@ -0,0 +1,54 @@
|
|||
#!/usr/bin/bash
|
||||
|
||||
#Script to run SCRCPY
|
||||
|
||||
if pgrep -x "scrcpy" > /dev/null
|
||||
then
|
||||
pkill -x scrcpy
|
||||
exit
|
||||
fi
|
||||
|
||||
# Get connected devices
|
||||
devices=$(adb devices | awk 'NR>1 && $2=="device" {print $1}')
|
||||
device_count=$(echo "$devices" | wc -l)
|
||||
|
||||
# If no devices are found, exit the script
|
||||
if [ "$device_count" -eq 0 ]; then
|
||||
notify-send "No devices connected."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# If multiple devices are connected, prompt to select one
|
||||
if [ "$device_count" -gt 1 ]; then
|
||||
selected_device=$(echo "$devices" | rofi -dmenu -config ~/.config/dotfiles/rofi/config.rasi -p "Select Device: ")
|
||||
else
|
||||
selected_device=$(echo "$devices")
|
||||
fi
|
||||
|
||||
# If no device was selected, exit the script
|
||||
if [ -z "$selected_device" ]; then
|
||||
echo "No device selected."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Options for SCRCPY modes
|
||||
options="Video\nNo Video\nVideo & Audio"
|
||||
|
||||
# Prompt to select the SCRCPY mode
|
||||
selected_option=$(echo -e "$options" | rofi -dmenu -config ~/.config/dotfiles/rofi/config.rasi -p "Select SCRCPY mode: ")
|
||||
|
||||
# Run scrcpy with the selected mode and device
|
||||
case "$selected_option" in
|
||||
"Video")
|
||||
scrcpy --serial "$selected_device" --max-size=1024 --video-codec=h265 --video-bit-rate=6M --audio-bit-rate=128K --max-fps=30 --no-audio
|
||||
;;
|
||||
"No Video")
|
||||
scrcpy --serial "$selected_device" --no-window
|
||||
;;
|
||||
"Video & Audio")
|
||||
scrcpy --serial "$selected_device" --max-size=1024 --video-codec=h265 --video-bit-rate=6M --audio-bit-rate=128K --max-fps=30
|
||||
;;
|
||||
*)
|
||||
echo "Invalid selection"
|
||||
;;
|
||||
esac
|
||||
32
home/config/scripts/waybarCava.sh
Executable file
32
home/config/scripts/waybarCava.sh
Executable file
|
|
@ -0,0 +1,32 @@
|
|||
#!/bin/bash
|
||||
|
||||
#Taken from JaKoolit's dotfiles
|
||||
|
||||
bar="▁▂▃▄▅▆▇█"
|
||||
dict="s/;//g"
|
||||
|
||||
bar_length=${#bar}
|
||||
|
||||
for ((i = 0; i < bar_length; i++)); do
|
||||
dict+=";s/$i/${bar:$i:1}/g"
|
||||
done
|
||||
|
||||
config_file="/tmp/bar_cava_config"
|
||||
cat >"$config_file" <<EOF
|
||||
[general]
|
||||
bars = 10
|
||||
|
||||
[input]
|
||||
method = pulse
|
||||
source = auto
|
||||
|
||||
[output]
|
||||
method = raw
|
||||
raw_target = /dev/stdout
|
||||
data_format = ascii
|
||||
ascii_max_range = 7
|
||||
EOF
|
||||
|
||||
pkill -f "cava -p $config_file"
|
||||
|
||||
cava -p "$config_file" | sed -u "$dict"
|
||||
9
home/config/scripts/waybarRestart.sh
Executable file
9
home/config/scripts/waybarRestart.sh
Executable file
|
|
@ -0,0 +1,9 @@
|
|||
#!/usr/bin/bash
|
||||
|
||||
#Restart Waybar and swaync
|
||||
|
||||
killall waybar
|
||||
killall swaync
|
||||
waybar -c ~/.config/dotfiles/waybar/config -s ~/.config/dotfiles/waybar/style.css &
|
||||
swaync -s ~/.config/dotfiles/swaync/style.css -c ~/.config/dotfiles/swaync/config.json &
|
||||
notify-send --app-name=HOME -i ~/.config/dotfiles/fastfetch/moon.png Hello
|
||||
50
home/config/swaync/config.json
Normal file
50
home/config/swaync/config.json
Normal file
|
|
@ -0,0 +1,50 @@
|
|||
{
|
||||
|
||||
"$schema": "/etc/xdg/swaync/configSchema.json",
|
||||
"positionX": "right",
|
||||
"positionY": "top",
|
||||
"layer": "overlay",
|
||||
"control-center-margin-top": 20,
|
||||
"control-center-margin-bottom": 20,
|
||||
"control-center-margin-right": 20,
|
||||
"control-center-margin-left": 20,
|
||||
"notification-icon-size": 64,
|
||||
"notification-body-image-height": 100,
|
||||
"notification-body-image-width": 200,
|
||||
"timeout": 3,
|
||||
"timeout-low": 2,
|
||||
"timeout-critical": 0,
|
||||
"fit-to-screen": false,
|
||||
"control-center-width": 500,
|
||||
"control-center-height": 900,
|
||||
"notification-window-width": 490,
|
||||
"keyboard-shortcuts": true,
|
||||
"image-visibility": "when-available",
|
||||
"transition-time": 200,
|
||||
"hide-on-clear": true,
|
||||
"hide-on-action": true,
|
||||
"script-fail-notify": true,
|
||||
"widgets": [
|
||||
"title",
|
||||
"notifications",
|
||||
"mpris"
|
||||
],
|
||||
"widget-config": {
|
||||
"title": {
|
||||
"text": "Notification Center",
|
||||
"clear-all-button": true,
|
||||
"button-text": " Clear All"
|
||||
},
|
||||
"dnd": {
|
||||
"text": "Leave me alone!!"
|
||||
},
|
||||
"label": {
|
||||
"max-lines": 1,
|
||||
"text": "Notification Center"
|
||||
},
|
||||
"mpris": {
|
||||
"image-size": 96,
|
||||
"image-radius": 7
|
||||
}
|
||||
}
|
||||
}
|
||||
145
home/config/swaync/style.css
Normal file
145
home/config/swaync/style.css
Normal file
|
|
@ -0,0 +1,145 @@
|
|||
@define-color bgc rgba(0, 0, 0, 0.1);
|
||||
@define-color borderc #ebdbb2;
|
||||
@define-color textc #282828;
|
||||
|
||||
* {
|
||||
font-family: JetBrainsMonoNerdFontMono;
|
||||
font-weight: bold;
|
||||
font-size: 15px;
|
||||
border-width: 3px;
|
||||
border-color: #ebdbb2
|
||||
}
|
||||
|
||||
.control-center .notification-row:focus,
|
||||
.control-center .notification-row:hover {
|
||||
opacity: 1;
|
||||
background: @bgc
|
||||
}
|
||||
|
||||
.notification-row {
|
||||
outline: none;
|
||||
margin: 20px;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
.notification {
|
||||
background: @textc;
|
||||
margin: 0px;
|
||||
border-radius: 0px;
|
||||
border-width: 3px;
|
||||
border-color: #ebdbb2;
|
||||
}
|
||||
|
||||
.notification-content {
|
||||
background: @textc;
|
||||
padding: 7px;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.close-button {
|
||||
background: @textc;
|
||||
color: @borderc;
|
||||
text-shadow: none;
|
||||
padding: 0;
|
||||
border-radius: 20px;
|
||||
margin-top: 9px;
|
||||
margin-right: 5px;
|
||||
}
|
||||
|
||||
.close-button:hover {
|
||||
box-shadow: none;
|
||||
background: @borderc;
|
||||
color: @textc;
|
||||
transition: all .15s ease-in-out;
|
||||
border: none
|
||||
}
|
||||
|
||||
.notification-action {
|
||||
color: @bgc;
|
||||
background: @textc;
|
||||
}
|
||||
|
||||
.summary {
|
||||
padding-top: 7px;
|
||||
font-size: 13px;
|
||||
color: @borderc;
|
||||
}
|
||||
|
||||
.time {
|
||||
font-size: 11px;
|
||||
color: @borderc;
|
||||
margin-right: 40px
|
||||
}
|
||||
|
||||
.body {
|
||||
font-size: 12px;
|
||||
color: @borderc;
|
||||
}
|
||||
|
||||
.control-center {
|
||||
background-color: @bgc;
|
||||
border-radius: 20px;
|
||||
}
|
||||
|
||||
.control-center-list {
|
||||
background: transparent;
|
||||
}
|
||||
|
||||
.control-center-list-placeholder {
|
||||
opacity: .5
|
||||
}
|
||||
|
||||
.floating-notifications {
|
||||
background: transparent
|
||||
}
|
||||
|
||||
.blank-window {
|
||||
background: alpha(black, 0.1)
|
||||
}
|
||||
|
||||
.widget-title {
|
||||
color: @borderc;
|
||||
padding: 10px 10px;
|
||||
margin: 10px 10px 5px 10px;
|
||||
font-size: 1.5rem;
|
||||
}
|
||||
|
||||
.widget-title>button {
|
||||
font-size: 1rem;
|
||||
color: @borderc;
|
||||
padding: 10px;
|
||||
text-shadow: none;
|
||||
background: @bgc;
|
||||
box-shadow: none;
|
||||
border-radius: 5px;
|
||||
}
|
||||
|
||||
.widget-title>button:hover {
|
||||
background: @borderc;
|
||||
color: #282828;
|
||||
}
|
||||
|
||||
.widget-label {
|
||||
margin: 10px 10px 10px 10px;
|
||||
}
|
||||
|
||||
.widget-label>label {
|
||||
font-size: 1rem;
|
||||
color: @textc;
|
||||
}
|
||||
|
||||
.widget-mpris {
|
||||
color: @borderc;
|
||||
padding: 5px 5px 5px 5px;
|
||||
margin: 10px;
|
||||
border-radius: 20px;
|
||||
}
|
||||
|
||||
.widget-mpris>box>button {
|
||||
border-radius: 20px;
|
||||
}
|
||||
|
||||
.widget-mpris-player {
|
||||
padding: 5px 5px;
|
||||
margin: 10px
|
||||
}
|
||||
1
home/config/uwsm/env-hyprland
Normal file
1
home/config/uwsm/env-hyprland
Normal file
|
|
@ -0,0 +1 @@
|
|||
export AQ_DRM_DEVICES="/dev/dri/card1;/dev/dri/card2"
|
||||
BIN
home/config/wallpapers/wall.png
Executable file → Normal file
BIN
home/config/wallpapers/wall.png
Executable file → Normal file
Binary file not shown.
|
Before Width: | Height: | Size: 239 KiB After Width: | Height: | Size: 4.3 MiB |
34
home/config/waybar/config
Normal file
34
home/config/waybar/config
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
{
|
||||
"include": "~/.config/waybar/modules",
|
||||
"layer": "top",
|
||||
"exclusive": true,
|
||||
"passthrough": false,
|
||||
"position": "top",
|
||||
"spacing": 3,
|
||||
"fixed-center": true,
|
||||
"ipc": true,
|
||||
"margin-top": 0,
|
||||
"margin-left": 0,
|
||||
"margin-right": 0,
|
||||
"margin-bottom": 0,
|
||||
|
||||
"modules-left": [
|
||||
"hyprland/workspaces",
|
||||
"clock",
|
||||
"custom/cava",
|
||||
"mpris"
|
||||
],
|
||||
|
||||
"modules-center": [
|
||||
"hyprland/window"
|
||||
],
|
||||
|
||||
"modules-right": [
|
||||
"wlr/taskbar",
|
||||
"cpu",
|
||||
"temperature",
|
||||
"memory",
|
||||
"custom/swaync",
|
||||
"pulseaudio"
|
||||
]
|
||||
}
|
||||
|
|
@ -1,82 +0,0 @@
|
|||
{
|
||||
"layer": "top",
|
||||
"position": "top",
|
||||
"mod": "dock",
|
||||
"exclusive": true,
|
||||
"passthrough": false,
|
||||
"gtk-layer-shell": true,
|
||||
"height": 0,
|
||||
"modules-left": [
|
||||
"hyprland/workspaces"
|
||||
],
|
||||
"modules-center": ["hyprland/window"],
|
||||
"modules-right": [
|
||||
"tray",
|
||||
"custom/updates",
|
||||
"hyprland/language",
|
||||
"pulseaudio",
|
||||
"pulseaudio#microphone",
|
||||
"clock",
|
||||
"custom/weather"
|
||||
],
|
||||
|
||||
"hyprland/window": {
|
||||
"format": "{}"
|
||||
},
|
||||
"hyprland/workspaces": {
|
||||
"disable-scroll": true,
|
||||
"all-outputs": true,
|
||||
"on-click": "activate",
|
||||
"persistent_workspaces": {
|
||||
"1": []
|
||||
}
|
||||
},
|
||||
"hyprland/language": {
|
||||
"format": "{}",
|
||||
"format-en": "US",
|
||||
"format-ru": "RU",
|
||||
"format-ka": "GE"
|
||||
},
|
||||
"custom/weather" : {
|
||||
"tooltip" : true,
|
||||
"format" : "{}",
|
||||
"interval" : 30,
|
||||
"exec" : "~/.config/waybar/scripts/waybar-wttr.py",
|
||||
"return-type" : "json"
|
||||
},
|
||||
"tray": {
|
||||
"icon-size": 16,
|
||||
"spacing": 10
|
||||
},
|
||||
"clock": {
|
||||
"format": "{: %R %d/%m}",
|
||||
"tooltip-format": "<big>{:%Y %B}</big>\n<tt><small>{calendar}</small></tt>"
|
||||
},
|
||||
"pulseaudio": {
|
||||
"format": "{icon} {volume}%",
|
||||
"tooltip": false,
|
||||
"format-muted": " Muted",
|
||||
"on-click": "pamixer -t",
|
||||
"on-scroll-up": "pamixer -i 5",
|
||||
"on-scroll-down": "pamixer -d 5",
|
||||
"scroll-step": 5,
|
||||
"format-icons": {
|
||||
"headphone": "",
|
||||
"hands-free": "",
|
||||
"headset": "",
|
||||
"phone": "",
|
||||
"portable": "",
|
||||
"car": "",
|
||||
"default": ["", "", ""]
|
||||
}
|
||||
},
|
||||
"pulseaudio#microphone": {
|
||||
"format": "{format_source}",
|
||||
"format-source": "🎙{volume}%",
|
||||
"format-source-muted": "🎙Muted",
|
||||
"on-click": "pamixer --default-source -t",
|
||||
"on-scroll-up": "pamixer --default-source -i 5",
|
||||
"on-scroll-down": "pamixer --default-source -d 5",
|
||||
"scroll-step": 5
|
||||
}
|
||||
}
|
||||
168
home/config/waybar/modules
Normal file
168
home/config/waybar/modules
Normal file
|
|
@ -0,0 +1,168 @@
|
|||
{
|
||||
"hyprland/workspaces": {
|
||||
"active-only": false,
|
||||
"all-outputs": true,
|
||||
"format": "{icon}",
|
||||
"show-special": false,
|
||||
"on-click": "activate",
|
||||
"on-scroll-up": "hyprctl dispatch workspace e+1",
|
||||
"on-scroll-down": "hyprctl dispatch workspace e-1",
|
||||
"persistent-workspaces": {
|
||||
"1": [],
|
||||
"2": [],
|
||||
"3": [],
|
||||
"4": [],
|
||||
},
|
||||
"format-icons": {
|
||||
"active": "👁️🗨️",
|
||||
"default": "🗨️",
|
||||
},
|
||||
},
|
||||
|
||||
"clock": {
|
||||
"interval": 1,
|
||||
"format": " 🕑 {:%H:%M} ",
|
||||
"format-alt": " 🕑 {:%H:%M 🗓️ %Y, %d %B, %A} ",
|
||||
"tooltip-format": "<tt><small>{calendar}</small></tt>",
|
||||
"calendar": {
|
||||
"mode" : "year",
|
||||
"mode-mon-col" : 3,
|
||||
"weeks-pos" : "right",
|
||||
"on-scroll" : 1,
|
||||
"format": {
|
||||
"days": "<span color='#ebdbb2'><b>{}</b></span>",
|
||||
"weeks": "<span color='#99ffdd'><b>W{}</b></span>",
|
||||
"weekdays": "<span color='#ebdbb2'><b>{}</b></span>",
|
||||
"today": "<span color='#ff6699'><b><u>{}</u></b></span>"
|
||||
}
|
||||
}
|
||||
},
|
||||
"actions": {
|
||||
"on-click-right": "mode",
|
||||
"on-click-forward": "tz_up",
|
||||
"on-click-backward": "tz_down",
|
||||
"on-scroll-up": "shift_up",
|
||||
"on-scroll-down": "shift_down"
|
||||
},
|
||||
|
||||
"cpu": {
|
||||
"format": " {usage}% 🧠 ",
|
||||
"interval": 1,
|
||||
"on-click-right": "gnome-system-monitor"
|
||||
},
|
||||
|
||||
"hyprland/window": {
|
||||
"format": " {} ",
|
||||
"max-length": 60,
|
||||
"separate-outputs": true,
|
||||
"offscreen-css" : true,
|
||||
"offscreen-css-text": "(inactive)",
|
||||
"rewrite": {
|
||||
"(.*) — Mozilla Firefox": " $1",
|
||||
"(.*) - fish": "> [$1]",
|
||||
"(.*) - zsh": "> [$1]",
|
||||
"(.*) - kitty": "> [$1]"
|
||||
}
|
||||
},
|
||||
|
||||
"memory": {
|
||||
"interval": 10,
|
||||
"format": " {percentage}% 📊 ",
|
||||
"format-alt-click": "click",
|
||||
"tooltip": true,
|
||||
"tooltip-format": "{used:0.1f}GB/{total:0.1f}G",
|
||||
"on-click-right": "kitty -c ~/.config/kitty/kitty.conf --title btop sh -c 'btop'"
|
||||
},
|
||||
|
||||
"mpris": {
|
||||
"interval": 10,
|
||||
"format": " {title} ",
|
||||
"format-paused": " {title} {status_icon} ",
|
||||
"on-click": "playerctl play-pause",
|
||||
"on-click-right": "playerctl next",
|
||||
"scroll-step": 5.0,
|
||||
"smooth-scrolling-threshold": 1,
|
||||
"status-icons": {
|
||||
"paused": "",
|
||||
"playing": "🎶",
|
||||
"stopped": ""
|
||||
},
|
||||
"max-length": 30
|
||||
},
|
||||
|
||||
|
||||
"pulseaudio": {
|
||||
"format": " {volume}% {icon} ",
|
||||
"format-bluetooth": " {volume}% {icon} ",
|
||||
"format-muted": "🔇",
|
||||
"format-icons": {
|
||||
"headphone": "🔈",
|
||||
"hands-free": "🔈",
|
||||
"headset": "🔈",
|
||||
"phone": "🔈",
|
||||
"portable": "🔈",
|
||||
"car": "🔈",
|
||||
"default": ["🔈", "🔈", "🔈", "🔈"],
|
||||
"ignored-sinks": ["Easy Effects Sink"]
|
||||
},
|
||||
"scroll-step": 5.0,
|
||||
"on-click": "pavucontrol -t 3",
|
||||
"tooltip-format": "{icon} {desc} | {volume}%",
|
||||
"smooth-scrolling-threshold": 1
|
||||
},
|
||||
|
||||
"temperature": {
|
||||
"interval": 10,
|
||||
"tooltip": true,
|
||||
"hwmon-path": ["/sys/class/hwmon/hwmon1/temp1_input", "/sys/class/thermal/thermal_zone0/temp"],
|
||||
"critical-threshold": 82,
|
||||
"format-critical": "{temperatureC}°C {icon}",
|
||||
"format": " {temperatureC}°C {icon} ",
|
||||
"format-icons": ["🔥"],
|
||||
"on-click-right": "kitty -c ~/.config/kitty/kitty.conf --title nvtop sh -c 'nvtop'"
|
||||
},
|
||||
|
||||
"custom/swaync": {
|
||||
"tooltip":true,
|
||||
"format": " {} {icon} ",
|
||||
"format-icons": {
|
||||
"notification": "🔔<span foreground='red'><sup></sup></span>",
|
||||
"none": "🔔",
|
||||
"dnd-notification": "🔕<span foreground='red'><sup></sup></span>",
|
||||
"dnd-none": "🔕",
|
||||
"inhibited-notification": "🔔<span foreground='red'><sup></sup></span>",
|
||||
"inhibited-none": "🔔",
|
||||
"dnd-inhibited-notification": "🔕<span foreground='red'><sup></sup></span>",
|
||||
"dnd-inhibited-none": "🔕"
|
||||
},
|
||||
"return-type": "json",
|
||||
"exec-if": "which swaync-client",
|
||||
"exec": "swaync-client -swb",
|
||||
"on-click": "sleep 0.1 && swaync-client -t -sw",
|
||||
"on-click-right": "swaync-client -d -sw",
|
||||
"escape": true
|
||||
},
|
||||
|
||||
"wlr/taskbar": {
|
||||
"format": " {icon} ",
|
||||
"icon-size": 20,
|
||||
"all-outputs": false,
|
||||
"tooltip-format": "{title}",
|
||||
"on-click": "activate",
|
||||
"on-click-middle": "close",
|
||||
"ignore-list": [
|
||||
"rofi",
|
||||
"firefox",
|
||||
"kitty",
|
||||
"jetbrains-studio",
|
||||
"Brave-browser",
|
||||
"Spotify"
|
||||
]
|
||||
},
|
||||
|
||||
"custom/cava": {
|
||||
"exec": "~/.config/scripts/waybarCava.sh",
|
||||
"format": "{}",
|
||||
"on-click": "kitty -c ~/.config/kitty/kitty.conf nvim -c cd ~/.config/"
|
||||
}
|
||||
}
|
||||
|
|
@ -1,133 +0,0 @@
|
|||
#!/run/current-system/sw/bin/python
|
||||
|
||||
import json
|
||||
from datetime import datetime
|
||||
|
||||
import requests
|
||||
|
||||
WEATHER_CODES = {
|
||||
"113": "☀️ ",
|
||||
"116": "⛅ ",
|
||||
"119": "☁️ ",
|
||||
"122": "☁️ ",
|
||||
"143": "☁️ ",
|
||||
"176": "🌧️",
|
||||
"179": "🌧️",
|
||||
"182": "🌧️",
|
||||
"185": "🌧️",
|
||||
"200": "⛈️ ",
|
||||
"227": "🌨️",
|
||||
"230": "🌨️",
|
||||
"248": "☁️ ",
|
||||
"260": "☁️ ",
|
||||
"263": "🌧️",
|
||||
"266": "🌧️",
|
||||
"281": "🌧️",
|
||||
"284": "🌧️",
|
||||
"293": "🌧️",
|
||||
"296": "🌧️",
|
||||
"299": "🌧️",
|
||||
"302": "🌧️",
|
||||
"305": "🌧️",
|
||||
"308": "🌧️",
|
||||
"311": "🌧️",
|
||||
"314": "🌧️",
|
||||
"317": "🌧️",
|
||||
"320": "🌨️",
|
||||
"323": "🌨️",
|
||||
"326": "🌨️",
|
||||
"329": "❄️ ",
|
||||
"332": "❄️ ",
|
||||
"335": "❄️ ",
|
||||
"338": "❄️ ",
|
||||
"350": "🌧️",
|
||||
"353": "🌧️",
|
||||
"356": "🌧️",
|
||||
"359": "🌧️",
|
||||
"362": "🌧️",
|
||||
"365": "🌧️",
|
||||
"368": "🌧️",
|
||||
"371": "❄️",
|
||||
"374": "🌨️",
|
||||
"377": "🌨️",
|
||||
"386": "🌨️",
|
||||
"389": "🌨️",
|
||||
"392": "🌧️",
|
||||
"395": "❄️ ",
|
||||
}
|
||||
|
||||
data = {}
|
||||
|
||||
|
||||
weather = requests.get("https://wttr.in/?format=j1").json()
|
||||
|
||||
|
||||
def format_time(time):
|
||||
return time.replace("00", "").zfill(2)
|
||||
|
||||
|
||||
def format_temp(temp):
|
||||
return (hour["FeelsLikeC"] + "°").ljust(3)
|
||||
|
||||
|
||||
def format_chances(hour):
|
||||
chances = {
|
||||
"chanceoffog": "Fog",
|
||||
"chanceoffrost": "Frost",
|
||||
"chanceofovercast": "Overcast",
|
||||
"chanceofrain": "Rain",
|
||||
"chanceofsnow": "Snow",
|
||||
"chanceofsunshine": "Sunshine",
|
||||
"chanceofthunder": "Thunder",
|
||||
"chanceofwindy": "Wind",
|
||||
}
|
||||
|
||||
conditions = []
|
||||
for event in chances.keys():
|
||||
if int(hour[event]) > 0:
|
||||
conditions.append(chances[event] + " " + hour[event] + "%")
|
||||
return ", ".join(conditions)
|
||||
|
||||
|
||||
tempint = int(weather["current_condition"][0]["FeelsLikeC"])
|
||||
extrachar = ""
|
||||
if tempint > 0 and tempint < 10:
|
||||
extrachar = "+"
|
||||
|
||||
|
||||
data["text"] = (
|
||||
" "
|
||||
+ WEATHER_CODES[weather["current_condition"][0]["weatherCode"]]
|
||||
+ " "
|
||||
+ extrachar
|
||||
+ weather["current_condition"][0]["FeelsLikeC"]
|
||||
+ "°"
|
||||
)
|
||||
|
||||
data["tooltip"] = (
|
||||
f"<b>{weather['current_condition'][0]['weatherDesc'][0]['value']} {weather['current_condition'][0]['temp_C']}°</b>\n"
|
||||
)
|
||||
data["tooltip"] += f"Feels like: {weather['current_condition'][0]['FeelsLikeC']}°\n"
|
||||
data["tooltip"] += f"Wind: {weather['current_condition'][0]['windspeedKmph']}Km/h\n"
|
||||
data["tooltip"] += f"Humidity: {weather['current_condition'][0]['humidity']}%\n"
|
||||
for i, day in enumerate(weather["weather"]):
|
||||
data["tooltip"] += f"\n<b>"
|
||||
if i == 0:
|
||||
data["tooltip"] += "Today, "
|
||||
if i == 1:
|
||||
data["tooltip"] += "Tomorrow, "
|
||||
data["tooltip"] += f"{day['date']}</b>\n"
|
||||
data["tooltip"] += f"⬆️ {day['maxtempF']}° ⬇️ {day['mintempF']}° "
|
||||
data[
|
||||
"tooltip"
|
||||
] += f"🌅 {day['astronomy'][0]['sunrise']} 🌇 {day['astronomy'][0]['sunset']}\n"
|
||||
for hour in day["hourly"]:
|
||||
if i == 0:
|
||||
if int(format_time(hour["time"])) < datetime.now().hour - 2:
|
||||
continue
|
||||
data[
|
||||
"tooltip"
|
||||
] += f"{format_time(hour['time'])} {WEATHER_CODES[hour['weatherCode']]} {format_temp(hour['FeelsLikeC'])} {hour['weatherDesc'][0]['value']}, {format_chances(hour)}\n"
|
||||
|
||||
|
||||
print(json.dumps(data))
|
||||
178
home/config/waybar/style.css
Executable file → Normal file
178
home/config/waybar/style.css
Executable file → Normal file
|
|
@ -1,149 +1,81 @@
|
|||
* {
|
||||
border: none;
|
||||
border-radius: 0;
|
||||
font-family:
|
||||
Jetbrains Mono Nerd Font,
|
||||
monospace;
|
||||
font-family: "JetBrainsMonoNerdFontMono";
|
||||
font-weight: bold;
|
||||
font-size: 14px;
|
||||
min-height: 0;
|
||||
font-size: 102%;
|
||||
font-feature-settings: '"zero", "ss01", "ss02", "ss03", "ss04", "ss05", "cv31"';
|
||||
padding: 1px;
|
||||
}
|
||||
|
||||
window#waybar {
|
||||
background: rgba(21, 18, 27, 0);
|
||||
color: #cdd6f4;
|
||||
background-color: rgba(0, 0, 0, 0);
|
||||
transition-property: background-color;
|
||||
transition-duration: .5s;
|
||||
}
|
||||
|
||||
window#waybar.hidden {
|
||||
opacity: 0.5;
|
||||
}
|
||||
|
||||
window#waybar.empty {
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
window#waybar.empty #window {
|
||||
padding: 0px;
|
||||
border: 0px;
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
tooltip {
|
||||
background: #1e1e2e;
|
||||
border-radius: 10px;
|
||||
border-width: 2px;
|
||||
border-style: solid;
|
||||
border-color: #11111b;
|
||||
}
|
||||
|
||||
#workspaces button {
|
||||
padding: 5px;
|
||||
color: #313244;
|
||||
margin-right: 5px;
|
||||
}
|
||||
|
||||
#workspaces button.active {
|
||||
color: #a6adc8;
|
||||
}
|
||||
|
||||
#workspaces button.focused {
|
||||
color: #a6adc8;
|
||||
background: #eba0ac;
|
||||
opacity: 1;
|
||||
border-radius: 10px;
|
||||
}
|
||||
|
||||
#workspaces button.urgent {
|
||||
color: #11111b;
|
||||
background: #a6e3a1;
|
||||
border-radius: 10px;
|
||||
tooltip label {
|
||||
padding: 10px;
|
||||
color: #ebdbb2;
|
||||
}
|
||||
|
||||
#workspaces button:hover {
|
||||
background: #11111b;
|
||||
color: #cdd6f4;
|
||||
border-radius: 10px;
|
||||
}
|
||||
|
||||
#language,
|
||||
#custom-updates,
|
||||
#custom-caffeine,
|
||||
#custom-weather,
|
||||
#window,
|
||||
#custom-cava,
|
||||
#clock,
|
||||
#battery,
|
||||
#pulseaudio,
|
||||
#cpu,
|
||||
#memory,
|
||||
#mpris,
|
||||
#network,
|
||||
#pulseaudio,
|
||||
#temperature,
|
||||
#workspaces,
|
||||
#tray,
|
||||
#backlight {
|
||||
background: #1e1e2e;
|
||||
padding: 0px 10px;
|
||||
margin: 3px 0px;
|
||||
margin-top: 10px;
|
||||
border: 1px solid #181825;
|
||||
}
|
||||
|
||||
#tray {
|
||||
#custom-menu,
|
||||
#custom-swaync {
|
||||
border-radius: 10px;
|
||||
margin-right: 10px;
|
||||
}
|
||||
|
||||
#workspaces {
|
||||
background: #1e1e2e;
|
||||
border-radius: 10px;
|
||||
margin-left: 10px;
|
||||
padding-right: 0px;
|
||||
padding-left: 5px;
|
||||
}
|
||||
|
||||
#custom-caffeine {
|
||||
color: #89dceb;
|
||||
border-radius: 10px 0px 0px 10px;
|
||||
border-right: 0px;
|
||||
margin-left: 10px;
|
||||
}
|
||||
|
||||
#custom-language {
|
||||
color: #f38ba8;
|
||||
border-left: 0px;
|
||||
border-right: 0px;
|
||||
}
|
||||
|
||||
#custom-updates {
|
||||
color: #f5c2e7;
|
||||
border-radius: 10px 0px 0px 10px;
|
||||
border-left: 0px;
|
||||
border-right: 0px;
|
||||
color: #ebdbb2;
|
||||
padding-top: 3px;
|
||||
padding-bottom: 3px;
|
||||
padding-left: 6px;
|
||||
padding-right: 6px;
|
||||
}
|
||||
|
||||
#window {
|
||||
border-radius: 10px;
|
||||
margin-left: 60px;
|
||||
margin-right: 60px;
|
||||
color: #ebdbb2;
|
||||
padding-top: 3px;
|
||||
padding-bottom: 3px;
|
||||
padding-right: 6px;
|
||||
padding-left: 6px;
|
||||
border-radius: 12px;
|
||||
}
|
||||
|
||||
#clock {
|
||||
color: #fab387;
|
||||
border-radius: 10px 0px 0px 10px;
|
||||
margin-left: 5px;
|
||||
border-right: 0px;
|
||||
#workspaces button {
|
||||
margin: 1px;
|
||||
box-shadow: none;
|
||||
text-shadow: none;
|
||||
border-radius: 12px;
|
||||
padding-left: 6px;
|
||||
padding-right: 6px;
|
||||
background-color: #ebdbb2;
|
||||
color: #282828;
|
||||
}
|
||||
|
||||
#network {
|
||||
color: #f9e2af;
|
||||
border-left: 0px;
|
||||
border-right: 0px;
|
||||
}
|
||||
|
||||
#pulseaudio {
|
||||
color: #89b4fa;
|
||||
border-left: 0px;
|
||||
border-right: 0px;
|
||||
}
|
||||
|
||||
#pulseaudio.microphone {
|
||||
color: #cba6f7;
|
||||
border-radius: 0px 10px 10px 0px;
|
||||
border-left: 0px;
|
||||
border-right: 0px;
|
||||
margin-right: 5px;
|
||||
}
|
||||
|
||||
#battery {
|
||||
color: #a6e3a1;
|
||||
border-radius: 0 10px 10px 0;
|
||||
margin-right: 10px;
|
||||
border-left: 0px;
|
||||
}
|
||||
|
||||
#custom-weather {
|
||||
border-radius: 0px 10px 10px 0px;
|
||||
border-right: 0px;
|
||||
margin-left: 0px;
|
||||
#temperature.critical {
|
||||
background-color: red;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -9,11 +9,21 @@ in {
|
|||
".config/swayidle".source = "${configDir}/swayidle";
|
||||
".config/swaylock".source = "${configDir}/swaylock";
|
||||
".config/wlogout".source = "${configDir}/wlogout";
|
||||
".config/waybar".source = "${configDir}/waybar";
|
||||
".config/waybar" = {
|
||||
recursive = true;
|
||||
source = "${configDir}/waybar";
|
||||
};
|
||||
".config/btop".source = "${configDir}/btop";
|
||||
".config/wofi".source = "${configDir}/wofi";
|
||||
".config/mako".source = "${configDir}/mako";
|
||||
".config/scripts".source = "${configDir}/scripts";
|
||||
".config/swaync".source = "${configDir}/swaync";
|
||||
# ".config/uwsm".source = "${configDir}/uwsm";
|
||||
".config/starship.toml".source = "${configDir}/starship/starship.toml";
|
||||
".config/macchiato.toml".source = "${configDir}/starship/macchiato.toml";
|
||||
".config/gh" = {
|
||||
recursive = true;
|
||||
source = "${configDir}/gh";
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -27,5 +27,10 @@
|
|||
XDG_CONFIG_HOME = "\${HOME}/.config";
|
||||
#XDG_BIN_HOME = "\${HOME}/.local/bin";
|
||||
XDG_DATA_HOME = "\${HOME}/.local/share";
|
||||
GTK_IM_MODULE = "";
|
||||
|
||||
# GPU
|
||||
LIBVA_DRIVER_NAME = "nvidia";
|
||||
__GLX_VENDOR_LIBRARY_NAME = "nvidia";
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -3,7 +3,6 @@
|
|||
{
|
||||
home.packages = [
|
||||
pkgs.vscode
|
||||
# pkgs.opera
|
||||
pkgs.discord
|
||||
pkgs.firefox
|
||||
|
||||
|
|
@ -38,6 +37,7 @@
|
|||
pkgs.viewnior
|
||||
pkgs.catppuccin-cursors.macchiatoBlue
|
||||
pkgs.catppuccin-gtk
|
||||
pkgs.cava
|
||||
# pkgs.papirus-folders
|
||||
|
||||
pkgs.nushell
|
||||
|
|
|
|||
|
|
@ -2,11 +2,14 @@
|
|||
|
||||
{
|
||||
boot.loader.systemd-boot.enable = true;
|
||||
boot.kernelParams = ["nvidia-drm.fbdev=1" "nvidia.NVreg_PreserveVideoMemoryAllocations=1"];
|
||||
boot.extraModprobeConfig = ''
|
||||
options hid_apple fnmode=2
|
||||
options nvidia_drm modeset=1 dbdev=1
|
||||
'';
|
||||
|
||||
boot.initrd.systemd.enable = true;
|
||||
boot.initrd.kernelModules = [ "nvidia" "i915" "nvidia_modeset" "nvidia_uvm" "nvidia_drm" ];
|
||||
boot.swraid.enable = true;
|
||||
boot.swraid.mdadmConf =
|
||||
"\n MAILADDR smitty\n ARRAY /dev/md126 metadata=1.2 name=stuff:0\n UUID=3b0b7c51-2681-407e-a22a-e965a8aeece7\n ";
|
||||
|
|
|
|||
|
|
@ -7,7 +7,6 @@
|
|||
intel-vaapi-driver = pkgs.intel-vaapi-driver.override { enableHybridCodec = true; } ;
|
||||
};
|
||||
|
||||
environment.sessionVariables = { LIBVA_DRIVER_NAME = "iHD"; }; # Force intel-media-driver
|
||||
|
||||
hardware = {
|
||||
bluetooth.enable = true;
|
||||
|
|
@ -15,7 +14,6 @@
|
|||
enable = true;
|
||||
extraPackages = with pkgs; [
|
||||
intel-media-driver # LIBVA_DRIVER_NAME=iHD
|
||||
intel-vaapi-driver # LIBVA_DRIVER_NAME=i965 (older but works better for Firefox/Chromium)
|
||||
libvdpau-va-gl
|
||||
];
|
||||
};
|
||||
|
|
|
|||
|
|
@ -8,8 +8,11 @@
|
|||
hyprpaper
|
||||
hyprshot
|
||||
kitty
|
||||
|
||||
# Notification
|
||||
libnotify
|
||||
mako
|
||||
swaynotificationcenter
|
||||
|
||||
qt5.qtwayland
|
||||
qt6.qtwayland
|
||||
swayidle
|
||||
|
|
|
|||
|
|
@ -4,7 +4,6 @@
|
|||
environment.systemPackages = with pkgs; [
|
||||
# Browser
|
||||
firefox
|
||||
opera
|
||||
|
||||
# Utils
|
||||
bat
|
||||
|
|
@ -25,6 +24,7 @@
|
|||
|
||||
# Dev
|
||||
git
|
||||
gh # Github cli tool
|
||||
gnumake
|
||||
lm_sensors
|
||||
libsForQt5.qt5.qtquickcontrols2
|
||||
|
|
|
|||
|
|
@ -3,6 +3,7 @@
|
|||
{
|
||||
systemd = {
|
||||
user.services.polkit-gnome-authentication-agent-1 = {
|
||||
enable = true;
|
||||
description = "polkit-gnome-authentication-agent-1";
|
||||
wantedBy = [ "graphical-session.target" ];
|
||||
wants = [ "graphical-session.target" ];
|
||||
|
|
@ -20,6 +21,6 @@
|
|||
DefaultTimeoutStopSec=10s
|
||||
'';
|
||||
};
|
||||
|
||||
services.gnome.gnome-keyring.enable = true;
|
||||
environment.systemPackages = with pkgs; [ polkit polkit_gnome ];
|
||||
}
|
||||
|
|
|
|||
|
|
@ -4,4 +4,5 @@
|
|||
security.polkit.enable = true;
|
||||
security.pam.services.swaylock = { };
|
||||
security.pam.services.swaylock.fprintAuth = false;
|
||||
security.pam.services.sddm.enableGnomeKeyring = true;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue