LINUX.ORG.RU

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

Тонкий клиент WYSE C10LE и состояние 32-битных систем

Галерея — Рабочие места

Запустил Debian 11 с LXQt на WYSE C10LE — тонком клиенте из 2010, построенном на платформе VIA Eden Esther VX855 — несуперскалярном 32-битном процессоре x86 с частотой в 1 ГГц, 512 МБ DDR2 RAM и 128 МБ флеш-памяти, подключённой к шине IDE.

Процессор относительно современный, в наличии SSE2 и SSE3 (PNI). За видео в этом SoC отвечает VIA Chrome9 HCM, поддерживающий DirectX 9 и декодирование H.264 в Windows, но в Linux обеспечивающий только самое базовое 2D-ускорение средствами открытого драйвера OpenChrome. Также существует проприетарный драйвер, поддерживающий 2D и 3D, но только под Ubuntu 12.04-12.10.

Система работает, на удивление, не так уж и плохо. Для совсем старых и низкопроизводительных платформ существует только один сравнительно современный веб-движок — QtWebkit, который устарел, плохо обрабатывает современный javascript и содержит известные уязвимости, зато присутствует во многих дистрибутивах в том или ином виде, хоть как-то поддерживается и — главное — быстро рендерит и потребляет малое количество памяти.

На фотографии представлен веб-браузер Qutebrowser с 7 открытыми вкладками, в режиме работы с QtWebkit. Как видно, даже с 7 вкладками (2 из которых ­— страницы Википедии с большим количеством картинок) браузер потребляет около 140 мегабайт, что позволяет комфортно сёрфить интернет на смешных 512 МБ RAM.
Из других браузеров, до сих пор поддерживающих QtWebkit, можно отметить Otter Browser и KDE’шный Konqueror, который дополнительно поддерживает еще и KHTML (3 движка в одном браузере), но в Debian собран только с WebEngine. Первый в репозиториях Debian не присутствует.
Браузер Seamonkey, актуальная версия которого построена на базе движка из Firefox 60, работает более-менее сносно, но не блестяще — рендерит дольше QtWebkit’а примерно в 2-3 раза, потребляет заметно больше памяти, зато работает со всеми современными сайтами. Можно использовать в качестве запасного варианта, когда QtWebkit не справляется.

Опробовав разные дистрибутивы на этой машине, обнаружил следующие особенности и проблемы:

  1. Syslinux на этой платформе запускается сам и загружает ядро и initrd на порядок быстрее GRUB2 — 5 секунд против примерно 1 минуты. Бегло посмотрев код загрузки ядра и включив режим отладки в GRUB, каких-то очевидных проблем, которые могут вести к такому поведению, не обнаружил, детально отлаживать не стал. Загрузка в GRUB2 происходит по USB 2.0, не по 1.1 (загрузчик plop перед запуском grub не ускоряет процесс).
  2. У syslinux на удивление плохая документация. Quick start’ы из wiki все какие-то недописанные — не пошаговое руководство, а разрозненная информация. Нигде не говорится о необходимости копирования .c32-файлов, если нужно меню — додумался сам, благо кучу раз видел файлы syslinux в других дистрибутивах.
  3. С некоторыми вызовами ACPI на WYSE наблюдаются проблемы. В частности, thermal-подсистема отдаёт ответ по 5-6 секунд, что и замедляет загрузку ядра, и тормозит на 5-6 секунд каждый вызов утилиты sensors. Благо, в ядре есть отдельный thermal-драйвер под процессор, что позволяет отключить ACPI thermal без последствий и потери в функциональности.
  4. Все GTK3-приложения подтормаживают, медленно прорисовывают окна, с задержкой откликаются на действия. Возможно, дело в теме, но её смена и попытка отключить все анимации к заметному ускорению не привели. GTK2 и Qt5 откликаются на действия быстро, работают хорошо.
  5. В последних версиях ядра Linux (в т.ч. LTS-ветке 5.15) присутствует ошибка, приводящая к зависанию этого процессора (вот эта проблема)
  6. Графический сеанс Debian не запускался сразу после установки. Проблема оказалась в systemd: systemd-logind устанавливает опцию CanGraphical=false из-за видео, потому, что драйвер OpenChrome выполнен в виде X.org DDX, и ни DRM, ни FB не поддерживаются. Простое решение — добавить nomodeset в строку запуска ядра: [1], [2]
  7. В archlinux32 всё сломано: многие программы не запускаются из-за обновлений библиотек без перекомпиляции всех пакетов, от них зависящих, т.к. не всегда их возможно перекомпилировать с современными версиями библиотек и компиляторов (многим «жирным» проектам требуется больше 4 ГБ виртуальной памяти для сборки, они падают на 32-битных системах, а кросс-компиляция в archlinux32 не используется). Разработчики выпускают shim-пакеты со старыми библиотеками, чтобы хоть как-то вернуть работоспособность программ, но библиотеки необходимо устанавливать вручную, в виде зависимостей к пакетам они не прописаны.
    Устанавливаешь chromium — не запускается, seamonkey — не запускается. Удручающее зрелище.
  8. Дистрибутив slitaz включает веб-браузер и кучу программ в 50 мегабайт iso-образа, но тоже страдает от проблем с версионностью библиотек. Многие пакеты серьёзно устрарели, но сам факт возможности упаковки веб-браузера, аудио и видеоплеера, полноценной темы со всеми иконками, всех возможных средств настройки системы и прочего всего в 50 мегабайт впечатляет. Проект почти не развивается.
  9. Основные устоявшиеся дистрибутивы Linux либо не формируют .iso для x86, либо вовсе не предоставляют 32-битных пакетов. Некоторые форки RHEL, такие как Rocky Linux, можно забутстрапить из 32-битных репозиториев, также есть x86 ISO OpenSUSE Tumbleweed (который rolling release), но если смотреть глобально, полноценная поддержка x86 осталась только в Debian.
  10. zstd даже с -22 –long не дотягивает до степени сжатия xz -5 для упаковки rootfs.

>>> Просмотр (3728x2700, 1280 Kb)

 ,

ValdikSS
()

лучший ланчер для вин-игр?

Форум — Games

Lutris/cedega/CrossOver/PoL/etc?

 , , ,

darkenshvein
()

fstab перестал монтировать NFS

Форум — Desktop

Всем привет! Есть у меня хранилка домашняя, на ней каталог который я обычно монтировал fstab'ом к домашнему компу. Так вот некоторое время назад я начал получать ошибку «превышено время ожидания командной строки» от Наутилуса, а при попытке примонтировать консолью никакой реакции. Вот fstab. Хранилку перезапускал, выключал и включал на ней поддержку NFS, пересобирал nfs-utils. Подскажите пожалуйста, куда ещё копать? p.s. По самбе всё работает прекрасно, но медленнее.

 , , ,

Ebnmrj
()

Open Source Бразуер?

Форум — Security

Возник вопрос по замене браузера на Свободный

Из сообщества GNU сейчас наиболее известен IceCat. Но последняя стабильная версия выпущена 2 июня 2019.

Есть еще Midori, но на оф сайте почему-то вообще пропало упоминание про OpenSource.

LibreWolf. На данный момент обновляемый браузер. Вроде не GNU лицензия, а MPL 2.0 (Mozilla Public License).

Какие вы, знаете браузеры сосредоточенные на «безопасность»? Я подразумеваю наличие лицензии GNU

Я в этой теме сейчас новый, активно набираю интересы, поэтому интересно рассмотреть любой браузер.

 ,

Quorty
()

После установки Devuan 11 на жёсткий диск, он берёт имя хоста из локальной сети

Форум — Desktop

Как сделать так, чтобы не делал?

 

ZenitharChampion
()

XFCE Terminal 1.0.0

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

Выпущен стабильный релиз XFCE Terminal с красивым номером версии 1.0.0, сообщает мейнтейнер Сергиос-Анестис Кефалидис (Sergios - Anestis Kefalidis). Он взялся за фактически брошеный проект в сентябре и сейчас спешит рассказать о проделанной работе и планах на будущее.

Во-первых, он решил перенять подход к версионности, где каждый нестабильный релиз будет выходить с нечетным числом (например, 1.1.x) на второй позиции номера, а стабильный - с четным. Так, следующий стабильный релиз выйдет под номером 1.2.0.

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

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

 ,

ins3y3d
()

atheros

Форум — General

Я не понял, все atheros ar5b22 двухдиапозонные со скоростью «тракториста» или есть исключения? Некоторые продаваны говорят двухдиапозонные, некоторые сами не знают, лишь бы продать…

@SakuraKun, что скажешь? Что еще годного есть на AR9462?

 

The_Coon
()

Адекватных клиентов для Jabber для линуксов так и не завезли?

Форум — General

Что мне нужно:

  • Поддержка OMEMO
  • Поддержка серверной истории чата
  • Вменяемый интерфейс
  • Нативный код

Gajim (которым пользуюсь сейчас) отваливается по последним двум пунктам, Dino - по третьему. Дино вообще какой-то урезанный.

Я время от времени проверяю этот сайт, и новых клиентов там не появилось.

Psi+ обновлялся полгода назад, и полгода назад он не умел в серверную историю.

Всякие жаббер-вики мертвы и не обновлялись со времён Qt4.

Всё настолько плохо?

Тем, кто предложит перейти на Matrix: там с клиентами всё ещё хуже.

 ,

Original
()

Мой Neovim

Галерея — Скриншоты

Решил показать Neovim на моем компьютере под управлением OS Manjaro Linux KDE.

Перешёл полностью с (Sublime Text и PyCharm) на NeoVim для кодинга на python.

Плагины, привносящие функциональность:

  • coc.nvim и coc-python coc-pyright - для автодополнений и вывода функций;
  • NERDTree - файловый менеджер;
  • tagbar - отображений тегов исходников;
  • toogleterm - встроенный терминал. Сам конфиг:
:set number
:set guifont=JetBrains\ Mono:h10
:set autoindent
:set tabstop=4
:set shiftwidth=4
:set smarttab
:set softtabstop=4
:set mouse=a



call plug#begin()

    Plug 'https://github.com/vim-airline/vim-airline'
    Plug 'https://github.com/preservim/tagbar' 
    Plug 'preservim/nerdtree'
    Plug 'https://github.com/rafi/awesome-vim-colorschemes'
    Plug 'https://github.com/ryanoasis/vim-devicons'
    Plug 'https://github.com/neoclide/coc.nvim'
    Plug 'akinsho/toggleterm.nvim'
    Plug 'crispgm/nvim-tabline'
    
    set encoding=UTF-8
nmap <F8> :TagbarToggle<CR>
:set completeopt-=preview 
source ~/.local/share/nvim/plugged/awesome-vim-colorschemes/colors/minimalist.vim
call plug#end()
:set guitablabel=%N\ %f

g:tablineclosebutton

autocmd TermEnter term://*toggleterm#*
      \ tnoremap <silent><c-t> <Cmd>exe v:count1 . 

nnoremap <C-Left> :tabprevious<CR>
nnoremap <C-Right> :tabnext<CR>
nnoremap <C-P> :tabnew<CR>
nnoremap <C-q> :tabclose<CR>
nnoremap <silent><c-t> <Cmd>exe v:count1 . "ToggleTerm"<CR>
inoremap <silent><c-t> <Esc><Cmd>exe v:count1 . 

nnoremap <C-g> :NERDTree<CR>
nnoremap <C-f> :NERDTreeToggle<CR>

Ссылки:

>>> Просмотр (1920x1080, 160 Kb)

 , , , ,

enep
()

Metatools 1.0.0 — фреймворк разработки дистрибутива от команды Funtoo

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

Metatools, по заявлению разработчика, — это продвинутый фреймворк, позволяющий:

  • автоматически создавать Gentoo ebuilds;
  • поддерживать независимые форки Gentoo или Funtoo;
  • создавать дистрибутивы, отличные от Gentoo;

Особенности версии 1.0.0: фреймворк стал проще в использовании и понимании и значительно упростилась его установка.

Сейчас это основной инструмент разработки Funtoo Linux, который используется для:

  • создания meta-repo — специфичного для Funtoo репозитория ebuild’ов, основанного на идее наборов (kits);
  • обеспечивания функций autogen — динамической генерации ebuild’ов, основанной на актуальном состоянии исходного кода пакетов.

Пока идёт оформление ресурса с технической документацией, подробнее узнать о фреймворке и использовании autogen можно на Wiki-странице Funtoo Linux или задать вопрос в Discord (#dev-help) и Telegram-канале проекта.

>>> Funtoo Linux

>>> Руководство по установке

>>> FAQ

>>> Новость

 , ,

vvn_black
()

Эквалайзер для PipeWire и PulseAudio JamesDSP for Linux

Форум — Multimedia

Cast R_He_Po6oT.

Не только эквалайзер. Да, не юниксвейно. Зато не такая огромная фиговина, как Easyeffects.

https://github.com/Audio4Linux/JDSP4Linux

 , ,

Dementy
()

Чем сейчас можно сделать свою сборку убунты?

Форум — Linux-install

Здравствуйте! Есть вопрос. Я ставлю на свои железки линухи (ubuntu) с помощью netinstall в expert mode. Ставлю минимальную систему без всего, потом в неё захожу и остальная установка с помощью консоли (apt install пакеты –no-install-recommends). Потом копирование кое-каких конфигов и минимальная правка. Так вот хочется процесс атоматизировать, т.е. запилить свой болгенос свою сборку на основе убунты. Чем это красивее сделать? Подозреваю, что в исошник надо впихнуть какой-то скрипт. Как и куды? Ткните носом. Или ссылки какие покурить дайте.Заранее спасибо.

 , , , ,

beduin747
()

JACK, давай до свидания!

Форум — Talks

Только что обновлял свой "корчъ" с "арчем" и наткнулся на эту забавную строчку:

:: pipewire-jack and jack2 are in conflict (jack). Remove jack2? [y/N]

Согласился, ведь теперь не надо будет приписывать pw-jack к команде, чтобы запустить "жокин софт". Так что, король (JACK) умер, да здравствует король (PipeWire)!

 , ,

Korchevatel
()

Попкорн всё

Форум — Talks

Сабж - https://www.bloomberg.com/news/articles/2022-01-04/popcorn-time-alternative-is-hard-to-find-as-app-shuts-down

Update. Прон-форки продолжают работать, сырцы на гитхабе доступны. Т.е., прекратилась только официальная разработка исходного Popcorn Time.

 ,

vvn_black
()

Выход в yggdrasil без клиента на ПК, OpenWrt

Форум — Admin

цель: доступ к yggdrasil через роутер с любого ПК в сети, без установки клиента.

что я сделал:

  • установил yggdrasil, вписал несколько публичных пир.
  • в /etc/config/network добавил option ip6prefix 302:6547:1fc5:3467::/64 для интерфейса wan6.
  • там же, добавил config route6 option interface 'lan' option target '302:6547:1fc5:3467::/64' option gateway '0200::/7'

Нет результата. /etc/config/firewall я не трогал. что за radvd я не понял, не нашёл в репе OpenWrt. Что мне надо сделать? RTFM не помогает, т.к. я впервые работаю с OpenWrt (да и маршрутизаций в принципе).

 , ,

cyclbabel
()

Как зарегистрировать i2c устройство?

Форум — Admin

Есть x86 компутер. У него на i2c-шине висят несколько GPIO-модулей. Что требует использовать код вида:

echo "pca9535 0x20" > /sys/class/i2c-adapter/i2c-6/new_device 
echo "pca9535 0x21" > /sys/class/i2c-adapter/i2c-6/new_device 
echo "pca9535 0x22" > /sys/class/i2c-adapter/i2c-6/new_device 

Где i2c-6 это USB-ишный FT260 на плате. Он один такой и скриптом конкретно его определить можно. Сейчас всё это упаковано в скрипт и оформлено в виде службы. Но как-то не по себе от этого.

Как это дело оформить нормально? Неужели нет внятного способа описания i2c устройств?

Есть мысль задействовать udev, но блин не вбивать же в RUN это безобразие.

 , ,

AlexVR
()

SSD1306, device tree

Форум — Linux-hardware

Добрый день. Пытаюсь подключить экран на контроллере ssd1306 по i2c. В качестве хоста - nanopi с armbian, ядро 5.10.60-sunxi.

Для начала, проверил работу из userspace - включил overlay для i2c0, посмотрел адрес устройства в i2cdetect. Для теста, что экран рабочий, использовал проект SSD1306 Экран работает, все рисует.

Теперь хочу подключить его как framebuffer. В ядре есть для него драйвер:

root@nanopiair:~# find /lib/modules/$(uname -r)/kernel/drivers/ -iname "*ssd1306*"
/lib/modules/5.10.60-sunxi/kernel/drivers/staging/fbtft/fb_ssd1306.ko

Пример dts взял из описания Описание правда немного странное. В начале указаны «Required properties:», а в примерах их нет.

В итоге добавил вот такой dts:

/dts-v1/;
/plugin/;

/ {
    compatible = "allwinner,sun8i-h3";

    fragment@0 {
        target = <&i2c0>;
        __overlay__ {
            pinctrl-names = "default";
            pinctrl-0 = <&i2c0_pins>;
            status = "okay";
            
        ssd1306: oled@3c {
	    compatible = "solomon,ssd1306fb-i2c";
            reg = <0x3c>;
	    solomon,height = <128>;
	    solomon,width = <64>;
	    solomon,page-offset = <0>;
	    };
	};    
};
};

Добавил overlay в настройки, но после перезагрузки в выводе dmesg ничего нет про ssd1306 и /dev/fb? не появляется.

Чтобы проверить, что overlay применился, после загрузки смотрю итоговое дерево:

dtc --sort -I fs -O dts  /sys/firmware/devicetree/base > device_tree.out
		i2c@1c2ac00 {
			#address-cells = <0x01>;
			#size-cells = <0x00>;
			clocks = <0x03 0x3b>;
			compatible = "allwinner,sun6i-a31-i2c";
			interrupts = <0x00 0x06 0x04>;
			phandle = <0x6e>;
			pinctrl-0 = <0x1c>;
			pinctrl-names = "default";
			reg = <0x1c2ac00 0x400>;
			resets = <0x03 0x2e>;
			status = "okay";

			oled@3c {
				compatible = "solomon,ssd1306fb-i2c";
				phandle = <0x86>;
				reg = <0x3c>;
				solomon,height = <0x80>;
				solomon,page-offset = <0x00>;
				solomon,width = <0x40>;
			};

			power-sensor@40 {
				compatible = "ti,ina226";
				reg = <0x40>;
				shunt-resistor = <0x3e8>;
			};
		};

В i2c0 вижу мой overlay, т.е. все применилось. power-sensor - это ina226 еще подключен и работает.

Модуль ядра тоже есть, его можно подгрузить руками modprobe fb_ssd1306, но кроме сообщения в dmesg о том, что модуль этот staging, ничего больше нет. /dev/fb не появляется.

В описании ssd1307 указано, что на данный момент поддерживается только шина I2C. Но в коде самого драйвера ssd1306.c почему-то указана SPI:

MODULE_ALIAS("spi:" DRVNAME);
MODULE_ALIAS("platform:" DRVNAME);
MODULE_ALIAS("spi:ssd1306");
MODULE_ALIAS("platform:ssd1306");

MODULE_DESCRIPTION("SSD1306 OLED Driver");
MODULE_AUTHOR("Noralf Tronnes");
MODULE_LICENSE("GPL");

Собственно вопрос, что делать и почему не работает?

 ,

Ivan_sam
()

Как прошёл FOSDEM 2021 на Matrix

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

6-7 февраля 2021 года прошла одна из крупнейших бесплатных конференций, посвящённая свободному программному обеспечению — FOSDEM. Обычно конференция проводилась вживую в Брюсселе, но из-за пандемии коронавируса её пришлось перенести в онлайн. Для реализации этой задачи организаторы скооперировались с командой Element и выбрали чат на основе свободного протокола Matrix для построения федеративной сети коммуникаций в реальном времени, свободную VoIP-платформу Jitsi Meet для интеграции видеоконференций, и собственные инструменты для их автоматизации. Конференцию посетило более 30 тысяч пользователей, из которых 8 тысяч — активные, а 24 тысячи — гости.

Протокол Matrix построен на основе линейной истории событий (events) в формате JSON внутри ациклического графа событий (DAG): простыми словами, является распределённой базой данных, хранящей полную историю отправленных сообщений и данные участвующих пользователей, реплицируя эту информацию между участвующими серверами — ближайшей аналогичной по работе технологией может быть Git. Основной реализацией этой сети является мессенджер с поддержкой сквозного шифрования и VoIP (аудио- и видеозвонков, групповых конференций). Эталонные реализации клиентов и серверов разрабатываются коммерческой компанией Element, сотрудники которой также возглавляют некоммерческую организацию Matrix.org Foundation, курирующую разработку спецификации протокола Matrix. На данный момент в сети Matrix насчитывается 28 миллионов аккаунтов и 60 тысяч серверов.

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

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

 , , , ,

commagray
()

Запуск экспериментального репозитория бинарных пакетов для Gentoo

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

Разработчик Gentoo Andreas K. Huettel объявил в своём блоге о запуске экспериментального репозитория бинарных пакетов для систем на архитектуре amd64.

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

>>> Репозиторий

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

 , ,

grem
()

Haiku на RISC-V плате HiFive Unmatched и ЛОРом в NetSurf

Галерея — Скриншоты

Сегодня открылся ЛОР в NetSurf в Haiku RISC-V.

С начала этого года делаю порт свободной UNIX-like операционной системы Haiku на процессорную архитектуру RISC-V (64 бит) (подробнее: My Haiku RISC-V port progress, My progress on real RISC-V hardware). Сейчас система уже неплохо работает на реальном RISC-V железе HiFive Unmatched, есть графика, сеть WiFi, поддержка многоядерности (SMP), пакеты портов собираются на самом железе, работает воспроизведение видео.

RISC-V — полностью открытая и свободная от каких либо отчислений процессорная архитектура, конкурирующая с ARM. Архитектура довольно новая и свободная от легаси вроде четырёх несовместимых наборов команд в ARM, разных MMU, и т.п.. Также архитектура очень простая и выразительная: я написал дизассеблер за два дня и минимально работающий порт Haiku за несколько недель. Для Haiku это первый рабочий порт на не x86-совместимую архитектуру. Остальные порты находятся в зачаточном состоянии без рабочего userland более 10 лет.

Компания SiFive производит открытые ядра RISC-V и готовые платы с полностью открытым программным обеспечением включая драйверы и прошивки. Я использую плату HiFive Unmatched. На плате есть шина PCIe так что можно использовать многие существующие драйвера Haiku без изменений.

Железо выглядит как-то так: раз, два.

Используемое железо:

  • Мат. плата: HiFive Unmatched.
  • Диск: Silicon Power SSD 256GB 3D TLC NAND M.2 2280 PCIe3.0×4 NVMe1.3 P34A60
  • Сеть: Intel AC 9260 M.2 WiFi
  • Видеокарта: AMD Radeon R7 250

>>> Просмотр (1920x1080, 263 Kb)

 , ,

X512
()