Let me submit an ebuild for libldm-0.2.4. It gives read/write access to MS Win's "dynamic disks", similar to LVM / RAID in Linux. (For a quick, practical intro to dynamic disks, see this Arch Wiki page: https://wiki.archlinux.org/index.php/Dynamic_disks ) Some comments are in order: * There's also in-kernel support of LDM, but it's outdated, being limited to MBR, not GPT. * The package has a long enough history, so probably reliable enough. The developer seems to be from RedHat. * The name: The upstream (github repo) name is lidldm: https://github.com/mdbooth/libldm * It mainly consists of the (only) command "/usr/bin/ldmtool" and lidldm-1.0.so. The former is linked to the latter. * All what matters to users is the command, not the library. So the better package name can be "ldmtool". In fact Debian has a package "ldmtool" (partly it's because they split into ldmtool and libldm{,-dev,-dbg}. * Arch has a systemd config file: https://git.archlinux.org/svntogit/community.git/tree/trunk/ldmtool.service?h=packages/libldm (Dunno what's systemd. :p) * Two patches are cherry-picked from github. Arch and Debian uses one of them, but judging from the commit message, both seem to be worth including. * Maybe Bdep on gtk-doc can be dropped, but I don't know how to do it. It seems to be related to the generation of the man1 ldmtool.1 from ldmtool.xml. The configure script emits an error if gtk-doc is not found. It builds successfully. (Of course) However I haven't tested ldmtool (1). It's because I don't, and will never, have a dynamic disk. (I discovered it only after I wrote the ebuild.) I post the ebuild here because it may benefit someone. Best regards. Reproducible: Always
Created attachment 597144 [details] The ebuild
I succeeded in using your supplied build and encountered this error 'Partition volume offset does not match sizes of preceding partitions' did some digging and discovered that this is due to the dm creator processing the sub partitions and possibly disk in sequential order. Within my search results there was results for unmoon and guysmoilov git repositories which have patched part of the dm create part of the source code to arrange sub parts and i guess disks by offset rather than sequential and this rectified the issue immediately. I was unable to test multiple disks in a spanned ldm volume due to only having a spanned volume on a singular disk. Whilst I was browsing said repositories I also came across some previous commits that had been made by mdbooth, unmoon and guysloilov. I ran an diff to create a patch with the diffs between the 0.2.4 tar and the version of ldm.c from guysloilov's repository as of Mar 2020 which covered in all about 5 in all and its running lovely. I will shortly be posting my ebuild patch and service file that is corrected due to arch difference (usr/local/bin). Thanks for reading
Created attachment 649916 [details, diff] Modified due to different patch sourcing. couldn't find the original patch files, so made a new one
Created attachment 649918 [details, diff] Modified due to different patch sourcing. Sorry should have ticked the patch box correctly
Created attachment 649920 [details] Modified build due to different patch sourcing. Here is the modified ebuild to go in part with the above patch.
Created attachment 649922 [details] Originally Arch based systemd service Prefix=/usr/local, now edited for Prefix=/usr Here is the fit for gentoo systemd service file
been a good few years, I recently checked libldm (mdbooth) github and noticed new tag/release, will look into it over the coming months/years, not activley using gentoo linux these days. Previous release helped to work on a GPT device with 2 Dynamic parts in data recovery work.