IsaacSchemm / MultiCD

A shell script package for creating combination disks from Linux ISOs.
http://multicd.us
213 stars 47 forks source link

Ubuntu alterations: #56

Closed stheno closed 7 years ago

stheno commented 7 years ago

Added multiple arch and version support on a single iso build. This should nearly eliminate the need for alternate. This likely closes issues 23 and 54

Added a menu header title to Ubuntu sub menus Fixed a few menu items by re-factoring the generation of the menus entirely. Moved and duplicated language and country to inside the case check for types of install. This avoids a write attempt on a menu if a type is not detected.

Added a "build" directory so the built iso does not show up in the scan for iso inclusion (thereby breaking it). Bumped the version up for both main and Ubuntu since both were altered.

Tested against these iso files: ubuntu-12.04.4-server-amd64.iso ubuntu-14.04-desktop-amd64.iso ubuntu-14.04-server-amd64.iso ubuntu-14.04.4-desktop-i386.iso ubuntu-14.04.5-server-i386.iso ubuntu-16.10-desktop-amd64.iso ubuntu-16.10-server-amd64.iso

stheno commented 7 years ago

I forgot to mention, I renamed a few of the iso files to test the k, l, ed version naming as well.

IsaacSchemm commented 7 years ago

I have a problem with ubuntu-16.04.2-server-amd64.iso: it doesn't seem to copy all the files over (e.g. the "install" and "pool" directories are missing, and possibly others), and it won't boot.

There's also the issue of other plugins that just redirect their ISOs to the Ubuntu plugin, but I think I can take care of that by assuming the ISO is a desktop ISO if it doesn't match the other patterns.

Also, why did you make a "build" folder and put multicd.iso in there? I don't mind, but I'd rather it was in a separate pull request.

stheno commented 7 years ago

That is odd that 16.04 would have an issue but 16.10 doesn't. I can pull that iso and see why. Why would other plugins fire Ubuntu if they are not Ubuntu? Shouldn't there be an isolated plugin for any off loaded work on non-Ubuntu work? Maybe make a ubuntu-generic plugin or something? Each distro should be exclusive when named as such else confusion like this can happen I'd think?

I can split the build off to a different PR. But I did that based on my PR notes. So the iso detection does not pick up a multicd if named anything ubuntu. Plus it is good to have a "build" directory for output. So I thought I'd toss that in there too. Essentially saying the build directory was related to these Ubuntu changes and kinda necessary in some use cases. It wasn't just feature creep and arbitrary.

IsaacSchemm commented 7 years ago

A lot of distros are based on Ubuntu and use casper, so for those, I've been detecting them and making sure the ubuntu plugin picks them up. That way I don't have to copy all the Ubuntu code to a bunch of different files. Linux Mint is a good example. Maybe these can be handled by ubuntu-generic or something like that.

stheno commented 7 years ago

Yea, if a outside distro needs something that compares to Ubuntu. It would be harder for someone who exclusively works with Ubuntu to predict it's behavior outside of anything but Ubuntu.

Maybe either ubuntu-generic or a casper-multipurpose so one can readily spot that?

Grabbing those other Ubuntu iso files now to test against.

BTW anything against having a Discord chat or something to communicate more freely than here?

IsaacSchemm commented 7 years ago

Sounds good to me. I'll make a plugin for casper and fork it from the current ubuntu plugin.

By the way, the -o option should be able to accept an absolute path. How about I have it use the build folder if the user provides just a filename, and if they try to give a relative path, throw an error?

stheno commented 7 years ago

Great idea.

stheno commented 7 years ago

Ok I failed. I wrongly assumed that getting to the installer would mean it was a "good" test. I'll go further and do installs of each in further testing and adjust as needed. Pretty easy adjustment. This PR will be updated.

stheno commented 7 years ago

Not going to work as expected. I'll PR some of the other bits of this but remove the server detection.