cdrtools

From Wikipedia, the free encyclopedia
Jump to: navigation, search
cdrtools
Original author(s) Jörg Schilling, Eric Youngdale, Heiko Eißfeldt, James Pearson
Developer(s) Jörg Schilling
Initial release 4 February 1996; 18 years ago (1996-02-04)
Stable release 3.00 (2 June 2010 (2010-06-02)) [±][1][2]
Preview release 3.01a25 (1 October 2014 (2014-10-01)) [±][3]
Development status Active
Written in C
Operating system Cross-platform
Available in English
Type CD/DVD/Blu-ray writing
License CDDL, GNU GPL and GNU LGPL
Website cdrecord.org
As of October 2014

cdrtools (formerly known as cdrecord) is a collection of independent projects of free software/open source computer programs, created by Jörg Schilling and others.

The most important parts of the package are cdrecord, a console-based burning program; cdda2wav, a CD audio ripper that uses libparanoia; and mkisofs, a CD/DVD/BD/UDF/HFS filesystem image creator. Because these tools do not include any GUI, many graphical front-ends have been created.

Features[edit]

The collection includes many features, such as:

History[edit]

Origins and name change[edit]

The first releases of cdrtools were called cdrecord because they only included the cdrecord tool and a few companion tools, but not mkisofs nor cdda2wav. In 1997, a copy of mkisofs[4] (developed at that time by Eric Youngdale) was included in the cdrecord package. In 1998, a copy of an experimental version of cdda2wav[5] (developed at that time by Heiko Eißfeldt) was included in the cdrecord package.

In 2000, Jörg Schilling changed the name of his package from "cdrecord" to "cdrtools"[6] to better reflect the fact that it had become a collection of tools.

DVD and Blu-ray disc writing support[edit]

DVD writing support (cdrecord-ProDVD) in cdrecord started 1998, but since the relevant information required a non-disclosure agreement and DVD writers were not publicly available, it was not included in the source code. In 2002, Jörg Schilling started offering free license keys to the closed-source variant cdrecord-ProDVD for educational, and research use, shortly thereafter also for private use. Unregistered free licenses were initially limited to single-speed writing and would expire every year. On May 15, 2006, support for DVD writing was added to the open-source version 2.01.01a09 after switching the license to CDDL; thereby removing the need to get a license key. Blu-ray disc support was added starting 2007.

The lack of open-source DVD writing support in 2001 led to heated discussions on the mailing lists, and to a number of unofficial patches for supporting the Pioneer DVD-R A03, the first DVD writer to reach mass market, and forks of cdrecord: Mandrake shipped a version called cdrecord-dvdhack,[7] whereas Redhat had dvdrecord.[8]

Device naming[edit]

CD burning is done through the SCSI interface. Burning a CD requires the user to provide a SCSI device (which is identified by a triplet of numbers, scsibus,target,lun). By 2002 more and more burners were using the ATAPI interface. Linux 2.6 allowed the users to detect the SCSI ID of a device from its UNIX device path (/dev/hdX) and a patch was published that made identifying the burner device for cdrecord simpler by allowing the user to specify the /dev/hdX device name (or even default to a udev managed link such as /dev/cdrw). Schilling, however, rejected this approach as well as other fixes used by Linux distributions, with the rationale that it would make the software more complex and less portable as this function was not available on other UNIX systems.[9] Instead he proposed that Linux should become more like Solaris and all devices should be addressed by SCSI LUNs, and that users should use cdrecord -scanbus to identify their cd writer.

License (in)compatibility controversy[edit]

By 2004 Linux distributions were maintaining a number of unofficial changes such as allowing the use of /dev/hdX device names and (limited) DVD writing support rejected by Schilling,[9] who repeatedly demanded that distributions stop shipping "bastardized and defective" versions of his "legal original software".[10] Starting with version 2.01.01a09 in May 2006, most code from cdrtools has been relicensed under the CDDL, while mkisofs remains licensed under the GPL.[11] This change led to an ongoing disagreement about whether distribution or use of precompiled cdrtools binaries is legally possible (the GPL permits collective works, but not derivative works; and the Makefiles used to build mkisofs are CDDL licensed). The following are one-sentence summaries of the different positions:

  • Jonathan Corbet, founder of the LWN.net news source argued that, in the eyes of Debian developers, this change makes it impossible to legally distribute cdrtools binaries, because the build system used is CDDL licensed (interpreting cdrtools as derivative work of GPL and – GPL-incompatible – CDDL code) and the GPL requires "build tools and scripts also be released under the GPL".[12]
  • Jörg Schilling denies a license problem in cdrtools. In his interpretation, it consists of independent works and thus does not mix incompatible licenses (i.e. it is a collective work, not a derivative work). According to his interpretation, binary versions may be distributed.[13]
  • As is common with the GPL and other open source licenses, very little case law exists to provide guidance to users and provide a definitive answer on whether binary versions are distributable.

As of 16 October 2014, in consequence of this discussion:

  • Debian,[14] Red Hat,[15] Fedora,[16] OpenSUSE,[17] Mandriva[18] and Ubuntu[19] dropped the versions of cdrtools with CDDL code from their distributions and switched to the Debian project created cdrkit, a fork of the last GPL-licensed cdrtools version.[20]
  • Joerg Schilling continues to develop his version of cdrtools under the CDDL and GPL (mkisofs) licenses, whereas the cdrkit fork has received next to no updates since.
  • Independent development efforts happen in libburnia which does not contain cdrtools source code, but includes a wrapper "cdrskin" to offer some command line compatibility with cdrecord and is available in many Linux distributions.
  • Slackware and Gentoo Linux are unaffected, as the potential licensing issue only affects the distribution of precompiled binaries and these distributions compile from source code. They offer both versions as well as libburnia.
  • OpenSUSE Factory added back the original cdrtools (in Fall 2013) in addition to distributing the forked version and libburnia.
  • Since building cdrecord from source is widely accepted as legal, there exist compile instructions for many Linux distributions.[21]

Version history[edit]

Stable releases of cdrecord are not frequent. 3.00 was released in June 2010 and the version before it, 2.01, was released in September 2004. However, preview ("alpha") releases are often used. Preview releases are numbered with the target version number (e.g. 3.01) to which a "aNN" suffix is appended. There has been one exception, though, with release 3.00, for which the preview releases were called "2.01.01aNN" instead of a "3.00aNN".

Version history of cdrtools
Project Name Preview Releases Stable Release Notes
first last version date
cdrecord Old version, no longer supported: 1.00 1996-02-04
Old version, no longer supported: 1.01 1996-10-04
Old version, no longer supported: 1.02 1996-12-20
Old version, no longer supported: 1.03 1997-05-16
Old version, no longer supported: 1.04 1997-05-23
1.5a1 1.5a9 Old version, no longer supported: 1.05 1997-09-15
1.6a01 1.6a15 Old version, no longer supported: 1.06 1998-04-18
1.6.1a1 1.6.1a7 Old version, no longer supported: 1.06.1 1998-10-19
1.8a01 1.8a40 Old version, no longer supported: 1.08 2000-01-28
1.8.1a01 1.8.1a09 Old version, no longer supported: 1.08.1 2000-04-27
1.9a01 1.9a05 Old version, no longer supported: 1.09 2000-07-20
cdrtools 1.10a01 1.10a19 Old version, no longer supported: 1.10 2001-04-22
1.11a01
2.0pre1
1.11a40
2.0pre3
Old version, no longer supported: 2.00 2002-12-25
Old version, no longer supported: 2.00.3 2003-05-28
2.01a01 2.01a38 Old version, no longer supported: 2.01 2004-09-09 This series was the last GPL-licensed version and was used as base for the fork cdrkit.
2.01.01a01 2.01.01a80 Current stable version: 3.00[1][2] 2010-06-02 On May 2006, most parts of cdrtools were switched to the CDDL.[11] Blu-ray support is available since July 2007[22]
3.01a01 Latest preview version of a future release: 3.01a25[3] 2014-10-01[3]
Project Name first last version date Notes
Preview Releases Stable Release
Legend:
Old version
Older version, still supported
Latest version
Latest preview version
Future release

Related software[edit]

Forks[edit]

Software that can use cdrtools[edit]

References[edit]

  1. ^ a b Schilling, Jörg (18 May 2010). "cdrtools 3.00 release announcement". cdrtools.sourceforge.net. Retrieved 2010-05-18. 
  2. ^ a b Schilling, Jörg (2 June 2010). "cdrtools 3.00 release notes". cdrtools.sourceforge.net. Retrieved 2010-06-02. 
  3. ^ a b c Schilling, Jörg (1 October 2014). "cdrtools 3.01a25 announcement". cdrtools.sourceforge.net. Retrieved 2014-10-08. 
  4. ^ mksofs-1.11 was incorporated to cdrecord-1.5a3 on 5 July 1997 (source: AN-1.5a3)
  5. ^ cdda2wav-0.95beta07 was incorporated to cdrecord-1.8a6 on 27 October 1998 (source: AN-1.8a6)
  6. ^ cdrecord and its friends (mkisofs and cdda2wav) are distributed in a common package called cdrtools since 27 July 2000 (source: AN-1.10a01).
  7. ^ "Support / Security / Advisories / Mandrakelinux 8.2 / MDKA-2002:011-1 / Mandriva". Mandriva. Retrieved 2014-10-16. "cdrecord-dvdhack-1.11-0.a31.1.1mdk.ppc.rpm"  shows that Mandrake maintained a "cdrecord-dvdhack" version.
  8. ^ dvdrtools - dvdrecord at the Wayback Machine (archived December 1, 2002)
  9. ^ a b Jonathan Corbet (2004-08-11). "The value of middlemen". LWN.net. Retrieved 2014-04-07. 
  10. ^ Corbet, Jonathan (2009-08-12). "The unending story of cdrtools". LWN.net. Retrieved 26 February 2014. 
  11. ^ a b The license change took place on 15 May 2006, when cdrtools-2.01.01a09 was released. (Source: AN-2.01.01a09)
  12. ^ Jonathan Corbet. "cdrtools - a tale of two licenses". LWN.net. Retrieved 2007-08-04. 
  13. ^ Joerg Schilling (2011-06-27). "Comment 17 for bug 213215". Ubuntu bug tracking. "Nobody is violating a license for distributing cdrtools either in source or in binary form." 
  14. ^ "#377109 - RM: cdrtools -- RoM: non-free, license problems - Debian Bug report logs". Retrieved 2007-08-04. 
  15. ^ "Information for build cdrtools-2.01-11.fc7". Retrieved 2007-08-04. "moved back to version 2.01 (last GPL version), due to incompatible license issues" 
  16. ^ "[Fedora-legal-list] Legal CD/DVD/BD writing software for RedHat and Fedora". 
  17. ^ OpenSuSE 10.3 release notes
  18. ^ "Mandriva Cooker : The Inside Man V". Retrieved 2007-08-04. 
  19. ^ "Minutes from the Technical Board meeting, 2008-08-26". Retrieved 2008-09-15. 
  20. ^ "cdrkit (fork of cdrtools) uploaded to Debian, please test". Retrieved 2007-08-04. 
  21. ^ "CDRTools.org : The un­official cdrtools web­site to ease build­ing cdrtools from source". Retrieved 2014-11-16. 
  22. ^ Support for Blu-ray Discs was added on 4 July 2007 to cdrtools 2.01.01a29. (Source: AN-2.01.01a29)

External links[edit]