ventoy / Ventoy

A new bootable USB solution.
https://www.ventoy.net
GNU General Public License v3.0
61.89k stars 4.03k forks source link

Where is source code to binary blobs? Is it really open-source? #132

Closed JohnVillalovos closed 4 years ago

JohnVillalovos commented 4 years ago

I see the following binary files in the repository. Where is the source code for these files? How can we recreate them? How do we know these binary blobs are safe?

find . -type f -print0 | xargs -0 file | grep -v "ASCII" | grep "executable"
./IMG/cpio/ventoy/tool/zstdcat:                                                         ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), statically linked, BuildID[sha1]=c35922b16c95c17cf28c85d014256fab67aa54ca, stripped
./IMG/cpio/ventoy/tool/xzminidec:                                                       ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), statically linked, BuildID[sha1]=23b67ba67cdb35d22addd9d0c5a544c8c540e15e, stripped
./IMG/cpio/ventoy/tool/lz4cat:                                                          ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), statically linked, stripped
./IMG/cpio/ventoy/tool/ar:                                                              ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), statically linked, stripped
./IMG/cpio/ventoy/tool/inotifyd:                                                        ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), statically linked, stripped
./IMG/cpio/ventoy/busybox/tmpsh:                                                        ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), statically linked, stripped
./IMG/cpio/ventoy/busybox/tmpxz:                                                        ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), statically linked, stripped
./VtoyTool/vtoytool/00/vtoytool_64:                                                     ELF 64-bit LSB executable, x86-64, version 1 (SYSV), statically linked, BuildID[sha1]=77000ba3be5b79c54c051bd8c6b85287c7a813ab, not stripped
./VtoyTool/vtoytool/00/vtoytool_32:                                                     ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), statically linked, BuildID[sha1]=1c67b529b8b7a8a6242c567f93a49bd50b4e4eb9, not stripped
./VtoyTool/vtoytool/01/vtoytool_64:                                                     ELF 64-bit LSB executable, x86-64, version 1 (SYSV), statically linked, not stripped
./INSTALL/tool/vtoyfat_32:                                                              ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux.so.2, for GNU/Linux 2.6.32, BuildID[sha1]=f223dc03658d7a5e6fd1be625b3e71b9c4482f50, not stripped
./INSTALL/tool/mount.exfat-fuse_32:                                                     ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux.so.2, for GNU/Linux 2.6.18, BuildID[sha1]=2abc015964733cd9fb96c552fde04bd2777db3f3, stripped
./INSTALL/tool/mkexfatfs_32:                                                            ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux.so.2, for GNU/Linux 2.6.18, BuildID[sha1]=453067475dcb3ebfbe9118fd9ab6d0310e920aaf, stripped
./INSTALL/tool/vtoy_gen_uuid:                                                           ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), statically linked, BuildID[sha1]=17423f443bc70745ee2c3cdc679ff7523b6a10dc, stripped
./INSTALL/tool/vtoyfat_64:                                                              ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 2.6.32, BuildID[sha1]=2b48f4e07c6f1dfda3cc9584e228b452425fe4b7, not stripped
./INSTALL/tool/mkexfatfs_64:                                                            ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 2.6.32, BuildID[sha1]=de003a5ae097b4004e6b77e6cd71d2410df7b310, stripped
./INSTALL/tool/mount.exfat-fuse_64:                                                     ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 2.6.32, BuildID[sha1]=02eed644b421446629c592b31da15b94d9f5c0de, stripped
./INSTALL/tool/hexdump:                                                                 ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), statically linked, stripped
./INSTALL/tool/xzcat:                                                                   ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), statically linked, stripped
./INSTALL/ventoy/ipxe.krn:                                                              Linux kernel x86 boot executable bzImage, version 1.0.0+, RO-rootFS,
./INSTALL/ventoy/iso9660_x64.efi:                                                       MS-DOS executable PE32+ executable (EFI boot service driver) x86-64, for MS Windows
./INSTALL/ventoy/vtoyjump32.exe:                                                        PE32 executable (GUI) Intel 80386, for MS Windows
./INSTALL/ventoy/vtoyjump64.exe:                                                        PE32+ executable (GUI) x86-64, for MS Windows
./INSTALL/ventoy/imdisk/32/imdisk.sys:                                                  PE32 executable (native) Intel 80386, for MS Windows
./INSTALL/ventoy/imdisk/32/imdisk.exe:                                                  PE32 executable (console) Intel 80386, for MS Windows
./INSTALL/ventoy/imdisk/32/imdisk.cpl:                                                  PE32 executable (DLL) (GUI) Intel 80386, for MS Windows
./INSTALL/ventoy/imdisk/64/imdisk.sys:                                                  PE32+ executable (native) x86-64, for MS Windows
./INSTALL/ventoy/imdisk/64/imdisk.exe:                                                  PE32+ executable (console) x86-64, for MS Windows
./INSTALL/ventoy/imdisk/64/imdisk.cpl:                                                  PE32+ executable (DLL) (GUI) x86-64, for MS Windows
./INSTALL/ventoy/ventoy_x64.efi:                                                        MS-DOS executable PE32+ executable (EFI application) x86-64, for MS Windows
./INSTALL/ventoy/memdisk:                                                               Linux kernel x86 boot executable bzImage, version MEMDISK 6.03 2014-10-06, RW-rootFS,
./INSTALL/EFI/BOOT/grubx64.efi:                                                         PE32+ executable (EFI application) x86-64 (stripped to external PDB), for MS Windows
./INSTALL/EFI/BOOT/MokManager.efi:                                                      PE32+ executable (EFI application) x86-64 (stripped to external PDB), for MS Windows
./INSTALL/EFI/BOOT/grubx64_real.efi:                                                    PE32+ executable (EFI application) x86-64 (stripped to external PDB), for MS Windows
./INSTALL/EFI/BOOT/BOOTX64.EFI:                                                         PE32+ executable (EFI application) x86-64 (stripped to external PDB), for MS Windows
./INSTALL/Ventoy2Disk.exe:                                                              PE32 executable (GUI) Intel 80386, for MS Windows
./VBLADE/vblade-master/vblade_32:                                                       ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux.so.2, for GNU/Linux 2.6.32, BuildID[sha1]=ec92688e679ddda4e17f259b39ab2b69fb30a8ec, not stripped
./VBLADE/vblade-master/vblade_64:                                                       ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 2.6.32, BuildID[sha1]=2144e0cfa04c8d177ab0b205248d0b2bc9661c8b, not stripped
./DMSETUP/dmsetup:                                                                      ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), statically linked, BuildID[sha1]=6d3f888cec25c6c09092a8968d9244021978ab97, stripped
ventoy commented 4 years ago

Hi, I am finishing build scripts and documents, it will take about two or three days (as I can only deal it in my spare time). After that I will commit the scripts and docs.

There are some binrary files in Ventoy's install package, they were downloaded directly from other open source project's website. In this case, I will list the download url and the file's SHA256, you can check them. For example (part of the what I'm writing):

IMG/cpio/ventoy/tool/lz4cat https://create.stephan-brumme.com/smallz4 smallz4cat-x32-v1.4 SHA-256: 13d293ddeedb469f51da41167f79b2cbdb904e681716f6e6191b233dbb162438

IMG/cpio/ventoy/tool/ar https://busybox.net/downloads/binaries/1.30.0-i686 busybox_AR SHA-256: f29b7d81a983c0c85d22496f4a833c18f2528a1b666eb7d47c93084c1ed66ae0
......

JohnVillalovos commented 4 years ago

Awesome. Really looking forward to that. As love the idea of what Ventoy is doing but I have been a bit cautious about using it.

ventoy commented 4 years ago

Hi, I have committed the build scripts and documents and updated README.md. You can refer DOC/BuildVentoyFromSource.txt.

I give the corresponding chapter of DOC/BuildVentoyFromSource.txt for the files in the list.

./IMG/cpio/ventoy/tool/zstdcat: ==> 4.13 ./IMG/cpio/ventoy/tool/xzminidec: ==> 4.15 ./IMG/cpio/ventoy/tool/lz4cat: ==> 5.1 ./IMG/cpio/ventoy/tool/ar: ==> 5.2 ./IMG/cpio/ventoy/tool/inotifyd: ==> 5.3 ./IMG/cpio/ventoy/busybox/tmpsh: ==> 5.4 ./IMG/cpio/ventoy/busybox/tmpxz: ==> 5.5 ./VtoyTool/vtoytool/00/vtoytool_64: ==> 4.7 ./VtoyTool/vtoytool/00/vtoytool_32: ==> 4.7 ./VtoyTool/vtoytool/01/vtoytool_64: ==> 4.7 (build in CentOS 5.X, currently not used) ./INSTALL/tool/vtoyfat_32: ==> 4.8 ./INSTALL/tool/mount.exfat-fuse_32: ==> 4.9 ./INSTALL/tool/mkexfatfs_32: ==> 4.9 ./INSTALL/tool/vtoy_gen_uuid: ==> 4.14 ./INSTALL/tool/vtoyfat_64: ==> 4.8 ./INSTALL/tool/mkexfatfs_64: ==> 4.9 ./INSTALL/tool/mount.exfat-fuse_64: ==> 4.9 ./INSTALL/tool/hexdump: ==> 5.7 ./INSTALL/tool/xzcat: ==> 5.6 ./INSTALL/ventoy/ipxe.krn: ==> 4.2 ./INSTALL/ventoy/iso9660_x64.efi: ==> 4.16 ./INSTALL/ventoy/vtoyjump32.exe: ==> 4.4 ./INSTALL/ventoy/vtoyjump64.exe: ==> 4.4 ./INSTALL/ventoy/imdisk/32/imdisk.sys: ==> 5.8 ./INSTALL/ventoy/imdisk/32/imdisk.exe: ==> 5.8 ./INSTALL/ventoy/imdisk/32/imdisk.cpl: ==> 5.8 ./INSTALL/ventoy/imdisk/64/imdisk.sys: ==> 5.8 ./INSTALL/ventoy/imdisk/64/imdisk.exe: ==> 5.8 ./INSTALL/ventoy/imdisk/64/imdisk.cpl: ==> 5.8 ./INSTALL/ventoy/ventoy_x64.efi: ==> 4.6 ./INSTALL/ventoy/memdisk: ==> 5.9 ./INSTALL/EFI/BOOT/grubx64.efi: ==> 5.10 ./INSTALL/EFI/BOOT/MokManager.efi: ==> 5.10 ./INSTALL/EFI/BOOT/grubx64_real.efi: ==> 4.1 ./INSTALL/EFI/BOOT/BOOTX64.EFI: ==> 5.10 ./INSTALL/Ventoy2Disk.exe: ==> 4.3 ./VBLADE/vblade-master/vblade_32: ==> 4.12 ./VBLADE/vblade-master/vblade_64: ==> 4.12 ./DMSETUP/dmsetup: ==> 4.5

JohnVillalovos commented 4 years ago

Closing this. Will add individual issues as attempt to build.