Вопрос пытается установить диспетчеров оконных окон


Я хотел бы попробовать несколько оконных менеджеров окон, таких как Viper Window Manager (VWM) и Twin («Textmode WINdow»), но у меня возникают трудности с их запуском в Ubuntu. Доступны ли пакеты для этих или других подобных усилий или существуют ли какие-либо рекомендации по установке?


EDIT: Я добавил ниже описание конкретных трудностей, с которыми я сталкиваюсь. Первоначально я описываю свою попытку установки Viper Window Manager, а затем описываю мою попытку установить Twin. Для обеих попыток возникают проблемы при компиляции. В случае с Viper Window Manager существует много неопределенных ссылок. Для случая Twin, похоже, проблема форматирования в процедурах Make. Я не знаю, как приступить к любой из этих проблем, и буду признателен за любые идеи, которые у вас могут возникнуть. Благодарю.

Менеджер окон Viper

Ниже перечислены предварительные условия для Viper Window Manager:

  • glib 2.8+
  • libpseudo
  • libviper 1.4.5+
  • libgpm
  • ncurses 5.4+

установить glib 2.40.0

wget http://ftp.acc.umu.se/pub/GNOME/sources/glib/2.40/glib-2.40.0.tar.xz
tar -xvf glib-2.40.0.tar.xz
cd glib-2.40.0/
./configure
make
sudo make install

установить libpseudo

wget http://garr.dl.sourceforge.net/project/libpseudo/libpseudo-1.2.0.tar.gz
tar -xvf libpseudo-1.2.0.tar.gz
cd libpseudo/
make
sudo make install

установить libgpm, ncurses и libviper

wget http://kent.dl.sourceforge.net/project/libviper/libviper-1.4.6.tar.gz
tar -xvf libviper-1.4.6.tar.gz
cd libviper/
sudo apt-get install -y ncurses-dev
sudo apt-get install -y libgpm-dev
make
sudo make install
# The file viper.h is in the directory /usr/local/include now.
# The file libviper.so is in the directory /usr/local/lib now.

установить Viper Window Manager

wget http://garr.dl.sourceforge.net/project/vwm/vwm-2.1.3.tar.gz
tar -xvf vwm-2.1.3.tar.gz
cd cd vwm/
make

На данный момент существует проблема. сокращенный вывод терминала:

/tmp/ccNnGI2W.o: In function `vwm_init':
/home/user/VWM/vwm/vwm.c:200: undefined reference to `viper_screen_get_wallpaper'
/home/user/VWM/vwm/vwm.c:202: undefined reference to `g_malloc0'
/tmp/ccNnGI2W.o: In function `main':
/home/user/VWM/vwm/vwm.c:87: undefined reference to `g_module_supported'
/home/user/VWM/vwm/vwm.c:130: undefined reference to `g_thread_init'
/home/user/VWM/vwm/vwm.c:132: undefined reference to `viper_init'
/home/user/VWM/vwm/vwm.c:134: undefined reference to `viper_set_border_agent'
/home/user/VWM/vwm/vwm.c:135: undefined reference to `viper_set_border_agent'
/home/user/VWM/vwm/vwm.c:142: undefined reference to `viper_kmio_dispatch_set_hook'
/home/user/VWM/vwm/vwm.c:145: undefined reference to `viper_screen_redraw'
/home/user/VWM/vwm/vwm.c:149: undefined reference to `psthread_init'
/home/user/VWM/vwm/vwm.c:150: undefined reference to `psthread_add'
/home/user/VWM/vwm/vwm.c:151: undefined reference to `psthread_add'
/home/user/VWM/vwm/vwm.c:178: undefined reference to `psthread_run'
/home/user/VWM/vwm/vwm.c:172: undefined reference to `shmq_msg_get'
/home/user/VWM/vwm/vwm.c:181: undefined reference to `psthread_run'
/home/user/VWM/vwm/vwm.c:186: undefined reference to `viper_end'
/tmp/ccdfRjqI.o: In function `vwm_bkgd_simple':
/home/user/VWM/vwm/vwm_bkgd.c:54: undefined reference to `viper_thread_enter'
/home/user/VWM/vwm/vwm_bkgd.c:56: undefined reference to `viper_wresize'
/home/user/VWM/vwm/vwm_bkgd.c:65: undefined reference to `window_fill'
/home/user/VWM/vwm/vwm_bkgd.c:70: undefined reference to `wattr_on'
/home/user/VWM/vwm/vwm_bkgd.c:71: undefined reference to `mvwprintw'
/home/user/VWM/vwm/vwm_bkgd.c:72: undefined reference to `wattr_on'
/home/user/VWM/vwm/vwm_bkgd.c:74: undefined reference to `viper_thread_leave'
/home/user/VWM/vwm/vwm_bkgd.c:59: undefined reference to `viper_color_pair'
/tmp/ccdfRjqI.o: In function `vwm_bkgd_bricks':
/home/user/VWM/vwm/vwm_bkgd.c:110: undefined reference to `viper_thread_enter'
/home/user/VWM/vwm/vwm_bkgd.c:112: undefined reference to `viper_wresize'
/home/user/VWM/vwm/vwm_bkgd.c:113: undefined reference to `wattr_off'
/home/user/VWM/vwm/vwm_bkgd.c:146: undefined reference to `wattr_on'
/home/user/VWM/vwm/vwm_bkgd.c:147: undefined reference to `mvwprintw'
/home/user/VWM/vwm/vwm_bkgd.c:148: undefined reference to `wattr_on'
/home/user/VWM/vwm/vwm_bkgd.c:150: undefined reference to `viper_thread_leave'
/home/user/VWM/vwm/vwm_bkgd.c:121: undefined reference to `viper_color_pair'
/home/user/VWM/vwm/vwm_bkgd.c:128: undefined reference to `wmove'
/home/user/VWM/vwm/vwm_bkgd.c:129: undefined reference to `waddch'
/home/user/VWM/vwm/vwm_bkgd.c:136: undefined reference to `viper_color_pair'
/home/user/VWM/vwm/vwm_bkgd.c:141: undefined reference to `window_fill'

... many similar errors, removed for the purposes of post brevity...

/tmp/ccHLYQ3M.o: In function `vwm_sigset':
/home/user/VWM/vwm/vwm_signals.c:38: undefined reference to `g_malloc0'
/home/user/VWM/vwm/vwm_signals.c:46: undefined reference to `g_free'
/tmp/ccHLYQ3M.o: In function `vwm_backtrace':
/home/user/VWM/vwm/vwm_signals.c:61: undefined reference to `endwin'
/tmp/ccrc2yXA.o: In function `vwm_fmod_wndlist':
/home/user/VWM/vwm/vwm_wndlist.c:45: undefined reference to `viper_window_find_by_class'
/home/user/VWM/vwm/vwm_wndlist.c:47: undefined reference to `viper_thread_enter'
/home/user/VWM/vwm/vwm_wndlist.c:49: undefined reference to `viper_deck_get_wndlist'
/home/user/VWM/vwm/vwm_wndlist.c:50: undefined reference to `g_strv_length'
/home/user/VWM/vwm/vwm_wndlist.c:58: undefined reference to `viper_menu_create'
/home/user/VWM/vwm/vwm_wndlist.c:60: undefined reference to `g_malloc0'
/home/user/VWM/vwm/vwm_wndlist.c:63: undefined reference to `set_menu_format'
/home/user/VWM/vwm/vwm_wndlist.c:65: undefined reference to `set_menu_mark'
/home/user/VWM/vwm/vwm_wndlist.c:67: undefined reference to `scale_menu'
/home/user/VWM/vwm/vwm_wndlist.c:71: undefined reference to `viper_window_create'
/home/user/VWM/vwm/vwm_wndlist.c:72: undefined reference to `viper_menu_bind'
/home/user/VWM/vwm/vwm_wndlist.c:76: undefined reference to `viper_color_pair'
/home/user/VWM/vwm/vwm_wndlist.c:75: undefined reference to `set_menu_fore'
/home/user/VWM/vwm/vwm_wndlist.c:77: undefined reference to `viper_color_pair'
/home/user/VWM/vwm/vwm_wndlist.c:77: undefined reference to `set_menu_back'
/home/user/VWM/vwm/vwm_wndlist.c:82: undefined reference to `viper_event_set'
/home/user/VWM/vwm/vwm_wndlist.c:84: undefined reference to `viper_window_set_key_func'
/home/user/VWM/vwm/vwm_wndlist.c:85: undefined reference to `viper_window_set_userptr'
/home/user/VWM/vwm/vwm_wndlist.c:86: undefined reference to `viper_window_set_state'
/home/user/VWM/vwm/vwm_wndlist.c:88: undefined reference to `viper_thread_leave'
/home/user/VWM/vwm/vwm_wndlist.c:89: undefined reference to `g_strfreev'
/home/user/VWM/vwm/vwm_wndlist.c:54: undefined reference to `viper_thread_leave'
/tmp/ccrc2yXA.o: In function `vwm_fmod_wndlist_ON_DESTROY':
/home/user/VWM/vwm/vwm_wndlist.c:111: undefined reference to `viper_thread_enter'
/home/user/VWM/vwm/vwm_wndlist.c:127: undefined reference to `viper_menu_destroy'
/home/user/VWM/vwm/vwm_wndlist.c:129: undefined reference to `viper_thread_leave'
/tmp/ccrc2yXA.o: In function `vwm_fmod_wndlist_ON_KEYSTROKE':
/home/user/VWM/vwm/vwm_wndlist.c:141: undefined reference to `viper_window_get_userptr'
/home/user/VWM/vwm/vwm_wndlist.c:151: undefined reference to `viper_thread_enter'
/home/user/VWM/vwm/vwm_wndlist.c:170: undefined reference to `viper_window_redraw'
/home/user/VWM/vwm/vwm_wndlist.c:171: undefined reference to `viper_thread_leave'
/home/user/VWM/vwm/vwm_wndlist.c:156: undefined reference to `current_item'
/home/user/VWM/vwm/vwm_wndlist.c:158: undefined reference to `viper_window_destroy'
/home/user/VWM/vwm/vwm_wndlist.c:166: undefined reference to `viper_thread_leave'
/home/user/VWM/vwm/vwm_wndlist.c:145: undefined reference to `menu_driver'
/home/user/VWM/vwm/vwm_wndlist.c:146: undefined reference to `getmouse'
/home/user/VWM/vwm/vwm_wndlist.c:151: undefined reference to `viper_thread_enter'
/home/user/VWM/vwm/vwm_wndlist.c:153: undefined reference to `menu_driver'
/home/user/VWM/vwm/vwm_wndlist.c:152: undefined reference to `menu_driver'
collect2: error: ld returned 1 exit status
make: *** [vwm] Error 1

Близнец

установить Twin

wget http://netcologne.dl.sourceforge.net/project/twin/twin/0.6.2/twin-0.6.2.tar.gz
tar -xvf twin-0.6.2.tar.gz
cd twin-0.6.2/
./configure
make

На данный момент существует проблема. Выход терминала следующий:

make -C include
make[1]: Entering directory `/home/user/Twin/twin-0.6.2/include'
make autogen -C Tutf
make[2]: Entering directory `/home/user/Twin/twin-0.6.2/include/Tutf'
make[2]: Nothing to be done for `autogen'.
make[2]: Leaving directory `/home/user/Twin/twin-0.6.2/include/Tutf'
make autogen -C Tw
make[2]: Entering directory `/home/user/Twin/twin-0.6.2/include/Tw'
make[2]: Nothing to be done for `autogen'.
make[2]: Leaving directory `/home/user/Twin/twin-0.6.2/include/Tw'
make autogen -C TT
make[2]: Entering directory `/home/user/Twin/twin-0.6.2/include/TT'
make[2]: Nothing to be done for `autogen'.
make[2]: Leaving directory `/home/user/Twin/twin-0.6.2/include/TT'
make[1]: Leaving directory `/home/user/Twin/twin-0.6.2/include'
make -C docs
make[1]: Entering directory `/home/user/Twin/twin-0.6.2/docs'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/home/user/Twin/twin-0.6.2/docs'
make -C themes
make[1]: Entering directory `/home/user/Twin/twin-0.6.2/themes'
make -C hw_gfx
make[2]: Entering directory `/home/user/Twin/twin-0.6.2/themes/hw_gfx'
ln -f -s ShinyMetal_6x13.xpm default_6x13.xpm
ln -f -s absolute-e_8x16.xpm default_8x16.xpm
ln -f -s Ganymede_9x19.xpm default_9x19.xpm
make[2]: Leaving directory `/home/user/Twin/twin-0.6.2/themes/hw_gfx'
make[1]: Leaving directory `/home/user/Twin/twin-0.6.2/themes'
make -C libs
make[1]: Entering directory `/home/user/Twin/twin-0.6.2/libs'
make -C libTutf
make[2]: Entering directory `/home/user/Twin/twin-0.6.2/libs/libTutf'
gcc -D_REENTRANT -O2 -fomit-frame-pointer -fno-strict-aliasing -Wall -Wshadow -Wno-uninitialized -Wno-pointer-sign -D_GNU_SOURCE  -I../../include  -s  ../../scripts/endianity.c -o ../../scripts/Endianity
../../scripts/Endianity > ../../include/Tw/endianity.h
gcc -D_REENTRANT -O2 -fomit-frame-pointer -fno-strict-aliasing -Wall -Wshadow -Wno-uninitialized -Wno-pointer-sign -D_GNU_SOURCE  -I../../include   -s  ../../scripts/getsizes.c -o ../../scripts/Getsizes
../../scripts/Getsizes > ../../include/Tw/datasizes.h
gcc -D_REENTRANT -O2 -fomit-frame-pointer -fno-strict-aliasing -Wall -Wshadow -Wno-uninitialized -Wno-pointer-sign -D_GNU_SOURCE  -I../../include  -s  ../../scripts/mkdep.c -o ../../scripts/Mkdep
cat ../../scripts/unitypes32.in > ../../include/Tw/uni_types.h
building  ../../.hdepend
building  ../../include/Tw/Twautoconf.h
/bin/bash ../../scripts/Configure.tty "../../" "../../" < /dev/null > /dev/null || \
    /bin/sh ../../scripts/Configure.fallback "../../" "../../" < /dev/null > /dev/null
building  .depend
building  .modules
make[2]: Leaving directory `/home/user/Twin/twin-0.6.2/libs/libTutf'
make[2]: Entering directory `/home/user/Twin/twin-0.6.2/libs/libTutf'
.modules:1: *** missing separator. Stop.
make[2]: Leaving directory `/home/user/Twin/twin-0.6.2/libs/libTutf'
make[1]: *** [build-dir-libTutf] Error 2
make[1]: Leaving directory `/home/user/Twin/twin-0.6.2/libs'
make: *** [build-dir-libs] Error 2

2
2018-05-10 13:26


происхождения


Я не думаю, что вы найдете пакеты Ubuntu, я очень сомневаюсь, что в мире Ubuntu есть большой интерес к чему-то подобному. я предлагаю тебе редактировать ваш вопрос и объясните, каковы ваши трудности. Вы должны иметь возможность компилировать и устанавливать из источника. Ты пробовал? - terdon♦
Спасибо за ваши комментарии и предложения. Мой интерес к этим интерфейсам основан как на любопытстве (я никогда не использовал обширных оконных менеджеров текстового режима и не хотел) и практичности (я слышал хорошие отчеты о их удаленном использовании (например, через SSH). Я действительно попытался скомпилировать из источника и столкнулись с трудностями как для Viper Window Manager, так и для Twin. Я отредактировал свой пост, чтобы дать конкретную информацию об этих проблемах. Сообщите мне, если у вас есть мысли! :) - d3pd
Если вам удастся создать VMW, проверьте эта ошибка - Braiam
Почему вы установили библиотеки из исходного кода вместо использования доступных в репозиториях пакетов? - terdon♦
Я установил ncurses и libgpm из пакетов, но для остальных я не видел очевидного способа сделать это. - d3pd


ответы:


Близнец

Twin Windows Manager можно установить в 14.04, установив libtwin0 пакет. Для полной установки выполните следующую команду:

sudo apt-get install libtwin0 multiarch-support libc6 libjpeg8 libpng12-0 libx11-6 zlib1g libtwin-dev gextractwinicons

Синтаксис для использования Twin in Commandline:

twin [OPTION [...]]

Вы можете найти варианты:

twin -h

Вы также можете прочитать manpages.ubuntu.com статья.


1
2018-05-11 02:54



Спасибо за ваш ответ. Это выглядит многообещающе. Сделав это, вы знаете, как я могу попытаться запустить Twin? Когда я пытаюсь выполнить либо команду twinили twstart, они не найдены. - d3pd


Близнец

Это сработало для меня на ubuntu 16.04:

git clone https://github.com/cosmos72/twin
cd twin
./configure
make
sudo make install
export LD_LIBRARY_PATH=/usr/local/lib
twin

1
2017-09-12 07:33