Conky (software)/Modifying an existing conky

높은 해상도를 가진 모니터에서 장점 중 하나는 작업 영역 외에 남는 부분이 많기 때문에, 시스템의 동작 중에 발생할 수 있는 하드웨어의 고장을 감지하기 위해 필요한 특정 값들을 화면에 실시간으로 표시할 수 있다는 것입니다.
이를 위해 Conky (software)를 이용할 수 있지만, 원하는 모양을 갖도록 conky 테마를 구성하는 것은 쉽지 않아서, 다른 사람들이 만든 conky 테마를 이용하기도 합니다.
문제는 이들 conky 테마를 수정해서 더 필요한 정보를 표시하고 싶을 때가 있다는 것입니다.
기존에 사용하는 테마는 다음에서 볼 수 있습니다:
- https://www.pling.com/p/2073359
- https://www.pling.com/p/1854716
- 지금은 제공하지 않지만, 같은 저자가 제공했든 cpu, 메모리, 시계, 디스크, 배터리 중에서 배터리 부분을 제거하고 만들어 둔 테마.
어쨌든, 감시하고 싶은 양은 아래와 같습니다:
- cpu 사용량
- cpu 온도
- cpu 팬 속력
- 시스템 후면 팬 속력
- 메모리 사용량
- gpu 온도
- gpu 팬 속력
- 시스템 브릿지에 있는 팬 속력
- 시스템 브릿지의 온도
- SSD 온도
기존에 있는 코드를 수정해서, Sirius에 SSD 온도를 표시하고, 나머지는 Mimosa 테마를 수정해서 표시해 보려고 합니다.
사용량 얻기
필요한 정보는 Google Gemini AI에게서 대부분 얻을 수 있지만, 커널 등의 버전에 따라 정보가 표시되지 않을 수 있기 때문에, 실제로 정보가 표시되는지 확인을 해야 합니다.
다음은 hwmon에서 어떤 장치에 대한 정보를 제공할 수 있는지 확인하는 스크립트입니다. 보통, Bash (Unix shell) 스크립트를 제공하지만, 아래는 Fish (Unix shell)로 작성된 것입니다:
for hwmon_path in /sys/class/hwmon/hwmon*
echo $hwmon_path
if test -e $hwmon_path/name
cat $hwmon_path/name
else
echo "Name file missing"
end
end
출력은 시스템에 가진 장치에 따라 달라지며, it8686, nvme, amdgpu, 등의 정보를 얻을 수 있습니다.
Conky 테마 수정
이제, 원하는 hwmon의 번호를 알아내었으니, 해당 내역에서 필요한 것을 원하는 conky 테마에 출력할 차례입니다.
먼저, 메모리 사용량은 별도의 테마에서 시각적으로 볼 수 있고, 다음으로, nvme 온도는 Sirius 테마에서 온도를 표시할 수 있는 영역에 표시할 수 있습니다.
남은 것 중에서, Mimosa 테마에 cpu 사용량, 메모리, 배터리, cpu 온도 표시하는 부분을 메모리 대신 후면 팬, 배터리 대신 cpu 팬 정보를 표시하도록 변경할 수 있습니다.
이제 남은 것들을 해결하기 위해, Mimosa 테마의 위의 영역을 그대로 복사해서, gpu 온도, gpu 팬, 브릿지 팬, 브릿지 온도를 표시하도록 추가할 필요가 있습니다.
배경 수정
표시될 영역을 추가하기 위해, 배경을 수정할 필요가 있습니다. 배경은 res/bg.png 파일이고 600x1000 크기를 갖고 있습니다.
김프에서 새롭게 파일을 만들 때, 크기를 정하고, Advanced Options를 확장해서, Fill with: Transparency로 변경합니다.
이제 기존의 배경을 열어서 전체 영역을 선택하고 복사한 후에, 새로운 파일에 Paste in Place를 적용하면, 꼭대기부터 맞게 붙여넣습니다.
다음으로, 마지막 영역을 잘라내어서 맨 아래쪽 영역으로 끝선에 맞게 이동시킵니다.
마지막으로, Cpu 사용량 등을 표시하는 영역을 복사하고 붙여 넣어서, 그 아래쪽에 적절한 영역에 놓이도록 이동시킵니다.
새로운 이름, bg2.png 정도로 저장하고 종료합니다.
이제, Mimosa.conf 파일에서 bg.png를 찾아서 bg2.png로 변경합니다.
스크립트 수정
어차피 cpu 사용량과 온도를 제외하고 모두 맞지 않는 그래프이기 때문에, 수정할 필요는 없지만, 그냥 같은 모양을 갖도록 수정해 봅니다.
수정할 파일은 scripts/rings-v1.2.1.lua 파일입니다.
여기서, settings_table 영역, 즉, 4개의 영역을 각각 복사해서, 각 영역의 바로 아래에 붙여 넣습니다. 그런-다음 현재 화면에 표시되고 있는 것 중에 인식하기 좋은 것, 예를 들어, 메모리 사용량을 선택해서, 원래 y=345.3 값을 적당한 값, 예를 들어, y-481.3 값으로 변경하면, 서로 일치하는 그림을 볼 수 있습니다.
설정 수정
이제, 테마의 설정 파일, Mimosa.conf에서 해당 부분을 수정할 필요가 있습니다.
먼저, cpu0로 검색해서, 해당 줄을 복사하고, 바로 아래에 붙여 넣습니다.
그리고, 위에서 찾은 사용량 정보를 나타내는 hwmon의 정보를 넣습니다.
그런-다음 voffset를 적당히 바꾸어서 화면에 글자가 보기 좋은 위치에 놓이도록 만듭니다.