Форум
CRUX
BigOrange:
или не переходить, всже же работает нормально, если не обновляться.
Лучше не переходить. Ибо сам не знаешь, чего хочешь. Тут вопрос в чём. Хочешь ли ты остаться в привычной оболочке или познать то, чего они там такие недовольные. Интересно же... Ты сам этого не знаешь, как можно понять из твоего поста. Лучше ваш arch... Из него так много черпаю пояснений.
Другое дело - я. Засиделся в Slackware, хочется оптимизации. Хочется для себя создать идеальный дистрибутив, где нет ничего лишнего. CRUX позволяет это сделать, но, когда я хотел установить просто parom.tv, столкнулся с таким мешком зависимостей.
Для себя решил. Пилить CRUX всё равно буду. К слову, нашёл почему он тормознутый. Всё дело в pam. Эта зараза тормозит всё! Хотя в Slackware Пролетает моментом. "Прикрутили" плять... Откручиваю теперь...
Вобщем, лучше переустанови Arch. А если уж новых ощущений хочется, закатай на винт freedos. Расскажешь, как ты в инет выходил, как настраивал принтер...
Шучу...
Чтобы поддержать тему, расскажу как я из простого менеджера окон IceWM сделал для себя десктоп-окружение. Просто вмостил в LXDE вместо OpenBox менеджер окон IceWM. Да, я знаю, что разработчики LXDE с этого начинали... Это потом они OpenBox выбрали за командира управления окнами по умолчанию. Но мне нравится именно IceWM. Решил реконструировать былую схему. Для моего CRUX, это самый лучший DE. Итак...
Интеграция IceWM в LXSession
По умолчанию разработчики LXDE определили имя профиля рабочего стола как LXDE. Это можно увидеть по названию каталога где находится файл конфигурации LXSession desktop.conf:
/etc/xdg/lxsession/LXDE/desktop.confЗадача - запустить менеджер окон IceWM из LXSession, вместо предлагаемого по умолчанию WM OpenBOX. Чтобы оставить возможность запускать "чистый" LXDE в системе от разработчиков, создадим новый профиль специально для запуска менеджера окон IceWM. Конфигурационные файлы LXSession хранятся в домашнем каталоге пользователя ~/.config/lxsession/<Profile_Name>. В том случае, если файлы конфигураций в домашнем каталоге отсутствуют, LXSession загрузит общесистемные конфигурационные файлы из профиля /etc/xdg/lxsession/<Profile_name>. Для того, чтобы запускать IceWM отдельным сеансом в работу с помощью LXSession, создадим новый профильный каталог специально для запуска сеанса IceWM:
mkdir -p /etc/xdg/lxsession/IceWMВ каталоге-профиле должны находиться два файла:
autostart: В файле autostart помещают команды, которые будут выполнены в начале сеанса. Текстовый файл autostart не является shell-скриптом, но в каждая отдельная строка может содержать отдельную команду для выполнения. Если строка начинается с символа @, команда, последующая за этим символом в случае сбоя будет автоматически перезапущена. Строки, начинающиеся с символа #, являются комментариями.
desktop.conf: В файле desktop.conf определяют какой именно менеджер окон будет использоваться. Он должен находиться по адресу ~/.config/lxsession/LXDE/desktop.conf(по умолчанию там прописан Openbox).
Если этот файл не существует, LXSession выполнит его поиск по адресу /etc/xdg/lxsession/LXDE/desktop.conf.
Конфигурационный файл desktop.conf для профиля оконного менеджера IceWM может выглядеть так:
[Session]
window_manager=icewm
[GTK]
sNet/ThemeName=Clearlooks
sNet/IconThemeName=Faenza-Darkest
sGtk/FontName=Sans 10
iGtk/ToolbarStyle=3
iGtk/ButtonImages=1
iGtk/MenuImages=1
iGtk/CursorThemeSize=18
iXft/Antialias=1
sGtk/ColorScheme=
iGtk/ToolbarIconSize=3
iNet/EnableEventSounds=1
iNet/EnableInputFeedbackSounds=1
iXft/Hinting=1
sXft/HintStyle=hintfull
sXft/RGBA=rgb
[Mouse]
AccFactor=20
AccThreshold=10
LeftHanded=0
[Keyboard]
Delay=500
Interval=30Другой пример файла desktop.conf для Lubuntu можно посмотреть здесь. Пример конфигурационных файлов IceWM можно подсмотреть на форуме Lubuntu.
Пример файла autostart
(/etc/xdg/lxsession/IceWM/autostart)
# Рабочий стол будет обслуживать PCManFM
@pcmanfm --desktop --profile IceWM
# Запускаем апплет NetworkManager
@nm-applet
# Запускаем звуковой микшер PNMixer
@pnmixer
# Включаем режим набора цифр на дополнительной цифровой клавиатуре
@numlockx on
# Запускаем композитный менеджер Cairo Composite Manager
@cairo-compmgr
# Запускаем XScreenSaver
@xscreensaver -nosplash
# Запускаем переключатель клавиатуры для X11 - gxkb
@gxkb
# Проигрываем звук приветствия входа в систему
@aplay /usr/share/sounds/icewm/login-ru.wavЗапускается LXSession в работу с помощью скрипта, с произвольным названием, например startlxicewm:
#!/bin/sh
# startlxicewm
#╔═════════════════════════════════════════════════════════════════════════════╗
#║ Если пользовательский каталог не существует, создаём его и копируем туда из ║
#║ системного каталога конфигурационные файлы по умолчанию. ║
#╚═════════════════════════════════════════════════════════════════════════════╝
if [ ! -d $HOME/.icewm ]; then
mkdir $HOME/.icewm
for FILE in keys menu preferences toolbar winoptions;
do cat /usr/share/icewm/$FILE > $HOME/.icewm/$FILE;
done
fi
#╔═════════════════════════════════════════════════════════════════════════════╗
#║ Старт сеанса менеджера окон IceWM ║
#╚═════════════════════════════════════════════════════════════════════════════╝
# icewmbg &
# icewmtray &
exec /usr/bin/lxsession -s IceWM -e IceWMЭтот скрипт сохраняем по адресу:
/usr/bin/startlxicewmТеперь скрипт startlxicewm можно запустить двумя способами. Чтобы сеанс LXSession "увидел" дисплейный менеджер типа GDM, создаём файл lxicewm.desktop следующего содержания:
[Desktop Entry]
Encoding=UTF-8
Name=LXIceWM
Comment=LXIceWM - Lightweight X11 desktop environment
Exec=/usr/bin/startlxicewm
Type=Applicationи помещаем его по адресу /usr/share/xsessions. Теперь пункт запуска рабочего окружения LXIceWM появится в списке LXDM или GDM.
Второй способ запуска LXIceWM с помощью скрипта startx. Для этого создаём скрипт xinitrc.lxicewm следующего содержания:
#!/bin/sh
# xinitrc.lxicewm
userresources=$HOME/.Xresources
usermodmap=$HOME/.Xmodmap
sysresources=/etc/X11/xinit/.Xresources
sysmodmap=/etc/X11/xinit/.Xmodmap
#╔═════════════════════════════════════════════════════════════════════════════╗
#║ Объединение настроек по умолчанию и настроек клавиатуры. ║
#╚═════════════════════════════════════════════════════════════════════════════╝
[ -f $sysresources ] && xrdb -merge $sysresources
[ -f $sysmodmap ] && xmodmap $sysmodmap
[ -f $userresources ] && xrdb -merge $userresources
[ -f $usermodmap ] && xmodmap $usermodmap
#╔═════════════════════════════════════════════════════════════════════════════╗
#║ Старт сеанса менеджера окон IceWM ║
#╚═════════════════════════════════════════════════════════════════════════════╝
if [ -z "$DESKTOP_SESSION" -a -x /usr/bin/ck-launch-session ]; then
ck-launch-session dbus-launch --exit-with-session startlxicewm
else
startlxicewm
fiи помещаем его по адресу /etc/X11/xinit/. Теперь пункт запуска рабочего окружения LXIceWM появится в списке утилиты Slackware xwmconfig. Её я скопировал из дистрибутива Slackware в свой CRUX.
Если менеджер дисплея типа LXDM не используется, а LXSession запускается при помощи скрипта startx, для правильного функционирования Xdg-open в файл ~/.bash_profile нужно добавить выражение:
export DESKTOP_SESSION=IceWMСам IceWM нужно дополнительно настроить, возложив функцию выхода из сессии на LxSession. Для этого в файле ~/.icewm/preferences нужно запретить функции ShowLogoutSubMenu и ConfirmLogout:
# Show logout menu in the program menu (Показ меню выхода из IceWM)
ShowLogoutMenu=1 # 0/1
# Show logout submenu in the program menu (Показ подменю пункта выхода из IceWM)
ShowLogoutSubMenu=0 # 0/1
# Confirm logout (Вывод подтверждения выхода из сессии)
ConfirmLogout=0 # 0/1И создать в меню пункт для выхода из сессии с помощью утилиты lxsession-logout. Команду выхода оформим в виде shell-скрипта:
#!/bin/sh
# Выход из сессии IceWM и проигрывание звука logout-ru.wav
# Чтобы убрать проигрывание, нужно закомментировать строку aplay
# и удалить (или закоментировать) символ амперсенд &
/usr/bin/lxsession-logout --banner \
"/usr/share/lxde/images/logout-banner.png" \
--side top &
# Проигрываем звук выхода из системы
/usr/bin/aplay /usr/share/sounds/icewm/logout-ru.wav Сохраним его под названием logout-icewm в каталог /usr/bin/ и сделаем его исполняемым:
chmod +x /usr/bin/logout-icewmТеперь прописываем его как команду для выхода из сессии IceWM в файле ~/.icewm/preferences:
# Command to start logout (Команда для выхода из сессии)
LogoutCommand="/usr/bin/logout-icewm"Должно работать. Позже выложу html вариант этой записки. Там в цвете и красивее, на мой взгляд...
BigOrange:
было бы неплохо разъяснить в чём плюсы данной затеи и добавить картинок.
Картинок, каких?
Про плюсы вроде бы сказал - мне нравится IceWM. Или надо обязательно добавить, что XFCE фуфло, тормознутый, и меню у него не по моим стандартам. Переходит на GTK3, а я привык ко второму...
К слову, следующая заметка будет о том, как меню IceWM привести к стандарту старого Gnome, или MATE по новому...
К слову, как ты смеешь писать на русском? Ведь у вас это запретили?
Добавлено позже:
redix:
Жди ждун-манкурт. Тебя уклониста там макаки из наротной милиции искали, пора на нули, нефик по гейропам ж**у спасать.
Так я сам этого хотел... Тебе этого не понять. Как вы задолбали, онанисты...
Добавлено позже:
Ясно. Хохлы меня за манкурта приняли... Интересно!
Добавлено позже:
Хочу немного политики. А политика, это умение врать тем, кто тебя избрал. У меня вопрос к redix, ты кого выбирал, недохохол жидовский? Онип тебе врут по полной... Но ты возбухаешь против россиян. Если бы ты не квакнул против Путина, разговаривали мы бы с тобою по старому. Но тебя заело... Ты немного вякнул. Запомни! Или откажись от русского языка или пиши иероглифами.
Удаляйте меня и отсюда. Сам напрашиваюсь...
Добавлено позже:
redix:
Ты же бомж натуральный, ни флага ни родины, никому и нигде ты не нужен. Будешь всю жизнь бегать попрошайничать по хаткам, без гражданства.
Гражданство у меня Российское. Своих не сдаю, как вы, холятня...
Добавлено позже:
redix, давай перенесём место баталий на vk.com или на facebook.ua... Там разберёмся. За что вы нас убиваете. Здесь технический портал, не место для разборок...
Добавлено позже:
Просто зассал! Хотя я видел, что он этот пост смотрел...
Сука.
Это же для CRUX. Какой systemd? Хотя, ты прав. Можно было присобачить и кнопки. Но мне был интересен именно этот вариант... Я же просто поделился, это не руководство к действиям.
Добавлено позже:
Ещё есть такой фактор, как жена. Для неё "как в Windows", значит как у людей. Один из решающих факторов для меня. Это я с редиксом могу поспорить, а с женой... Да ну его нахрен!!!
Что такое ПКМ?
Есть же понятие WM, А есть DE. Какую из DE ты сам предпочитаешь? Правильный ответ у тебя в подписи. А почему так? Да потому, что есть выбор. Вот в винде выбора нет. Женился и всё... Как в жизни. А тут можно поиграться в конструктор.
Теперь на счёт преимуществ. IceWM сам по себе событие. Лёгок, а настраиваемость не изучили ещё даже сами авторы. Если ты писал хоть какие нибудь скрипты, должен знать, заложить возможность, не значит реализовать. Найдутся кадры, которые такие финты из этих возможностей сотворят...Ты можешь в сердцах даже подумать - и нафига я этот скрипт написал?
Теперь к делу. OpenBox легче будет, чем IceWM... Но нафига мне нужна эта уродина? Чисто из за того, что лёгкий? А настраиваемость? Никогда неуподабливался красноглазым подражателям крутизны, в их же понятиях. Почитать ЛОР, так там все такие крутые, всё знают, всех корёжит от новостей. Типа, они круче. А программ путёвых как не было, так и нет. Российского происхождения. Зато критиковать горазды.
Теперь о моей писульке. Честно скажи, стоит продолжать писать, или ну его нах...? Всё равно куча критиканов...
Я видел мануалы, где к DE прикручивают какой-нибудь другой WM (чаще Openbox).
Но я не могу понять зачем это нужно. Ни водном виденном мной мануале эта тема не раскрывается.
Это не критиканство, я правда хочу понять в чём выигрыш.
Пока я уяснил, что это влияет на внешний вид и что появляется некое удобство, (удобные кнопки для выключения, например).
То есть, получается есть возможность пользоваться особенносями и DE и WM.
Просто хотелось понять зачем, только и всего. Я не пытаюсь навязывать своих оценок, я их даже нигде не высказываю, просто хочу разобраться.
ПКМ - Правая Кнопка Мыши
XdgMenuMaker (генератор меню приложений для менеджеров окон)
xdgmenumaker - это инструмент командной строки, написанный на python, который генерирует меню приложений, используя информацию xdg, путем сканирования файлов *.desktop во всех каталогах $XDG_DATA_DIRS/application. Все приложения отсортированы в соответствии с основными категориями, указаннымив стандартах freedesktop.org. Пункты меню, сгенерированные xdgmenumaker, выводятся на том языке локали, которую пользователь выбрал при настройке системы.
В настоящее время xdgmenumaker поддерживает создание меню для blackbox, compizboxmenu, fluxbox, fvwm, icewm, jwm, pekwm, twm (и совместимых производных от них, таких как ctwm и vtwm) и windowmaker.
Для корректной работы xdgmenumaker, в системе должны быть установлены следующие пакеты:
Python 2.7 или 3.x
pyxdg
pygtk (для Python 2)
pygobject и gobject-instrospection (для Python 3)
Pillow (по желанию)
Генерирование меню для IceWM
Для генерирования файла меню без иконок годится следующая команда:
xdgmenumaker -f icewm > ~/.icewm/appmenuЕсли же нужен вывод иконок приложений и разделов в меню, нужно добавить в команду опцию
-i:xdgmenumaker -i -f icewm > ~/.icewm/appmenuДанная команда создаст сформированный файл с меню - appmenu. Для подключения его в файл ~/.icewm/menu нужно добавить в любом месте файла menu строку:
include appmenuВыглядит так:
Комбинирование меню
Текстовый файл appmenu создаётся в таком формате:
menu "Приложения" /usr/share/icons/Adwaita/16x16/legacy/applications-other.png {
menu "Аудио и видео" /usr/share/icons/Tango/16x16/categories/applications-multimedia.png {
prog "Audacious" /usr/share/icons/hicolor/48x48/apps/audacious.png audacious
...
prog "ТВ-плеер Паром" /usr/share/icons/hicolor/16x16/apps/paromplayer.png paromtv
}
menu "Графика" /usr/share/icons/Adwaita/16x16/legacy/applications-graphics.png {
prog "GNU Image Manipulation Program" /usr/share/icons/hicolor/16x16/apps/gimp.png gimp-2.10
...
prog "xfig" /usr/share/pixmaps/xfig.png /usr/bin/xfig
}
menu "Настройки" /usr/share/icons/Adwaita/16x16/legacy/preferences-desktop.png {
prog "Adobe Flash Player" /usr/share/icons/hicolor/16x16/apps/flash-player-properties.png flash-player-properties
...
prog "Хранитель экрана" /usr/share/icons/Tango/16x16/apps/xscreensaver.png xscreensaver-demo
}
menu "Офис" /usr/share/icons/Adwaita/16x16/legacy/applications-office.png {
prog "Txt2tags" /usr/share/pixmaps/txt2tags.png txt2tags --gui
...
prog "Просмотр документов" /usr/share/icons/hicolor/16x16/apps/evince.png evince
}
menu "Прочие" /usr/share/icons/Adwaita/16x16/legacy/applications-other.png {
prog "hp-uiscan" /usr/share/icons/Adwaita/16x16/devices/printer.png /usr/bin/hp-uiscan
}
menu "Разработка" /usr/share/icons/Adwaita/16x16/legacy/applications-development.png {
prog "CMake" /usr/share/icons/hicolor/32x32/apps/CMakeSetup.png cmake-gui
...
prog "distcc monitor" /usr/share/pixmaps/distccmon-gnome-icon.png distccmon-gnome
}
menu "Сеть и Интернет" /usr/share/icons/Adwaita/16x16/legacy/applications-internet.png {
prog "Firefox" /usr/share/icons/hicolor/16x16/apps/firefox.png firefox
...
prog "wpa_gui" /usr/share/pixmaps/wpa_gui.png kdesu wpa_gui
}
menu "Система" /usr/share/icons/Adwaita/16x16/legacy/applications-system.png {
prog "Cairo Composite Manager" /usr/share/icons/hicolor/16x16/apps/cairo-compmgr.png cairo-compmgr
...
prog "Файловый менеджер Thunar" /usr/share/icons/hicolor/16x16/apps/Thunar.png thunar
}
menu "Стандартные" /usr/share/icons/Adwaita/16x16/legacy/applications-accessories.png {
prog "GVim" /usr/share/icons/hicolor/48x48/apps/gvim.png gvim -f
...
prog "Таблица символов" /usr/share/icons/Adwaita/16x16/legacy/accessories-character-map.png gucharmap
}
}То есть, в главном меню будет виден всего лишь один пункт - "Приложения". Остальные же пункты - "Аудио и видео", "Графика", "Настройки" и другие будут видны как подменю. Для выноса этих пунктов меню в основное поле меню, нужно удалить первую и последнюю строки файла appmenu:
menu "Приложения" /usr/share/icons/Adwaita/16x16/legacy/applications-other.png {
...
}Этого можно достичь командой:
sed -i '1d;$d' ~/.icewm/appmenu
mv ~/.icewm/appmenu ~/.icewm/menuВ этом случае все созданные утилитой xdgmenumaker категории попадут в поле основного меню. Подключать файл appmenu в таком случае, к файлу ~/.icewm/menu уже не нужно. Для себя я формирую меню следующим скриптом из нескольких файлов:
#!/bin/bash
# Скрипт menu_update
xdgmenumaker -i -f icewm > ~/.icewm/menu_app
sed -i '1d;$d' ~/.icewm/menu_app
cat ~/.icewm/menu_1 > ~/.icewm/menu
cat ~/.icewm/menu_app >> ~/.icewm/menu
cat ~/.icewm/menu_2 >> ~/.icewm/menuФайл ~/.icewm/menu_1 создаю вручную, в нём самые необходимые для меня приложения:
menu "Интернет" /usr/share/icons/Adwaita/16x16/legacy/applications-internet.png {
prog "Браузер Iron" /usr/share/icons/hicolor/16x16/apps/iron.png /usr/bin/iron
prog "SeaMonkey" /usr/share/pixmaps/seamonkey-icon.png /usr/bin/seamonkey
prog "Firefox" /usr/share/icons/hicolor/16x16/apps/firefox.png firefox
}
separator
menu "Текстовые редакторы" /usr/share/icons/Adwaita/16x16/legacy/applications-graphics.png {
prog "medit" /usr/share/icons/hicolor/48x48/apps/medit.png medit
prog "SeaMonkey Composer" /usr/share/pixmaps/seamonkey-composer.png seamonkey -edit
}Файл ~/.icewm/menu_2 выглядит так:
separator
menufile "Программы" folder programs
menufile "Панель инструментов" folder toolbarВ результате моё меню выглядит так:
Добавлено позже:
В OpenBox такое возможно? Или в него просто влюбиться за компанию с лоровскими дебилами?

