SugoiDogo Posted January 26 Share Posted January 26 I’ve put together a small python script to make it easier to install DUET. If you don’t already know what that is, DUET is a BIOS bootloader that implements a UEFI interface. DUETi doesn’t actually include DUET, you'll find it packaged with Clover and OpenCore for legacy systems. DUETi works on all modern desktop operating systems, and operates on whatever you point it at, whether that be a system drive, raw disk image, or loop device. There are no safety checks in place, so if you don’t know anything about partition tables, wait for the GUI release. The script and technical details are at https://github.com/sugoidogo/DUETi Quote Link to comment Share on other sites More sharing options...
Slice Posted January 26 Share Posted January 26 We already know all about DUET since 2011. But may be you know something new about it. Tell us! Quote Link to comment Share on other sites More sharing options...
eSaF Posted January 26 Share Posted January 26 @Slice - Maybe he is good at teaching Old Dogs New Tricks (As they say). 2 Quote Link to comment Share on other sites More sharing options...
SugoiDogo Posted January 26 Author Share Posted January 26 56 minutes ago, Slice said: We already know all about DUET since 2011. But may be you know something new about it. Tell us! Not sure what you're asking here. My post is about some new software I've written, not anything new about DUET itself. Just makes it easier to get DUET installed, especially for edge cases. 1 Quote Link to comment Share on other sites More sharing options...
MacNB Posted January 26 Share Posted January 26 2 hours ago, SugoiDogo said: I’ve put together a small python script to make it easier to install DUET. If you don’t already know what that is, DUET is a BIOS bootloader that implements a UEFI interface. DUETi doesn’t actually include DUET, you'll find it packaged with Clover and OpenCore for legacy systems. DUETi works on all modern desktop operating systems, and operates on whatever you point it at, whether that be a system drive, raw disk image, or loop device. There are no safety checks in place, so if you don’t know anything about partition tables, wait for the GUI release. The script and technical details are at https://github.com/sugoidogo/DUETi Good effort but it's not really a DUET installer. It just installs the first stage loader and the user has to manually find & copy Duet file onto the EFI and your script relies on the user supplying ALL the required files. Take a look at the FULL Duet installer in OpenCore's LegayBoot utility folder which is called BootInstallBase.sh. It does not need arguments and it prompts you to choose which drive to install it on. If you wish create a GUI version, use BootInstallBase.sh as your base. Other than that, you may be re-inventing the wheel. 1 Quote Link to comment Share on other sites More sharing options...
SugoiDogo Posted January 26 Author Share Posted January 26 17 minutes ago, MacNB said: Good effort but it's not really a DUET installer. It just installs the first stage loader and the user has to manually find & copy Duet file onto the EFI and your script relies on the user supplying ALL the required files. Take a look at the FULL Duet installer in OpenCore's LegayBoot utility folder which is called BootInstallBase.sh. It does not need arguments and it prompts you to choose which drive to install it on. If you wish create a GUI version, use BootInstallBase.sh as your base. Other than that, you may be re-inventing the wheel. There's several reasons my script is an improvement over bootinstallbase.sh, but the big one is cross-platform. That script uses functions specific to osx fdisk, so like any other DUET installer I could find, only works on the one platform. For the users of this forum maybe a non-issue, but for my own purposes I needed to be able to install duet from multiple different operating systems and onto virtual, physical, and removable disks. I'm in the middle of a move at the moment, so I decided to release it as-is and make it feature-complete later. There's several places around the web you'll find duet with os-specific install instructions or tools, including the opencore install guide, which claims it can only be installed from windows with bootice. Quote Link to comment Share on other sites More sharing options...
Slice Posted January 26 Share Posted January 26 https://github.com/CloverHackyColor/CloverBootloader/wiki/Installing Quote Link to comment Share on other sites More sharing options...
SugoiDogo Posted January 26 Author Share Posted January 26 12 minutes ago, Slice said: https://github.com/CloverHackyColor/CloverBootloader/wiki/Installing sorry, I'm still not sure what you're getting at. I have seen that page, and I'm aware the clover installer can also install DUET, if you're already inside OSX. I made DUETi to be as generic a tool as possible, you can use it for any version of DUET, on any operating system, and install to any device. The existing tools didn't fit my needs so I made a new one, and I'm sharing it here for those who might have need of it. Quote Link to comment Share on other sites More sharing options...
MacNB Posted January 26 Share Posted January 26 24 minutes ago, SugoiDogo said: There's several reasons my script is an improvement over bootinstallbase.sh, but the big one is cross-platform. Good goal to have cross-platform installer. I would just make sure it does NOT rely on users having to hunt for or pulldown files from REFIND, or OpenCore, etc to truly install Duet. I.e. the GUI should just allow the User select the drive onto which to install Duet. Then your tool needs to source the required files from appropriate repositories or bundle them within the tool. Once tested and working, suggest it to OpenCore developers to add it to the LegacyBoot Utility folder as an additional tool. Quote Link to comment Share on other sites More sharing options...
SugoiDogo Posted January 26 Author Share Posted January 26 (edited) 5 minutes ago, MacNB said: Good goal to have cross-platform installer. I would just make sure it does NOT rely on users having to hunt for or pulldown files from REFIND, or OpenCore, etc to truly install Duet. I.e. the GUI should just allow the User select the drive onto which to install Duet. Then your tool needs to source the required files from appropriate repositories or bundle them within the tool. Once tested and working, suggest it to OpenCore developers to add it to the LegacyBoot Utility folder as an additional tool. That's the plan for the future, as well as providing a choice of opencore, clover, or refind. I'd have it stream the relevant release archives and extract the specific files needed, rather than bundling them, so that it continues to install the most up-to-date files. Past that I'd like to set up automated builds of DUET, since the refind version I can currently only find via a google drive link. Edited January 26 by SugoiDogo 1 Quote Link to comment Share on other sites More sharing options...
deeveedee Posted January 26 Share Posted January 26 Very interesting. I've never been able to get my Dell Latitude E6410 to UEFI boot macOS even though BIOS allows UEFI boot configuration. Maybe the solution is to 'CLOVERX64.EFI -> /EFI/Microsoft/Boot/bootmgfw.efi' Quote Link to comment Share on other sites More sharing options...
MacNB Posted January 26 Share Posted January 26 14 minutes ago, deeveedee said: Very interesting. I've never been able to get my Dell Latitude E6410 to UEFI boot macOS even though BIOS allows UEFI boot configuration. Maybe the solution is to 'CLOVERX64.EFI -> /EFI/Microsoft/Boot/bootmgfw.efi' Huh ?!? You posted in a wrong thread. Your issue is off topic in this thread. Quote Link to comment Share on other sites More sharing options...
deeveedee Posted January 27 Share Posted January 27 @MacNB Good thing we still have someone who's policing off-topic posts. Thanks. I was quoting text from Slice's link https://github.com/CloverHackyColor/CloverBootloader/wiki/Installing that he posted earlier in this thread. It may help me. Sorry if that offends you. Quote Link to comment Share on other sites More sharing options...
Slice Posted January 27 Share Posted January 27 19 hours ago, SugoiDogo said: for any version of DUET, on any operating system, and install to any device. Sorry but it is a dream only. Script for Linux/macOS is not same as for Windows. Devices for Linux is not same as for Windows and even for macOS. DUET is not a common solution it is always specific. Clover has scripts for macOS and for Windows and explanation what to do in Linux. Just read WiKi. To make some DUET you need a sources for it, for example sources from Clover that is ported to OpenCore too. But original DUET sources are deprecated and disappeared from EDK2 repository. Legacy Clover including the modified DUET used by many people to boot Linux, Windows and sometime even macOS. Quote Link to comment Share on other sites More sharing options...
SugoiDogo Posted February 9 Author Share Posted February 9 (edited) On 1/27/2023 at 8:30 AM, Slice said: Sorry but it is a dream only. Script for Linux/macOS is not same as for Windows. Devices for Linux is not same as for Windows and even for macOS. DUET is not a common solution it is always specific. Clover has scripts for macOS and for Windows and explanation what to do in Linux. Just read WiKi. To make some DUET you need a sources for it, for example sources from Clover that is ported to OpenCore too. But original DUET sources are deprecated and disappeared from EDK2 repository. Legacy Clover including the modified DUET used by many people to boot Linux, Windows and sometime even macOS. Command line scripts are OS specific. This is a python script. The python interpreter allows writing scripts that work on all 3 platforms. DUETi uses file access API to open the raw block device on all platforms. The only difference is the access path. DUETi *installs* duet successfully. Whether your chosen bootloader works for your platform is another matter entirely. There is no dream here, it already does what I set out for it to do. From here it simply needs ease of use improvements to be able to fully replace the aforementioned scripts. Edited February 9 by SugoiDogo Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.