You are not logged in.
Audacious - Now Playing
...
Cool! That's very cool! Thank you very much for that.
I have tried it out.
After different time intervals there is this curl error here:
conky -c ~/.conky/Audacious/audacious_conky &
[1] 6254
unklar@carbon:~$ conky: desktop window (0x49d) is root window
conky: window type - normal
conky: drawing to created window (0x3e00002)
conky: drawing to double buffer
conky: FOUND: wayland
conky: FOUND: x11
conky: FOUND: file
conky: FOUND: ncurses
conky: FOUND: console
conky: 'bunsenlabs' x11 session running 'BunsenLabs' desktop
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 0 0 0 0 0 0 0 --:--:-- 0:00:03 --:--:-- 0
curl: (92) HTTP/2 stream 1 was not closed cleanly: PROTOCOL_ERROR (err 1) <===========
conky: received SIGHUP, SIGINT, or SIGTERM to terminate. bye!
(whenever a special character/German umlaut is to be played ?)
Last edited by unklar (2025-05-18 07:32:40)
Offline
Thanks for the reply. Can anyone share me a conky config that I can start with. And also how do i install conky on Ubuntu 24.04.02.
Thanks
In a terminal:
sudo apt install conky-all
Should install conky.
A basic configuration file should install with it.
You must unlearn what you have learned.
-- yoda
Offline
@unklar
Yes, that could be the reason, but we already have a solution.
test1=$(audtool current-song-tuple-data artist | sed 's/\\u00e9/e/g' | sed 's/\\u00c4/A/g' | sed 's/\\u00e4/a/g' | sed 's/\\u00d6/O/g' | sed 's/\\u00f6/o/g' | sed 's/\\u00dc/U/g' | sed 's/\\u00fc/u/g' | sed 's/\\u1e9e/SS/g' | sed 's/\\u00df/ss/g')
test2=$(audtool current-song-tuple-data title | sed 's/\\u00e9/e/g' | sed 's/\\u00c4/A/g' | sed 's/\\u00e4/a/g' | sed 's/\\u00d6/O/g' | sed 's/\\u00f6/o/g' | sed 's/\\u00dc/U/g' | sed 's/\\u00fc/u/g' | sed 's/\\u1e9e/SS/g' | sed 's/\\u00df/ss/g')
That should remove all German umlauts.
If other umlauts appear (French or anything else), just take a screenshot so I can see the album_cover file (or use the code tag).
Enjoy.
Last edited by marens (2025-05-18 14:16:21)
If people would know how little brain is ruling the world, they would die of fear.
Offline
^yes, thanks!
I will test it.
Offline
Audacious - Now Playing (Stream URL)
I forgot that Audacious has an Open URL ... feature for listening to radio.
So I had to create an audacious-stream script in the same folder:
#!/bin/bash
test1=$(audtool current-song-tuple-data title | awk -F' - ' '{print $1}' | sed 's/"//g' | sed 's/é/e/g' | sed -e 's/^[ \t]*//' | sed 's/[ \t]*$//' | sed 's/[^[:print:]]//g' | sed 's/ / /g')
test2=$(audtool current-song-tuple-data title | awk -F' - ' '{print $2}' | sed 's/"//g' | sed 's/é/e/g' | sed -e 's/^[ \t]*//' | sed 's/[ \t]*$//' | sed 's/[^[:print:]]//g' | sed 's/ / /g')
if [[ "$test1" == "$(sed -n '1p' $HOME/.conky/Audacious/album_cover)" && "$test2" == "$(sed -n '2p' $HOME/.conky/Audacious/album_cover)" ]]; then
exit 0
fi
echo $test1 > $HOME/.conky/Audacious/album_cover
echo $test2 >> $HOME/.conky/Audacious/album_cover
if [[ "$test1" == "" && "$test2" == "" ]]; then
cp $HOME/.conky/Audacious/headphone.png $HOME/.conky/Audacious/album_art.png
else
artist=$(sed -n '1p' $HOME/.conky/Audacious/album_cover | sed 's/ /%20/g' | sed -e 's/$/%20-&/' | tr '[A-Z]' '[a-z]')
title=$(sed -n '2p' $HOME/.conky/Audacious/album_cover | sed 's/ /%20/g' | sed -e 's/$/\&size=medium&/' | sed 's/^/%20&/' | tr '[A-Z]' '[a-z]')
curl -H 'User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:80.0) Gecko/20100101 Firefox/80.0' -o $HOME/.conky/Audacious/image "https://aaaas.deno.dev?query=$artist$title"
album_art=$(sed -n '1p' $HOME/.conky/Audacious/image | sed 's/{"image":"//' | sed 's/"}//')
if [[ "$album_art" == "" ]]; then
cp $HOME/.conky/Audacious/not_available.png $HOME/.conky/Audacious/album_art.png
else
curl -H 'User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:80.0) Gecko/20100101 Firefox/80.0' -o $HOME/.conky/Audacious/album_art.png "$album_art"
convert $HOME/.conky/Audacious/album_art.png $HOME/.conky/Audacious/album_art.png
> $HOME/.conky/Audacious/image
fi
fi
#### Disable conky when turn off Audacious
test3=$(ps -A | grep audacious)
if [[ "$test3" == "" ]]; then
audacious_conky=$(pgrep -a conky | awk '/Audacious-stream-conky/{print $1}')
kill -SIGKILL $audacious_conky
fi
Note *
Make the script executable
I also added Audacious-stream-conky:
${texeci 10 bash $HOME/.conky/Audacious/audacious-stream}\
${image $HOME/.conky/Audacious/album_art.png -p 0,0 -s 128x128}
@unklar
test1=$(audtool current-song-tuple-data title | awk -F' - ' '{print $1}' | sed 's/\\u00e9/e/g' | sed 's/\\u00c4/A/g' | sed 's/\\u00e4/a/g' | sed 's/\\u00d6/O/g' | sed 's/\\u00f6/o/g' | sed 's/\\u00dc/U/g' | sed 's/\\u00fc/u/g' | sed 's/\\u1e9e/SS/g' | sed 's/\\u00df/ss/g')
test2=$(audtool current-song-tuple-data title | awk -F' - ' '{print $2}' | sed 's/\\u00e9/e/g' | sed 's/\\u00c4/A/g' | sed 's/\\u00e4/a/g' | sed 's/\\u00d6/O/g' | sed 's/\\u00f6/o/g' | sed 's/\\u00dc/U/g' | sed 's/\\u00fc/u/g' | sed 's/\\u1e9e/SS/g' | sed 's/\\u00df/ss/g')
EDIT
By the way, the script from @TBG specifically about this radio stream (if it helps you. It's broken though).
...I have always used it with 'audacious'.
Now you can try Radio Swiss Pop again with the Audacious (and audacious-stream script).
Last edited by marens (2025-06-10 00:55:19)
If people would know how little brain is ruling the world, they would die of fear.
Offline
Offline
Audacious - Now Playing (Skins)
You might want to change the look of Audacious.
This is a collection of audacious skins. Most skins have been repacked and modified to work with newer versions of audacious.
https://github.com/ehaupt/audacious-skins
1) Click on the Code button. > Download ZIP
2) Right click on ~/Downloads/audacious-skins-master.zip > Extract Here
3) Open ~/Downloads/audacious-skins-master folder and Copy the Skins subfolder
4) Create ~/.local/share/audacious folder (if it doesn't exist)
5) Open the audacious folder and the Paste Skins subfolder inside
Done.
Then:
Start Audacious > Settings > Winamp Classic Interface > Select style (theme) in the General Tab.
I like Winamp5:
This is what my Audacious-conky looks like with the new Audacious skin:
Enjoy!
Note *
If you have problems with the style (theme), just close Audacious and delete the folder ~/.config/audacious.
This will return you to the default settings.
EDIT
Fixed typo.
Last edited by marens (2025-05-23 16:34:40)
If people would know how little brain is ruling the world, they would die of fear.
Offline
Audacious - Now Playing (Skins)
Winamp5 skin looks good, but I changed the equalizer color to orange and the sharpness of the letters in the playlist for the current song.
It's easier to read.
I created a new style (theme) Winamp_EQ_SM which is of course based on the previous one.
If you like it, download the Winamp_EQ_SM.wsz skin here and copy/paste it into the ~/.local/share/audacious/Skins folder:
https://workupload.com/file/LAz48kwuLtV
EDIT
I continued working on the equalizer and made a red/blue version.
I think it looks a little better now:
If you like this, delete the old one and download the new Winamp_EQ_SM skin here:
https://workupload.com/file/znLf9erVZV8
Last edited by marens (2025-05-28 23:52:20)
If people would know how little brain is ruling the world, they would die of fear.
Offline
This is about a Conky(seamod) modified by S11 from 2012.
Its configuration file was converted to syntax 1.10 and tested on Wayland/labwc.
Unfortunately, it stubbornly refused to display the rings.
Conky
apt policy conky-all
conky-all:
Installiert: 1.22.1-1
Installationskandidat: 1.22.1-1
Versionstabelle:
*** 1.22.1-1 500
500 https://deb.debian.org/debian unstable/main amd64 Packages
100 /var/lib/dpkg/status
on the left how it should look and on the right the result
The terminal did not display any errors. Finally, the debug mode was tried “- DD”
conky -c ~/.conky/conky8/s11seamod10 -DD &
[1] 82394
unklarer@T500:~$ DEBUG(0) [./src/conky.cc:1982]: reading contents from config file '/home/unklarer/.conky/conky8/s11seamod10'
DEBUG(0) [./src/output/x11.cc:247]: enter init_x11()
DEBUG(0) [./src/output/x11.cc:368]: Fixed xinerama area to: 0 0 1680 1050
DEBUG(0) [./src/output/x11.cc:291]: leave init_x11()
DEBUG(0) [./src/output/x11.cc:486]: enter x11_init_window()
DEBUG(0) [./src/output/x11.cc:368]: Fixed xinerama area to: 0 0 1680 1050
conky: desktop window (0xfa) is root window
DEBUG(0) [./src/output/x11.cc:463]: Found ARGB Visual
conky: window type - override
conky: drawing to created window (0x400002)
DEBUG(0) [./src/output/x11.cc:902]: leave x11_init_window()
conky: drawing to double buffer
DEBUG(1) [./src/core.cc:2109]: no templates to replace
DEBUG(1) [./src/core.cc:734]: Adding $cpugraph for CPU 0
conky: invalid num arg for top. Must be between 1 and 10.
conky: forked to background, pid is 82403
DEBUG(0) [./src/output/display-output.cc:39]: HTTP display output disabled. Enable by recompiling with 'BUILD_HTTP' flag enabled.
conky: FOUND: wayland
conky: FOUND: x11
conky: FOUND: file
conky: FOUND: ncurses
conky: FOUND: console
DEBUG(1) [./src/output/display-output.cc:101]: Testing display output 'wayland'...
DEBUG(1) [./src/output/display-wayland.cc:250]: Wayland display output 'wayland' enabled in config.
DEBUG(1) [./src/output/display-output.cc:103]: Detected display output 'wayland'...
DEBUG(1) [./src/lua/fonts.cc:64]: setting up fonts
DEBUG(1) [./src/lua/fonts.cc:84]: loading fonts
DEBUG(0) [./src/output/display-output.cc:111]: Initialized display output 'wayland'...
DEBUG(1) [./src/output/display-output.cc:101]: Testing display output 'x11'...
DEBUG(1) [./src/output/display-x11.cc:233]: Display output 'x11' enabled in config.
DEBUG(1) [./src/output/display-output.cc:103]: Detected display output 'x11'...
DEBUG(1) [./src/output/display-output.cc:101]: Testing display output 'file'...
DEBUG(1) [./src/output/display-output.cc:101]: Testing display output 'ncurses'...
DEBUG(1) [./src/output/display-output.cc:101]: Testing display output 'console'...
conky: '(null)' wayland session running 'labwc:wlroots' desktop
On GitHup the error message
HTTP display output disabled. Enable by recompiling with 'BUILD_HTTP' flag enabled.
is interpreted as conky calling x11, instead of wayland and it concerned plain text conky's which were not displayed. I couldn't find anything useful from lua and the rings on wayland.
While rummaging in the archive of the hard disk I found this Conky(clockmod-2014) from @wim66, which worked promptly.
After studying these configurations, a loader.lua and the conky_clock_rings() configuration used were added to the 'seamod-conky' files.
After a few tries (I have no idea about lua ), I finally had the BINGO experience.
I would be happy if someone could test the configuration on wayland. Especially the fact that I have to comment out the variable
-- out_to_wayland = true,
under labwc, because otherwise the Conky's will NOT appear. Thank you very much!
seamod-conkyrc
conky.config = {
-- conky -c /media/5/conky/conky-manager/themes1.2/ConkySeamod/config/conky_seamod &
-- pkill -xf "conky -c /media/5/conky/conky-manager/themes1.2/ConkySeamod/config/conky_seamod" &
-- tweaked by Sector11 - 11 Apr 2014
--==============================================================================
-- conkyrc_seamod
-- Date : 05/02/2012
-- Author : SeaJey
-- Version : v0.1
-- License : Distributed under the terms of GNU GPL version 2 or later
-- This version is a modification of conkyrc_lunatico which is modification of conkyrc_orange
-- conkyrc_orange: http://gnome-look.org/content/show.php?content=137503&forumpage=0
-- conkyrc_lunatico: http://gnome-look.org/content/show.php?content=142884
--==============================================================================
background = true,
update_interval = 1,
cpu_avg_samples = 2,--1
net_avg_samples = 2,
--temperature_unit celsius
double_buffer = true,
no_buffers = true,
text_buffer_size = 2048,
gap_x = 30,
gap_y = 90,
minimum_width = 310, minimum_height = 900,
maximum_width = 310,
--out_to_wayland = true,
--out_to_x = false,
own_window = true,
own_window_type = 'override', --normal',
own_window_transparent = true,
own_window_class = 'Conky',
own_window_hints = 'undecorated', --skip_taskbar,skip_pager,below',
own_window_argb_visual = true,
own_window_argb_value = 0,
--own_window_colour gray
border_inner_margin = 0,
border_outer_margin = 0,
alignment = 'top_right',
draw_shades = true,
draw_outline = false,
draw_borders = false,
draw_graph_borders = false,
override_utf8_locale = true,
use_xft = true,
--# xftfont caviar dreams:size=10 ## <<-- does not use this
font = 'Share-TechMono:size=10',--# change to this and eliminate a ton of font calls.
xftalpha = 0.5,
uppercase = false,
-- Defining colors
default_color = '#FFFFFF',
-- Shades of Gray
color1 = '#DDDDDD',
color2 = '#AAAAAA',
color3 = '#888888',
color4 = '#FFD700',--00BFFF #DeepSkyBlue ##
-- Orange Green
color5 = '#EF5A29',--77B753
-- Loading lua script for drawning rings
lua_load = '~/.conky/conky8/scripts/loader.lua',
lua_draw_hook_pre = 'loader_lua',
};
conky.text = [[
${font Share-TechMono:bold:size=10}${color4}SYSTEM${font} ${hr 2}
${goto 15}${font}${color1}${kernel}
${goto 15}${color5}${nodename}
${goto 15}${color1}${uptime}${alignr}${color4}Boot: ${color1}${execi 86400 who -b | cut -c23-}
${font Share-TechMono:bold:size=10}${goto 130}${cpugraph 75,175 666666 666666}${goto 85}${voffset -5}${color5}CPU
# Showing TOP 5 CPU-consumers
${goto 105}${font}${color4}${top name 1}${alignr}${top cpu 1}%
${goto 105}${color1}${top name 2}${alignr}${top cpu 2}%
${goto 105}${color2}${top name 3}${alignr}${top cpu 3}%
#${goto 105}${color3}${top name 4}${alignr}${top cpu 4}% #4
#${goto 105}${color3}${top name 5}${alignr}${top cpu 5}%${font Share-TechMono:bold:size=40} #5
#Showing memory part with TOP 5
${goto 85}${font Share-TechMono:bold:size=10}${color5}MEM
${goto 105}${font Share-TechMono:size=10}${color4}${top_mem name 1}${alignr}${top_mem mem 1}%
${goto 105}${color1}${top_mem name 2}${alignr}${top_mem mem 2}%
${goto 105}${color2}${top_mem name 3}${alignr}${top_mem mem 3}%
${goto 105}${color3}${top_mem name 4}${alignr}${top_mem mem 4}%
${goto 105}${color3}${top_mem name 4}${alignr}${top_mem mem 5}%
# Showing disk partitions: root, home and Data
${alignr}${diskiograph 86,175 666666 666666}
${font Share-TechMono:bold:size=10}${goto 85}${color5}DISKS${color1}
${voffset -5}${goto 113}${font Share-TechMono:size=8}Free: ${fs_free /}\
${alignr}Used: ${fs_used /}
${goto 113}Free: ${fs_free /media/DATEN}\
${alignr}Used: ${fs_used /home/unklarer}
${font Share-TechMono:bold:size=40}
# Network data (my desktop have only LAN). ETHERNET ring is mostly useless but looks pretty, main info is in the graphs
${alignr}${voffset -12}${upspeedgraph wlan0 80,175 4B1B0C DAA520 100 -l}${font Share-TechMono:size=8}
${goto 115}${voffset -40}${color2}${upspeed wlan0}${goto 200}/ ${totalup}
${goto 115}${color2}${downspeed wlan0}${goto 200}/ ${totaldown}
${alignr}${downspeedgraph wlan0 40,175 324D23 808000 100 -l}
${goto 90}${voffset -110}${font Share-TechMono:bold:size=10}${color5}NET${voffset 90}
#${color4}${hr 2}
]];
loader.lua
function conky_loader_lua()
usrhome = os.getenv("HOME")
dofile (usrhome .."/.conky/conky8/scripts/seamod_rings.lua")
-- dofile (usrhome .."/.conky/clockmod/1_Lua_Clockmod/scripts/clock1.lua")
-- dofile (usrhome .."/.conky/clockmod/1_Lua_Clockmod/scripts/marks1.lua")
conky_clock_rings()
conky_main()
end
seamod_rings.lua
--==============================================================================
-- seamod_rings.lua
--
-- Date : 05/02/2012
-- Author : SeaJey
-- Version : v0.1
-- License : Distributed under the terms of GNU GPL version 2 or later
--
-- This version is a modification of lunatico_rings.lua wich is modification of conky_orange.lua
--
-- conky_orange.lua: http://gnome-look.org/content/show.php?content=137503&forumpage=0
-- lunatico_rings.lua: http://gnome-look.org/content/show.php?content=142884
--==============================================================================
require 'cairo'
require 'cairo_xlib'
--require 'rings'
--------------------------------------------------------------------------------
-- gauge DATA
gauge = {
{
name='cpu', arg='cpu1', max_value=100,
x=70, y=150,
graph_radius=54,
graph_thickness=5,
graph_start_angle=180,
graph_unit_angle=2.7, graph_unit_thickness=2.7,
graph_bg_colour=0xffffff, graph_bg_alpha=0.1,
graph_fg_colour=0xFFFFFF, graph_fg_alpha=0.3,
hand_fg_colour=0xFFD700, hand_fg_alpha=1.0,
txt_radius=64,
txt_weight=0, txt_size=9.0,
txt_fg_colour=0xFFD700, txt_fg_alpha=1.0,
graduation_radius=28,
graduation_thickness=0, graduation_mark_thickness=1,
graduation_unit_angle=27,
graduation_fg_colour=0xFFFFFF, graduation_fg_alpha=0.3,
caption='',
caption_weight=1, caption_size=9.0,
caption_fg_colour=0xFFFFFF, caption_fg_alpha=0.3,
},
{
name='cpu', arg='cpu1', max_value=100,
x=70, y=150,
graph_radius=48,
graph_thickness=5,
graph_start_angle=180,
graph_unit_angle=2.7, graph_unit_thickness=2.7,
graph_bg_colour=0xffffff, graph_bg_alpha=0.1,
graph_fg_colour=0xFFFFFF, graph_fg_alpha=0.3,
hand_fg_colour=0xFFD700, hand_fg_alpha=1.0,
txt_radius=40,
txt_weight=0, txt_size=9.0,
txt_fg_colour=0xFFD700, txt_fg_alpha=1.0,
graduation_radius=28,
graduation_thickness=0, graduation_mark_thickness=1,
graduation_unit_angle=27,
graduation_fg_colour=0xFFFFFF, graduation_fg_alpha=0.3,
caption='',
caption_weight=1, caption_size=9.0,
caption_fg_colour=0xFFFFFF, caption_fg_alpha=0.3,
},
{
name='cpu', arg='cpu2', max_value=100,
x=70, y=150,
graph_radius=20,
graph_thickness=5,
graph_start_angle=180,
graph_unit_angle=2.7, graph_unit_thickness=2.7,
graph_bg_colour=0xffffff, graph_bg_alpha=0.1,
graph_fg_colour=0xFFFFFF, graph_fg_alpha=0.3,
hand_fg_colour=0xFFD700, hand_fg_alpha=1.0,
txt_radius=30,
txt_weight=0, txt_size=9.0,
txt_fg_colour=0xFFD700, txt_fg_alpha=1.0,
graduation_radius=28,
graduation_thickness=0, graduation_mark_thickness=1,
graduation_unit_angle=27,
graduation_fg_colour=0xFFFFFF, graduation_fg_alpha=0.3,
caption='',
caption_weight=1, caption_size=9.0,
caption_fg_colour=0xFFFFFF, caption_fg_alpha=0.3,
},
{
name='cpu', arg='cpu2', max_value=100,
x=70, y=150,
graph_radius=14,
graph_thickness=5,
graph_start_angle=180,
graph_unit_angle=2.7, graph_unit_thickness=2.7,
graph_bg_colour=0xffffff, graph_bg_alpha=0.1,
graph_fg_colour=0xFFFFFF, graph_fg_alpha=0.3,
hand_fg_colour=0xFFD700, hand_fg_alpha=1.0,
txt_radius=4,
txt_weight=0, txt_size=9.0,
txt_fg_colour=0xFFD700, txt_fg_alpha=1.0,
graduation_radius=28,
graduation_thickness=0, graduation_mark_thickness=1,
graduation_unit_angle=27,
graduation_fg_colour=0xFFFFFF, graduation_fg_alpha=0.3,
caption='',
caption_weight=1, caption_size=9.0,
caption_fg_colour=0xFFFFFF, caption_fg_alpha=0.3,
},
{
name='memperc', arg='', max_value=100,
x=70, y=300,
graph_radius=54,
graph_thickness=10,
graph_start_angle=180,
graph_unit_angle=2.7, graph_unit_thickness=2.7,
graph_bg_colour=0xffffff, graph_bg_alpha=0.1,
graph_fg_colour=0xFFFFFF, graph_fg_alpha=0.3,
hand_fg_colour=0xFFD700, hand_fg_alpha=1.0,
txt_radius=42,
txt_weight=0, txt_size=9.0,
txt_fg_colour=0xFFD700, txt_fg_alpha=1.0,
graduation_radius=23,
graduation_thickness=0, graduation_mark_thickness=2,
graduation_unit_angle=27,
graduation_fg_colour=0xFFFFFF, graduation_fg_alpha=0.5,
caption='',
caption_weight=1, caption_size=10.0,
caption_fg_colour=0xFFFFFF, caption_fg_alpha=0.3,
},
{
name='fs_used_perc', arg='/home/unklarer', max_value=100,
x=70, y=470,
graph_radius=54,
graph_thickness=7,
graph_start_angle=180,
graph_unit_angle=2.7, graph_unit_thickness=2.7,
graph_bg_colour=0xffffff, graph_bg_alpha=0.1,
graph_fg_colour=0xFFFFFF, graph_fg_alpha=0.3,
hand_fg_colour=0xFFD700, hand_fg_alpha=1.0,
txt_radius=64,
txt_weight=0, txt_size=9.0,
txt_fg_colour=0xFFD700, txt_fg_alpha=1.0,
graduation_radius=23,
graduation_thickness=0, graduation_mark_thickness=2,
graduation_unit_angle=27,
graduation_fg_colour=0xFFFFFF, graduation_fg_alpha=0.3,
caption='home',
caption_weight=1, caption_size=12.0,
caption_fg_colour=0xFFFFFF, caption_fg_alpha=0.5,
},
{
name='fs_used_perc', arg='/media/DATEN', max_value=100,
x=70, y=470,
graph_radius=42,
graph_thickness=7,
graph_start_angle=180,
graph_unit_angle=2.7, graph_unit_thickness=2.7,
graph_bg_colour=0xffffff, graph_bg_alpha=0.1,
graph_fg_colour=0xFFFFFF, graph_fg_alpha=0.3,
hand_fg_colour=0xFFD700, hand_fg_alpha=1.0,
txt_radius=32,
txt_weight=0, txt_size=9.0,
txt_fg_colour=0xFFD700, txt_fg_alpha=1.0,
graduation_radius=23,
graduation_thickness=0, graduation_mark_thickness=2,
graduation_unit_angle=27,
graduation_fg_colour=0xFFFFFF, graduation_fg_alpha=0.3,
caption='DATEN',
caption_weight=1, caption_size=12.0,
caption_fg_colour=0xFFFFFF, caption_fg_alpha=0.5,
},
{
name='fs_used_perc', arg='/', max_value=100,
x=70, y=470,
graph_radius=30,
graph_thickness=7,
graph_start_angle=180,
graph_unit_angle=2.7, graph_unit_thickness=2.7,
graph_bg_colour=0xffffff, graph_bg_alpha=0.1,
graph_fg_colour=0xFFFFFF, graph_fg_alpha=0.3,
hand_fg_colour=0xFFD700, hand_fg_alpha=1.0,
txt_radius=22,
txt_weight=0, txt_size=9.0,
txt_fg_colour=0xFFD700, txt_fg_alpha=1.0,
graduation_radius=23,
graduation_thickness=0, graduation_mark_thickness=2,
graduation_unit_angle=27,
graduation_fg_colour=0xFFFFFF, graduation_fg_alpha=0.3,
caption='Root',
caption_weight=1, caption_size=12.0,
caption_fg_colour=0xFFFFFF, caption_fg_alpha=0.5,
},
{
name='downspeedf', arg='wlan0', max_value=100,
x=70, y=660,
graph_radius=54,
graph_thickness=7,
graph_start_angle=180,
graph_unit_angle=2.7, graph_unit_thickness=2.7,
graph_bg_colour=0xffffff, graph_bg_alpha=0.1,
graph_fg_colour=0xFFFFFF, graph_fg_alpha=0.3,
hand_fg_colour=0xFFD700, hand_fg_alpha=0,
txt_radius=64,
txt_weight=0, txt_size=9.0,
txt_fg_colour=0xFFD700, txt_fg_alpha=1.0,
graduation_radius=28,
graduation_thickness=0, graduation_mark_thickness=1,
graduation_unit_angle=27,
graduation_fg_colour=0xFFFFFF, graduation_fg_alpha=0.3,
caption='Down',
caption_weight=1, caption_size=12.0,
caption_fg_colour=0xFFFFFF, caption_fg_alpha=0.5,
},
{
name='upspeedf', arg='wlan0', max_value=100,
x=70, y=660,
graph_radius=42,
graph_thickness=7,
graph_start_angle=180,
graph_unit_angle=2.7, graph_unit_thickness=2.7,
graph_bg_colour=0xffffff, graph_bg_alpha=0.1,
graph_fg_colour=0xFFFFFF, graph_fg_alpha=0.3,
hand_fg_colour=0xFFD700, hand_fg_alpha=0,
txt_radius=30,
txt_weight=0, txt_size=9.0,
txt_fg_colour=0xFFD700, txt_fg_alpha=1.0,
graduation_radius=28,
graduation_thickness=0, graduation_mark_thickness=1,
graduation_unit_angle=27,
graduation_fg_colour=0xFFFFFF, graduation_fg_alpha=0.3,
caption='Up',
caption_weight=1, caption_size=12.0,
caption_fg_colour=0xFFFFFF, caption_fg_alpha=0.5,
},
}
-------------------------------------------------------------------------------
-- rgb_to_r_g_b
-- converts color in hexa to decimal
--
function rgb_to_r_g_b(colour, alpha)
return ((colour / 0x10000) % 0x100) / 255., ((colour / 0x100) % 0x100) / 255., (colour % 0x100) / 255., alpha
end
-------------------------------------------------------------------------------
-- angle_to_position
-- convert degree to rad and rotate (0 degree is top/north)
--
function angle_to_position(start_angle, current_angle)
local pos = current_angle + start_angle
return ( ( pos * (2 * math.pi / 360) ) - (math.pi / 2) )
end
-------------------------------------------------------------------------------
-- draw_gauge_ring
-- displays gauges
--
function draw_gauge_ring(display, data, value)
local max_value = data['max_value']
local x, y = data['x'], data['y']
local graph_radius = data['graph_radius']
local graph_thickness, graph_unit_thickness = data['graph_thickness'], data['graph_unit_thickness']
local graph_start_angle = data['graph_start_angle']
local graph_unit_angle = data['graph_unit_angle']
local graph_bg_colour, graph_bg_alpha = data['graph_bg_colour'], data['graph_bg_alpha']
local graph_fg_colour, graph_fg_alpha = data['graph_fg_colour'], data['graph_fg_alpha']
local hand_fg_colour, hand_fg_alpha = data['hand_fg_colour'], data['hand_fg_alpha']
local graph_end_angle = (max_value * graph_unit_angle) % 360
-- background ring
cairo_arc(display, x, y, graph_radius, angle_to_position(graph_start_angle, 0), angle_to_position(graph_start_angle, graph_end_angle))
cairo_set_source_rgba(display, rgb_to_r_g_b(graph_bg_colour, graph_bg_alpha))
cairo_set_line_width(display, graph_thickness)
cairo_stroke(display)
-- arc of value
local val = value % (max_value + 1)
local start_arc = 0
local stop_arc = 0
local i = 1
while i <= val do
start_arc = (graph_unit_angle * i) - graph_unit_thickness
stop_arc = (graph_unit_angle * i)
cairo_arc(display, x, y, graph_radius, angle_to_position(graph_start_angle, start_arc), angle_to_position(graph_start_angle, stop_arc))
cairo_set_source_rgba(display, rgb_to_r_g_b(graph_fg_colour, graph_fg_alpha))
cairo_stroke(display)
i = i + 1
end
local angle = start_arc
-- hand
start_arc = (graph_unit_angle * val) - (graph_unit_thickness * 2)
stop_arc = (graph_unit_angle * val)
cairo_arc(display, x, y, graph_radius, angle_to_position(graph_start_angle, start_arc), angle_to_position(graph_start_angle, stop_arc))
cairo_set_source_rgba(display, rgb_to_r_g_b(hand_fg_colour, hand_fg_alpha))
cairo_stroke(display)
-- graduations marks
local graduation_radius = data['graduation_radius']
local graduation_thickness, graduation_mark_thickness = data['graduation_thickness'], data['graduation_mark_thickness']
local graduation_unit_angle = data['graduation_unit_angle']
local graduation_fg_colour, graduation_fg_alpha = data['graduation_fg_colour'], data['graduation_fg_alpha']
if graduation_radius > 0 and graduation_thickness > 0 and graduation_unit_angle > 0 then
local nb_graduation = graph_end_angle / graduation_unit_angle
local i = 0
while i < nb_graduation do
cairo_set_line_width(display, graduation_thickness)
start_arc = (graduation_unit_angle * i) - (graduation_mark_thickness / 2)
stop_arc = (graduation_unit_angle * i) + (graduation_mark_thickness / 2)
cairo_arc(display, x, y, graduation_radius, angle_to_position(graph_start_angle, start_arc), angle_to_position(graph_start_angle, stop_arc))
cairo_set_source_rgba(display,rgb_to_r_g_b(graduation_fg_colour,graduation_fg_alpha))
cairo_stroke(display)
cairo_set_line_width(display, graph_thickness)
i = i + 1
end
end
-- text
local txt_radius = data['txt_radius']
local txt_weight, txt_size = data['txt_weight'], data['txt_size']
local txt_fg_colour, txt_fg_alpha = data['txt_fg_colour'], data['txt_fg_alpha']
local movex = txt_radius * math.cos(angle_to_position(graph_start_angle, angle))
local movey = txt_radius * math.sin(angle_to_position(graph_start_angle, angle))
cairo_select_font_face (display, "Share-TechMono", CAIRO_FONT_SLANT_NORMAL, txt_weight)
cairo_set_font_size (display, txt_size)
cairo_set_source_rgba (display, rgb_to_r_g_b(txt_fg_colour, txt_fg_alpha))
cairo_move_to (display, x + movex - (txt_size / 2), y + movey + 3)
cairo_show_text (display, value)
cairo_stroke (display)
-- caption
local caption = data['caption']
local caption_weight, caption_size = data['caption_weight'], data['caption_size']
local caption_fg_colour, caption_fg_alpha = data['caption_fg_colour'], data['caption_fg_alpha']
local tox = graph_radius * (math.cos((graph_start_angle * 2 * math.pi / 360)-(math.pi/2)))
local toy = graph_radius * (math.sin((graph_start_angle * 2 * math.pi / 360)-(math.pi/2)))
cairo_select_font_face (display, "Share-TechMono", CAIRO_FONT_SLANT_NORMAL, caption_weight);
cairo_set_font_size (display, caption_size)
cairo_set_source_rgba (display, rgb_to_r_g_b(caption_fg_colour, caption_fg_alpha))
cairo_move_to (display, x + tox + 5, y + toy + 1)
-- bad hack but not enough time !
if graph_start_angle < 105 then
cairo_move_to (display, x + tox - 30, y + toy + 1)
end
cairo_show_text (display, caption)
cairo_stroke (display)
end
-------------------------------------------------------------------------------
-- go_gauge_rings
-- loads data and displays gauges
--
function go_gauge_rings(display)
local function load_gauge_rings(display, data)
local str, value = '', 0
str = string.format('${%s %s}',data['name'], data['arg'])
str = conky_parse(str)
value = tonumber(str)
draw_gauge_ring(display, data, value)
end
for i in pairs(gauge) do
load_gauge_rings(display, gauge[i])
end
end
-------------------------------------------------------------------------------
function conky_clock_rings()
local function setup_rings(cr,pt)
local str=''
local value=0
str=string.format('${%s %s}',pt['name'],pt['arg'])
str=conky_parse(str)
value=tonumber(str)
if value == nil then value = 0 end
pct=value/pt['max']
draw_ring(cr,pct,pt)
end
-- MAIN
function conky_main()
if conky_window == nil then
return
end
local cs = cairo_xlib_surface_create(conky_window.display, conky_window.drawable, conky_window.visual, conky_window.width, conky_window.height)
local display = cairo_create(cs)
local updates = conky_parse('${updates}')
update_num = tonumber(updates)
if update_num > 5 then
go_gauge_rings(display)
end
cairo_surface_destroy(cs)
cairo_destroy(display)
end
end
Offline
Audacious - Now Playing ( Audacious-stream-conky )
Tonight I added some of my favorite radio stations to Audacious and created a new playlist.
During testing I saw the same bugs I had when listening to RadioTray-NG.
I replaced these lines ( ~/.conky/Audacious/audacious-stream script ):
test1=$(audtool current-song-tuple-data title | awk -F' - ' '{print $1}')
test2=$(audtool current-song-tuple-data title | awk -F' - ' '{print $2}')
With:
test1=$(audtool current-song-tuple-data title | awk -F' - ' '{print $1}' | sed 's/"//g' | sed 's/é/e/g' | sed -e 's/^[ \t]*//' | sed 's/[ \t]*$//' | sed 's/[^[:print:]]//g' | sed 's/ / /g')
test2=$(audtool current-song-tuple-data title | awk -F' - ' '{print $2}' | sed 's/"//g' | sed 's/é/e/g' | sed -e 's/^[ \t]*//' | sed 's/[ \t]*$//' | sed 's/[^[:print:]]//g' | sed 's/ / /g')
The script audacious-stream has been updated:
https://forums.bunsenlabs.org/viewtopic … 45#p143245
Majestic Jukebox Radio (Oldies)
Bill Haley and His Comets - I Got a Woman
Note *
The album covers are the same as when I listen to RadioTray-NG, but everything looks better with Audacious and the Winamp_EQ_SM skin.
If people would know how little brain is ruling the world, they would die of fear.
Offline
Audacious - Now Playing ( Audacious-stream-conky )
OK.
I played around a bit with Audacious-stream-conky and here's what I got when I ran it:
Nothing special, but when I turned on Audacious:
XRDS.fm Clarksdale, Mississippi
Anthony "Big A" Sherrod - Right on Time
This is my new Audacious-stream-conky:
${texeci 10 bash $HOME/.conky/Audacious/audacious-stream}\
${image $HOME/.conky/Audacious/album.png -p 0,0 -s 277x234}\
${image $HOME/.conky/Audacious/album_art.png -p 55,28 -s 160x160}
If someone is using my Winamp_EQ_SM skin and wants to try Conky, they will need the image album.png.
I made a few, and you can choose the one you like:
Note *
I'm in a serious dilemma now.
RadioTray-NG or Audacious when listening to the radio?
Last edited by marens (2025-06-12 06:44:20)
If people would know how little brain is ruling the world, they would die of fear.
Offline
Audacious - Now Playing ( Audacious-stream-conky )
Small change.
Scrollbar removed from album.png image.
Audacious-stream-conky:
${texeci 10 bash $HOME/.conky/Audacious/audacious-stream}\
${image $HOME/.conky/Audacious/album.png -p 0,0 -s 277x234}\
${image $HOME/.conky/Audacious/album_art.png -p 60,28 -s 160x160}
If you like it, you can download it here:
https://i.postimg.cc/PrGnyrcD/album.png
https://i.postimg.cc/wB4Sm6L7/album2.png
https://i.postimg.cc/BZKdjf6n/album3.png
https://i.postimg.cc/MpdLCWsd/album4.png
If people would know how little brain is ruling the world, they would die of fear.
Offline
Audacious - Now Playing ( Audacious-ffmpeg-conky )
We probably all have a lot of music we've recorded over time.
I haven't recorded anything in a long time, but I keep a few folders that mostly contain MP3 files.
That's my only connection to Windows (XP) and Radio Sure from about fifteen years ago.
As you can see, most of my MP3 files have an integrated image (album art), but some do not.
I decided to try extracting and implementing it in Conky.
I did a little research and tried ffmpeg:
$ sudo apt install ffmpeg
This is the result when there is album art inside the MP3 file:
Bobby "Blue" Bland - Stormy Monday
This is the result when there is no album art inside the MP3 file:
Charlie Sayles - Mississippi Saxophone (alternate)
If anyone is interested, this is my ~/.conky/Audacious/audacious-ffmpeg script:
#!/bin/bash
test1=$(audtool current-song-tuple-data artist)
test2=$(audtool current-song-tuple-data title)
if [[ "$test1" == "$(sed -n '1p' $HOME/.conky/Audacious/album_cover)" && "$test2" == "$(sed -n '2p' $HOME/.conky/Audacious/album_cover)" ]]; then
exit 0
fi
echo $test1 > $HOME/.conky/Audacious/album_cover
echo $test2 >> $HOME/.conky/Audacious/album_cover
if [[ "$test1" == "" && "$test2" == "" ]]; then
rm $HOME/.conky/Audacious/ffmpeg.png
cp $HOME/.conky/Audacious/headphone.png $HOME/.conky/Audacious/ffmpeg.png
else
album_art=$(audtool --current-song-filename)
log=$(ffmpeg -v info -i "$album_art" 2> $HOME/.conky/Audacious/log)
check=$(cat $HOME/.conky/Audacious/log | grep Video:)
if [[ "$check" == "" ]]; then
rm $HOME/.conky/Audacious/ffmpeg.png
cp $HOME/.conky/Audacious/not_available.png $HOME/.conky/Audacious/ffmpeg.png
else
rm $HOME/.conky/Audacious/ffmpeg.png
ffmpeg -v error -i "$album_art" -an -c:v copy $HOME/.conky/Audacious/ffmpeg.png
fi
fi
#### Disable conky when turn off Audacious
test3=$(ps -A | grep audacious)
if [[ "$test3" == "" ]]; then
audacious_conky=$(pgrep -a conky | awk '/Audacious-ffmpeg-conky/{print $1}')
kill -SIGKILL $audacious_conky
fi
Note *
Don't forget to make the script executable.
This is my ~/.conky/Audacious/Audacious-ffmpeg-conky:
${texeci 10 bash $HOME/.conky/Audacious/audacious-ffmpeg}\
${image $HOME/.conky/Audacious/album.png -p 0,0 -s 276x232}\
${image $HOME/.conky/Audacious/ffmpeg.png -p 60,28 -s 160x160}
Note *
The script should work with other extensions (instead of .mp3), but I can't test it.
It would be nice if someone could confirm.
Last edited by marens (2025-06-18 23:04:20)
If people would know how little brain is ruling the world, they would die of fear.
Offline
RadioTray-NG - Now Playing
It started exactly a year ago:
https://forums.bunsenlabs.org/viewtopic … 14#p135914
I think the radiotray-ng script takes radio listening to the next level.
For me, who loves listening to old (unknown to me) blues artists, it means a lot to be able to see them now.
Seeing album covers from 50/60 (or more) years ago and the creativity of people from that time is also an amazing experience.
Here are just a few (of many) examples:
Blues:
https://forums.bunsenlabs.org/viewtopic … 04#p138104
Country:
https://forums.bunsenlabs.org/viewtopic … 39#p136039
Classic Rock:
https://forums.bunsenlabs.org/viewtopic … 98#p138598
Oldies:
https://forums.bunsenlabs.org/viewtopic … 72#p140872
Classical:
https://forums.bunsenlabs.org/viewtopic … 23#p143923
Note *
You can find the latest version of the radiotray-ng script here:
https://forums.bunsenlabs.org/viewtopic … 38#p140138
Enjoy!
Last edited by marens (2025-07-09 00:52:20)
If people would know how little brain is ruling the world, they would die of fear.
Offline
Offline
^ You can check the actual brightness using the command:
$ cat /sys/class/backlight/*/actual_brightness
10
When the brightness is reduced:
$ cat /sys/class/backlight/*/actual_brightness
8
$ cat /sys/class/backlight/*/actual_brightness
4
If people would know how little brain is ruling the world, they would die of fear.
Offline
Re
cat /sys/class/backlight/*/actual_brightness
24000
24000 = 100%
here another
cat /sys/class/backlight/*/actual_brightness
9800
@+
Linuxmint 22.1 Xia xfce & mageia 9 XFCE on ssd hp pavilion g7
Xubuntu 18.04 lts & 24.04 lts on ASUS Rog STRIX
Offline
@marens a été un peu plus rapide...
Tu pourrais représenter cela avec cette ligne dans le Conky. Cependant, chez moi aussi, seule la “valeur actuelle” est affichée.
Je ne sais pas comment l'afficher dans la “barre”, si c'est d'abord via un fichier texte, ou, ...
Il me manque un peu le « film ».
${execi 60 cat /sys/class/backlight/acpi_video0/actual_brightness}${swapbar 10,250}
--------------------
@marens was a bit faster...
You could display it with this line in Conky. However, in my case only the ‘current value’ is displayed.
It is not clear to me now how to display this in the ‘bar’, whether first via a text file, or, ...
I'm missing the “movie”.
Last edited by unklar (2025-07-16 14:27:47)
Offline
Hallo
danke für deine Hilfe, Marrens und du, wie Marens, das Ergebnis eurer Bestellung ist eine Zahl zwischen 1 und 10.
Bei mir ist es 0 und 24000.
Also müsste man ein Skript erstellen, das die 24000 in einen Prozentsatz umwandelt und diesen dann in die Leiste einträgt.
------------------------------
Hello,
Thank you for your help, Marrens and you, like Marens, the result of your order is a number between 1 and 10.
For me, it is 0 and 24000.
So you would have to create a script that converts the 24000 into a percentage and then enters it in the bar.
@+
Linuxmint 22.1 Xia xfce & mageia 9 XFCE on ssd hp pavilion g7
Xubuntu 18.04 lts & 24.04 lts on ASUS Rog STRIX
Offline