32 комментария

avatar
Шрифты:
Montserrat Alternates
Comfortaa
ConkySymbols
0
avatar
а где сам файлик конфига коньков?
?
Всегда есть быстрое простое неправильное решение.
быстрые простые правильные (иногда) ответы здесь t.me/ManjaroRu
0
avatar
conky.config = {
--#############################################################
— Arch --:-- code and Design: Belyakov Igor aka OldHank
— oldhank4405@gmail.com
— Re-work By ZIZA
github.com/XZVB12/Conky-Preset
--#############################################################
--===Settings=================================================
use_xft = true,
font = «Montserrat Alternates:size=12",
xftalpha = 0.2,
text_buffer_size = 256,
--############################################################
background = false, — было true
own_window = true,
--own_window_type override
own_window_class = 'Conky',
own_window_type = 'normal', --desktop
own_window_transparent = true,
own_window_argb_visual = true,
own_window_argb_value = 0,
own_window_hints = 'undecorated,below,sticky,skip_taskbar,skip_pager',
double_buffer = true,
total_run_times = 0,
update_interval = 2,
— Minimum size of text area
minimum_width = 278, minimum_height = 0,
maximum_width = 278,
draw_shades = false,
draw_outline = false,
draw_borders = false,
draw_graph_borders = true,
stippled_borders = 0,
border_width = 3,
--====================================================
--Default colors and also border colors
default_color = '00c5ff',--22ff00 Смена цвета Голубой / Зелёный
color2= '22ff00',
color3='FF0000',
own_window_colour = '000000',
--====================================================
--Text alignment, other possible values are commented
alignment = 'top_right',
gap_x = 2,
gap_y = 0,
uppercase = false,
cpu_avg_samples = 2,
net_avg_samples = 2,
override_utf8_locale = true,
use_spacer = 'none',
--===Text=================================================
};

conky.text = [[
${alignc}${image $HOME/.conky/ARCH-V-3/img/Manjaro.png -p 4,4 -s 40x40}${alignc}${font Comfortaa:bold:size=24}$color2 ${voffset 10} SYSTEM${alignr}${font ConkySymbols:size=24}a
${alignc}${font Comfortaa:size=16} $color2${execi 108000 echo $(awk -F'=' '/^NAME=/ {print $2}' /etc/os-release | tr -d '"')} ${execi 108000 echo $(lsb_release -sr)}
${font Comfortaa:size=14}$color2${alignc}${kernel}${machine}
${voffset -10}${hr}
#$color2${alignc}${font ConkySymbols:size=24}a
${voffset -10}${color1}${font Montserrat Alternates:size=20}${font}Uptime: $color${alignr} ${uptime}
${color1}Hostname: $color${alignr} ${nodename}
${voffset -10}${hr}
#$color2${alignc}${font ConkySymbols:size=24}f
#${color1}${font Montserrat Alternates:size=20}${font}${voffset -6} CPU1: $color ${cpu cpu1}% ${alignr} ${cpubar cpu1 6,97}
${voffset -10}${color1}${font Montserrat Alternates:size=14}Load CPU: $color${alignr} ${cpu}% /$freq_g GHz
#=== CPU TEMP================================================================
${color1}CPU: $color${alignr}${exec sensors | grep "temp1' | awk 'NR==1{print $2}'}
#=== GPU TEMP ===============================================================
${color1}GPU: $color$alignr +${nvidia temp}°C
#=== Memory==================================================================
${voffset -10}${hr}
${voffset -10}${alignc}${color2}MEMORY ${alignc}${font ConkySymbols:size=14}j
${color1}${font Montserrat Alternates:size=14}RAM $color${alignr}$mem / $memmax
$color$memperc% ${membar 15}
#${color1}ОЗУ: $color$memperc% ${alignr} ${membar 6,97}
#${color1}${voffset -6} Всего ОЗУ: $color${alignr} $memmax
#${color1}${voffset -6} ОЗУ Использованно: $color${alignr} $mem
#${color1}${voffset -6} ОЗУ Свободно: $color$alignr $memeasyfree
#${voffset -6} Объём SWAP: ${alignr} $swapmax
#${voffset -6} Использованно SWAP: ${alignr} $swap
${color1}Free SWAP: $color${alignr} $swapfree
${color1}Used SWAP: $color$swapperc% ${alignr} ${swapbar 15,100}
#=== HDD Section =============================================================
${voffset -10}${hr}
${voffset -10}${alignc}${color2}HDD $color2${alignc}${font ConkySymbols:size=14}m
${color1}${font Montserrat Alternates:size=14}/root $color${alignr}${fs_used /}/${fs_size /}
${fs_bar 15 /}
${color1}/Data $color${alignr}${fs_used /run/media/alone/Data/}/${fs_size /run/media/alone/Data/}
${fs_bar 15 /run/media/alone/Data/}
${color1}I/O: $color ${diskio} ${alignr} ${diskiograph 15,150}
#=== Доделать =================================================================
${color1}SSD $color$alignr ${hddtemp /dev/sda}°C
${color1}HDD $color$alignr ${hddtemp /dev/sdb}°C
HDDtemp: ${execi 10 netcat localhost 7634 | cut --delimiter '|' --fields 4}°C
#=== Internet Section ============================================================
${voffset -10}${hr}
${voffset -10}${alignc}${color2} NETWORK ${alignc}${font ConkySymbols:size=14}g${color1}${font Montserrat Alternates:size=14}${alignc}${color } ${wireless_essid wlp3s0}
${color1}Down: $color${downspeed wlp3s0 } ${alignr} $color2${downspeedgraph wlp3s0 15,150 black black}
${color1}Up: $color${upspeed wlp3s0 } ${alignr} $color3${upspeedgraph wlp3s0 15,150 black black}
#${color1} Download: $color${alignr} ${totaldown wlp3s0}
#${color1} Upload: $color${alignr} ${totalup wlp3s0}
${color1}Local IP: $color${alignr} ${addr wlp3s0}
#${font} Публичный IP: ${alignr} ${execi 3600 wget -q -O — checkip.dyndns.org|sed -e "s/.*Current IP Address: //' -e 's/<.*$//'}
#${if_existing /proc/net/route enp1s0f0 } # Настройки WiFi
#=== Top Processes CPU ===========================================================
${voffset -10}${hr}
${voffset -10}${alignc}${color2}TOP LOAD CPU ${alignc}${font ConkySymbols:size=14}n
#$color2${alignc}${font ConkySymbols:size=24}n
${font Montserrat Alternates:size=10}NAME ${goto 140} PID${goto 180} %CPU %RAM $color
1.${offset 4}${top name 1} ${goto 130} ${top pid 1} ${goto 185} ${top cpu 1} ${goto 235} ${top mem 1}
2.${offset 4}${top name 2} ${goto 130} ${top pid 2} ${goto 185} ${top cpu 2} ${goto 235} ${top mem 2}
3.${offset 4}${top name 3} ${goto 130} ${top pid 3} ${goto 185} ${top cpu 3} ${goto 235} ${top mem 3}
4.${offset 4}${top name 4} ${goto 130} ${top pid 4} ${goto 185} ${top cpu 4} ${goto 235} ${top mem 4}
5.${offset 4}${top name 5} ${goto 130} ${top pid 5} ${goto 185} ${top cpu 5} ${goto 235} ${top mem 5}
6.${offset 4}${top name 6} ${goto 140} ${top pid 6} ${top cpu 6} ${top mem 6} ${voffset -5}
#=== Top processes memory =======================================================
${voffset -10}${hr}
#${font Montserrat Alternates:size=10} >>Топ процессов по ОЗУ<< ${font}
ИМЯ ${alignr} ${goto 197} PID %ОЗУ
1. ${top_mem name 1} ${goto 140} ${alignr} ${top_mem pid 1} ${alignr} ${top_mem mem 1}
${voffset -10}${alignc}${color2}${font Montserrat Alternates:size=14} WEATHER ${font}${alignc}${font ConkySymbols:size=14}h
${voffset -25}${font Montserrat Alternates:size=14}
${color1}Temperature: ${alignr}$color${execi 7200 curl -s 'http://www.yr.no/place/Russia/Novosibirsk/Novosibirsk/forecast.xml'|grep -Pom1 '(temp.*value=")\K[^"]*' }°C
${color1}Dawn: ${alignr}$color${execi 7200 curl -s 'http://www.yr.no/place/Russia/Novosibirsk/Novosibirsk/forecast.xml'|grep -Pom1 '(rise.*T0)\K[^"]*' }
${color1}Sunset: ${alignr}$color${execi 7200 curl -s 'http://www.yr.no/place/Russia/Novosibirsk/Novosibirsk/forecast.xml'|grep -Pom1 '(rise.*T)\K[^"]*' }
${color1}Wind: ${alignr}$color${execi 7200 curl -s 'http://www.yr.no/place/Russia/Novosibirsk/Novosibirsk/forecast.xml'|grep -Pom1 '(windDirection.*code=")\K[^"]*' } ${execi 7200 curl -s 'http://www.yr.no/place/Russia/Novosibirsk/Novosibirsk/forecast.xml'|grep -Pom1 '(windSpeed.*mps=")\K[^"]*' }mps
${color1}Weather: ${alignr}$color${execi 7200 curl -s 'http://www.yr.no/place/Russia/Novosibirsk/Novosibirsk/forecast.xml'|grep -Pom1 '(numberEx.*name=")\K[^"]*' }
${alignc}${image $HOME/.conky/ARCH-V-3/img/task-manager.png -p 32,20 -s 40×40}
]];
+1
avatar
ну здорово, все оказалось просто, город легко подставляется. у меня свои коньки, только погоду от тебя добавил и поправил на свой минималистичный «дизайн»
Последний раз редактировалось
?
Всегда есть быстрое простое неправильное решение.
быстрые простые правильные (иногда) ответы здесь t.me/ManjaroRu
+1
avatar
как ты подставил расскажи
0
avatar
вот в этой строке www.yr.no/place/Russia/Novosibirsk/Novosibirsk/forecast.xml заменил
на Krasnodar получил такую
www.yr.no/place/Russia/Krasnodar/Krasnodar/forecast.xml но мне интересно где ТС взял информацию о переменных в этом файле, которые надо грепать? предполагаю, что там еще много интересного
?
Всегда есть быстрое простое неправильное решение.
быстрые простые правильные (иногда) ответы здесь t.me/ManjaroRu
+1
avatar
как бы так чтобы выбрать свой город и просто взять xml чтоб не писать руками
в общем как создать xml своего города?))
Последний раз редактировалось
0
avatar
ты сам его не создашь, файл создан уже до тебя на ресурсе. в файле конфига коньков можно создать переменную и подставлять ее в адрес:

template0 = 'Krasnodar/Krasnodar', --Местоположение

${execi 7200 curl -s 'http://www.yr.no/place/Russia/${template0}/forecast.xml'|grep -Pom1 '(temp.*value=")\K[^"]*' } °C$
?
Всегда есть быстрое простое неправильное решение.
быстрые простые правильные (иногда) ответы здесь t.me/ManjaroRu
0
avatar
вообще конечно можно скачать сам файл на комп и обозвать его как тебе нравится в скрипте. но все-равно придется вбивать в команду скачивания нужный файл, и заботится о его периодическом обновлении
?
Всегда есть быстрое простое неправильное решение.
быстрые простые правильные (иногда) ответы здесь t.me/ManjaroRu
0
avatar
так как ТС категорично не отвечает, то пришлось покопаться самому. да там есть еще давление, почасовой прогноз (те же данные) и долгосрочный прогноз (те же данные). мне это неинтересно, видимо и ТС то же. закрываю обсуждение
?
Всегда есть быстрое простое неправильное решение.
быстрые простые правильные (иногда) ответы здесь t.me/ManjaroRu
0
avatar
Подскажи я в конфиге коньков заменил новосиб на свой город www.yr.no/place/Russia/Rostov Oblast/Donetsk/ и ниче не получилось, все по нулям(( можно ли все разжевать для тех кто на пронепоезде?))
0
avatar
привет, скинь свой конфиг коньков плиз, интересует секция по вайфай
0
avatar
если у меня спросил, стукнись в группу (по ссылке в подписи) я там выкладывал
Последний раз редактировалось
?
Всегда есть быстрое простое неправильное решение.
быстрые простые правильные (иногда) ответы здесь t.me/ManjaroRu
0
avatar
ещё надо под себя подстроить интерфейс сети, и город для погоды
0
avatar
откуда ты брал инфу по погоде? как нашел что грепать?
?
Всегда есть быстрое простое неправильное решение.
быстрые простые правильные (иногда) ответы здесь t.me/ManjaroRu
0
avatar
к сожалению, спешу сообщить, что этой возможностью радоваться осталось недолго retro.yr.no/place/russia/krasnodarskiy/krasnodar/data.html говорит, что летом ее прикроют и перейдут на новый формат
?
Всегда есть быстрое простое неправильное решение.
быстрые простые правильные (иногда) ответы здесь t.me/ManjaroRu
0
avatar
изменил погоду, спасибо berligostr
сделал температуру дисков: ${execi 5 hddtemp -d /dev/sd[a,b]} в верху файла, только надо сделать сначала:
sudo chmod a+s /usr/sbin/hddtemp
и поставить задержку на запуск conky ~15сек
и новый шрифт вверху Anurati
дя определения местоположения необходимо изменить в строках значения на свои:
'https://api.met.no/weatherapi/locationforecast/2.0/compact?lat=55&lon=82.9'
0
avatar
лето кончилось, а старый формат все еще работает, я на нем, новый мне не по душе подачей информации.
?
Всегда есть быстрое простое неправильное решение.
быстрые простые правильные (иногда) ответы здесь t.me/ManjaroRu
0
avatar
conky.config = {
--#############################################################
— Arch --:-- code and Design: Belyakov Igor aka OldHank
— oldhank4405@gmail.com
— Re-work By ZIZA
github.com/XZVB12/Conky-Preset
--#############################################################
--===Settings=================================================
use_xft = true,
font = «Montserrat Alternates:size=12",
xftalpha = 0.2,
text_buffer_size = 256,
--############################################################
background = false, — было true
own_window = true,
--own_window_type override
own_window_class = 'Conky',
own_window_type = 'normal', --desktop
own_window_transparent = true,
own_window_argb_visual = true,
own_window_argb_value = 0,
own_window_hints = 'undecorated,below,sticky,skip_taskbar,skip_pager',
double_buffer = true,
total_run_times = 0,
update_interval = 2,
— Minimum size of text area
minimum_width = 278, minimum_height = 0,
maximum_width = 278,
draw_shades = false,
draw_outline = false,
draw_borders = false,
draw_graph_borders = true,
stippled_borders = 0,
border_width = 3,
--====================================================
--Default colors and also border colors
default_color = '00c5ff',--22ff00 Смена цвета Голубой / Зелёный
color2= '22ff00',
color3='FF0000',
own_window_colour = '000000',
lat=55,
lon=82.9,
--====================================================
--Text alignment, other possible values are commented
alignment = 'top_right',
gap_x = 2,
gap_y = 0,
uppercase = false,
cpu_avg_samples = 2,
net_avg_samples = 2,
override_utf8_locale = true,
use_spacer = 'none',
--===Text=================================================
};

conky.text = [[
${execi 5 hddtemp -d /dev/sd[a,b]}
${voffset -10}${alignc}${image $HOME/.conky/ARCH-V-3/img/Manjaro.png -p 4,4 -s 40x40}${alignc}${font Anurati:bold:size=24}$color2 SYSTEM${alignr}${font ConkySymbols:size=24}a
${alignc}${font Comfortaa:size=16} $color2${execi 108000 echo $(awk -F'=' '/^NAME=/ {print $2}' /etc/os-release | tr -d '"')} ${execi 108000 echo $(lsb_release -sr)}
${font Comfortaa:size=14}$color2${alignc}${kernel}${machine}
${voffset -10}${hr}
#$color2${alignc}${font ConkySymbols:size=24}a
${voffset -10}${color1}${font Montserrat Alternates:size=20}${font}Uptime: $color${alignr} ${uptime}
${color1}Hostname: $color${alignr} ${nodename}
${voffset -10}${hr}
#$color2${alignc}${font ConkySymbols:size=24}f
#${color1}${font Montserrat Alternates:size=20}${font}${voffset -6} CPU1: $color ${cpu cpu1}% ${alignr} ${cpubar cpu1 6,97}
${voffset -10}${color1}${font Montserrat Alternates:size=14}Load CPU: $color${alignr} ${cpu}% /$freq_g GHz
#=== CPU TEMP================================================================
${color1}CPU: $color${alignr}${exec sensors | grep "temp1' | awk 'NR==1{print $2}'}
#=== GPU TEMP ===============================================================
${color1}GPU: $color$alignr +${nvidia temp}°C
#=== Memory==================================================================
${voffset -10}${hr}
${voffset -10}${alignc}${color2}MEMORY ${alignc}${font ConkySymbols:size=14}j
${color1}${font Montserrat Alternates:size=14}RAM $color${alignr}$mem / $memmax
$color$memperc% ${membar 15 07FF49 FF0707}
${color1}Free SWAP: $color${alignr} $swapfree
${color1}Used SWAP: $color$swapperc% ${alignr}${swapbar 15,100}
#=== HDD Section =============================================================
${voffset -10}${hr}
${voffset -10}${alignc}${color2}HDD $color2${alignc}${font ConkySymbols:size=14}m
${color1}${font Montserrat Alternates:size=14}/root $color${alignr}${fs_used /}/${fs_size /}
${fs_bar 15 /}
${color1}/Data $color${alignr}${fs_used /run/media/alone/Data/}/${fs_size /run/media/alone/Data/}
${fs_bar 15 /run/media/alone/Data/}
${color1}I/O: $color ${diskio} ${alignr} ${diskiograph 15,150}
#=== Доделать =================================================================
${color1}SSD $color$alignr ${hddtemp /dev/sda}°C
${color1}HDD $color$alignr ${hddtemp /dev/sdb}°C
HDDtemp: ${execi 10 netcat localhost 7634 | cut --delimiter '|' --fields 4}°C
#=== Internet Section ============================================================
${voffset -10}${hr}
${voffset -10}${alignc}${color2} NETWORK ${alignc}${font ConkySymbols:size=14}g${color1}${font Montserrat Alternates:size=14}${alignc}${color} ${wireless_essid wlp3s0} ${wireless_bitrate wlp3s0}
${color1}Down: $color${downspeed wlp3s0 } ${alignr} $color2${downspeedgraph wlp3s0 15,150 black black}
${color1}Up: $color${upspeed wlp3s0 } ${alignr} $color3${upspeedgraph wlp3s0 15,150 black black}
${color1}Local IP: $color${alignr} ${addr wlp3s0}
#=== Top Processes CPU ===========================================================
${voffset -10}${hr}
${voffset -10}${alignc}${color2}TOP LOAD CPU ${alignc}${font ConkySymbols:size=14}n
#$color2${alignc}${font ConkySymbols:size=24}n
${font Montserrat Alternates:size=10}NAME ${goto 140} PID${goto 180} %CPU %RAM $color
1.${offset 4}${top name 1} ${goto 130} ${top pid 1} ${goto 185} ${top cpu 1} ${goto 235} ${top mem 1}
#=== Top processes memory =======================================================
${voffset -10}${hr}
#${font Montserrat Alternates:size=10} >>Топ процессов по ОЗУ<< ${font}
ИМЯ ${alignr} ${goto 197} PID %ОЗУ
1. ${top_mem name 1} ${goto 140} ${alignr} ${top_mem pid 1} ${alignr} ${top_mem mem 1}
${voffset -10}${alignc}${color2}${font Montserrat Alternates:size=14} WEATHER ${font}${alignc}${font ConkySymbols:size=14}h
${voffset -25}${font Montserrat Alternates:size=14}
-------
${color1}Temperature: ${alignr}$color${execi 7200 curl -s 'https://api.met.no/weatherapi/locationforecast/2.0/compact?lat=55&lon=82.9'|json_pp|grep -Pom2 '(temperature" :)\K[^,]*'|grep -v 'celsius'}°C
${color1}Air Pressure: ${alignr}$color${execi 7200 curl -s 'https://api.met.no/weatherapi/locationforecast/2.0/compact?lat=55&lon=82.9'|json_pp|grep -Pom2 '(at_sea_level" :)\K[^,]*'|grep -v 'hPa'}hPa
${color1}Cloud: ${alignr}$color${execi 7200 curl -s 'https://api.met.no/weatherapi/locationforecast/2.0/compact?lat=55&lon=82.9'|json_pp|grep -Pom2 '(area_fraction" :)\K[^,]*'|grep -v '%'}%
${color1}Humidity: ${alignr}$color${execi 7200 curl -s 'https://api.met.no/weatherapi/locationforecast/2.0/compact?lat=55&lon=82.9'|json_pp|grep -Pom2 '(humidity" :)\K[^,]*'|grep -v '%'}%
${color1}Wind Direction: ${alignr}$color${execi 7200 curl -s 'https://api.met.no/weatherapi/locationforecast/2.0/compact?lat=55&lon=82.9'|json_pp|grep -Pom2 '(direction" :)\K[^,]*'|grep -v 'degrees'}°
${color1}Wind Speed: ${alignr}$color${execi 7200 curl -s 'https://api.met.no/weatherapi/locationforecast/2.0/compact?lat=55&lon=82.9'|json_pp|grep -Pom2 '(speed" :)\K[^,]*'|grep -v 'm/s'}m/s
${alignc}${image $HOME/.conky/ARCH-V-3/img/task-manager.png -p 32,20 -s 40×40}
]];
0
avatar
для тех, кто хочет самостоятельно разобраться в показателях api.met.no/weatherapi/locationforecast/2.0/ имхо — очень неудобный формат и подача инфы. я пока остался на старом xml, как отключат буду думать
Последний раз редактировалось
?
Всегда есть быстрое простое неправильное решение.
быстрые простые правильные (иногда) ответы здесь t.me/ManjaroRu
0
avatar
Выложи плиз свой conkyrc, в telegram долго искать. интересует только скорость wifi, у меня iwconfig выдает только 1mbps почему-то, хотя по факту 65 и больше
0
avatar
да он здесь будет выглядеть как простыня, стукнись в группу, реплани меня, я тебе там сброшу
Последний раз редактировалось
?
Всегда есть быстрое простое неправильное решение.
быстрые простые правильные (иногда) ответы здесь t.me/ManjaroRu
0
avatar

------------------Wi-Fi------------------------
${if_existing /proc/net/route wlp2s0}${hr}
${font Cadillac Sans:size=9}Сети»${goto 50}Интернет:${goto 110}${font}${texeci 3600 wget -q -O - checkip.dyndns.org|sed -e 's/.*Current IP Address: //' -e 's/<.*$//'}${goto 220}${font Poky:size=14}Y${font}
${voffset -15}${goto 50}Wi-Fi:${font}${goto 110}${addr wlp2s0}
${goto 15}Имя     : ${wireless_essid wlp2s0}${goto 140}Режим: ${wireless_mode wlp2s0}
${if_match ${wireless_link_qual_perc wlp2s0} > 69}${color}${else}${if_match ${wireless_link_qual_perc wlp2s0} > 39}${color2}${else}${color3}${endif}${endif}${goto 15}${wireless_link_bar 7,225,wlp2s0}${goto 60}${color5}Качество сигнала ${wireless_link_qual_perc wlp2s0}% ${color}
${goto 15}${wireless_bitrate wlp2s0}${goto 70}${font Cadillac Sans:size=8}<------ ${font}Скорость${goto 180}Всего
${goto 15}Загрузка:${goto 110}${downspeed wlp2s0}/s${goto 180}${totaldown wlp2s0}
${goto 15}Отправка:${goto 110}${upspeed wlp2s0}/s${goto 180}${totalup wlp2s0}${voffset -16}${else}${endif}
Последний раз редактировалось
?
Всегда есть быстрое простое неправильное решение.
быстрые простые правильные (иногда) ответы здесь t.me/ManjaroRu
0
avatar
спасибо, за качество сигнала и за if_match, скорость так и показывает 1 mbps(((, видимо с дровами чтото
0
avatar
Добрый день! Кто нибудь может подсказать, как заставить коньки выводить определенное кол-во символов в строке:

2.${offset 4}${color1}${top name 2} ${goto 125} ${color}${top cpu 2} ${goto 185} ${top mem 2}

конкретно интересует значение получаемое в ${top name} — ограничить его 10 символами например.
0
avatar
установите top_name_width в параметрах conky.config = { равным 10, по умолчанию он 15
?
Всегда есть быстрое простое неправильное решение.
быстрые простые правильные (иногда) ответы здесь t.me/ManjaroRu
0
avatar
не помогло(((((
0
avatar
боритесь с руками и читайте хелп
?
Всегда есть быстрое простое неправильное решение.
быстрые простые правильные (иногда) ответы здесь t.me/ManjaroRu
0
avatar
заработало, ошибка была в коде, коде ДНК)))
+1
avatar
вот и славно, код исправится при должном отношении, это все с практикой
Последний раз редактировалось
?
Всегда есть быстрое простое неправильное решение.
быстрые простые правильные (иногда) ответы здесь t.me/ManjaroRu
0
avatar
не помню где спёр, у меня такая погода
0
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.