LINUX.ORG.RU

Статьи - Архив 2025, Июль

Обнаружен практически идеальный смартфон без гуглосервисов

Статьи — Мобильные устройства
Обнаружен практически идеальный смартфон без гуглосервисов

По мотивам темы Обнаружен практически идеальный ноут для линукса.

Привет, ЛОР! Хотел бы рассказать о смартфонах без гуглосервисов, которых кот наплакал, если хочется новое и недорогое устройство. Выбор тут невелик: Google Pixel и LineageOS/GrapheneOS, или CMF 1 и /e/OS(форк LineageOS). Список телефонов, которые прошиваются на LineageOS по годам выпуска - тут. Из списка примерно ясно, что кроме пикселей на рынке нет устройств, которые можно было бы купить новым и перешить на LineageOS.

Преимущества CMF 1 перед пикселями:

  1. Цена - телефон можно купить за 12000 рублей на маркетплейсе или за 23000 рублей в ДНС.
  2. Работающие VoLTE и VoWiFi - в пикселях на альтернативных прошивках это не работает, более того - на чистом андроиде из коробки не работает тоже. В CMF 1 работает даже в /e/OS.
  3. Загрузчик разблокируется очень просто, без всяких кодов разблокировки, как например на Motorola или Xiaomi, или локнутых пикселей под операторов.

Явные недостатки CMF 1:

  1. Нет NFC
  2. Оригинальный экран стоит примерно 6000 рублей - половина стоимости телефона.
  3. Оригинальных запчастей вообще нет, возможно они есть, но на Али/Озоне их нет.

Оригинальная инструкция на английском тут.

Характеристики устройства

Процесс установки.

  1. Для начала нам потребуется adb и fastboot. Идем на оф.сайт и скачиваем Platform Tools, в нем есть и adb и fastboot. Разархивируем всё и закидываем в /home своего пользователя. В дистрах есть и то и другое, но часто бывает так, что оно не первой свежести, поэтому проще скачать.
  2. Чтобы запускать fastboot и adb из нашей директории можно добавить в .bashrc или чем вы там пользуетесь следующую строчку

export PATH="$HOME/platform-tools:$PATH" - это даст возможность исполнять их без перехода по директориям. Чтобы потом не заморачиваться с правами к USB и прочим, можно(и нужно) сделать sudo su и работать уже оттуда.

  1. Качаем отсюда (ВНИМАНИЕ, сайт может не работать, потому что хостятся на клаудфларе или около того, через VPN работает) образ прошивки, на данный момент это IMG-e-3.0.4-a14-20250709507532-community-tetris.zip

  2. Разблокируем загрузчик: заходим в настройки телефона, ищем пункт номер сборки, кликаем по нему до тех пор, пока не появится надпись о том, что вы стали разработчиком, далее идем в пункт меню «для разработчиков», и передвигаем ползунок на пункте «OEM Разблокировка», так же включаем «USB отладку».

  3. В официальной инструкции про это не сказано, но при подключении телефона к ПК необходимо включить отладку по USB, при этом необходимо в телефоне при подключении USB кабеля выбрать пункт меню в шторке - «Передача файлов» - тогда от системы поступит запрос на отладку по USB, проблема ли это Debian или так и должно быть - не знаю, даже не стал разбираться.

  4. Следом мы должны перезагрузиться в бутлоудер, перед этим проверив что телефон видится системой: adb devices если видите выхлоп c девайсом - а-ля

List of devices attached

0011148666 device

все окей, делаем

adb reboot bootloader

Телефон перезагрузится и на дисплее будет надпись fastboot mode - вводим (ВНИМАНИЕ, ЭТО УДАЛИТ С ТЕЛЕФОНА ВСЕ ВАШИ ДАННЫЕ)

fastboot flashing unlock

И на телефонe нажимаем кнопку громкость + как подтверждение операции. Следом вводим

fastboot flashing unlock_critical

И так же подтверждаем кнопкой громкость +. После этого вводим

fastboot reboot

Телефон сбросится к заводским и загрузится чистая система.

  1. создаем директорию под файлы прошивки

mkdir ~/Downloads/EOS

следом разархивируем файлы прошивки в неё

unzip -d ~/Downloads/EOS ~/Downloads/IMG-e-3.0.4-a14-20250709507532-community-tetris.zip

  1. Выключаем телефон, после выключения с вставленным USB кабелем включаем телефон зажатием кнопки «POWER+Громкость+», отжимаем кнопку «POWER» после 2-3 секунд появления логотипа, продолжая удерживать кнопку «Громкость+», перед нами на экране будет список, где мы должны выбрать fastboot, подтвердив выбор кнопкой «Громкость-»

  2. Далее прошиваем телефон с помощью команд:

cd ~/Downloads/EOS

chmod +x flash_tetris_factory.sh && flash_tetris_factory.sh

  1. Все готово. Телефон дегуглизирован, можно смело пользоваться!

Плюсы, минусы, подводные камни.

Из личного опыта:

  • камера не пишет в 60 фпс

  • цветопередача экрана стала более агрессивная, пользоваться не мешает, но проблема видна по сравнению со стоком.

  • Есть баг с 120фпс в меню, происходит при наложении приложений, ощущение что 120фпс дается только тому, кто последний открыт, пример: листаем меню, 120 фпс видно, нажимаем громкость+, появляется ползунок громкости и он теперь в 120фпс, а меню которое листается по инерции уже в 60фпс.

  • Багтрекер находится тут

ВЕРНУТЬ ВСЕ ВЗАД!

Если вдруг вам не понравилась дегуглизированная ОС - вариант отката к ОС по умолчанию таков:

  1. Берем последнюю прошивку тут - https://github.com/spike0en/nothing_archive/releases/tag/Tetris_V3.2-250609-2111

Нам нужны файлы:

  • Tetris_V3.2-250609-2111-image-boot.7z
  • Tetris_V3.2-250609-2111-image-firmware.7z
  • Tetris_V3.2-250609-2111-image-logical.7z.001
  • Tetris_V3.2-250609-2111-image-logical.7z.002
  • Tetris_V3.2-250609-2111-image-logical.7z.003
  • Tetris_V3.2-250609-2111-image-logical.7z.004

Распаковываем их в одну директорию, и скачиваем скрипт https://github.com/spike0en/nothing_flasher/blob/main/README.md#-download для CFM 1, кладем его рядом с файлами, далее

chmod +x flash_all.sh bash flash_all.sh

(ВНИМАНИЕ, если вы не заморачивались с правами исполнения fastboot и adb, нужно будет запускать это в рутовой среде sudo su)

Отвечаем на вопросы инсталятора:

Choose whether to wipe data: (Y)
Choose whether to flash to both slots: (Y)
Disable Android Verified Boot: (N)

Если все части успешно прошились, выбираем в конце

Reboot to system: (Y)

Так же доступна видео-версия этого процесса тут - https://www.youtube.com/watch?v=66H2MVElyAY

Статья распространяется под лицензией GNU FDL 1.3, полный текст лицензии доступен на https://www.gnu.org/licenses/fdl-1.3.html

 ,

XMPP
()
: Исправление шипения PulseAudio (44 комментария)

Tcl/tk. GUI на SVG-виджетах. Градиентная заливка и прозрачность. Часть III

Статьи — Разработка

После выхода первой статьи про svg-виджеты для tcl/tk прошло почти полгода. За это время пэт-проект возмужал и продолжает взрослеть. Напомним, что проект svgwidgets, примеры и интерпретаторы tcl/tk с необходимыми пакетами для разработки gui на базе svg-виджетов можно найти на github-е. В проекте svgwidgets на github-е можно найти как версию интерпретатора tclexecomp как для Linux64 (папка tclexexcomp902), собранного из исходников tcl/tk-9.0.2, так и версию интерпретатора на базе tcl/tk-8.6 для платформы Linux64 (папка tclexecomp200). К ранее созданному на github-е подкаталогу examples/CryptoArmPKCS_Test, в котором выложен исходный код криптографической утилиты для работы с электронной подписью cryptoarmpkcs, который предназначен для запуска на платформе Linux64 в среде tcl/tk-9, добавлена аналогичная папка для запуска утилиты cryptoarmpkcs в среде tcl/tk-8.6 на платформе Linux64 (папка examples/CryptoArmPKCS_Test_Tk86). Для запуска этой утилиты ничего дополнительного устанавливать на свой компьютер не требуется. Достаточно выбрать соответствующий интерпретатор из папки tclexecomp200 или tclexexcomp902 и выполнить файл mainguipkcs_svg.tcl из соответствующей папки ~/examples/CryptoArmPKCS_Test, например:

bash-5.2$ tclexecomp902/tclexecomp64_902_Lin64  examples/CryptoArmPKCS_Test/mainguipkcs_svg.tcl

При подготовке этой статьи использовался графический интерпретатор tclexexcomp902, который поддерживает tcl/tk-9. Напомним, что svg-виджеты могут создаваться каждый на отдельном холсте, а затем отображаться с помощью одного из диспетчеров компоновки (pack, grid, place), или могут создаваться все или группа виджетов на одном и том же холсте. При размещении нескольких svg-виджетов на одном холсте диспетчеры компоновки не используются, их размещение на холсте задается опциями –x и –y.

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

( читать дальше... )

 , , , ,

TclTk
()

Подключение от Linux к приборам по протоколу ModBUS с помощью утилиты mbpoll

Статьи — Разработка
Подключение от Linux к приборам по протоколу ModBUS с помощью утилиты mbpoll

После того, как поделился своим опытом подключения приборов по ModBUS к Linux Подключение от Linux к приборам «ОВЕН» по протоколу ModBUS с помощью утилиты modbus_cli (комментарий), получил очень полезные советы, поэтому решил написать ещё одну статью по этой теме.

( читать дальше... )

 mbpoll, ,

victorsemv
()

Основы реверс-инжиниринга Android-приложений

Статьи — Разработка
Основы реверс-инжиниринга Android-приложений

Как известно, Android — это тоже Linux, основной особенностью которого является то, что он позволяет устанавливать приложения только на Java/Kotlin в формате apk, запускаемые через свою реализацию JVM — своего рода песочницу. Раз уж это Linux, то и запускать его можно через стандартные средства — LXC-контейнеры, как это делается в том же Waydroid. Главный плюс такого подхода в отличие от реального устройства — полный доступ к файловой системе, что эквивалентно рут-доступу. На реальном устройстве получить рут-права с помощью Magisk несложно, но это приводит к утрате данных вместе с ключом шифрования от sd-карты, хотя их можно и восстановить, если был бекап. Однако большей проблемой является то, что из-за этого перестают запускаться те же банковские приложения…

( читать дальше... )

 ,

rtxtxtrx
()

Как установить deepinscreenshot в linux Debian 12, Ubuntu 24, Linux Mint 22.1, LMDE 6

Статьи — Desktop

Жил-был лучший скриншотер для Linux - deepinscreenshot до 2019 года. Потом произошло его слияние с проектом от тех же ребят - deepin-screen-recorder, который забросили (скорей жив, чем мёртв - вышел апдейт на предыдущей неделе).

Слияние получилось крайне неудачное: мало того, что там баги (не сохраняет толщину линий геометрических объектов от предыдущего сеанса), неудобные хот-кеи, которые можно нащупать только методом тыка, так ещё и кнопки интерфейса не прорисовываются (в штатном пакете Debian 12), так что, можно сказать, проект погубили.

Ниже инструкция (может кому пригодится) - как можно скомпилировать deepinscreenshot в Debian 12 из исходников, взятых из предыдущего Debian 11. Понимая принцип, примерно также можно сделать и для Ubuntu 24, Linux Mint 22.1, LMDE 6:

0. mkdir ~/deepinscreenshot
1. cd ~/deepinscreenshot
2. wget http://deb.debian.org/debian/pool/main/d/dtkwm/dtkwm_2.0.12-3.dsc
3. wget http://deb.debian.org/debian/pool/main/d/dtkwm/dtkwm_2.0.12.orig.tar.gz
4. wget http://deb.debian.org/debian/pool/main/d/dtkwm/dtkwm_2.0.12-3.debian.tar.xz
5. sudo apt-get install pkg-kde-tools libmtdev-dev libstartup-notification0-dev libxcb-util0-dev qtbase5-private-dev qtmultimedia5-dev qttools5-dev-tools
6. dpkg-source -x dtkwm_2.0.12-3.dsc
7. cd dtkwm-2.0.12
8.  sudo debuild -us -uc -b
9. cd ..
10. sudo dpkg -i libdtkwm5_2.0.12-3_amd64.deb
11. sudo dpkg -i libdtkwm-dev_2.0.12-3_amd64.deb
12. wget http://deb.debian.org/debian/pool/main/d/deepin-screenshot/deepin-screenshot_5.0.0-1.1.dsc
13. wget http://deb.debian.org/debian/pool/main/d/deepin-screenshot/deepin-screenshot_5.0.0.orig.tar.gz
14. wget http://deb.debian.org/debian/pool/main/d/deepin-screenshot/deepin-screenshot_5.0.0-1.1.debian.tar.xz
15. dpkg-source -x deepin-screenshot_5.0.0-1.1.dsc
16. cd deepin-screenshot-5.0.0
17. sudo debuild -us -uc -b
18. sudo dpkg -i ../deepin-screenshot_5.0.0-1.1_amd64.deb
Перемещено Zhbert из desktop

 , ,

Windows
()