gnome

자동 라이트/다크 모드

Ubuntu 설정(Settings → AppearanceWindow ThemeLight / Standard / Dark ) 의 "창 테마"와 관련하여 아직 "밝음"과 "어두운" 모드 사이를 자동으로 전환하는 방법을 찾은 사람이 있습니까?

매일 아침이나 저녁 에 설정을 파헤치는 것은 정말 고통스러운 일입니다. 일몰 시 자동으로 "어두움" 모드로 전환하고 일출 시 자동 으로 "밝음" 모드로 전환 할 수 있으면 좋을 것 입니다.

GNOME의 경우 다음 셸 확장이 존재합니다. 야간 테마 전환기

옵션이 상당히 많고 구성할 필요 없이 이미 즉시 사용할 수 있지만 구성도 간단합니다!

Screenshot of the Schedule tab

Screenshot of the GTK theme tab




테마를 변경하는 터미널 명령은 다음과 같습니다.

gsettings set org.gnome.desktop.interface gtk-theme Yaru-dark

Yaru-dark 테마의 경우

gsettings set org.gnome.desktop.interface gtk-theme Yaru-light

Yaru-light 테마.

이제 작업 예약(기본적으로 특정 시간에 반복적으로 무언가를 실행)을 위한 cron-job이라는 것이 있습니다. 따라서 지정된 시간에 이러한 명령을 실행하도록 cron-job을 작성할 수 있습니다(예: 오후 9시에 어두운 테마로 변경하고 오전 6시에 밝은 테마로 변경).

script.sh 라는 파일에 다음을 추가합니다 .

#!/bin/bash
echo export DBUS_SESSION_BUS_ADDRESS=$DBUS_SESSION_BUS_ADDRESS > lightscript.sh
echo export DBUS_SESSION_BUS_ADDRESS=$DBUS_SESSION_BUS_ADDRESS > darkscript.sh
echo "gsettings set org.gnome.desktop.interface gtk-theme Yaru-light" >> lightscript.sh
echo "gsettings set org.gnome.desktop.interface gtk-theme Yaru-dark" >> darkscript.sh
chmod 755 lightscript.sh
chmod 755 darkscript.sh

currenttime=$(date +%H:%M)
if [[ "$currenttime" > "21:00" ]] || [[ "$currenttime" < "06:00" ]]; then
  ./darkscript.sh
else
  ./lightscript.sh
fi

파일을 실행 가능하게 만듭니다.

chmod 755 /path/to/script.sh

or:

chmod +x /path/to/script.sh

터미널에서 gnome-session-properties 를 실행 합니다. 오른쪽에 있는 추가를 클릭하고 script.sh 파일을 찾아 선택하여 새 시작 프로그램을 추가하고 이름과 주석으로 저장합니다. 이것은 GUI를 통해 로그인할 때마다 그놈에게 lightscript.sh 및 darkscript.sh를 생성하도록 lightscript.sh 합니다 darkscript.sh

다음 명령을 사용하여 crontab 에 작업(테마 변경)을 추가합니다 .

crontab -e

적절한 편집기를 선택하거나 /var/spool/cron/crontabs 로 이동 하여 사용자 이름으로 파일을 편집할 수 있습니다. 이 방법으로 파일에 액세스하려면 sudo 권한이 필요합니다. 다음 두 줄을 추가합니다( /path/to/ 가 실제 경로로 대체됨).

0 6 * * * /path/to/lightscript.sh
0 21 * * * /path/to/darkscript.sh

그것은 말할 것입니다 :

crontab: installing new crontab

명령을 종료한 후. 다음을 통해 확인할 수도 있습니다.

crontab -l

이렇게 해야 합니다. 위의 두 줄은 cron 이 매일 오전 6시에 lightscript.sh 를 실행 하고 오후 9시에 darkscript.sh 를 실행하도록 지시 합니다.

우리는 다음을 추가하는 대신 우회합니다.

0 6 * * * gsettings set org.gnome.desktop.interface gtk-theme Yaru-light

DBUS_SESSION_BUS_ADDRESS 변수를 올바르게 설정 해야 하기 때문에 crontab 으로 이동합니다.