This commit is contained in:
2025-12-25 10:04:04 +01:00
parent 03fd1401c1
commit a0322675d8
15 changed files with 646 additions and 0 deletions

0
.config/rofi/.gitkeep Normal file
View File

View File

@@ -0,0 +1,34 @@
/*******************************************************
* ROFI Arch Dark Transparent colors for EndeavourOS
* Maintainer: joekamprad <joekamprad@endeavouros.com>
*******************************************************/
* {
selected-normal-foreground: rgba ( 255, 147, 5, 100 % );
foreground: rgba ( 196, 203, 212, 100 % );
normal-foreground: @foreground;
alternate-normal-background: rgba ( 45, 48, 59, 1 % );
red: rgba ( 220, 50, 47, 100 % );
selected-urgent-foreground: rgba ( 249, 249, 249, 100 % );
blue: rgba ( 38, 139, 210, 100 % );
urgent-foreground: rgba ( 204, 102, 102, 100 % );
alternate-urgent-background: rgba ( 75, 81, 96, 90 % );
active-foreground: rgba ( 101, 172, 255, 100 % );
lightbg: rgba ( 238, 232, 213, 100 % );
selected-active-foreground: rgba ( 249, 249, 249, 100 % );
alternate-active-background: rgba ( 45, 48, 59, 88 % );
background: rgba ( 45, 48, 59, 88 % );
alternate-normal-foreground: @foreground;
normal-background: rgba ( 45, 48, 59, 1 % );
lightfg: rgba ( 88, 104, 117, 100 % );
selected-normal-background: rgba ( 24, 26, 32, 100 % );
border-color: rgba ( 255, 147, 5, 100 % );
spacing: 2;
separatorcolor: rgba ( 45, 48, 59, 1 % );
urgent-background: rgba ( 45, 48, 59, 15 % );
selected-urgent-background: rgba ( 165, 66, 66, 100 % );
alternate-urgent-foreground: @urgent-foreground;
background-color: rgba ( 0, 0, 0, 0 % );
alternate-active-foreground: @active-foreground;
active-background: rgba ( 29, 31, 33, 17 % );
selected-active-background: rgba ( 26, 28, 35, 100 % );
}

120
.config/rofi/webradio.rasi Normal file
View File

@@ -0,0 +1,120 @@
/*******************************************************
* ROFI configs i3 powermenu for EndeavourOS
* Maintainer: joekamprad <joekamprad@endeavouros.com>
*******************************************************/
configuration {
show-icons: false;
icon-theme: "Arc-X-D";
scroll-method: 0;
disable-history: false;
sidebar-mode: false;
}
@import "~/.config/rofi/arc_dark_transparent_colors.rasi"
window {
background-color: @background;
border: 2;
border-radius: 8px;
padding: 10;
transparency: "real";
width: 200px;
location: center;
y-offset: 30;
}
listview {
lines: 7;
columns: 1;
scrollbar: false;
}
element {
border: 0;
padding: 1px ;
}
element-text {
background-color: inherit;
text-color: inherit;
}
element.normal.normal {
background-color: @normal-background;
text-color: @normal-foreground;
}
element.normal.urgent {
background-color: @urgent-background;
text-color: @urgent-foreground;
}
element.normal.active {
background-color: @active-background;
text-color: @active-foreground;
}
element.selected.normal {
background-color: @selected-normal-background;
text-color: @selected-normal-foreground;
}
element.selected.urgent {
background-color: @selected-urgent-background;
text-color: @selected-urgent-foreground;
}
element.selected.active {
background-color: @selected-active-background;
text-color: @selected-active-foreground;
}
element.alternate.normal {
background-color: @alternate-normal-background;
text-color: @alternate-normal-foreground;
}
element.alternate.urgent {
background-color: @alternate-urgent-background;
text-color: @alternate-urgent-foreground;
}
element.alternate.active {
background-color: @alternate-active-background;
text-color: @alternate-active-foreground;
}
scrollbar {
width: 2px ;
border: 0;
handle-color: @scrollbar-foreground;
handle-width: 4px ;
padding: 0;
}
mode-switcher {
border: 2px 0px 0px ;
border-color: @separatorcolor;
}
button {
spacing: 0;
text-color: @normal-foreground;
}
button.selected {
background-color: @selected-normal-background;
text-color: @selected-normal-foreground;
}
inputbar {
spacing: 0;
text-color: @normal-foreground;
padding: 1px ;
}
case-indicator {
spacing: 0;
text-color: @normal-foreground;
}
entry {
spacing: 0;
text-color: @input-foreground;
placeholder: "";
}
prompt {
spacing: 0;
text-color: @prompt-foreground;
}
inputbar {
children: [ prompt,textbox-prompt-colon,entry,case-indicator ];
}
textbox-prompt-colon {
expand: false;
str: ":";
margin: 0px 0.3em 0em 0em ;
text-color: @prompt-foreground;
}

86
.config/rofi/webradio.sh Executable file
View File

@@ -0,0 +1,86 @@
#!/usr/bin/env bash
# __ __ _____
# / \ / \ / __ \
# / /\ \ / /\ \ | |__| | Manuel Prinz (MP)
# / / \ \/ / \ \ | ___/
# / / \__/ \ \| |
# /_/ \_\_|
#
# description: Webradio with rofi and mpv
# last change: 29.07.2023
# defining variables for radiostations
dasding="DASDING"
einslive="1LIVE"
einslivediggi="1LIVEdiggi"
sunshinelive="SUNSHINE_LIVE"
swr3="SWR3"
wdr2="WDR2"
stop="beenden"
# other variables
path_logo="/home/$USER/Nextcloud/webradio"
# Get answer from user via rofi
selected_option=$(echo "$dasding
$einslive
$einslivediggi
$sunshinelive
$swr3
$wdr2
$stop" | rofi -dmenu\
-i\
-p "Webradio"\
-config "~/.config/rofi/webradio.rasi"\
-line-margin 3\
-line-padding 10)
# Do something based on selected radiostation
if [ "$selected_option" == "$dasding" ]
then
killall mpv
mpv https://liveradio.swr.de/d9zadj3/dasding/ --input-ipc-server=/tmp/mpv &
echo DASDING dasding_logo.png > /tmp/radiostation
elif [ "$selected_option" == "$einslive" ]
then
killall mpv
mpv http://wdr-1live-live.icecast.wdr.de/wdr/1live/live/mp3/128/stream.mp3 --input-ipc-server=/tmp/mpv &
echo 1LIVE einslive_logo.jpg > /tmp/radiostation
elif [ "$selected_option" == "$einslivediggi" ]
then
killall mpv
mpv http://wdr-1live-diggi.icecast.wdr.de/wdr/1live/diggi/mp3/128/stream.mp3 --input-ipc-server=/tmp/mpv &
echo 1LIVE_DIGGI einslivediggi_logo.png > /tmp/radiostation
elif [ "$selected_option" == "$swr3" ]
then
killall mpv
mpv https://liveradio.swr.de/sw282p3/swr3/play.mp3 --input-ipc-server=/tmp/mpv &
echo SWR3 swr3_logo.jpg > /tmp/radiostation
elif [ "$selected_option" == "$sunshinelive" ]
then
killall mpv
mpv https://stream.sunshine-live.de/2000er/mp3-192/stream.sunshine-live.de --input-ipc-server=/tmp/mpv &
echo SUNSHINE_LIVE sunshinelive_logo.png > /tmp/radiostation
elif [ "$selected_option" == "$wdr2" ]
then
killall mpv
mpv http://wdr-wdr2-rheinland.icecast.wdr.de/wdr/wdr2/rheinland/mp3/128/stream.mp3 --input-ipc-server=/tmp/mpv &
echo WDR2 wdr2_logo.png > /tmp/radiostation
elif [ "$selected_option" == "$stop" ]
then
if test -e "/tmp/mpv"; then
# read station name and logo
radiostation=`cat /tmp/radiostation | awk '{print $1}'`
radiostation_logo=`cat /tmp/radiostation | awk '{print $2}'`
dunstify -t 5000 -a "Webradio: $radiostation" -I "$path_logo/$radiostation_logo" "wird beendet"
killall mpv
rm -f /tmp/mpv
rm -f /tmp/radiostation
rm -f /tmp/webradio_title
else
dunstify -t 5000 -a "Webradio:" "läuft nicht"
fi
else
dunstify -t 5000 -a "Webradio:" "keine Auswahl getroffen"
fi