Redistribution Of Isolinux Binaries
I’ve been making my own custom RHEL / CentOS boot CDs for years, and all of the instructions for such work call out to take a distro’s CD, and copy key files from it.
Among those files are those that I think are associated with the the SYSLINUX/ISOLINUX project; e.g.:
http://mirror.CentOS.org/CentOS/6/os/x86_64/images/
http://mirror.CentOS.org/CentOS/6/os/x86_64/isolinux/
Two questions:
– As the SYSLINUX project is GPLed, to hand out binaries implies
the sources are available somewhere, but I can’t find an official
point of reference on where the corresponding sources are.
– Further, near as I can tell, the SYSLINUX project makes no reference
to Kickstart, but I do see Fedora refer to Kickstart:
https://fedoraproject.org/wiki/Features/SyslinuxOption
This has me wondering if Fedora maintains local changes to the
SYSLINUX project. If it does, that further lends to my interest
in tracking down the utilized sources.
Does anyone have any insight on these topics, or, at the very least, a better forum to pursue them?
12 thoughts on - Redistribution Of Isolinux Binaries
RPM points you to http://syslinux.zytor.com/wiki/index.php/The_Syslinux_Project
Is that not everything you need?
jh
The patches used to build the latest syslinux package for CentOS7 are here:
https://git.CentOS.org/commit/rpms!syslinux/1e69ac78ccd5571027da253a99da5968028b1d5c
As for kickstart, that’s not handled by syslinux so I’m not sure there are any special patches for that. On the el6 and el7 boot images, the initrd does the kickstart handling.
It’s not what _I_ need; it’s the burden on part of the redistributor, to satisfy the GPL requirements:
http://www.gnu.org/licenses/gpl-faq.en.html#UnchangedJustBinary
I downloaded just the binary from the net. If I distribute copies,
do I have to get the source and distribute that too?
(#UnchangedJustBinary)
Yes. The general rule is, if you distribute binaries, you must
distribute the complete corresponding source code too. The
exception for the case where you received a written offer for
source code is quite limited.
Cool; thanks!
I see this file:
https://git.CentOS.org/blob/rpms!syslinux/b4d04961d9543ac12b0a41ec6f1a396ebe311cd6/README.md
in turn refers to, for example, the c6 branch for CentOS 6 (my current universe)
Looking at this tree:
https://git.CentOS.org/log/rpms!syslinux/b4d04961d9543ac12b0a41ec6f1a396ebe311cd6
I see nothing for syslinux: does that mean there are no changes at all for CentOS 6?
Thanks for that, I couldn’t quite figure out where Kickstart-specific stuff kicks in. I’ll try to track down what I can for that, for CentOS 6…
The info you are looking at there is for CentOS-7 .. the syslinux for CentOS-6 is here:
http://vault.CentOS.org/6.7/os/Source/SPackages/syslinux-4.04-3.el6.src.rpm
The CentOS team did not modify that source code, we just built it as is.
That source code produces the syslinux binary used by CentOS-6 (from the syslinux-4.04-3.el6.x86_64.rpm (ir i386) RPM).
As to how that happens, we simply use the rpmbuild command to produce the syslinux RPMs, which when installed provide the binary file in question.
Thanks, Johnny Hughes
Cool! That makes perfect sense to me, and satisfies all of my original points/questions. Thanks again; make my research much easier. :)
Related question; where do these files come from?
http://mirror.CentOS.org/CentOS/6/os/x86_64/EFI/BOOT/
I think they’re grub-related, but can’t prove that…
Before answering more questions … I really should point out that if you are modifying the CentOS Linux ISOs and distributing them to others while still calling them CentOS Linux, you are likely in violation of our Trademark rules:
https://www.CentOS.org/legal/trademarks/
Those ISOs (and files) are produced by the buildinstall process. The files in question are created by anaconda-runtime tools.
CentOS has Special Interest Groups, where new install images can be built, etc. by group members .. see this for more info:
https://wiki.CentOS.org/SpecialInterestGroup
We want users to use CentOS Linux as a platform for other projects .. ideally via these SIGs, but even as not part of SIGs we are fine with people using CentOS Linux as a basis for projects.
If you are not part of a SIG though, and are using CentOS for a basis of a project then the key thing to remember is to not modify our installer, but add your software at the end of the install process. Then you would call the thing you distribute “your software” on CentOS.
We have images for generic KVMs, vargrant, AWS, Docker, etc. on our wiki download page as well as ISOs. If you use those as is and add things to them then “your software” on CentOS Linux name is fine. If you modify our images however, then you need to remove our trademarks and call it
“some other linux” based on CentOS.
That is a separate detail that I need to review; I had run across this reference in the past.
That’s good to know. I’m curious about satisfying the obligations of redistributing GPL software. I’ll try to trace down the details of this buildinstall process, so I can try to track down where the associated source is provided by the CentOS project.
The binary program that creates the .efi file is
/usr/lib/anaconda-runtime/mk-images and it uses
/usr/lib/anaconda-runtime/mk-images.efi
Those are part of the anaconda-runtime package, the source code for which is provided by the lastest anaconda source RPM.
Currently, the latest one is here:
http://vault.CentOS.org/6.7/os/Source/SPackages/anaconda-13.21.239-1.el6.CentOS.src.rpm
Thanks, Johnny Hughes
Great; I think that covers everything I’ve been pestering the list about.
Again, thanks for all of the responses. :)
You can call it DimeOS or even DollarOS.