Gostaria de experimentar alguns gerenciadores de janela de terminal, como o Viper Window Manager (VWM) e o Twin ("Textmode WINdow"), mas estou com dificuldades para executá-los no Ubuntu. Os pacotes estão disponíveis para estes ou outros esforços semelhantes ou existem algumas diretrizes para instalação?
EDIT: Eu adicionei abaixo uma descrição das dificuldades específicas que estou encontrando. Inicialmente, descrevo minha tentativa de instalar o Viper Window Manager, depois descrevo minha tentativa de instalar o Twin. Para ambas as tentativas, problemas são encontrados na compilação. Para o caso do Viper Window Manager, existem muitas referências indefinidas. Para o caso de Twin, parece haver um problema de formatação nos procedimentos Make. Eu não sei como proceder com qualquer um desses problemas e apreciaria quaisquer idéias que você possa ter. Obrigado.
Gerenciador de janelas do Viper
Os pré-requisitos listados para o Viper Window Manager são os seguintes:
- glib 2.8 +
- libpseudo
- libviper 1.4.5 +
- libgpm
- ncurses 5.4 +
instale o 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
instala a 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
instala libgpm, ncurses e 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.
instale o Gerenciador de janelas do Viper
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
Neste ponto, existe um problema. A saída do terminal abreviado é a seguinte:
/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
Gêmeo
instale o 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
Neste ponto, existe um problema. A saída do terminal é a seguinte:
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