« Gentoo and Bash Completion | Linux - check disk for errors » |
I love Gentoo, but sometimes getting the more recent software to work can require some work ...
In this case, I was trying to install Ventrilo on the gaming LAN here. It was working fine on a Windows box, but as that machine isn't always on, and I like to have standard server stuff running on the Gentoo Linux server(s), I decided to set this up on one of those on the LAN.
In Gentoo, getting and installing software is usually like this:
# qsearch ventrilo
media-sound/ventrilo-server-bin The Ventrilo Voice Communication Server
# emerge -av media-sound/ventrilo-server-bin [emerge downloads and compiles the app]
# etc-update [if needed, this merges config file changes into the current configuration]
# nano /etc/ventrilo/{config_files} [set up whatever default application config files there are]
# /etc/init.d/ventrilo start [then start the server program]
[if everything looks fine, add the server program to the default runlevel, so it loads automatically upon reboot]
# rc-update add ventrilo default
Unfortunately, after doing this, the Ventrilo server started fine, but clients could not connect. I eventually discovered that this is due to the current Gentoo Ventrilo install is still at version 2, and the Windows clients we had already installed and had working were for version 3.
Looking on Gentoo Bugzilla, I found this entry:
http://bugs.gentoo.org/show_bug.cgi?id=201136
Which had an update ebuild for Ventrilo version 3, which had not yet made its way into the main portage tree, where all the current Gentoo packages are. So, I grabbed those files listed in the bug:
# cd (return to home directory)
# mkdir ventrilo (create a directory for the source files)
# cd ventrilo
# wget http://bugs.gentoo.org/attachment.cgi?id=139774
# mv attachment.cgi\?id\=139774 ventrilo-server-bin-3.0.2.ebuild
# wget http://bugs.gentoo.org/attachment.cgi?id=139776
# mv attachment.cgi\?id\=139776 conf.d.ventrilo
# wget http://bugs.gentoo.org/attachment.cgi?id=139778
# mv attachment.cgi\?id\=139778 init.d.ventrilo
Might as well grab the Ventrilo Linux Binary as well, by going to the webpage and clicking on the "I accept" or whatever link to download the Linux Binary.
# links http://www.ventrilo.com/dlprod.php?id=102
# mv ventrilo_srv-3.0.3-Linux-i386.tar.gz /usr/portage/distfiles/.
Next, move the old ebuild files into backup files, just in case this doesn't work. Then, move the new ebuild files into place:
# locate ventrilo
# mv /usr/portage/media-sound/ventrilo-server-bin/ventrilo-server-bin-2.3.1.ebuild /usr/portage/media-sound/ventrilo-server-bin/ventrilo-server-bin-2.3.1.ebuild.backup
# mv /usr/portage/media-sound/ventrilo-server-bin/files/init.d.ventrilo /usr/portage/media-sound/ventrilo-server-bin/files/init.d.ventrilo.backup
# mv /usr/portage/media-sound/ventrilo-server-bin/files/conf.d.ventrilo /usr/portage/media-sound/ventrilo-server-bin/files/conf.d.ventrilo.backup
# cp ventrilo-server-bin-3.0.2.ebuild /usr/portage/media-sound/ventrilo-server-bin/.
# cp conf.d.ventrilo /usr/portage/media-sound/ventrilo-server-bin/files/.
# cp init.d.ventrilo /usr/portage/media-sound/ventrilo-server-bin/files/.
Then I noticed that I had downloaded Ventrilo 3.03, but this ebuild was for 3.02 - dang, well rename the ebuild to the proper version, and then remake the ebuild's digest file:
# mv /usr/portage/media-sound/ventrilo-server-bin/ventrilo-server-bin-3.0.2.ebuild /usr/portage/media-sound/ventrilo-server-bin/ventrilo-server-bin-3.0.3.ebuild
# ebuild /usr/portage/media-sound/ventrilo-server-bin/ventrilo-server-bin-3.0.3.ebuild digest
Then, do the emerge, and update the config, etc. files as needed - using the ACCEPT_KEYWORDS for now, if this works out then add permanently into /etc/portage/(whatever.file, I forget):
# ACCEPT_KEYWORDS="~x86" emerge -av media-sound/ventrilo-server-bin
# etc-update
Finally, restart Ventrilo server, and test:
# /etc/init.d/ventrilo restart
DONE! It works! :yes:
This post has 20 feedbacks awaiting moderation...