#732971 libisoburn: provide wodim amd genisoimage aliases

#732971#5
Date:
2013-12-23 11:03:46 UTC
From:
To:
There are many packages which depend on wodim/genisoimage in Debian.

I think it is good idea to offer smooth system interface to choose their
back-end program with update-alternatives.

Just to indicate my experimental set up here, I attach patch to
libisoburn.  The metapackage for wodim-cdrskin may be better moved to
cdrskin package.  Maybe, these do not need to be separate packages but
can be included in respective xorriso, xorrisofs, and cdrskin packages.

I also wonder if wodim/genisoimage also can implement update-alternative
similar to what I proposed for libisoburn.  Until then, this patch
cause collision with them.  So coordination with them will be nice.
(With versioned Break, I think it can be done.)

As I understand, except for HFS+ hybrid CD generation, xorriso seems to
be quite useful by now.  So update-alternatives priority should be
something along:
  cdrskin=20    xorriso=10   wodim=5
  xorrisofs=10  genisoimage=5

Please consider.

Osamu
=======================================================================
I saw few related bugs which can be solved by above approach:

* http://bugs.debian.org/519200 :
  k3b: Should recognize cdrskin as cdrecord (it's compatible)
* http://bugs.debian.org/523814
  [makecd] please use cdrskin (not wodim) and xorriso (not genisofs)
...

Below is the dependencies related to wodim or genisoimage.

$ ben query '.depends ~ /wodim|genisoimage/ |.recommends ~ /wodim|genisoimage/' Packages_amd64 |grep ^Package -|sort|uniq
Parsing Packages_amd64...
Package: acetoneiso
Package: aptoncd
Package: bashburn
Package: bootcd
Package: brasero-cdrkit
Package: burn
Package: cdbackup
Package: cdw
Package: cedar-backup2
Package: debian-cd
Package: devede
Package: dvd+rw-tools
Package: fai-quickstart
Package: grml2usb
Package: initramfs-tools-tcos
Package: k3b
Package: kdenlive
Package: mic2
Package: movixmaker-2
Package: mp3burn
Package: mp3roaster
Package: opennebula
Package: ubuntu-dev-tools
Package: wodim

Since compatibility of these aliases offered by xorriso are not perfect,
upstreams may be slow to adopt xorriso based solution.  Offering option to
users by using update-alternatives seems to be reasonable.

#732971#10
Date:
2013-12-23 11:33:27 UTC
From:
To:
Hi,

i am the upstream developer of libburn, libisofs, and libisoburn.

Some clarifications:

cdrskin can replace wodim for pure data CDs and pure audio CDs.
It cannot produce mixed mode CDs like CD-XA or "Video CD".
(With DVD and BD it is simply superior to wodim.)

xorriso can produce HFS+ inside ISO 9660 filesystems.
Use cases are said to be with booting medium-new Apple computers.
(Ask Vladimir Serbinenko at grub-devel mailing list for more
info. He contributed most of the HFS+ code and did the tests.)

But bootable ISOs for Debian arch powerpc need HFS (without plus).
This is not provided by xorriso.
Another topic where xorriso cannot replace genisoimage is UDF.

K3B is said to refuse on cdrskin on purpose.
The recent release 1.3.4 of cdrskin has changed its version message
on user request from
  "Cdrecord 2.01-Emulation Copyright (C) 2006-2013, see libburnia-project.org"
to
  "Cdrecord 2.01a27 Emulation. Copyright (C) 2006-2013, see libburnia-project.org"
But you have to expect that future versions of K3B react on
this, unless somebody negotiates better co-existence.


Have a nice day :)

Thomas

#732971#15
Date:
2013-12-23 13:31:49 UTC
From:
To:
Hi,

there is a feature with cdrskin which was intended to help
its integration into cdrkit.

man cdrskin describes this option:

 fallback_program=command
        Set  a command name to be executed if cdrskin encounters a known
        cdrecord option which it does not yet support.  If  a  non-empty
        command  is  given  with  fallback_program=, and if no essential
        options are given which are specific to  cdrskin,  then  cdrskin
        will delegate the job to said command.
        The  natural  commands to be given are cdrecord or wodim but one
        may well submit the address of an own program.
        The fallback program will get all arguments of cdrskin which  do
        not  match  the  shell  patterns --?* or *_*=* . This eventually
        suppresses path names of track sources  which  happen  to  match
        those  patterns.  The  options  from  the  startup files are not
        handed to the fallback program.
        Fallback program execution is disabled if cdrskin is run  setuid
        and  not option --allow_setuid is given. In general, the drive's
        device files and the involved programs should be set up so  that
        each program runs under its advised conditions. (E.g. cdrskin as
        member of group floppy, cdrecord setuid root.)
        Two alias names for cdrskin are predefined with default fallback
        programs:
        unicord implies fallback_program=cdrecord
        codim implies fallback_program=wodim

This would make available the advantages of cdrskin with DVD
and Blu-ray media, while also offering the special CD capabilities
of wodim.

This feature was implemented in 2007. Since then it has been
fewly challenged. Thorough testing seems wise.

xorriso's mkisofs emulation has no such feature yet.


Have a nice day :)

Thomas