Python + bash
Если вам часто требуется запускать shell команды из Python-кода, какой способ вы используете?
Самый низкоуровневый это функция os.system(), либо os.popen(). Рекомендованный способ это subprocess.call(). Но это всё еще достаточно неудобно.
Советую обратить своё внимание на очень крутую библиотеку sh.
Что она умеет?
🔸 удобный синтаксис вызова команд как функций
# os
import os
os.system("tar cvf demo.tar ~/")
# subprocess
import subprocess
subprocess.call(['tar', 'cvf', 'demo.tar', '~/'])
# sh
import sh
sh.tar('cvf', 'demo.tar', "~/")
🔸 простое создание функции-алиаса для длинной команды
fn = sh.lsof.bake('-i', '-P', '-n')
output = sh.grep(fn(), 'LISTEN')
в этом примере также задействован пайпинг
🔸 удобный вызов команд от sudo
with sh.contrib.sudo:
print(ls("/root"))
Такой запрос спросит пароль. Чтобы это работало нужно соответствующим способом настроить юзера.
А вот вариант с вводом пароля через код.
password = "secret"
sudo = sh.sudo.bake("-S", _in=password+"\n")
print(sudo.ls("/root"))
Это не все фишки. Больше интересных примеров смотрите в документации.
Специально для Windows💀 юзеров
#libs#linux
🤖Новые возможности для разработчиков циферблатов для WearOS
В WearOS 6 будет поддерживаться новая версия Watch Face Format (WFF). Она принесет
👉 Добавление пользовательского фото
👉 Анимации при переходе и выходе из спящего (ambient) режима
👉 Цветовые трансформации на основе значения
👉 Автоматическое изменения размера текста (доступно в WFF v3)
#android#wearos
🤖WearOS 6 позволит создавать магазины циферблатов
Google предоставляет множество возможностей по созданию циферблатов для WearOS на основе Watch Face Format и в следующей ОС добавляют Watch Face Push API, позволяющее создать свой магазин циферблатов 🤯
Циферблаты будут публиковать как и ранее. Разработчик может сделать приложение с витриной циферблатов и устанавливать их на часы с помощью Watch Face Push API
#android#wearos
🤖Snapdragon Wear Elite — новый чип для носимых устройств
На MWC 2026 Qualcomm анонсировала Snapdragon Wear Elite — первый чип серии Elite для носимых устройств. И это реально большое обновление на бумаге.
Чип сделан по 3нм техпроцессу. По сравнению с предыдущим Snapdragon W5+ Gen 2:
🚀 5x быстрее по CPU
🚀 7x быстрее по GPU
🔋 +30% к времени работы от батареи
⚡️зарядка до 50% всего за 10 минут
Главная фишка — впервые в носимых появился выделенный Hexagon NPU с поддержкой моделей до 2B параметров прямо на устройстве🤯
Это значит, что голосовые помощники, перевод, транскрибация и фитнес-аналитика смогут работать без облака.
Первые устройства ждём уже через несколько месяцев. Интересно, будет ли это заметно в реальном использовании или снова всё утонет в маркетинге AI-фич, а их работа приведет к быстрому сгоранию заряда батарейки на устройстве.
#Android#AndroidDev#WearOS
🤖Из WearOS убирают поддержку циферблатов на основе AndroidX / Wearable Support Library (WSL)
Как часть улучшения качества работы WearOS компания отказывается от использования старых инструментов для создания циферблатов и переходит на Watch Face Format (уже скоро будет версия 4) - декларативный XML формат без написания кода для создания циферблатов 🤯
Все изменения вступают с 14 января 2026, а именно:
‼️ Пользователи не смогут установить циферблаты старых форматов. Те что уже были установлены, продолжат работать.
‼️ Разработчики циферблатов должны мигрировать на WFF
🪙 Для циферблатов старого формата отключат всю монетизацию
‼️ Если использовали Watch Face Studio для создания циферблата, тогда вам надо повторно отправить их в Google Play с использованием версии 1.8.7 и выше
⚰️ Публиковать циферблаты старого формата уже нельзя с 27 января 2025, только обновлять те что опубликовали ранее
Подробнее про новый формат циферблатов в официальной документации
#android#wearos#googleplay
My first Wear OS app on Play Store, “Simple Memo”, is now open for testing.
Check it out and learn how to join the test!
https://1a23.com/works/open-source/simple-memo/
#WearOS#PlayStore🐟
🤖Важно для разработчиков Wear OS: с 2026 года обязательна 64-битная поддержка
Google объявила, что с 15 сентября 2026 года все новые приложения и обновления для Wear OS, содержащие нативный код (C/C++), должны включать 64-битную версию наряду с 32-битной. Google Play начнёт блокировать загрузку несовместимых APK/AAB.
Что нужно сделать разработчикам:
👉 Проверьте, есть ли в вашем приложении нативный код (файлы .so в lib/armeabi-v7a или lib/arm64-v8a). Даже если вы не пишете на C++, зависимости или SDK могут его добавлять.
👉 Для каждой 32-битной ABI (armeabi-v7a) добавьте 64-битную (arm64-v8a).
👉 Обновите сторонние SDK до версий с поддержкой 64 бит.
👉 Протестируйте приложение на 64-битном эмуляторе Wear OS (все новые образы уже 64-битные).
⚠️ Политика 32-битной поддержки не отменяется — Google Play по‑прежнему будет доставлять приложения на старые 32-битные устройства.
🔗Гайд по миграции
🔗 Источник - Android Dev Blog
#WearOS#AndroidDev#GooglePlay
Material 3 Expressive начали раскатывать на Android часы. Сразу сделали краткий обзор нововведений и запустили неделю, посвященную разработки под обновлённую WearOS
#android#wearos#material3expressive