[kde-freebsd] k3b freebsd contact

Andriy Gapon avg at icyb.net.ua
Wed Oct 14 18:43:31 CEST 2009


on 14/10/2009 19:02 Rusty Nejdl said the following:
> On Fri, 9 Oct 2009 17:15:33 -0400, "Jason E. Hale" <bsdkaffee at gmail.com>
> wrote:
>> On Friday 09 October 2009 15:42:38 Heiner wrote:
>>
>>> That's me, although I am planning to retire here: I have currently not
>>>  enought resources to move to KDE4 so that I will most likley be unable
>>>  to
>>>  do the KDE4 port of k3b once it is available. Is anybody here who
> wants
>>>  to
>>>  take the k3b port?
>>>
>> I have been working the KDE4 version of the K3B port, so I would be
>> willing to 
>> talk with anyone who has ideas for that.  So far what I have pretty much
> 
>> works, except K3B can never find the cdrecord executable even though the
>> KDE3 
>> version works just fine.  As soon as I figure that one out, I may submit
>> the 
>> port.  I would prefer to wait until there is at least a beta release,
> but
>> they 
>> haven't exactly been pushing releases out the door.
>>
> 
> Jason,
> 
> I would be interested in seeing what you have so far.   I got completely
> stuck on the k3b side and glad to see you have made so much progress.

Guys,

I also did some hacking on KDE4 k3b and here are some diffs that could be useful:

1. Without this k3b doesn't find my DVD writer. It seems that it tries
cam_open_pass on /dev/cd0 which fails.
Index: libk3bdevice/k3bdevice.cpp
===================================================================
--- libk3bdevice/k3bdevice.cpp	(revision 1034980)
+++ libk3bdevice/k3bdevice.cpp	(working copy)
@@ -157,7 +157,7 @@
 #ifdef Q_OS_FREEBSD
 K3b::Device::Device::Handle K3b::Device::openDevice( const char* name, bool write )
 {
-    K3b::Device::Device::Handle handle = cam_open_pass (name, O_RDWR,0 /* NULL */);
+    K3b::Device::Device::Handle handle = cam_open_device( name, O_RDWR );
         kDebug() << "(K3b::Device::openDevice) open device " << name
                  << ((handle)?" succeeded.":" failed.") << endl;
     return handle;


2. Without this k3b doesn't find cdrecord and mkisofs (what Jason said). It looks
that if k3b doesn't find cdrecord at the first path it tries (in my case it was
/usr/bin), then it gets confused and begins to think that cdrkit is installed (not
sure what it is) and searches for programs with names "wodim" and "genisoimage"
instead of "cdrecord" and "mkisofs".

Index: libk3b/core/k3bdefaultexternalprograms.cpp
===================================================================
--- libk3b/core/k3bdefaultexternalprograms.cpp	(revision 1034980)
+++ libk3b/core/k3bdefaultexternalprograms.cpp	(working copy)
@@ -128,10 +128,14 @@
         QFileInfo(K3b::resolveLink( cdrtoolsPath )).baseName() != m_cdrkitAlt ) {
         m_usingCdrkit = false;
         path = cdrtoolsPath;
+#ifdef Q_OS_WIN32
+       setVersionIdentifier( name() );
+#endif
     }
     else if( QFile::exists( cdrkitPath ) ) {
         m_usingCdrkit = true;
         path = cdrkitPath;
+        setVersionIdentifier( m_cdrkitAlt );
     }

 #ifndef Q_OS_WIN32
@@ -140,13 +144,6 @@
     }
 #endif

-    if ( m_usingCdrkit )
-        setVersionIdentifier( m_cdrkitAlt );
-#ifdef Q_OS_WIN32
-    else
-       setVersionIdentifier( name() );
-#endif
-
     return path;
 }


I also have an uncompleted major change (half a re-write) for
libk3bdevice/k3bscsicommand_bsd.cpp that allows k3b to correctly work when ahci(4)
driver is used (in 8.0/CURRENT).

-- 
Andriy Gapon


More information about the kde-freebsd mailing list