Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
emerge fails because of vim dependency on gtk+
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Portage & Programming
View previous topic :: View next topic  
Author Message
direwolf
Tux's lil' helper
Tux's lil' helper


Joined: 11 Jun 2003
Posts: 125
Location: Richmond, VA

PostPosted: Wed Feb 08, 2023 2:58 pm    Post subject: emerge fails because of vim dependency on gtk+ Reply with quote

Why is there suddenly a dependency on vim that requires gtk+, and a full graphical environment. vim is a text editor, it should not have a requirement on gtk+

Code:
emerge vim -pv

These are the packages that would be merged, in order:

Calculating dependencies... done!

The following USE changes are necessary to proceed:
 (see "package.use" in the portage(5) man page for more details)
# required by media-libs/libcanberra-0.30-r7::gentoo[gtk3]
# required by app-editors/vim-9.0.1000::gentoo[sound]
# required by vim (argument)
>=x11-libs/gtk+-3.24.35 X
# required by x11-libs/gtk+-3.24.35::gentoo
# required by x11-themes/adwaita-icon-theme-43_p1::gentoo
>=media-libs/libepoxy-1.5.10-r1 X
# required by x11-libs/gtk+-3.24.35::gentoo
# required by x11-themes/adwaita-icon-theme-43_p1::gentoo
>=x11-libs/cairo-1.17.6 X
# required by x11-libs/gtk+-3.24.35::gentoo[X]
# required by x11-themes/adwaita-icon-theme-43_p1::gentoo
>=media-libs/libglvnd-1.6.0 X

!!! The ebuild selected to satisfy "media-libs/mesa[egl(+),abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?]" has unmet requirements.
- media-libs/mesa-22.2.5::gentoo USE="gles2 proprietary-codecs xa zstd -X -d3d9 -debug -gles1 -llvm -lm-sensors -opencl -osmesa (-selinux) -test -unwind -vaapi -valgrind -vdpau -vulkan -vulkan-overlay -wayland -xvmc -zink" ABI_X86="(64) -32 (-x32)" CPU_FLAGS_X86="sse2" VIDEO_CARDS="vmware -d3d12 (-freedreno) -intel (-lima) -nouveau (-panfrost) -r300 -r600 -radeon -radeonsi (-v3d) (-vc4) -virgl (-vivante)"

  The following REQUIRED_USE flag constraints are unsatisfied:
    xa? ( X )

  The above constraints are a subset of the following complete expression:
    d3d9? ( any-of ( video_cards_intel video_cards_r300 video_cards_r600 video_cards_radeonsi video_cards_nouveau video_cards_vmware ) ) vulkan? ( video_cards_radeonsi? ( llvm ) ) vulkan-overlay? ( vulkan ) video_cards_radeon? ( x86? ( llvm ) amd64? ( llvm ) ) video_cards_r300? ( x86? ( llvm ) amd64? ( llvm ) ) video_cards_radeonsi? ( llvm ) xa? ( X ) xvmc? ( X ) zink? ( vulkan )

(dependency required by "media-libs/libepoxy-1.5.10-r1::gentoo" [ebuild])
(dependency required by "x11-libs/gtk+-3.24.35::gentoo" [ebuild])
(dependency required by "x11-themes/adwaita-icon-theme-43_p1::gentoo" [ebuild])

_________________
========================================================
"Somebody has to do something, and it's just incredibly pathetic that it has to be us."
- Jerry Garcia
Back to top
View user's profile Send private message
fedeliallalinea
Administrator
Administrator


Joined: 08 Mar 2003
Posts: 30917
Location: here

PostPosted: Wed Feb 08, 2023 3:05 pm    Post subject: Reply with quote

Try to disable sound use flag from vim.

-- edit --
Or disable gtk3 from media-libs/libcanberra.
_________________
Questions are guaranteed in life; Answers aren't.
Back to top
View user's profile Send private message
direwolf
Tux's lil' helper
Tux's lil' helper


Joined: 11 Jun 2003
Posts: 125
Location: Richmond, VA

PostPosted: Wed Feb 08, 2023 4:02 pm    Post subject: Reply with quote

fedeliallalinea wrote:
Try to disable sound use flag from vim.

-- edit --
Or disable gtk3 from media-libs/libcanberra.


I don't have libcanberra installed at all on that box, or gtk+, none of that worked.

I was able to install with USE="-sound".

So now I've lost terminal beeps in vim, because someone decided if vim needed terminal beeps, it would depend on a full stack graphical environment and localized sound system. LAZY
_________________
========================================================
"Somebody has to do something, and it's just incredibly pathetic that it has to be us."
- Jerry Garcia
Back to top
View user's profile Send private message
Hu
Moderator
Moderator


Joined: 06 Mar 2007
Posts: 21633

PostPosted: Wed Feb 08, 2023 4:09 pm    Post subject: Re: emerge fails because of vim dependency on gtk+ Reply with quote

direwolf wrote:
Why is there suddenly a dependency on vim that requires gtk+, and a full graphical environment. vim is a text editor, it should not have a requirement on gtk+
app-editors/vim does not have a dependency on gtk+. According to the output you showed, vim has an optional (behind USE=sound) dependency on media-libs/libcanberra. In turn, media-libs/libcanberra has an optional (behind USE=gtk3) dependency on x11-libs/gtk+[X].

As I read the source code and the documentation, this is for sound_playevent and similar ex functions. This allows for fancy sounds. Basic terminal bell support is typically done through echoing the bell character, which asks the terminal to ring its bell. Some terminals may do other things. I like a visual bell instead of an audible one. Do you have evidence that the terminal bell is not functional with USE=-sound?
Back to top
View user's profile Send private message
grknight
Retired Dev
Retired Dev


Joined: 20 Feb 2015
Posts: 1660

PostPosted: Wed Feb 08, 2023 4:10 pm    Post subject: Reply with quote

direwolf wrote:
fedeliallalinea wrote:
Try to disable sound use flag from vim.

-- edit --
Or disable gtk3 from media-libs/libcanberra.


I don't have libcanberra installed at all on that box, or gtk+, none of that worked.

I was able to install with USE="-sound".

So now I've lost terminal beeps in vim, because someone decided if vim needed terminal beeps, it would depend on a full stack graphical environment and localized sound system. LAZY


No, the sound USE pulls in media-libs/libcanberra. media-libs/libcanberra defaults to having the gtk3 USE as many people use it for such a purpose, but is easily disabled. It is not required to have a GUI.
Back to top
View user's profile Send private message
direwolf
Tux's lil' helper
Tux's lil' helper


Joined: 11 Jun 2003
Posts: 125
Location: Richmond, VA

PostPosted: Wed Feb 08, 2023 10:18 pm    Post subject: Reply with quote

grknight wrote:
direwolf wrote:
fedeliallalinea wrote:
Try to disable sound use flag from vim.

-- edit --
Or disable gtk3 from media-libs/libcanberra.


I don't have libcanberra installed at all on that box, or gtk+, none of that worked.

I was able to install with USE="-sound".

So now I've lost terminal beeps in vim, because someone decided if vim needed terminal beeps, it would depend on a full stack graphical environment and localized sound system. LAZY


No, the sound USE pulls in media-libs/libcanberra. media-libs/libcanberra defaults to having the gtk3 USE as many people use it for such a purpose, but is easily disabled. It is not required to have a GUI.


This is a change, however.

I've been using VIM on that box for years, never modified the USE flags, don't have libcanberra installed and don't have gtk+ installed either. I can't say at this point whether the bell works without it or not. Maybe [sound] was added as a default recently?

Okay, I checked. VIM always was compiled with sound - it hasn't reinstalled yet with the flag removed. It always worked fine and installed without libcanberra or gtk+.

As you can see, I've updated it with "USE-sound", but it's currently installed WITH sound, version 9.0.0099-r1. Seems to be a change in version 9.0.1000.

Code:

 * Found these USE flags for app-editors/vim-9.0.1000:
 U I
 - - X                               : Link console vim against X11 libraries to enable title and clipboard features in xterm
 + + acl                             : Add support for Access Control Lists
 + + crypt                           : Use dev-libs/libsodium for crypto support
 - - cscope                          : Enable cscope interface
 - - debug                           : Enable extra debug codepaths, like asserts and extra output. If you want to get meaningful backtraces see
                                       https://wiki.gentoo.org/wiki/Project:Quality_Assurance/Backtraces
 + + gpm                             : Add support for sys-libs/gpm (Console-based mouse driver)
 - - lua                             : Enable Lua scripting support
 + + lua_single_target_lua5-1        : Build for Lua 5.1 only
 - - lua_single_target_lua5-3        : Build for Lua 5.3 only
 - - lua_single_target_lua5-4        : Build for Lua 5.4 only
 - - lua_single_target_luajit        : Build for LuaJIT only
 - - minimal                         : Install a very minimal build (disables, for example, plugins, fonts, most drivers, non-critical features)
 + + nls                             : Add Native Language Support (using gettext - GNU locale utilities)
 + + perl                            : Add optional support/bindings for the Perl language
 + - python                          : Add optional support/bindings for the Python language
 - - python_single_target_python3_10 : Build for Python 3.10 only
 - - python_single_target_python3_11 : Build for Python 3.11 only
 + + python_single_target_python3_9  : Build for Python 3.9 only
 - - racket                          : Enable support for Scheme using dev-scheme/racket
 - - ruby                            : Add support/bindings for the Ruby language
 - + sound                           : Enable sound support
 - - tcl                             : Add support the Tcl language
 - - terminal                        : Enable terminal emulation support
 - - vim-pager                       : Install vimpager and vimmanpager links

_________________
========================================================
"Somebody has to do something, and it's just incredibly pathetic that it has to be us."
- Jerry Garcia
Back to top
View user's profile Send private message
Hu
Moderator
Moderator


Joined: 06 Mar 2007
Posts: 21633

PostPosted: Wed Feb 08, 2023 10:53 pm    Post subject: Reply with quote

As I read the ebuild history, and seemingly confirmed by vim's :help version8, sound support is new in Vim 8.1.1502, not version 9.0.1000. Additionally, the USE flag does not appear to be default-enabled in the ebuild, so if it is enabled for you, then either your profile is doing it or you have a local setting causing it.
Back to top
View user's profile Send private message
direwolf
Tux's lil' helper
Tux's lil' helper


Joined: 11 Jun 2003
Posts: 125
Location: Richmond, VA

PostPosted: Thu Feb 09, 2023 1:12 pm    Post subject: Reply with quote

Hu wrote:
As I read the ebuild history, and seemingly confirmed by vim's :help version8, sound support is new in Vim 8.1.1502, not version 9.0.1000. Additionally, the USE flag does not appear to be default-enabled in the ebuild, so if it is enabled for you, then either your profile is doing it or you have a local setting causing it.


*sound support* may have existed in 8.1.1502, but it didn't depend on libcanberra until 9.0.1000.

That's how I was able to compile it up to vim-9.0.0099-r1 with sound support.
_________________
========================================================
"Somebody has to do something, and it's just incredibly pathetic that it has to be us."
- Jerry Garcia
Back to top
View user's profile Send private message
Hu
Moderator
Moderator


Joined: 06 Mar 2007
Posts: 21633

PostPosted: Thu Feb 09, 2023 1:24 pm    Post subject: Reply with quote

I see in an older copy of a Portage tree:
Code:
$ grep -nH sound app-editors/vim/vim-*
app-editors/vim/vim-8.2.4586.ebuild:30:IUSE="X acl crypt cscope debug gpm lua minimal nls perl python racket ruby selinux sound tcl terminal vim-pager"
app-editors/vim/vim-8.2.4586.ebuild:56: sound? ( media-libs/libcanberra )
app-editors/vim/vim-8.2.4586.ebuild:205:                        $(use_enable sound canberra)
app-editors/vim/vim-8.2.5066-r1.ebuild:30:IUSE="X acl crypt cscope debug gpm lua minimal nls perl python racket ruby selinux sound tcl terminal vim-pager"
app-editors/vim/vim-8.2.5066-r1.ebuild:56:      sound? ( media-libs/libcanberra )
app-editors/vim/vim-8.2.5066-r1.ebuild:205:                     $(use_enable sound canberra)
app-editors/vim/vim-9.0.0049.ebuild:30:IUSE="X acl crypt cscope debug gpm lua minimal nls perl python racket ruby selinux sound tcl terminal vim-pager"
app-editors/vim/vim-9.0.0049.ebuild:56: sound? ( media-libs/libcanberra )
app-editors/vim/vim-9.0.0049.ebuild:203:                        $(use_enable sound canberra)
app-editors/vim/vim-9.0.0099.ebuild:30:IUSE="X acl crypt cscope debug gpm lua minimal nls perl python racket ruby selinux sound tcl terminal vim-pager"
app-editors/vim/vim-9.0.0099.ebuild:56: sound? ( media-libs/libcanberra )
app-editors/vim/vim-9.0.0099.ebuild:204:                        $(use_enable sound canberra)
These are all versions lower than 9.0.9999-r1, and all have the ability to USE=sound, and all enable a dependency on libcanberra when that USE is set. All of them leave USE=sound to the user, rather than default-enabling it. Therefore, I suggest again that your local configuration, either through your chosen Portage profile or through settings in /etc/portage, began setting USE=sound when it previously did not.

I also reiterate that this does not appear to be related to the terminal bell, and therefore suggest that USE=-sound will not impair your stated use case.
Back to top
View user's profile Send private message
logrusx
Veteran
Veteran


Joined: 22 Feb 2018
Posts: 1535

PostPosted: Thu Feb 09, 2023 1:52 pm    Post subject: Re: emerge fails because of vim dependency on gtk+ Reply with quote

direwolf wrote:
Why is there suddenly a dependency on vim that requires gtk+, and a full graphical environment. vim is a text editor, it should not have a requirement on gtk+

Code:
emerge vim -pv

These are the packages that would be merged, in order:

Calculating dependencies... done!

The following USE changes are necessary to proceed:
 (see "package.use" in the portage(5) man page for more details)
# required by media-libs/libcanberra-0.30-r7::gentoo[gtk3]
# required by app-editors/vim-9.0.1000::gentoo[sound]
# required by vim (argument)
>=x11-libs/gtk+-3.24.35 X
# required by x11-libs/gtk+-3.24.35::gentoo
# required by x11-themes/adwaita-icon-theme-43_p1::gentoo
>=media-libs/libepoxy-1.5.10-r1 X
# required by x11-libs/gtk+-3.24.35::gentoo
# required by x11-themes/adwaita-icon-theme-43_p1::gentoo
>=x11-libs/cairo-1.17.6 X
# required by x11-libs/gtk+-3.24.35::gentoo[X]
# required by x11-themes/adwaita-icon-theme-43_p1::gentoo
>=media-libs/libglvnd-1.6.0 X

!!! The ebuild selected to satisfy "media-libs/mesa[egl(+),abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?]" has unmet requirements.
- media-libs/mesa-22.2.5::gentoo USE="gles2 proprietary-codecs xa zstd -X -d3d9 -debug -gles1 -llvm -lm-sensors -opencl -osmesa (-selinux) -test -unwind -vaapi -valgrind -vdpau -vulkan -vulkan-overlay -wayland -xvmc -zink" ABI_X86="(64) -32 (-x32)" CPU_FLAGS_X86="sse2" VIDEO_CARDS="vmware -d3d12 (-freedreno) -intel (-lima) -nouveau (-panfrost) -r300 -r600 -radeon -radeonsi (-v3d) (-vc4) -virgl (-vivante)"

  The following REQUIRED_USE flag constraints are unsatisfied:
    xa? ( X )

  The above constraints are a subset of the following complete expression:
    d3d9? ( any-of ( video_cards_intel video_cards_r300 video_cards_r600 video_cards_radeonsi video_cards_nouveau video_cards_vmware ) ) vulkan? ( video_cards_radeonsi? ( llvm ) ) vulkan-overlay? ( vulkan ) video_cards_radeon? ( x86? ( llvm ) amd64? ( llvm ) ) video_cards_r300? ( x86? ( llvm ) amd64? ( llvm ) ) video_cards_radeonsi? ( llvm ) xa? ( X ) xvmc? ( X ) zink? ( vulkan )

(dependency required by "media-libs/libepoxy-1.5.10-r1::gentoo" [ebuild])
(dependency required by "x11-libs/gtk+-3.24.35::gentoo" [ebuild])
(dependency required by "x11-themes/adwaita-icon-theme-43_p1::gentoo" [ebuild])


direwolf wrote:


Okay, I checked. VIM always was compiled with sound - it hasn't reinstalled yet with the flag removed. It always worked fine and installed without libcanberra or gtk+.


We can't say much without the complete emerge output from the time you attempted to update your system.

Vim 8.1.1486 didn't have sound use flag. It was introduced with the next stable Vim 8.1.1846

Libcanberra on the other hand has had +gtk3 since at least 2017, so it didn't introduce that dependency to gtk3 recently and cannot be blamed.

direwolf wrote:
So now I've lost terminal beeps in vim


Hu wrote:
Basic terminal bell support is typically done through echoing the bell character, which asks the terminal to ring its bell. Some terminals may do other things.


You must have lost terminal bell for unrelated reasons.

I emerged vim with -sound and indeed vim still has the terminal bell, so you need to check what changed with your terminal. If you don't use any graphical environment at all, then it might be related to a kernel upgrade. There are two modules, one of them pscpkr and the other I don't remember. It's in the ALSA subsection and is the better solution. I think its name is Digital Beep or something similar. Pscpkr is problematic and is there maybe for compatibility or historical reasons.

Best Regards,
Georgi

p.s. that claim cannot possibly be true:
direwolf wrote:


*sound support* may have existed in 8.1.1502, but it didn't depend on libcanberra until 9.0.1000.

That's how I was able to compile it up to vim-9.0.0099-r1 with sound support.


As presented above, sound use flag appeared in 8.1.1846 and has been enabled by the user since then. There is a remote chance portage has changed behavior while calculating the dependency graph. Either way, it's up to the user and maybe for some reason it was not enabled for you until today or whenever you attempted this update.
Back to top
View user's profile Send private message
direwolf
Tux's lil' helper
Tux's lil' helper


Joined: 11 Jun 2003
Posts: 125
Location: Richmond, VA

PostPosted: Thu Feb 09, 2023 6:30 pm    Post subject: Reply with quote

Quote:
There is a remote chance portage has changed behavior while calculating the dependency graph.


Well that has to be some explanation for it, or people are trying to gaslight me or something ...

VIM was compiled on 11/1/2022 *without* sound:

Code:
 vim --version
VIM - Vi IMproved 9.0 (2022 Jun 28, compiled Nov  1 2022 18:16:36)
Included patches: 1-99
Modified by Gentoo-9.0.0099-r1
Compiled by hholt@localhost
Huge version without GUI.  Features included (+) or not (-):
+acl               +file_in_path      +mouse_urxvt       -tag_any_white
+arabic            +find_in_path      +mouse_xterm       -tcl
+autocmd           +float             +multi_byte        +termguicolors
+autochdir         +folding           +multi_lang        -terminal
-autoservername    -footer            -mzscheme          +terminfo
-balloon_eval      +fork()            +netbeans_intg     +termresponse
+balloon_eval_term +gettext           +num64             +textobjects
-browse            -hangul_input      +packages          +textprop
++builtin_terms    +iconv             +path_extra        +timers
+byte_offset       +insert_expand     +perl              +title
+channel           +ipv6              +persistent_undo   -toolbar
+cindent           +job               +popupwin          +user_commands
-clientserver      +jumplist          +postscript        +vartabs
-clipboard         +keymap            +printer           +vertsplit
+cmdline_compl     +lambda            +profile           +vim9script
+cmdline_hist      +langmap           -python            +viminfo
+cmdline_info      +libcall           +python3           +virtualedit
+comments          +linebreak         +quickfix          +visual
+conceal           +lispindent        +reltime           +visualextra
+cryptv            +listcmds          +rightleft         +vreplace
-cscope            +localmap          -ruby              +wildignore
+cursorbind        -lua               +scrollbind        +wildmenu
+cursorshape       +menu              +signs             +windows
+dialog_con        +mksession         +smartindent       +writebackup
+diff              +modify_fname      +sodium            -X11
+digraphs          +mouse             -sound             -xfontset
-dnd               -mouseshape        +spell             -xim
-ebcdic            +mouse_dec         +startuptime       -xpm
+emacs_tags        +mouse_gpm         +statusline        -xsmp
+eval              -mouse_jsbterm     -sun_workshop      -xterm_clipboard
+ex_extra          +mouse_netterm     +syntax            -xterm_save
+extra_search      +mouse_sgr         +tag_binary
-farsi             -mouse_sysmouse    -tag_old_static
   system vimrc file: "/etc/vim/vimrc"
     user vimrc file: "$HOME/.vimrc"
 2nd user vimrc file: "~/.vim/vimrc"
      user exrc file: "$HOME/.exrc"
       defaults file: "$VIMRUNTIME/defaults.vim"
  fall-back for $VIM: "/usr/share/vim"
Compilation: x86_64-pc-linux-gnu-gcc -c -I. -Iproto -DHAVE_CONFIG_H -march=athlon64 -O2 -pipe -D_REENTRANT -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1
Linking: x86_64-pc-linux-gnu-gcc -Wl,-E -Wl,-O1 -Wl,--as-needed -L/usr/local/lib -o vim -lm -ltinfo -lelf -lsodium -lrt -lacl -lattr -lgpm -Wl,-E -Wl,-O1 -Wl,--as-needed -L/usr/lib64/perl5/5.34/x86_64-linux/CORE -lperl -ldl -lm -lcrypt -lutil -lc -lpython3.9 -ldl -lm -lm


But the USE flag for sound was turned on:
Code:

equery u vim
[ Legend : U - final flag setting for installation]
[        : I - package is installed with flag    ]        <=============================
[ Colors : set, unset                             ]
 * Found these USE flags for app-editors/vim-9.0.1000:
 U I
 - - X                               : Link console vim against X11 libraries to enable title and clipboard features in xterm
 + + acl                             : Add support for Access Control Lists
 + + crypt                           : Use dev-libs/libsodium for crypto support
 - - cscope                          : Enable cscope interface
 - - debug                           : Enable extra debug codepaths, like asserts and extra output. If you want to get meaningful backtraces see
                                       https://wiki.gentoo.org/wiki/Project:Quality_Assurance/Backtraces
 + + gpm                             : Add support for sys-libs/gpm (Console-based mouse driver)
 - - lua                             : Enable Lua scripting support
 + + lua_single_target_lua5-1        : Build for Lua 5.1 only
 - - lua_single_target_lua5-3        : Build for Lua 5.3 only
 - - lua_single_target_lua5-4        : Build for Lua 5.4 only
 - - lua_single_target_luajit        : Build for LuaJIT only
 - - minimal                         : Install a very minimal build (disables, for example, plugins, fonts, most drivers, non-critical features)
 + + nls                             : Add Native Language Support (using gettext - GNU locale utilities)
 + + perl                            : Add optional support/bindings for the Perl language
 + - python                          : Add optional support/bindings for the Python language
 - - python_single_target_python3_10 : Build for Python 3.10 only
 - - python_single_target_python3_11 : Build for Python 3.11 only
 + + python_single_target_python3_9  : Build for Python 3.9 only
 - - racket                          : Enable support for Scheme using dev-scheme/racket
 - - ruby                            : Add support/bindings for the Ruby language
- + sound                           : Enable sound support                                         <-==========================================
 - - tcl                             : Add support the Tcl language
 - - terminal                        : Enable terminal emulation support
 - - vim-pager                       : Install vimpager and vimmanpager links


No, the USE flag was not changed on the system until I realized it needed to be explicitly set to "-sound" to compile the latest version.

The old version compiled without sound even with the USE flag turned on. Probably based on ... something else. Or maybe it was a bug that was fixed, but that seems like a long time for nobody to notice that the sound USE flag wasn't working.
_________________
========================================================
"Somebody has to do something, and it's just incredibly pathetic that it has to be us."
- Jerry Garcia
Back to top
View user's profile Send private message
Hu
Moderator
Moderator


Joined: 06 Mar 2007
Posts: 21633

PostPosted: Thu Feb 09, 2023 7:35 pm    Post subject: Reply with quote

The ebuild for vim-9.0.0099-r1 has the same, seemingly correct, USE=sound handling. The build log might tell you more, or you can abandon this, since we have determined you don't need USE=sound.
Back to top
View user's profile Send private message
logrusx
Veteran
Veteran


Joined: 22 Feb 2018
Posts: 1535

PostPosted: Fri Feb 10, 2023 7:50 am    Post subject: Reply with quote

direwolf wrote:
Quote:
There is a remote chance portage has changed behavior while calculating the dependency graph.


Well that has to be some explanation for it, or people are trying to gaslight me or something ...

Don't bet on it.
direwolf wrote:
VIM was compiled on 11/1/2022 *without* sound:

Code:
 vim --version
VIM - Vi IMproved 9.0 (2022 Jun 28, compiled Nov  1 2022 18:16:36)
Included patches: 1-99
Modified by Gentoo-9.0.0099-r1
Compiled by hholt@localhost
Huge version without GUI.  Features included (+) or not (-):
+acl               +file_in_path      +mouse_urxvt       -tag_any_white
+arabic            +find_in_path      +mouse_xterm       -tcl
+autocmd           +float             +multi_byte        +termguicolors
+autochdir         +folding           +multi_lang        -terminal
-autoservername    -footer            -mzscheme          +terminfo
-balloon_eval      +fork()            +netbeans_intg     +termresponse
+balloon_eval_term +gettext           +num64             +textobjects
-browse            -hangul_input      +packages          +textprop
++builtin_terms    +iconv             +path_extra        +timers
+byte_offset       +insert_expand     +perl              +title
+channel           +ipv6              +persistent_undo   -toolbar
+cindent           +job               +popupwin          +user_commands
-clientserver      +jumplist          +postscript        +vartabs
-clipboard         +keymap            +printer           +vertsplit
+cmdline_compl     +lambda            +profile           +vim9script
+cmdline_hist      +langmap           -python            +viminfo
+cmdline_info      +libcall           +python3           +virtualedit
+comments          +linebreak         +quickfix          +visual
+conceal           +lispindent        +reltime           +visualextra
+cryptv            +listcmds          +rightleft         +vreplace
-cscope            +localmap          -ruby              +wildignore
+cursorbind        -lua               +scrollbind        +wildmenu
+cursorshape       +menu              +signs             +windows
+dialog_con        +mksession         +smartindent       +writebackup
+diff              +modify_fname      +sodium            -X11
+digraphs          +mouse             -sound             -xfontset
-dnd               -mouseshape        +spell             -xim
-ebcdic            +mouse_dec         +startuptime       -xpm
+emacs_tags        +mouse_gpm         +statusline        -xsmp
+eval              -mouse_jsbterm     -sun_workshop      -xterm_clipboard
+ex_extra          +mouse_netterm     +syntax            -xterm_save
+extra_search      +mouse_sgr         +tag_binary
-farsi             -mouse_sysmouse    -tag_old_static
   system vimrc file: "/etc/vim/vimrc"
     user vimrc file: "$HOME/.vimrc"
 2nd user vimrc file: "~/.vim/vimrc"
      user exrc file: "$HOME/.exrc"
       defaults file: "$VIMRUNTIME/defaults.vim"
  fall-back for $VIM: "/usr/share/vim"
Compilation: x86_64-pc-linux-gnu-gcc -c -I. -Iproto -DHAVE_CONFIG_H -march=athlon64 -O2 -pipe -D_REENTRANT -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1
Linking: x86_64-pc-linux-gnu-gcc -Wl,-E -Wl,-O1 -Wl,--as-needed -L/usr/local/lib -o vim -lm -ltinfo -lelf -lsodium -lrt -lacl -lattr -lgpm -Wl,-E -Wl,-O1 -Wl,--as-needed -L/usr/lib64/perl5/5.34/x86_64-linux/CORE -lperl -ldl -lm -lcrypt -lutil -lc -lpython3.9 -ldl -lm -lm

So we have a progress, your terminal bell didn't disappear because of the newly introduced sound support which, I stress on, is not the beep sound you had before.

direwolf wrote:
But the USE flag for sound was turned on:
Code:

equery u vim
[ Legend : U - final flag setting for installation]
[        : I - package is installed with flag    ]        <=============================
[ Colors : set, unset                             ]
 * Found these USE flags for app-editors/vim-9.0.1000:
 U I
 - - X                               : Link console vim against X11 libraries to enable title and clipboard features in xterm
 + + acl                             : Add support for Access Control Lists
 + + crypt                           : Use dev-libs/libsodium for crypto support
 - - cscope                          : Enable cscope interface
 - - debug                           : Enable extra debug codepaths, like asserts and extra output. If you want to get meaningful backtraces see
                                       https://wiki.gentoo.org/wiki/Project:Quality_Assurance/Backtraces
 + + gpm                             : Add support for sys-libs/gpm (Console-based mouse driver)
 - - lua                             : Enable Lua scripting support
 + + lua_single_target_lua5-1        : Build for Lua 5.1 only
 - - lua_single_target_lua5-3        : Build for Lua 5.3 only
 - - lua_single_target_lua5-4        : Build for Lua 5.4 only
 - - lua_single_target_luajit        : Build for LuaJIT only
 - - minimal                         : Install a very minimal build (disables, for example, plugins, fonts, most drivers, non-critical features)
 + + nls                             : Add Native Language Support (using gettext - GNU locale utilities)
 + + perl                            : Add optional support/bindings for the Perl language
 + - python                          : Add optional support/bindings for the Python language
 - - python_single_target_python3_10 : Build for Python 3.10 only
 - - python_single_target_python3_11 : Build for Python 3.11 only
 + + python_single_target_python3_9  : Build for Python 3.9 only
 - - racket                          : Enable support for Scheme using dev-scheme/racket
 - - ruby                            : Add support/bindings for the Ruby language
- + sound                           : Enable sound support                                         <-==========================================
 - - tcl                             : Add support the Tcl language
 - - terminal                        : Enable terminal emulation support
 - - vim-pager                       : Install vimpager and vimmanpager links


Do not count on equery to accurately present you the picture, it'll take into account your /etc/portage contents. Always read the ebuild and grep the profile for the use flag and package of interest. To be completely objective I did that and found the sound use flag for app-editors/vim in the hppa profile which I guess is irrelevant here and I don't remember the exact function of package.use.stable.mask.

direwolf wrote:
No, the USE flag was not changed on the system until I realized it needed to be explicitly set to "-sound" to compile the latest version.

The old version compiled without sound even with the USE flag turned on. Probably based on ... something else. Or maybe it was a bug that was fixed, but that seems like a long time for nobody to notice that the sound USE flag wasn't working.


Probably something in your dependency graph changed that pulled it in. Usually when something is already emerged with a certain set of use flags will not get the newly introduces use flags which are not default set automatically enabled on update. That's why I said do not count on portage having changed behavior. It's highly unlikely and if a change in that part of code happened, it would have been subject to serious scrutiny by Gentoo developers. Plus you need to put your trust somewhere as a starting point of your investigation. For me personally it's justified to put it somewhere where multiple people put their attention to, rather than thinking I'm right from the beginning. This way sooner or later I'll arrive at the right conclusion and won't smokescreen myself from the problem.

But just to exclude that possibility, you could see your emerge logs for when portage was updated and if it wasn't in between those two emerges, you can safely reject that hypothesis.

Now that we have agreed it was compiled without sound use flag and you still had your terminal beeps, then you need to move on to something else. I already suggested investigating your terminal or kernel update. You must have lost the console beep altogether, so start from there. In fact you might have lost sound altogether, is this a computer you use sound and would notice if it was gone? Test with something else you know you had it for. Also share which terminal and graphical environment (if any) you use. As I mentioned earlier, if it's pure framebuffer console I'd check the kernel support. I checked which are the kernel options for you and they are INPUT_PCSPKR, which I personally find problematic, creating sometimes unpleasant sounds for the ear and CONFIG_SND_HDA_INPUT_BEEP which is the better working option in my opinion. I guess the pcspkr is a leftover from the times when computers had pc speakers only and sound cards came optional. But t hose are not necessary if you have something like pulseaudio or pipewire. They are necessary only for the pure framebuffer console.

Best Regards,
Georgi
Back to top
View user's profile Send private message
Hu
Moderator
Moderator


Joined: 06 Mar 2007
Posts: 21633

PostPosted: Fri Feb 10, 2023 2:41 pm    Post subject: Reply with quote

I have a question about what exactly we are trying to solve here:
  • Do terminal beeps triggered by the bell character work? Test this by running printf '\a' at the prompt. For me, this triggers a terminal bell (which, due to my resource xterm*VisualBell: true manifests in a flash of the terminal, rather than sound). direwolf, what happens for you when you print the bell character? Do you get (a) no reaction, (b) a terminal flash, (c) an audible bell? If (c), then would you consider the terminal bell issue solved? If (a), do you want further help determining why there is no reaction? On which terminal(s) did you test this (Linux console, xterm, gnome-terminal, Konsole, rxvt, ...)?
  • Is there still interest in arguing over when or why Portage began trying to pull in libcanberra and gtk+ on this system?
Back to top
View user's profile Send private message
logrusx
Veteran
Veteran


Joined: 22 Feb 2018
Posts: 1535

PostPosted: Fri Feb 10, 2023 3:33 pm    Post subject: Reply with quote

Hu wrote:
I have a question about what exactly we are trying to solve here:
  • Is there still interest in arguing over when or why Portage began trying to pull in libcanberra and gtk+ on this system?


I don't think this can be investigated further from a point after which libcanberra was pulled in and something, anything was emerged.
The only thing left to assist for is restoring the terminal bell.

One thing I forgot is that the bell could be disabled in the settings of the terminal itself, but that depends on the terminal used.

Best Regards,
Georgi
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Portage & Programming All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum