LINUX.ORG.RU

Запуск консольных программ в wm

 , ,


0

2

Не открывают программы подобные htop, btop, vim через лаунчеры в wm. Но что-то мигнуть успевает. Терминал использую alacritty. Если его открыть и вызвать в нём htop, то всё нормально. Я так подозреваю, что надо сопоставить в чём именно открыть htop. Использую Арч, wm - Niri. Пробовал задать переменную TERMINAL в конфиге niri, не помогло.

В liveCD PikaOS и в CachyOS такие штуки в niri работали из коробки.

Ещё пробовал запустить desktop-файл htop’а через dex, чтобы какие-то логи увидеть. Через него запускает (открывает отдельное окно терминала).

Как увидеть причину по которой не запускает htop? Куда ещё копнуть, чтобы решить проблему? xdg-mime?

★★★★★

Всё расписал, и WM и дистр и терминал, а самого главного нет — чем запускаешь-то? Какая-то менюшка типа fuzzel? Тупо хоткей и spawn в конфиге Niri? Через .desktop-файлы? Ещё как-то?

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

Через fuzzel тоже не работает. Запускаю через лаунчер noctalia.

Через .desktop-файлы?

выходит, что через них.

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

Уже пытался. В pikaOS сменил kitty на alacritty как раз через переменную TERMINAL.

environment {
    TERMINAL "alacritty"
}

В арче команда export эту переменную показывает - действует.

Куда ещё поискать? В pikaOS есть update-alternatives, например для выбора терминала. В Арче нет.

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

Стандартно из пакета, ничего не менял

[Desktop Entry]
Type=Application
Version=1.0
Name=Htop
GenericName=Process Viewer
GenericName[ca]=Visualitzador de processos
GenericName[da]=Procesfremviser
GenericName[de]=Prozessanzeige
GenericName[en_GB]=Process Viewer
GenericName[es]=Visor de procesos
GenericName[fi]=Prosessikatselin
GenericName[fr]=Visualiseur de processus
GenericName[gl]=Visor de procesos
GenericName[it]=Visore dei processi
GenericName[ko]=프로세스 뷰어
GenericName[nb]=Prosessviser
GenericName[nl]=Viewer van processen
GenericName[nn]=Prosessvisar
GenericName[pl]=Przeglądarka procesów
GenericName[pt]=Visualizador de Processos
GenericName[pt_BR]=Visualizador de processos
GenericName[ru]=Монитор процессов
GenericName[sk]=Prehliadač procesov
GenericName[sl]=Pregledovalnik opravil
GenericName[sr@ijekavian]=Приказивач процеса
GenericName[sr@ijekavianlatin]=Prikazivač procesa
GenericName[sr@latin]=Prikazivač procesa
GenericName[sr]=Приказивач процеса
GenericName[sv]=Processvisning
GenericName[tr]=Süreç Görüntüleyici
GenericName[uk]=Перегляд процесів
GenericName[zh_CN]=进程查看器
GenericName[zh_TW]=行程檢視器
Comment=Show System Processes
Comment[ca]=Visualitzeu els processos del sistema
Comment[da]=Vis systemprocesser
Comment[de]=Systemprozesse anzeigen
Comment[en_GB]=Show System Processes
Comment[es]=Mostrar procesos del sistema
Comment[fi]=Katsele järjestelmän prosesseja
Comment[fr]=Affiche les processus système
Comment[gl]=Mostrar os procesos do sistema.
Comment[it]=Mostra processi di sistema
Comment[ko]=시스템 프로세스 보기
Comment[nb]=Vis systemprosesser
Comment[nl]=Systeemprocessen tonen
Comment[nn]=Vis systemprosessar
Comment[pl]=Pokaż procesy systemowe
Comment[pt]=Mostrar os Processos do Sistema
Comment[pt_BR]=Mostra os processos do sistema
Comment[ru]=Просмотр списка процессов в системе
Comment[sk]=Zobraziť systémové procesy
Comment[sl]=Prikaz sistemskih opravil
Comment[sr@ijekavian]=Приказ системских процеса
Comment[sr@ijekavianlatin]=Prikaz sistemskih procesa
Comment[sr@latin]=Prikaz sistemskih procesa
Comment[sr]=Приказ системских процеса
Comment[sv]=Visa systemprocesser
Comment[tr]=Sistem Süreçlerini Göster
Comment[uk]=Перегляд системних процесів
Comment[zh_CN]=显示系统进程
Comment[zh_TW]=顯示系統行程
Icon=htop
Exec=htop
Terminal=true
Categories=System;Monitor;ConsoleOnly;
Keywords=system;process;task
NyXzOr ★★★★★
() автор топика
Последнее исправление: NyXzOr (всего исправлений: 1)
Ответ на: комментарий от andytux

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

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

Как раз-таки во fuzzel это сейчас очень просто делается.

По умолчанию настроено на $TERMINAL -e (в конце добавляется имя программы).

Или определи глобально $TERMINAL, какой нужен. Или в конфиге fuzzel:

terminal=alacritty -e

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

Тоже верно. Ещё вернее, создать свой десктоп-файл. Например, как здесь. На скриншоте, менюшка слева - это один десктоп-файл. В некоторых файлменеджерах ‘меню пользователя’ тоже реализуется посредством десктоп-файлов.

andytux ★★★★★
()

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

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

Как-то не правдоподобно. А как DE работают тогда? Не лезут же они в desktop файлы приложения и в ~/.local/share/applications.

Как раз xdg используют, не?

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

Неужели в переменную «TERMINAL»?

Идея плохая. Что будите делать, если вам нужно будет запустить терминал с другим флагом, или например, вообще с двумя или тремя флагами?

ChubaDuba
()