There's a new version of ivtv available for the 2.6.18 kernel.
OMG bump!!!111! ZOMG! :D
wow... You must have been hitting refresh on the ivtv website... 55 minutes after the release there's a bug filed.
AWESOME ! :D
55 minutes eh? No - wasn't watching ivtv - just got in to work this morning and did a refresh on their page expecting nothing much... and it was there! I was slightly annoyed last week when I upgrade my pvr system to 2.6.18 and tried to emerge ivtv and got rejected. :) Went back to 2.6.17 and also wrote a sticky note to self to check ivtv requirements before kernel upgrades. :) Anyways... now I'm waiting to see it in cvs.. have a good day all!
Dan: You should never try to be a "ricer" with your PVR system and run the latest release instantly, there's a lot of interlocking components to make the PVR magic work. I will happily bump ivtv to 0.8 and enjoy as all the MythTV users yell and scream since MythTV has had an open bug about V4L2 support for 3 months and they're shipping version doesn't support it. What does this mean? MythTV will not work with 2.6.18 and higher kernels. Latest and greatest is not always the best. Take a note of this Fabio, since you're CC'd.
Doug, thanks for the suggestion - but I know what I'm doing. At least *I* think so. :) :) I do like to run the latest - asap. Specifically in order to find those interlocking components, and perhaps try to fix them. I've been doing SW dev for > 20 years and am more than capable. Perhaps the complaints about mythtv not working with 2.6.18 & v4l2 will hurry the myth group along... we'll see. :) Have a great day and keep up the good work all!
according to the mythtv-mailinglist, this is fixed. From: Robin Gilks <g8ecj@gilks.org> Subject: Re: [mythtv-users] mythtv on 2.6.18 + ivtv not Possible? To: Discussion about mythtv <mythtv-users@mythtv.org> Date: Tue, 26 Sep 2006 22:23:46 +1200 (NZST) > Quoting http://bugs.gentoo.org/show_bug.cgi?id=149039#c5 > I will happily bump ivtv to 0.8 and enjoy as all the MythTV > users yell and scream since MythTV has had an open bug about > V4L2 support for 3 months and they're shipping version doesn't > support it. > > What does this mean? It means you run the SVN version where it was fixed 3 days ago - a few hours after the last minute change in the new V4L2 API that meant that the changes that were incorporated into MythTV 2 months ago got out of sync.
I had already incorporated the fix into mythtv-0.20_p11281. However they changed the MythTV protocol for this so it'll screw people up unless they upgrade everything and all their devices at once.
Created attachment 98330 [details] Updated ebuild for ivtv-0.8.0 for 2.6.18 kernels I updated the ebuild to in theory work with ivtv-0.8.0. I also altered where it pulls the firmware from, using the new "recommended" firmware. It includes *more* firmware than the previous one did, in theory supporting some usb tuners as well. I compiled and modprobed on an ~x86 system and it went fine. I have *not* actually tuned any channels or anything, but modprobe / dmesg output looks very normal. Haven't tested with mythtv yet.
I should mention that my test was done on a pair of PVR250s, so I of course was *not* able to test it on a PVR150/350/500 or any sort of USB device which might claim to be supported by ivtv driver.
Created attachment 98331 [details] Updated ebuild for ivtv-0.8.0 for 2.6.18 kernels IVTV also depends on the kernel option VIDEO_CX2341X, which I have added to the above ebuild. Now I have also done a *compile* on an ~amd64, but this system doesn't actually have a IVTV card in it so I can't test a modprobe.
donald: Please when you attach ebuilds attach them as plain text not binary. WRT firmware location. I'm pulling all the same firmware, with the exception of a the "extra" non-ivtv firmwares (the USB ones which are actually provided by another driver that's in kernel not by ivtv). The reason for this is that the firmware image that's the "recommended" image is not versioned at all and they do update the file at a regular basis with other firmwares and updates. By doing that it will break the Portage digesting and the ebuild will come up as broken. I've tried to speak to them about versioning the firmware tarball with a date but have never heard anything back. I would like to create a trac ticket for them to do this or some other way to contact Hans other then by e-mail since he doesn't seem to answer me but there's no other way.
I was thinking about the non-versioned firmware.tar.gz file while fixing up the ebuild, which is why I left a spot for its name at the top. I hope they'll add a version to it :) I set the file type to "auto-detect" so I guess that is why. Want me to re-attach or?
I tested this ebuild successfully. Compiling, installation, and module load all went smoothly. I also tested capturing some video from my PVR-150 with MythTV, and it works great. In fact, the new version fixes a periodic video corruption issue I was having.
Using the latest above ebuild for 0.8.0 # emerge ivtv : command not foundncies /usr/portage/media-tv/ivtv/ivtv-0.8.0.ebuild: line 4: !!! ERROR: media-tv/ivtv-0.8.0 failed. Call stack: ebuild.sh, line 1454: Called source '/usr/portage/media-tv/ivtv/ivtv-0.8.0.ebuild' ' ivtv-0.8.0.ebuild, line 5: Called inherit 'eutils' 'linux-mod ebuild.sh, line 1189: Called die .eclass could not be found by inherit() !!! If you need support, post the topmost build error, and the call stack if relevant. aux_get(): (0) Error in media-tv/ivtv-0.8.0 ebuild. (1) Check for syntax error or corruption in the ebuild. (--debug)
(In reply to comment #15) Just save the file in Unix format and everything will be fine
I put together a detailed email to the ivtv-devel mailing list, joined it and sendt the email... but I think it got suck in holding some where. The email is below for posterity sake. Hi all, I am one of the minions who occasionally works on gentoo's ebuilds for various items such as ivtv, mythtv and showeq... but that doesn't really matter! Let me get on with the specifics of this request: Currently, it is named "firmware.tar.gz" which makes it hard to nail down a version for it. Ie, you guys can go and change the files inside it, add files or what ever and the only way to see if its new is to dl it and poke around. There is a simple solution, I think! Give it a version, like "firmware-1.0.tar.gz" and incriment as you release new versions. I suspect this would not happen very often, so it wouldn't be a big deal. To preserve the current "firmware.tar.gz" file, you could simply make "firmware.tar.gz" a symlink to the *latest* firmware, ie "firmware-1.0.tar.gz" in my example case. There are a few reasons for this, but I'll give you the gentoo ones since that is what I know. First, it gives us a specific file we know works with *that* version to retrieve. If you ever release a new firmware file that only works with ivtv-0.10.0, we can still build ivtv-0.8.0 because it is pointing to your *specific* release. Another issue is that if you update your file, we'll download it and do an md5sum (and a few others in gentoo's case) and say "hey, this file is different" and then bomb out. After a few minutes, of course we'll be flooded with tons of "hey, ivtv just broke" and we'll figure it out... but its easy to avoid! Some of the same reasoning works out for many other distros and even people compiling from source, but I won't try and summerize all those. How is that? Easy to do? I think so :) It'd be much appreciated for sure.
This ebuild worked like a charm for me! Christian Gudel: Thanks for the tip!
The posted ebuild says die "This only works on 2.6.17 kernels" while it should say 2.6.18. :)
You need to also make it depend on kernel configuration option CONFIG_VIDEO_CX2341X. A quick google reveals a few message board postings indicating that this option is required, and I can personal attest to its requirement, as the module compiles with it, but not without it :-)
After adding CONFIG_VIDEO_CX2341X to the kernel configuration ivtv 0.8.0 emerges fine and runs without problems so far :-) emerge --info: Portage 2.1.1 (default-linux/x86/2006.0, gcc-4.1.1, glibc-2.4-r3, 2.6.18 i686) ================================================================= System uname: 2.6.18 i686 AMD Athlon(tm) XP 1700+ Gentoo Base System version 1.12.5 Last Sync: Sun, 08 Oct 2006 06:00:01 +0000 app-admin/eselect-compiler: [Not Present] dev-java/java-config: 1.2.11-r1 dev-lang/python: 2.3.5-r2, 2.4.3-r4 dev-python/pycrypto: 2.0.1-r5 dev-util/ccache: [Not Present] dev-util/confcache: [Not Present] sys-apps/sandbox: 1.2.17 sys-devel/autoconf: 2.13, 2.59-r7 sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2 sys-devel/binutils: 2.16.1-r3 sys-devel/gcc-config: 1.3.13-r4 sys-devel/libtool: 1.5.22 virtual/os-headers: 2.6.17-r1 ACCEPT_KEYWORDS="x86" AUTOCLEAN="yes" CBUILD="i686-pc-linux-gnu" CFLAGS="-O2 -march=athlon-xp -fomit-frame-pointer -pipe" CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/lib/mozilla/defaults/pref /usr/share/X11/xkb /usr/share/config /usr/share/texmf/dvipdfm/config/ /usr/share/texmf/dvips/config/ /usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/config/ /usr/share/texmf/xdvi/" CONFIG_PROTECT_MASK="/etc/env.d /etc/gconf /etc/revdep-rebuild /etc/terminfo" CXXFLAGS="-O2 -march=athlon-xp -fomit-frame-pointer -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="autoconfig distlocks fixpackages metadata-transfer parallel-fetch sandbox sfperms strict" GENTOO_MIRRORS="http://mirrors.sec.informatik.tu-darmstadt.de/gentoo/ ftp://gentoo.inode.at/source/ ftp://ftp.tu-clausthal.de/pub/linux/gentoo/ rsync://mirrors.sec.informatik.tu-darmstadt.de/gentoo" LANG="de_DE" LC_ALL="de_DE" LINGUAS="de" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --delete-after --stats --timeout=180 --exclude='/distfiles' --exclude='/local' --exclude='/packages'" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="x86 3dnow X a52 acpi alsa apache2 apm avi berkdb bitmap-fonts bzlib cdr cli crypt cups divx4linux dlloader dri dv dvd dvdread eds elibc_glibc emboss encode fame flac foomaticdb fortran ftp gdbm gif gimpprint gpg gpm gstreamer gtk gtk2 imagemagick imlib input_devices_evdev input_devices_keyboard input_devices_mouse ipv6 isdnlog jpeg kde kernel_linux libg++ libwww linguas_de lirc_devices_hauppauge lm_sensors mad mikmod mmx mng motif mozilla mp3 mpeg mythtv ncurses nptl nptlonly nvidia ogg opengl oss other_var1 other_var2 pam pcre perl pic png ppds pppd python qt qt3 qt4 quicktime readline reflection scanner sdl session spell spl sse ssl subtitles svg swat tcpd tetex truetype truetype-fonts type1-fonts udev usb userland_GNU video_cards_nvidia vorbis win32codecs xine xml xmms xorg xv xvid zlib" Unset: CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LDFLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Created attachment 99443 [details] Added CX2341X kernel depenancy. Updated the "current" ivtv-0.8.0 ebuild to include the requirement of CX2341X.
Created attachment 99476 [details] ivtv build w/ videodev2.h & linux/types.h compile fix I found an error compiling ivtv 0.8.0, and found that linux/types.h must be included before linux/videodev2.h for ivtv to compile. So you need to apply a little patch. This ebuild applies the patch. I will attach the patch next.
Created attachment 99477 [details, diff] patch to fix compile error (include linux/types.h before videodev2.h) The ebuild (attachment 99476 [details]) uses this patch, fixing a compile error.
Created attachment 99532 [details] Updated ebuild I'm currently running on 2.6.17.6 and needed to specify the 2.6.18 kernel for the utils portion of the build. I made a small change to Colin's ebuild, and I was then able to successfully emerge ivtv-0.8.0 on my 2.6.17.6 system, for the yet to be booted 2.6.18 kernel. ;) I don't think you'd see this if you were already running 2.6.18. Thank you all for your work on this!
You guys know this ebuild has been in Portage for 11 days right? I just rewrote a bunch of it today. Give it a try.
Works for me. And builds while running on 2.6.17.6 also. Thanks! Ship it...er, unmask it! No - wait... that's done too. Thanks Doug, great job!
This ebuild does not install the ivtv-fb module for me. If I apply the following diff (obviously not the correct solution), it will install the module (thus I know it's not a problem with my kernel config): 20a21,23 > linux-mod_pkg_setup > linux_chkconfig_present FB && \ > MODULE_NAMES="${MODULE_NAMES} ivtv-fb(extra:${S}/driver)"
The ivtv-0.8.0 ebuild needs to have a dependency on the correct kernel version. I run 2.6.17-gentoo-r7 and get the following error. The kernel config option doesn't exist in my kernel sources. * Found kernel source directory: * /usr/src/linux * Found sources for kernel version: * 2.6.17-gentoo-r7 * Checking for suitable kernel configuration options... * CONFIG_VIDEO_CX2341X: is not set when it should be. * Please check to make sure these options are set correctly. * Failure to do so may cause unexpected problems. * Once you have satisfied these options, please try merging * this package again.
Read the ebuild. It does. Unfortunately the function to process the kernel version also performs the checks for the options before it returns. As a result it will check the options before it gets to the kernel version check. This bug is technically fixed since the package is in Portage.
I guess the problem is there's no virtual/kernel to put dependency version against so you could say DEPEND=">=virtual/kernel-2.6.18". Unfortunately, the current version craps out every emerge world and requires a mask applied to ivtv>=0.8. Now that 2.6.18 kernels have non-tilde keywords on amd64 and x86, it's not as big of a deal.