diff --git a/README.md b/README.md deleted file mode 100644 index 8d8b99c..0000000 --- a/README.md +++ /dev/null @@ -1,16 +0,0 @@ -# dotFiles - -My personal dotfiles for my hyprland/eww config. - -Programs used for the general environment: -- hyprland -- eww -- blueman -- blueman-manager -- Network-Manager -> nmtui -- nvim -- alacritty -- dunst -- swaylock -- brightnessctl -- playerctl diff --git a/electron-flags.conf b/electron-flags.conf deleted file mode 100644 index 1aa75ce..0000000 --- a/electron-flags.conf +++ /dev/null @@ -1,2 +0,0 @@ ---enable-features=UseOzonePlatform,WaylandWindowDecorations ---ozone-platform=wayland diff --git a/eww/eww.scss b/eww/eww.scss index 5bdc11b..4e77704 100644 --- a/eww/eww.scss +++ b/eww/eww.scss @@ -484,3 +484,150 @@ color: #bfc9db; margin : 0px 0px 0px 0px; } +//cockpit stuff + +.cockpit_class { + all: unset; +} + +.cockpit_clock { + padding: 0px 30px 0px 30px; +} + +.cockpit_box { + background-color: #06060b; + border-radius: 10px; + margin: 5px; + padding: 0px 5px 0px 5px; + opacity: 0.85; +} + +.cockpit_button_shutdown { + color: red; + font-size: 40px; + margin: 0px 5px -30px 5px; +} + +.cockpit_button_sleep { + color: blue; + font-size: 40px; + margin: 0px 5px -30px 5px; +} + +.cockpit_button_restart { + color: green; + font-size: 40px; + margin: 0px 5px -30px 5px; +} + +.song_info { + margin: -50px 0px 0px 0px; + font-size: 20px; + color: grey; +} + +.album_cover { + margin: -60px 10px 20px 10px; + padding: 0px; + background-size: cover; + background-repeat: no-repeat; + background-position: center; + border-radius: 10px; +} + +.cockpit_button_settings { + color: #D35D6E; + font-size: 35px; + margin: -30px 5px 0px 5px; +} + +.weather-icon { + font-size: 80px; + margin: 10px 0px 35px 25px; + font-family: Iosevka; +} + +.weather-stat { + font-size: 30px; + font-weight: bold; + color: #D35D6E; + margin: -20px 0px 10px 0px; +} + +.temperature { + color: grey; + font-size: 48px; + font-weight: 900; + margin: 0px 0px 0px 20px; +} +.weather-quote { + margin: 30px -5px 0px 20px; + font-size: 20px; + +} +.weather-quote-head, .weather-quote-tail { + color: grey; + font-size: 18px; + margin: 10px 0px 10px 10px; +} + +.cockpit_clock_left { + font-size: 50px; + font-weight: bold; + color: #D35D6E; + margin: 5px -20px -30px 0px; +} + +.cockpit_clock_right { + font-size: 50px; + font-weight: bold; + color: #D35D6E; + margin: 5px 0px -30px -20px; +} + +.cockpit_date { + font-size: 50px; + font-weight: bold; + color: #D35D6E; + margin: -30px -20px 0px -20px; +} + +.cockpit_clock_sep { + font-size: 40px; + font-weight: bold; + color: #D35D6E; + margin: 0px -20px -30px -20px; +} + +.cockpit_docs { + color: red; + font-size: 30px; + margin: 10px 0px -10px 0px; +} + +.cockpit_pics { + color: green; + font-size: 30px; + margin: 0px 0px 0px 0px; + padding: 0px; +} + +.cockpit_gits { + color: blue; + font-size: 30px; + margin: -20px 0px 10px 0px; +} + +.cockpit_sep_bottom { + color: #38384d; + font-size: 18; + margin : -10px 0px 0px 0px; + padding: 0px; +} + +.cockpit_sep_top { + color: #38384d; + font-size: 18; + margin : 0px 0px -10px 0px; + padding: 0px; +} diff --git a/eww/eww.yuck b/eww/eww.yuck index 7db3cab..2bbd231 100644 --- a/eww/eww.yuck +++ b/eww/eww.yuck @@ -9,9 +9,9 @@ (defpoll brightness_percent :interval "5s" "brightnessctl -m -d intel_backlight | awk -F, '{print substr($4, 0, length($4)-1)}' | tr -d '%'") ;; battery definitions ;; -(defpoll battery_status :interval "1m" "./scripts/battery stat") -(defpoll battery-capacity :interval "1m" "scripts/battery percent") -(defpoll battery :interval "1m" "scripts/battery icon") +(defpoll battery_status :interval "5s" "./scripts/battery stat") +(defpoll battery-capacity :interval "5s" "scripts/battery percent") +(defpoll battery :interval "5s" "scripts/battery icon") ;; memory definitions ;; (defpoll memory :interval "15s" "scripts/memory") @@ -25,11 +25,8 @@ (defpoll WLAN_ICON :interval "1m" "~/.config/eww/scripts/wifi --ICON") ;; music definitions ;; -;;(defpoll song :interval "2s" "~/.config/eww/scripts/music_info --song") -;;(defpoll song_artist :interval "2s" "~/.config/eww/scripts/music_info --artist") -;;(defpoll current_status :interval "1s" "~/.config/eww/scripts/music_info --time") -;;(defpoll song_status :interval "2s" "~/.config/eww/scripts/music_info --status") -;;(defpoll cover_art :interval "2s" "~/.config/eww/scripts/music_info --cover") +(defpoll Song_info :interval "2s" "scripts/music_control") +(defpoll Thumbnail :interval "2s" "scripts/music_control2") ;; current window ;; ;;(defpoll currentWindow :interval "100ms" "hyprctl activewindow | grep class | awk -F ':' '{ print $2 }'") @@ -38,6 +35,14 @@ (defpoll calendar_day :interval "20h" "date '+%d'") (defpoll calendar_year :interval "20h" "date '+%Y'") +;; Weather vars + (defpoll weather-interval :interval "20m" "scripts/weather") + (defpoll weather-icon :interval "20m" "cat ~/.cache/weather/weather-icon") + (defpoll temperature :interval "20m" "cat ~/.cache/weather/weather-degree") + (defpoll weather-hex :interval "20m" "cat ~/.cache/weather/weather-hex") + (defpoll weather-stat :interval "20m" "cat ~/.cache/weather/weather-stat") + (defpoll weather-stat-side :interval "20m" "~/.config/eww/scripts/weather-trimmer") + (defpoll weather-quote :interval "20m" "~/.config/eww/scripts/getwethquote") ;; simple variables ;; (defvar eww "$HOME/.local/bin/eww -c $HOME/.config/eww") @@ -327,6 +332,56 @@ :show_truncated false :wrap false)))))) +;; cockpit widget ;; +(defwidget cockpit [] + (box :orientation "h" + (box :class "cockpit_class" + :orientation "h" + (box :orientation "v" + (box :class "cockpit_box" :orientation "v" + (box + (button :class "cockpit_button_shutdown" :onclick "hyprctl dispatch exec 'shutdown now'" "") + (button :class "cockpit_button_restart" :onclick "hyprctl dispatch exec reboot" "") + (button :class "cockpit_button_sleep" :onclick "hyprctl dispatch exec 'playerctl -a pause & swaylock -c 000000 & systemctl suspend'" "")) + (label :text "" :class "audio_sep" :halign "center") + (box + (button :class "cockpit_button_settings" :onclick "hyprctl dispatch exec 'pavucontrol'" "") + (button :class "cockpit_button_settings" :onclick "scripts/change-audio bluetooth" ""))) + (box :class "cockpit_box" :orientation "v" + (button :class "cockpit_docs" :onclick "hyprctl dispatch exec nautilus $HOME/Documents" "Documents ") + (label :text "" :class "cockpit_sep_top" :halign "center") + (button :class "cockpit_pics" :onclick "hyprctl dispatch exec nautilus $HOME/Pictures" "Pictures ") + (label :text "" :class "cockpit_sep_bottom" :halign "center") + (button :class "cockpit_gits" :onclick "hyprctl dispatch exec 'alacritty --working-directory $HOME/gits'" "gits "))) + (box :orientation "v" + (box :class "cockpit_box" :orientation "v" + (box :class "cockpit_clock" + (label :text clock_time :class "cockpit_clock_left" ) + (label :text "" :class "cockpit_clock_sep" ) + (label :text clock_minute :class "cockpit_clock_right")) + (label :text "" :class "audio_sep" :halign "center") + (box :class "cockpit_clock" + (label :text clock_date :class "cockpit_date") + )) + (box :class "cockpit_box" (weather))) + (box :width 300 :height 200 :class "cockpit_box" :orientation "v" + (box :class "song_info" + (label :wrap true :text "${Song_info}")) + (box :class "album_cover" :style 'background-image: url("${Thumbnail}")') + ))) +) + +;; weather ;; + (defwidget weather [] + (box :orientation "v" :space-evenly "false" + (box :orientation "h" :space-evenly "false" + (box :class "weather-icon" :style "color: ${weather-hex}" {weather-icon}) + (box :class "temperature" "${temperature}")) + (box :orientation "v" :space-evenly "false" + (box :class "weather-stat" {weather-stat})) + (box :class "weather-quote-head" + (label :wrap true :text {weather-quote})))) + ;; left side but displayed right? ;; (defwidget left [] (box :orientation "h" @@ -423,7 +478,19 @@ :width "99%" :height "20px" :anchor "top center") - :stacking "fg" + :stacking "bg" :wm-ignore false :exclusive true (bar_1)) + +;; draw the bar ;; +(defwindow cockpit_window + :monitor 0 + :geometry (geometry + :width "600px" + :height "500px" + :anchor "center") + :stacking "overlay" + :wm-ignore false + :exclusive true + (cockpit)) diff --git a/eww/scripts/audio_devices b/eww/scripts/audio_devices new file mode 100755 index 0000000..1548cfd --- /dev/null +++ b/eww/scripts/audio_devices @@ -0,0 +1,31 @@ +#!/bin/bash +CLIENTS=$(pactl list sink-inputs | grep "application.process.binary" | awk -F '= ' ' { print $2 } ' | tr -d '"') + +readarray -t lines <<<"$CLIENTS" + +printf "%s\n" "${lines[@]}" +echo ${lines[2]} + + +#echo "(box :class \"works\" :orientation \"h\" :spacing 5 :space-evenly \"false\" (button :onclick \"hyprctl dispatch workspace 1\" :class \"$un$o1$f1\" \"$ic_1\") (button :onclick \"hyprctl dispatch workspace 2\" :class \"$un$o2$f2\" \"$ic_2\") (button :onclick \"hyprctl dispatch workspace 3\" :class \"$un$o3$f3\" \"$ic_3\") (button :onclick \"hyprctl dispatch workspace 4\" :class \"$un$o4$f4\" \"$ic_4\") (button :onclick \"hyprctl dispatch workspace 5\" :class \"$un$o5$f5\" \"$ic_5\") (button :onclick \"hyprctl dispatch workspace 6\" :class \"$un$o6$f6\" \"$ic_6\") (button :onclick \"hyprctl dispatch workspace 7\" :class \"$un$o7$f7\" \"$ic_7\") (button :onclick \"hyprctl dispatch workspace 8\" :class \"$un$o8$f8\" \"$ic_8\"))" + + # (eventbox :onhover "scripts/pop hoverCreate" + # :onhoverlost "scripts/pop hoverGet audio_ctl" + # (box :class "audio-box" :orientation "v" :space-evenly "false" :vexpand "false" :hexpand "false" + + # (box :halign "center" :space-evenly "false" :hexpand "false" :vexpand "false" + # (box :class "speaker_icon" :orientation "v") + # (box :orientation "v" :halign "center" :vexpand "false" :hexpand "false" + # (label :class "speaker_text" :text "speaker" :valign "center" :halign "left" ) + # (box :class "speaker_bar" :halign "center" :vexpand "false" :hexpand "false" + # (scale :value volume_percent + # :space-evenly "false" + # :orientation "h" + # :onchange "pactl set-sink-volume @DEFAULT_SINK@ {}%" + # :tooltip "volume on ${volume_percent}%" + # :max 100 + # :min 0)))) + + # (label :text "" :class "audio_sep" :halign "center") + + # )))) diff --git a/eww/scripts/cockpit_toggle b/eww/scripts/cockpit_toggle new file mode 100755 index 0000000..df1c220 --- /dev/null +++ b/eww/scripts/cockpit_toggle @@ -0,0 +1,8 @@ +#! /bin/bash + +ISOPEN=$(eww windows | grep "*cockpit") +if [ "$ISOPEN" = "" ]; then + eww open cockpit_window +else + eww close cockpit_window +fi diff --git a/eww/scripts/firefox_control.sh b/eww/scripts/firefox_control.sh new file mode 100755 index 0000000..32d818e --- /dev/null +++ b/eww/scripts/firefox_control.sh @@ -0,0 +1,5 @@ +#! /bin/bash + +NUM=$(pactl list clients short | grep "firefox" | awk -F 'PipeWire' ' { print $1 } ' | tr -d ' \t\n') +CLIENT=$(pactl list sink-inputs short | grep "$NUM" | awk -F ' ' ' { print $1 }' | tr -d ' \t\n') +pactl set-sink-input-volume "$CLIENT" "$1" diff --git a/eww/scripts/getwethquote b/eww/scripts/getwethquote new file mode 100755 index 0000000..7bfaf34 --- /dev/null +++ b/eww/scripts/getwethquote @@ -0,0 +1,2 @@ +#!/bin/bash +echo -e $(cat $HOME/.cache/weather/weather-quote) | head -n1 diff --git a/eww/scripts/getwethquote2 b/eww/scripts/getwethquote2 new file mode 100755 index 0000000..a34afa9 --- /dev/null +++ b/eww/scripts/getwethquote2 @@ -0,0 +1,2 @@ +#!/bin/bash +echo -e $(cat $HOME/.cache/weather/weather-quote) | tail -n1 diff --git a/eww/scripts/music_control b/eww/scripts/music_control new file mode 100755 index 0000000..70a1483 --- /dev/null +++ b/eww/scripts/music_control @@ -0,0 +1,2 @@ +#!/bin/bash +echo $(playerctl metadata -p ncspot,%any --format "{{ artist }}\n{{ album }}\n{{ title }}") diff --git a/eww/scripts/music_control2 b/eww/scripts/music_control2 new file mode 100755 index 0000000..42dca7f --- /dev/null +++ b/eww/scripts/music_control2 @@ -0,0 +1,3 @@ +#!/bin/bash +echo $(playerctl -p ncspot,%any metadata mpris:artUrl) + diff --git a/eww/scripts/ncspot_control.sh b/eww/scripts/ncspot_control.sh new file mode 100755 index 0000000..477625c --- /dev/null +++ b/eww/scripts/ncspot_control.sh @@ -0,0 +1,5 @@ +#! /bin/bash + +NUM=$(pactl list clients short | grep "ncspot" | awk -F 'PipeWire' ' { print $1 } ' | tr -d ' \t\n') +CLIENT=$(pactl list sink-inputs short | grep "$NUM" | awk -F ' ' ' { print $1 }' | tr -d ' \t\n') +pactl set-sink-input-volume "$CLIENT" "$1" diff --git a/eww/scripts/spotifyd b/eww/scripts/spotifyd new file mode 100755 index 0000000..fc35a11 --- /dev/null +++ b/eww/scripts/spotifyd @@ -0,0 +1,10 @@ +#!/bin/bash + +#if [ "$PLAYER_EVENT" = "start" ] || [ "$PLAYER_EVENT" = "change" ]; +#then + trackName=$(playerctl -p spotifyd,%any metadata title) + artistAndAlbumName=$(playerctl -p spotifyd,%any metadata --format "{{ artist }} ({{ album }})") + Thumbnail_url=$(playerctl -p spotifyd,%any metadata mpris:artUrl) + Thumbnail=$(curl "$Thumbnail_url") + notify-send -u low "$trackName" "$artistAndAlbumName " -i "$Thumbnail" +#fi diff --git a/eww/scripts/spotifyd.sh b/eww/scripts/spotifyd.sh new file mode 100755 index 0000000..86d89f3 --- /dev/null +++ b/eww/scripts/spotifyd.sh @@ -0,0 +1,10 @@ +#!/bin/bash +if [ "$PLAYER_EVENT" = "start" ] || [ "$PLAYER_EVENT" = "change" ]; +then + song=$(playerctl metadata -p spotifyd --format "{{ title }}\n{{ artist }}\n{{ album }}") + if [ ! -f "/home/dashie/.cache/icons/$song" ]; then + thumb=$(playerctl metadata -p spotifyd --format '{{lc(mpris:artUrl)}}') + convert "$thumb" -flatten -thumbnail 256x256 /home/dashie/.cache/icons/"$song" + fi + dunstify -I /home/dashie/.cache/icons/"$song" -t 3000 "Spotify" "$song" +fi diff --git a/eww/scripts/toggle-mute b/eww/scripts/toggle-mute new file mode 100755 index 0000000..7fcd17e --- /dev/null +++ b/eww/scripts/toggle-mute @@ -0,0 +1,12 @@ +#! /bin/bash + +SINK=$(pactl info | grep "Default Sink"| awk -F 'Default Sink: ' ' { print $2 } ') +pactl set-sink-mute $SINK toggle +MUTE=$(pactl list sinks | grep -A 6 "$SINK" | grep "Mute: yes" | tr -d '\t') + +if [ "$MUTE" = "Mute: yes" ]; then + dunstify -a "toggleMute" -r 2 -u low "Muted" +else + dunstify -a "toggleMute" -r 2 -u low "Unmuted" +fi + diff --git a/eww/scripts/weather b/eww/scripts/weather new file mode 100755 index 0000000..b217c29 --- /dev/null +++ b/eww/scripts/weather @@ -0,0 +1,125 @@ +#!/bin/bash + +tmp_weather="$HOME/.cache/weather" +tmp_weather_stat=$tmp_weather/weather-stat +tmp_weather_degree=$tmp_weather/weather-degree +tmp_weather_quote=$tmp_weather/weather-quote +tmp_weather_hex=$tmp_weather/weather-hex +tmp_weather_icon=$tmp_weather/weather-icon + +if [ ! -d $tmp_weather ]; then + mkdir -p $tmp_weather +fi + +# Put in your api and stuff link here +# If you dunno, head to openweathermap.org, and make and account +#(completely free I swear, and then get your API Key and your City ID) +# I wish I was smart enough to do it like Elena, but this is the top I could do lol +KEY="{your key}" +ID="{your city id}" +UNIT="{metric}" #Options are 'metric' and 'imperial' +weather=$(curl -sf "http://api.openweathermap.org/data/2.5/weather?APPID="$KEY"&id="$ID"&units="$UNIT"") +echo $weather +if [ ! -z "$weather" ]; then + weather_temp=$(echo "$weather" | jq ".main.temp" | cut -d "." -f 1) + weather_icon_code=$(echo "$weather" | jq -r ".weather[].icon" | head -1) + weather_description=$(echo "$weather" | jq -r ".weather[].description" | head -1 | sed -e "s/\b\(.\)/\u\1/g") + + #Big long if statement of doom + if [ "$weather_icon_code" == "50d" ]; then + weather_icon=" " + weather_quote="Forecast says it's misty \nMake sure you don't get lost on your way..." + weather_hex="#84afdb" #a7b8b2 + elif [ "$weather_icon_code" == "50n" ]; then + weather_icon=" " + weather_quote="Forecast says it's a misty night \nDon't go anywhere tonight or you might get lost..." + weather_hex="#84afdb" + elif [ "$weather_icon_code" == "01d" ]; then + weather_icon=" " + weather_quote="It's a sunny day, gonna be fun! \nDon't go wandering all by yourself though..." + weather_hex="#ffd86b" + elif [ "$weather_icon_code" == "01n" ]; then + weather_icon=" " + weather_quote="It's a clear night \nYou might want to take a evening stroll to relax..." + weather_hex="#fcdcf6" + elif [ "$weather_icon_code" == "02d" ]; then + weather_icon=" " + weather_quote="It's cloudy, sort of gloomy \nYou'd better get a book to read..." + weather_hex="#adadff" + elif [ "$weather_icon_code" == "02n" ]; then + weather_icon=" " + weather_quote="It's a cloudy night \nHow about some hot chocolate and a warm bed?" + weather_hex="#adadff" + elif [ "$weather_icon_code" == "03d" ]; then + weather_icon=" " + weather_quote="It's cloudy, sort of gloomy \nYou'd better get a book to read..." + weather_hex="#adadff" + elif [ "$weather_icon_code" == "03n" ]; then + weather_icon=" " + weather_quote="It's a cloudy night \nHow about some hot chocolate and a warm bed?" + weather_hex="#adadff" + elif [ "$weather_icon_code" == "04d" ]; then + weather_icon=" " + weather_quote="It's cloudy, sort of gloomy \nYou'd better get a book to read..." + weather_hex="#adadff" + elif [ "$weather_icon_code" == "04n" ]; then + weather_icon=" " + weather_quote="It's a cloudy night \nHow about some hot chocolate and a warm bed?" + weather_hex="#adadff" + elif [ "$weather_icon_code" == "09d" ]; then + weather_icon=" " + weather_quote="It's rainy, it's a great day! \nGet some ramen and watch as the rain falls..." + weather_hex="#6b95ff" + elif [ "$weather_icon_code" == "09n" ]; then + weather_icon=" " + weather_quote=" It's gonna rain tonight it seems \nMake sure your clothes aren't still outside..." + weather_hex="#6b95ff" + elif [ "$weather_icon_code" == "10d" ]; then + weather_icon=" " + weather_quote="It's rainy, it's a great day! \nGet some ramen and watch as the rain falls..." + weather_hex="#6b95ff" + elif [ "$weather_icon_code" == "10n" ]; then + weather_icon=" " + weather_quote=" It's gonna rain tonight it seems \nMake sure your clothes aren't still outside..." + weather_hex="#6b95ff" + elif [ "$weather_icon_code" == "11d" ]; then + weather_icon="" + weather_quote="There's storm for forecast today \nMake sure you don't get blown away..." + weather_hex="#ffeb57" + elif [ "$weather_icon_code" == "11n" ]; then + weather_icon="" + weather_quote="There's gonna be storms tonight \nMake sure you're warm in bed and the windows are shut..." + weather_hex="#ffeb57" + elif [ "$weather_icon_code" == "13d" ]; then + weather_icon=" " + weather_quote="It's gonna snow today \nYou'd better wear thick clothes and make a snowman as well!" + weather_hex="#e3e6fc" + elif [ "$weather_icon_code" == "13n" ]; then + weather_icon=" " + weather_quote="It's gonna snow tonight \nMake sure you get up early tomorrow to see the sights..." + weather_hex="#e3e6fc" + elif [ "$weather_icon_code" == "40d" ]; then + weather_icon=" " + weather_quote="Forecast says it's misty \nMake sure you don't get lost on your way..." + weather_hex="#84afdb" + elif [ "$weather_icon_code" == "40n" ]; then + weather_icon=" " + weather_quote="Forecast says it's a misty night \nDon't go anywhere tonight or you might get lost..." + weather_hex="#84afdb" + else + weather_icon=" " + weather_quote="Sort of odd, I don't know what to forecast \nMake sure you have a good time!" + weather_hex="#adadff" + fi + echo "$weather_icon" > $tmp_weather_icon + echo "$weather_description" > $tmp_weather_stat + echo "$weather_temp""°C" > $tmp_weather_degree + echo "$weather_quote" > $tmp_weather_quote + echo "$weather_hex" > $tmp_weather_hex + else + echo "Weather Unavailable" > $tmp_weather_stat + echo " " > $tmp_weather_icon + echo "Ah well, no weather huh? \nEven if there's no weather, it's gonna be a great day!" > $tmp_weather_quote + echo "-" > $tmp_weather_degree + echo "#adadff" > $tmp_weather_hex +fi diff --git a/eww/scripts/weather-trimmer b/eww/scripts/weather-trimmer new file mode 100755 index 0000000..8ddeaa1 --- /dev/null +++ b/eww/scripts/weather-trimmer @@ -0,0 +1,9 @@ +#!/bin/bash +weather=$(cat $HOME/.cache/weather/weather-stat) +weather_count=$(cat $HOME/.cache/weather/weather-stat | wc -c) + +if [ "$weather_count" -lt 10 ]; then + echo $weather; +else + echo $(cat $HOME/.cache/weather/weather-stat | cut -c1-6)... +fi diff --git a/gtk-2.0/gtkfilechooser.ini b/gtk-2.0/gtkfilechooser.ini new file mode 100644 index 0000000..16e9df9 --- /dev/null +++ b/gtk-2.0/gtkfilechooser.ini @@ -0,0 +1,11 @@ +[Filechooser Settings] +LocationMode=path-bar +ShowHidden=false +ShowSizeColumn=true +GeometryX=912 +GeometryY=199 +GeometryWidth=1008 +GeometryHeight=692 +SortColumn=name +SortOrder=ascending +StartupMode=recent diff --git a/hypr/hyprland.conf b/hypr/hyprland.conf index 0db14e0..ea24abc 100644 --- a/hypr/hyprland.conf +++ b/hypr/hyprland.conf @@ -2,6 +2,7 @@ # #fix the fucking portal exec-once=systemctl --user import-environment +exec-once=dbus-update-activation-environment --all # # @@ -76,8 +77,6 @@ misc { # example window rules # for windows named/classed as abc and xyz -windowrule=tile,^(.*)(Spotify)(.*)$ -windowrule=center,^(.*)$ windowrule=opacity 80,^(.*)(dunst)(.*)$ #windowrule=tile,xyz #windowrule=float,abc @@ -92,18 +91,21 @@ bind=SUPER,Q,killactive, bind=SUPER,M,exit, bind=SUPER,E,exec,nautilus --new-window bind=SUPER,V,togglefloating, -bind=SUPER,R,exec,wofi --show drun -o DP-3 +bind=SUPER,R,exec,wofi -I -m -s $HOME/.config/wofi/style.css -t alacritty --show drun -o DP-3 bind=SUPER,C,togglesplit -bind=SUPERSHIFT,L,exec, playerctl -a pause & swaylock -c 000000 & systemctl suspend -bind=,XF86AudioMute,exec,pactl set-sink-mute @DEFAULT_SINK@ toggle +bind=SUPER,B,fullscreen +bind=SUPERSHIFT,L,exec, playerctl --player=ncspot,firefox -a pause & swaylock -c 000000 & systemctl suspend +bind=,XF86AudioMute,exec, $HOME/.config/eww/scripts/toggle-mute bind=,XF86AudioLowerVolume,exec, $HOME/.config/eww/scripts/change-volume sink -5% bind=,XF86AudioRaiseVolume,exec, $HOME/.config/eww/scripts/change-volume sink +5% -bind=,XF86AudioPlay,exec, playerctl play-pause -bind=,XF86AudioNext,exec, playerctl next -bind=,XF86AudioPrev,exec, playerctl previous +bind=,XF86AudioPlay,exec, playerctl --player=ncspot,firefox play-pause +bind=,XF86AudioNext,exec, playerctl --player=ncspot,firefox next +bind=,XF86AudioPrev,exec, playerctl --player=ncspot,firefox previous bind=,XF86MonBrightnessDown,exec, $HOME/.config/eww/scripts/change-brightness brightness 10%- bind=,XF86MonBrightnessUp,exec, $HOME/.config/eww/scripts/change-brightness brightness +10% - +bind=SUPERSHIFTALT,S,exec, grim -o eDP-1 - | swappy -f - +bind=SUPER,D,exec, $HOME/.config/eww/scripts/cockpit_toggle +bind=,Print,exec, grim - | wl-copy bind=SUPER,bracketleft,movefocus,l bind=SUPER,bracketright,movefocus,r @@ -126,24 +128,24 @@ bind=SUPER,8,workspace,8 bind=SUPER,9,workspace,9 bind=SUPER,0,workspace,10 -bind=ALT,1,movetoworkspace,1 -bind=ALT,2,movetoworkspace,2 -bind=ALT,3,movetoworkspace,3 -bind=ALT,4,movetoworkspace,4 -bind=ALT,5,movetoworkspace,5 -bind=ALT,6,movetoworkspace,6 -bind=ALT,7,movetoworkspace,7 -bind=ALT,8,movetoworkspace,8 -bind=ALT,9,movetoworkspace,9 -bind=ALT,0,movetoworkspace,10 +bind=SUPERSHIFT,1,movetoworkspace,1 +bind=SUPERSHIFT,2,movetoworkspace,2 +bind=SUPERSHIFT,3,movetoworkspace,3 +bind=SUPERSHIFT,4,movetoworkspace,4 +bind=SUPERSHIFT,5,movetoworkspace,5 +bind=SUPERSHIFT,6,movetoworkspace,6 +bind=SUPERSHIFT,7,movetoworkspace,7 +bind=SUPERSHIFT,8,movetoworkspace,8 +bind=SUPERSHIFT,9,movetoworkspace,9 +bind=SUPERSHIFT,0,movetoworkspace,10 bind=SUPER,mouse_down,workspace,e+1 bind=SUPER,mouse_up,workspace,e-1 -bind=SUPER,O,resizeactive,-20 0 -bind=SUPER,P,resizeactive,20 0 -bind=SUPER,K,resizeactive,0 -20 -bind=SUPER,L,resizeactive,0 20 +binde=SUPER,O,resizeactive,-20 0 +binde=SUPER,P,resizeactive,20 0 +binde=SUPER,K,resizeactive,0 -20 +binde=SUPER,L,resizeactive,0 20 #autostart programs #exec=~/Documents/scripts/hyprstart.sh @@ -151,5 +153,7 @@ bind=SUPER,L,resizeactive,0 20 exec-once=hyprpaper exec-once=eww daemon exec-once=eww open bar -exec-once=element-desktop +exec-once=flatpak run chat.schildi.desktop exec-once=firefox +#exec-once=nextcloud +exec-once=alacritty -e ncspot diff --git a/hypr/hyprpaper.conf b/hypr/hyprpaper.conf index 498913c..69e3da0 100644 --- a/hypr/hyprpaper.conf +++ b/hypr/hyprpaper.conf @@ -1,4 +1,4 @@ # wallpaper -preload = /home/dashie/Pictures/backgrounds/birblux.png -wallpaper = eDP-1,/home/dashie/Pictures/backgrounds/birblux.png +preload = /home/dashie/Pictures/backgrounds/Monitor3.jpg +wallpaper = eDP-1,/home/dashie/Pictures/backgrounds/Monitor3.jpg diff --git a/recidia/settings.cfg b/recidia/settings.cfg deleted file mode 100644 index 6913d3d..0000000 --- a/recidia/settings.cfg +++ /dev/null @@ -1,283 +0,0 @@ -// Directories this file can be located, in order: -// 1. Same dir as executable -// 2. Same dir as executable, but 1 step back -// 3. ~/.config/recidia/ -// 4. /etc/recidia/ - -// Notes: -// Pay attention to the number boundary range "[?]-[?]" for each setting -// The GUI and terminal settings are separate besides "shared_settings" -// Key bindings/controls must only be 1 letter/char -// And only settings that have a "Controls" section can have keybindings -// DO NOT CHANGE THE "name" parameter - -// Convenient bindings: -// Scroll(mouse) - Adjust "Data Height Cap" - -version = "0.4"; - -gui_settings = ( - { - // Hide/Show Settings Menu - name = "Settings Menu"; - default = true; - - // Controls - toggle_key = "["; - }, - { - // Frameless window to remove borders - name = "Frameless"; - default = false; - - // Controls - toggle_key = "]"; - }, - { - // Draw X position [-1.0]-[1.0] - name = "Draw X"; - default = -1.0; - }, - { - // Draw Y position [-1.0]-[1.0] - name = "Draw Y"; - default = -1.0; - }, - { - // Draw width area size [0.0]-[1.0] - name = "Draw Width"; - default = 1.0; - }, - { - // Draw height area size [0.0]-[1.0] - name = "Draw Height"; - default = 1.0; - }, - { - // Minium amount drawn of a plot [0.0]-[1.0] - name = "Min Plot Height"; - default = 0.0; - }, - { - // Size of the plots/bars width in pixels [1]-[max] - name = "Plot Width"; - max = 100; - default = 14; - - // Controls - decrease_key = "e"; - increase_key = "r"; - }, - { - // Size of the gap width between plots in pixels [0]-[max] - name = "Gap Width"; - max = 100; - default = 6; - - // Controls - decrease_key = "d"; - increase_key = "f"; - }, - { - // Mode of how plots are drawn - name = "Draw Mode"; - // Mode are "Bars"=0 and "Points"=1 - mode = 0; - - // Controls - toggle_key = "b"; - }, - { - // Color of the plots/bars colors [0]-[255] - name = "Main Color"; - red = 255; - green = 255; - blue = 255; - alpha = 255; - }, - { - // Color of the plain background [0]-[255] - name = "Background Color"; - red = 50; - green = 50; - blue = 50; - alpha = 150; - }, - { - // Shaders - name = "Shaders"; - - // Plots Shader files in "/shaders" - main_vertex = "default.vert"; - main_frag = "default.frag"; - - // Modifiers (If in shader code) - main_loop_time = 1500; // Seconds until reset - main_power = 1.0; // [0.0]-[1.0] - // Plots range that effects power setting [0.0]-[1.0] - main_power_mod_range = [0.0, 0.5]; - - - // Background shader files in "/shaders" - back_vertex = "default.vert"; - back_frag = "default.frag"; - - // Modifiers (If in shader code) - back_loop_time = 1500; // Seconds until reset - back_power = 1.0; // [0.0]-[1.0] - // Plots range that effects power setting [0.0]-[1.0] - back_power_mod_range = [0.0, 0.5]; - }, -); - -terminal_settings = ( - { - // Size of the plots/bars width by char [1]-[max] - name = "Plot Width"; - max = 25; - default = 1; - - // Controls - decrease_key = "e"; - increase_key = "r"; - }, - { - // Size of the gap width between plots/bars by char [0]-[max] - name = "Gap Width"; - max = 25; - default = 1; - - // Controls - decrease_key = "d"; - increase_key = "f"; - }, - { - // Color of the plots/bars colors [0]-[255] - // Use "alpha" to toggle color - name = "Main Color"; - red = 255; - green = 255; - blue = 255; - alpha = 0; // 1 or 0 - }, - { - // Color of the plain background [0]-[255] - // Use "alpha" to toggle color - name = "Background Color"; - red = 50; - green = 50; - blue = 50; - alpha = 0; // 1 or 0 - }, - { - // Characters for drawing plots, ordered from low/empty to high/fill - name = "Plot Chars"; - // At least 2 chars in array or recidia will resort to defaults - chars = [" ","▁","▂","▃","▄","▅","▆","▇","█"]; - }, -); - -shared_settings = ( - { - // Increasing the cap will lower the plot's height and vice versa [1.0]-[max] - name = "Data Height Cap"; - max = 32768.0; - default = 500.0; - - // Controls - decrease_key = "t"; // or Mouse wheel up - increase_key = "g"; // or Mouse wheel down - }, - { - // Smooths the plots to a curve based on the window_size - name = "SavGol Filter"; - - // Relative window_size size [0.0]-[1.0] - // The real window size will scale with the amount of plots - // But at a minium the real window size will be poly_order+2 - window_size = 0.0; - - // NOT CONTROLLABLE, but playable at your own risk - poly_order = 3; - - // Controls - decrease_key = "q"; - increase_key = "w"; - }, - { - // Removes the audio/fft jitter by averaging past data of ?x times [0]-[max] - name = "Interpolation"; - - // note that max will multiply memory usage based on "Audio Buffer Size"'s max - max = 32; - default = 8; - - // Controls - decrease_key = "a"; - increase_key = "s"; - }, - { - // The amount of audio data that is collected for fft processing [2^?]-[max] - // The higher the number, the higher the accuracy. - // But that also means less responsiveness because of old data. - // Values MUST be a power of 2 - name = "Audio Buffer Size"; - max = 16384; - default = 4096; - - // Controls - decrease_key = "z"; - increase_key = "x"; - }, - { - // This is the layout or "chart" of the plots using 2 bézier curves - name = "Plot Chart Guide"; - - // Frequency at the start - start_freq = 0.0; - - // Control point of the first bézier curve - start_ctrl = 1.0; - - // Frequency at the middle - mid_freq = 1000.0; - - // Position of the frequency at the middle [0.0]-[1.0] - mid_pos = 0.66; - - // Control point of the second bézier curve - end_ctrl = 1.0; - - // Frequency at the end - end_freq = 12000.0 - }, - { - // The rate of polling for new audio data [1]-[max] - name = "Poll Rate"; - max = 100; // ms - default = 10; - - // Controls - decrease_key = "j"; - increase_key = "u"; - }, - { - // Frames Per Second Cap - // FPS will not go beyond your refresh rate [1]-[max] - name = "FPS Cap"; - max = 1000; - default = 150; - - // Controls - decrease_key = "h"; - increase_key = "y"; - }, - { - // Show stats - name = "Stats"; - enabled = false; - - // Controls - toggle_key = "i"; - }, -); diff --git a/recidia/shaders/bounce.vert b/recidia/shaders/bounce.vert deleted file mode 100644 index 68266dc..0000000 --- a/recidia/shaders/bounce.vert +++ /dev/null @@ -1,25 +0,0 @@ -#version 450 - -layout(location = 0) in vec3 inPosition; -layout(location = 1) in vec4 inColor; - -layout(location = 0) out vec4 fragColor; - -layout(push_constant) uniform PushConstants { - float time; - float power; -} constants; - -// Reduced init size of vertex to allow for room to bounce -#define INIT_SIZE 0.75 -// Separate power modifier -#define POWER 0.35 - -void main() { - vec3 pos = inPosition; - pos *= INIT_SIZE; - pos *= 1.0 + (constants.power * POWER); - - gl_Position = vec4(pos, 1.0); - fragColor = inColor; -} \ No newline at end of file diff --git a/recidia/shaders/default.frag b/recidia/shaders/default.frag deleted file mode 100644 index c000e75..0000000 --- a/recidia/shaders/default.frag +++ /dev/null @@ -1,8 +0,0 @@ -#version 450 - -layout(location = 0) in vec4 fragColor; -layout(location = 0) out vec4 outColor; - -void main() { - outColor = fragColor; -} diff --git a/recidia/shaders/default.vert b/recidia/shaders/default.vert deleted file mode 100644 index 5e8f537..0000000 --- a/recidia/shaders/default.vert +++ /dev/null @@ -1,11 +0,0 @@ -#version 450 - -layout(location = 0) in vec3 inPosition; -layout(location = 1) in vec4 inColor; - -layout(location = 0) out vec4 fragColor; - -void main() { - gl_Position = vec4(inPosition, 1.0); - fragColor = inColor; -} diff --git a/recidia/shaders/space.frag b/recidia/shaders/space.frag deleted file mode 100644 index 4ec988e..0000000 --- a/recidia/shaders/space.frag +++ /dev/null @@ -1,172 +0,0 @@ -#version 450 - -layout(location = 0) in vec4 fragColor; -layout(location = 0) out vec4 outColor; - -layout(push_constant) uniform PushConstants { - float time; - float power; -} constants; - -#define iterations 12 -#define formuparam2 0.79 - -#define volsteps 7 -#define stepsize 0.290 - -#define zoom 0.75 -#define tile 0.850 -#define speed2 0.2 - -#define brightness 0.0015 -#define darkmatter 0.010 -#define distfading 0.560 -#define saturation 0.90 - - -#define transverseSpeed zoom -#define cloud 0.25 - -float field(in vec3 p) { - float strength = 7. + .03 * log(1.e-6 + fract(sin(constants.time) * 373.11)); - float accum = 0.; - float prev = 0.; - float tw = 0.; - - for (int i = 0; i < 10; ++i) { - float mag = dot(p, p); - p = abs(p) / mag + vec3(-.5, -.8 + 0.1*sin(-constants.time*0.1 + 2.0), -1.1+0.3*cos(constants.time*0.3)); - float w = exp(-float(i) / 7.); - accum += w * exp(-strength * pow(abs(mag - prev), 2.3)); - tw += w; - prev = mag; - } - return max(0., 5. * accum / tw - .7); -} - - - -void main() { - vec2 uv2 = 2. * gl_FragCoord.xy / vec2(512) - 1.; - vec2 uvs = uv2 * vec2(512) / 512.; - - float time2 = constants.time; - float speed = -speed2; - speed = .005 * cos(time2*0.02 + 3.1415926/4.0); - //speed = 0.0; - float formuparam = formuparam2; - - //get coords and direction - vec2 uv = uvs; - - //mouse rotation - float a_xz = 0.9; - float a_yz = -.6; - float a_xy = 0.9 + constants.time*0.08; - - mat2 rot_xz = mat2(cos(a_xz),sin(a_xz),-sin(a_xz),cos(a_xz)); - mat2 rot_yz = mat2(cos(a_yz),sin(a_yz),-sin(a_yz),cos(a_yz)); - mat2 rot_xy = mat2(cos(a_xy),sin(a_xy),-sin(a_xy),cos(a_xy)); - - - float v2 =1.0; - vec3 dir=vec3(uv*zoom,1.); - vec3 from=vec3(0.0, 0.0,0.0); - - vec3 forward = vec3(0.,0.,1.); - from.x += transverseSpeed*(1.0)*cos(0.01*constants.time) + 0.001*constants.time; - from.y += transverseSpeed*(1.0)*sin(0.01*constants.time) +0.001*constants.time; - from.z += 0.003*constants.time; - - dir.xy*=rot_xy; - forward.xy *= rot_xy; - dir.xz*=rot_xz; - forward.xz *= rot_xz; - dir.yz*= rot_yz; - forward.yz *= rot_yz; - - from.xy*=-rot_xy; - from.xz*=rot_xz; - from.yz*= rot_yz; - - - //zoom - float zooom = (time2-3311.)*speed; - from += forward* zooom; - float sampleShift = mod( zooom, stepsize ); - - float zoffset = -sampleShift; - sampleShift /= stepsize; // make from 0 to 1 - - //volumetric rendering - float s=0.24; - float s3 = s + stepsize/2.0; - vec3 v=vec3(0.); - float t3 = 0.0; - - vec3 backCol2 = vec3(0.); - for (int r=0; r 7 ? min( 12., D) : D; - pa=length(p2); - } - - - float dm=max(0.,darkmatter-a*a*.001); //dark matter - a*=a*a; // add contrast - //if (r>3) fade*=1.-dm; // dark matter, don't render near - // brightens stuff up a bit - float s1 = s+zoffset; - // need closed form expression for this, now that we shift samples - float fade = pow(distfading,max(0.,float(r)-sampleShift)); - //t3 += fade; - v+=fade; - //backCol2 -= fade; - - // fade out samples as they approach the camera - if( r == 0 ) - fade *= (1. - (sampleShift)); - // fade in samples as they approach from the distance - if( r == volsteps-1 ) - fade *= sampleShift; - v+=vec3(s1,s1*s1,s1*s1*s1*s1)*a*brightness*fade; // coloring based on distance - - backCol2 += mix(.4, 1., v2) * vec3(1.8 * t3 * t3 * t3, 1.4 * t3 * t3, t3) * fade; - - - s+=stepsize; - s3 += stepsize; - }//фор - - v=mix(vec3(length(v)),v,saturation); //color adjust - - vec4 forCol2 = vec4(v*.01,1.); - #ifdef cloud - backCol2 *= cloud; - #endif - backCol2.b *= 1.8; - backCol2.r *= 0.05; - - backCol2.b = 0.5*mix(backCol2.g, backCol2.b, 0.8); - backCol2.g = 0.0; - backCol2.bg = mix(backCol2.gb, backCol2.bg, 0.5*(cos(constants.time*0.01) + 1.0)); - - // Mix in input - backCol2 *= vec3(fragColor[0], fragColor[1], fragColor[2]); - - outColor = forCol2 + vec4(backCol2, fragColor.a); -} - diff --git a/wofi/style.css b/wofi/style.css new file mode 100644 index 0000000..f4cd177 --- /dev/null +++ b/wofi/style.css @@ -0,0 +1,18 @@ +window { + margin: 5px; + background-color: #0f0f17; + border-radius: 10px; + opacity: 0.95; +} + +#inner-box { + margin: 5px; + background-color: #0f0f17; + border-radius: 10px; +} + +#outer-box { + margin: 5px; + background-color: #0f0f17; + border-radius: 10px; +}