LINUX.ORG.RU

Избранные сообщения LongLiveUbuntu

Добавление поддержки кириллицы (русификация) в CDE в OpenBSD

Форум — Desktop

Добрый день, уважаемый разработчик. Я - слесарь, а не программист, поэтому приношу прощения за откровенно идиотские вопросы.

Я сумела собрать и запустить CDE (Common Deskton Environment) на OpenBSD 7.3, следуя Вашим инструкциям. Я хотела бы уточнить, как провести поддержку символов деванагари(хинди) и кириллицы, и возможно ли это вообще.

И не подскажите каким образом можно вообще русифицировать или непализировать консоль (/dev/ttyC0..ttyC6), т.е. включить поддержку символов Unicode. А то на другом окружении рабочего стола (i3) у меня есть поддержка хотя бы кириллицы, а в CDE - только японского (собирала именно версию под японский в надежде разобраться, где лежит поддержка), а в терминале - только английского. Символы кириллицы отображаются в двух последних случаях некорректно. А что делать с символами деванагари я вообще не могу елка.

Насколько я поняла, необходима именно поддержка шрифтов в CDE, и, похоже, их можно вязть от xenodm (?), вот только где их прописать и взять?

До того следовала инструкциям с сайта [opennet.ru](http://www.opennet.ru/base/rus/cyr_openbsd.txt.html) Но нигде нет инструкции для текущей версии OpenBSD.

Команда wsfontload выдает wsfontload: WSDISPLAYIO_LDFONT: Invalid argument. Я почитала форумы и попробовала отключить inteldrm, но тогда не добилась не то, что наличия кириллицы, вообще резко упало разрешение экрана и не запустился ни xenodm, ни dtlogin.

.profile file:{

# $OpenBSD: dot.profile,v 1.8 2022/08/10 07:40:37 tb Exp $
#
# sh/ksh initialization

PATH=$HOME/bin:/bin:/sbin:/usr/bin:/usr/sbin:/usr/X11R6/bin:/usr/local/bin:/usr/local/sbin
export PATH HOME TERM

export LANG=ru_RU.UTF-8
export LC_ALL=ru_RU.UTF-8
export LC_MESSAGES=ru_RU.UTF-8

set -o vim

}

rc.conf.local{

pkg_scripts=
localhost$ cat /etc/rc.conf.local
#pkg_scripts=dtlogin cmsd
ftpd_flags=
inetd_flags=
pkg_scripts=cmsd
portmap_flags=
sndiod_flags=-s default -m play,mon -s mon

xenodm_flags=YES     ##NO for dtlogin; now I started xenodm, so.
#pkg_scripts=dtlogin ##for dtlogin
[/cut]

}

Характеристики моего компьютера и системы.
{
model:"HP Compaq 100eu",
cpuspeed:1666,
cpu: "Intel(R) Atom(TM) CPU D410 @ 1.66GHz",
ram_capacity:2048 /*Mb*/,
ram_type:"DDR2",

}

Вывод df -h{

Filesystem     Size    Used   Avail Capacity  Mounted on
/dev/sd1a      986M   130M    806M    14%    /
/dev/sd1k     87.5G   51.9G   31.3G    63%    /home
/dev/sd1d      3.9G    6.6M    3.7G     1%    /tmp
/dev/sd1f     14.8G    1.4G   12.7G    11%    /usr
/dev/sd1g      986M    324M    613M    35%    /usr/X11R6
/dev/sd1h     19.4G    6.5G   11.9G    36%    /usr/local
/dev/sd1j      5.8G    2.0K    5.5G     1%    /usr/obj
/dev/sd1i      2.9G    339M    2.4G    13%    /usr/src
/dev/sd1e      6.6G   85.3M    6.2G     2%    /var

}

 , , , ,

aza_turajeva
()

std::string length возвращает 16777215

Форум — Development

)) как такое может быть??? с чего вдруг пустая строка может возвращать такую длину

уже все проверил, вроде ничего память не переписывает

 

wolverin
()

Rust был отфоркан

Форум — Development

Привет, ЛОР!

Язык Rust был подвергнут обфоркиванию, продукт этого действа называется CrabLang. Наблюдать можно здесь: https://crablang.org/

Cargo был также переименован в Crabgo. В остальном, крабовая тематика сохраняется.

Среди причин для форка отмечено повышенное влияние корпораций и возникшая бюрократия вокруг языка, препятствующие быстрому внесению изменений.

 ,

hateyoufeel
()

The Register: сравнение потребления ресурсов различных DE под Ubuntu

Новости — Ubuntu Linux
Группа Ubuntu Linux

Издание The Register произвело сравнение потребление сред рабочего стола в 2022 году на примере дистрибутива Ubuntu 22.04. В забеге участвовали:

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

>>> Подробности на сайте The Register

 , , ,

anonymous
()

Gentoo. Игнорируются LLVM_TARGETS

Форум — General

Время обновлять LLVM, LLVM сам себя не обновит!

В portage стабилизировали четырнадцатую версию, решил обновиться. И был крайне удивлён набором архитектур, планирующихся к установке.

LLVM_TARGETS="(AArch64) (AMDGPU) (ARM) (AVR) (BPF) (Hexagon) (Lanai) (MSP430) (Mips) (NVPTX) (PowerPC) (RISCV) (Sparc) (SystemZ) (VE*) (WebAssembly) (X86) (XCore) (-ARC) (-CSKY) (-M68k)

Рядовому пользователю из этого многообразия чаще всего нужны llvm_targets_X86 и llvm_targets_AMDGPU либо llvm_targets_NVPTX. А остальное никак не используется, но неплохо так увеличивает время сборки.

Флаги прописаны в package.use, и не трогались уже очень давно. Задаём вручную, непосредственно как префикс для emerge — ноль реакции.

Ага! Если оно так себя ведёт — идём грепать профили (/usr/portage/profiles) на предмет наличия llvm_targets в use.force либо в package.use.force. Где и находим следующее непотребство:

/usr/portage/profiles/base/package.use.force

# Michał Górny <mgorny@gentoo.org> (2021-11-04)
# Enable all LLVM targets unconditionally.  Unfortunately, disabling
# targets tend to break reverse dependencies (e.g. Rust) and we are yet
# to find a clean way of resolving that.  Compared to the damage
# potential, the increase of build time is a minor problem.  Users who
# really insist of building a smaller system can un-force the flags
# at their own responsibility.
>=sys-devel/clang-13.0.1_rc llvm_targets_AArch64 llvm_targets_AMDGPU
>=sys-devel/clang-13.0.1_rc llvm_targets_ARM llvm_targets_AVR llvm_targets_BPF
>=sys-devel/clang-13.0.1_rc llvm_targets_Hexagon llvm_targets_Lanai
>=sys-devel/clang-13.0.1_rc llvm_targets_MSP430 llvm_targets_Mips
>=sys-devel/clang-13.0.1_rc llvm_targets_NVPTX llvm_targets_PowerPC
>=sys-devel/clang-13.0.1_rc llvm_targets_RISCV llvm_targets_Sparc
>=sys-devel/clang-13.0.1_rc llvm_targets_SystemZ llvm_targets_WebAssembly
>=sys-devel/clang-13.0.1_rc llvm_targets_X86 llvm_targets_XCore
>=sys-devel/clang-14 llvm_targets_VE
>=sys-devel/llvm-13.0.1_rc llvm_targets_AArch64 llvm_targets_AMDGPU
>=sys-devel/llvm-13.0.1_rc llvm_targets_ARM llvm_targets_AVR llvm_targets_BPF
>=sys-devel/llvm-13.0.1_rc llvm_targets_Hexagon llvm_targets_Lanai
>=sys-devel/llvm-13.0.1_rc llvm_targets_MSP430 llvm_targets_Mips
>=sys-devel/llvm-13.0.1_rc llvm_targets_NVPTX llvm_targets_PowerPC
>=sys-devel/llvm-13.0.1_rc llvm_targets_RISCV llvm_targets_Sparc
>=sys-devel/llvm-13.0.1_rc llvm_targets_SystemZ llvm_targets_WebAssembly
>=sys-devel/llvm-13.0.1_rc llvm_targets_X86 llvm_targets_XCore
>=sys-devel/llvm-14 llvm_targets_VE

Очень странное решение, честно говоря, учитывая что Rust по умолчанию тянет свою собственную LLVM. Первый раз, за всё время общения с Gentoo, приходится вообще трогать package.use.force.

Отключается просто: (НА СВОЙ СТРАХ И РИСК!) прописываем в /etc/portage/profile/package.use.force всё вышеупомянутое, но флаги предваряем знаком «минус».

Наслаждаемся ощущением отстреленной ноги, несобирающегося Rust (не проверял) и сократившимся временем сборки LLVM и Clang.

 , , , ,

Quote
()

Драйвер Paragon Software на плаву: сопровождение NTFS3 возобновлено

Новости — Linux General
Группа Linux General

Константин Комаров, основатель и руководитель компании Paragon Software, предложил для включения в ядро Linux 5.19 первое корректирующее обновление драйвера ntfs3. С момента включения ntfs3 в состав ядра 5.15 в октябре прошлого года драйвер не обновлялся, а с разработчиками была потеряна связь, что привело к обсуждению необходимости перевода кода NTFS3 в категорию осиротевших («orphaned») с последующим удалением драйвера из состава ядра.

Теперь разработчики возобновили публикацию изменений и сгруппировали накопившийся набор исправлений. Предварительно патчи были добавлены и протестированы в ветке linux-next. В предложенных патчах устранены ошибки, приводящие к утечкам памяти и аварийным завершениям, решены проблемы с выполнением xfstests, проведена чистка неиспользуемого кода и исправлены опечатки. Всего предложено 11 исправлений.

>>> Подробности

 , ,

ipkirill21x
()

Курс лекций по языку Scala (видео)

Форум — Development

Минутка само-рекламы. В этом году я опять веду курс про программированию на языке Scala. Курс уже идет и на него попасть нельзя, но видео с лекций доступны всем желающим. В этот раз курс проходит онлайн, по этому звук и картинка получше чем это было на прошлых итерациях. По плану новые материалы будут выкладываться до конца мая 2022.

Посмотреть можно тут: https://www.youtube.com/playlist?list=PLr3MOSSJVvAFnT_qUrcFr1EpZqjEBKiUl

 ,

maxcom
()

Как обезопасить свой компьютер от вредоносного кода из сторонних библиотек/модулей?

Форум — Security

Привет всем!

В связи с вот этой новостью Специальный вредоносный код в npm-пакете для России и Белоруссии собственно и возник вопрос. Там я уже его задавал, но решил вынести в отдельную тему, т.к. у меня проект несколько другой, да и не node это вообще.

Проект на тему ML, в нём используется:
* Python
* PyCharm
* Docker
* OpenCV
* TF Keras
Плюс куча пакетов Python'а на все случаи жизни, которым нет числа. Точнее, там много разных requirements.txt для разных частей (отдельно для training, отдельно для inference, отдельно для утилит), там есть пересечения в используемых пакетах. Сколько уникальных пока точно не посмотрел. Ну, допустим, штук 150. Никто ведь не помешает в pypi.org положить такую же каку со следующей версией библиотеки, как по ссылке выше, ведь так?

Да, логично зафиксировать версии, ничего просто так не обновлять, а если обновлять, то очень внимательно следить, что изменилось. Но тут легко что-то пропустить. Кроме того, в начале этого месяца уже были обновления (да, надо будет вникнуть, что там).

Локально я ничего не обучаю, однако не всё так просто... Обучение происходит на Азуре следующим образом: у меня запускается Docker контейнер, в нём код для работы с Азурой плюс сам код, который там будет выполняться и обучать модель, плюс все вспомогательные файлы. Всё это запаковывается, отправляется на Азуру, а там становится средой выполнения. Контейнер настроен так, что у него есть доступ наружу, в директорию с проектом. Это так by design, было до меня и просто так переделать это невозможно. Кроме собственно обучения я иногда просто тестирую код каких-то утилит локально, т.к. это многократно быстрее, чем запуск на Азуре ради того, чтобы понять, что оно падает или преобразует входные данные не так, как планировалось. Проекту нужно иметь доступ к камере, а мне нужно в реальном времени и с минимальной задержкой видеть окна с обработанными кадрами.

Всё осложняется тем, что весь проект очень большой 62,4 GiB, 1 772 813 files, 102 363 sub-folders. И это не считая того самого контейнера. Там ещё гигов 15. Да, естественно, не всё это гоняется на Азуру при каждом запуске, только разница (упрощённо говоря).

Как всё это огородить от основной системы и от бекапов (лежат на отдельном винте, делаются каждый вечер самой системой, где запускается рабочая среда)?

Мыслей у меня две:
* Виртуалка, в ней лёгкая система
* Контейнер LXC

В обоих случаях хорошо бы «прокидывать» (X11 сетевая прозрачность, настало твоё время!) окна графических приложений наружу, чтобы не запускать целый DE внутри. Надо чтобы это работало быстро, т.к. видео. И надо какую-то панель изнутри, чтобы запускать программы внутри изолированной среды.

Если LXC:
+ Благодаря единому ядру потребление памяти будет ниже, будет более гибким
+ Аналогично для места на накопителе, т.к. не надо будет выделять какой-то файл образа
+ Работа с файлами будет быстрее, т.к. не будет конструкции «файловая система в файле на файловой системе». Это важно, т.к. много мелких.
+ Проще «прокинуть» web-камеру. Т.е. для этого и делать ничего не надо.
+ Просто организовать прямой доступ к GPU
- Ниже безопасность, т.к. можно эксплуатировать уязвимости ядра
? Как из LXC будет запускаться Docker? Пробовал кто? механизмы у него и у LXC ведь один и те же.

Если виртуалка, я думаю надо что-то максимально лёгкое, вроде QEMU+KVM, с минимальной системой внутри. В этом случае:
+ Выше безопасность, т.к. ядро отдельное
- Больше места занимает
- Управление занимаемым местом не такое гибкое. Да, про динамический образ я в курсе.
- Ниже производительность при работе с файлами, особенно с мелкими
- Надо прокидывать устройства, что тоже снизит производительность
- Ниже производительность из-за эмуляции железа
- Проблемы с быстрым выводом графики
- Потребление памяти не гибкое. Можно использовать ballooning, но не знаю, насколько эффективно оно работает. Да и при старте виртуалка будет потреблять всё равно весь объём.
? Пробовал ли кто прокидывать внутрь виртуалок файловую систему c помощью Virtiofs или чего-то подобного? Смысл в том, чтобы файлы проекта остались доступными и снаружи, так их проще бекапить и не будет накладных расходов на две файловые системы.

Я пока склоняюсь к первому вариантус LXC. Я не думаю, что с пакетами может придти уж очень серьёзная малварь, которая будет эксплуатировать дырки в ядре. Вопрос в основном только в Docker'е, как он будет запускаться.

Какие у кого мысли? Да, я тут не рассматриваю безопасность самой host системы, так то ведь может и с обновлениями ОС что-то попасть, кака какая-то.

P.S.: i7-4770 (да, старичок, но сейчас чего купишь?), 32 GiB, Ubuntu 21.10

 , , , ,

ls-h
()

GNOME Commander 1.14

Новости — GNOME
Группа GNOME

GNOME Commander – двухпанельный файловый менеджер для среды GNOME. В этой версии:

  • Выполнен переход с GnomeVFS на GIO. GnomeVFS – набор функций, реализующих абстрактный слой для работы с файловыми системами. Считается устаревшим с версии Gnome 2.22.
  • Добавлена возможность выбора действия по умолчанию, которое будет выполняться при перетаскивании файлов мышью.
  • Реализована возможность удаления файлов в корзину.
  • Удалён диалог поиска файлов, вместо него предлагается использовать внешние утилиты.
  • В индикаторе пути к текущему каталогу добавлено название сервера.
  • Добавлен пункт меню для выбора всех файлов, без выбора директорий.
  • Исправлены различные ошибки.

>>> Подробности

 ,

Original
()

Перегружайся, если не хочешь проблем!

Форум — Desktop

Интересная статья вышла в Fedora Magazine, рекомендую.

https://fedoramagazine.org/offline-updates-and-fedora-35/

Для Ъ

В интернете часто встречается вопрос, почему Fedora Linux необходимо перезагружать, чтобы обновить систему. Действительно, чтобы обновить дистрибутив, перезагрузка не требуется, однако всё не так просто. В этой статье рассмотрим, почему же Fedora Linux просит вас перезагрузить систему и устанавливает обновления автономно.

Автономные обновления

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

Почему существуют автономные обновления

За последние двадцать лет операционные системы стали гораздо сложнее, чем в те далёкие времена, когда многозадачность была в зачаточном состоянии и фактически не было ситуаций, чтобы пользователи в системе работали и одновременно обновляли её, поэтому обновления не представляли особых проблем.

Да, ядро Linux умеет изменять файлы без перезагрузки, но службы и приложения, использующие эти файлы, так делать не умеют. Если файл изменяется во время работы программы, то программа ничего об этом не знает, что может стать причиной некорректной работы программы. Так что утверждение типа «Linux не надо перезагружать, чтобы обновиться» больше не работает, все дистрибутивы Linux надо перезагружать!

Как работают автономные обновления

В системе есть пара совместно работающих компонентов, чтобы реализовать такие обновления. Первый — пакетный менеджер, который лишь скачивает обновления и сообщает следующему компоненту о наличии этих самых обновлений.

Второй компонент — это systemd. Во время загрузки системы, systemd проверяет пакетный менеджер на наличие скачанных обновлений, и если таковые имеются, systemd вместо нормальной загрузки стартует пакетный менеджер, применяет обновления и перезагружает систему в нормальный режим.

[полагаю, под ПМ автор имеет здесь в виду PackageKit]

Откуда ноги растут

Проблему впервые осознали в 2009 году (об этом можно почитать здесь). Как только возможное решение проблемы было спроектировано, его сразу же запустили в разработку.

Однако требовалось несколько компонентов заставить работать вместе. Надо было внести изменения в systemd для поддержки особого способа загрузки системы, а также заставить пакетные менеджеры «понимать» этот процесс. Кроме того было важно, чтобы у пользователей появился соответствующий графический интерфейс, который и был включён в GNOME Software Center в 2012 году, а в KDE Discover в 2021.

Наконец, эта новая функция была реализована в Fedora 18, что сделало Fedora первым дистрибутивом, который делает всё возможное, чтобы ваша система была надёжна и стабильна. Да, это был долгий путь, но вот мы здесь, и эта технология с нами уже почти 10 лет!

Если обновить систему по старинке через DNF

Скорее всего ничего плохого не произойдёт, так как это могут быть небольшие обновления или программа, которую вы обновили, была выключена. Например, не страшно обновить SDL, если вы не играете в этот момент.

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

Опытные пользователи Linux, например администраторы, часто инстинктивно знают, какие программы можно обновлять без проблем. Также можно устанавливать только обновления безопасности (обсуждается здесь). А вот для масштабных обновлений даже профессионалам рекомендуется использовать автономные обновления через DNF.

Firefox — хороший пример

Когда Firefox (во время работы) обнаружит, что был обновлён, он заставит вас перезагрузить браузер, а всё потому, что он не умеет надёжно работать в такой ситуации без полного перезапуска программы.

Такие сложные и чувствительные к безопасности программы, как Firefox, помогают вам и защищают вас от возможных аварийных ситуаций или наличия уязвимостей в программе. Такое поведение некоторым кажется назойливым, но это гораздо меньшее зло, чем, например, внезапное падение программы.

Аварийные ситуации

Дело в том, что Firefox скорее приятное исключение из правила, ведь остальные программы просто тихо падают, если их обновить во время работы. Например в случае X Window Server или GNOME Shell вы можете получить чёрный экран. Однако это ещё не значит, что процесс обновления системы прервался, но чтобы наверняка понять что же происходит, придется переключиться в виртуальную консоль и проверить закончил ли свою работу пакетный менеджер.

Нажмите <Ctrl + Alt + F3>, чтобы перейти в консоль, залогиньтесь, запустите программу top, в ней нажмите O и напишите COMMAND=dnf. Дождитесь, когда пакетный менеджер закончит обновление системы и перезагрузите компьютер.

Выключили электричество во время обновления системы

На данный момент надежда ещё есть. Включите компьютер и посмотрите загрузилась ли система. Если удалось загрузиться в графический режим, то скорее всего всё будет хорошо. Если нет, то придётся зайти в виртуальную консоль и посмотреть историю DNF, чтобы понять на какой стадии произошёл обрыв и повторить попытку обновления.

$ dnf history list
$ dnf history info {номер последнего события}
$ dnf history redo {номер последнего события}

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

Всё сломалось

Если во время неудачного обновления вышел из строя DNF или systemd, то продолжить обновление вряд ли получится и перезагрузка компьютера тоже ничего не даст.

Не существует однозначного ответа, что делать в таких обстоятельствах. Прежде всего у вас должна быть флешка с Fedora Linux! Вы могли бы попробовать восстановить систему с помощью systemd-nspawn, но это слишком сложно. Для обычных пользователей будет проще систему переустановить.

Помните, пока ещё вы не потеряли ваши персональные данные. Загрузка с флешки их никак не повредит и вам всего лишь надо проследить, чтобы существующий раздел /home не был отформатирован во время переустановки системы.

Заключительное слово

Обновление работающей системы — настоящая лотерея. Мы верим в удачу и склонны переоценивать свои шансы. Многие из нас никогда не сталкивались с выходом системы из строя из-за обновлений, но такие истории далеко не редкость на просторах интернета. Поэтому очень важно распространять информацию о том, как следует безопасно обновлять Linux. Призывайте пользователей использовать автономные обновления, а сами будьте крайне осторожны, когда обновляете работающую систему!

В будущем подобные проблему исчезнут совершенно, благодаря таким технологиям как Flatpak и Fedora Silverblue. Десктопный Linux постепенно движется в этом направлении, а пока нам приходится иметь дело со всякими индикаторами прогресса обновления системы, как в других операционных системах.

 , , ,

papin-aziat
()

COVID-19 НЕ АФЁРА

Форум — Talks

Плохие новости припёр я вам - коронавирус похоже не афёра.
Решил напейсать, т.к. я тут был в касте конспиролухов. Надеюсь что это поможет многим сомневающимся.

Немного полезной информации:

  • день 1: вечером заметил что тело влажное, подозрительно липкое, что-то не то. Померил температуру - 37.1
    Подозреваю что 3-4 дня до этого температура была тоже в районе 37.1 (изредка чуствовал приятный лёгкий озноб по спине), но не догадался померить.
    Помылся под душем, выпил 0.4 сухого красного и бабах! - через 2 часа температура 38.6. (помывка спровоцировала? если что имейте ввиду, так бы вероятно незаметно переболел, а теперь жуть)
    Пью таблетку парацетамола.
  • день 2: утро, проснулся весь в холодном поту, T=37.6 Вызываю врача на дом. Весь день температура 38.
    Болит голова. Непонятный редкий сухой кашель, ничего не откашливается. В носу сухо.
  • день 4: приходит фельдшер (молодая, красивая и смелая) и шокирует меня 2 полосками экспресс-теста на COVID-19
  • день 5: заметил что перец с огорода без запаха :[ и любимый одеколон тоже...
    Пока максимальная зафиксированная температура - 39.0, 1 раз ночью.
  • день 6: Компьютерная томография (цитата) - "Заключение: высокая степень вероятности двухсторонней пневмонии вирусной этиологии (КТ-1), ок. 20%" Прописали кучку лекарств, в т.ч. антибиотики внутримышечно 2 раза в день
  • все следующие дни: с утра 37.8, днём 38.2, ночью 39.6 (раза 4 сбивал 1 таблеткой парацетамола или ибуклина /чередовал/, наверно зря сбивал, т.к. переносилось хорошо, но следовал рекомендациям врача сбивать если выше 38.5 и почему-то аж 2-мя таблетками парацетамола, что сделал всего 1 раз)
  • день 11: с утра до вечера 36.6
  • день 12: 36.6, иногда 36.9 :[? (to be continued)

Где умудрился подцепить - загадка. На общественном транспорте не езжу. Всегда в магазин ходил в маске и всегда мыл руки и полоскал горло /соль+сода+2капли йода на стакан воды/ ( :] бережёного Бог бережёт)

Скастую, на всякий случай пару конспирологов:
Stanson, ... , Tigger это фиаско, братан .

 , ,

superuser
()

Есть ли годные гайды по стилю для питона

Форум — Development

Я внезапно осознал, что толком не могу сформулировать, какие фичи питона стоит использовать, а какие — нет (как в последнем треде по крестам). Ситуация усложняется тем, что нынче каждая вторая собака считает себя гуру питона и готова учить других, но только единицы умеют по-настоящему хорошо пользоваться языком. Я могу открыть очередную сессию экспертов LOR следующими правилами:

  • Не используй monkey patching (изменения классов и функций в процессе работы приложения) без крайней необходимости;
  • Не используй классы, если это не навязывает библиотека и тебе не нужно переопределить операторы, предпочитай duck typing. Следствие — статическая типизация в питоне не работает;
  • Лямбды — говно, и функциональная парадигма в питоне близка к неюзабельности из-за трудности передачи блока кода аргументом. Язык изначально ориентирован именно на импертивный код аля «башпортянка», потому предпочитай list comprehension/generator expression вместо filter-map;
  • Предпочитай пересоздавать простые значения с нужным типом, а не передавать их как есть или по ссылке. При изменении значения ячейки используй новые значения, а не изменяй старые обьекты. Под капотом CPython уже создает-высвобождает объекты на каждый чих. Создать строку из строки в питоне стоит примерно ничего, но если внезапно вместо строки подвернется непонятный тип или None, то код рискует свалиться со стэком в неожиданном месте.

PS: мои прошлые работы по теме, которые дают советы «как не делать», но не дают советов «что же делать»:

Объектная модель питона
https://habr.com/ru/post/481782/ - О проблемах транслятора Python и переосмысление языка

Перемещено leave из talks

 , ,

byko3y
()

CentOS всё

Форум — Talks

https://blog.centos.org/2020/12/future-is-centos-stream/

https://www.redhat.com/en/blog/centos-stream-building-innovative-future-enterprise-linux

Для неосиливших ссылки:

CentOS 8 с конца следующего года больше не будет развиваться Red Hat’ом, вместо неё будет CentOS Stream, эдакая вечная бета следующего RHEL’а. По ходу дела RH предложит бесплатную подписку на RHEL для некоторых community, которые завязаны на CentOS 8. Для CentOS 7 ничего не меняется, она будет жива до 2024-го.

 ,

post-factum
()

Вопросы пользователям Gnome 3

Форум — Desktop
  1. Правда ли, что для того, чтобы вернуть системный трей нужно ставить несколько расширений, потому что каждое расширение умеет какой-то свой «тип»? Правда ли, что под конкретную версию Гном надо выбирать расширения, которые еще мейнтейнятся и/или работают с этой конкретной версией?

  2. У вас есть папка Desktop, но нет собственно рабочего стола, на нём не будут видны папки и файлы, лежащие в Desktop? Это не смущает авторов и пользователей?

  3. Правда ли, что до сих пор тормозит и лагает этот вот закос под маковский Dashboard? У коллег на работе на ноуте с i7 и свежей видяхой от Intel список программ открывается с заметными подёргиваниями.

Если всё так, какая мотивация должна быть у человека, чтобы пользоваться этим и хвалить? Спасибо.

 ,

Alve
()

Думаете что удаленно можно бить баклуши ?

Форум — Talks

Основатель и руководитель пермской компании Xsolla Александр Агапитов уволил около 150 сотрудников после анализа их эффективности в рабочих сервисах и мессенджерах. Об этом Forbes рассказал источник, близкий к компании. Ранее скриншот, подтверждающий эту информацию, был опубликован в твиттере.

Это скриншот сообщения, которое, как следует из текста, Агапитов направил сотрудникам, которых решил уволить. «Команда биг дата» проанализировала их активность и сделала вывод, что они «не всегда присутствовали на рабочем месте, когда работали удаленно», поэтому их отметили как «невовлеченных и малопродуктивных», сказано в сообщении. Судя по тексту, к сообщению был приложен список «отчисленных» сотрудников, но их фамилий на скриншоте нет.

https://meduza.io/feature/2021/08/04/glava-sozdannoy-v-permi-it-kompanii-xsolla-uvolil-150-chelovek-posle-analiza-ih-onlayn-aktivnosti

Перемещено alpha из general

 

Jopich1
()

Новогодний подарочек от гаранта стабильности

Форум — Talks

Всем доброго вечерочка! Хотя если подумать, не такой уж он и добрый. Вчера потратил весь день в попытках оплатить хостинг. Решил как обычно воспользоваться своей карточкой Киви. И внезапно не смог.

3-D secure проходит, получил с десяток СМС, ввел правильный код подтверждения и… Ошибка. Оплата не проходит. Просто не проходит. Техподдержка как обычно отвечает больше недели, ждать ответа бессмысленно. Начал гуглить. Правда что гуглить на абстрактное «Payment Error» непонятно.

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

https://qiwisupport.com/cb-rf-oshtrafoval-qiwi-bank-i-ogranichil-nekotorye-operacii

С 10 декабря ЗАПРЕЩЕНЫ любые операции банка с ИНОСТРАННЫМИ КОМПАНИЯМИ, т.е. банально запрещено перевести даже 10 сраных баксов с аккаунта, прошедшего полную идентификацию. Это ни первый раз, когда начинают щемить хорошие и удобные сервисы оплаты, постепенно превращая их в бесполезные. Попробовал оплатить десяток других зарубежных сервисов - не работает.

Вспоминается знаменитое «ни купить, ни продать». Вот же оно, прямо сейчас. Уже наступило. Работал? Работал. Деньги заработал? Заработал. Купить нужное не могу. К сожалению, я достаточно неграмотный, чтобы пользоваться криптовалютой, да и криптовалюта у нас скоро тоже станет вне закона. Так что гайки продолжают закручиваться, то ли еще будет.

 , , , ,

boris_delaet_site
()

QA Middle, Embedded с автоматизацией, Минск, выше рынка

Форум — Job

Нужен крепкий Middle, с хорошим английским, питоном, твердым пониманием QA процессов.

По требованиям

* Python (достаточно голого, хотя умение накидать чонить на Flask'e приветствуется)

* Опыт в автоматизации хоть на чем-нибудь

* Linux (busybox, buildroot, базовая консоль)

* AWS (сойдет и опыт с Azure или что там ещё есть)

* Embedded — релевантное образование, общее понимание или опыт, на первое время даже опыт с ардуинками сойдет

* Контейнеры — достаточно просто опыта работы с Docker, оркестраторы-шмаркестраторы не нужны

* CI — умения настроить пайплайны в дженкинсе на первое время хватит

* Сеть — 5-6 уровень OSI можно скипнуть, об остальных стоит иметь представление

* ISTQB не обязательно, но если не хотим на собеседовании обсуждать всякую ерунду — лучше иметь

* Английский от B2

* Общая адекватность

* WebDriver, другие языки кроме Python, Appium — будут плюсом, но скорее всего не понадобятся

По деньгам — зависит от попадания в вакансию, но в среднем будет выше среднего (по dev.by)

По локации — Минск, релокация как в Минск так и из Минска возможна, удаленка возможна, но первые N месяцев надо будет заходить в офис и разбираться с железками, с какой частотой — зависит от способности к обучению

Обсудить можно тут, CV письмом можно на durward47@mobiletrashmail.com

конкретно эта — уже не актуальна, хотя подобного профиля специалисты все еще нужны

 , ,

colok
()

Компания Canonical начала продвижение Ubuntu как замены CentOS

Новости — Ubuntu Linux
Группа Ubuntu Linux

Компания Canonical запустила кампанию по продвижению Ubuntu в качестве замены CentOS на серверах, используемых в инфраструктуре компаний, занимающихся оказанием финансовых услуг. Инициатива обусловлена решением Red Hat прекратить с 31 декабря 2021 года выпуск обновлений для классического CentOS 8 в пользу тестового проекта CentOS Stream.

Несмотря на то, что Red Hat Enterprise Linux и CentOS заняли прочное положение в секторе финансовых услуг, фундаментальные изменения в CentOS могут подтолкнуть финансовые компании к пересмотру своих решений в отношении операционных систем. Среди пунктов, которые упоминаются в попытках подтолкнуть индустрию финансовых услуг к переходу c CentOS на Ubuntu:

  • Предсказуемый график выпусков.
  • Поддержка корпоративного уровня с выпуском обновлений в течение 10 лет, сервисом обновления ядра без перезапуска и SLA.
  • Высокая производительность и универсальность.
  • Безопасность и сертификация криптографического стека на соответствие требованиям FIPS 140-2 Level 1.
  • Пригодность для использования в частных и публичных облачных системах.
  • Поддержка Kubernetes. Поставка в Google GKE, Microsoft AKS и Amazon EKS CAAS как эталонной платформы для Kubernetes.

>>> Подробности

 ,

anonymous
()

Перепрошивка TP-LINK TL-WR841ND V8 под OpenWRT

Форум — Linux-hardware

Здравствуйте. Перепрошил TP-LINK TL-WR841ND V8 под OpenWRT через веб интерфейс. Теперь wifi сеть не запускается, соответственно войти в админку невозможно. Что делать? Зараннее спасибо

 

AndreyPr
()

МСВС 3.0 удалил пользователей

Форум — Linux-install

Здравствуйте, в общем то по глупости удалил пользователей со всеми прилегающими файлами, после чего перестала запускаться ос, что делать? До загрузчика lilo доходит, выбираю мсвс, далее продолжает загружаться, и тю, застревает, до надписи Добро пожаловать в МСВС 3.0 нажмите (I) что бы войти в интерактивный режим не доходит. ☹️

 , ,

teizeku
()