Original author(s) | Jörg Schilling, Eric Youngdale, Heiko Eißfeldt, James Pearson |
---|---|
Developer(s) | schilytools team |
Initial release | 4 February 1996 |
Stable release | 3.02 (18 September 2022 ) [±] [1] |
Preview release | 3.02a09 (10 December 2017 ) [±] [2] |
Repository | |
Written in | C |
Operating system | Cross-platform |
Available in | English |
Type | Optical disc authoring software |
License | CDDL, GNU GPL and GNU LGPL |
Website | codeberg |
cdrtools (formerly known as cdrecord) is a collection of independent projects of free software/open source computer programs.
The project was maintained for over two decades by Jörg Schilling, who died on October 10, 2021. [3] [4]
Because of some licensing issues, [5] there is also a Debian fork of an older version of cdrtools called cdrkit.
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. As these tools do not include any GUI, many graphical front-ends have been created.
The collection includes many features for CD, DVD and Blu-ray disc writing such as:
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
. A copy of mkisofs
, created in 1993 by Eric Youngdale for Yggdrasil Linux, was incorporated in 1997. [7] [8] In 1998, a copy of an experimental version of cdda2wav
, created by Heiko Eißfeldt [9] [8] was included in the cdrecord package. [10] [11]
In 1999 the project started to be called cdrtools [12] [10] [13] to better reflect the fact that it had become a collection of tools.
DVD writing support (cdrecord-ProDVD) in cdrecord started in early 1998, at the request of the data archivists of the European Southern Observatory. [14] [15] [16] [ discuss ] 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.[ citation needed ] 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. [17] [18] Unregistered free licenses were initially limited to single-speed writing and would expire every year. [18] On 15 May 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. [17] [19] Blu-ray disc support was added starting 2007. [20]
The lack of open-source DVD writing support in 2001 led to heated discussions on the mailing lists, [17] 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, [21] whereas Redhat had dvdrecord. [22]
Unlike cdrkit and libburnia, which use device files to access the hardware, cdrtools uses a different method known as CAM (for Common Access Method), [23] which is available on many operating systems, including some which lack device files or only allow the kernel to access them. This difference has turned into a controversy: some Linux users claim that the method used by cdrtools is not appropriate, while some Linux users claim that the users of cdrtools do not need to know which method is used.[ citation needed ]
In cdrtools, burning optical media (such as CDs, DVDs and Blu-rays discs) is done through the SCSI interface. Users of systems with more than one burning device need to provide a SCSI device (which is identified by a triplet of numbers, scsibus,target,lun
). Users of systems with only one burning device, however, do not need to specify the SCSI device since cdrtools is able to find it. 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 modifications 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. [24] Linus Torvalds states that SCSI LUNs should not be used for addressing devices on Linux, [25] because these numbers are not unique, [25] and do not make sense for many devices anymore [26] (many devices will report 0:0:0
fake numbers [26] ). Instead Torvalds recommends that devices should be addressed via their UUID, physical connection, or an alias symlink [26] as managed by udev on Linux. Torvalds pointed out that the ioctl's have been kept to ensure cdrecord compatibility [27] and do not return a meaningful value. [28]
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 – that were rejected by Schilling, [24] who repeatedly demanded that distributions stop shipping "bastardized and defective" versions of his "legal original software". [29] 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. [30] 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:
As a result of this controversy:
Cdrtools are part of Jörg Schilling's toolset Schily-Tools which was originally distributed on SourceForge. [49]
Schilling stopped updating the cdrtools-only alpha and stable branch in 2017 with version 3.02a9; [50] version 3.02a10 and higher are only included in the source package schilytools.
The "Schily" Tool Box is a set of tools written or managed by Jörg Schilling. It includes the programs: cdrecord, cdda2wav, readcd, mkisofs, smake, bsh, btcflash, calc, calltree, change, compare, count, devdump, dmake based on SunPro Make, hdump, isodebug, isodump, isoinfo, isovfy, label, mt, obosh, od, p, POSIX patch, pbosh, sccs, scgcheck, scpio, sdd, sfind, sformat, smake, sh/bosh (Bourne sh), star, star_sym, strar, suntar, gnutar, tartest, termcap, and ved.
The final version of Schily-Tools published by Jörg Schilling himself is the 2021-09-18 release. [51] After his death, development of Schily-Tools has been taken up by a group of volunteers. Instead of hosting it on SourceForge, it is hosted on a-not-for-profit platform, Codeberg. To mark his passing, his cdrtools final version, 3.02a10 (where the a indicates the software is semantically alpha) was declared to be the new stable version 3.02 with no substantial changes. [52]
Project name | Preview releases | Stable release | Notes | ||
---|---|---|---|---|---|
first | last | version | date | ||
cdrecord | 1.00 | 1996-02-04 | |||
1.01 | 1996-10-04 | ||||
1.02 | 1996-12-20 | ||||
1.03 | 1997-05-16 | ||||
1.04 | 1997-05-23 | ||||
1.5a1 | 1.5a9 | 1.05 | 1997-09-15 | ||
1.6a01 | 1.6a15 | 1.06 | 1998-04-18 | ||
1.6.1a1 | 1.6.1a7 | 1.06.1 | 1998-10-19 | ||
1.8a01 | 1.8a40 | 1.08 | 2000-01-28 | ||
1.8.1a01 | 1.8.1a09 | 1.08.1 | 2000-04-27 | ||
1.9a01 | 1.9a05 | 1.09 | 2000-07-20 | ||
cdrtools | 1.10a01 | 1.10a19 | 1.10 | 2001-04-22 | |
1.11a01 2.0pre1 | 1.11a40 2.0pre3 | 2.00 | 2002-12-25 | DVD-Video support since July 2002. [53] | |
2.00.3 | 2003-05-28 | ||||
2.01a01 | 2.01a38 | 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 | 3.00 [54] [55] | 2010-06-02 | In May 2006, most parts of cdrtools were switched to the CDDL. [30] Blu-ray support is available since July 2007 [56] | |
3.01a01 | 3.01a31 | 3.01 [6] | 2015-08-26 [6] | ||
3.02a01 | 3.02a09 [2] | 3.02 | 2022-09-18 | DVD-Audio support since December 2015. [57] | |
A Linux distribution is an operating system made from a software collection that includes the Linux kernel and often a package management system. Linux users usually obtain their operating system by downloading one of the Linux distributions, which are available for a wide variety of systems ranging from embedded devices and personal computers to powerful supercomputers.
YaST is a Linux operating system setup and configuration tool.
The Common Development and Distribution License (CDDL) is a free and open-source software license, produced by Sun Microsystems, based on the Mozilla Public License (MPL). Files licensed under the CDDL can be combined with files licensed under other licenses, whether open source or proprietary. In 2005 the Open Source Initiative approved the license. The Free Software Foundation (FSF) considers it a free software license, but one which is incompatible with the GNU General Public License (GPL).
Technical variations of Linux distributions include support for different hardware devices and systems or software package configurations. Organizational differences may be motivated by historical reasons. Other criteria include security, including how quickly security upgrades are available; ease of package management; and number of packages available.
Squashfs is a compressed read-only file system for Linux. Squashfs compresses files, inodes and directories, and supports block sizes from 4 KiB up to 1 MiB for greater compression. Several compression algorithms are supported. Squashfs is also the name of free software, licensed under the GPL, for accessing Squashfs filesystems.
This comparison only covers software licenses which have a linked Wikipedia article for details and which are approved by at least one of the following expert groups: the Free Software Foundation, the Open Source Initiative, the Debian Project and the Fedora Project. For a list of licenses not specifically intended for software, see List of free-content licences.
Metalink is an extensible metadata file format that describes one or more computer files available for download. It specifies files appropriate for the user's language and operating system; facilitates file verification and recovery from data corruption; and lists alternate download sources.
PulseAudio is a network-capable sound server program distributed via the freedesktop.org project. It runs mainly on Linux, including Windows Subsystem for Linux on Microsoft Windows and Termux on Android; various BSD distributions such as FreeBSD, OpenBSD, and macOS; as well as Illumos distributions and the Solaris operating system. It serves as a middleware in between applications and hardware and handles raw PCM audio streams.
Linux is a family of open-source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991, by Linus Torvalds. Linux is typically packaged as a Linux distribution (distro), which includes the kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses and recommends the name "GNU/Linux" to emphasize the use and importance of GNU software in many distributions, causing some controversy.
cdrkit is a collection of computer programs for CD and DVD authoring that work on Unix-like systems. cdrkit is released under the GNU General Public License version 2. Fedora, Gentoo Linux, Mandriva Linux, and Ubuntu all include cdrkit. Joerg Jaspert is cdrkit's leader and release manager.
Comparison of the Java and .NET platforms.
Liberation is the collective name of four TrueType font families: Liberation Sans, Liberation Sans Narrow, Liberation Serif, and Liberation Mono. These fonts are metrically compatible with the most popular fonts on the Microsoft Windows operating system and the Microsoft Office software package, for which Liberation is intended as a free substitute. The fonts are default in LibreOffice.
RPM Package Manager (RPM) is a free and open-source package management system. The name RPM refers to the .rpm
file format and the package manager program itself. RPM was intended primarily for Linux distributions; the file format is the baseline package format of the Linux Standard Base.
WeeChat is a free and open-source Internet Relay Chat client that is designed to be light and fast. It is released under the terms of the GNU GPL-3.0-or-later and has been developed since 2003.
Linux-libre is a modified version of the Linux kernel that contains no binary blobs, obfuscated code, or code released under proprietary licenses. In the Linux kernel, they are mostly used for proprietary firmware images. While generally redistributable, binary blobs do not give the user the freedom to audit, modify, or, consequently, redistribute their modified versions. The GNU Project keeps Linux-libre in synchronization with the mainline Linux kernel.
KVIrc is a graphical IRC client for Linux, Unix, Mac OS and Windows. The name is an acronym of K Visual IRC in which the K stands for a dependency to KDE, which became optional from version 2.0.0. The software is based on the Qt framework and its code is released under a modified GNU General Public License.
Dracut is a set of tools that provide enhanced functionality for automating the Linux boot process. The tool named dracut is used to create a Linux boot image (initramfs) by copying tools and files from an installed system and combining it with the Dracut framework, which is usually found in /usr/lib/dracut/modules.d.
I have received message from his family that Jörg Schilling has passed away
cdrecord-dvdhack-1.11-0.a31.1.1mdk.ppc.rpmshows that Mandrake maintained a "cdrecord-dvdhack" version.
the SCSI ID simply doesn't make sense to [Many (most) Linux devices] and they have none. So it's _not_ a unique ID.
it does a few ioctl's that cdrecord wanted [...] does NOT try to claim that those numbers "mean" anything [...] BUS/ID/LUN crap really doesn't make sense for the majority of devices out there. Never has, never will.
return put_user(0, p);
[i.e. they always yield 0]
Nobody is violating a license for distributing cdrtools either in source or in binary form.
moved back to version 2.01 (last GPL version), due to incompatible license issues
dvdrtools is a fork of cdrtools/cdrecord with support for writing to DVDs.
dvdrtools 0.2.0 has been released.(This was the last release of dvdrtools before the project was abandoned.)
cdrtfe is a win32 frontend for the cdrtools (cdrecord, mkisofs, readcd, cdda2wav), Mode2CDMaker, VCDImager and other well-known tools.