The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"Раздел полезных советов: Решение проблемы со шрифтами в Steam после выставления времени после 2038 года"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Изначальное сообщение [ Отслеживать ]

"Раздел полезных советов: Решение проблемы со шрифтами в Steam после выставления времени после 2038 года"  +1 +/
Сообщение от auto_tips (??), 20-Ноя-22, 18:50 
Некоторые игры позволяют получать достижения если не запускать игру несколько лет, например,  The Stanley Parable содержит достижение, активируемое после 5 лет неактивности, а Ultra Deluxe - после 10. Для получения указанных бонусов обычно переводят часы на необходимое время вперёд, запускают игру для фиксации достижения и возвращают время назад.

Проблема в том, что если время изменено на момент после 2038 года, подобная манипуляция приводит к смене в интерфейсе Steam шрифта, и выставленный шрифт может оказаться экзотическим, что мешает восприятию информации.

Указанный эффект связан с отсутствием в некоторых приложениях, и в частности в fontconfig, поддержки корректной работы после 2038 года из-за переполнения 32-разрядного типа данных  time_t. Наличие проблемы выражается в выводе сообщения об ошибке "Value too large for defined data type" при запуске fontconfig в случае наличия файлов с датой доступа после 2038 года.

   $ stat /etc/fonts/conf.d/*|grep 2040
   Access: 2040-11-22 00:00:04.110328309 +0100
   Access: 2040-11-22 00:00:04.110328309 +0100
   Access: 2040-11-22 00:00:04.110328309 +0100
   ...

Для решения проблемы следует поменять ушедшее в будущее время доступа на текущее:

   sudo mount -o remount,strictatime /
   sudo mount -o remount,strictatime /home
   sudo find / -newerat 2038-01-19 -exec touch -a {} +
   sudo mount -o remount,relatime /
   sudo mount -o remount,relatime /home

Перемонтирование с опцией "strictatime" необходимо так как по умолчанию при монтировании используется опция "relatime" при которой время доступа меняется только если обращение произведено позднее уже выставленного для файла времени доступа.


URL: http://blog.pkh.me/p/35-investigating-why-steam-started-pick...
Обсуждается: http://www.opennet.dev/tips/info/3215.shtml

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения [Сортировка по времени | RSS]


1. "Решение проблемы со шрифтами в Steam после выставления времени после 2038 года"  +24 +/
Сообщение от Аноним (1), 20-Ноя-22, 18:50 
> Указанный эффект связан с отсутствием в некоторых приложениях, и в частности в fontconfig, поддержки корректной работы после 2038 года из-за переполнения 32-разрядного типа данных time_t.

Это баг fontconfig, и он должен решаться исправлением в fontconfig. Причём уже сейчас, до 2038 всего-ничего.

Ответить | Правка | Наверх | Cообщить модератору

28. "Решение проблемы со шрифтами в Steam после выставления времени после 2038 года"  +/
Сообщение от anonymous (??), 10-Июн-23, 21:39 
А будет ли он?
Ответить | Правка | Наверх | Cообщить модератору

29. "Решение проблемы со шрифтами в Steam после выставления времени после 2038 года"  +/
Сообщение от Я (??), 08-Авг-23, 21:35 
2038й будет, будет ли фонтконфиг.. спойлерить не стану
Ответить | Правка | Наверх | Cообщить модератору

3. "Решение проблемы со шрифтами в Steam после выставления времени после 2038 года"  +1 +/
Сообщение от Аноним (-), 23-Ноя-22, 22:10 
Готовите сани летом? За 18 лет вперед? Похвально!
Ответить | Правка | Наверх | Cообщить модератору

4. "Решение проблемы со шрифтами в Steam после выставления времени после 2038 года"  +1 +/
Сообщение от Аноним (4), 26-Ноя-22, 19:48 
Тут всё описано - https://en.wikipedia.org/wiki/Year_2038_problem
Ответить | Правка | Наверх | Cообщить модератору

6. "Решение проблемы со шрифтами в Steam после выставления времени после 2038 года"  +1 +/
Сообщение от Аноним (-), 27-Ноя-22, 20:42 
А вы точно уверены что в 2038 будет актуальна именно вон та проблема? Хорошо знать все наперед, на 20 лет.
Ответить | Правка | Наверх | Cообщить модератору

12. "Решение проблемы со шрифтами в Steam после выставления времени после 2038 года"  +15 +/
Сообщение от Аноним (12), 23-Дек-22, 00:18 
Вы не в ЖКХ Питера работаете?
Ответить | Правка | Наверх | Cообщить модератору

14. "Решение проблемы со шрифтами в Steam после выставления времени после 2038 года"  +6 +/
Сообщение от Kukuemail (?), 03-Янв-23, 20:11 
Счастье дураков заключается именно в том, что они заранее не парятся 😈
Ответить | Правка | К родителю #6 | Наверх | Cообщить модератору

5. "Решение проблемы со шрифтами в Steam после выставления времени после 2038 года"  –4 +/
Сообщение от Alex (??), 27-Ноя-22, 08:00 
Сейчас 2022 год, если нужно ачивки 10 лет - выстави 2033г и не парься. Почему именно 2038 выставлять ставь уже 3030г ?
Ответить | Правка | Наверх | Cообщить модератору

16. "Решение проблемы со шрифтами в Steam после выставления времени после 2038 года"  +3 +/
Сообщение от НР (?), 19-Янв-23, 12:26 
Потому что мой компьютер - делаю что хочу.
Ответить | Правка | Наверх | Cообщить модератору

25. "Решение проблемы со шрифтами в Steam после выставления времени после 2038 года"  +/
Сообщение от Аноним (25), 06-Апр-23, 19:19 
Сильный и независимый!
Ответить | Правка | Наверх | Cообщить модератору

17. "Решение проблемы со шрифтами в Steam после выставления времени после 2038 года"  –2 +/
Сообщение от freehckemail (ok), 21-Янв-23, 11:50 
Алекс, ну как ты не понимаешь. Если человек ничем по жизни не занят, то его единственная возможность кайфануть от героического решения проблемы -- это создать себе проблему самостоятельно! =)
Ответить | Правка | К родителю #5 | Наверх | Cообщить модератору

7. "Решение проблемы со шрифтами в Steam после выставления времени после 2038 года"  +1 +/
Сообщение от Иван_Лох (?), 05-Дек-22, 11:37 
А faketime недостаточно?
Ответить | Правка | Наверх | Cообщить модератору

8. "Решение проблемы со шрифтами в Steam после выставления времени после 2038 года"  +3 +/
Сообщение от Neon (??), 08-Дек-22, 21:18 
Какой маразм))). Ну какая связь между временем и шрифтами ?! Разработчики, вы, вообще, кукушкой поехали ?!)))
Ответить | Правка | Наверх | Cообщить модератору

9. "Решение проблемы со шрифтами в Steam после выставления времени после 2038 года"  +4 +/
Сообщение от kusb (?), 11-Дек-22, 16:40 
В современных ИТ всё связано со всем...
Ответить | Правка | Наверх | Cообщить модератору

10. "Решение проблемы со шрифтами в Steam после выставления времени после 2038 года"  +/
Сообщение от Аноним (10), 21-Дек-22, 10:34 
Время используется в программе, отвечающей за шрифты. Больше интересует, как смена числа 2022 на 2038 даже в двоичной форме может повлиять. 11111100110 и 11111110110, всего то 0 нолик на 1 поменялся.
Ответить | Правка | К родителю #8 | Наверх | Cообщить модератору

11. "Решение проблемы со шрифтами в Steam после выставления времени после 2038 года"  +2 +/
Сообщение от Admino (ok), 22-Дек-22, 18:33 
> Время используется в программе, отвечающей за шрифты.

ЗАЧЕМ?

Ответить | Правка | Наверх | Cообщить модератору

13. "Решение проблемы со шрифтами в Steam после выставления времени после 2038 года"  +1 +/
Сообщение от pavlinux (ok), 29-Дек-22, 20:11 
Например https://github.com/freedesktop/fontconfig/blob/master/src/fc...


FcBool
FcInitBringUptoDate (void)
{
    FcConfig    *config = FcConfigReference (NULL);
    FcBool    ret = FcTrue;
    time_t    now;

    if (!config)
    return FcFalse;
    /*
     * rescanInterval == 0 disables automatic up to date
     */
    if (config->rescanInterval == 0)
    goto bail;
    /*
     * Check no more often than rescanInterval seconds
     */
    now = time (0);
    if (config->rescanTime + config->rescanInterval - now > 0)
    goto bail;
    /*
     * If up to date, don't reload configuration
     */
    if (FcConfigUptoDate (0))
    goto bail;
    ret = FcInitReinitialize ();
bail:
    FcConfigDestroy (config);

    return ret;
}


https://github.com/freedesktop/fontconfig/blob/master/fc-cac...


  /*
     * Now we need to sleep a second  (or two, to be extra sure), to make
     * sure that timestamps for changes after this run of fc-cache are later
     * then any timestamps we wrote.  We don't use gettimeofday() because
     * sleep(3) can't be interrupted by a signal here -- this isn't in the
     * library, and there aren't any signals flying around here.
     */
    /* the resolution of mtime on FAT is 2 seconds */

Надеюсь сам догонишь, для чего кэшу время?

Ответить | Правка | Наверх | Cообщить модератору

15. "Решение проблемы со шрифтами в Steam после выставления времени после 2038 года"  +2 +/
Сообщение от aa (?), 11-Янв-23, 09:57 
числа 2022 и 2038 здесь совсем не при чем.
дата представляется количеством секунд прошедших с 1 января 1970 года
в 2038 году это количество перестанет влезать в 32 число
поэтому адекватные программисты уже давно переходят на 64 бита для представления времени
тут вот откопали библиотеку которая еще этого не сделала.
Ответить | Правка | К родителю #10 | Наверх | Cообщить модератору

21. "Решение проблемы со шрифтами в Steam после выставления времени после 2038 года"  +/
Сообщение от Анонимчик (?), 24-Фев-23, 13:49 
в 2038 перестанет влезать в signed 32 bit integer, unsigned ещё продержится лет 50, или сколько там пройдёт с 1970.
Ответить | Правка | Наверх | Cообщить модератору

26. "Решение проблемы со шрифтами в Steam после выставления времени после 2038 года"  +/
Сообщение от Sem (??), 11-Апр-23, 17:44 
unsigned не выйдет, time(2) может вернуть -1 для сигнализации ошибки. Очень любили в C API возвращать -1 как ошибку. И за этого теряем целый бит.
Ответить | Правка | Наверх | Cообщить модератору

34. "Решение проблемы со шрифтами в Steam после выставления времени после 2038 года"  +/
Сообщение от Я (??), 08-Авг-23, 21:55 
> unsigned не выйдет, time(2) может вернуть -1 для сигнализации ошибки. Очень любили
> в C API возвращать -1 как ошибку. И за этого теряем
> целый бит.

не теряем, а приобретаем. и вообще это же здорово что ошибка настигнет ещё живыми некоторых из своих создателей. а то обычно как: предки нагадят и в гроб, а потомки разгребай.

Ответить | Правка | Наверх | Cообщить модератору

24. "Решение проблемы со шрифтами в Steam после выставления времени после 2038 года"  +/
Сообщение от tacitusdef (??), 03-Апр-23, 05:30 
Потому, что время выставляется в unix timestamp, который считается в секундах с 1970 года.
Ответить | Правка | К родителю #10 | Наверх | Cообщить модератору

30. "Решение проблемы со шрифтами в Steam после выставления времени после 2038 года"  +/
Сообщение от Я (??), 08-Авг-23, 21:45 
> Время используется в программе, отвечающей за шрифты. Больше интересует, как смена числа
> 2022 на 2038 даже в двоичной форме может повлиять. 11111100110 и
> 11111110110, всего то 0 нолик на 1 поменялся.

ну смотри время в юниксе это количество секунд прошедших с 00:00:00 1 января 1970 года
тоесть сейчас это примерно 1691520145 (1100100110100101000110010010001) 31 знак
а в 2038 это будет уже 2164894788 (10000001000010011010110001000100) 32 знака а это только в unsigned_int лезет

Ответить | Правка | К родителю #10 | Наверх | Cообщить модератору

18. "Раздел полезных советов: Решение проблемы со шрифтами в Steam после выставления времени после 2038 года"  +/
Сообщение от freehckemail (ok), 21-Янв-23, 11:55 
> Проблема в том, что если время изменено на момент после 2038 года,
> подобная манипуляция приводит к смене в интерфейсе Steam шрифта...

Об грабли автор что ли приложился, не пойму.

В 2038м году, через 16 лет, скорее всего и x32-систем не останется, а подобные игры вы будете запускать в хардварных эмуляторах по типу того же досбокса, и будете считаться ретро-геймерами. В 2038м году -- проблемы не будет. А сейчас вполне сойдёт воркэраунд вида "выставить 2037й год". Блин, на что время тратят, ну чесслово, людям совершенно нечем заняться. )))

Ответить | Правка | Наверх | Cообщить модератору

19. "Раздел полезных советов: Решение проблемы со шрифтами в Steam после выставления времени после 2038 года"  +3 +/
Сообщение от Аноним (-), 19-Фев-23, 16:11 
Типичный регистрант: имеет мнение, ставит скобочки, а про x32 abi даже не слышал.
Ответить | Правка | Наверх | Cообщить модератору

20. "Раздел полезных советов: Решение проблемы со шрифтами в Steam после выставления времени после 2038 года"  –2 +/
Сообщение от freehckemail (ok), 19-Фев-23, 16:14 
Типичный аноним: всем недоволен, пустился в ad hominem, по делу ничего не сообщил.
Ответить | Правка | Наверх | Cообщить модератору

23. "Раздел полезных советов: Решение проблемы со шрифтами в Steam после выставления времени после 2038 года"  +2 +/
Сообщение от Глашатый (?), 17-Мрт-23, 16:49 
Что никак не обеляет автора ветки.
Ответить | Правка | Наверх | Cообщить модератору

22. "Раздел полезных советов: Решение проблемы со шрифтами в Steam после выставления времени после 2038 года"  +2 +/
Сообщение от Kuromi (ok), 11-Мрт-23, 03:07 
FIXED

"Об грабли гуманоид что ли приложился, не пойму.

В 2038м году, через 16 лет, скорее всего и живых людей не останется, а подобные проблемы вы будете запускать в VR эмуляторах по типу того же Матрицы, и будете считаться AI-overlordами, которым больше нечем заняться. "

Ответить | Правка | К родителю #18 | Наверх | Cообщить модератору

32. "Раздел полезных советов: Решение проблемы со шрифтами в Steam после выставления времени после 2038 года"  +/
Сообщение от Я (??), 08-Авг-23, 21:51 
> FIXED
> "Об грабли гуманоид что ли приложился, не пойму.
> В 2038м году, через 16 лет, скорее всего и живых людей не
> останется, а подобные проблемы вы будете запускать в VR эмуляторах по
> типу того же Матрицы, и будете считаться AI-overlordами, которым больше нечем
> заняться. "

ну не это скорее 2338 год.. какраз уже третья синтетическая война и всё такое..

Ответить | Правка | Наверх | Cообщить модератору

31. "Раздел полезных советов: Решение проблемы со шрифтами в Steam после выставления времени после 2038 года"  +/
Сообщение от Я (??), 08-Авг-23, 21:49 
>> Проблема в том, что если время изменено на момент после 2038 года,
>> подобная манипуляция приводит к смене в интерфейсе Steam шрифта...
> Об грабли автор что ли приложился, не пойму.
> В 2038м году, через 16 лет, скорее всего и x32-систем не останется,
> а подобные игры вы будете запускать в хардварных эмуляторах по типу
> того же досбокса, и будете считаться ретро-геймерами. В 2038м году --
> проблемы не будет. А сейчас вполне сойдёт воркэраунд вида "выставить 2037й
> год". Блин, на что время тратят, ну чесслово, людям совершенно нечем
> заняться. )))

ну не обязательно всплывут где-то непатченные системы про которые все давно забыли а они оказывается работали и просто делали своё дело.. пока не перестали. и ещё не сразу поймут что проблема в них потому что поверх будет куча всего другого навёрнута..

Ответить | Правка | К родителю #18 | Наверх | Cообщить модератору

27. "Решение проблемы со шрифтами в Steam после выставления времени после 2038 года"  +/
Сообщение от AntonAlekseevich (ok), 23-Май-23, 09:42 
Вопрос следующий, а подвержены ли этому эффекту системы у которых в опциях монтирования присутствует noatime?

Предполагаю отсутствие данного спецэффекта, но не отрицаю появления других спецэффектов.

Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру