oczy
Eyesome to skrypt bashowy działający jako demon i śpiąc przez większość czasu 24/7. Automatycznie dostosowuje jasność ekranu (i opcjonalnie również gamma) do wyświetlacza laptopa za pośrednictwem interfejsu sprzętowego i maksymalnie dwóch innych monitorów za pomocą oprogramowania sterującego xrandr.
O wschodzie słońca (czas jest automatycznie pobierany z Internetu każdego dnia) jasność ekranu (i opcjonalnie także gamma) jest stopniowo dostosowywana. Stopniowe dostosowanie jest definiowane przez Ciebie, ale dla mnie działa 120 minut. Aby regulacje pozostały niezauważalne, ustaw odstęp uśpienia między regulacjami. Gdziekolwiek od 15 do 60 sekund jest prawdopodobnie najlepsze, a wartość domyślna to 60.
Po zakończeniu zmiany wschodu demon z oczami śpi wiele godzin, aż rozpocznie się zmiana wschodu. Używam 90 minut przed wschodem słońca, ale możesz ustawić dowolny okres.
Odwrotnie niż przejście na wschód słońca, przejście na zachód słońca stopniowo zmniejsza jasność ekranu (i opcjonalnie również gamma), więc jest niezauważalne.
Należy pamiętać, że podczas przejścia w nocy można zdefiniować współczynnik gamma, aby zwiększyć. Na przykład czerwoną gamma można zdefiniować jako 1,0 w ciągu dnia i 1,2 w nocy, aby zmniejszyć zmęczenie oczu. Niebieska gamma z kolei może być zdefiniowana jako 1,0 w ciągu dnia i .8 w nocy, więc zamiast tego spadnie.
Aby zmniejszyć zasoby, oczy śpią przez cały okres między zachodem a wschodem słońca. W zależności od miejsca zamieszkania i pory roku średni sen wyniesie 12 godzin.
Eyesome Setup - Menu główne
Aby skonfigurować oczy, dostępne jest menu główne:
Edytuj konfigurację - zakładka Ogólne
Po kliknięciu przycisku Edytuj w menu głównym początkowo wyświetlana jest karta Ogólne ustawienia edycji, jak pokazano poniżej.
Nazwa kraju / miasta powinna pojawić się automatycznie. W razie potrzeby możesz to zmienić.
Edytuj konfigurację - karta Monitor 1
Kliknięcie powyższej karty Monitor 1 spowoduje wyświetlenie tego panelu w mojej konfiguracji (może być inny):
Nie zniechęcaj się tymi ustawieniami, ponieważ są one w większości automatycznie uzyskiwane przez oczy. Konieczne będzie jednak ustawienie jasności / poziomów w ciągu dnia i nocy.
Edytuj konfigurację - karta Monitor 3
Kliknięcie karty Monitor 3 powoduje wyświetlenie tego panelu w mojej konfiguracji (może być inny):
Karta Monitor 2 nie jest wyświetlana, ponieważ jest to nowy telewizor z adaptacyjną jasnością i Smart OS. Nie wymaga zastępowania przez Eyesome.
Jeśli po zainstalowaniu oprogramowania eyesome dołączysz inny monitor do swojego systemu, może być konieczne wprowadzenie xrandr
nazwy monitora.
Niesamowita konfiguracja - test 5 sekund
W menu głównym możesz przetestować ustawienia jasności i gamma w ciągu dnia i nocy przez 5 sekund, klikając odpowiednio przyciski Dzień i Noc . Możesz zmienić czas trwania testu z 5 sekund na 20 sekund z poziomu Edytuj konfigurację - zakładka Ogólne.
Oto jak wygląda 5-sekundowy test nocny:
Niezwykła obsługa zdarzeń
Załóżmy, że zawieszasz laptopa, gdy jest rano przed pracą, a ekran jest w pełni przyciemniony. Wracasz do domu po pracy, gdy słońce jest wysoko na niebie, i otwierasz laptopa. Ekran jest tak ciemny, że nie można go odczytać.
Aby rozwiązać ten scenariusz, zapewniono systemowy plik kontrolny:
/etc/systemd/system-sleep/systemd-wake-eyesome
plik sterujący jest wywoływany za każdym razem, gdy system zawiesza się lub wznawia.
- Plik sterujący wywołuje skrypt bash,
/usr/local/bin/wake-eyesome.sh
aby zresetować jasność do pełnego, a następnie uśpić do przejścia na zachód słońca.
Oglądasz film na zewnętrznym telewizorze w nocy i zamykasz pokrywę laptopa, aby lepiej oglądać. Ubuntu / Lightdm / xrandr zajmuje kilka sekund, a następnie resetuje zewnętrzny telewizor do pełnej pełnej jasności. DOTYK do twoich oczu.
Aby rozwiązać ten scenariusz, dostępny jest plik kontrolny zdarzenia acpi:
/etc/acpi/event/lid-event-eyesome
plik sterujący jest wywoływany za każdym razem, gdy pokrywa laptopa jest otwierana lub zamykana.
- Plik sterujący wywołuje skrypt bash
/etc/acpi/acpi-lid-eyesome.sh
do obsługi otwierania i zamykania pokrywy.
Z kolei wywoływane przez skrypt skrypty eyeshash /usr/local/bin/wake-eyesome.sh
resetują jasność podczas nocnego oglądania, a następnie śpią aż do zmiany zachodu słońca.
Zawieś / Zamknij pokrywę / Testuj jasność / wyłącz zasilanie / hotplug
Podsumowanie
Ta odpowiedź trwa prawie dwa lata do następnego dnia po opublikowaniu pytania. W lutym 2017 r. Usunięto wcześniejszą wersję tej odpowiedzi, którą właśnie usunąłem i poprawiłem.
Eyesome można pobrać z: https://github.com/WinEunuuchs2Unix/eyesome
Ten program został właśnie wydany we wrześniu 2018 roku, więc daj mi znać, jeśli znajdziesz jakieś problemy lub masz sugestie dotyczące ulepszeń.
Faza dokumentacji dopiero się rozpoczyna, więc nie wahaj się zadawać pytań. Twoje pytania mogą nawet doprowadzić do ulepszenia dokumentacji.