Обновил расширение для вставки текста на госсайтах
Пару дней назад я сделал небольшое расширение, которое возвращает вставку, копирование, выделение текста и контекстное меню на сайтах ФССП, Госавтоинспекции и МВД. Не ожидал такой отклик для мини расширения. и поэтому по заявкам запилил все найденные мной госсайты а так же добавил все по заявкам.
Версия 1.3.0 — теперь расширение поддерживает сразу 28 государственных ресурсов.
⚠️Главное изменение — появилось нормальное окно настроек. В нём можно отдельно включить нужные сайты и найти ресурс через поиск. По умолчанию расширение по-прежнему работает только на сайтах ФССП, Госавтоинспекции и МВД, поэтому после обновления оно не начнёт вмешиваться в работу остальных страниц без разрешения пользователя.
Добавил 25 новых ресурсов: Госуслуги, ФНС России, Росреестр, Социальный фонд России, Роспотребнадзор, Роструд, Онлайнинспекция.рф, «Работа России», Генеральная прокуратура, Следственный комитет, ГАС «Правосудие», Арбитражные суды, Картотека арбитражных дел, «Мой арбитр», ЕИС «Закупки», портал проектов нормативных актов, портал государственных учреждений, Роскомнадзор, реестры Роскомнадзора, Росздравнадзор, Федеральная таможенная служба, Министерство юстиции, портал госслужбы, Судебный департамент и Военное следственное управление.
Настройки хранятся локально в браузере. Расширение не отправляет содержимое страниц, введённые данные или список выбранных сайтов на внешние серверы. Скрипт запускается только на тех ресурсах, которые пользователь включил самостоятельно.
Заодно добавил историю версий — она открывается по кнопке i прямо в окне расширения. Теперь там можно посмотреть список изменений без поисков старых постов. Если на каком-то из добавленных сайтов вставка или копирование всё ещё блокируются — напишите адрес страницы в комментариях.
📦 Скачать можно здесь:
💬 Обратная связь
Если знаете другие официальные сайты, на которых отключены копирование, выделение текста или вставка через Ctrl+V, — напишите в комментариях.
Буду благодарен, если проверите расширение на разных формах и напишете, где оно работает или требует доработки.
Google Chrome стал внезапно закрываться
Только что столкнулся с проблемой: спустя несколько секунд после запуска Google Chrome закрываться. Это что, какой-то кривой апдейт от Google? Кто ещё столкнулся с подобным поведением?
Google Chrome 150.0.7871.129 (официальная сборка) (64 бит)
Windows 11
Как оплатить сервисы Google из России в 2026 году: хранилище, Диск, Фото и Gemini
Бесплатные 15 гигабайт в аккаунте Google заканчиваются почти у всех, и обычно неожиданно: перестают загружаться фотографии, письма приходят с предупреждением о нехватке места, резервные копии не создаются. Дальше нужен платный тариф — но российская карта его не оплатит.
Важно понимать одну вещь, которая экономит время: у Google Диска, Google Фото и Gmail нет отдельных подписок. Место у них общее и покупается один раз — в Google One. Поэтому вопросы «как оплатить гугл диск», «как оплатить гугл фото» и «как оплатить гугл почту» имеют один ответ.
Разберём: что входит в Google One, сколько стоят тарифы в 2026 году, почему не проходит оплата, как оплатить гугл хранилище в России по шагам, чем отличается оплата на Android и на iPhone и как подключить Gemini.
Промокод «Плати по миру»: PROM500 — скидка 500 ₽ на выпуск карты.
Что такое Google One и что в него входит
Google One — это платная подписка на расширенное хранилище аккаунта Google. Оплатив её, вы получаете общий объём, который расходуется сразу тремя сервисами:
Google Диск — файлы и документы;
Google Фото — снимки и видео с телефона;
Gmail — письма и вложения.
Бесплатно у каждого аккаунта есть 15 ГБ на всё это вместе. Как только они заканчиваются, перестаёт работать в первую очередь автозагрузка фото и приём писем.
В подписку дополнительно входит семейный доступ: тарифом можно поделиться, всего в группе до шести человек, причём файлы друг друга участники не видят. На старших тарифах добавляются возможности Gemini.
Тарифы Google One в 2026 году
Цены указаны в долларах США. У большинства тарифов есть помесячная оплата и годовая — вторая выходит дешевле.
Basic, 100 ГБ — 1,99 $ в месяц или 19,99 $ при оплате сразу за год. Хватает под резервную копию телефона и фотоархив одного человека.
Standard, 200 ГБ — 2,99 $ в месяц (29,99 $ за год). Тариф действующий, но Google его почти не показывает: на сайте пользователя со 100 ГБ обычно перебрасывает сразу к 2 ТБ, а сам план виден в приложении Google One через пункт «Показать другие тарифы».
Premium, 2 ТБ — 9,99 $ в месяц (99,99 $ за год). Под большие фото- и видеоархивы.
Google AI Plus — 7,99 $ в месяц. Начальный тариф с Gemini: повышенные лимиты на ИИ-функции и увеличенное хранилище. Объём в этом тарифе Google в 2026 году пересматривал, поэтому актуальную цифру смотрите на самой странице тарифов.
Google AI Pro — 19,99 $ в месяц (199,99 $ за год): 5 ТБ хранилища и продвинутые модели Gemini внутри сервисов Google.
Google AI Ultra — 99,99 $ за 20 ТБ и 199,99 $ за 30 ТБ в месяц. Старшая линейка для тех, кому нужен максимум по объёму и лимитам ИИ.
Для большинства задач хватает 100 или 200 ГБ. Годовая оплата ощутимо выгоднее помесячной, а линейка тарифов у Google в последние месяцы меняется часто — перед оплатой стоит сверить цифры на странице планов.
Почему не проходит оплата Google из России
Причины те же, что и у других зарубежных сервисов, и почти все обходные пути уже закрыты.
Карты российских банков. Visa и Mastercard российских эмитентов и карта «Мир» не принимаются: система определяет страну по BIN и отклоняет операцию.
Оплата через мобильного оператора. Вопрос, как оплатить Google One через МТС, встречается часто, но этот способ больше не работает: с 1 апреля 2026 года оплата сервисов Google со счетов МТС, «МегаФона», Билайна и Теле2 отключена.
Российский регион аккаунта. Даже с рабочей иностранной картой платёж не пройдёт, если страна профиля Google осталась российской: система сверяет её с эмитентом карты.
Рабочий путь остаётся один — карта с зарубежным BIN и аккаунт с соответствующей страной.
Что понадобится
Иностранная карта с зарубежным BIN и биллинговым адресом в комплекте.
Аккаунт Google, страна которого совпадает со страной карты. Проще всего это условие выполняется на новом аккаунте: страна задаётся при регистрации.
VPN с локацией страны карты — на время оформления подписки.
Дополнительно: если к аккаунту раньше привязывалась карта российского банка, её лучше удалить из способов оплаты, иначе иностранная может не добавиться.
Карта «Для подписок»: как выпустить
Для оплаты подходит виртуальная карта для подписок — в линейке «Плати по миру» она так и называется, «Для подписок», и предназначена для зарубежных онлайн-сервисов.
Валюта — доллар США, что удобно: тарифы Google One тоже долларовые, лишней конвертации не будет. Выпуск — 2990 ₽ разово, пополнение рублями через СБП от 5 долларов, биллинговый адрес выдаётся вместе с картой.
Оформление занимает несколько минут. Мини-приложение «Плати по миру» доступно в Telegram, в мессенджере MAX и в веб-версии.
Регистрация по электронной почте. Паспортные данные не нужны: вход через Telegram, подтверждение по почте.
Выбор карты «Для подписок».
Ввод промокода и оплата выпуска.
Пополнение через СБП — только с личной банковской карты, переводы с карт третьих лиц и криптосервисов не проходят.
Реквизиты и биллинговый адрес — в личном кабинете по иконке глаза 👁 «Показать детали».
Промокод «Плати по миру»: PROM500 — скидка 500 ₽ на выпуск карты. Промокод вводится на этапе оформления, скидка применяется сразу.
Как оплатить гугл хранилище: пошаговая инструкция
Подписка оформляется через аккаунт Google, а не через магазин приложений, поэтому оплатить её можно с компьютера — так даже удобнее. Пять шагов.
Шаг 1. Включите VPN и войдите в аккаунт
Подключите VPN с локацией страны, соответствующей карте, и войдите в тот аккаунт Google, для которого нужно хранилище. Проверить регион подключения можно на 2ip.ru.
Шаг 2. Откройте страницу тарифов
Перейдите на сайт one.google.com. На главной странице отображается текущий объём хранилища и кнопка перехода к тарифным планам.
Шаг 3. Выберите тариф
Откройте список планов и выберите нужный объём — 100 ГБ, 200 ГБ, 2 ТБ или один из тарифов с Gemini. Здесь же переключается периодичность: помесячно или за год со скидкой.
Шаг 4. Введите данные карты
В способах оплаты выберите добавление банковской карты и введите номер, срок действия и CVV, а затем биллинговый адрес — всё берётся в личном кабинете «Плати по миру». Имя владельца указывается латиницей, как в загранпаспорте.
Шаг 5. Подтвердите подписку
Нажмите кнопку оформления и подтвердите операцию в приложении «Плати по миру». После оплаты объём хранилища увеличивается сразу, а новое место автоматически становится доступно в Диске, Фото и Gmail.
Отдельно оплачивать Google Диск, Google Фото или почту не нужно: хранилище у них общее, и одна подписка закрывает все три сервиса.
Оплата на Android и на iPhone
На разных устройствах есть свои особенности.
Android.
Как оплатить гугл хранилище в России на андроиде: можно тем же способом через сайт, а можно через приложение Google One — тогда оплата пойдёт через привязанный к аккаунту способ в Google Play. Условие то же: страна аккаунта должна совпадать со страной карты.
iPhone.
Здесь два пути. Первый — открыть one.google.com в браузере и оплатить напрямую, как описано выше; это самый простой вариант. Второй — оформить подписку в приложении Google One из App Store: тогда списание пойдёт через аккаунт Apple.
Про второй путь стоит знать заранее: как оплатить Google One через Apple ID — способ рабочий, но он требует настроенного аккаунта Apple с иностранной картой, а управлять подпиской и менять способ оплаты придётся уже в настройках Apple, а не в Google. Если карта у вас есть, проще платить Google напрямую.
Gemini и тарифы с искусственным интеллектом
Подписка на продвинутые возможности Gemini входит в те же тарифы Google One, отдельной покупки не требуется.
Google AI Plus за 7,99 $ в месяц — начальный тариф с расширенным доступом к моделям и увеличенным хранилищем. Google AI Pro за 19,99 $ в месяц — 5 ТБ хранилища плюс продвинутые модели и функции Gemini внутри Документов, Почты и других сервисов Google. Выше идёт линейка AI Ultra с 20 и 30 ТБ. Оплата проходит так же, как у обычных тарифов: выбираете план на one.google.com и оплачиваете привязанной картой.
Вопрос, как оплатить Google Gemini отдельно от хранилища, возникает часто, но такой возможности нет — доступ идёт пакетом вместе с местом в облаке.
Что делать, если оплата не проходит
Пройдитесь по списку сверху вниз, обычно причина в первых пунктах.
Страна аккаунта не совпадает со страной карты. Основная причина отказов: Google сверяет регион профиля с эмитентом.
К аккаунту привязана старая карта РФ. Удалите её из способов оплаты в настройках платежей Google.
VPN выключен или локация не соответствует карте. Проверьте регион на 2ip.ru перед оплатой.
Биллинговый адрес введён не полностью. Копируйте адрес из личного кабинета целиком, включая индекс.
На карте нет запаса. Google может провести проверочное списание, поэтому небольшой остаток сверх стоимости тарифа нужен.
Оплата пробуется из приложения на Android. Если через Google Play не проходит, попробуйте оформить подписку через сайт one.google.com в браузере — этот путь чаще срабатывает.
Если ничего не помогло, напишите в поддержку «Плати по миру»: Отдел Заботы работает круглосуточно.
Частые вопросы
Как оплатить гугл хранилище в России? Через аккаунт Google на сайте one.google.com: выбрать тариф и оплатить иностранной картой. Регион аккаунта должен совпадать со страной карты.
Как оплатить Google Диск и Google Фото? Отдельных подписок у них нет: место общее и покупается в Google One. Одна оплата закрывает Диск, Фото и Gmail.
Как оплатить гугл почту? Gmail бесплатен, платить нужно только за место, когда заканчиваются 15 ГБ. Это тот же Google One.
Можно ли оплатить Google One через МТС или другого оператора? Нет. С 1 апреля 2026 года оплата сервисов Google со счетов российских операторов отключена.
Можно ли оплатить российской картой? Нет. Карты российских банков и «Мир» Google не принимает.
Сколько стоит Google One? 100 ГБ — 1,99 $, 200 ГБ — 2,99 $, 2 ТБ — 9,99 $ в месяц. Тарифы с Gemini: AI Plus — 7,99 $, AI Pro — 19,99 $ с 5 ТБ, старшие AI Ultra — 99,99 $ и 199,99 $. Годовая оплата выгоднее помесячной.
Можно ли оплатить Google One через Apple ID? Да, если оформлять подписку в приложении на iPhone. Но потребуется настроенный аккаунт Apple с иностранной картой, а управление подпиской перейдёт в настройки Apple.
Нужен ли VPN? На время оформления подписки — да, локация должна совпадать со страной карты. Для повседневного пользования Диском и Фото он не нужен.
Что будет с файлами, если не продлить подписку? Файлы не удаляются сразу, но загрузка нового и приём писем прекращаются, пока объём превышает бесплатные 15 ГБ.
Сколько человек можно подключить к тарифу? Подпиской можно поделиться, всего в семейной группе до шести человек, файлы друг друга участники не видят.
Итог
Все вопросы об оплате Google сводятся к одному: у Диска, Фото и Gmail общее хранилище, и оплачивается оно подпиской Google One. Отдельно платить за каждый сервис не нужно.
Схема рабочая и не меняется: иностранная карта с зарубежным BIN, аккаунт Google со страной, совпадающей со страной карты, и VPN нужной локации на время оплаты. Оформлять удобнее всего через сайт one.google.com — этот путь работает одинаково на компьютере, Android и iPhone.
Если облако нужно под фото и резервные копии, начните с младшего тарифа — расширить объём можно в любой момент, доплатив разницу.
Промокод «Плати по миру»: PROM500 — скидка 500 ₽ на выпуск карты.
Тарифы Google и условия оплаты меняются. Данные актуальны на июль 2026 года, перед оплатой сверяйтесь с актуальными.
Наименее энергоёмкий браузер
Ранее казалось, что Firefox является более лёгкой, хоть, может, и чуть более медленной альтернативной Chrome, но похоже, что сейчас это не так. Более лёгкий браузер мне нужен из-за увлечения прослушиванием музыки и слабым ПК. Не очень удобно каждый раз искать и скачивать альбомы, поэтому пользуюсь ВК. Разницу в качестве звука между настоящим lossless и .MP3 в ВК не слышу (если только это не другой релиз, мастеринг). Вместе со старой игрой этого хватает, чтобы временами ПК шумел, что несколько мешает. При тех же начальных условиях, Firefox и нагружает систему в 2 раза сильнее, и использует в полтора раза больше памяти, но при длительной сессии могу говорить лишь за Chrome — будто бы нестабильно нагружается больше. Ничего лишнего не запущено, автообновления Windows отключены. Возможно, кого-то из них можно лучше настроить. Заменить ПК, конечно, можно, но для этого надо разбираться в комплектующих — в этом я профан, и в таком случае вычислить в чужой сборке поделие горесборщика невозможно.
Вернул Ctrl+V на сайты ФССП, ГИБДД и МВД — сделал расширение для Chrome
🛠 Продолжаю делать небольшие расширения, каждое из которых решает одну конкретную проблему.
На этот раз столкнулся с формами на сайтах ФССП, Госавтоинспекции и МВД. В некоторых полях нельзя нормально вставить заранее подготовленный текст.
Нажимаешь привычный Ctrl+V — и ничего не происходит.
Иногда вместе со вставкой блокируются копирование, выделение текста и контекстное меню.
⌨️ Можно, конечно, каждый раз перепечатывать заявление вручную. Особенно весело, если там ФИО, номера документов, адреса и текст на несколько абзацев.
Но мы пойдём другим путём.
🧩 Что я сделал
Создал небольшое расширение для Chrome, которое возвращает стандартное поведение браузера.
Расширение:
✅ разрешает обычную вставку через Ctrl+V;
✅ возвращает копирование и вырезание;
✅ позволяет выделять текст;
✅ возвращает контекстное меню;
✅ работает с динамически появляющимися полями;
✅ поддерживает встроенные фреймы.
🌐 Поддерживаемые сайты
госавтоинспекция.рф
мвд.рф
их поддомены.
🚀 Как пользоваться
Никаких дополнительных кнопок или отдельного интерфейса нет:
Устанавливаете расширение.
Открываете нужную форму.
Пользуетесь обычными командами браузера.
Ctrl+V, Ctrl+C, выделение текста и контекстное меню снова работают привычным образом.





🔒 Безопасность и приватность
Расширение:
не читает содержимое буфера обмена;
не собирает введённые данные;
ничего никуда не отправляет;
не содержит аналитики;
не требует регистрации;
не выполняет фоновые запросы;
не загружает удалённый код.
Всё выполняется локально в браузере. Скрипт запускается только на перечисленных выше сайтах.
⚠️ Важное уточнение
Расширение не связано с государственными органами и не является их официальным продуктом. Оно не запрашивает доступ ко всем сайтам — только к доменам ФССП, Госавтоинспекции и МВД.
Оно не заполняет и не отправляет обращения автоматически — только снимает искусственную блокировку стандартных функций браузера.
📦 Установка
Расширение опубликовано в Chrome Web Store:
💬 Обратная связь
Если знаете другие официальные сайты, на которых отключены копирование, выделение текста или вставка через Ctrl+V, — напишите в комментариях.
Посмотрю, можно ли аккуратно добавить их поддержку, не выдавая расширению доступ ко всему интернету.
Буду благодарен, если проверите расширение на разных формах и напишете, где оно работает или требует доработки.
Chrome, Xfce и очень страшное кино
Сейчас вы снова убедитесь, что знание языка С сопоставимо с навыками самообороны, поскольку в современном мире мега-корпораций и победившего киберпанка на простых пользователей всем давно плевать.
Отдыхаем хорошо
Как и все нормальные люди, я смотрю фильмы, сериалы и длинные видео на ноутбуке и чтобы тот случайно не ушел в сон во время просмотра — включаю на нем «режим презентации».
Поскольку за последние годы все кино переместилось в веб, большую часть времени теперь используется не программа-видеоплеер, а обычный браузер Chrome/Chromium.
Однако после одного из обновлений, стал замечать, что браузер-то оборзел научился самостоятельно перехватывать засыпание ноутбука, блокировку экрана и запуск скринсейвера во время просмотра видео, без всяких «режимов презентации».
Затем такое поведение появилось и на обычных сайтах — без видимого видео или аудио-контента.
Без каких-либо сообщений, запросов и подтверждений на подобные действия. Затем ноутбук впервые разрядился в ноль, будучи оставленным с открытой страницей какого-то левого сайта, таймеры для suspend и hibernate внезапно не сработали.
После пятой по счету подставы с перехватом управления, автор окончально огорчился с такой наглости, достал любимый топор компилятор и стал изучать проблему в деталях.
Изучение проблемы
Первым делом я полез в поисковик, убедиться что проблема — не результат осеннего обострения или моего специфического окружения, в котором половина системы это разнообразные компиляторы и средства разработки, а другая — горы исходного кода.
Хотя в статье речь пойдет о Xfce, аналогичным обазом ведут себя все «большие» окружения — KDE, Gnome, Cinnamon и так далее:
Monitor dbus and inhibit swayidle when Firefox or Chromium request it
Хотя любители тайловых менеджеров — особая раса сверхлюдей, понять мотивы которых обывателю не дано, так что не буду даже пытаться.
Разумеется по этой проблеме есть давно заведенный тикет в трекере, с длиннющей перепиской, с приложенными дампами памяти и техническими деталями, открытый уже 11 лет:
Помимо означенного тикета в трекере Ubuntu, где тусуются в основном простые пользователи, нашелся еще один эпичный тикет в трекере уже самого Chromium, где обитают в основном разработчики, висящий аж с 2013 года:
Если прокрутить в самый низ страницы, можно заметить статус «Fixed» и битую ссылку на коммит (поскольку трекер переехал), суть которого — легализация специального API для управления блокировкой экрана и засыпанием.. прямо из кода на странице!
Примерно такого:
// The wake lock sentinel.
let wakeLock = null;
// Function that attempts to request a screen wake lock.
const requestWakeLock = async () => {
try {
wakeLock = await navigator.wakeLock.request();
wakeLock.addEventListener('release', () => {
console.log('Screen Wake Lock released:', wakeLock.released);
});
console.log('Screen Wake Lock released:', wakeLock.released);
} catch (err) {
console.error(`${err.name}, ${err.message}`);
}
};
// Request a screen wake lock…
await requestWakeLock();
// …and release it again after 5s.
window.setTimeout(() => {
wakeLock.release();
wakeLock = null;
}, 5000);
Как тебе такое, Илон Маск?
Повторяю для тех, кто еще не понял и не осознал:
любая веб-макака, верстающая на полставки
порносайты, ныне может с помощью специального кода на странице заставить браузер Chrome заблокировать засыпание вашего ноутбука.
И защитить от такого может лишь знание языка С и эта замечательная статья.
Механизм работы
Прежде чем «карать и патчить» очередную оборзевшую программу, стоит рассказать широкой аудитории как вся эта кухня вообще работает, хотя‑бы для осознания печальных реалий.
Есть одна неведомая штука в Linux-системах, под названием systemd:
systemd is a suite of basic building blocks for a Linux system. It provides a system and service manager that runs as PID 1 and starts the rest of the system.
Описание, взятое с официального сайта столь расплывчато не потому, что это перевод с языка рептилоидов, просто такого рода системные сервисы крайне непросто описать простыми словами, доступными обывателю.
Так вот, у этого замечательного systemd с недавних пор появился «сказочный» функционал, созданный для перехвата управления процессами засыпания и выключения системы:
systemd 183 and newer include a logic to inhibit system shutdowns and sleep states. This is implemented as part of systemd-logind.daemon(8)
Разумеется создан он был с самыми лучшими пожеланиями, ради блага и добра, но как и бывает при реальном использовании - все очень быстро скатилось в треш-угар и рекламу онлайн-курсов.
Да, этот функционал отключаемый, но с последствиями, вроде сломанного процесса автоматического засыпания из менеджеров управления питанием. И риском загнуть систему целиком при обновлении, поскольку например менеджеры пакетов выставляют подобную блокировку при установке пакета.
Можете конечно попробовать заблокировать механизм inhibit в systemd, но все последствия — на вас и вашей совести.
Мы же пойдем немного другим, менее радикальным путем.
Менеджер управления питанием Xfce
Этой командой можно посмотреть список запущенных перехватчиков:
systemd-inhibit --list
В моей системе (Linux Manjaro) вывод выглядит следующим образом:
Обратите внимание, что самого браузера Chrome в списке нет, зато есть xfce4-power-manager — менеджер управления питанием из Xfce, который принимает входящие запросы на перехват и решает что делать дальше.
Остальные сервисы обрабатывают только события засыпания (sleep).
Так что наша цель это xfce4-power-manager , именно туда мы сейчас и залезем, для нанесения правок.
xfce4-power-manager — по большей части фоновое приложение, автоматически запускаемое при старте среды Xfce. Но в отличие от прошлого поциента, тут есть некоторый интерфейс и взаимодействие с пользователем, которое происходит с помощью иконки в трее:
По нажатию правой кнопки мыши, появится меню со списком дерзких приложений, которые в данный момент перехватывают управление питанием:
Так что ответственный за весь этот электронный беспредел был наконец четко определен.
Кровавый патчинг
Исходный код менеджера управления питанием находится в основном репозитории Xfce, исправляемая версия должна совпадать с установленной локально, чтобы не словить феерические проблемы совместимости.
Автор использовал версию 4.20, установленную на момент написания статьи.
Место предстоящей правки — файл xfpm-inhibit.c, в который вынесена вся логика по обработке перехватов (inhibit).
Нас интересует метод xfpm_inhibit_inhibit,строка 370, где начинается обработка входящего запроса на перехват управления.
Код метода небольшой, поэтому привожу его целиком:
static gboolean
xfpm_inhibit_inhibit (XfpmInhibit *inhibit,
GDBusMethodInvocation *invocation,
const gchar *IN_appname,
const gchar *IN_reason,
gpointer user_data)
{
const gchar *sender;
guint cookie;
if (IN_appname == NULL || IN_reason == NULL)
{
g_dbus_method_invocation_return_error (invocation,
XFPM_ERROR,
XFPM_ERROR_INVALID_ARGUMENTS,
_("Invalid arguments"));
return TRUE;
}
sender = g_dbus_method_invocation_get_sender (invocation);
cookie = xfpm_inhibit_add_application (inhibit, IN_appname, sender);
XFPM_DEBUG ("Inhibit send application name=%s reason=%s sender=%s",
IN_appname, IN_reason, sender);
xfpm_inhibit_has_inhibit_changed (inhibit);
xfpm_dbus_monitor_add_unique_name (inhibit->priv->monitor,
G_BUS_TYPE_SESSION, sender);
xfpm_power_management_inhibit_complete_inhibit (user_data,
invocation, cookie);
return TRUE;
}
Обратите внимание на вызов метода XFPM_DEBUG, содержащего текст отладочного сообщения. Все подобные сообщения становятся видны только если запустить xfce4-power-manager с ключом --debug.
Именно так и было найдено место будущей правки, после сообщения в консоли:
xfpm_inhibit_inhibit(): Inhibit send application name=/usr/lib/chromium/chromium reason=Video Wake Lock sender=:1.459
Что мы имеем в итоге:
есть единственная точка входа (метод) в менеджере управления питанием, с которой начинается регистрация перехватчика управления;
метод принимает на вход название приложения (полный путь), посягнувшего на такой перехват.
Думаю не надо иметь высшее техническое образование, чтобы догадаться как будет выглядеть финальное решение этой проблемы:
if (strstr(IN_appname,"chrom") != NULL ) {
XFPM_DEBUG ("Chrome уходи!");
return TRUE;
}
Для не знающих и не владеющих:
метод strstr проверяет на входжение слова «chrom» в названии дерзкого приложения, которое отправило запрос на перехват управления питанием, если оно там есть — происходит немедленный выход из этого метода, а запрос игнорируется.
Вот так, всего лишь 4 строчки на С, вставленные в нужном месте, сразу после проверки на пустоту обламывают рога оборзевшему браузеру, созданному мировой корпорацией, которая решила, что «мы знаем как лучше».
Так это выглядит в действии после наложения моего «кровавого» патча:
В этот знаменательный день браузер Chrome.. пошел лесом.
Сборка
Теперь поговорим о печальном — о сборке всего этого цирка с конями.
Проект xfce4-power-manager это уже существенная часть Xfce, чтобы собрать его из исходников и заставить работать — придется постараться.
Во-первых, не стоит забирать исходники непосредственно из репозитория, поскольку в проекте используется кодогенерация и в этом случае придется заниматься еще и ей, устанавливая дополнительные пакеты в систему.
Куда проще скачать готовый архив со специально подготовленными исходниками релизной версии.
Напоминаю что мы патчим версию 4.20.
Во-вторых, придется установить в систему довольно много библиотек и утилит для разработки:
Gtk+ and Glib headers, in some distributions called the -devel packages
Xfce 4.20 requires Gtk+ 3.24 and Glib-2.0 >= 2.72 (See also: 4.20 dependencies)
Same version for gmodule-2.0, gobject-2.0, gthread-2.0, gio-2.0 and gdbus
gdk-pixbuf-2.0 >= 2.42.8
gobject-introspection >= 1.72
gtk-layer-shell 0.7.0
pkgconfig
Это не весь список, тут внизу страницы находится специальная таблица с описанием зависимостей между компонентами Xfce, часть из которых также придется установить.
Таков путь.
Распаковываем скачанный архив с исходниками и запускаем скрипт configure:
tar xvjf ~/Downloads/xfce4-power-manager-4.20.0.tar.bz2
cd fce4-power-manager-4.20.0
./configure --disable-wayland
Поскольку сам автор не использует Wayland — тут отключена зависимость от него при сборке, но если вам оно актуально, придется установить дополнительные библиотеки:
wayland 1.20
wayland-protocols 1.25
Добавляем описанный выше блок в файл src/xfpm-inhibit.c и наконец запускаем сборку:
make
Если сборка завершится успешно, в каталоге src будет готовый бинарник с патчем, проверить который можно так:
pkill -f xfce4-power-manager
./src/xfce4-power-manager --debug
Дальше открываем в Chrome любую страницу с видео и смотрим выдаваемые сообщения:
Разумеется, после такого патча вам придется вручную включать и отключать режим презентации (Presentation mode) при просмотре длинных роликов в браузере, зато процесс будет полностью контролируемым.
Также подобным образом можно «обламывать рога» и другим интересным приложениям, дерзнувшим покуситься на управление питанием, например с недавних пор за подобным неблаговидным делом был замечен Firefox.
Эпилог
Грустно наблюдать (в который уж раз), как некогда хороший софт, по мере роста популярности скатывается в полное УГ отрицание пользовательского опыта и начинает считать своих пользователей полными идиотами:
неотключаемые опции, неизменяемое поведение и просто наглая ложь — все это стало, к великому сожалению, постоянными спутниками самого популярного браузера на планете.
И лишь владение языком С и навыки системного программирования все еще позволяют ставить на место оборзевшие программы — изучайте же инженерное дело настоящим образом!
Статья была опубликована на Хабре, оригинал статьи как обычно в нашем блоге.
Сделал так, чтобы закладки всплывали прямо в поиске, когда они в тему
Всем привет! Сегодня принёс штуку, которая чинит пару мелочей, но мелочей, об которые спотыкаешься каждый день.
Боль первая: закладки. У меня их за годы накопились сотни, и толку ноль. То, что нужно, лежит где-то в недрах папок, и проще загуглить заново, чем вспомнить, куда сам же сохранил. Кладбище, а не закладки.
Боль вторая: скорость. Кликаешь по результату поиска и ждёшь, пока браузер с нуля познакомится с сайтом, установит соединение, договорится о шифровании. Каждый раз заново, и каждый раз эти полсекунды-секунда на ровном месте.
Сделал браузерное расширение FastWeb, оно работает прямо на странице выдачи Google, Bing, DuckDuckGo и Яндекса. Если среди результатов есть сайт, на который у тебя была закладка, расширение покажет её рядом, не надо лезть в дебри папок. А пока ты выбираешь, на что нажать, оно потихоньку прогревает соединение с верхними результатами, и страница открывается заметно резвее. Никакого контента заранее не качает, только готовит коннект.
Ещё умеет показывать альтернативные адреса сайтов. Ресурсы иногда меняют домены и переезжают, и привычная ссылка из выдачи внезапно ведёт в тупик. FastWeb держит карту таких переездов и подсказывает рабочий адрес, чтобы ты не утыкался в пустую страницу. Без подробностей, кто понял, тот понял :)
Всё локально, ничего не уходит на сторону, без аналитики и телеметрии. Доступно в Chrome, Firefox и Edge, ссылки на сайте проекта.
Пора принести новые фишки. Думаю в сторону того, как у DuckDuckGo сделаны bangs: пишешь в строке поиска короткое сокращение с восклицательным знаком, например !w для Википедии или !ozon, и сразу проваливаешься в поиск по нужному сайту, минуя выдачу. Хочу прикрутить похожее, с уже зашитыми самыми ходовыми сайтами и магазинами.
Так что спрошу шире, без привязки к этой идее. Чего вам не хватает прямо на странице выдачи? Не обязательно сокращений, это лишь один пример, к которому я остыл. Накидайте свои хотелки про поиск, толковое возьму в работу.























