LINUX.ORG.RU

Niri 26.04

 , , , ,


0

4

Вышла новая версия Niri v26.04 — скролл-тайлингового композитора для Wayland, который располагает окна в колонках на бесконечной полосе вправо, при этом открытие нового окна не изменяет размеры уже открытых.

Написан Niri на Rust, распространяется по лицензии GPL3. В феврале репозиторий на GitHub преодолел 20 000 звёзд.

Основной особенностью релиза, о которой просили больше всего, является поддержка размытия (blur) фона. Размытие работает через протокол Wayland ext-background-effect, поддерживается многими приложениями и оболочками (Dank Material Shell, Noctalia shell, Vicinae launcher, терминалы foot, kitty, Ghostty и др.).

Для приложений без поддержки протокола можно включить размытие через конфигурацию Niri. Есть два типа размытия: xray blur (эффективный, использует размытые обои как статичное изображение) и обычное размытие (более затратное по ресурсам). Можно настроить, какой тип использовать для разных слоёв окон, например:

// Make top and overlay layers use the regular blur (if enabled),
// while bottom and background layers keep using the efficient xray blur.
layer-rule {
    match layer="top"
    match layer="overlay"

    background-effect {
        xray false
    }
}

Размытие — сложная функция, потребовавшая значительных изменений в архитектуре рендеринга для быстрой и корректной работы, включая поддержку в обзоре окон (Overview) и взаимодействие с другими эффектами. Также добавлена возможность применять прозрачность и эффекты размытия к всплывающим меню (pop-up) с настройкой радиуса углов и прозрачности.

Среди других изменений можно отметить поддержку опциональных включений (optional includes) конфигом — можно подключать файлы, которые могут отсутствовать без ошибки загрузки, что удобно для локальных переопределений. Также улучшена служба niri.service — путь к бинарнику теперь не захардкожен. Произведены и другие изменения, касающиеся поведения указателя «мыши» при скроллинге, Screencasting’а и многого другого — подробности читайте по ссылке на релиз внизу. Минимальная поддерживаемая версия Rust теперь 1.85.

Разработчики также отмечают перемещение проекта Niri в организацию на GitHub вместо личного аккаунта разработчика YaLTeR. Это позволило расширить права на управление задачами и пулл-реквестами. Разработчики выражают благодарность Sempyos за активное участие в поддержке и помощи пользователям. В организацию также перенесены смежные проекты, включая список связанных проектов awesome-niri (Vortriz) и репозиторий с артами от создателей логотипа (bluelinden и HumpityDumpityDumber), где есть значок и несколько обоев, включая 3D-работы, созданные в Blender (Duncan-Rose).

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

★★★★★

Проверено: dataman ()
Последнее исправление: CrX (всего исправлений: 6)
Ответ на: комментарий от CrX

Вопрос же не в тулкито-фобии, а в том что эти приложения инородные. Если нет Qt вообще, то почему я не могу обойтись без таких приложений? Это лишние зависимости, которые совершенно не вписываются. Если бы я строил окружение на Qt я точно так же сторонился от GTK. Тут нет фобии, просто прагматизм.

dmitry237 ★★★★★
()
Ответ на: комментарий от James_Holden

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

Fake
()
Ответ на: комментарий от dmitry237

Если бы я строил окружение на Qt я точно так же сторонился от GTK

Это и есть тулкитофобия.

Тут нет фобии, просто прагматизм.

Прагматизм — это пользоваться тем, что выполняет задачу так, как хочется.

Нет, у меня тоже есть предпочтения, как я и писал выше, но только при прочих равных. Вот если DeaDBeeF выполняет все функции, которые я хочу видеть в аудиоплеере идеально, а всякие moc и mpd — чере пень-колоду, то я выберу DeaDBeeF, хотя он и на GTK, а не на предпочитаемом мной TUI. Хотя мысли о том, чтобы запилить к нему TUI-интерфейс (благо, плагином можно это сделать), у меня есть — руки не доходят.

Или вот Electrum — единственное приложение, которое у меня на Qt. Что предложишь использовать, сятобы обойтись без Qt? Своё с нуля пилить, ради выпиливания сотни мегабайт с HDD?

При этом я понимаю, что можно обойтись и без Qt и без GTK. Всё зависит от задач/потребностей/хотелок. Странно только другим советовать удалить «ненужное» — будто они бы никогда до этого не догадались, если бы всё то же самое было на том тулките, что больше нравится.

CrX ★★★★★
() автор топика
Ответ на: комментарий от dmitry237

клиента Nextcloud не существует на gtk, Gajim написан на gtk, psi+ не предлагать, это адище прости г-спади

список можно продолжать до бесконечности, он у каждого свой. в моменте оказалось, что необходимых мне TUI-аналогов больше чем софта на гтк или кутях. единственный момент тут найти либо что-то с кастомизируемыми хоткеями либо изначально с vim-образным управлением

Fake
()
Ответ на: комментарий от CrX

Это и есть тулкитофобия.

Ни разу это не так. Это скорее жедание не захламлять систему. Я просто удалял тулкит и все с ним связанное. Это целая стопка пакетов.

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

dmitry237 ★★★★★
()
Ответ на: комментарий от Fake

клиента Nextcloud

Что это такое? Я, серьезно, без понятия. Ну а вы пользуйтесь чем угодно, мне все равно.

dmitry237 ★★★★★
()
Ответ на: комментарий от dmitry237

Это скорее жедание не захламлять систему. Я просто удалял тулкит и все с ним связанное. Это целая стопка пакетов.

Или одним словом — тулкитофобия :)

CrX ★★★★★
() автор топика
Ответ на: комментарий от CrX

Или одним словом — тулкитофобия :)

Вы же не ставите винду, это виндо-фобия (по вашему)

Фобия, это не принятие или негативное отношение. Но в моем случае, это не так. А в моем окружениии, это просто лишние пакеты, приложения без которых мне прекрасно, так зачем же мне то, без чего я обойдусь? Это 20+ того, без чего я не стадаю и себя не ущемляю. Все же просто.

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

dmitry237 ★★★★★
()
Ответ на: комментарий от dmitry237

А в моем окружениии, это просто лишние пакеты, приложения без которых мне прекрасно, так зачем же мне то, без чего я обойдусь?

Если без них прекрасно, то зачем было их вообще ставить?

Это 20+ того, без чего я не стадаю и себя не ущемляю.

Не понял, что такое 20+.

Это, еще раз, не ненависть, которая порождает фобию

Ты слишком буквально воспринимаешь слово тулкитофобия, да ещё и зачем-то разбираешь его на составляющие. :)

Да ок, пусть будет не тулкитофобия (а просто [«не хочу захламлять систему» и прочее, чем и определяется тулкитофобия]), как скажешь.


На самом деле я тебя прекрасно понимаю. Если идеально выполняющий все хотелки софт есть на каждом тулките на выбор, то конечно можно и выбор на основе тулкита основывать, и поудалять то, что на неугодном тулките. У меня вот не с тулкитами, а с компилятором Go и его либами так было — пока был yay, приходилось Go держать в системе, чтобы его собирать. Потом появился paru, и надобность в Go в системе отпала, и я без зазрений совести удалил «лишнее и ненужное» (при том, что какой-то неприязни к Go как таковому я не испытываю). Точно так же может быть и с тулкитами, я понимаю. Просто не у всех и не всегда так. Часто бывает, что нужная софтина написана с использованием того или иного тулкита. И она нужна. Наверное, без неё возможно обойтись (ну не умрёшь точно), но не хочется. Поэтому в итоге в системе образуется довольно знатный зоопарк этих самых тулкитов.

У меня вот на Qt Electrum. Он нужен. Вот и приходится держать Qt в системе. А ещё от Qt зависит пакет mkvtoolnix. Тут зависимостепроблемы, да — я гуйнёй-то из него даже не пользуюсь, но ПМ вот решил, что Qt ему нужен. Можно пересобирать пакет, а можно забить — это же всего несколько десятков МБ на SSD. Ну и может я пересобрал бы даже, если бы мне для Electrum при этом Qt был не нужен. Ну а так вот он всё равно есть, и без него никак.

У других это будет другой набор программ. Но обычно если у человека стоят какие-то тулкиты, то они не просто так стоят, а потому что нужны для какой-то нужной ему программы.

CrX ★★★★★
() автор топика
Ответ на: комментарий от CrX

Если без них прекрасно, то зачем было их вообще ставить?

Так я и не ставил ничего из мира Qt. Не потому что какая-то предвзятость, просто можно и без них, по крайней мере в моем персональном окружении. Аналогично было, когда у меня были кеды, я не ставил GTK-приложения.

Не понял, что такое 20+.

Ну может и не 20, но это Qt-setup.

Все дальнейшее, это ваш личный юз-кейс, у меня свой, а у вас другой. Только и всего. У меня нет Qt вообще, и что? Может если мне вдруг понадобится, то я не буду особенно размышлять, но пока так, как есть. Например нужна будет телега из реп:

$ pacman -Si telegram-desktop | grep -Po "qt\d-\S+"
qt6-base 
qt6-imageformats 
qt6-svg 
qt6-wayland 

А пока она доступна уже собранная и без каких-либо зависимостей. Два бинаря «Telegram» и «Updater».

dmitry237 ★★★★★
()
Ответ на: комментарий от dmitry237

Все дальнейшее, это ваш личный юз-кейс, у меня свой, а у вас другой.

Ну вот мы собственно и пришли к тому, с чего всё начиналось. Начиналось всё с вашего:

Удалите ненужное. У меня нет ни одного приложения, которое требовало-бы Qt.

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

CrX ★★★★★
() автор топика
Ответ на: комментарий от CrX

Это была реакция на:

мне просто надоел в своё время зоопарк тулкитов

Логично же, если надоело. Оставьте что-то одно и не будет проблем, ведь так?

Ну а вы сразу стали приплетать фобии.

dmitry237 ★★★★★
()
Ответ на: комментарий от kaldeon

Манипулировать окнами в принципе неудобно, это несколько провальная концепция, которую зафорсили чтобы понтоваться многозадачностью в пику DOS. Типа, смотрите какие чудеса, сразу три приложения запущено! Лучше было в DOS, приложение просто использовало весь экран.

James_Holden ★★★★★
()
Ответ на: комментарий от kaldeon

Зачем, например, держать полностью развёрнутым мессенджер?

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

James_Holden ★★★★★
()
Ответ на: комментарий от Fake

я могу мышь вообще не трогать

В Reaper мышь не трогать? Хотел бы я это увидеть. Или в Krita.

James_Holden ★★★★★
()
Последнее исправление: James_Holden (всего исправлений: 1)
Ответ на: комментарий от dmitry237

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

Да блина, есть задачи которые нужно решать, они первичны. У меня почти все на Qt, но никак, никаким образом GTK выкинуть не получится, потому что на нем есть софт и для него нет замены, вообще нет и табло треснет такому софту замену сделать на Qt. Начиная с Firefox. Да даже GIMP, заменить нечем. Krita все-таки не дотягивает.

James_Holden ★★★★★
()
Ответ на: комментарий от James_Holden

Но ведь в первых версиях DOS был тайлинг. То есть плавающие окна сделали не ради понтов — понты типа уже были.

У меня от плавающих окон совершенно другие впечатления. Если убрать автоматическое управление (через панель), сделать рамки окон потолще, освободить все 4 рамки экрана (смотрю в сторону macOS)—и это неполный список оптимизаций—то дышать уже станет лучше.

Основная фича плавающих окон — запоминание произвольного положения, пропорции одного окна не влияют на другое, даже если их много.

Но это концептуально более сложная модель, чем простой список/док или даже тот же тайлинг. До этой стадии доходят, наверное, 1% пользователей.

kaldeon ★★
()
Последнее исправление: kaldeon (всего исправлений: 1)
Ответ на: комментарий от dmitry237

Логично же, если надоело. Оставьте что-то одно и не будет проблем, ведь так?

Ну так он так и сделал, не? Просто не полностью. Потому что не всегда это возможно. Очень далеко не всегда.

CrX ★★★★★
() автор топика
Последнее исправление: CrX (всего исправлений: 1)
Ответ на: комментарий от James_Holden

Например, основное большое окно занимает почти весь экран, но снизу есть немного свободного места. И там видно часть окна мессенджера. Он всегда на экране в каком-то виде, но не отвлекает.

Получается типа панели, только без панели и на всех 4 сторонах экрана.

(Впрочем, конкретно мессенджер можно и скрыть, учитывая психологический аспект.)

kaldeon ★★
()
Последнее исправление: kaldeon (всего исправлений: 2)

Скажу, что очень удобное управление, особенно на ноутбуке: свайпы тремя пальцами, прокрутка окон тремя пальцами вправо, влево, вниз, вверх. Это мой второй тайлинг за 20 лет на Linux, причём первый я установил недавно, потом после переустановки использовал Niri. Кстати разработчики наш земляк с России поэтому двойной лайк.

sharabdin
()
Последнее исправление: sharabdin (всего исправлений: 1)

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

Вы ещё срач WM vs DE устройте 😊

atERENtR
()
Ответ на: комментарий от zabbal

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

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

Ну и готовые Noctalia или Dank Matireal Shell тоже дают как бы готовое к использованию уже собранное и рекомендуют niri.

cylon17
()
Ответ на: комментарий от cylon17

тебе как бы надо разделить пространство попалам и открыть там что-то

Это как? Все тайлинговые WM что я видел автоматом это делают.

готовые Noctalia или Dank Matireal Shell

А что это и где его посмотреть?

zabbal ★★★★☆
()
Ответ на: комментарий от zabbal

Это как? Все тайлинговые WM что я видел автоматом это делают.

Так этот автомат часто и есть нежелательное поведение, котрого в niri нет. Зачем мне окошко 5 строк в высоту ? :)

https://github.com/AvengeMedia/DankMaterialShell

cylon17
()
Последнее исправление: cylon17 (всего исправлений: 1)
Ответ на: комментарий от cylon17

Зачем мне окошко 5 строк в высоту ?

Это надо либо специально конфигурировать, либо открыть ну очень много окон.

https://github.com/AvengeMedia/DankMaterialShell

Мерси, как раз думал с чем MiracleWM попробовать.

проще прокрутить назад

Вот это наиболее смущающий момент - как именно я буду искать конкретное окно без пронумерованных десктопов к которым его можно привязать?

zabbal ★★★★☆
()
Ответ на: комментарий от zabbal

Вот это наиболее смущающий момент - как именно я буду искать конкретное окно без пронумерованных десктопов к которым его можно привязать?

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

Я не знаю что за кейсы когда нужно много окон открыть и зачем и что-то о них помнить и трей есть. Ну вот такие вещи как нашел что-то в браузере и попробывать в терминале удобно браузер не изменяется и ты пробуешь крутнул назад или alt+tab. Другой вариант несколько фоток посмотреть кликнул 3-5 фоток и они у тебя в ленте, крути ленту смотри при этом в ленте смотерть это другое качество не так как по очереди. Для таких оперативных одноразовых операций удобно. Плюс ты можешь место в ленте окна менять, то что по смыслу рядом поставить, не нужное закрыть.

В niri десктопы применяшь только по необходимости и они нужны больше когда несколько мониторов.

niri это как обчная оконная система но новое открывается не сверху над окнами, а справа в ленте, при этом удобные хоткеи быстро смаштабировать, упорядочить и разместить если надо открытое.

Я себе доуставливаю софт от гнома в dms: nаutilus, Loupe, showtime, connect и т.п. оно гармонично сочетается. :)

Короче надо пробывать тогда поймешь надо такое или нет.

cylon17
()
Последнее исправление: cylon17 (всего исправлений: 3)
Ответ на: комментарий от cylon17

нашел что-то в браузере и попробывать в терминале удобно браузер не изменяется и ты пробуешь крутнул назад или alt+tab

Занятно, именно этот кейс и привлёк меня к тайлингу в своё время: браузер всегда на 2м десктопе, терминал на 3м - ничего искать не надо, переключаешься сразу куда хочешь.

в ленте смотерть это другое качество не так как по очереди

Вот тут вообще не раздуплил разницы: фотка ж во весь экран, прокручивается тем же колёсиком например - какая разница делает это WM и просмотрщик? Откуда другое качество возьмётся?

надо пробывать тогда поймешь надо такое или нет

Похоже на то :)

zabbal ★★★★☆
()
Ответ на: комментарий от zabbal

фотка ж во весь экран

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

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

niri - сначала действие: открываешь, а потом встариваешь в структкру

классический тайлинг - сначала структура: продумываешь на каком десктопе и как пишешь в конфиг потом открываешь - дествие

это как на python когда новый класс программируешь сразу конструктор пишешь и там структуру уже продумываешь как в niri

или в java класс: сначала продумываешь структуру, доступ к полям типы и т.п. и только потом уже конструктор как в классическом тайлинге

действие -> структура vs структура -> действие

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

cylon17
()
Последнее исправление: cylon17 (всего исправлений: 1)
Ответ на: комментарий от cylon17

niri - сначала действие: открываешь, а потом встариваешь в структкру

классический тайлинг - сначала структура

Хорошее описание, вполне объясняет почему niri меня не зацепил: мне достаточно настроить эту самую структуру один раз и потом жить с ней годами.

zabbal ★★★★☆
()
Для того чтобы оставить комментарий войдите или зарегистрируйтесь.